(57)【要約】【課題】連続的に収集される移動履歴情報から、屋内屋外を問わず、滞在区間を逐次抽出する、滞在地コンテキスト抽出装置、滞在地コンテキスト抽出方法およびプログラムを提供する。【解決手段】滞在地コンテキスト抽出装置１００は、位置情報収集装置２００からＧＰＳログ（ログ情報）と無線ＬＡＮ装置のアクセスポイント検知履歴とを移動履歴情報として取得し、移動履歴情報ＤＢ１４１に記憶する。そして、滞在地コンテキスト抽出装置１００は、移動履歴情報ＤＢ１４１からＧＰＳログを所定の間隔で取得し、取得した情報の緯度、経度、検出日時の平均値と、その直前区間の各平均値とを用いて、２つのデータの距離および速度が所定値以下の場合に、滞在区間を抽出する。また、移動履歴情報ＤＢ１４１からアクセスポイント検知履歴を取得し、同じアクセスポイント情報が所定時間連続する区間を滞在区間として抽出する。【選択図】図３
2010277190.tif 000002
【特許請求の範囲】
【請求項１】
衛星電波通信手段および無線ネットワーク通信手段を備えた位置情報収集装置に通信ネットワークを介して接続され、前記衛星電波通信手段からの電波情報をもとに逐次検出される前記位置情報収集装置の前記ユーザの緯度、経度およびその緯度、経度を検出した検出日時からなるログ情報と、前記無線ネットワーク通信手段により検出される無線通信ネットワークのアクセスポイント情報およびそのアクセスポイント情報の検出日時からなるアクセスポイント検知履歴と、を前記ユーザの移動履歴情報として前記位置情報収集装置から受信し、前記受信した移動履歴情報を用いて、前記ユーザが滞在した滞在地情報と滞在時間とによりユーザの移動中における滞在区間を示した滞在区間情報を生成する滞在地コンテキスト抽出装置であって、
前記移動履歴情報が記憶される移動履歴情報データベース、および前記滞在区間情報が記憶される滞在区間情報データベースを格納する記憶部と、
前記位置情報収集装置から前記移動履歴情報を受信し、前記移動履歴情報データベースに記憶させる位置情報取得部と、
前記複数の移動履歴情報を用いて、前記滞在区間情報を生成し、前記滞在区間情報データベースに記憶させる滞在区間抽出部と、を備え、
前記滞在区間抽出部は、
前記移動履歴情報データベースに記憶された前記移動履歴情報から、前記ユーザの複数の前記ログ情報を取得し、前記取得した複数のログ情報を所定の時間間隔に分割し、その分割された区間に属するログ情報群について、時刻の古い区間順に、前記滞在区間に含めるか否かを判断するため、前記ログ情報群の緯度、経度、およびそのログ情報の検出日時の各平均値を計算し、前記計算した各平均値を、次の区間のログ情報群を滞在区間に含めるかを判断するための直前区間情報として順次上書きして記憶し、
前記次の区間におけるログ情報群に示される緯度、経度、およびそのログ情報の検出日時の各平均値を計算し、当該計算した各平均値と、前記直前区間情報として記憶した各平均値とから、当該区間と直前区間との間の距離および速度を計算し、前記計算した距離が所定値未満であり、かつ前記計算した速度が所定値未満である場合に、当該区間のログ情報群および直前区間のログ情報群を合わせて前記各平均値を計算し、当該計算した情報を第１の滞在区間情報として抽出し、
さらに、前記移動履歴情報データベースに記憶された前記移動履歴情報から、前記ユーザの前記複数のアクセスポイント検知履歴を取得し、同じ前記アクセスポイント情報が所定時間連続するアクセスポイント検知履歴群を第２の滞在区間情報として抽出し、
前記第１の滞在区間情報として取得できなかった時間における滞在区間情報として、その取得できなかった時間の前記第２の滞在区間情報を追加して前記滞在区間情報を生成すること
を特徴とする滞在地コンテキスト抽出装置。
【請求項２】
前記滞在区間情報データベースから、前記計算したログ情報の検出日時の平均値が隣接する２つの滞在区間情報を抽出し、前記抽出した２つの滞在区間情報の前記ログ情報の検出日時の平均値の間隔が所定値以下であり、かつ前記抽出した２つの滞在区間情報それぞれの前記ログ情報群の緯度および経度により示される滞在地の領域が重なる場合に、前記２つの滞在区間情報を１つの滞在区間情報として前記滞在区間情報データベースに記憶させる滞在区間連結部を備えること
を特徴とする請求項１に記載の滞在地コンテキスト抽出装置。
【請求項３】
前記滞在区間情報データベースから前記滞在区間情報を抽出し、前記滞在区間の開始時間から終了時間までの長さが所定値未満の場合に、当該滞在区間情報を前記滞在区間情報データベースから削除する滞在区間削除部を備えること
を特徴とする請求項２に記載の滞在地コンテキスト抽出装置。
【請求項４】
衛星電波通信手段および無線ネットワーク通信手段を備えた位置情報収集装置に通信ネットワークを介して接続され、前記衛星電波通信手段からの電波情報をもとに逐次検出される前記位置情報収集装置の前記ユーザの緯度、経度およびその緯度、経度を検出した検出日時からなるログ情報と、前記無線ネットワーク通信手段により検出される無線通信ネットワークのアクセスポイント情報およびそのアクセスポイント情報の検出日時からなるアクセスポイント検知履歴と、を前記ユーザの移動履歴情報として前記位置情報収集装置から受信し、前記受信した移動履歴情報を用いて、前記ユーザが滞在した滞在地情報と滞在時間とによりユーザの移動中における滞在区間を示した滞在区間情報を生成する滞在地コンテキスト抽出装置に用いられる滞在地コンテキスト抽出方法であって、
前記滞在器コンテキスト抽出装置は、
前記移動履歴情報が記憶される移動履歴情報データベース、および前記滞在区間情報が記憶される滞在区間情報データベースを格納する記憶部を備え、
前記位置情報収集装置から前記移動履歴情報を受信し、前記移動履歴情報データベースに記憶させるステップと、
前記複数の移動履歴情報を用いて、前記滞在区間情報を生成し、前記滞在区間情報データベースに記憶させるステップと、を実行し、
さらに、前記滞在区間情報を生成するステップは、
前記移動履歴情報データベースに記憶された前記移動履歴情報から、前記ユーザの複数の前記ログ情報を取得し、前記取得した複数のログ情報を所定の時間間隔に分割し、その分割された区間に属するログ情報群について、時刻の古い区間順に、前記滞在区間に含めるか否かを判断するため、前記ログ情報群の緯度、経度、およびそのログ情報の検出日時の各平均値を計算し、前記計算した各平均値を、次の区間のログ情報群を滞在区間に含めるかを判断するための直前区間情報として順次上書きして記憶するステップと、
前記次の区間におけるログ情報群に示される緯度、経度、およびそのログ情報の検出日時の各平均値を計算し、当該計算した各平均値と、前記直前区間情報として記憶した各平均値とから、当該区間と直前区間との間の距離および速度を計算し、前記計算した距離が所定値未満であり、かつ前記計算した速度が所定値未満である場合に、当該区間のログ情報群および直前区間のログ情報群を合わせて前記各平均値を計算し、当該計算した情報を第１の滞在区間情報として抽出するステップと、
さらに、前記移動履歴情報データベースに記憶された前記移動履歴情報から、前記ユーザの前記複数のアクセスポイント検知履歴を取得し、同じ前記アクセスポイント情報が所定時間連続するアクセスポイント検知履歴群を第２の滞在区間情報として抽出するステップと、
前記第１の滞在区間情報として取得できなかった時間における滞在区間情報として、その取得できなかった時間の前記第２の滞在区間情報を追加して前記滞在区間情報を生成するステップと、を実行すること
を特徴とする滞在地コンテキスト抽出方法。
【請求項５】
請求項４に記載の滞在地コンテキスト抽出方法を、コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、滞在地コンテキスト抽出装置、滞在地コンテキスト抽出方法およびプログラムに関する。
【背景技術】
【０００２】
日記的ブログのための行動思い出しの促進、自分史の自動作成のための行動蓄積、安全や効率的な行動レコメンドのための行動解析などの実現に際し、人の行動履歴を自動で把握するためには様々な要件が必要となる。その中で、身近にある機器を用いて連続的に抽出される移動履歴データから、屋内屋外を問わず、意味のある場所と想定される滞在地を漏れなく離散系列データとして逐次抽出することが、特に重要となる。
この要件に関連する従来技術には、以下の方式がある。
【０００３】
例えば、非特許文献１には、ＧＰＳ（Global Positioning System）ロガーを用いて定期的に蓄積されたＧＰＳデータを、データ・カテゴライズ技術を用いて処理し、データが集中するエリア、すなわち滞在したであろう場所を抽出する技術が開示されている。
【０００４】
また、非特許文献２には、無線ＬＡＮ機器（ＷｉＦｉ（登録商標）：Wireless Fidelity）の全アクセスポイントに位置情報(緯度、経度)を付加してサーバ側で予め管理しておき、利用者が収集した１つ以上のＷｉＦｉデータをサーバに送信すると、当該データから三角測量などの技術を利用して、現在位置を推定する技術が開示されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】西野、外５名、「滞在地遷移情報からの行動パターン抽出方式の検討」、情報処理学会、第20回UBI研究会、2008年11月13日
【非特許文献２】暦本純一、味八木崇「When becomes Where: WiFiセルフロギングによる継続的位置履歴取得とその応用」、情報処理学会インタラクション2007
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、非特許文献１に記載された技術は、ある程度、データを蓄積しないと精度の高い滞在地の抽出ができないため、リアルタイムでの滞在地情報の逐次の抽出には適さない。また、ＧＰＳデータ取得が欠落したビルの谷間や屋内のＧＰＳデータの補完には、線形補完を用いるため、屋内入口で欠落し、同じ地点でＧＰＳデータを再補足した場合、当該入口が滞在地として誤抽出されるなどの問題があった。
【０００７】
また、非特許文献２に記載された技術では、たとえば、無線ＬＡＮ機器のアクセスポイントが収集できない人里離れた場所などでは、方式上、現在地を推定することができない。また、アクセスポイントの場所は容易に想定できるものではなく、緯度および経度情報を予め正確に登録する手間が大きいなどの課題がある。
【０００８】
このような背景に鑑みて本発明がなされたのであり、本発明は、身近にある機器を用いて連続的に収集される移動履歴データから、屋内屋外を問わず、滞在情報を逐次抽出する、滞在地コンテキスト抽出装置、滞在地コンテキスト抽出方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
前記した課題を解決するため、請求項１に記載の発明は、衛星電波通信手段および無線ネットワーク通信手段を備えた位置情報収集装置に通信ネットワークを介して接続され、前記衛星電波通信手段からの電波情報をもとに逐次検出される前記位置情報収集装置の前記ユーザの緯度、経度およびその緯度、経度を検出した検出日時からなるログ情報と、前記無線ネットワーク通信手段により検出される無線通信ネットワークのアクセスポイント情報およびそのアクセスポイント情報の検出日時からなるアクセスポイント検知履歴と、を前記ユーザの移動履歴情報として前記位置情報収集装置から受信し、前記受信した移動履歴情報を用いて、前記ユーザが滞在した滞在地情報と滞在時間とによりユーザの移動中における滞在区間を示した滞在区間情報を生成する滞在地コンテキスト抽出装置であって、前記移動履歴情報が記憶される移動履歴情報データベース、および前記滞在区間情報が記憶される滞在区間情報データベースを格納する記憶部と、前記位置情報収集装置から前記移動履歴情報を受信し、前記移動履歴情報データベースに記憶させる位置情報取得部と、前記複数の移動履歴情報を用いて、前記滞在区間情報を生成し、前記滞在区間情報データベースに記憶させる滞在区間抽出部と、を備え、前記滞在区間抽出部は、前記移動履歴情報データベースに記憶された前記移動履歴情報から、前記ユーザの複数の前記ログ情報を取得し、前記取得した複数のログ情報を所定の時間間隔に分割し、その分割された区間に属するログ情報群について、時刻の古い区間順に、前記滞在区間に含めるか否かを判断するため、前記ログ情報群の緯度、経度、およびそのログ情報の検出日時の各平均値を計算し、前記計算した各平均値を、次の区間のログ情報群を滞在区間に含めるかを判断するための直前区間情報として順次上書きして記憶し、前記次の区間におけるログ情報群に示される緯度、経度、およびそのログ情報の検出日時の各平均値を計算し、当該計算した各平均値と、前記直前区間情報として記憶した各平均値とから、当該区間と直前区間との間の距離および速度を計算し、前記計算した距離が所定値未満であり、かつ前記計算した速度が所定値未満である場合に、当該区間のログ情報群および直前区間のログ情報群を合わせて前記各平均値を計算し、当該計算した情報を第１の滞在区間情報として抽出し、さらに、前記移動履歴情報データベースに記憶された前記移動履歴情報から、前記ユーザの前記複数のアクセスポイント検知履歴を取得し、同じ前記アクセスポイント情報が所定時間連続するアクセスポイント検知履歴群を第２の滞在区間情報として抽出し、前記第１の滞在区間情報として取得できなかった時間における滞在区間情報として、その取得できなかった時間の前記第２の滞在区間情報を追加して前記滞在区間情報を生成することを特徴とする。
【００１０】
請求項４に記載の発明は、衛星電波通信手段および無線ネットワーク通信手段を備えた位置情報収集装置に通信ネットワークを介して接続され、前記衛星電波通信手段からの電波情報をもとに逐次検出される前記位置情報収集装置の前記ユーザの緯度、経度およびその緯度、経度を検出した検出日時からなるログ情報と、前記無線ネットワーク通信手段により検出される無線通信ネットワークのアクセスポイント情報およびそのアクセスポイント情報の検出日時からなるアクセスポイント検知履歴と、を前記ユーザの移動履歴情報として前記位置情報収集装置から受信し、前記受信した移動履歴情報を用いて、前記ユーザが滞在した滞在地情報と滞在時間とによりユーザの移動中における滞在区間を示した滞在区間情報を生成する滞在地コンテキスト抽出装置に用いられる滞在地コンテキスト抽出方法であって、前記滞在器コンテキスト抽出装置は、前記移動履歴情報が記憶される移動履歴情報データベース、および前記滞在区間情報が記憶される滞在区間情報データベースを格納する記憶部を備え、前記位置情報収集装置から前記移動履歴情報を受信し、前記移動履歴情報データベースに記憶させるステップと、前記複数の移動履歴情報を用いて、前記滞在区間情報を生成し、前記滞在区間情報データベースに記憶させるステップと、を実行し、さらに、前記滞在区間情報を生成するステップは、前記移動履歴情報データベースに記憶された前記移動履歴情報から、前記ユーザの複数の前記ログ情報を取得し、前記取得した複数のログ情報を所定の時間間隔に分割し、その分割された区間に属するログ情報群について、時刻の古い区間順に、前記滞在区間に含めるか否かを判断するため、前記ログ情報群の緯度、経度、およびそのログ情報の検出日時の各平均値を計算し、前記計算した各平均値を、次の区間のログ情報群を滞在区間に含めるかを判断するための直前区間情報として順次上書きして記憶するステップと、前記次の区間におけるログ情報群に示される緯度、経度、およびそのログ情報の検出日時の各平均値を計算し、当該計算した各平均値と、前記直前区間情報として記憶した各平均値とから、当該区間と直前区間との間の距離および速度を計算し、前記計算した距離が所定値未満であり、かつ前記計算した速度が所定値未満である場合に、当該区間のログ情報群および直前区間のログ情報群を合わせて前記各平均値を計算し、当該計算した情報を第１の滞在区間情報として抽出するステップと、さらに、前記移動履歴情報データベースに記憶された前記移動履歴情報から、前記ユーザの前記複数のアクセスポイント検知履歴を取得し、同じ前記アクセスポイント情報が所定時間連続するアクセスポイント検知履歴群を第２の滞在区間情報として抽出するステップと、前記第１の滞在区間情報として取得できなかった時間における滞在区間情報として、その取得できなかった時間の前記第２の滞在区間情報を追加して前記滞在区間情報を生成するステップと、を実行することを特徴とするを特徴とする。
【００１１】
このようにすることで、滞在地コンテキスト抽出装置は、位置情報収集装置からログ情報およびアクセスポイント検知履歴を移動履歴情報として受信することができる。そして、滞在地コンテキスト抽出装置は、受信した移動履歴情報から取得した複数のログ情報を、所定の時間間隔毎に分割し、分割した区間毎にログ情報群の緯度、経度、検出日時の平均値を計算する。そして、その計算した平均値と、その直前区間で計算されたログ情報群の緯度、経度、検出日時の平均値とから、当該区間とその直前区間との間の距離と速度を計算する。続いて、滞在地コンテキスト抽出装置は、計算した距離が所定値未満であり、かつ計算した速度が所定値未満である場合に、当該区間のログ情報群および直前区間のログ情報群を合わせて各平均値を計算し、計算した情報を第１の滞在区間情報として抽出する。
さらに、滞在地コンテキスト抽出装置は、受信した移動履歴情報からアクセスポイント検知履歴を取得し、同じアクセスポイント情報が所定時間連続するアクセスポイント検知履歴群を第２の滞在区間として抽出する。
そして、滞在地コンテキスト抽出装置は、第１の滞在区間として取得できなかった時間における滞在区間情報として、第２の滞在区間情報を追加して滞在区間情報を生成する。
【００１２】
つまり、滞在地コンテキスト抽出装置は、衛星電波通信手段および無線ネットワーク通信手段を備えた位置情報収集装置から移動履歴情報を取得し、屋外においてログ情報から得た移動履歴情報を用いて、屋内においてはアクセスポイント検知履歴から得た移動履歴情報を用いて、逐次滞在区間を抽出することができる。
【００１３】
請求項２に記載の発明は、請求項１に記載の滞在地コンテキスト抽出装置において、前記滞在区間情報データベースから、前記計算したログ情報の検出日時の平均値が隣接する２つの滞在区間情報を抽出し、前記抽出した２つの滞在区間情報の前記ログ情報の検出日時の平均値の間隔が所定値以下であり、かつ前記抽出した２つの滞在区間情報それぞれの前記ログ情報群の緯度および経度により示される滞在地の領域が重なる場合に、前記２つの滞在区間情報を１つの滞在区間情報として前記滞在区間情報データベースに記憶させる滞在区間連結部を備えることを特徴とするを特徴とする。
【００１４】
このようにすることで、滞在地コンテキスト抽出装置が抽出した滞在区間情報を補正することができる。具体的には、滞在地コンテキスト抽出装置は、検出日時が近くかつ位置の近い２つの滞在区間情報を、１つの滞在区間情報として連結することができる。よって、隣接する２つの滞在区間情報を１つの滞在区間として抽出することが可能となる。
【００１５】
請求項３に記載の発明は、請求項２に記載の滞在地コンテキスト抽出装置において、前記滞在区間情報データベースから前記滞在区間情報を抽出し、前記滞在区間の開始時間から終了時間までの長さが所定値未満の場合に、当該滞在区間情報を前記滞在区間情報データベースから削除する滞在区間削除部を備えることを特徴とするを特徴とする。
【００１６】
このようにすることで、滞在区間情報として抽出された情報であっても、滞在時間が短時間であり、滞在情報として記録しておく必要がないと判定される滞在区間情報を削除することができる。
【００１７】
請求項５に記載の発明は、請求項４に記載の滞在地コンテキスト抽出方法を、コンピュータに実行させるためのプログラムとした。
【００１８】
このようなプログラムによれば、請求項４に記載の滞在地コンテキスト抽出方法を、一般的なコンピュータで実行させることができる。
【発明の効果】
【００１９】
本発明によれば、身近にある機器を用いて連続的に収集される移動履歴データから、屋内屋外を問わず、滞在情報を逐次抽出する、滞在地コンテキスト抽出装置、滞在地コンテキスト抽出方法およびプログラムを提供することができる。
【図面の簡単な説明】
【００２０】
【図１】本実施形態に係る滞在地コンテキスト抽出システムの全体構成を示す図である。
【図２】本実施形態に係る滞在地コンテキスト抽出システムによる滞在区間の抽出方法を説明する概念図である。
【図３】本実施形態に係る滞在地コンテキスト抽出システムの構成例を示す機能ブロック図である。
【図４】本実施形態に係る滞在地コンテキスト抽出装置による滞在区間の抽出処理の全体の流れを示すフローチャートである。
【図５】本実施形態に係る滞在区間情報の抽出処理の流れを示すフローチャートである。
【図６】本実施形態に係る滞在区間判定処理の流れを示すフローチャートである。
【図７】本実施形態に係る滞在区間情報の補正処理の流れを示すフローチャートである。
【図８】本実施形態に係る滞在区間情報の連結処理の流れを示すフローチャートである。
【図９】本実施形態に係るＷｉＦｉ滞在区間情報抽出処理の流れを示すフローチャートである。
【図１０】本実施形態に係る滞在区間情報の削除処理の流れを示すフローチャートである。
【図１１】本実施形態に係る滞在地情報の付加処理の流れを示すフローチャートである。
【図１２】本実施形態に係る移動履歴情報の一例を示す図である。
【図１３】本実施形態に係る移動履歴情報の一例を示す図である。
【図１４】本実施形態に係る直前区間情報の一例を示す図である。
【図１５】本実施形態に係る滞在区間情報の一例を示す図である。
【図１６】本実施形態に係るエリア情報の一例を示す図である。
【図１７】本実施形態に係るユーザ情報の一例を示す図である。
【図１８】本実施形態に係る滞在区間情報の一例を示す図である。
【図１９】本実施形態に係る直前区間情報の一例を示す図である。
【図２０】本実施形態に係る滞在区間情報リストの一例を示す図である。
【図２１】本実施形態に係る滞在区間情報リストの一例を示す図である。
【図２２】本実施形態に係る滞在区間情報リストの一例を示す図である。
【図２３】本実施形態に係る滞在区間情報の一例を示す図である。
【図２４】本実施形態に係るエリア情報の一例を示す図である。
【図２５】本実施形態に係るエリア−滞在区間情報の一例を示す図である。
【発明を実施するための形態】
【００２１】
次に、本発明を実施するための形態（「実施形態」という）について、適宜図面を参照しながら詳細に説明する。
【００２２】
図１は、本実施形態に係る滞在地コンテキスト抽出システム１の全体構成を示す図である。
図１に示すように、本実施形態に係る滞在地コンテキスト抽出システム１では、滞在地コンテキスト抽出装置１００が、インターネットなどの通信ネットワーク４００に接続され、その通信ネットワーク４００には、ユーザの位置情報収集装置２００（２００ａ，２００ｂ，２００ｃ，…）が接続されている。
【００２３】
ここで、位置情報収集装置２００は、ＧＰＳ（衛星電波通信手段）や無線ＬＡＮ通信手段（無線ネットワーク通信手段）を内蔵または外付けで具備し、収集した情報を滞在地コンテキスト抽出装置１００に送信する。この位置情報収集装置２００は、例えば、ＧＰＳおよび無線ＬＡＮ通信手段の双方を具備した携帯端末や、無線ＬＡＮ通信手段を具備したＰＣ（Personal Computer）などに、ＧＰＳロガー２０１を接続した装置などである。
【００２４】
滞在地コンテキスト抽出装置１００と通信ネットワーク４００を介して接続されるランドマーク検索装置３００は、例えば、外部のクラウドサービスとして利用するものであり、中心地(緯度、経度)と探索半径を渡すと、指定した中心地に近い順に探索半径までのランドマーク情報の検索結果を提供する。滞在地コンテキスト抽出装置１００が、抽出した滞在情報にランドマーク情報を付加したい場合に接続する。
【００２５】
また、図１には記していないが、抽出された滞在情報を利用しサービスを提供するサーバは、通信ネットワーク４００に接続され、抽出された滞在情報を滞在地コンテキスト抽出装置１００から取得し、ユーザに参照させる。このサービスには、日記的ブログの作成支援、自分史の作成支援、行動レコメンドなどが考えられる。
【００２６】
図２は、本実施形態に係る滞在地コンテキスト抽出システム１による滞在区間の抽出方法を説明する概念図である。
図２に示すように、本実施形態に係る滞在地コンテキスト抽出システム１によれば、ユーザが屋外にいるときは、位置情報収集装置２００が備えるＧＰＳロガーからの情報により、滞在情報を抽出する。また、ＧＰＳが使えない屋内にユーザがいるときは、無線ＬＡＮ通信手段を用いて、滞在情報を抽出する。
【００２７】
また、本実施形態に係る滞在地コンテキスト抽出装置１００は、位置情報収集装置２００からの移動履歴に基づき、移動距離が少なく、移動速度の遅い滞在情報について、滞在区間として抽出する。そして例えば、Ａ駅、Ｂ駅、職場、コンビニ（コンビニエンスストア）、Ｃ公園などの滞在地を、緯度、経度や半径で示す滞在区間情報として抽出することができる。
【００２８】
図３は本実施形態に係る滞在地コンテキスト抽出システム１の構成例を示す機能ブロック図である。
図３に示すように、本実施形態に係る滞在地コンテキスト抽出装置１００は、位置情報収集装置２００のＧＰＳログ収集部２２０およびＷｉＦｉアクセスポイント検知ログ収集部２３０が収集した位置情報（移動履歴情報）を、位置情報送信部２１０の処理により、通信ネットワーク４００を介して受信するものである。また、滞在地コンテキスト抽出装置１００は、滞在区間のランドマーク情報を必要とする場合には、通信ネットワーク４００を介してランドマーク検索装置３００にアクセスする。
【００２９】
滞在地コンテキスト抽出装置１００は、ユーザが備える位置情報収集装置２００から収集したＧＰＳログ（ログ情報）とＷｉＦｉのアクセスポイント検知履歴をもとに、概ねの滞在場所である滞在区間情報を離散系列データとして抽出するものである。
この滞在地コンテキスト抽出装置１００は、図３に示すように、制御部１０と、通信部１１と、入出力部１２と、メモリ部１３と、記憶部１４とを含んで構成される。
【００３０】
制御部１０は、位置情報収集装置２００から受信した移動履歴情報を取得し、滞在区間を抽出する処理を行い、位置情報取得部１１０および滞在区間抽出部１２０を有する。なお、この制御部１０の機能は、例えば滞在地コンテキスト抽出装置１００の記憶部１４に記憶されたプログラムをＣＰＵ（Central Processing Unit）がメモリ部１３に展開し実行することで実現される。
【００３１】
位置情報取得部１１０は、通信部１１を介して、位置情報収集装置２００から移動履歴情報（図１２，図１３参照）を受信し、後記するユーザ情報データベース（ＤＢ：DataBase）１４７に記憶されたユーザ情報（図１７参照）に基づいて、ユーザ認証を行った上で、認証に成功した移動履歴情報を記憶部１４に記憶する。
【００３２】
滞在区間抽出部１２０は、移動履歴情報から滞在区間情報（図１５参照）を抽出し、その抽出した滞在区間情報を補正する処理を行う。また、滞在区間抽出部１２０は、滞在区間判定部１２１と、滞在区間連結部１２２と、ＷｉＦｉ履歴処理部１２３と、滞在区間削除部１２４と、滞在地情報付加部１２５とを含んで構成される。
【００３３】
滞在区間判定部１２１は、移動履歴情報から抽出したＧＰＳデータについて、「滞在区間の開始」、「滞在区間の継続」、滞在区間ではないため「滞在区間の抽出処理終了」のいずれかを判定する。そして、滞在区間判定部１２１は、「滞在区間の開始」と判断した場合には、滞在区間ＩＤを取得して滞在区間情報を生成する。
【００３４】
滞在区間連結部１２２は、抽出した２つの滞在区間情報について、検出日時の時間間隔が所定値以内であり、かつ距離が所定値以内である場合に、２つの滞在区間情報を１つの滞在区間情報として連結させる。
【００３５】
ＷｉＦｉ履歴処理部１２３は、ＷｉＦｉのアクセスポイント検知履歴を取得し、滞在区間情報を生成する処理を行う。
【００３６】
滞在区間削除部１２４は、抽出された滞在区間情報について、滞在時間を算出し、滞在時間が所定値未満の場合は、その滞在区間情報を削除する処理を行う。
【００３７】
滞在地情報付加部１２５は、ランドマーク検索装置３００（図３参照）、後記するエリア情報ＤＢ１４４、住所ＤＢ１４５を検索して、エリア情報ＩＤを取得し、エリア情報ＩＤと滞在区間ＩＤとを関連付けるエリア−滞在区間情報（図２５参照）を生成する。
【００３８】
次に、通信部１１は、通信ネットワーク４００を介して各装置との情報の送受信を行うためのインタフェースからなる。
入出力部１２は、キーボードなどからなり制御部１０の処理に関する指示を与える入力手段と、液晶ディスプレイなどからなる出力手段を有する。
メモリ部１３は、ＲＡＭ（Random Access Memory）などの記憶手段からなり、制御部１０の制御に必要な情報を一時的に記憶する。
【００３９】
記憶部１４は、ＧＰＳログ（ログ情報）とＷｉＦｉのアクセスポイント検知履歴から得た情報である移動履歴情報（図１２，図１３参照）が記憶される移動履歴情報ＤＢ１４１と、直前に処理した区間の情報である直前区間情報（図１４参照）が記憶される直前区間情報ＤＢ１４２と、抽出された滞在区間に関する情報である滞在区間情報（図１５参照）が記憶される滞在区間情報ＤＢ１４３と、滞在地の名称を管理するエリア情報（図１６参照）が記憶されるエリア情報ＤＢ１４４と、緯度および経度と住所との対応情報が記憶される住所ＤＢ１４５と、滞在区間とエリア情報との関係を管理するエリア−滞在区間情報（図２５参照）が記憶されるエリア−滞在区間ＤＢ１４６と、ユーザ情報（図１７参照）が記憶されるユーザ情報ＤＢ１４７とを含んで構成される。なお、これらの情報の具体的なデータ構成は、後記において具体的に説明する。
【００４０】
次に、本実施形態に係る滞在地コンテキスト抽出装置１００による滞在地コンテキスト抽出方法について具体的に説明する。
【００４１】
図４は、本実施形態に係る滞在地コンテキスト抽出装置１００による滞在区間の抽出処理の全体の流れを示すフローチャートである。
図４に示すように、まず、滞在地コンテキスト抽出装置１００の位置情報取得部１１０は、通信部１１を介して位置情報収集装置２００から、ユーザ情報と、ＧＰＳログ（ログ情報）あるいはアクセスポイント検知履歴とを移動履歴情報として受信する（ステップＳ１０００）。
【００４２】
ここで、ユーザ情報（図１７参照）は、ユーザ名とパスワードから構成される情報である。
また、移動履歴情報（図１２，図１３参照）は、ユーザに固有の番号であるユーザＩＤと、受信した情報がＧＰＳデータかＷｉＦｉデータかの別を示す種別と、検出日時と、ＧＰＳから取得される緯度および経度と、ＷｉＦｉのアクセスポイント検知履歴から取得されるＭＡＣアドレスと、電波強度と、無線ＬＡＮのアクセスポイントの識別子であるＳＳＩＤ（Service Set Identifier）とを有する。
【００４３】
次に、位置情報取得部１１０は、取得したユーザ名とパスワードがユーザ情報ＤＢ１４７に登録されているか否かを判断するユーザ情報の認証を行う（ステップＳ２０００）。
そして、ユーザ情報がユーザ情報ＤＢ１４７に登録されており、認証が成功すれば（ステップＳ３０００→Ｙｅｓ）、次のステップＳ４０００に進む。一方、認証に失敗した場合は（ステップＳ３０００→Ｎｏ）、エラーとして滞在区間情報の抽出処理を終了する（ステップＳ６０００）。
【００４４】
ステップＳ４０００において、位置情報取得部１１０は、ユーザ認証に成功した移動履歴情報（図１２，図１３参照）を、記憶部１４内の移動履歴情報ＤＢ１４１に登録する。
【００４５】
そして、滞在区間抽出部１２０は、移動履歴情報ＤＢ１４１に登録された移動履歴情報を用いて、滞在区間を抽出する処理（滞在区間情報の抽出処理）を行う（ステップＳ５０００）。なお、滞在区間情報の抽出処理については、次に示す図５において詳細に説明する。
【００４６】
（滞在区間情報の抽出処理）
図５は、本実施形態に係る滞在区間情報の抽出処理の流れを示すフローチャートである。
まず、滞在区間抽出部１２０は、ユーザＩＤをキーとして、直前の滞在区間の情報である直前区間情報を直前区間情報ＤＢ１４２から取得する（ステップＳ５１００）。
【００４７】
この直前区間情報（図１４参照）は、ユーザＩＤと、その直前区間内で検出されたデータの緯度および経度の相加平均と、検出日時の相加平均と、滞在区間フラグと、そのデータの開始日時・終了日時と、滞在区間ＩＤとを有する。
ここで、滞在区間フラグとは、その直前区間が滞在区間として抽出されたか否かを示す情報であり、直前区間が滞在区間として抽出されていれば「true」と入力され、抽出されていなければ「false」と入力される。また、滞在区間フラグが「true」の場合には、その滞在区間に付された滞在区間ＩＤが入力され、「false」の場合には、「null」が入力される。
【００４８】
次に、滞在区間抽出部１２０は、移動履歴情報ＤＢ１４１からＧＰＳログを抽出する（ステップＳ５２００）。
そして、滞在区間抽出部１２０は、データの古い順に、所定の時間間隔（区間）毎のＧＰＳログを取得する（ステップＳ５３００）。この所定の時間間隔（区間）は、例えば、１分間隔、３分間隔などとし、予め設定しておくものである。
【００４９】
続いて、滞在区間抽出部１２０は、取得したデータ件数が０件か否かを判断する（ステップＳ５４００）。そして、取得した件数が０件でなければ（ステップＳ５４００→Ｎｏ）、ステップＳ５５００へ進む。
【００５０】
ステップＳ５５００において、滞在区間判定部１２１は、取得したデータが、新たな滞在区間の開始、滞在区間の継続、滞在区間の抽出処理終了のいずれに該当するかを判断する（滞在区間判定処理）。なお、滞在区間判定処理については、図６において詳細に説明する。
【００５１】
次に、ステップＳ５４００において、取得したデータ件数が０件だった場合、またはステップＳ５５００の滞在区間判定処理を終えた場合に、滞在区間抽出部１２０は、すべてのＧＰＳログを処理したか否かを判断する（ステップＳ５６００）。ここで、まだ処理していないＧＰＳログがある場合には（ステップＳ５６００→Ｎｏ）、ステップＳ５３００へ戻り処理を続ける。一方、すべてのＧＰＳログの処理を終えた場合には（ステップＳ５６００→Ｙｅｓ）、次のステップＳ５７００に進み、滞在区間情報の補正処理（後記する図７参照）を行う。
【００５２】
（滞在区間判定処理）
次に、図５のステップＳ５５００において、滞在区間判定部１２１が行う滞在区間判定処理について説明する。
図６は、本実施形態に係る滞在区間判定処理の流れを示すフローチャートである。
まず、滞在区間判定部１２１は、図５のステップＳ５３００において所定間隔内で取得したＧＰＳログの緯度の相加平均、経度の相加平均、検出日時の相加平均を計算する（ステップＳ５５１０）。
【００５３】
続いて、滞在区間判定部１２１は、ステップＳ５５１０で計算した各平均値と、直前区間情報（図１４参照）の緯度の相加平均値、経度の相加平均値、検出日時の相加平均値とから、移動した距離と速度を計算する（ステップＳ５５２０）。なお、この直前区間情報は、図５のステップＳ５３００において所定の時間間隔で取得された当該区間の一つ前に取得され処理された区間に関する情報が、直前区間情報ＤＢに上書きされて記憶されているものである（後記するステップＳ５５４０，Ｓ５５７０，Ｓ５５９０参照）。
【００５４】
そして、滞在区間判定部１２１は、計算した距離が所定値未満であり、かつ速度が所定値未満であるか否かを判断する（ステップＳ５５３０）。
ここで、距離が所定値未満、かつ速度が所定未満でない場合は（ステップＳ５５３０→Ｎｏ）、そのＧＰＳログについての滞在区間の抽出処理を終了する（滞在区間の抽出処理終了）。その際、ステップＳ５５１０で計算したデータを直前区間情報に記憶し、滞在区間フラグを「false」にし、滞在区間ＩＤを「null」にして、直前区間情報ＤＢ１４２を上書きする（ステップＳ５５４０）。
【００５５】
一方、距離が所定値未満、かつ速度が所定値未満である場合には（ステップＳ５５３０→Ｙｅｓ）、取得したデータの滞在区間情報を生成または更新するため、ステップＳ５５５０へ進む。
【００５６】
ステップＳ５５５０において、直前区間情報の滞在区間フラグが「false」の場合は（ステップＳ５５５０→Ｙｅｓ）、ステップＳ５５１０で計算したデータと、直前区間情報とを用いて、滞在区間情報を生成し、滞在区間ＩＤを取得して滞在区間情報ＤＢ１４３に記憶する（ステップＳ５５６０）。
そして、滞在区間判定部１２１は、ステップＳ５５１０で計算したデータを直前区間情報ＤＢに上書きする（ステップＳ５５７０）。その際、滞在区間フラグを「true」に設定して記憶させる。
なお、このＧＰＳログのデータをもとに生成された滞在区間情報を、請求項において第１の滞在区間情報という。
【００５７】
ステップＳ５５５０において、直前区間情報の滞在区間フラグが「false」でない（つまり「true」）場合は（ステップＳ５５５０→Ｎｏ）、ステップＳ５５１０で計算したデータと、直前区間データとを用いて滞在区間情報を更新し、滞在区間情報ＤＢ１４３に記憶する（ステップＳ５５８０）。
そして、滞在区間判定部１１０は、ステップＳ５５１０で計算したデータを直前区間情報ＤＢに上書きする（ステップＳ５５９０）。その際、滞在区間フラグを「true」に設定して記憶させる。
【００５８】
この滞在区間情報（図１５参照）は、滞在区間毎に付される固有の番号である滞在区間ＩＤと、ユーザＩＤと、受信した情報がＧＰＳデータかＷｉＦｉデータかの別を示す種別と、緯度および経度の相加平均値と、半径と、検出日時の相加平均値と、ＷｉＦｉエリア名と、取得したデータの開始日時・終了日時とを有する。
ここで、半径は、滞在区間内の日時のＧＰＳタグのデータ群の位置情報から重心を計算し、すべてのデータを包むようにして算出する。また、種別がＷｉＦｉデータの場合は、緯度、経度、半径の値は「null」となり、ＷｉＦｉエリア名が入力される。なお、ＧＰＳデータを用いた滞在区間情報の場合は、ＷｉＦｉエリア名は「null」となる。
【００５９】
（滞在区間情報の補正処理）
次に、図５のステップＳ５７００における滞在区間情報の補正処理について説明する。
図７は、本実施形態に係る滞在区間情報の補正処理の流れを示すフローチャートである。
まず、滞在区間抽出部１２０は、滞在区間情報ＤＢ１４３から滞在区間情報を取得し、メモリ部１３（図３参照）に、滞在区間情報リスト（図２０参照）を生成する（ステップＳ５７１０）。
【００６０】
次に、ステップＳ５７２０において、滞在区間連結部１２２は、古い順に連続する滞在区間情報２つを読み込み、検出日時の間隔と滞在区間の重心間の距離とに基づき、２つの滞在区間情報を連結する処理（滞在区間情報の連結処理）を行う（後記する図８参照）。
【００６１】
そして、ステップＳ５７３０において、ＷｉＦｉ履歴処理部１２３は、ＷｉＦｉのアクセスポイント検知履歴（ＷｉＦｉデータ）を取得し、滞在区間情報の抽出処理を行う（後記する図９参照）。
【００６２】
続いて、ステップＳ５７４０において、滞在区間削除部１２４は、滞在区間情報から滞在区間の長さ（時間）を算出し、その時間が所定値未満の場合は、その滞在区間情報を削除（滞在区間情報の削除処理）する（後記する図１０参照）。
【００６３】
次に、ステップＳ５７５０において、滞在地情報付加部１２５は、滞在区間情報とエリア情報とを結びつけ、滞在区間にエリア名を付加する滞在地情報の付加処理を行う（後記する図１１参照）
【００６４】
（滞在区間情報の連結処理）
次に、図７のステップＳ５７２０における滞在区間情報の連結処理について説明する。
図８は、本実施形態に係る滞在区間情報の連結処理の流れを示すフローチャートである。
まず、滞在区間連結部１２２は、図７のステップＳ５７１０で生成した滞在区間情報リストのうち、古い日時の順に滞在区間情報を２つずつ読み込む（ステップＳ５７２１）。そして、滞在区間連結部１２２は、読み込みができなければ（ステップＳ５７２２→Ｎｏ）、処理を終える。一方、読み込みができた場合には（ステップＳ５７２２→Ｙｅｓ）、次のステップＳ５７２３へ進む。
【００６５】
次に、滞在区間連結部１２２は、２つの滞在区間情報の検出日時の間の時間が所定値以下であるかを判定する（ステップＳ５７２３）。所定値以下でなければ（ステップＳ５７２３→Ｎｏ）、ステップＳ５７２１へ戻り処理を続ける。所定値以下であれば（ステップＳ５７２３→Ｙｅｓ）、ステップＳ５７２４へ進む。
【００６６】
そして、滞在区間連結部１２２は、読み込んだ２つの滞在区間情報それぞれのＧＰＳログから得た緯度および経度により示される滞在地（緯度および経度を重心として、半径で求まる円領域）に重なる領域があるか否かを判定する。具体的には、２つの滞在区間情報の重心間の距離より、半径の和の方が大きいかを判定する（ステップＳ５７２４）。半径の和の方が小さければ（ステップＳ５７２４→Ｎｏ）、ステップＳ５７２１へ戻り処理を続ける。一方、半径の和の方が大きければ（ステップＳ５７２４→Ｙｅｓ）、滞在区間に重なる領域があると判定し、次のステップＳ５７２５へ進む。
【００６７】
ステップＳ５７２５において、滞在区間連結部１２２は、ステップＳ５７２１で読み込んだ２つの滞在区間情報を連結し、滞在区間情報リストを上書きし、滞在区間情報ＤＢ１４３に記憶する。
具体的には、１つ前の滞在区間情報の終了日時を当該滞在区間情報の終了日時で上書きし、当該滞在区間情報をリストから削除し、滞在区間内の日時のＧＰＳデータを移動履歴情報から取得し、重心を計算し、全体を含むような半径を計算し、１つ前の滞在区間情報について滞在区間情報リストと滞在区間情報ＤＢ１４３とを上書きする。
【００６８】
（ＷｉＦｉ滞在区間情報抽出処理）
次に、図７のステップＳ５７３０におけるＷｉＦｉ滞在区間情報抽出処理について説明する。
図９は、本実施形態に係るＷｉＦｉ滞在区間情報抽出処理の流れを示すフローチャートである。
まず、ＷｉＦｉ履歴処理部１２３は、移動履歴情報ＤＢ１４１からＷｉＦｉのアクセスポイント検知履歴（図１２，１３参照）を取得する（ステップＳ５７３１）。
【００６９】
次に、ＷｉＦｉ履歴処理部１２３は、アクセスポイント検知履歴を取得できたか否かを判定し（ステップＳ５７３２）、アクセスポイント検知履歴が取得できなければ（ステップＳ５７３２→Ｎｏ）、処理を終える。一方、取得できた場合には（ステップＳ５７３２→Ｙｅｓ）、ステップＳ５７３３へ進む。なお、このとき、同じ検出日時のものは、強度（電波強度）が最大のものを取得する。
【００７０】
続いて、ステップＳ５７３３において、ＷｉＦｉ履歴処理部１２３は、同じアクセスポイント情報（ＭＡＣアドレス）が、所定時間以上連続する区間を滞在区間として抽出する。ここで異なるＭＡＣアドレスでも、同じＷｉＦｉエリア名を有するアクセスポイント情報は、同じ滞在区間として抽出する。
なお、このアクセスポイント検知履歴のデータをもとに生成された滞在区間情報を、請求項において第２の滞在区間情報という。
【００７１】
そして、ＷｉＦｉ履歴処理部１２３は、抽出した滞在区間を滞在区間情報リストに登録し（ステップＳ５７３４）、同じく抽出した滞在区間を滞在区間情報ＤＢ１４３に記憶する（ステップＳ５７３５）。
【００７２】
このようにすることで、例えば、ユーザが屋内や地下などに移動し、ＧＰＳログから滞在区間情報（第１の滞在区間情報）を生成できなかった時間においても、アクセスポイント検知履歴から滞在区間情報（第２の滞在区間情報）を生成し、追加して滞在区間情報を生成することができる。
【００７３】
（滞在区間情報の削除処理）
次に、図７のステップＳ５７４０における滞在区間情報の削除処理について説明する。この滞在区間情報の削除処理は、滞在区間情報として抽出された情報であっても、滞在時間が短時間であり、滞在情報として記録しておく必要がないと判定される滞在区間情報を滞在区間情報ＤＢ１４３から削除するものである。
【００７４】
図１０は、本実施形態に係る滞在区間情報の削除処理の流れを示すフローチャートである。
まず、滞在区間削除部１２４は、滞在区間情報リストの先頭から順に滞在区間情報を読み込む（ステップＳ５７４１）。そして、読み込んだ滞在区間情報があるか否かを判定する（ステップＳ５７４２）。すべての滞在区間情報を処理して、読み込む滞在区間情報がなくなれば（ステップＳ５７４２→Ｎｏ）、処理を終える。一方、読み込んだ滞在区間情報がある場合には（ステップＳ５７４２→Ｙｅｓ）、次のステップＳ５７４３へ進む。
【００７５】
ステップＳ５７４３において、滞在区間削除部１２４は、滞在区間情報における滞在区間の長さ（時間）を算出し、その長さが所定値未満か否かを判断する（ステップＳ５７４３）。そして、滞在区間の長さが所定値未満でない場合には（ステップＳ５７４３→Ｎｏ）、ステップＳ５７４１へ戻り、処理を続ける。一方、滞在区間の長さが所定値未満の場合は（ステップＳ５７４３→Ｙｅｓ）、その滞在区間情報をリストから削除し、滞在区間情報ＤＢ１４３からも削除する（ステップＳ５７４４）。
【００７６】
（滞在値情報の付加処理）
次に、図７のステップＳ５７５０における滞在地情報の付加処理について説明する。
図１１は、本実施形態に係る滞在地情報の付加処理の流れを示すフローチャートである。
まず、滞在地情報付加部１２５は、滞在区間情報リストの先頭から順に滞在区間情報を読み込む（ステップＳ５７５１）。そして、読み込んだ滞在区間情報があるか否かを判定する（ステップＳ５７５２）。すべての滞在区間情報を処理して、読み込む滞在区間情報がなくなれば（ステップＳ５７５２→Ｎｏ）、処理を終える。一方、読み込んだ滞在区間情報がある場合には（ステップＳ５７５２→Ｙｅｓ）、次のステップＳ５７５３へ進む。
【００７７】
次に、滞在地情報付加部１２５は、滞在区間情報の種別がＧＰＳか否かを判定する（ステップＳ５７５３）。種別がＧＰＳの場合は（ステップＳ５７５３→Ｙｅｓ）、ステップＳ５７５４へ進み、種別がＧＰＳでなくＷｉＦｉである場合は（ステップＳ５７５３→Ｎｏ）、ステップＳ５７５７へ進む。
【００７８】
そして、滞在地情報付加部１２５は、滞在区間がＧＰＳログから抽出されたものの場合（ステップＳ５７５３→Ｙｅｓ）、以下の３つの方法により、滞在区間のエリア名を検索する。
まず、滞在地情報付加部１２５は、記憶部１４内のエリア情報ＤＢ１４４を用いて、緯度、経度、半径をキーに検索を行い、エリアが重なるレコードがあれば、その重心の最も近いレコードを取得し、その情報のエリア情報ＩＤを取得する（ステップＳ５７５４）。
【００７９】
次に、滞在地情報付加部１２５は、緯度、経度、探索半径に関する情報を、ランドマーク検索装置３００に送信し、中心地に近い順に探索半径までのランドマーク情報の検索結果を取得する。そして、新規に取得したランドマーク名は、エリア情報ＤＢ１４４に登録し、エリア情報ＩＤを取得する（ステップＳ５７５５）。
【００８０】
続いて、滞在地情報付加部１２５は、住所と緯度および経度とのマッピング情報が記憶された住所ＤＢ１４５を用いて、滞在区間のエリア名を検索する。そして、新規に取得した住所は、エリア情報ＤＢ１４４に登録し、エリア情報ＩＤを取得する（ステップＳ５７５６）。
【００８１】
一方、ステップＳ５７５３において、滞在区間情報がＷｉＦｉのアクセスポイント検知履歴から生成されたもので、種別がＧＰＳではないと判定された場合には（ステップＳ５７５３→Ｎｏ）、ＷｉＦｉエリア名をキーにエリア情報ＤＢ１４４を検索する。そして、ヒットするレコードがなければ、そのエリア情報をエリア情報ＤＢ１４４に登録し、エリア情報ＩＤを取得する（ステップＳ５７５７）。
【００８２】
そして、滞在地情報付加部１２５は、ステップＳ５７５４〜Ｓ５７５７において、取得したエリア情報ＩＤと、滞在区間情報の滞在区間ＩＤとを関連付け、エリア−滞在区間ＤＢ１４６に登録する（ステップＳ５７５８）。
【００８３】
（データ処理の詳細説明）
次に、具体的に滞在地コンテキスト抽出装置１００に、位置情報収集装置２００から移動履歴情報が入力されたものとして、各処理をより詳細に説明する。
【００８４】
まず、滞在地コンテキスト抽出装置１００が行う処理の前提として、記憶部１４に記憶されている情報は、直前区間情報が図１４、滞在区間情報が図１５、エリア情報が図１６、そしてユーザ情報が図１７のように登録されている状態とする。
そして、位置情報取得部１１０の処理により、ユーザ情報（図１７）を用いてユーザ認証が行われ（図４のステップＳ２０００）、記憶部１４内の移動履歴情報ＤＢ１４１内には、ステップＳ４０００の処理により、図１２，図１３に示す移動履歴情報が登録されているものとして説明する。なお、図１２および図１３は、ステップＳ４０００により、一度に処理され登録されたものであり、そのデータの一部を図１２，図１３として示している。
【００８５】
（滞在区間情報の抽出処理）
滞在区間抽出部１２０は、ユーザＩＤをキーとして、直前区間情報を直前区間情報ＤＢ１４２から取得する（図５のステップＳ５１００）。その結果として、以下の直前区間情報を取得する。
【００８６】
【表１】
2010277190.tif 000003
【００８７】
そして、滞在区間抽出部１２０は、移動履歴情報ＤＢ１４１からＧＰＳログを抽出し（図５のステップＳ５２００）、データの古い順に、所定の時間間隔毎のＧＰＳログを取得する（図５のステップＳ５３００）。本実施形態では、所定の時間間隔を２分とし、以下のような、区間毎にＧＰＳログのデータ群（ログ情報群）を取得する。
【００８８】
【表２】
2010277190.tif 000004
【００８９】
（滞在区間判定処理）
次に、滞在区間判定部１２１は、滞在区間判定処理（図５のステップＳ５５００）を行う。具体的には、滞在区間判定部１２１は、抽出したＧＰＳログの緯度の相加平均値、経度の相加平均値、検出日時の相加平均値を計算する（図６のステップＳ５５１０）。そして以下のような結果を得る。
【００９０】
【表３】
2010277190.tif 000005
【００９１】
続いて、滞在区間判定部１２１は、１つ前に取得した区間の情報である直前区間情報の緯度の相加平均値、経度の相加平均値、検出日時の相加平均値と、上記した（表３）の結果を用いて、距離（ｋｍ）を計算する。また、距離と時間差から速度を求める（図６のステップＳ５５２０）。そして、以下の結果を得る。
【００９２】
【表４】
2010277190.tif 000006
【００９３】
そして、滞在区間判定部１２１は、計算した距離が所定値未満であり、かつ速度が所定値未満であるか否かを判断する（図６のステップＳ５５３０）。本実施形態では、距離の所定値を「０．１ｋｍ」、速度の所定値を「２ｋｍ／ｈ」とする。
【００９４】
従って、滞在区間判定部１２１は、
（１）速度が２ｋｍ／ｈ未満、かつ距離が０．１ｋｍ未満、直前区間情報の滞在区間フラグが「false」の場合（図６のステップＳ５５５０→Ｙｅｓ）、滞在区間を開始するため、図６のステップＳ５５６０へ進む。
（２）速度が２ｋｍ／ｈ未満、かつ距離が０．１ｋｍ未満、直前区間情報の滞在区間フラグが「true」の場合（図６のステップＳ５５５０→Ｎｏ）、滞在区間を継続するため、図６のステップＳ５５８０へ進む。
（３）上記以外の場合は、滞在区間の抽出処理終了のため、図６のステップＳ５５４０へ進む。
【００９５】
よって、（表４）の各データについて、滞在区間判定部１２１は、以下のように処理する。
(a)〔2009-4-12 04:56:45 UTC 〜 2009-4-12 04:58:45 UTCの区間〕は、滞在区間の抽出処理終了のため、図６のステップＳ５５４０へ進む（滞在区間の抽出処理終了）。
(b)〔2009-4-12 04:58:45 UTC 〜 2009-4-12 05:00:45 UTCの区間〕は、滞在区間の抽出処理終了のため、図６のステップＳ５５４０へ進む（滞在区間の抽出処理終了）。
(c)〔2009-4-12 05:00:45 UTC 〜 2009-4-12 05:02:45 UTCの区間〕は、滞在区間を開始するため、図６のステップＳ５５６０へ進む（滞在区間開始処理）。
(d)〔2009-4-12 05:02:45 UTC 〜 2009-4-12 05:04:45 UTCの区間〕は、滞在期間を継続するため、図６のステップＳ５５８０へ進む（滞在区間継続処理）。
【００９６】
（滞在区間の抽出処理了）
図６のステップＳ５５４０の滞在区間の抽出処理終了において、滞在区間判定部１２１は、（表３）で計算した、検出日時の相加平均、緯度の相加平均、経度の相加平均を、直前区間情報に上書きし、滞在区間フラグを「false」にする。そして、図５のステップＳ５３００の（表２）で抽出したＧＰＳログの最古検出日時を直前区間情報の開始日時に、また、最新検出日時を直前区間情報の終了日時に設定し、さらに、滞在区間ＩＤを「null」に設定して、直前区間情報ＤＢ１４２を上書き保存する。
【００９７】
上記(a)のデータの結果として、直前区間情報ＤＢ１４２を以下の直前区間情報で上書きする。
【００９８】
【表５】
2010277190.tif 000007
【００９９】
上記（ｂ）のデータの結果として、直前区間情報ＤＢ１４２を以下の直前区間情報で上書きする。
【０１００】
【表６】
2010277190.tif 000008
【０１０１】
（滞在区間開始処理）
図６のステップＳ５５６０において、滞在区間判定部１２１は、直前区間情報の開始日時を、滞在区間情報の開始日時として登録し、また、図５のステップＳ５３００の結果である（表２）で抽出したデータの最新日時を、滞在区間情報の終了日時として登録する。さらに、滞在区間内の日時のＧＰＳデータを移動履歴情報ＤＢ１４１から取得し、重心を計算し、全体を包むような半径を計算し、当該滞在区間情報の緯度、経度、半径として滞在区間情報ＤＢ１４３に登録する。
【０１０２】
また、滞在区間判定部１２１は、（表３）で計算した、検出日時の相加平均、緯度の相加平均、経度の相加平均を、直前区間情報に上書きし、滞在区間フラグを「true」にする。そして、図５のステップＳ５３００の（表２）で抽出したＧＰＳログの最古検出日時を直前区間情報の開始日時に、また、最新検出日時を直前区間情報の終了日時に設定し、さらに、滞在区間ＩＤを設定して、直前区間情報ＤＢ１４２を上書き保存する。
【０１０３】
上記の滞在区間開始処理の結果として、上記(c)の〔2009-4-12 05:00:45 UTC 〜 2009-4-12 05:02:45 UTCの区間〕において、滞在区間ＩＤ「１００」を得て、滞在区間情報を（表７）のように登録する。また、直前区間情報を（表８）のように上書き保存する。
【０１０４】
【表７】
2010277190.tif 000009
【０１０５】
【表８】
2010277190.tif 000010
【０１０６】
（滞在区間継続処理）
図６のステップＳ５５８０において、滞在区間判定部１２１は、直前区間情報の滞在区間ＩＤをキーに滞在区間情報ＤＢ１４３の滞在区間情報の終了日を、図５のステップＳ５３００の結果である（表２）で抽出したＧＰＳログの最新日時で上書きする。さらに、滞在区間内の日時のＧＰＳデータを移動履歴情報ＤＢ１４１から取得し、重心を計算し、全体を包むような半径を計算し、当該滞在区間情報の緯度、経度、半径として滞在区間情報ＤＢ１４３に登録する。
【０１０７】
また、滞在区間判定部１２１は、（表３）で計算した、検出日時の相加平均、緯度の相加平均、経度の相加平均を、直前区間情報に上書きし、滞在区間フラグを「true」にする。そして、図５のステップＳ５３００の（表２）で抽出したＧＰＳログの最古検出日時を直前区間情報の開始日時に、また、（表２）で抽出したＧＰＳログの最新検出日時を直前区間情報の終了日時に設定し、さらに、滞在区間ＩＤをそのままに設定して、直前区間情報ＤＢ１４２を上書き保存する。
【０１０８】
上記の滞在区間継続処理の結果として、上記(d)の〔2009-4-12 05:02:45 UTC 〜 2009-4-12 05:04:45 UTCの区間〕において、滞在区間ＩＤ「１００」をそのままに、以下の滞在区間情報を（表９）のように登録する。また、直前区間情報を（表１０）のように上書き保存する。
【０１０９】
【表９】
2010277190.tif 000011
【０１１０】
【表１０】
2010277190.tif 000012
【０１１１】
（滞在区間情報の補正処理）
次に、図７に示す滞在区間情報の補正処理について、詳細に説明する。
まず、滞在地コンテキスト抽出装置１００が行う滞在区間情報の補正処理の前提として、記憶部１４に、図１８に示す滞在区間情報と、図１９に示す直前区間情報が、図５のステップＳ５２００の移動履歴情報ＤＢ１４１からのＧＰＳログの抽出により、登録されている状態とする。
【０１１２】
図７のステップＳ５７１０において、ユーザＩＤ「１」の情報について、記憶部１４に記憶された図１８に示す滞在区間情報と、その直前１件の滞在区間情報とを滞在区間情報ＤＢ１４３から取得し、図２０に示す滞在区間情報リストを生成する。ただし、本実施形態においては、直前１件の滞在区間情報は０件である。
【０１１３】
（滞在区間情報の連結処理）
次に、滞在区間連結部１２２は、図７のステップＳ５７２０の滞在区間情報連結処理を行う。
まず、図７のステップＳ５７１０で取得した滞在区間情報リスト（図２０参照）において、古い日時から順に２つ滞在区間情報を読み込む（図８のステップＳ５７２１）。
【０１１４】
そして、滞在区間連結部１２２は、取得した２つの滞在区間情報の滞在区間の検出日時の間の時間が所定値以下であるかを判定する（図８のステップＳ５７２３）。本実施形態では、所定を２分とすると、滞在区間ＩＤ「１００」と滞在区間ＩＤ「１０１」の間は２０分あり、所定値より大きいため、何もしない。また、滞在区間ＩＤ「１０１」と滞在区間ＩＤ「１０２」の間は、２１分であり、所定値より大きいため、何もしない。
【０１１５】
（ＷｉＦｉ滞在区間情報抽出処理）
次に、ＷｉＦｉ履歴処理部１２３は、ＷｉＦｉのアクセス検知履歴からの滞在区間情報の抽出処理を行う（図７のステップＳ５７３０）。
【０１１６】
まず、ＷｉＦｉ履歴処理部１２３は、移動履歴情報ＤＢ１４１（図１２，図１３参照）からＷｉＦｉのアクセスポイント検知履歴を取得する（図９のステップＳ５７３１）。ここで、同じ検出日時のものは、強度が最大のものを取得する。
【０１１７】
次に、ＷｉＦｉ履歴処理部１２３は、取得したアクセスポイント検知履歴から、ＭＡＣアドレスを抽出する。そして、ＭＡＣアドレスとして、「aa:aa:aa:aa:aa:aa」，「bb:bb
:bb:bb:bb:bb」，「cc:cc:cc:cc:cc:cc:」，「dd:dd:dd:dd:dd:dd」，「ee:ee:ee:ee:ee:
ee」を得る。
【０１１８】
続いて、ＷｉＦｉ履歴処理部１２３は、記憶部１４に記憶されたエリア情報ＤＢ１４４（図１６参照）を用いて、エリア名を取得する。ヒットしなければ、ＷｉＦｉエリア名として、ＳＳＩＤを使用する。そして、結果として、ＷｉＦｉ履歴処理部１２３は、以下リストを得る。
【０１１９】
【表１１】
2010277190.tif 000013
【０１２０】
そして、ＷｉＦｉ履歴処理部１２３は、同じアクセスポイント情報（ＭＡＣアドレス）が所定時間以上連続する区間を滞在区間として抽出する（図９のステップＳ５７３３）。そして、以下の結果を得る。なお、異なるＭＡＣアドレスでも、同じＷｉＦｉエリア名を持つアクセスポイント情報は、同じ滞在区間として抽出する。
【０１２１】
【表１２】
2010277190.tif 000014
【０１２２】
続いて、ＷｉＦｉ履歴処理部１２３は、上記のように抽出した滞在区間を滞在区間情報リストに登録し（図９のステップＳ５７３４）、さらに、滞在区間情報ＤＢ１４３に記憶する（図９のステップＳ５７３５）。図２１はＷｉＦｉ履歴処理部１２３が抽出した滞在区間を滞在区間リストに登録した結果を示している。
【０１２３】
（滞在区間情報の削除処理）
次に滞在区間削除部１２４は、滞在区間の長さが短い滞在区間情報を削除する処理を行う（図７のステップＳ５７４０）。
【０１２４】
まず、滞在区間削除部１２４は、図２１に示す滞在区間情報リストの先頭から順に、滞在区間情報を読み込む（図１０のステップＳ５７４１）。
そして、滞在区間削除部１２４は、滞在区間の長さ（終了日時 − 開始日時）を算出し、その長さが所定値（本実施形態では５分とする）未満の場合は（図１０のステップＳ５７４３→Ｙｅｓ）、その滞在区間情報を滞在区間情報リストおよび滞在区間情報ＤＢ１４３から削除する（図１０のステップＳ５７４４）。
【０１２５】
図２１の滞在区間情報リストにおいて、滞在区間ＩＤ「１０２」は、滞在区間の長さが３分３０秒であり、所定時間の５分未満であるため、滞在区間情報リストおよび滞在区間情報ＤＢ１４３から削除する。
また、滞在区間ＩＤ「１０３」も、滞在区間の長さが４分３０秒であり、所定時間の５分未満であるため削除する。
この結果として、滞在区間情報リストは、図２２に示すようになる。
【０１２６】
（滞在地情報の付加処理）
次に、滞在地情報付加部１２５は、滞在区間のエリア名を取得し、滞在区間情報とエリア情報とを関連付ける滞在地情報の付加処理を行う（図７のステップＳ５７５０）。
【０１２７】
まず、滞在地情報付加部１２５は、滞在区間情報リストの先頭から順に、滞在区間情報を読み込む（図１１のステップＳ５７５１）。続いて、滞在地情報付加部１２５は、滞在区間情報の種別がＧＰＳか否かを判定する（図１１のステップＳ５７５３）。
【０１２８】
そして、滞在地情報はＧＰＳデータである場合は（図１１のステップＳ５７５３→Ｙｅｓ）、滞在地情報付加部１２５は、まず、緯度、経度、半径をキーにエリア情報ＤＢ１４４を検索する（図１１のステップＳ５７５４）。ここでは、滞在区間ＩＤ「１００」，「１０１」については、エリアが重なるレコードがないので、何もしない。
【０１２９】
次に、滞在地情報付加部１２５は、通信ネットワーク４００を介して接続されたランドマーク検索装置３００を利用し、滞在区間のエリア名の検索を行う（図１１のステップＳ５７５５）。
そして、滞在区間ＩＤ「１００」について、以下のデータを取得する。
【０１３０】
【表１３】
2010277190.tif 000015
【０１３１】
このデータを、エリア情報ＤＢ１４４に登録し、取得したエリア情報ＩＤ「３」をエリア−滞在区間ＤＢ１４６に登録する（図１１のステップＳ５７５８）。
また、滞在区間ＩＤ「１０１」について、以下のデータを取得する。
【０１３２】
【表１４】
2010277190.tif 000016
【０１３３】
このデータを、エリア情報ＤＢ１４４に登録し、取得したエリア情報ＩＤ「４」をエリア−滞在区間ＤＢ１４６に登録する（図１１のステップＳ５７５８）。
【０１３４】
次に、滞在地情報付加部１２５は、住所と緯度および経度とのマッピング情報が記憶された住所ＤＢ１４５を用いて、滞在区間のエリア名の検索を行う（図７のステップＳ５７５６）。
【０１３５】
一方、滞在区間がＷｉＦｉのアクセスポイント検知履歴から生成された緯度および経度が「null」値である滞在区間ＩＤ「１０４」については、エリア情報ＤＢ１４４からエリア名を検索する（図１１のステップＳ５７５７）。その結果、滞在区間ＩＤ「１０４」についてエリア情報ＩＤ「２」を得る。そして、取得したエリア情報ＩＤ「２」を、エリア−滞在区間ＤＢ１４６に登録する（図１１のステップＳ５７５８）。
【０１３６】
この結果として、図２３に示す滞在区間情報、図２４に示すエリア情報、そして図２５に示すエリア−滞在区間情報を得ることができる。
【０１３７】
本実施形態に係る滞在地コンテキスト抽出装置、滞在地コンテキスト抽出方法およびプログラムによれば、身近なデバイスを用いることを志向したため、ＧＰＳ情報はＧＰＳ機能付き携帯電話またはＧＰＳロガーを用意すればよく、ＷｉＦｉのアクセスポイント履歴情報はゲーム機、ＰＤＡ、ノートＰＣなどを用意すればよく、ユーザが容易に本発明を実施する環境を整えることが可能である。
また、滞在区間は、収集したＧＰＳデータやＷｉＦｉのアクセスポイント情報から自動的に抽出するため、ユーザの手を煩わせることなく、漏れなく抽出することが可能である。
さらに、屋外を得意とするＧＰＳと、屋内を得意とするＷｉＦｉを組み合わせた処理が可能なアルゴリズムにより、屋内屋外を問わず、逐次的に滞在区間を抽出していくことが可能である。
【符号の説明】
【０１３８】
１      滞在地コンテキスト抽出システム
１０    制御部
１１    通信部
１２    入出力部
１３    メモリ部
１４    記憶部
１００  滞在地コンテキスト抽出装置
１１０  位置情報取得部
１２０  滞在区間抽出部
１２１  滞在区間判定部
１２２  滞在区間連結部
１２３  ＷｉＦｉ履歴処理部
１２４  滞在区間削除部
１２５  滞在地情報付加部
１４１  移動履歴情報ＤＢ
１４２  直前区間情報ＤＢ
１４３  滞在区間情報ＤＢ
１４４  エリア情報ＤＢ
１４５  住所ＤＢ
１４６  エリア−滞在区間ＤＢ
１４７  ユーザ情報ＤＢ
２００  位置情報収集装置
２０１  ＧＰＳロガー
３００  ランドマーク検索装置
４００  通信ネットワーク
【図１】
2010277190.tif 000017
【図２】
2010277190.tif 000018
【図３】
2010277190.tif 000019
【図４】
2010277190.tif 000020
【図５】
2010277190.tif 000021
【図６】
2010277190.tif 000022
【図７】
2010277190.tif 000023
【図８】
2010277190.tif 000024
【図９】
2010277190.tif 000025
【図１０】
2010277190.tif 000026
【図１１】
2010277190.tif 000027
【図１２】
2010277190.tif 000028
【図１３】
2010277190.tif 000029
【図１４】
2010277190.tif 000030
【図１５】
2010277190.tif 000031
【図１６】
2010277190.tif 000032
【図１７】
2010277190.tif 000033
【図１８】
2010277190.tif 000034
【図１９】
2010277190.tif 000035
【図２０】
2010277190.tif 000036
【図２１】
2010277190.tif 000037
【図２２】
2010277190.tif 000038
【図２３】
2010277190.tif 000039
【図２４】
2010277190.tif 000040
【図２５】
2010277190.tif 000041