以下、図面を用いて本発明の実施の形態を説明する。
図1は、本発明の実施形態の位置情報サービスシステムの構成を示すブロック図である。
本実施形態の位置情報サービスシステムは、一つ以上の移動体端末101、複数の環境側測位装置100、測位統合サーバ102、アプリケーションサーバ103、及び、一つ以上の測位手法データベース(DB)サーバ104を備える。一つ以上の移動体端末101及び複数の環境側測位装置100は、それぞれ、ネットワーク111を介して測位統合サーバ102及びアプリケーションサーバ103に接続される。一つ以上の測位手法DBサーバ104は、ネットワーク111を介して測位統合サーバ102に接続される。
移動体端末101は、測位機能及び通信機能を有する持ち運び可能な端末である。例えば、移動体端末101は、ユーザが持ち歩く計算機又は携帯電話等であってもよい。移動体端末101の構成については後述する(図3参照)。なお、以下の説明は、移動体端末101が常にユーザに携帯されることを前提とする。したがって、以下の説明において、ユーザの位置は移動体端末101の位置と同義であり、ユーザの移動は移動体端末101の移動と同義である。
本実施形態では、移動体端末101の位置を計測するための複数の測位系が提供される。各測位系において使用される測位方法は、移動体端末101自身がその移動体端末101の位置を計測する方法であってもよいし、移動体端末101の周囲に設置された装置(図1の例では、環境側測位装置100)が移動体端末101の位置を計測する方法であってもよい。
例えば、本実施形態の移動体端末101は、GPSによる測位、すなわち、衛星から受信した測位のための信号を用いてその移動体端末101の現在位置の座標を計算することができる。
さらに、例えば、本実施形態の移動体端末101自身が測位のための信号を送信することもできる。例えば、環境側測位装置100は、移動体端末101が送信した信号を複数の環境側測位装置100が受信した時刻に基づいて、移動体端末101の位置の座標を計算することができる。この場合、環境側測位装置100は、例えば、無線LAN又はUWB(Ultra Wide Band)の基地局などであってもよい。
なお、以下の説明において、衛星又は移動体端末101が測位のために送信する信号を測位信号と記載する。GPS衛星が送信する測位信号は、GPS信号とも記載する。
あるいは、移動体端末101が周辺の装置(例えば環境側測位装置100)から測位信号を受信し、その受信の結果を周辺の装置に問い合わせることによって、移動体端末101自身が座標演算を行うことなく、移動体端末101の位置の座標を取得してもよい。
さらに、移動体端末101は、Radio Frequency Identification(RFID)タグを含んでもよい。その場合、環境側測位装置100の少なくとも一つがRFID読取装置であってもよい。RFID読取装置が移動体端末101のRFIDを読み取った場合、そのRFID読取装置の位置を、読み取りの時点における移動体端末101の近似的な位置として扱うことができる。例えば、建物の入口及び建物内の各部屋の入口にRFID読取装置を設置すれば、移動体端末101がそれらの入口をいつ通過したかを知ることができる。
いずれの場合であっても、移動体端末101は、計算した位置の座標又は測位信号に、自身を識別する情報を含めて(又は加えて)送信する必要がある。
以下、移動体端末101が、GPSによる測位機能、及び、無線LAN又はUWBによる測位機能(すなわち、無線LAN又はUWBによる測位のための信号を送信する機能)を備え、さらに、RFIDタグを備える場合を例として説明する。以下の説明において、GPSによる測位が実行される測位系をGPS測位系、無線LANによる測位が実行される測位系を無線LAN測位系、UWBによる測位が実行される測位系をUWB測位系、RFIDによる測位が実行される測位系をRFID測位系と記載する。その場合、環境側測位装置100は、無線LAN又はUWBの基地局及びRFID読取装置を含む。
以下、UWBによる測位が実行される例について説明するが、上記のように、UWBによる測位の代わりに無線LANによる測位が実行される場合にも本発明を適用することができる。さらに、本発明は、上記以外の測位が実行される場合にも適用することができる。
本実施形態の移動体端末101は、GPSによる測位によって取得した位置情報を、ネットワーク111を介して測位統合サーバ102に送信する。この位置情報には、少なくとも、その位置情報がGPSによる測位によって取得されたことを示す測位系ID、計算された移動体端末101の位置の座標、及び、移動体端末101を識別する情報が含まれる。
なお、移動体端末101と測位統合サーバ102との間の通信は、どのような手段で実現されてもよい。例えば、移動体端末101が携帯電話端末である場合、移動体端末101は、携帯電話キャリアが提供するインターネット接続サービスを使用して測位統合サーバ102と通信してもよい。あるいは、移動体端末101は、UWB又は無線LANによる通信機能を備える場合、いずれかの環境側測位装置100を介して測位統合サーバ102と通信してもよい。図1には環境側測位装置100及び移動体端末101が共通のネットワーク111を介して測位統合サーバ102と接続される例を示すが、環境側測位装置100及び移動体端末101がそれぞれ別のネットワークを介して測位統合サーバ102と接続されてもよい。
さらに、移動体端末101は、環境側測位装置100(すなわちUWBの基地局)に測位信号を送信する。この測位信号には、少なくとも、移動体端末101を識別する情報が含まれる。環境側測位装置100は、この測位信号に基づいて取得した位置情報を、ネットワーク111を介して測位統合サーバ102に送信する。この位置情報には、少なくとも、その位置情報がUWBによる測位によって取得されたことを示す測位系ID、計算された移動体端末101の位置の座標、及び、移動体端末101を識別する情報が含まれる。
なお、同一の移動体端末101が、測位系ごとに異なる識別子(ID)によって識別される場合がある。後述するように、このような異なるIDは、測位統合サーバ102のユーザIDDB108によって統一的に管理される。
本実施形態の測位統合サーバ102は、汎用の計算機によって実現することができる。測位統合サーバ102の詳細な構成については後述する(図2参照)。
本実施形態の測位統合サーバ102は、測位記録管理部105、現在地DB106、測位履歴DB107、ユーザIDDB108、ルートDB109及び予定DB110を備える。
測位記録管理部105は、移動体端末101及び環境側測位装置100から受信した位置情報を管理するための処理を実行する。その処理の詳細については後述する(図4等参照)。
測位履歴DB107には、移動体端末101及び環境側測位装置100から受信した位置情報が格納される。
現在地DB106には、測位履歴DB107に格納された位置情報に基づいて取得された、移動体端末101の現在の位置を示す座標値が格納される。
ユーザIDDB108には、各移動体端末101を使用するユーザを識別する情報(ユーザID)と、各移動体端末101を識別する情報と、を対応付ける情報が格納される。
本実施形態では、同一の移動体端末101が、測位系ごとに異なる識別子(ID)によって識別される場合がある。例えば、移動体端末101がGPS機能及びUWBの測位機能を備える携帯電話端末である場合、その移動体端末101は、GPS測位系では携帯電話のIDによって、UWB測位系ではUWBのIDによってそれぞれ識別されてもよい。無線LANによる測位が実行される場合、移動体端末101はMAC(Media Access Control)アドレスによって識別されてもよい。RFID測位系では、移動体端末101はRFIDによって識別される。本実施形態において、一人のユーザが使用する一つの移動体端末101を識別する複数のID、及び、それらのIDに対応する位置情報は、測位統合サーバ102のユーザIDDB108によって統一的に管理される。
ルートDB109には、ユーザから要求された経路(ルート)検索を実行するために必要な情報及び経路検索の結果が格納される。
予定DB110には、ユーザの予定を示す情報が格納される。
上記の各DBに格納されるデータの詳細については後述する。
アプリケーションサーバ103は、測位統合サーバ102と同様、汎用の計算機によって実現することができる。アプリケーションサーバ103は、移動体端末101等から位置情報を受信し、その位置情報に応じた情報を移動体端末101に送信することができる。これによって、アプリケーションサーバ103は、移動体端末101に対して、移動体端末101の位置情報を利用したサービスを提供する。
例えば、アプリケーションサーバ103は、移動体端末101の位置情報に基づいて、道案内のための情報(例えば移動体端末101の現在位置の周囲の地図データ)をその移動体端末101に送信してもよい。あるいは、アプリケーションサーバ103は、移動体端末101の位置情報に基づいて、その移動体端末101の近くに存在する店舗等に関する情報を検索し、検索された情報をその移動体端末101に送信してもよい。
アプリケーションサーバ103の構成、及び、それによって提供されるサービスは、従来から知られたものであってもよいため、それらについての詳細な説明は省略する。
測位手法DBサーバ104は、例えば、測位統合サーバ102と同様、汎用の計算機であってもよい。各測位手法DBサーバ104は、移動体端末101が各エリアにおいて測位をするために必要な情報を、移動体端末101に提供する。例えば、環境側測位装置100がUWBの基地局である場合、測位手法DBサーバ104は、UWBの基地局の識別情報及びその基地局にアクセスするために必要なパスワード等を保持する。移動体端末101は、ネットワーク111を介して測位手法DBサーバ104にアクセスし、基地局の識別情報等を取得することができる。典型的には、各測位手法DBサーバ104は各建物に設置され、各建物内の基地局の識別情報及びパスワードを保持する。
ネットワーク111は、ネットワーク111に接続された装置間の通信を可能にするものである限り、いかなる種類のものであってもよい。典型的には、ネットワーク111は、携帯電話網、有線LAN、無線LAN、UWB、又はそれらの組み合わせによって実現され、その上で例えばインターネットプロトコルによる通信が実行される。図1には二つのネットワーク111を示したが、これらは単一のネットワークによって実現されてもよい。
図2は、本発明の実施形態の測位統合サーバ102の構成を示すブロック図である。
本実施形態の測位統合サーバ102は、相互に接続されたプロセッサ201、メインメモリ202、入力装置203、出力装置204、インターフェース(I/F)205及び記憶装置206を備える計算機である。
プロセッサ201は、メインメモリ202に格納されたプログラムを実行する。
メインメモリ202は、例えば半導体メモリであり、プロセッサ201によって実行されるプログラム及びプロセッサ201によって参照されるデータを格納する。具体的には、記憶装置206に格納されたプログラム及びデータの少なくとも一部が、必要に応じてメインメモリ202にコピーされる。
入力装置203は、ユーザ又は管理者からの入力を受ける。入力装置203は、例えばキーボード又はマウス等であってもよい。
出力装置204は、ユーザ又は管理者に情報を出力する。出力装置204は、例えば液晶ディスプレイのような画像表示装置であってもよい。
I/F205は、ネットワーク111に接続され、移動体端末101、環境側測位装置100、アプリケーションサーバ103及び測位手法DBサーバ104と通信するインターフェースである。
記憶装置206は、例えばハードディスク装置(HDD)又はフラッシュメモリのような不揮発性の記憶装置である。本実施形態の記憶装置206には、少なくとも、測位記録管理部105、現在地DB106、測位履歴DB107、ユーザIDDB108、ルートDB109及び予定DB110が格納される。
測位記録管理部105は、プロセッサ201によって実行されるプログラムである。以下の説明において測位記録管理部105が実行する処理は、実際にはプロセッサ201によって実行される。
本実施形態のアプリケーションサーバ103及び測位手法DBサーバ104は、測位統合サーバ102と同様のハードウェアによって実現されるため、その図示及び説明を省略する。
ただし、アプリケーションサーバ103のプロセッサ(図示省略)は、アプリケーションサーバ103のメインメモリ(図示省略)に格納されたアプリケーションプログラム(図示省略)を実行することによって、位置情報を用いたサービスを移動体端末101に提供する。
測位手法DBサーバ104のメインメモリ(図示省略)又は記憶装置(図示省略)には、その測位手法DBサーバ104に関連付けられたエリア(後述)において利用される測位手法を識別する情報、及び、その測位手法を利用するために必要な情報等が格納される。測位手法DBサーバ104は、測位統合サーバ102から測位手法要求を受信すると、上記の情報を含む測位手法応答を送信する(図4及び図8参照)。
なお、図1には、測位統合サーバ102、アプリケーションサーバ103及び測位手法DBサーバ104がそれぞれ独立したハードウェアによって実現される例を示したが、これらのうちいずれか二つ又は全部が、一つの計算機によって実現されてもよい。例えば、測位統合サーバ102及びアプリケーションサーバ103が同一のハードウェアによって実現される場合、図2に示す記憶装置206にさらにアプリケーションプログラム(図示省略)が格納され、プロセッサ201によって実行される。
図3は、本発明の実施形態の移動体端末101の構成を示すブロック図である。
本実施形態の移動体端末101は、通信部301、位置情報取得部302、制御装置303、データ記憶部304、表示部305、操作入力部306、電源部307及びRFIDタグ308を備える。
通信部301は、ネットワーク111を介して、ネットワーク111に接続された装置、例えば、環境側測位装置100及び測位統合サーバ102と通信する。環境側測位装置100がUWB基地局又は無線LAN基地局である場合、通信部301は、所定のタイミングで(例えば定期的に)測位信号を送信する。ただし、後述するように、測位信号を送信するか否かは制御装置303によって制御される。
位置情報取得部302は、移動体端末101の位置情報を取得する。本実施形態の位置情報取得部302は、GPS測位装置を含む。GPS測位装置は、GPS衛星から受信した測位信号を用いて移動体端末101の位置を計測する。さらに、位置情報取得部302は、通信部301を介して環境側測位装置100と通信することによって、環境側測位装置100が計測した移動体端末101の位置情報を取得してもよい。
なお、本実施形態は、移動体端末101がGPSによる測位、UWBによる測位及びRFIDによる測位を利用する例を示すが、移動体端末101が上記以外の測位手法を利用する場合にも本発明を実施することができる。その場合、位置情報取得部302は、上記以外の測位手法による測位を実行してもよい。
制御装置303は、移動体端末101の各部を制御することによって、測位統合サーバ102等との通信、位置情報の取得、取得した情報の格納及び読み出し、情報の表示、ユーザからの入力の受け付け、及び、各部への電力の供給等を制御する。
データ記憶部304は、例えば半導体メモリであり、制御装置303によって実行されるプログラム及び制御装置303によって参照されるデータを格納する。
表示部305は、例えば液晶ディスプレイのような画像表示装置であり、ユーザに情報を出力する。
操作入力部306は、例えばキーボード、操作ボタン又はタッチパネル等の入力装置を含み、ユーザによる種々の入力を受け付ける。
電源部307は、移動体端末101の各部に電力を供給する。典型的には、電源部307は電池を含む。
RFIDタグ308は、固有の識別情報(RFID)を保持する。環境側測位装置100の少なくとも一つがRFID読取装置である場合、そのRFID読取装置は、読み取り可能な範囲内にあるRFIDタグ308が保持するRFIDを読み取ることができる。なお、本実施形態はRFIDによる測位が実行される例を示すが、RFIDによる測位が実行されない場合、移動体端末101はRFIDタグ308を備えなくてもよい。
図4は、本発明の実施形態において実行される通信の手順を示すシーケンス図である。
図4の例において、移動体端末101は、GPS信号に基づいてその移動体端末101の座標値を計測し、計測された座標値を含む位置情報を、ネットワーク111を介して測位統合サーバ102に送信する(ステップ401)。
一方、環境側測位装置100も、移動体端末101から受信した測位信号に基づいて移動体端末101の座標値を計測し、計測された座標値を含む位置情報を、ネットワーク111を介して測位統合サーバ102に送信する(ステップ406)。
測位統合サーバ102は、移動体端末101から送信された位置情報又は環境側測位装置100から送信された位置情報の少なくとも一方に基づいて、移動体端末101の現在の位置を特定する。特定された現在の位置を示す情報は、現在地DB106に格納される。
移動体端末101は、ネットワーク111を介して、測位統合サーバ102に位置情報の取得要求(現在地取得要求)を送信する(ステップ402)。なお、ステップ401とステップ402は同時に実行されてもよい。
この取得要求を受信した測位統合サーバ102は、測位手法をチェックする必要があるか否かを判定する。測位手法をチェックする必要があると判定された場合、測位統合サーバ102は、測位手法要求を測位手法DBサーバ104に送信する(ステップ403)。
例えば、移動体端末101が、現在は屋外にあるが、現在から所定の時間以内に建物の中に入ると予想される場合、測位統合サーバ102は、その建物内で使用される測位手法をチェックする必要があると判定し、その建物に関する測位手法DBサーバ104(すなわち、その建物内で使用される測位手法を保持している測位手法DBサーバ104)に測位手法要求を送信する。
測位手法要求を受信した測位手法DBサーバ104は、測位手法に関する情報を含む測位手法応答を測位統合サーバ102に送信する(ステップ404)。例えば、建物内でUWBによる測位が実行される場合、測位手法応答は、移動体端末101がUWB基地局にアクセスするために必要な情報を含む。測位手法応答の詳細な内容については後述する(図8参照)。
次に、測位統合サーバ102は、移動体端末101の現在の位置を示す情報、及び、取得した測位手法応答を、ネットワーク111を介して移動体端末101に送信する(ステップ405)。
移動体端末101の制御装置303は、受信した現在の位置を示す情報及び測位手法に関する情報をデータ記憶部304に格納する。さらに、制御装置303は、受信した測位手法に関する情報に基づいて、必要があると判定された場合、電源部307から位置情報取得部302への電力の供給、又は、測位信号の送信を開始する(ステップ410)。
例えば、移動体端末101が屋外にある場合、UWBによる測位ができないため、通信部301は、UWB基地局に測位信号を送信する必要がない。しかし、移動体端末101が将来建物の中に入り、かつ、その建物の内部でUWBによる測位が実行される場合、遅くとも移動体端末101が建物の中に入ったときには、UWB基地局への測位信号の送信を開始する必要がある。
具体的には、ステップ405において送信された測位手法応答が、UWBによる測位を識別する情報を含む場合、制御装置303は、測位信号の送信を開始するように、通信部301を制御する。その時点でUWB基地局にアクセスするために必要な情報も取得しているため、移動体端末101は、遅くとも建物の内部に移動したときには、UWB基地局と通信し、測位を実行することができる。
一方、建物内にある移動体端末101が建物の外に出ることが予想される場合、制御装置303は、電源部307から位置情報取得部302への電力の供給を制御する。すなわち、受信した測位手法応答が、GPS測位を識別する情報を含む場合、制御装置303は、位置情報取得部302(すなわちGPS測位装置)への電力の供給を開始する。
上記のように、必要と判定されたときに位置情報取得部302に電力の供給が開始され、あるいは、必要と判定されたときに測位信号が送信される。その結果、移動体端末101の消費電力を削減し、それによって電源部307内の電池の消耗を抑えつつ、複数のエリア(例えば屋外と屋内)を渡って移動するユーザに切れ目のない位置情報サービスを提供することができる。
移動体端末101は、最新の位置情報を取得するため、現在地取得要求を繰り返し(例えば定期的に)実行することができる。図4の例において、移動体端末101は、ステップ402の後、ステップ407において再び現在地取得要求を送信する。
図4の例では、ステップ402からステップ407までの間に、ステップ406において環境側測位装置100から位置情報が送信されている。測位統合サーバ102は、この位置情報に基づいて、移動体端末101の現在の位置を特定してもよい。新たに特定された位置を示す情報によって、現在地DB106が更新される。
ステップ407の現在地取得要求を受信した測位統合サーバ102は、測位手法を移動体端末101に応答する必要があるか否かを判定する。図4の例では、測位手法を移動体端末101に応答する必要がないと判定されたため、測位統合サーバ102は、移動体端末101の現在の位置を示す情報を移動体端末101に送信する(ステップ408)。ステップ406の位置情報に基づいて現在地DB106が更新された場合、ステップ408ではその更新された情報が送信される。
なお、ステップ407の後、測位手法を移動体端末101に応答する必要があると判定された場合、ステップ403からステップ404までと同様の処理が実行され、ステップ408において、測位手法応答がさらに送信される。
移動体端末101は、任意の時点で、測位統合サーバ102から取得した現在の位置を示す情報を、ネットワーク111を介してアプリケーションサーバ103に送信する(ステップ409)。
図示は省略するが、アプリケーションサーバ103は、移動体端末101の現在の位置に基づいて、任意のサービスを移動体端末101に提供することができる。例えば、アプリケーションサーバ103は、移動体端末101の現在の位置の周辺の地図データを移動体端末101に送信してもよい。
図5は、本発明の実施形態において測位統合サーバ102が受信する位置情報の説明図である。
具体的には、図5は、図4のステップ401又はステップ406において移動体端末101又は環境側測位装置100から測位統合サーバ102に送信される位置情報の例を示す。
図5に示す位置情報500は、測位装置ID501、測位系ID502、X座標503、Y座標504及び時刻505を含む。
測位装置ID501は、測位対象の移動体端末101を一意に識別する情報である。位置情報500がGPS測位系において移動体端末101自身によって測位されたものである場合、測位装置ID501は、その移動体端末101のGPS測位系における識別情報である。移動体端末101がGPS測位装置を備える携帯電話端末である場合、移動体端末101のGPS測位系における識別情報は例えば携帯電話IDである。位置情報500がUWB測位系において環境側測位装置100によって測位されたものである場合、測位装置ID501は、測位の対象である移動体端末101のUWB測位系における識別情報である。
測位系ID502は、位置情報500を取得するために使用された測位手段(すなわち測位系)を識別する情報である。例えば、位置情報500がGPS測位系によって取得された場合、測位系ID502は、GPS測位系を識別する値(例えば「0」)である。一方、位置情報500がUWB測位系によって取得された場合、測位系ID502は、UWB測位系を識別する値(例えば「1」)である。位置情報500がRFID読取装置によって取得された場合、測位系ID502は、RFIDによる測位を識別する値(例えば「2」)である。
X座標503及びY座標504は、測位結果として取得された移動体端末101の座標のうち、それぞれ、X座標及びY座標に相当する値である。
時刻505は、測位が実行された時刻である。言い換えると、時刻505が示す時刻は、X座標503及びY座標504が示す位置に移動体端末101があった時刻を示す。
さらに、図示は省略するが、位置情報500は、座標値(すなわちX座標503及びY座標504)の精度を示す情報を含んでもよい。この情報はどのようなものであってもよいが、例えば、測位に用いられた基地局の数であってもよい。測位に用いられた基地局の数とは、GPS測位系の場合、移動体端末101が受信できた測位信号の送信元のGPS衛星の数であり、UWB測位系の場合、移動体端末101が送信した測位信号を受信できたUWB基地局の数である。一般に、測位に用いられる基地局の数が多いほど、得られる座標値の精度は高くなる。
なお、本実施形態は、位置情報サービスシステムにおいて二次元の位置情報が扱われる例を示す。しかし、位置情報サービスシステムにおいて三次元の位置情報が扱われる場合、位置情報500は、X座標503及びY座標504に加えて、Z座標(図示省略)を含む。Z座標として移動体端末101の標高又は地球の中心からの距離が使用されてもよい。あるいは、Z座標の代わりに、移動体端末101が位置する高さを示す何らかの情報(例えば、移動体端末101が位置する階を示す値)が含まれてもよい。
図6Aは、本発明の実施形態の測位履歴DB107の説明図である。
測位履歴DB107は、移動体端末101から受信した位置情報を含む。具体的には、測位履歴DB107は、測位キュー管理テーブル601及び測位キュー群602を含む。
測位キュー管理テーブル601は、ユーザIDと、測位キュー群602に含まれる測位キューとを対応付ける。この対応付けは、ユーザIDのハッシュ値を用いて行われてもよい。
測位キュー群602は、複数の測位キューを含む。各測位キューは、測位キュー管理テーブル601によってユーザIDと対応付けられる。各測位キューは、各ユーザIDに対応する移動体端末101の座標値を含む。ただし、本実施形態では、各移動体端末101から複数の測位系に基づく位置情報が取得される。このため、各ユーザIDに複数の測位キューが対応付けられ、各測位キューには、一つの移動体端末の一つの測位系に基づく座標値が格納される。
なお、各測位キューは、キュー構造のデータである。このため、各測位キューには、一つの移動体端末の一つの測位系に基づく複数の座標値が格納される。新たに座標値が取得された場合、その座標値が測位キューに格納される代わりに、その測位キューから、最も古い座標値が削除される。各測位キューに格納される座標値の数は、任意に設定されてもよい。
図6Aには、例として9個の測位キュー、すなわち、測位キュー602A〜602Iを示す。測位キュー602A、602B及び602CがユーザID「1」に対応する。さらに、測位キュー602AがUWB測位系に、測位キュー602BがGPS測位系に、測位キュー603CがRFID測位系にそれぞれ対応する。この場合、測位キュー602Aには、ユーザID「1」に対応する移動体端末101の座標値のうち、UWB測位系によって取得されたもの(例えば(x、y))が格納される。測位キュー602Bには、ユーザID「1」に対応する移動体端末101の座標値のうち、GPS測位系によって取得されたもの(例えば(x、y))が格納される。測位キュー602Cには、ユーザID「1」に対応する移動体端末101の座標値のうち、RFID測位系によって取得されたもの(例えば(x、y))が格納される。なお、図6Aに示す「UID1」は、ユーザIDの値「1」を示す。他のユーザIDの値についても同様である。
図6Aでは省略されているが、測位キューには、上記の座標値に加えて、各座標値が取得された時刻を示す値(すなわち測位が実行された時刻505の値)が格納される。各座標値が取得された時刻に基づいて、どの座標値が最も新しく取得されたものであるかを判定すること、及び、各座標値が取得されてから現在までに経過した時間を算出することができる。
さらに、位置情報が各座標値の精度を示す情報を含む場合、その情報も測位キューに格納される。
同様に、図6Aの例では、ユーザID「18」及びUWB測位系に対応する測位キュー602D、ユーザID「18」及びGPS測位系に対応する測位キュー602E、ユーザID「18」及びRFID測位系に対応する測位キュー602F、ユーザID「5」及びUWB測位系に対応する測位キュー602G、ユーザID「5」及びGPS測位系に対応する測位キュー602H、及び、ユーザID「5」及びRFID測位系に対応する測位キュー602Iが図示される。
図6Bは、本発明の実施形態のRFID座標データの説明図である。
測位統合サーバ102は、さらに、図6Bに示すRFID座標データ603を保持してもよい。RFID座標データ603は、RFID611及び座標値612を含む。
RFID611は、移動体端末101が備えるRFIDタグ308に付与された識別情報である。
座標値612は、各RFIDタグ308の位置を示す座標値である。例えば、建物内に設置されたRFID読取装置の読み取り可能な範囲内にRFIDタグ308が入ると、RFID読取装置がRFIDを読み取る。このとき、そのRFIDに対応する座標値612として、RFIDを読み取ったRFID読取装置の座標値が格納される。
図7は、本発明の実施形態の現在地DB106の説明図である。
現在地DB106は、移動体端末101の現在の(より正確には、最新の)座標を示す情報を含む。具体的には、現在地DB106は、現在地管理テーブル701及び現在地702を含む。
現在地管理テーブル701は、ユーザIDと、各ユーザIDに対応する移動体端末101の現在の座標を格納する現在地702とを対応付ける。この対応付けは、測位キュー管理テーブル601と同様、ユーザIDのハッシュ値を用いて行われてもよい。
現在地702は、各移動体端末101の現在の座標を示す値を格納する。例えば、図7には、現在地702として、現在地702A〜702Cを示す。
現在地702Aには、ユーザID「1」に対応する移動体端末101の現在の座標値(例えば(x、y))が格納される。この座標値は、ユーザID「1」の移動体端末101に対応する測位キュー602A、602B又は602Cに含まれるいずれかの座標値に基づいて取得される。具体的には、測位キュー602Aに含まれる最新の座標値と、測位キュー602Bに含まれる最新の座標値と、測位キュー602Cに含まれる最新の座標値と、のうち最適な一つが選択され、選択された座標値が移動体端末101の現在の座標値として取得される。
なお、実際には、測位系ごとに異なる座標系が用いられる場合がある。例えば、一般に、GPS測位系では緯度・経度からなる極座標系が使用されるが、UWB測位系ではX座標及びY座標からなるカーテシアン座標系が使用される。しかし、本発明のように複数の測位系をシームレスに利用する場合、それらの測位系において得られる座標値を、共通の座標系における座標値に変換する必要がある。このため、本実施形態の測位統合サーバ102は、各測位系において得られた座標値を共通の座標系における座標値に変換するためのパラメータをあらかじめ保持し、それを用いて共通の座標系における座標値を取得する。本実施形態は、共通の座標系としてカーテシアン座標系が使用される例を示す。
同様に、現在地702B及び702Cには、それぞれ、ユーザID「18」及び「5」に対応する移動体端末101の現在の座標値が格納される。
なお、図6A〜図7には、説明を簡単にするために、二次元座標系を示したが、本実施形態において三次元座標系が使用されてもよい。
図8は、本発明の実施形態の測位手法DBサーバ104が送信するデータの説明図である。
測位手法要求を受信した測位手法DBサーバ104は、図8に示すデータ800を含む測位手法応答を測位統合サーバ102に送信する。
データ800は、測位手法ID801、接続時必要情報種別ID802及び接続時必要情報803を含む。
測位手法ID801は、測位手法を識別するコードである。例えば、測位手法ID801の値「0」、「1」及び「2」が、それぞれ、GPS測位、無線LAN測位及びWUB測位を識別してもよい。
接続時必要情報種別ID802は、移動体端末101が測位手法ID801によって識別される測位手法を利用するために、移動体端末101が保持する必要がある情報の種類を識別する情報である。例えば、移動体端末101がこれから入ろうとする建物内で無線LAN測位が実行される場合、測位手法応答に含まれる測位手法ID801の値は「1」である。この場合、接続時必要情報種別ID802は、移動体端末101が無線LAN基地局に接続するために必要な情報を識別する情報を含む。具体的には、移動体端末101が無線LAN基地局に接続するために、無線LAN基地局のSSID(Service Set Identifier)、パスワード及び証明書等が必要である。したがって、上記の例では、接続時必要情報種別ID802は、移動体端末101がこれから入ろうとする建物内の無線LAN基地局のSSID、パスワード及び証明書を識別する情報を含む。
接続時必要情報803は、接続時必要情報種別ID802によって識別される情報のバイナリデータである。例えば上記のように、接続時必要情報種別ID802が、無線LAN基地局のSSID、パスワード及び証明書を識別する情報を含む場合、接続時必要情報803は、無線LAN基地局のSSID、パスワード及び証明書のバイナリデータを含む。
なお、測位手法DBサーバ104は、少なくとも、図8に示す情報を保持する。一つの測位手法DBサーバ104が複数のエリアに関する情報を保持する場合、その測位手法DBサーバ104は、図8に示す情報と、その情報が適用されるエリア(すなわちその測位手法DBサーバ104が関連付けられたエリア)とを対応付ける情報を保持してもよい。あるいは、測位統合サーバ102が、図8に示す情報と、その情報が適用されるエリアとを対応付ける情報を保持してもよい。
図9は、本発明の実施形態のルートDB109の説明図である。
本実施形態のルートDB109は、ルート検索結果データ901、図形データ902、探索用ノードデータ903及び探索用リンクデータ904を含む。これらのデータの詳細については後述する(図10A〜図10D参照)。
図10Aは、本発明の実施形態のルートDB109に含まれるルート検索結果データ901の説明図である。
ルート検索結果データ901は、ユーザからの要求に従って実行されたルート検索の結果を示すデータを含む。具体的には、ルート検索結果データ901は、ユーザID1001、対象日時1002及びルートリスト1003を含む。
ユーザID1001は、ルート検索を要求したユーザを識別する。
対象日時1002は、ユーザによって検索対象として指定された日時である。具体的には、対象日時1002は、現在地を出発する日時であってもよいし、目的地に到着する日時であってもよい。以下の説明は、対象日時1002として目的地への到着日時が指定された例を記載する。
ルートリスト1003は、検索結果として取得された経路(ルート)を特定する情報である。具体的には、ルートリスト1003は、検索結果として取得された経路を構成するノード及びリンクのリスト(具体的には、後述するノードID及びリンクIDのリスト)を含む。なお、本実施形態において、ルート検索が実行される空間は、一般的なナビゲーションシステムと同様、ノード及びリンクからなるネットワークとして表現される(図10B〜図10D参照)。
例えば、ユーザID「1」によって識別されるユーザが、ある時刻にある目的地に到着するためのルート検索を要求した場合、測位統合サーバ102は、図形データ902、探索用ノードデータ903及び探索用リンクデータ904を参照して、現在地から指定された目的地に指定された時刻に到着するルートを検索する。この検索は、ダイクストラ法等、従来のナビゲーション装置等で用いられる一般的な方法によって実行されてもよい。そして、ユーザID1001の値「1」(UID1)に対応する対象日時1002及びルートリスト1003に、それぞれ、指定された時刻、及び、検索されたルートを構成するノード及びリンクのリストが格納される。
図10Bは、本発明の実施形態のルートDB109に含まれる図形データ902の説明図である。
図形データ902は、各ノード又は各リンクに相当する図形の種別、形状及び位置を特定する情報を含む。具体的には、図形データ902は、図形ID1011、種別1012及び座標列1013を含む。
図形ID1011は、各ノード又は各リンクに相当する図形を識別する情報である。
種別1012は、各ノード又は各リンクに相当する図形の種別を識別する情報である。例えば、種別1012の値「Polygon」、「Polyline」及び「Point」は、それぞれ、多角形、線分群及び点を意味する。
座標列1013は、各ノード又は各リンクに相当する図形の形状及び位置を特定する一つ以上の座標値である。例えば、図形が点である場合、その点の位置を示す一つの座標値が座標列1013として格納される。図形が多角形である場合、その多角形の複数の頂点の位置を示す複数の座標値が座標列1013として格納される。
図10Cは、本発明の実施形態のルートDB109に含まれる探索用ノードデータ903の説明図である。
探索用ノードデータ903は、ルート検索のために参照される、各ノードに関する情報を含む。具体的には、探索用ノードデータ903は、ノードID1021、図形ID1022、ノード種別1023及びエリア種別1024を含む。
ノードID1021は、各ノードを識別する情報である。
図形ID1022は、各ノードに相当する図形を識別する情報である。図形ID1022は、図形データ902の図形ID1011に対応する。
ノード種別1023は、各ノードの種別を示す。例えば、ノード種別1023として、「エレベータ」、「廊下」、「部屋」、「階段」及び「屋外端点」等が格納される。
エリア種別1024は、各ノードが配置されたエリアを識別する。例えば、あるノードが建物A(図示省略)の3階の廊下である場合、そのノードのノード種別1023及びエリア種別1024として、それぞれ「廊下」及び「建物A 3F」が格納される。
各測位手法DBサーバ104は、少なくとも一つのエリアにおける測位手法を利用するために必要な情報を保持する。例えば、建物Aの3階においてUWB測位が利用される場合、建物Aの3階に関連する測位手法DBサーバ104は、建物Aの3階においてUWB測位を利用するために必要な情報(例えばUWB基地局の識別情報等)を保持する。エリア種別1024は、各エリアを識別する情報に加えて、そのエリアに関連する測位手法DBサーバ104にアクセスするために必要な情報(例えばアドレス情報)を含んでもよい。あるいは、測位統合サーバ102は、各エリアを識別する情報と、そのエリアに関連する測位手法DBサーバ104にアクセスするために必要な情報と、を対応付ける情報を保持してもよい。
図10Dは、本発明の実施形態のルートDB109に含まれる探索用リンクデータ904の説明図である。
探索用リンクデータ904は、ルート検索のために参照される、各リンクに関する情報を含む。具体的には、探索用リンクデータ904は、リンクID1031、図形ID1032、始点ノード(From)1033、終点ノード(To)1034、リンク種別1035及びコスト1036を含む。
リンクID1031は、各リンクを識別する情報である。
図形ID1032は、各リンクに相当する図形を識別する情報である。図形ID1032は、図形データ902の図形ID1011に対応する。
始点ノード1033は、各リンクの始点ノードを識別する情報である。
終点ノード1034は、各リンクの終点ノードを識別する情報である。
リンク種別1035は、各リンクの種別、すなわち、そのリンクがどのエリアのノードを接続するかを示す情報である。例えば、あるリンクが同じエリア内の二つのノードを接続する場合、そのリンクのリンク種別1035として「同エリア内」が格納される。別のリンクが屋内のノードと屋外のノードとを接続する場合、その別のリンクのリンク種別1035として「屋内外間」が格納される。
コスト1036は、各リンクに沿って始点ノードから終点ノードまで移動するためのコストを示す。
図11Aは、本発明の実施形態の予定DB110の説明図である。
本実施形態の予定DB110は、少なくとも、予定データ1101を含む。
図11Bは、本発明の実施形態の予定DB110に含まれる予定データ1101の説明図である。
予定データ1101は、ユーザによって入力されたユーザ自身の行動予定に関する情報を含む。具体的には、予定データ1101は、ユーザID1111、予定開始日時1112、予定終了日時1113、内容1114及び図形ID1115を含む。
ユーザID1111は、予定を記入したユーザを識別する情報である。
予定開始日時1112は、予定されているイベントが開始される日時を示す。
予定終了日時1113は、予定されているイベントが終了する日時を示す。
内容1114は、予定されているイベントの内容を示す。内容1114は、例えば、「会議」、「昼食」又は「講演」等である。
図形ID1115は、予定されているイベントが行われる場所、すなわち、ユーザの行き先ノードの図形を識別する情報である。図形ID1115は、図形データ902(図10B)の図形ID1011に対応する。したがって、予定データ1101及び探索用ノードデータ903を参照することによって、ユーザがいつ、どのエリアに入る予定であるかを特定することができる。
なお、予定データ1101は、図形ID1115の代わりに、ユーザの行き先の座標値を含んでもよい。その場合、予定データ1101、図形データ902及び探索用ノードデータ903を参照することによって、ユーザがいつ、どのエリアに入る予定であるかを特定することができる。
次に、現在地取得要求を受信した測位記録管理部105が現在地を判定する処理について説明する。図4を参照して説明したように、測位統合サーバ102の測位記録管理部105は、移動体端末101から現在地取得要求を受信すると(ステップ402等)、移動体端末101の現在地を判定する。さらに、測位記録管理部は、判定した現在地に基づいて、測位手法に関する情報を測位手法DBサーバ104から取得する必要があるか否かを判定し、必要があると判定された場合は測位手法要求を送信する(ステップ403)。
現在地を判定し、測位手法に関する情報を取得する必要があるか否かを判定するための具体的な処理は、種々の方法によって実現することができる。本実施形態では、ルート検索結果に基づく第1の処理、予定データに基づく第2の処理、及び、測位履歴に基づく第3の処理の少なくとも一つが実行される。以下、これらの処理について説明する。
図12は、本発明の実施形態の測位記録管理部105が現在地を判定する第1の処理を示すフローチャートである。
測位記録管理部105は、最初に、移動体端末101から現在位置取得要求を受信する(ステップ1201)。これは、図4のステップ402又はステップ407に相当する。
次に、測位記録管理部105は、ユーザIDを検索キーとして、ルートDB109のルート検索結果データ901を検索する(ステップ1202)。なお、現在位置取得要求は、それを送信した移動体端末101を識別する情報を含む。測位記録管理部105は、ユーザIDDB108を参照することによって、現在位置取得要求を送信したユーザのユーザIDを特定し、それを検索キーとして使用する。
例えば、ユーザID「1」を検索キーとして図10Aに示すルート検索結果データ901を検索すると、ユーザID1001の値が「UID1」である先頭のレコードが取得される。
次に、測位記録管理部105は、ステップ1202の検索結果として取得されたルートに基づいて、現在地を判定し、さらに、測位手法をチェックする必要があるか否か(すなわち測位手法に関する情報を取得する必要があるか否か)を判定する(ステップ1203)。
既に説明したように、本実施形態では、エリア毎に使用される測位手法が異なる場合がある。このため、移動体端末101があるエリアから別のエリアに移動することが予想される場合、遅くとも移動体端末101が移動先のエリアに入ったときには、その移動先のエリアにおける測位手法を利用できるように、準備をする必要がある。上記の測位手法のチェックとは、移動先のエリアにおいて使用される測位手法を判定し、その測位手法を使用するために取得すべき情報がある場合には、その情報を取得することを意味する。
本実施形態では、測位記録管理部105は、移動体端末101が、現在地を含むエリアとは異なるエリアに接近した場合に、近い将来そのエリアに移動する可能性があるため、そのエリアにおける測位手法をチェックする必要があると判定する。
具体的には、測位記録管理部105は、対象日時1002及びルートリスト1003を与えられると、図形データ902、探索用ノードデータ903及び探索用リンクデータ904を参照して、与えられたルートリストに含まれる各ノードへの到着時刻を推定することができる。このような推定は、従来のナビゲーション技術によって実現される。測位記録管理部105は、このようにして推定された到着時刻に基づいて、ユーザの現在地、ユーザが現在地の次に向かう地点(以下、次の地点と記載)、及び、ユーザが次の地点に到着する推定時刻を特定することができる。
例えば、測位記録管理部105は、現在地が属するエリアと次の地点が属するエリアとが異なる場合、測位手法をチェックする必要があると判定する。より具体的には、例えば、現在地として特定されたノードのエリア種別1024と、次の地点として特定されたノードのエリア種別1024とが異なる場合、測位手法をチェックする必要があると判定される。あるいは、現在地として特定されたノードと次の地点として特定されたノードとの間のリンクのリンク種別1035が「同エリア内」でない場合に、現在地が属するエリアと次の地点が属するエリアとが異なると判定してもよい。
さらに、現在時刻からユーザが次の地点に到着する時刻までの時間に基づいて上記の判定がされてもよい。例えば、現在地が属するエリアと次の地点が属するエリアとが異なり、かつ、現在時刻からユーザが次の地点に到着する時刻までの時間(又は、次の地点が属するエリアにユーザが入るまでの時間)が所定の時間より短い場合にのみ、測位手法をチェックする必要があると判定されてもよい。あるいは、現在地から次の地点までの距離(又は、現在地から次の地点が属するエリアまでの距離)が所定の距離より短い場合にのみ、測位手法をチェックする必要があると判定されてもよい。
最も簡単な例として、現在地と次の地点とに基づいてステップ1203の判定を実行する例を示したが、次の地点だけでなく、ユーザがこれから到着する複数の地点及びそれらの地点への到着時刻に基づいてステップ1203の判定が実行されてもよい。例えば、現在時刻から所定の時間内に到着する複数の地点のうち少なくとも一つが、現在地が属するものとは異なるエリアに属する場合、測位手法をチェックする必要があると判定されてもよい。
あるいは、測位記録管理部105は、あらかじめ、ルート検索結果データ901又は予定データ1101に基づいてユーザが本日(すなわち現在時刻を含む日)通過又は到着する予定のエリアを特定し、特定されたエリアにおける測位手法をチェックしてもよい。その例においてユーザが予定されていなかった行動をした場合、測位記録管理部105は、測位手法をチェックする必要があるか否かを上記のような方法によって判定してもよい。
ステップ1203において、測位手法をチェックする必要があると判定された場合、測位記録管理部105は、ルートに対応する測位手法DBサーバ104(すなわち、ユーザが接近したと判定されたエリアに関する測位手法DBサーバ104)から測位手法に関する情報を取得する(ステップ1204)。具体的には、測位記録管理部105は、ルートに対応する測位手法DBサーバ104に測位手法要求を送信し、それに対する測位手法要求を受信する。この送受信は、図4のステップ403及びステップ404に相当する。
例えば、ルートに基づいて特定されたユーザの現在地が屋外であるが、特定された次の地点が建物Aの内部である場合、測位記録管理部105は、建物Aに関する測位手法DBサーバ104に測位手法要求を送信する。これに対する測位手法応答には、図8に示したように、測位手法を識別する情報、及び、その測位手法を利用するために必要な情報等が含まれる。
次に、測位記録管理部105は、現在地を更新する(ステップ1205)。具体的には、測位記録管理部105は、測位履歴DB107に格納された座標値のうち、当該ユーザ(すなわち現在地取得要求を送信したユーザ)の現在地として最も確からしい座標値を、当該ユーザの新たな現在地の座標値として取得してもよい。あるいは、ステップ1203において判定された現在地の座標値を、新たな現在地の座標値として取得してもよい。測位記録管理部105は、取得された新たな現在地の座標値を用いて、現在地DB106の現在地702のうち、当該ユーザに関する値を更新する。
なお、測位履歴DB107に格納された座標値の確からしさは、種々の方法によって判定することができる。例えば、より新しく取得された座標値ほど、現在の座標値としては確からしいと判定してもよい。測位履歴DB107が、各座標値の精度を示す情報を含む場合、精度が高い座標値ほど確からしいと判定してもよい。あるいは、測位系ごとに座標値のばらつきを計算し、ばらつきが少ない測位系の座標値ほど確からしいと判定してもよい。
次に、測位記録管理部105は、ステップ1205において更新された現在地の位置情報と、ステップ1204において取得された測位手法に関する情報と、を移動体端末101に送信する(ステップ1206)。この送信は、図4のステップ405に相当する。
一方、ステップ1203において、測位手法をチェックする必要がないと判定された場合、測位記録管理部105は、現在地を更新する(ステップ1207)。この更新は、ステップ1205と同様に実行される。
次に、測位記録管理部105は、更新された現在地の位置情報を移動体端末101に送信する(ステップ1208)。この送信は、図4のステップ408に相当する。
なお、本実施形態は、測位統合サーバ102が、ルート検索のために必要な情報(図10B〜図10D)を保持し、ルート検索を実行し、ルート検索の結果(図10A)を保持する例を示すが、測位統合サーバ102以外の計算機(例えばアプリケーションサーバ103)がルート検索のために必要な情報を保持し、ルート検索を実行し、ルート検索の結果を保持してもよい。この場合、アプリケーションサーバ103は、例えば、ルート検索サービスを提供する事業者が管理してもよい。この場合、測位統合サーバ102は、ステップ1202において、必要なルート検索結果の送信をアプリケーションサーバ103に要求し、その要求に応じて送信されたルート検索結果を取得する。
図13は、本発明の実施形態の測位記録管理部105が現在地を判定する第2の処理を示すフローチャートである。
測位記録管理部105は、最初に、移動体端末101から現在位置取得要求を受信する(ステップ1301)。これは、図4のステップ402又はステップ407に相当する。
次に、測位記録管理部105は、ユーザIDを検索キーとして、予定DB110の予定データ1101を検索する(ステップ1302)。なお、図12のステップ1202と同様に取得されたユーザIDが検索キーとして使用される。
例えば、ユーザID「1」を検索キーとして図11Bに示す予定データ1101を検索すると、ユーザID1111の値が「UID1」である三つのレコードが取得される。
次に、測位記録管理部105は、ステップ1302の検索結果として取得されたユーザの予定に基づいて、現在地を判定し、さらに、測位手法をチェックする必要があるか否かを判定する(ステップ1303)。
図12の場合と同様、測位記録管理部105は、移動体端末101が、現在地を含むエリアとは異なるエリアに接近した場合に、そのエリアにおける測位手法をチェックする必要があると判定する。具体的には、測位記録管理部105は、ステップ1302の検索結果として取得されたレコードの予定開始日時1112、予定終了日時1113、図形ID1115及び探索用ノードデータ903に基づいて、ユーザの現在地、ユーザが現在地の次に向かう地点(すなわち次の地点)、及び、ユーザが次の地点に到着する予定時刻を特定することができる。このようにして特定された情報に基づいて、測位記録管理部105は、図12のステップ1203と同様、現在地を判定し、さらに、測位手法をチェックする必要があるか否かを判定する。
ステップ1303において、測位手法をチェックする必要があると判定された場合、測位記録管理部105は、ユーザの予定に対応する測位手法DBサーバ104(すなわち、ユーザが接近したと判定されたエリアに関する測位手法DBサーバ104)から測位手法に関する情報を取得する(ステップ1304)。具体的には、測位記録管理部105は、ユーザの予定に対応する測位手法DBサーバ104に測位手法要求を送信し、それに対する測位手法要求を受信する。この送受信は、図4のステップ403及びステップ404に相当する。
例えば、ユーザの予定に基づいて特定された現在地が屋外であるが、特定された次の地点が建物Aの内部である場合、測位記録管理部105は、建物Aに関する測位手法DBサーバ104に測位手法要求を送信する。これに対する測位手法応答には、図8に示したように、測位手法を識別する情報、及び、その測位手法を利用するために必要な情報等が含まれる。
次に、測位記録管理部105は、現在地を更新する(ステップ1305)。具体的には、測位記録管理部105は、測位履歴DB107に格納された座標値のうち、当該ユーザの現在地として最も確からしい座標値を、当該ユーザの新たな現在地の座標値として取得してもよい。あるいは、ステップ1303において判定された現在地の座標値を、新たな現在地の座標値として取得してもよい。測位記録管理部105は、取得された新たな現在地の座標値を用いて、現在地DB106の現在地702のうち、当該ユーザに関する値を更新する。
次に、測位記録管理部105は、ステップ1305において更新された現在地の位置情報と、ステップ1304において取得された測位手法に関する情報と、を移動体端末101に送信する(ステップ1306)。この送信は、図4のステップ405に相当する。
一方、ステップ1303において、測位手法をチェックする必要がないと判定された場合、測位記録管理部105は、現在地を更新する(ステップ1307)。この更新は、ステップ1305と同様に実行される。
次に、測位記録管理部105は、更新された現在地の位置情報を移動体端末101に送信する(ステップ1308)。この送信は、図4のステップ408に相当する。
なお、本実施形態は、測位統合サーバ102が、ユーザの予定に関する情報(図11A及び図11B)を保持する例を示すが、測位統合サーバ102以外の計算機(例えばアプリケーションサーバ103)がユーザの予定に関する情報を保持してもよい。この場合、アプリケーションサーバ103は、例えば、スケジュール管理サービスを提供する事業者が管理してもよい。この場合、測位統合サーバ102は、ステップ1302において、必要な予定に関する情報の送信をアプリケーションサーバ103に要求し、その要求に応じて送信された予定に関する情報を取得する。
図14は、本発明の実施形態の測位記録管理部105が現在地を判定する第3の処理を示すフローチャートである。
測位記録管理部105は、最初に、移動体端末101から現在位置取得要求を受信する(ステップ1401)。これは、図4のステップ402又はステップ407に相当する。
次に、測位記録管理部105は、ユーザIDを検索キーとして、測位履歴DB107の測位キュー群602を検索する(ステップ1402)。なお、図12のステップ1202と同様に取得されたユーザIDが検索キーとして使用される。
例えば、ユーザID「1」を検索キーとして図6Aに示す測位履歴DB107を検索すると、ユーザIDの値「UID1」に対応する測位キュー602A、602B及び602Cに格納された座標値が取得される。
次に、測位記録管理部105は、ステップ1402の検索結果として取得された座標値に基づいて、現在地を判定し、さらに、測位手法をチェックする必要があるか否かを判定する(ステップ1403)。図12の場合と同様、測位記録管理部105は、移動体端末101が、現在地を含むエリアとは異なるエリアに接近した場合に、そのエリアにおける測位手法をチェックする必要があると判定する。この判定方法については後述する(図15参照)。
ステップ1403において、測位手法をチェックする必要があると判定された場合、測位記録管理部105は、測位履歴に基づいて特定された測位手法DBサーバ104(すなわち、ユーザが接近したと判定されたエリアに関する測位手法DBサーバ104)から測位手法に関する情報を取得する(ステップ1404)。具体的には、測位記録管理部105は、測位履歴に基づいて特定された測位手法DBサーバ104に測位手法要求を送信し、それに対する測位手法要求を受信する。この送受信は、図4のステップ403及びステップ404に相当する。
例えば、測位履歴に基づいて特定された現在地が屋外であるが、次の地点が建物Aの内部である場合、測位記録管理部105は、建物Aに関する測位手法DBサーバ104に測位手法要求を送信する。これに対する測位手法応答には、図8に示したように、測位手法を識別する情報、及び、その測位手法を利用するために必要な情報等が含まれる。
次に、測位記録管理部105は、現在地を更新する(ステップ1405)。具体的には、測位記録管理部105は、ステップ1403において判定された現在地の座標値を、新たな現在地の座標値として取得し、その新たな現在地の座標値を用いて、現在地DB106の現在地702のうち、当該ユーザに関する値を更新する。
次に、測位記録管理部105は、ステップ1405において更新された現在地の位置情報と、ステップ1404において取得された測位手法に関する情報と、を移動体端末101に送信する(ステップ1406)。この送信は、図4のステップ405に相当する。
一方、ステップ1403において、測位手法をチェックする必要がないと判定された場合、測位記録管理部105は、現在地を更新する(ステップ1407)。この更新は、ステップ1405と同様に実行される。
次に、測位記録管理部105は、更新された現在地の位置情報を移動体端末101に送信する(ステップ1408)。この送信は、図4のステップ408に相当する。
図15は、本発明の実施形態の測位記録管理部105が測位履歴に基づいて現在地を判定する処理を示すフローチャートである。
図15を参照して、図14のステップ1403において実行される処理を説明する。
ユーザID「1」を検索キーとして図6Aに示す測位履歴DB107を検索すると、ユーザIDの値「UID1」に対応する測位キュー602A、602B及び602Cに格納された座標値が取得される。測位記録管理部105は、取得された座標値に基づいて、現在及び将来のユーザの位置を推定する。この推定には、取得された座標値のうち、精度が高い座標値が優先的に使用されてもよい。各測位キューに座標値の精度を示す情報(例えば測位に使用された衛星又は基地局の数)が格納されている場合、その情報に基づいて座標値の精度が判定されてもよい。
図15には、測位履歴に基づいて現在地及び将来のユーザの位置を推定する四つの方法を示す。
第1の方法によれば、測位記録管理部105は、最新の座標値(すなわち、現在時刻に最も近い時刻に取得された座標値)を含む複数の座標値に基づく直線近似を行う。この直線近似は、例えば最小二乗法等、公知の方法によって実現される。この直線近似によって、測位記録管理部105は、ユーザの将来の位置を推定する。例えば、現在から所定の時間内にユーザがあるエリアに入ると推定される場合、測位記録管理部105は、測位手法をチェックする必要があると判定する。なお、ユーザの現在地は、上記と同様の直線近似によって推定されてもよいし、最新の座標値によって近似されてもよい。
第2の方法によれば、測位記録管理部105は、最新の座標値とエリアの境界との間の距離が所定の値以下となった場合、ユーザがこれから新たなエリアに入ると推定されるため、測位手法をチェックする必要があると判定する。エリアの境界とは、例えば、屋外と、ある建物内のエリアとの境界(例えばその建物の入り口)である。
第3の方法によれば、測位記録管理部105は、最新の座標値に関する他のユーザの統計情報に基づいて、将来の位置を推定する。例えば、測位記録管理部105は、過去の他のユーザの行動の軌跡を示す情報を保持し、その情報に基づいて、最新の座標値付近に到達したユーザが現在から所定の時間以内に新たなエリアに入る確率を算出し、その確率が所定の閾値を超えた場合に、測位手法をチェックする必要があると判定してもよい。
第4の方法によれば、測位記録管理部105は、入退出管理用のRFID読み込みデータの有無に基づいて、ユーザのエリアへの出入りを判定する。例えば、ある建物の入り口にRFID読取装置を設置すれば、移動体端末101を携帯するユーザがその入り口を通過したことを検出することができる。さらに、そのユーザの測位履歴を参照すれば、そのユーザが建物に入ろうとしているか、建物から出ようとしているかを推定することができる。例えば、測位記録管理部105は、ユーザが建物(すなわちその建物内のエリア)に入ろうとしていると推定された場合、測位手法をチェックする必要があると判定する。
以上、本発明の実施形態によれば、移動体端末101の消費電力を削減し、それによって電源部307内の電池の消耗を抑えつつ、複数のエリア(例えば屋外と屋内)を渡って移動するユーザに切れ目のない位置情報サービスを提供することができる。