(57)【要約】【課題】ユーザの位置を適切に推定する。【解決手段】本願に係る情報処理装置は、取得部と、推定部とを有する。取得部は、位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、対象ユーザ及び他のユーザの近接を示す近接情報とを取得する。推定部は、取得部により取得された位置情報と近接情報とに基づいて、対象ユーザの位置を推定する。【選択図】図３
2020046369.tif 000002
【特許請求の範囲】
【請求項１】
位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、前記対象ユーザ及び前記他のユーザの近接を示す近接情報とを取得する取得部と、
前記取得部により取得された前記位置情報と前記近接情報とに基づいて、前記対象ユーザの位置を推定する推定部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記取得部は、
第１日時における前記他のユーザの位置を示す前記位置情報を取得し、
前記推定部は、
前記第１日時における前記他のユーザの位置に基づいて、前記第１日時とは異なる第２日時における前記対象ユーザの位置を推定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記取得部は、
前記第２日時における前記対象ユーザ及び前記他のユーザの近接を示す前記近接情報を取得し、
前記推定部は、
前記第１日時における前記他のユーザの位置に基づいて、前記対象ユーザ及び前記他のユーザが近接した前記第２日時における前記対象ユーザの位置を推定する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第２日時において前記対象ユーザが複数ユーザと近接していた場合、前記複数ユーザのうち、前記第２日時との時間差が最も小さい日時において位置が検知されたユーザを前記他のユーザとして、決定する決定部、
をさらに備え、
前記取得部は、
前記決定部により決定された前記他のユーザの位置を示す前記位置情報と、前記対象ユーザ及び前記他のユーザの近接を示す前記近接情報とを取得する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記取得部は、
前記他のユーザの移動速度に関する速度情報を取得し、
前記推定部は、
前記速度情報に基づいて、前記対象ユーザの位置を推定する
ことを特徴とする請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記推定部は、
前記位置情報と前記速度情報とに基づいて、前記位置情報が示す位置から、前記対象ユーザ及び前記他のユーザが近接した位置までの距離を推定し、推定した前記距離を用いて前記対象ユーザの位置を推定する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記取得部は、
前記対象ユーザ及び前記他のユーザ以外の第３ユーザの位置を示す第３位置情報と、前記対象ユーザ及び前記第３ユーザの近接を示す第３近接情報とを取得し、
前記推定部は、
前記位置情報、前記近接情報、前記第３位置情報、及び前記第３近接情報に基づいて、前記対象ユーザの位置を推定する
ことを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記取得部は、
第３日時における前記第３ユーザの位置を示す前記位置情報を取得し、
前記推定部は、
前記第３日時における前記第３ユーザの位置に基づいて、前記第３日時とは異なる第４日時における前記対象ユーザの位置を推定する
ことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記取得部は、
前記第４日時における前記対象ユーザ及び前記第３ユーザの近接を示す前記第３近接情報を取得し、
前記推定部は、
前記第３日時における前記第３ユーザの位置に基づいて、前記対象ユーザ及び前記第３ユーザが近接した前記第４日時における前記対象ユーザの位置を推定する
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記取得部は、
前記第３ユーザの移動速度に関する第３速度情報を取得し、
前記推定部は、
前記第３速度情報に基づいて、前記対象ユーザの位置を推定する
ことを特徴とする請求項７〜９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記推定部は、
前記第３位置情報と前記第３速度情報とに基づいて、前記第３位置情報が示す位置から、前記対象ユーザ及び前記第３ユーザが近接した位置までの距離である第３距離を推定し、推定した前記第３距離を用いて前記対象ユーザの位置を推定する
ことを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記取得部は、
前記対象ユーザの移動速度に関する対象速度情報を取得し、
前記推定部は、
前記対象速度情報に基づいて、前記対象ユーザの位置を推定する
ことを特徴とする請求項１〜１１のいずれか１項に記載の情報処理装置。
【請求項１３】
前記取得部は、
所定の日時における前記対象ユーザの位置を示す対象位置情報を取得し、
前記推定部は、
前記対象位置情報に基づいて、前記所定の日時とは異なる日時における前記対象ユーザの位置を推定する
ことを特徴とする請求項１〜１２のいずれか１項に記載の情報処理装置。
【請求項１４】
前記推定部により推定された前記対象ユーザの位置に関する情報を用いたサービスを提供する提供部、
をさらに備えることを特徴とする請求項１〜１３のいずれか１項に記載の情報処理装置。
【請求項１５】
コンピュータが実行する情報処理方法であって、
位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、前記対象ユーザ及び前記他のユーザの近接を示す近接情報とを取得する取得工程と、
前記取得工程により取得された前記位置情報と前記近接情報とに基づいて、前記対象ユーザの位置を推定する推定工程と、
を含むことを特徴とする情報処理方法。
【請求項１６】
位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、前記対象ユーザ及び前記他のユーザの近接を示す近接情報とを取得する取得手順と、
前記取得手順により取得された前記位置情報と前記近接情報とに基づいて、前記対象ユーザの位置を推定する推定手順と、
をコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
従来、一のユーザの情報として、他のユーザの情報を利用する技術が提供されている。例えば、ユーザが非スマートスペース又は異なるスマートスペースにおいてアプリケーションにアクセスする場合に、ユーザにより不足する環境コンテキストも取得する技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１７−５０３３７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、ユーザの位置を適切に推定することができるとは限らない。例えば、上記の従来技術では、情報が不足した場合に他のユーザの情報を取得しているに過ぎず、ユーザの位置を適切に推定することが難しい場合がある。例えば、ある時点における他のユーザについて情報が取得されていない場合等においては、その時点のユーザの位置を適切に推定することが難しい。
【０００５】
本願は、上記に鑑みてなされたものであって、ユーザの位置を適切に推定する情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本願に係る情報処理装置は、位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、前記対象ユーザ及び前記他のユーザの近接を示す近接情報とを取得する取得部と、前記取得部により取得された前記位置情報と前記近接情報とに基づいて、前記対象ユーザの位置を推定する推定部と、を備えることを特徴とする。
【発明の効果】
【０００７】
実施形態の一態様によれば、ユーザの位置を適切に推定することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態に係る情報処理の一例を示す図である。
【図２】図２は、実施形態に係る情報処理システムの構成例を示す図である。
【図３】図３は、実施形態に係る情報処理装置の構成例を示す図である。
【図４】図４は、実施形態に係るユーザ情報記憶部の一例を示す図である。
【図５】図５は、実施形態に係る行動情報記憶部の一例を示す図である。
【図６】図６は、実施形態に係る近接情報記憶部の一例を示す図である。
【図７】図７は、実施形態に係る推定情報記憶部の一例を示す図である。
【図８】図８は、実施形態に係る情報処理の一例を示すフローチャートである。
【図９】図９は、実施形態に係る情報処理の他の一例を示す図である。
【図１０】図１０は、実施形態に係る情報処理の他の一例を示す図である。
【図１１】図１１は、実施形態に係る情報処理の他の一例を示す図である。
【図１２】図１２は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【０００９】
以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態（以下、「実施形態」と呼ぶ）について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【００１０】
（実施形態）
〔１．情報処理〕
図１を用いて、実施形態に係る情報処理の一例について説明する。図１は、実施形態に係る情報処理の一例を示す図である。図１の例では、位置の推定対象となるユーザ（以下「対象ユーザ」ともいう）がユーザＵ２である場合を示す。この場合、ユーザＵ２以外のユーザＵ１やユーザＵ３等が、対象ユーザ以外の他のユーザや第３ユーザ等の対象ユーザの位置の推定に情報が利用されるユーザ（以下「推定用ユーザ」ともいう）になる。このように、「ユーザＵ＊（＊は任意の文字列）」と記載した場合、そのユーザはユーザＩＤ「Ｕ＊」により識別されるユーザであることを示す。例えば、「ユーザＵ１」と記載した場合、そのユーザはユーザＩＤ「Ｕ１」により識別されるユーザである。
【００１１】
図１の例では、情報処理装置１００は、推定用ユーザとしてのユーザＵ１やユーザＵ３の情報を用いて、対象ユーザであるユーザＵ２の位置を推定する場合を示す。具体的には、情報処理装置１００は、推定用ユーザに含まれる他のユーザとしてのユーザＵ１の位置情報や第３ユーザとしてのユーザＵ３の位置情報を用いて、対象ユーザであるユーザＵ２の位置を推定する。この場合、情報処理装置１００は、対象ユーザであるユーザＵ２と、ユーザＵ１やユーザＵ３との近接を示す情報（近接情報）を用いて、ユーザＵ２の位置を推定する。以下では、情報処理装置１００が推定した位置を推定位置ともいう。
【００１２】
図１の例では、ユーザＵ２を対象ユーザとして説明するため、ユーザＵ１やユーザＵ３等が推定用ユーザになる。例えば、ユーザＵ１を対象ユーザとした場合、ユーザＵ２やユーザＵ３等が推定用ユーザになり得る。すなわち、ここでいう対象ユーザ及び推定用ユーザとは、いずれのユーザを対象ユーザとして捉えるかの相違であり、一のユーザが対象ユーザ及び推定用ユーザになる。すなわち、対象ユーザ及び推定用ユーザは、相対的な概念であって、一のユーザが対象ユーザとなる場合に、一のユーザ以外のユーザが推定用ユーザになり得え、一のユーザとは異なる他のユーザが対象ユーザとなる場合に、一のユーザが推定用ユーザになり得る。
【００１３】
〔情報処理システムの構成〕
まず、図１の説明に先だって、図２を用いて情報処理システム１の構成について説明する。図２は、実施形態に係る情報処理システムの構成例を示す図である。図２に示すように、情報処理システム１は、端末装置１０−１と、端末装置１０−２と、端末装置１０−３と、情報処理装置１００とが含まれる。端末装置１０−１と、端末装置１０−２と、端末装置１０−３と、情報処理装置１００とは所定のネットワークＮを介して、有線または無線により通信可能に接続される。
【００１４】
以下では、端末装置１０−１〜１０−３について、特に区別なく説明する場合には、端末装置１０と記載する。なお、図２に示した情報処理システム１では、３台の端末装置１０−１〜１０−３を図示するが、情報処理システム１には、４台以上の端末装置１０が含まれてもよい。例えば、情報処理システム１には、各ユーザに対応する端末装置１０が含まれ、ユーザが１００万人である場合、１００万台の端末装置１０が含まれてもよい。また、図２に示した情報処理システム１には、複数台の情報処理装置１００が含まれてもよい。
【００１５】
端末装置１０は、ユーザによって利用される情報処理装置である。端末装置１０は、例えば、スマートフォンや、タブレット型端末や、ノート型ＰＣ（Personal  Computer）や、デスクトップＰＣや、携帯電話機や、ＰＤＡ（Personal  Digital  Assistant）等により実現される。図１に示す例においては、端末装置１０がユーザが利用するスマートフォンである場合を示す。なお、以下では、端末装置１０をユーザと表記する場合がある。すなわち、以下では、ユーザを端末装置１０と読み替えることもできる。
【００１６】
例えば、端末装置１０−１は、図１に示すユーザＵ１が利用する端末装置１０に対応し、端末装置１０−２は、図１に示すユーザＵ２が利用する端末装置１０に対応し、端末装置１０−３は、図１に示すユーザＵ３が利用する端末装置１０に対応する。また、以下では、ユーザが利用する端末装置１０とそのユーザとは互いに読み替えられてもよい。例えば、「ユーザＵ１」と記載した場合、ユーザＵ１が利用する端末装置１０である「端末装置１０−１」と読み替えられてもよい。「端末装置１０−１」と記載した場合、端末装置１０−１を利用するユーザである「ユーザＵ１」と読み替えられてもよい。以下では、説明を簡単にするために、ユーザＩＤによりユーザが利用する端末装置１０が特定可能である場合を例に説明する。
【００１７】
また、端末装置１０は、ＧＰＳ（Global  Positioning  System）センサ等の各種センサにより、各種センサ情報を検知してもよい。また、端末装置１０は、通信を行っている基地局の位置情報や、Ｗｉ−Ｆｉ（登録商標）（Wireless  Fidelity）の電波を用いてユーザの位置情報を推定し、取得してもよい。なお、端末装置１０は、上記に限らず、種々のセンサを有してもよい。例えば、端末装置１０は、加速度センサ、ジャイロセンサ、温度センサ、湿度センサ、照度センサ、圧力センサ、近接センサ、ニオイや汗や心拍や脈拍や脳波等の生体情報を取得のためのセンサ等の種々のセンサを有してもよい。そして、端末装置１０は、各種センサにより検知された種々のセンサ情報を情報処理装置１００に送信してもよい。
【００１８】
例えば、端末装置１０は、加速度センサの機能を有し、ユーザの移動における加速度情報（センサ情報）を検知し、取得する。また、端末装置１０は、温度センサや気圧センサ等の種々の機能を有し、温度や気圧等のユーザの置かれている環境情報を検知し、取得可能であってもよい。また、端末装置１０は、心拍センサ等の種々の機能を有し、ユーザの生体情報を検知し、取得可能であってもよい。例えば、端末装置１０を利用するユーザは、端末装置１０と通信可能なウェアラブルデバイスを身に付けることにより、端末装置１０によりユーザ自身の位置情報や生体情報等の種々のコンテキスト情報を取得可能としてもよい。例えば、端末装置１０を利用するユーザは、端末装置１０と通信可能なリストバンド型のウェアラブルデバイスを身に付けることにより、ユーザ自身の心拍（脈拍）に関する情報を端末装置１０が取得可能としてもよい。
【００１９】
ここでいうコンテキストとは、ユーザが置かれた環境等を含む概念であってもよい。例えば、端末装置１０は、ユーザの位置情報を収集し、情報処理装置１００へ送信する。例えば、端末装置１０は、端末装置１０上におけるユーザの各種の行動情報を収集し、情報処理装置１００へ送信する。例えば、端末装置１０は、端末装置１０上においてユーザが閲覧したコンテンツに関する情報を収集し、情報処理装置１００へ送信してもよい。
【００２０】
例えば、ここでいうコンテキストは、ユーザやそのユーザが利用する端末装置１０の状況やユーザや端末装置１０の環境（背景）に基づくユーザの種々の状況を含む概念であってもよい。また、コンテキスト情報には、ユーザの現在位置、現在時刻、ユーザが置かれた物理環境、ユーザが置かれた社会環境、ユーザの行動、ユーザの運動状態、ユーザに提供されるコンテンツの内容、ユーザが反応したコンテンツの内容、ユーザの属性、ユーザの感情等の種々の情報が含まれる。例えば、コンテキスト情報は、ユーザの各種行動に基づく情報等が含まれる。また、例えば、コンテキスト情報は、ユーザの位置やユーザの移動手段やユーザの状態等が含まれる。また、例えば、コンテキスト情報は、ユーザが利用する端末装置１０の通信状態や表示する情報等が含まれる。なお、上記は一例であり、コンテキスト情報には、上記に限らず、種々の情報が含まれてもよい。
【００２１】
また、端末装置１０は、近距離無線通信技術により、他の端末装置１０と近接通信を行う。例えば、端末装置１０は、ＮＦＣ（Near  Field  Communication）に関する種々の従来技術を適宜用いて、他の端末装置１０と近接通信を行う機能を有する。例えば、端末装置１０は、Ｂｌｕｅｔｏｏｔｈ（登録商標）やＷｉＦｉ（登録商標）（Wireless  Fidelity）等の種々の従来の無線通信に関する技術を適宜用いて、他の端末装置１０と近接通信を行ってもよい。すなわち、端末装置１０は、他の端末装置１０との近接通信、いわゆるすれ違い通信が可能であれば、どのような機能により他の端末装置１０と近接通信を行ってもよい。
【００２２】
なお、ここでいう近接とは、無線通信が可能な範囲であってもよいし、所定の閾値以内の範囲であってもよい。例えば、近接とは、１メートルや１０メートル等の具体的な距離であってもよい。また、以下では、端末装置１０は、Ｂｌｕｅｔｏｏｔｈ（登録商標）により、他の端末装置１０と近接通信を行うものとする。
【００２３】
また、端末装置１０は、ユーザの位置を示す情報（単に「位置」や「位置情報」ともいう）を収集し、情報処理装置１００へ送信する。例えば、端末装置１０は、ユーザの位置情報を検知（取得）した時点で、随時（リアルタイムに）情報処理装置１００へ位置情報を送信してもよいし、所定のタイミング（例えば、１時間おきや１日おき）で情報処理装置１００へ位置情報を送信してもよい。
【００２４】
情報処理装置１００は、位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、対象ユーザ及び他のユーザの近接を示す近接情報とに基づいて、対象ユーザの位置を推定するコンピュータ（情報処理装置）である。すなわち、情報処理装置１００は、対象ユーザ以外の他のユーザの情報を用いて、対象ユーザの位置を推定する推定装置である。例えば、情報処理装置１００は、第１日時における他のユーザの位置を示す位置情報と、第１日時とは異なる第２日時における対象ユーザ及び他のユーザの近接を示す近接情報に基づいて、第２日時における対象ユーザの位置を推定する。
【００２５】
例えば、情報処理装置１００は、推定したユーザの位置に関する情報を用いた種々のサービスを提供してもよい。例えば、情報処理装置１００は、推定したユーザの位置に関する情報を他の情報処理装置へ提供するサービスを行ってもよい。また、例えば、情報処理装置１００は、ユーザにコンテンツを提供するサービス（コンテンツ提供サービス）を行ってもよい。情報処理装置１００は、端末装置１０からの要求に応じて、端末装置１０において表示されるコンテンツを配信してもよい。例えば、情報処理装置１００は、ユーザが利用する端末装置１０からの要求に応じて、そのユーザの位置に応じたコンテンツを提供してもよい。また、情報処理システム１においては、情報処理装置１００が検索サービスや電子商取引サービス等の種々のサービスを提供してもよい。
【００２６】
例えば、情報処理装置１００は、端末装置１０に商品またはサービス（以下、併せて「商品」ともいう）の情報を提供したり、ユーザからの購入意思を示す情報に応じて、ユーザへの商品の配送等を行ったりする電子商取引サービスを提供してもよい。また、例えば、情報処理装置１００は、端末装置１０から取得したクエリ（検索クエリ）に対する検索結果を端末装置１０に提供する検索サービスを提供してもよい。
【００２７】
〔１−１．推定例〕
ここから、図１を用いて、ユーザＵ２の位置を推定する場合を一例として説明する。図１中に示す位置ＬＣ１や位置ＬＣ２は、具体的な緯度経度を示す情報であってもよい。なお、図１の例では、各ユーザが利用する端末装置１０が近接通信を行うことにより近接する位置に位置することを示す近接情報が取得される場合を示す。なお、ユーザの近接が推定可能であれば、端末装置１０の近接通信に限らず、種々の方法によりユーザの近接を示す近接情報が取得されてもよい。
【００２８】
図１の例では、情報処理装置１００（図３参照）は、各々異なる日時における推定用ユーザであるユーザＵ１の位置、ユーザＵ３の位置、ユーザＵ１と対象ユーザであるユーザＵ２との近接、及びユーザＵ３とユーザＵ２との近接により、ユーザＵ２の位置を推定する。具体的には、情報処理装置１００は、第１日時（日時ｄｔ１）におけるユーザＵ１の位置や第３日時（日時ｄｔ３）におけるユーザＵ３の位置に基づいて、第２日時（日時ｄｔ２）や第４日時（日時ｄｔ４）におけるユーザＵ２の位置を推定する。
【００２９】
まず、情報処理装置１００は、日時ｄｔ１におけるユーザＵ１の位置情報を取得する（ステップＳ１）。図１の例では、ユーザＵ１が利用する端末装置１０−１は、ＧＰＳ等の所定の位置情報を検知する機能により、日時ｄｔ１における端末装置１０−１（ユーザＵ１）の位置が位置ＬＣ１であることを示す位置情報を取得する。例えば、端末装置１０−１がユーザＵ１の位置が位置ＬＣ１であることを示す位置情報を情報処理装置１００に送信することにより、情報処理装置１００は、日時ｄｔ１におけるユーザＵ１の位置情報を取得する。なお、ここでいう日時には、ある時点（時分秒）であってもよいし、ある程度の期間（例えば分単位の期間等）を含んでもよい。
【００３０】
そして、端末装置１０−１は、日時ｄｔ２において、ユーザＵ２が利用する端末装置１０−２と近接通信を行う（ステップＳ２）。例えば、端末装置１０−１と端末装置１０−２とは、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の機能により、日時ｄｔ２において、すれ違い通信を行う。すなわち、端末装置１０−１や端末装置１０−２は、日時ｄｔ２において、ユーザＵ１がユーザＵ２と近傍に位置したことを示す情報を検知する。例えば、端末装置１０−１や端末装置１０−２は、日時ｄｔ２において、ユーザＵ１がユーザＵ２とすれ違ったことを示す近接情報を収集し、情報処理装置１００へ送信する。例えば、近接情報には、近接通信が行われた日時（時刻）を示す情報や近接通信を行ったユーザを識別する情報（ユーザＩＤや端末ＩＤ等）が含まれてもよい。なお、端末装置１０−１と端末装置１０−２とのいずれか一方のみが、日時ｄｔ２において、ユーザＵ１がユーザＵ２とすれ違ったことを示す近接情報を情報処理装置１００へ送信してもよい。これにより、情報処理装置１００は、日時ｄｔ２において、ユーザＵ１とユーザＵ２とが近接したことを示す近接情報を取得する。例えば、情報処理装置１００は、日時ｄｔ２において、ユーザＵ１とユーザＵ２とがすれ違ったことを示す近接情報を取得する。
【００３１】
また、情報処理装置１００は、日時ｄｔ３におけるユーザＵ３の位置情報を取得する（ステップＳ３）。図１の例では、ユーザＵ３が利用する端末装置１０−３は、ＧＰＳ等の所定の位置情報を検知する機能により、日時ｄｔ３における端末装置１０−３（ユーザＵ３）の位置が位置ＬＣ２であることを示す位置情報を取得する。例えば、端末装置１０−３がユーザＵ３の位置が位置ＬＣ２であることを示す位置情報を情報処理装置１００に送信することにより、情報処理装置１００は、日時ｄｔ３におけるユーザＵ３の位置情報を取得する。
【００３２】
そして、端末装置１０−３は、日時ｄｔ４において、ユーザＵ２が利用する端末装置１０−２と近接通信を行う（ステップＳ４）。例えば、端末装置１０−３と端末装置１０−２とは、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の機能により、日時ｄｔ４において、すれ違い通信を行う。すなわち、端末装置１０−３や端末装置１０−２は、日時ｄｔ４において、ユーザＵ３がユーザＵ２と近傍に位置したことを示す情報を検知する。例えば、端末装置１０−３や端末装置１０−２は、日時ｄｔ４において、ユーザＵ３がユーザＵ２とすれ違ったことを示す近接情報を収集し、情報処理装置１００へ送信する。なお、端末装置１０−３と端末装置１０−２とのいずれか一方のみが、日時ｄｔ４において、ユーザＵ３がユーザＵ２とすれ違ったことを示す近接情報を情報処理装置１００へ送信してもよい。これにより、情報処理装置１００は、日時ｄｔ４において、ユーザＵ３とユーザＵ２とが近接したことを示す近接情報を取得する。例えば、情報処理装置１００は、日時ｄｔ４において、ユーザＵ３とユーザＵ２とがすれ違ったことを示す近接情報を取得する。
【００３３】
そして、情報処理装置１００は、日時ｄｔ１におけるユーザＵ１の位置ＬＣ２１と、日時ｄｔ２においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報とに基づいて、日時ｄｔ２におけるユーザＵ２の位置を推定する（ステップＳ５）。例えば、情報処理装置１００は、日時ｄｔ１におけるユーザＵ１の位置ＬＣ２１と、日時ｄｔ２においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報とに基づいて、ユーザＵ２がユーザＵ１と近接通信を行った位置を推定する。
【００３４】
図１の例では、情報処理装置１００は、日時ｄｔ１と日時ｄｔ２との間の時間（以下、「経過時間」ともいう）と、ユーザＵ１の歩行速度に基づいて、日時ｄｔ２におけるユーザＵ２の位置を推定する。例えば、情報処理装置１００は、ユーザ情報記憶部１２１（図４参照）に示すようなユーザＵ１の歩行速度ＷＳ１に基づいて、ユーザＵ１が経過時間において位置ＬＣ１から移動可能な範囲を推定する。なお、情報処理装置１００は、ユーザＵ１に対応する歩行速度を有しない場合、ユーザＵ１が属するユーザ属性、すなわち２０代男性の平均的な歩行速度に基づいて、ユーザＵ１が経過時間において位置ＬＣ１から移動可能な範囲を推定してもよい。
【００３５】
例えば、情報処理装置１００は、ユーザＵ１の歩行速度が「６ｋｍ／ｈ（キロメートル毎時）」であり、日時ｄｔ１と日時ｄｔ２との間の経過時間が１５分である場合、ユーザＵ１が経過時間において、約「１．５ｋｍ（＝６＊０．２５）」だけ移動可能であると推定する。例えば、情報処理装置１００は、ユーザＵ１の歩行速度ＷＳ１と経過時間とを乗算することにより、ユーザＵ１の移動可能な距離（以下、「移動距離」ともいう）を算出する。この場合、情報処理装置１００は、ユーザＵ１の歩行速度「６ｋｍ／ｈ」と、日時ｄｔ１と日時ｄｔ２との間の経過時間１５分とに基づいて、ユーザＵ１が経過時間において移動した距離を「１．５ｋｍ（＝６＊０．２５）」と算出する。この場合、情報処理装置１００は、位置ＬＣ１を中心とする半径０．７５ｋｍの円周上において、ユーザＵ１とユーザＵ２とがすれ違ったと推定する。
【００３６】
図１の例では、情報処理装置１００は、日時ｄｔ２において、ユーザＵ１とユーザＵ２とが、位置ＬＣ１を中心とした半径ＲＤ１の円（以下「第１円ＣＲ１」とする）上のいずれかの位置ですれ違ったことと推定する。すなわち、情報処理装置１００は、日時ｄｔ２におけるユーザＵ２の位置が第１円ＣＲ１上のいずれかの位置であると推定する。なお、図１中の第１円ＣＲ１が所定の幅（例えば２ｍや３０ｃｍ等）を有する円環状であってもよく、情報処理装置１００は、ユーザＵ２がその円環状の第１円ＣＲ１内のどこかに位置すると推定してもよい。なお、情報処理装置１００は、ユーザＵ１についても同様に、日時ｄｔ２におけるユーザＵ２の位置が第１円ＣＲ１上のいずれかの位置であると推定してもよい。
【００３７】
また、情報処理装置１００は、日時ｄｔ３におけるユーザＵ３の位置ＬＣ２と、日時ｄｔ４においてユーザＵ３とユーザＵ２とが近接したことを示す近接情報とに基づいて、日時ｄｔ４におけるユーザＵ２の位置を推定する（ステップＳ６）。例えば、情報処理装置１００は、日時ｄｔ３におけるユーザＵ３の位置ＬＣ２と、日時ｄｔ４においてユーザＵ３とユーザＵ２とが近接したことを示す近接情報とに基づいて、ユーザＵ３がユーザＵ２と近接通信を行った位置を推定する。
【００３８】
図１の例では、情報処理装置１００は、日時ｄｔ３と日時ｄｔ４との間の時間（経過時間）と、ユーザＵ３の歩行速度に基づいて、日時ｄｔ４におけるユーザＵ２の位置を推定する。例えば、情報処理装置１００は、ユーザ情報記憶部１２１（図４参照）に示すようなユーザＵ３の歩行速度ＷＳ３に基づいて、ユーザＵ３が経過時間において位置ＬＣ２から移動可能な範囲を推定する。なお、情報処理装置１００は、ユーザＵ３に対応する歩行速度を有しない場合、ユーザＵ３が属するユーザ属性、すなわち３０代男性の平均的な歩行速度に基づいて、ユーザＵ３が経過時間において位置ＬＣ２から移動可能な範囲を推定してもよい。
【００３９】
例えば、情報処理装置１００は、ユーザＵ３の歩行速度が「４ｋｍ／ｈ（キロメートル毎時）」であり、日時ｄｔ３と日時ｄｔ４との間の経過時間が１５分である場合、ユーザＵ３が経過時間において、約「１ｋｍ（＝４＊０．２５）」だけ移動可能であると推定する。例えば、情報処理装置１００は、ユーザＵ３の歩行速度ＷＳ３と経過時間とを乗算することにより、ユーザＵ３の移動距離を算出する。例えば、情報処理装置１００は、ユーザＵ３の歩行速度「４ｋｍ／ｈ」と、日時ｄｔ３と日時ｄｔ４との間の経過時間１５分とに基づいて、ユーザＵ３が経過時間において移動した距離を「１ｋｍ（＝４＊０．２５）」と算出する。この場合、情報処理装置１００は、位置ＬＣ２を中心とする半径０．５ｋｍの円周上において、ユーザＵ３とユーザＵ２とがすれ違ったと推定する。
【００４０】
図１の例では、情報処理装置１００は、日時ｄｔ４において、ユーザＵ３とユーザＵ２とが、位置ＬＣ２を中心とした半径ＲＤ２の円（以下「第２円ＣＲ２」とする）上のいずれかの位置ですれ違ったことと推定する。すなわち、情報処理装置１００は、日時ｄｔ４におけるユーザＵ２の位置が第２円ＣＲ２上のいずれかの位置であると推定する。なお、図１中の第２円ＣＲ２が所定の幅（例えば３ｍや２０ｃｍ等）を有する円環状であってもよく、情報処理装置１００は、ユーザＵ２がその円環状の第２円ＣＲ２内のどこかに位置すると推定してもよい。なお、情報処理装置１００は、ユーザＵ３についても同様に、日時ｄｔ４におけるユーザＵ２の位置が第２円ＣＲ２上のいずれかの位置であると推定してもよい。
【００４１】
そして、情報処理装置１００は、ユーザＵ２の位置の推定対象となる日時ｄｔ２と日時ｄｔ４との間の経過時間と、ユーザＵ２の歩行速度に基づいて、第１円ＣＲ１におけるユーザＵ２の位置や第２円ＣＲ２におけるユーザＵ２の位置を推定する（ステップＳ７）。具体的には、情報処理装置１００は、ユーザＵ２の位置の推定対象となる日時ｄｔ２と日時ｄｔ４との間の経過時間と、ユーザＵ２の歩行速度に基づいて、第１円ＣＲ１におけるユーザＵ２の位置や第２円ＣＲ２におけるユーザＵ２の位置を絞り込む。例えば、情報処理装置１００は、日時ｄｔ２と日時ｄｔ４との間の経過時間において、対象ユーザであるユーザＵ２が移動距離に基づいて、第１円ＣＲ１におけるユーザＵ２の位置や第２円ＣＲ２におけるユーザＵ２の位置を絞り込む。
【００４２】
まず、情報処理装置１００は、日時ｄｔ２と日時ｄｔ４との間の経過時間と、ユーザＵ２の歩行速度ＷＳ２とによりことにより、日時ｄｔ２と日時ｄｔ４との間におけるユーザＵ２の移動距離を推定（算出）する。
【００４３】
図１の例では、情報処理装置１００は、日時ｄｔ２と日時ｄｔ４との間の時間（経過時間）と、ユーザＵ２の歩行速度に基づいて、日時ｄｔ４におけるユーザＵ２の位置を推定する。例えば、情報処理装置１００は、ユーザ情報記憶部１２１（図４参照）に示すようなユーザＵ２の歩行速度ＷＳ２に基づいて、ユーザＵ２が経過時間において位置ＬＣ２から移動可能な範囲を推定する。なお、情報処理装置１００は、ユーザＵ２に対応する歩行速度を有しない場合、ユーザＵ２が属するユーザ属性、すなわち２０代女性の平均的な歩行速度に基づいて、ユーザＵ２が経過時間において位置ＬＣ２から移動可能な範囲を推定してもよい。
【００４４】
例えば、情報処理装置１００は、ユーザＵ２の歩行速度が「５ｋｍ／ｈ（キロメートル毎時）」であり、日時ｄｔ２と日時ｄｔ４との間の経過時間が３０分である場合、ユーザＵ２が経過時間において、約「２．５ｋｍ（＝５＊０．５）」だけ移動可能であると推定する。例えば、情報処理装置１００は、ユーザＵ２の歩行速度ＷＳ２と経過時間とを乗算することにより、ユーザＵ２の移動距離を算出する。例えば、情報処理装置１００は、ユーザＵ２の歩行速度「５ｋｍ／ｈ」と、日時ｄｔ２と日時ｄｔ４との間の経過時間３０分とに基づいて、ユーザＵ２が経過時間において移動した距離を「２．５ｋｍ（＝５＊０．５）」と算出する。
【００４５】
そして、情報処理装置１００は、２．５ｋｍである推定移動距離ＤＳ１を満たす位置（地点）間を移動したと推定する。図１の例では、情報処理装置１００は、推定移動距離ＤＳ１を満たす２地点間、すなわち第１円ＣＲ１上の地点（以下「地点ｒ１」とする）から、第２円ＣＲ２上の地点（以下「地点ｒ２」とする）まで移動したと推定する。そのため、情報処理装置１００は、推定移動距離ＤＳ１を満たす第１円ＣＲ１上の地点ｒ１と、第２円ＣＲ２上の地点ｒ２との組合せを抽出する。
【００４６】
例えば、情報処理装置１００は、下記の式（１）に示す条件（以下「抽出条件」ともいう）を満たすような、第１円ＣＲ１上の地点ｒ１と第２円ＣＲ２上の地点ｒ２との組合せを抽出する。
【００４７】
【数１】
2020046369.tif 000003
【００４８】
上記式（１）中の左辺は、地点ｒ１と地点ｒ２との間の距離に対応する。上記式（１）中の右辺は、対象ユーザの移動距離に対応する。図１の例では、上記式（１）中の「ｔｐ２」は、日時ｄｔ４に対応する。また、図１の例では、上記式（１）中の「ｔｐ１」は、日時ｄｔ２に対応する。また、図１の例では、上記式（１）中の「ｖｕｔ」は、対象ユーザであるユーザＵ２の歩行速度ＷＳ２に対応する。すなわち、図１の例では、上記式（１）中の右辺の値は、「２．５ｋｍ」となり、情報処理装置１００は、上記式（１）中の左辺の値が「２．５ｋｍ」から所定の範囲内となる地点ｒ１と地点ｒ２との組合せを抽出する。
【００４９】
例えば、情報処理装置１００は、地点ｒ１と地点ｒ２との間の距離が２．５ｋｍから所定の範囲（例えば±０．１ｋｍ等）内である場合、その地点ｒ１と地点ｒ２との組合せを推定位置の候補として抽出してもよい。例えば、情報処理装置１００は、地点ｒ１と地点ｒ２との間の距離が２．５ｋｍに一致する場合、その地点ｒ１と地点ｒ２との組合せを推定位置の候補として抽出してもよい。
【００５０】
図１の例では、情報処理装置１００は、抽出条件を満たす第１円ＣＲ１上の地点ｒ１と、第２円ＣＲ２上の地点ｒ２との組合せを抽出する。例えば、情報処理装置１００は、第１円ＣＲ１上の地点ｒ１に対応する位置ＬＣ１−１と、第２円ＣＲ２上の地点ｒ２に対応する位置ＬＣ２−１とを、抽出条件を満たす組合せとして抽出する。すなわち、情報処理装置１００は、位置ＬＣ１−１と位置ＬＣ２−１との組合せをユーザＵ２の推定位置の候補として抽出する。
【００５１】
なお、図１では図示を省略するが、情報処理装置１００は、位置ＬＣ１−１と位置ＬＣ２−１との組合せ以外の複数の組合せをユーザＵ２の推定位置の候補として抽出する。例えば、情報処理装置１００は、第１円ＣＲ１上の地点ｒ１に対応する位置ＬＣ１−２と、第２円ＣＲ２上の地点ｒ２に対応する位置ＬＣ２−２とを、抽出条件を満たす組合せとして抽出する。すなわち、情報処理装置１００は、位置ＬＣ１−２と位置ＬＣ２−２との組合せをユーザＵ２の推定位置の候補として抽出する。また、例えば、情報処理装置１００は、第１円ＣＲ１上の地点ｒ１に対応する位置ＬＣ１−３と、第２円ＣＲ２上の地点ｒ２に対応する位置ＬＣ２−３とを、抽出条件を満たす組合せとして抽出する。また、例えば、情報処理装置１００は、第１円ＣＲ１上の地点ｒ１に対応する位置ＬＣ１−４と、第２円ＣＲ２上の地点ｒ２に対応する位置ＬＣ２−４とを、抽出条件を満たす組合せとして抽出する。そして、情報処理装置１００は、抽出した組合せを推定情報記憶部１２４（図７参照）に記憶する。
【００５２】
また、情報処理装置１００は、ユーザＵ２の推定位置の候補（組合せ）のうち、推定移動距離ＤＳ１に示す推定移動距離「２．５ｋｍ」に最も近い組合せの位置をユーザＵ２の位置として決定してもよい。図１の例では、情報処理装置１００は、ユーザＵ２の推定位置の候補（組合せ）のうち、位置ＬＣ１−１と位置ＬＣ２−１との組合せが推定移動距離「２．５ｋｍ」に最も近い場合、位置ＬＣ１−１と位置ＬＣ２−１とをユーザＵ２の位置として特定してもよい。この場合、情報処理装置１００は、ユーザＵ２について、日時ｄｔ２における位置を位置ＬＣ１−１に決定し、日時ｄｔ４における位置を位置ＬＣ２−１に決定する。
【００５３】
〔１−１−１．消費電力の抑制等〕
このように、情報処理装置１００は、ユーザＵ２以外の複数の推定用ユーザの情報を用いることにより、ユーザＵ２の位置をより絞り込んで推定することができる。このように、情報処理装置１００は、位置情報が取得されていないユーザであっても、他のユーザ等の推定用ユーザの情報や他のユーザ等の推定用ユーザとの近接情報を用いることにより、適切にそのユーザの位置を推定することができる。したがって、情報処理装置１００は、ユーザの位置を適切に推定することができる。
【００５４】
上記のように、情報処理装置１００が対象ユーザであるユーザＵ２の位置を推定することにより、ユーザＵ２の端末装置１０−２自身がＧＰＳ等により位置情報を検知することなく、情報処理装置１００は、ユーザＵ２に関する位置情報を取得可能となる。これにより、対象ユーザであるユーザＵ２の端末装置１０−２は、位置検知による消費電力を抑制することができる。
【００５５】
このように、情報処理装置１００は、各端末装置１０の情報を相互に利用して位置の推定を行うことにより、消費電力を抑制しつつ、各ユーザの位置情報を補完することができる。すなわち、情報処理装置１００は、消費電力を抑制しつつ、各ユーザの位置情報を増幅することが可能になる。したがって、情報処理システム１は、各端末装置１０の消費電力を抑制しつつ、ユーザの位置情報を収集可能にすることができる。
【００５６】
上記のような位置を推定する情報処理により、例えば、各端末装置１０が位置を検知する回数が１日数十点程度である場合であっても、情報処理装置１００は、各端末装置１０を利用するユーザに位置を適切に補完し、増幅することで、各ユーザの位置を適切に収集することが可能となる。
【００５７】
また、情報処理装置１００は、地点ｒ１と地点ｒ２との組合せに基づいて、ユーザＵ２の移動ルートＲＴ１を推定してもよい。情報処理装置１００は、抽出した候補における地点ｒ１と地点ｒ２とを通るルートを、ユーザＵ２の移動ルートＲＴ１に推定してもよい。また、情報処理装置１００は、ユーザＵ１の位置ＬＣ１と第１円ＣＲ１上の地点ｒ１とに基づいて、ユーザＵ１の推定ルートＲＴ１を推定してもよい。情報処理装置１００は、ユーザＵ１の位置ＬＣ１と、抽出した候補における地点ｒ１とを通るルートを、ユーザＵ１の推定ルートＥＲ１に推定してもよい。また、情報処理装置１００は、ユーザＵ３の位置ＬＣ２と第２円ＣＲ２上の地点ｒ２とに基づいて、ユーザＵ３の推定ルートＲＴ２を推定してもよい。情報処理装置１００は、ユーザＵ３の位置ＬＣ２と、抽出した候補における地点ｒ２とを通るルートを、ユーザＵ３の推定ルートＥＲ２に推定してもよい。
【００５８】
〔１−１−２．推定について〕
〔１−１−２−１．推定位置を用いた推定〕
なお、上記例では、情報処理装置１００がＧＰＳ等のセンサにより検知された位置を用いて、対象ユーザの位置を推定する場合を示したが、情報処理装置１００は、推定した位置を用いて、さらに対象ユーザの位置を推定してもよい。図１の例では、情報処理装置１００は、ユーザＵ２の推定位置（以下「位置ＬＣＥ」とする）を用いて、他のユーザ（例えばユーザＵＸ）の位置を推定してもよい。例えば、情報処理装置１００は、推定したユーザＵ２の位置ＬＣＥと、ユーザＵ２及びユーザＵＸの近接を示す近接情報とに基づいて、ユーザＵＸの位置を推定してもよい。
【００５９】
〔１−１−２−２．３つ以上の推定〕
なお、上記例では、情報処理装置１００が第１円ＣＲ１及び第２円ＣＲ２の２つの円における推定条件を満たす地点ｒ１及び地点ｒ２の組合せを抽出する場合を示したが、情報処理装置１００は、３つ以上の円における推定条件を満たす地点を抽出してもよい。図１の例では、情報処理装置１００は、第１円ＣＲ１及び第２円ＣＲ２加えて、第３円ＣＲ３（図示省略）を含む３つの円における推定条件を満たす地点を抽出してもよい。
【００６０】
例えば、ユーザＵ２が日時ｄｔ４より後の日時（以下「日時ｄｔ５」とする）においてユーザＵ４と近接していた場合、情報処理装置１００は、ユーザＵ４に対応する第３円ＣＲ３を用いて、日時ｄｔ５におけるユーザＵ２の位置を推定してもよい。この場合、情報処理装置１００は、日時ｄｔ５と、ユーザＵ４の位置（以下「位置ＬＣ４」とする）が検知された日時（以下「日時ｄｔ６」とする）との間の時間（経過時間）と、ユーザＵ４の歩行速度に基づいて、日時ｄｔ６におけるユーザＵ２の位置を推定する。
【００６１】
例えば、情報処理装置１００は、ユーザ情報記憶部１２１（図４参照）に示すようなユーザＵ４の歩行速度ＷＳ４に基づいて、ユーザＵ４が経過時間において位置ＬＣ４から移動可能な範囲を推定する。なお、情報処理装置１００は、ユーザＵ４に対応する歩行速度を有しない場合、ユーザＵ４が属するユーザ属性、すなわち２０代男性の平均的な歩行速度に基づいて、ユーザＵ４が経過時間において位置ＬＣ４から移動可能な範囲を推定してもよい。例えば、情報処理装置１００は、ユーザＵ４の歩行速度ＷＳ４と経過時間とを乗算することにより、ユーザＵ４の移動距離（以下「移動距離ＭＤ４」とする）を算出する。
【００６２】
例えば、情報処理装置１００は、日時ｄｔ５において、ユーザＵ１とユーザＵ２とが、位置ＬＣ４を中心とした移動距離ＭＤ４に対応する長さの半径の円（以下「第３円ＣＲ３」とする）上のいずれかの位置ですれ違ったことと推定する。すなわち、情報処理装置１００は、日時ｄｔ５におけるユーザＵ２の位置が第３円ＣＲ３上のいずれかの位置であると推定する。
【００６３】
この場合、情報処理装置１００は、抽出条件を満たす第１円ＣＲ１上の地点ｒ１と、第２円ＣＲ２上の地点ｒ２と、第３円ＣＲ３上の地点（以下「地点ｒ３」とする）との組合せを抽出する。
【００６４】
例えば、情報処理装置１００は、ユーザＵ２の歩行速度が「５ｋｍ／ｈ（キロメートル毎時）」であり、日時ｄｔ４と日時ｄｔ５との間の経過時間が３０分である場合、ユーザＵ２が経過時間において、約「２．５ｋｍ（＝５＊０．５）」だけ移動可能であると推定する。例えば、情報処理装置１００は、ユーザＵ２の歩行速度ＷＳ２と経過時間とを乗算することにより、ユーザＵ２の移動距離を算出する。例えば、情報処理装置１００は、ユーザＵ２の歩行速度「５ｋｍ／ｈ」と、日時ｄｔ４と日時ｄｔ５との間の経過時間３０分とに基づいて、ユーザＵ２が経過時間において移動した距離を「２．５ｋｍ（＝５＊０．５）」と算出する。
【００６５】
そして、情報処理装置１００は、２．５ｋｍである推定移動距離（以下「第２推定移動距離」ともいう）を満たす位置（地点）間を移動したと推定する。図１の例では、情報処理装置１００は、第２推定移動距離を満たす２地点間、すなわち第２円ＣＲ２上の地点ｒ２から、第３円ＣＲ３上の地点ｒ３まで移動したと推定する。そのため、情報処理装置１００は、第２推定移動距離を満たす第２円ＣＲ２上の地点ｒ２と、第３円ＣＲ３上の地点ｒ３との組合せを抽出する。
【００６６】
例えば、情報処理装置１００は、図１の例で抽出した地点ｒ１、ｒ２の組合せに含まれる第２円ＣＲ２上の地点ｒ２との間の距離が第２推定移動距離「２．５ｋｍ」を満たす第３円ＣＲ３上の地点ｒ３を抽出する。例えば、情報処理装置１００は、図１の例で抽出した地点ｒ１、ｒ２の組合せ（候補）に含まれる位置ＬＣ２−１〜ＬＣ２−４との間の距離が第２推定移動距離「２．５ｋｍ」を満たす第３円ＣＲ３上の地点ｒ３を抽出する。例えば、情報処理装置１００は、地点ｒ２を位置ＬＣ２−１とした場合、位置ＬＣ２−１との間の距離が第２推定移動距離「２．５ｋｍ」を満たす第３円ＣＲ３上の地点ｒ３と、位置ＬＣ２−１との組合せを抽出する。また、例えば、情報処理装置１００は、地点ｒ２を位置ＬＣ２−２とした場合、位置ＬＣ２−２との間の距離が第２推定移動距離「２．５ｋｍ」を満たす第３円ＣＲ３上の地点ｒ３と、位置ＬＣ２−２との組合せを抽出する。これにより、情報処理装置１００は、推定位置の候補をさらに絞り込むことができる。
【００６７】
〔１−１−２−３．誤差に基づく決定〕
また、例えば、情報処理装置１００は、第１円ＣＲ１上の地点ｒ１と、第２円ＣＲ２上の地点ｒ２と、第３円ＣＲ３上の地点ｒ３との組合せのうち、推定移動距離との誤差が最も小さい地点ｒ１、ｒ２、ｒ３をユーザＵ２の位置として決定してもよい。この場合、情報処理装置１００は、ユーザＵ２の推定位置の候補（組合せ）のうち、「２．５ｋｍ」である推定移動距離ＤＳ１と第２推定移動距離「２．５ｋｍ」とを合算した合計推定移動距離「５ｋｍ（２．５ｋｍ＋２．５ｋｍ）」に最も近い位置の組合せを、ユーザＵ２の位置に決定してもよい。例えば、情報処理装置１００は、ユーザＵ２の推定位置の候補（組合せ）のうち、位置ＬＣ１−１と位置ＬＣ２−１と位置ＬＣ３−２の組合せが合計推定移動距離「５ｋｍ」に最も近い場合、位置ＬＣ１−１と位置ＬＣ２−１と位置ＬＣ３−２とをユーザＵ２の位置として特定してもよい。この場合、情報処理装置１００は、ユーザＵ２について、日時ｄｔ２における位置を位置ＬＣ１−１に決定し、日時ｄｔ４における位置を位置ＬＣ２−１に決定し、日時ｄｔ５における位置を位置ＬＣ３−２に決定する。
【００６８】
〔１−２．他の推定例〕
情報処理装置１００は、上記の例に限らず、種々の情報を適宜用いて対象ユーザの位置を推定してもよい。この点について、図９〜図１１を用いて説明する。図９〜図１１は、実施形態に係る情報処理の他の一例を示す図である。
【００６９】
〔１−２−１．推定用ユーザが一人の場合〕
まず、図９を用いて、推定用ユーザが一人の場合に対象ユーザであるユーザＵ２の位置を推定する場合を一例として説明する。なお、図９において、図１と同様の点については、適宜説明を省略する。
【００７０】
図９に示す地図情報ＭＰ１１（以下、単に「地図ＭＰ１１」ともいう）は、ユーザＵ１やユーザＵ２等の位置を模式的に示す。図９に示す地図ＭＰ１１−１は、道路情報ＲＤ１１を示すためのものであり、地図ＭＰ１１−１は、地図ＭＰ１１と、同一のエリアである。また、以下では、地図ＭＰ１１−１について、特に区別なく説明する場合には、地図ＭＰ１１と記載する。また、地図ＭＰ１１に示す、位置ＬＣ１０や位置ＬＣ１１〜ＬＣ１６は、具体的な緯度経度を示す情報であってもよい。なお、図９〜図１１の例では、各ユーザが利用する端末装置１０が近接通信を行うことにより近接する位置に位置することを示す近接情報が取得される場合を示す。なお、ユーザの近接が推定可能であれば、端末装置１０の近接通信に限らず、種々の方法によりユーザの近接を示す近接情報が取得されてもよい。例えば、情報処理装置１００は、上記に限らず種々のシステムから取得したログを利用してもよい。例えば、情報処理装置１００は、ＷｉＦｉ基地局などのログ（基地局ログ情報）を取得し、取得した基地局ログ情報に基づく近接情報を用いてもよい。例えば、情報処理装置１００は、ユーザが同じ基地局を同時刻に利用していたことを示す基地局ログ情報を取得して、基地局ログ情報に基づく近接情報を用いてもよい。例えば、情報処理装置１００は、ユーザが同じ基地局に同時刻にいたことを示す基地局ログ情報を取得して、基地局ログ情報に基づく近接情報を用いてもよい。例えば、情報処理装置１００は、基地局ログ情報から同じ基地局に同時刻（時刻Ｘ）にいたユーザを抽出し、抽出したユーザが時刻Ｘに近接していたことを示す近接情報を生成してもよい。例えば、情報処理装置１００は、駅の改札やビルのゲートの通過ログ（通過ログ情報）を取得し、取得した通過ログ情報に基づく近接情報を用いてもよい。例えば、情報処理装置１００は、通過ログ情報から同じ基地局に同時刻（時刻Ｙ）にいたユーザを抽出し、抽出したユーザが時刻Ｙに近接していたことを示す近接情報を生成してもよい。例えば、情報処理装置１００は、共有カレンダー等のスケジュール情報を取得し、取得したスケジュール情報に基づく近接情報を用いてもよい。例えば、情報処理装置１００は、スケジュール情報を用いて、同時刻（時刻Ｚ）同じ会議等のイベントに参加していたユーザや同じ場所に出張していたユーザを抽出し、抽出したユーザが時刻Ｚに近接していたことを示す近接情報を生成してもよい。
【００７１】
まず、情報処理装置１００（図３参照）は、日時ｄｔ１１におけるユーザＵ１の位置情報を取得する（ステップＳ１１）。図９の例では、ユーザＵ１が利用する端末装置１０−１は、ＧＰＳ等の所定の位置情報を検知する機能により、日時ｄｔ１１における端末装置１０−１（ユーザＵ１）の位置が位置ＬＣ１０であることを示す位置情報を取得する。例えば、端末装置１０−１がユーザＵ１の位置が位置ＬＣ１０であることを示す位置情報を情報処理装置１００に送信することにより、情報処理装置１００は、日時ｄｔ１１におけるユーザＵ１の位置情報を取得する。なお、ここでいう日時には、ある時点（時分秒）であってもよいし、ある程度の期間（例えば分単位の期間等）を含んでもよい。
【００７２】
そして、端末装置１０−１は、日時ｄｔ１２において、ユーザＵ２が利用する端末装置１０−２と近接通信を行う（ステップＳ１２）。例えば、端末装置１０−１と端末装置１０−２とは、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の機能により、日時ｄｔ１２において、すれ違い通信を行う。すなわち、端末装置１０−１や端末装置１０−２は、日時ｄｔ１２において、ユーザＵ１がユーザＵ２と近傍に位置したことを示す情報を検知する。例えば、端末装置１０−１や端末装置１０−２は、日時ｄｔ１２において、ユーザＵ１がユーザＵ２とすれ違ったことを示す近接情報を収集し、情報処理装置１００へ送信する。なお、端末装置１０−１と端末装置１０−２とのいずれか一方のみが、日時ｄｔ１２において、ユーザＵ１がユーザＵ２とすれ違ったことを示す近接情報を情報処理装置１００へ送信してもよい。これにより、情報処理装置１００は、日時ｄｔ１２において、ユーザＵ１とユーザＵ２とが近接したことを示す近接情報を取得する（ステップＳ１３）。例えば、情報処理装置１００は、日時ｄｔ１２において、ユーザＵ１とユーザＵ２とがすれ違ったことを示す近接情報を取得する。
【００７３】
そして、情報処理装置１００は、日時ｄｔ１１におけるユーザＵ１の位置ＬＣ１０と、日時ｄｔ１２においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報とに基づいて、日時ｄｔ１２におけるユーザＵ２の位置を推定する（ステップＳ１４）。例えば、情報処理装置１００は、日時ｄｔ１１におけるユーザＵ１の位置ＬＣ１０と、日時ｄｔ１２においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報とに基づいて、ユーザＵ２がユーザＵ１と近接通信を行った位置を推定する。
【００７４】
図９の例では、情報処理装置１００は、日時ｄｔ１１と日時ｄｔ１２との間の時間（経過時間）と、ユーザＵ１の歩行速度に基づいて、日時ｄｔ１２におけるユーザＵ２の位置を推定する。例えば、情報処理装置１００は、ユーザ情報記憶部１２１（図４参照）に示すようなユーザＵ１の歩行速度ＷＳ１に基づいて、ユーザＵ１が経過時間において位置ＬＣ１０から移動可能な範囲を推定する。なお、情報処理装置１００は、ユーザＵ１に対応する歩行速度を有しない場合、ユーザＵ１が属するユーザ属性、すなわち２０代男性の平均的な歩行速度に基づいて、ユーザＵ１が経過時間において位置ＬＣ１０から移動可能な範囲を推定してもよい。
【００７５】
例えば、情報処理装置１００は、ユーザＵ１の歩行速度が「６ｋｍ／ｈ（キロメートル毎時）」であり、日時ｄｔ１１と日時ｄｔ１２との間の経過時間が３０分である場合、ユーザＵ１が経過時間において、約「３ｋｍ（＝６＊０．５）」だけ移動可能であると推定する。この場合、情報処理装置１００は、位置ＬＣ１０を中心とする半径３ｋｍの円周上において、ユーザＵ１とユーザＵ２とがすれ違ったと推定する。
【００７６】
図９の例では、情報処理装置１００は、日時ｄｔ１２において、ユーザＵ１とユーザＵ２とが円ＣＲ１１上のいずれかの位置ですれ違ったことと推定する。すなわち、情報処理装置１００は、日時ｄｔ１２におけるユーザＵ２の位置が円ＣＲ１１上のいずれかの位置であると推定する。なお、図９中の円ＣＲ１１が所定の幅（例えば１ｍや５０ｍ等）を有する円環状であってもよく、情報処理装置１００は、ユーザＵ２がその円環状の円ＣＲ１１内のどこかに位置すると推定してもよい。なお、情報処理装置１００は、ユーザＵ１についても同様に、日時ｄｔ１２におけるユーザＵ２の位置が円ＣＲ１１上のいずれかの位置であると推定してもよい。
【００７７】
このように、情報処理装置１００は、ユーザＵ２以外のユーザであるユーザＵ１の位置ＬＣ１０と、日時ｄｔ１２においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報とに基づいて、日時ｄｔ１２におけるユーザＵ２の位置を推定することができる。このように、情報処理装置１００は、位置情報が取得されていないユーザであっても、他のユーザの情報や他のユーザとの近接情報を用いることにより、適切にそのユーザの位置を推定することができる。したがって、情報処理装置１００は、ユーザの位置を適切に推定することができる。
【００７８】
〔１−２−１−１．道路情報の利用〕
また、情報処理装置１００は、他のユーザの位置情報や近接情報に加えて、道路情報を用いることにより、ユーザの位置を推定してもよい。例えば、情報処理装置１００は、道路情報に基づいて、ユーザの位置の候補を絞り込んでもよい。
【００７９】
情報処理装置１００は、道路情報を取得する（ステップＳ１５）。図９の例では、地図ＭＰ１１内の道路情報を取得する。例えば、情報処理装置１００は、道路地図情報記憶部１２５（図３参照）から地図ＭＰ１１内の道路情報を取得する。図９の例では、情報処理装置１００は、図９中の地図ＭＰ１１内に示すような道路情報ＲＤ１１を取得する。なお、情報処理装置１００は、所定の外部装置から地図ＭＰ１１内の道路情報を取得してもよい。例えば、情報処理装置１００は、道路地図サービスを提供するサービス提供装置から地図ＭＰ１１内の道路情報を取得してもよい。
【００８０】
そして、情報処理装置１００は、図９中の円ＣＲ１１と、道路情報ＲＤ１１とに基づいて、日時ｄｔ１２におけるユーザＵ２の位置を推定する（ステップＳ１６）。例えば、情報処理装置１００は、図９中の円ＣＲ１１と、道路情報ＲＤ１１とに基づいて、日時ｄｔ１２におけるユーザＵ２の位置を円ＣＲ１１から絞り込む。具体的には、情報処理装置１００は、図９中の円ＣＲ１１と、道路情報ＲＤ１１とが交わる地点(位置)を、日時ｄｔ１２におけるユーザＵ２の位置として推定する。図９の例では、情報処理装置１００は、図９中の円ＣＲ１１と、道路情報ＲＤ１１とが交わる６つの位置ＬＣ１１〜ＬＣ１６を、日時ｄｔ１２におけるユーザＵ２の位置として推定する。
【００８１】
このように、情報処理装置１００は、道路情報ＲＤ１１を用いることにより、日時ｄｔ１２におけるユーザＵ２の位置を、図９中の円ＣＲ１１から６つの位置ＬＣ１１〜ＬＣ１６まで絞り込むことができる。このように、情報処理装置１００は、他のユーザの位置情報や近接情報に加えて、道路情報を用いることにより、適切にユーザの位置を推定することができる。したがって、情報処理装置１００は、ユーザの位置を適切に推定することができる。
【００８２】
このように、情報処理装置１００は、ユーザＵ２以外のユーザであるユーザＵ１の位置ＬＣ１０と、日時ｄｔ１２においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報とに基づいて、日時ｄｔ１２におけるユーザＵ２の位置を推定することができる。このように、情報処理装置１００は、位置情報が取得されていないユーザであっても、他のユーザの情報や他のユーザとの近接情報を用いることにより、適切にそのユーザの位置を推定することができる。したがって、情報処理装置１００は、ユーザの位置を適切に推定することができる。図９の例では、情報処理装置１００は、位置情報が取得できていないユーザＵ２の日時ｄｔ１２における位置情報を、他のユーザＵ１の情報により補完することができる。このように、情報処理装置１００は、位置情報が取得できていない日時におけるユーザの位置情報を補完することができる。
【００８３】
〔１−２−１−２．位置検知と近接が同時の場合〕
なお、情報処理装置１００は、推定用ユーザの位置（「位置ＬＣＸ」とする）の検知日時と、対象ユーザ及び推定用ユーザの近接の日時（「日時ｄｔｃ」とする）とが所定の範囲内である場合、位置ＬＣＸを日時ｄｔｃにおける対象ユーザの位置として推定してもよい。例えば、情報処理装置１００は、推定用ユーザの位置ＬＣＸの検知日時と、対象ユーザ及び推定用ユーザの近接の日時ｄｔｃとの間の時間差が所定の閾値（例えば１秒や５秒等）以下である場合、位置ＬＣＸを日時ｄｔｃにおける対象ユーザの位置として推定してもよい。例えば、情報処理装置１００は、推定用ユーザの位置ＬＣＸの検知日時と、対象ユーザ及び推定用ユーザの近接の日時ｄｔｃとが一致する場合、位置ＬＣＸを日時ｄｔｃにおける対象ユーザの位置として推定してもよい。
【００８４】
〔１−２−２．推定用ユーザが二人の場合〕
なお、図９の例では、ユーザＵ２の位置を推定する日時ｄｔ１２が、ユーザＵ１が位置ＬＣ１０に位置した日時ｄｔ１１よりも後である場合を示したが、位置の推定対象となる日時は、いずれの日時であってもよい。例えば、ユーザＵ２の位置を推定する日時が、ユーザＵ１の位置が検知された日時よりも前であってもよい。これらの点について、図１０を用いて説明する。なお、図１０において、図１や図９と同様の点については、適宜説明を省略する。
【００８５】
図１０に示す地図情報ＭＰ２１（以下、単に「地図ＭＰ２１」ともいう）は、ユーザＵ１やユーザＵ２等の位置を模式的に示す。また、地図ＭＰ２１に示す、位置ＬＣ２１や位置ＬＣ３１は、具体的な緯度経度を示す情報であってもよい。
【００８６】
まず、端末装置１０−１は、日時ｄｔ２１において、ユーザＵ２が利用する端末装置１０−２と近接通信を行う（ステップＳ２１）。例えば、端末装置１０−１と端末装置１０−２とは、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の機能により、日時ｄｔ２１において、すれ違い通信を行う。すなわち、端末装置１０−１や端末装置１０−２は、日時ｄｔ２１において、ユーザＵ１がユーザＵ２と近傍に位置したことを示す情報を検知する。例えば、端末装置１０−１や端末装置１０−２は、日時ｄｔ２１において、ユーザＵ１がユーザＵ２とすれ違ったことを示す近接情報を収集し、情報処理装置１００へ送信する。なお、端末装置１０−１と端末装置１０−２とのいずれか一方のみが、日時ｄｔ２１において、ユーザＵ１がユーザＵ２とすれ違ったことを示す近接情報を情報処理装置１００へ送信してもよい。これにより、情報処理装置１００は、日時ｄｔ２１において、ユーザＵ１とユーザＵ２とが近接したことを示す近接情報を取得する（ステップＳ２２）。例えば、情報処理装置１００は、日時ｄｔ２１において、ユーザＵ１とユーザＵ２とがすれ違ったことを示す近接情報を取得する。
【００８７】
そして、情報処理装置１００（図３参照）は、日時ｄｔ２２におけるユーザＵ１の位置情報を取得する（ステップＳ２３）。図１０の例では、ユーザＵ１が利用する端末装置１０−１は、ＧＰＳ等の所定の位置情報を検知する機能により、日時ｄｔ２２における端末装置１０−１（ユーザＵ１）の位置が位置ＬＣ２１であることを示す位置情報を取得する。例えば、端末装置１０−１がユーザＵ１の位置が位置ＬＣ２１であることを示す位置情報を情報処理装置１００に送信することにより、情報処理装置１００は、日時ｄｔ２２におけるユーザＵ１の位置情報を取得する。
【００８８】
また、情報処理装置１００は、日時ｄｔ２３におけるユーザＵ３の位置情報を取得する（ステップＳ２４）。図１０の例では、ユーザＵ３が利用する端末装置１０−３は、ＧＰＳ等の所定の位置情報を検知する機能により、日時ｄｔ２３における端末装置１０−３（ユーザＵ３）の位置が位置ＬＣ３１であることを示す位置情報を取得する。例えば、端末装置１０−３がユーザＵ３の位置が位置ＬＣ３１であることを示す位置情報を情報処理装置１００に送信することにより、情報処理装置１００は、日時ｄｔ２３におけるユーザＵ３の位置情報を取得する。
【００８９】
そして、端末装置１０−３は、日時ｄｔ２４において、ユーザＵ２が利用する端末装置１０−２と近接通信を行う（ステップＳ２５）。例えば、端末装置１０−３と端末装置１０−２とは、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の機能により、日時ｄｔ２４において、すれ違い通信を行う。すなわち、端末装置１０−３や端末装置１０−２は、日時ｄｔ２４において、ユーザＵ３がユーザＵ２と近傍に位置したことを示す情報を検知する。例えば、端末装置１０−３や端末装置１０−２は、日時ｄｔ２４において、ユーザＵ３がユーザＵ２とすれ違ったことを示す近接情報を収集し、情報処理装置１００へ送信する。なお、端末装置１０−３と端末装置１０−２とのいずれか一方のみが、日時ｄｔ２４において、ユーザＵ３がユーザＵ２とすれ違ったことを示す近接情報を情報処理装置１００へ送信してもよい。これにより、情報処理装置１００は、日時ｄｔ２４において、ユーザＵ３とユーザＵ２とが近接したことを示す近接情報を取得する（ステップＳ２６）。例えば、情報処理装置１００は、日時ｄｔ２４において、ユーザＵ３とユーザＵ２とがすれ違ったことを示す近接情報を取得する。
【００９０】
そして、情報処理装置１００は、日時ｄｔ２１においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報と、日時ｄｔ２２におけるユーザＵ１の位置ＬＣ２１とに基づいて、日時ｄｔ２１におけるユーザＵ２の位置を推定する（ステップＳ２７）。例えば、情報処理装置１００は、日時ｄｔ２１においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報と、日時ｄｔ２２におけるユーザＵ１の位置ＬＣ２１とに基づいて、ユーザＵ２がユーザＵ１と近接通信を行った位置を推定する。例えば、図９と同様に、情報処理装置１００は、日時ｄｔ２１から日時ｄｔ２２までの経過時間とユーザＵ１の歩行速度に基づいて、位置ＬＣ２１を中心とし、ユーザＵ１が経過時間において移動可能な距離を半径とする円（「第１円」とする）を推定する。
【００９１】
また、情報処理装置１００は、日時ｄｔ２３におけるユーザＵ３の位置ＬＣ３１と、日時ｄｔ２４においてユーザＵ３とユーザＵ２とが近接したことを示す近接情報とに基づいて、日時ｄｔ２４におけるユーザＵ２の位置を推定する（ステップＳ２８）。例えば、情報処理装置１００は、日時ｄｔ２３におけるユーザＵ３の位置ＬＣ３１と、日時ｄｔ２４においてユーザＵ３とユーザＵ２とが近接したことを示す近接情報とに基づいて、ユーザＵ３がユーザＵ２と近接通信を行った位置を推定する。例えば、図９と同様に、情報処理装置１００は、日時ｄｔ２３から日時ｄｔ２４までの経過時間とユーザＵ３の歩行速度に基づいて、位置ＬＣ３１を中心とし、ユーザＵ３が経過時間において移動可能な距離を半径とする円（「第２円」とする）を推定する。
【００９２】
そして、情報処理装置１００は、ユーザＵ２の位置の推定対象となる日時ｄｔ２１と日時ｄｔ２４との間の経過時間と、ユーザＵ２の歩行速度に基づいて、第１円におけるユーザＵ２の位置や第２円におけるユーザＵ２の位置を絞り込む。例えば、情報処理装置１００は、日時ｄｔ２１と日時ｄｔ２４との間の経過時間においてユーザＵ２が移動可能な距離（以下、「移動距離」ともいう）に基づいて、第１円におけるユーザＵ２の位置や第２円におけるユーザＵ２の位置を絞り込む。
【００９３】
例えば、情報処理装置１００は、日時ｄｔ２１におけるユーザＵ２の位置が、第２円の円周上のいずれかの点との間の距離が移動距離以内となる第１円の円弧ＣＡ２１上であると推定する。なお、図１０中の円弧ＣＡ２１は、所定の幅（例えば１ｍや５０ｍ等）を有してもよく、ユーザＵ２が幅を有する円弧ＣＡ２１内のどこかに位置すると推定してもよい。すなわち、情報処理装置１００は、日時ｄｔ２１におけるユーザＵ２の位置を、第１円よりも絞り込まれた円弧ＣＡ２１と推定する。
【００９４】
また、例えば、情報処理装置１００は、日時ｄｔ２４におけるユーザＵ２の位置が、第１円の円周上のいずれかの点との間の距離が移動距離以内となる第２円の円弧ＣＡ３１上であると推定する。なお、図１０中の円弧ＣＡ３１は、所定の幅（例えば１ｍや５０ｍ等）を有してもよく、ユーザＵ２が幅を有する円弧ＣＡ３１内のどこかに位置すると推定してもよい。すなわち、情報処理装置１００は、日時ｄｔ２４におけるユーザＵ２の位置を、第２円よりも絞り込まれた円弧ＣＡ３１と推定する。
【００９５】
このように、情報処理装置１００は、ユーザＵ２以外の複数の推定用ユーザの情報を用いることにより、ユーザＵ２の位置をより絞り込んで推定することができる。このように、情報処理装置１００は、位置情報が取得されていないユーザであっても、他のユーザの情報や他のユーザとの近接情報を用いることにより、適切にそのユーザの位置を推定することができる。したがって、情報処理装置１００は、ユーザの位置を適切に推定することができる。
【００９６】
〔１−２−３．推定用ユーザが三人以上の場合〕
ここから、図１１を用いて、推定用ユーザが三人の場合に対象ユーザであるユーザＵ２の位置を推定する場合を一例として説明する。なお、図１１において、図１や図９や図１０と同様の点については、適宜説明を省略する。
【００９７】
図１１に示す地図情報ＭＰ３１−１及び地図情報ＭＰ３１−２は、ユーザＵ３０の位置の候補地点の絞り込みを示すためのものであり、地図情報ＭＰ３１−１及び地図情報ＭＰ３１−２に示す範囲（エリア）は、同一のエリアである。また、以下では、地図情報ＭＰ３１−１、ＭＰ３１−２について、特に区別なく説明する場合には、地図情報ＭＰ３１（以下、単に「地図ＭＰ３１」ともいう）と記載する。また、地図ＭＰ３１に示す、三角形は、それぞれユーザＵ３１〜Ｕ３３を示す。また、地図ＭＰ３１に示す、ハッチングが付された丸は、各候補地点ＰＴ３１−１〜ＰＴ３３−２を示す。各候補地点ＰＴ３１−１〜ＰＴ３３−２は、位置を示し、具体的な緯度経度を示す情報であってもよい。
【００９８】
図１１の例では、情報処理装置１００（図３参照）は、道路情報を取得する。図１１の例では、地図ＭＰ３１内の道路情報を取得する。例えば、情報処理装置１００は、道路地図情報記憶部１２５（図３参照）から地図ＭＰ３１内の道路情報を取得する。図１１の例では、情報処理装置１００は、地図ＭＰ３１内に示すような道路情報ＲＤ３１を取得する。
【００９９】
また、図１１の例では、情報処理装置１００は、ユーザＵ３０が、日時ｄｔ３１において、ユーザＵ３１と近傍に位置したことを示す情報を取得する。例えば、ユーザＵ３０が利用する端末装置１０と、ユーザＵ３１が利用する端末装置１０とが、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の機能により、日時ｄｔ３１において、すれ違い通信を行う。また、情報処理装置１００は、日時ｄｔ３１よりも後の所定の日時におけるユーザＵ３１の位置を取得する。例えば、情報処理装置１００は、図１１の地図ＭＰ３１中のユーザＵ３１に対応する三角形の位置をユーザＵ３１の位置として取得する。
【０１００】
また、図１１の例では、情報処理装置１００は、ユーザＵ３０が、日時ｄｔ３２において、ユーザＵ３２と近傍に位置したことを示す情報を取得する。例えば、ユーザＵ３０が利用する端末装置１０と、ユーザＵ３２が利用する端末装置１０とが、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の機能により、日時ｄｔ３２において、すれ違い通信を行う。また、情報処理装置１００は、日時ｄｔ３２よりも前の所定の日時におけるユーザＵ３２の位置を取得する。例えば、情報処理装置１００は、図１１の地図ＭＰ３１中のユーザＵ３２に対応する三角形の位置をユーザＵ３２の位置として取得する。
【０１０１】
また、図１１の例では、情報処理装置１００は、ユーザＵ３０が、日時ｄｔ３３において、ユーザＵ３３と近傍に位置したことを示す情報を取得する。例えば、ユーザＵ３０が利用する端末装置１０と、ユーザＵ３３が利用する端末装置１０とが、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の機能により、日時ｄｔ３３において、すれ違い通信を行う。また、情報処理装置１００は、日時ｄｔ３３よりも後の所定の日時におけるユーザＵ３３の位置を取得する。例えば、情報処理装置１００は、図１１の地図ＭＰ３１中のユーザＵ３３に対応する三角形の位置をユーザＵ３３の位置として取得する。
【０１０２】
そして、情報処理装置１００は、日時ｄｔ３１〜ｄｔ３３におけるユーザＵ３０の位置を推定する（ステップＳ３１）。例えば、情報処理装置１００は、日時ｄｔ３１よりも後の所定の日時におけるユーザＵ３１の位置と、日時ｄｔ３１においてユーザＵ３０とユーザＵ３１とが近接したことを示す近接情報とに基づいて、日時ｄｔ３１におけるユーザＵ３０の位置を推定する。
【０１０３】
図１１の例では、情報処理装置１００は、日時ｄｔ３１において、ユーザＵ３０とユーザＵ３１とが円ＣＲ３１上のいずれかの位置ですれ違ったことと推定する。また、情報処理装置１００は、図１１中の円ＣＲ３１と、道路情報ＲＤ３１とに基づいて、日時ｄｔ３１におけるユーザＵ３０の位置を推定する。具体的には、情報処理装置１００は、図１１中の円ＣＲ３１と、道路情報ＲＤ３１とが交わる地点(位置)を、日時ｄｔ３１におけるユーザＵ３０の位置として推定する。例えば、情報処理装置１００は、図１１中の地点ＰＴ３１−１、ＰＴ３１−２を含む円ＣＲ３１と、道路情報ＲＤ３１とが交わる地点（位置）を、日時ｄｔ３１におけるユーザＵ３０の位置として推定する。
【０１０４】
例えば、情報処理装置１００は、日時ｄｔ３２よりも前の所定の日時におけるユーザＵ３２の位置と、日時ｄｔ３２においてユーザＵ３０とユーザＵ３２とが近接したことを示す近接情報とに基づいて、日時ｄｔ３２におけるユーザＵ３０の位置を推定する。
【０１０５】
図１１の例では、情報処理装置１００は、日時ｄｔ３２において、ユーザＵ３０とユーザＵ３２とが円ＣＲ３２上のいずれかの位置ですれ違ったことと推定する。また、情報処理装置１００は、図１１中の円ＣＲ３２と、道路情報ＲＤ３１とに基づいて、日時ｄｔ３２におけるユーザＵ３０の位置を推定する。具体的には、情報処理装置１００は、図１１中の円ＣＲ３２と、道路情報ＲＤ３１とが交わる地点(位置)を、日時ｄｔ３２におけるユーザＵ３０の位置として推定する。例えば、情報処理装置１００は、図１１中の地点ＰＴ３２−１〜ＰＴ３２−４を含む円ＣＲ３１と、道路情報ＲＤ３１とが交わる地点（位置）を、日時ｄｔ３２におけるユーザＵ３０の位置として推定する。
【０１０６】
例えば、情報処理装置１００は、日時ｄｔ３３よりも後の所定の日時におけるユーザＵ３３の位置と、日時ｄｔ３３においてユーザＵ３０とユーザＵ３３とが近接したことを示す近接情報とに基づいて、日時ｄｔ３３におけるユーザＵ３０の位置を推定する。
【０１０７】
図１１の例では、情報処理装置１００は、日時ｄｔ３３において、ユーザＵ３０とユーザＵ３３とが円ＣＲ３３上のいずれかの位置ですれ違ったことと推定する。また、情報処理装置１００は、図１１中の円ＣＲ３３と、道路情報ＲＤ３１とに基づいて、日時ｄｔ３３におけるユーザＵ３０の位置を推定する。具体的には、情報処理装置１００は、図１１中の円ＣＲ３３と、道路情報ＲＤ３１とが交わる地点(位置)を、日時ｄｔ３３におけるユーザＵ３０の位置として推定する。例えば、情報処理装置１００は、図１１中の地点ＰＴ３３−１、ＰＴ３３−２を含む円ＣＲ３３と、道路情報ＲＤ３１とが交わる地点（位置）を、日時ｄｔ３３におけるユーザＵ３０の位置として推定する。
【０１０８】
そして、情報処理装置１００は、日時ｄｔ３１〜ｄｔ３３におけるユーザＵ３０の位置の候補（候補地点）を絞り込む（ステップＳ３２）。例えば、情報処理装置１００は、日時ｄｔ３１における地点ＰＴ３１−１、ＰＴ３１−２、日時ｄｔ３２における地点ＰＴ３２−１〜ＰＴ３２−４、日時ｄｔ３３における地点ＰＴ３３−１、ＰＴ３３−２の位置関係に基づいて、各日時ｄｔ３１〜ｄｔ３３における候補地点を絞り込む。
【０１０９】
例えば、情報処理装置１００は、日時ｄｔ３３における地点ＰＴ３３−１、ＰＴ３３−２のうち、地点ＰＴ３３−１が日時ｄｔ３１に対応する地点の方が日時ｄｔ３２に対応する地点よりも近接するため、地点ＰＴ３３−１を候補地点から除外する。これにより、例えば、情報処理装置１００は、日時ｄｔ３３における候補地点を地点ＰＴ３３−２に絞り込む。
【０１１０】
そして、情報処理装置１００は、日時ｄｔ３２における地点ＰＴ３２−１〜ＰＴ３２−４のうち、日時ｄｔ３１における地点ＰＴ３１−１、ＰＴ３１−２と、日時ｄｔ３３における地点ＰＴ３３−２との間の経路に位置しない地点ＰＴ３２−３、ＰＴ３２−４を候補地点から除外する。これにより、例えば、情報処理装置１００は、日時ｄｔ３２における候補地点を地点ＰＴ３２−１、ＰＴ３２−２に絞り込む。
【０１１１】
このように、情報処理装置１００は、三人以上の推定用ユーザの情報を用いることにより、各日時におけるユーザの位置を精度よく絞り込むことができる。図１１の例では、情報処理装置１００は、３つの日時における候補地点間の関係に基づく経路に応じて、各日時の候補地点を絞り込むことにより、ユーザの位置を精度よく推定することができる。すなわち、情報処理装置１００は、複数の推定用ユーザの端末装置１０（マルチピア）から取得される情報を用いることにより、対象ユーザの位置を精度よく絞り込むことができる。
【０１１２】
例えば、情報処理装置１００は、信号で立ち止まったりするなど、ユーザの移動が等速ではない場合であっても、複数の推定用ユーザの情報を用いて、移動経路を推定することにより、対象ユーザの位置の候補を精度よく絞り込むことができる。例えば、情報処理装置１００は、複数の推定用ユーザとの近接情報を用いることにより、異常検出等により、おかしなデータを除去することができる。例えば、情報処理装置１００は、ＧＰＳ等により取得された推定用ユーザの位置が誤差を含んでいる場合であっても、複数の推定用ユーザの情報を用いることにより、各日時における候補を絞り込むことができる。例えば、情報処理装置１００は、複数の推定用ユーザの情報を用いることにより、各日時における候補間の関係に基づいて、各日時における候補を絞り込むことができる。したがって、情報処理装置１００は、ユーザの位置を適切に推定することができる。
【０１１３】
〔１−３．他の情報の利用〕
情報処理装置１００は、上記に限らず、ユーザの種々の情報を適宜用いて、対象ユーザの位置を推定してもよい。例えば、図９の例では、日時ｄｔ１１におけるユーザＵ１の位置と、日時ｄｔ１２におけるユーザＵ１及びユーザＵ２の近接に基づいて、日時ｄｔ１２におけるユーザＵ２の位置を推定する場合を示したが、情報処理装置１００は、他の情報を用いて推定精度を向上させてもよい。
【０１１４】
〔１−３−１．対象ユーザの位置情報の利用〕
例えば、情報処理装置１００は、対象ユーザであるユーザＵ２の位置情報を用いて、日時ｄｔ１２におけるユーザＵ２の位置の推定精度を向上させてもよい。例えば、情報処理装置１００は、日時ｄｔ１２前後におけるユーザＵ２の位置を用いて、日時ｄｔ１２におけるユーザＵ２の位置の推定精度を向上させてもよい。例えば、情報処理装置１００は、日時ｄｔ１２よりも前の日時（例えば日時ｄｔ１０等）において、ユーザＵ２が位置ＬＣ１０よりも地図ＭＰ１１の左側に位置することを示すユーザＵ２の位置情報を取得した場合、ユーザＵ２が地図ＭＰ１１の左側から右側へ移動していると推定してもよい。そして、情報処理装置１００は、日時ｄｔ１２においてユーザＵ１とユーザＵ２とが、円ＣＲ１１の左側部分のいずれかの位置で近接したと推定してもよい。すなわち、情報処理装置１００は、日時ｄｔ１２においてユーザＵ２が、円ＣＲ１１の左側部分のいずれかの位置に位置すると推定してもよい。
【０１１５】
また、例えば、情報処理装置１００は、日時ｄｔ１２よりも後の日時（例えば日時ｄｔ１３等）において、ユーザＵ２が位置ＬＣ１０よりも地図ＭＰ１１の左側に位置することを示すユーザＵ２の位置情報を取得した場合、ユーザＵ２が地図ＭＰ１１の右側から左側へ移動していると推定してもよい。そして、情報処理装置１００は、日時ｄｔ１２においてユーザＵ１とユーザＵ２とが、円ＣＲ１１の左側部分のいずれかの位置で近接したと推定してもよい。すなわち、情報処理装置１００は、日時ｄｔ１２においてユーザＵ２が、円ＣＲ１１の左側部分のいずれかの位置に位置すると推定してもよい。なお、上記は一例であり、情報処理装置１００は、種々の情報を適宜用いて、推定精度を向上させてもよい。
【０１１６】
〔１−３−２．ユーザのスケジュール情報の利用〕
また、例えば、情報処理装置１００は、ユーザＵ１のスケジュール情報やユーザＵ２のスケジュール情報を用いて、日時ｄｔ１２におけるユーザＵ２の位置の推定精度を向上させてもよい。
【０１１７】
例えば、情報処理装置１００は、ユーザ情報記憶部１２１（図４参照）中に示すユーザＵ２のスケジュール情報ＳＣ２を用いて、日時ｄｔ１２におけるユーザＵ２の位置の推定精度を向上させてもよい。例えば、情報処理装置１００は、日時ｄｔ１１において、ユーザＵ２が位置ＬＣ１０よりも地図ＭＰ１１の左側に位置することを示す予定が含まれる場合、ユーザＵ２が地図ＭＰ１１の左側から右側へ移動していると推定してもよい。そして、情報処理装置１００は、日時ｄｔ１２においてユーザＵ１とユーザＵ２とが、円ＣＲ１１の左側部分のいずれかの位置で近接したと推定してもよい。すなわち、情報処理装置１００は、日時ｄｔ１２においてユーザＵ２が、円ＣＲ１１の左側部分のいずれかの位置に位置すると推定してもよい。
【０１１８】
また、例えば、情報処理装置１００は、日時ｄｔ１２後の日時ｄｔ１３において、ユーザＵ１が位置ＬＣ１０よりも地図ＭＰ１１の左側に位置することを示す予定が含まれる場合、ユーザＵ１が地図ＭＰ１１の右側から左側へ移動していると推定してもよい。そして、情報処理装置１００は、日時ｄｔ１２においてユーザＵ１とユーザＵ２とが、円ＣＲ１１の左側部分のいずれかの位置で近接したと推定してもよい。すなわち、情報処理装置１００は、日時ｄｔ１２においてユーザＵ２が、円ＣＲ１１の左側部分のいずれかの位置に位置すると推定してもよい。なお、上記は一例であり、情報処理装置１００は、種々の情報を適宜用いて、推定精度を向上させてもよい。
【０１１９】
〔１−４．推定用ユーザについて〕
なお、情報処理装置１００は、情報処理に情報を用いる推定用ユーザを選択してもよい。例えば、情報処理装置１００は、複数の推定用ユーザの候補のうち、情報処理に情報を用いる推定用ユーザを選択してもよい。例えば、情報処理装置１００は、情報処理に用いる位置情報を選択してもよい。例えば、情報処理装置１００は、複数の推定用ユーザの候補のうち、情報処理に情報を用いる推定用ユーザを選択し、選択した推定用ユーザの情報を取得してもよい。例えば、情報処理装置１００は、情報処理に用いる位置情報を選択し、取得してもよい。
【０１２０】
〔１−４−１．複数同時近接〕
例えば、情報処理装置１００は、第２日時において対象ユーザが複数ユーザと近接していた場合、その複数ユーザである複数の推定用ユーザの候補のうち、第２日時との時間差が最も小さい日時において位置が検知されたユーザを推定用ユーザとして決定してもよい。例えば、情報処理装置１００は、ある日時（日時ｄｔｘ）において対象ユーザが複数ユーザと近接していた場合、複数ユーザのうち、日時ｄｔｘとの時間差が最も小さい日時において位置が検知されたユーザを他のユーザ（推定用ユーザ）として決定してもよい。
【０１２１】
図１の例では、情報処理装置１００は、日時ｄｔ２においてユーザＵ２が、ユーザＵ１及びユーザＵ５０の２人のユーザと近接していた場合、ユーザＵ１及びユーザＵ５０のうち、日時ｄｔ２との時間差が最も小さい日時において位置が検知されたユーザを推定用ユーザとして決定する。この場合、情報処理装置１００は、ユーザＵ１の位置ＬＣ１が検知された日時ｄｔ１と、ユーザＵ５０の位置（「位置ＬＣ５０」とする）が検知された日時（「日時ｄｔ５０」とする）とを比較し、日時ｄｔ２との時間差が最も小さい日時の方のユーザを推定用ユーザとして決定する。
【０１２２】
例えば、情報処理装置１００は、日時ｄｔ１及び日時ｄｔ２の間の時間差（「時間差ＴＤＳ１」とする）と、日時ｄｔ５０及び日時ｄｔ２の間の時間差（「時間差ＴＤＳ５０」とする）とを比較することにより、ユーザＵ１及びユーザＵ５０のうち、ユーザＵ２の位置推定に用いる他のユーザ（推定用ユーザ）を決定する。例えば、情報処理装置１００は、時間差ＴＤＳ１の方が時間差ＴＤＳ５０よりも小さい場合、日時ｄｔ１に位置ＬＣ１が検知されたユーザＵ１を、ユーザＵ２の位置推定に用いる他のユーザ（推定用ユーザ）に決定する。また、例えば、情報処理装置１００は、時間差ＴＤＳ５０の方が時間差ＴＤＳ１よりも小さい場合、日時ｄｔ５０に位置ＬＣ５０が検知されたユーザＵ５０を、ユーザＵ２の位置推定に用いる他のユーザ（推定用ユーザ）に決定する。また、例えば、情報処理装置１００は、時間差ＴＤＳ１と時間差ＴＤＳ５０とが等しい場合、適宜の方法により、ユーザＵ１及びユーザＵ５０のうち、ユーザＵ２の位置推定に用いる他のユーザ（推定用ユーザ）を決定する。例えば、情報処理装置１００は、時間差ＴＤＳ１と時間差ＴＤＳ５０とが等しい場合、ランダムにユーザＵ１及びユーザＵ５０のうち一方を、ユーザＵ２の位置推定に用いる他のユーザ（推定用ユーザ）に決定する。
【０１２３】
なお、情報処理装置１００は、上記に限らず種々の方法により、複数の候補から、他のユーザ（推定用ユーザ）を決定してもよい。情報処理装置１００は、種々の情報を適宜用いて、複数の候補から、他のユーザ（推定用ユーザ）を決定してもよい。例えば、対象ユーザが複数のユーザ（候補ユーザ）とすれ違い通信（近接通信）を行っている場合、情報処理装置１００は、候補ユーザ（推定用ユーザの候補）から、所定の条件に基づいて推定用ユーザを選択してもよい。例えば、情報処理装置１００は、候補ユーザのうち、候補ユーザ自身の挙動が所定の条件を満たすユーザを推定用ユーザとして選択してもよい。
【０１２４】
例えば、情報処理装置１００は、すれ違い通信（近接通信）後に走り去ったユーザを推定用ユーザとして選択しなくてもよい。例えば、情報処理装置１００は、候補ユーザから、移動速度が所定の閾値以上である等により走り去ったと推定されるユーザを除外してもよい。例えば、情報処理装置１００は、候補ユーザから、走り去ったと推定されるユーザを推定精度の向上に寄与しないユーザとして除外してもよい。
【０１２５】
例えば、情報処理装置１００は、急に立ち止まったり、走ったり不規則な動きをしているユーザを推定用ユーザとして選択しなくてもよい。例えば、情報処理装置１００は、候補ユーザから、位置情報の変化が不規則なユーザを除外してもよい。例えば、情報処理装置１００は、候補ユーザから、位置情報の変化が不規則なユーザを推定精度の向上に寄与しないユーザとして除外してもよい。
【０１２６】
例えば、情報処理装置１００は、上記のような推定精度に関する条件を満たさないユーザが除外された候補ユーザから、推定用ユーザを選択してもよい。例えば、情報処理装置１００は、複数の推定用ユーザの候補（候補ユーザ）のうち、対象ユーザと同行しているユーザを推定用ユーザとして選択してもよい。例えば、情報処理装置１００は、複数の推定用ユーザの候補（候補ユーザ）のうち、所定の期間に立ち止まっているユーザを推定用ユーザとして選択してもよい。例えば、情報処理装置１００は、複数の推定用ユーザの候補（候補ユーザ）のうち、所定の期間に亘って所定の範囲内（例えば５ｍ以内）の位置情報が連続して検知されたユーザを推定用ユーザとして選択してもよい。なお、上記は一例であり、情報処理装置１００は、種々の情報を用いて複数の推定用ユーザの候補（候補ユーザ）から、推定用ユーザを選択してもよい。例えば、情報処理装置１００は、対象ユーザに同行しているユーザや立ち止まっているユーザを、推定精度の向上に寄与する推定用ユーザとして選択してもよい。
【０１２７】
〔１−５．システム構成について〕
なお、上記情報処理を実現するシステム構成については、図２に示す情報処理システム１に限らず種々の態様であってもよい。図２の例では、サーバとしての情報処理装置１００とクライアントとしての端末装置１０とを備える構成であり、情報処理装置１００と端末装置１０とは別体（別装置）であったが、情報処理装置１００と端末装置１０とは一体であってもよい。すなわち、情報処理システムにおいて、ユーザが利用する各端末装置１０が、上述した情報処理を行う情報処理装置１００であってもよい。この場合、情報処理装置１００である端末装置１０が、すれ違い通信時等において他の端末装置１０から位置情報等のコンテキスト情報を取得し、取得した位置情報等のコンテキスト情報に基づいて、情報処理を行ってもよい。このように、各端末装置１０は、サーバ装置を介さずに、端末装置１０間で位置情報等のコンテキスト情報の通信を行ってもよい。例えば、各端末装置１０は、いわゆるＰ２Ｐ（Peer  to  Peer）のような態様により、各端末装置１０間で位置情報等のコンテキスト情報の通信を行ったり、共有を行ったりしてもよい。
【０１２８】
また、情報処理システムは、ユーザが利用する各端末装置１０が上述した情報処理を行う情報処理装置１００であっても、サーバ装置を備えてもよい。この場合、情報処理装置１００である端末装置１０は、情報処理により推定した情報（推定情報）をサーバ装置へ送信したり、情報処理に用いる情報をサーバ装置から取得したりしてもよい。例えば、端末装置１０は、地図情報やフライト情報等の移動経路に関する情報等をサーバ装置から取得したりしてもよい。なお、上記は一例であり、情報処理システムは、どのような構成により実現されてもよい。
【０１２９】
〔２．情報処理装置の構成〕
次に、図３を用いて、実施形態に係る情報処理装置１００の構成について説明する。図３は、実施形態に係る情報処理装置の構成例を示す図である。図３に示すように、情報処理装置１００は、通信部１１０と、記憶部１２０と、制御部１３０とを有する。なお、情報処理装置１００は、情報処理装置１００の管理者等から各種操作を受け付ける入力部（例えば、キーボードやマウス等）や、各種情報を表示するための表示部（例えば、液晶ディスプレイ等）を有してもよい。
【０１３０】
（通信部１１０）
通信部１１０は、例えば、ＮＩＣ（Network  Interface  Card）等によって実現される。そして、通信部１１０は、ネットワークと有線または無線で接続され、例えば情報処理システム１に含まれる端末装置１０との間で情報の送受信を行う。
【０１３１】
（記憶部１２０）
記憶部１２０は、例えば、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部１２０は、図３に示すように、ユーザ情報記憶部１２１と、行動情報記憶部１２２と、近接情報記憶部１２３と、推定情報記憶部１２４と、道路地図情報記憶部１２５とを有する。なお、道路地図情報記憶部１２５は、図示を省略するが、地図ＭＰ１１（図９参照）等の地図情報や、道路ＲＤ１１等のような道路情報等、情報処理に用いる地図や道路に関する各種情報を記憶する。また、道路地図情報記憶部１２５は、情報処理に用いる地図や道路に関する情報であれば、どのような情報を記憶してもよい。
【０１３２】
（ユーザ情報記憶部１２１）
実施形態に係るユーザ情報記憶部１２１は、ユーザに関する各種情報を記憶する。例えば、ユーザ情報記憶部１２１は、ユーザ属性に関する情報（属性情報）を記憶する。図４は、実施形態に係るユーザ情報記憶部の一例を示す図である。図４に示すユーザ情報記憶部１２１は、「ユーザＩＤ」、「年齢」、「性別」、「スケジュール情報」、「歩行速度」、「興味」といった項目が含まれる。
【０１３３】
「ユーザＩＤ」は、ユーザを識別するための識別情報を示す。例えば、ユーザＩＤ「Ｕ１」により識別されるユーザは、図１の例に示したユーザＵ１に対応する。また、「年齢」は、ユーザＩＤにより識別されるユーザの年齢を示す。なお、「年齢」は、例えば３５歳など、ユーザＩＤにより識別されるユーザの具体的な年齢であってもよい。また、「性別」は、ユーザＩＤにより識別されるユーザの性別を示す。
【０１３４】
また、「スケジュール情報」は、ユーザＩＤにより識別されるユーザの行動予定を示すスケジュール情報が記憶される。なお、図４に示す例では、「スケジュール情報」は、「ＳＣ１」といった抽象的な符号を図示するが、スケジュール情報にはユーザの予定の内容や日時（期間）等の種々の情報が記憶される。例えば、「スケジュール情報」には、ユーザの電話会議や旅行等に関する予定を示す情報が記憶される。
【０１３５】
また、「歩行速度」は、ユーザＩＤにより識別されるユーザの平均的な歩行速度が記憶される。なお、図４に示す例では、「歩行速度」は、「ＷＳ１」といった抽象的な符号を図示するが、歩行速度には「５ｋｍ／ｈ（キロメートル毎時）」等の具体的な数値が記憶されてもよい。例えば、情報処理装置１００は、ユーザの行動パターン等からユーザの歩行速度を推定してもよい。
【０１３６】
なお、ユーザに対応する歩行速度が記憶されていない場合、ユーザが属するユーザ属性のユーザの平均的な歩行速度が用いられてもよい。例えば、ユーザＵ２に対応する歩行速度が記憶されていない場合、ユーザＵ２が属するユーザ属性、すなわち２０代女性の平均的な歩行速度が用いられてもよい。
【０１３７】
また、「興味」は、ユーザＩＤにより識別されるユーザの興味を示す。すなわち、「興味」は、ユーザＩＤにより識別されるユーザが関心の高い対象を示す。なお、図４に示す例では、「興味」は、各ユーザに１つずつ図示するが、複数であってもよい。
【０１３８】
例えば、図４に示す例において、ユーザＩＤ「Ｕ１」により識別されるユーザの年齢は、「２０代」であり、性別は、「男性」であることを示す。また、例えば、ユーザＩＤ「Ｕ１」により識別されるユーザは、スケジュール情報が「ＳＣ１」であることを示す。また、例えば、ユーザＩＤ「Ｕ１」により識別されるユーザは、歩行速度が「ＷＳ１」であることを示す。また、例えば、ユーザＩＤ「Ｕ１」により識別されるユーザは、「スポーツ」に興味があることを示す。
【０１３９】
なお、ユーザ情報記憶部１２１は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、ユーザ情報記憶部１２１は、ユーザのデモグラフィック属性に関する情報やサイコグラフィック属性に関する情報を記憶してもよい。例えば、ユーザ情報記憶部１２１は、自宅の位置（住所）、勤務先の位置（住所）、氏名、家族構成、収入、興味、ライフスタイル等の情報を記憶してもよい。まず、図４では、図示を省略するが、ユーザ情報記憶部１２１は、各ユーザが利用する端末装置１０を識別する情報をユーザに対応付けて記憶してもよい。例えば、ユーザ情報記憶部１２１は、ユーザＵ１が利用する端末装置１０−１を識別する情報をユーザＵ１に対応付けて記憶してもよい。
【０１４０】
（行動情報記憶部１２２）
実施形態に係る行動情報記憶部１２２は、ユーザの行動に関する各種情報を記憶する。図５の例では、行動情報記憶部１２２は、ユーザ自身の行動やユーザが利用する端末装置における処理等の種々の情報を記憶する。ここでいうユーザの行動に関する情報には、ユーザ自身の行動やユーザが利用する端末装置における処理等の種々のユーザに関する情報が含まれる。例えば、行動情報記憶部１２２は、ユーザの行動やユーザが利用する端末装置における処理等のユーザのコンテキストに関する各種情報を記憶する。図５は、実施形態に係る行動情報記憶部の一例を示す図である。例えば、行動情報記憶部１２２は、各ユーザの位置や端末装置１０の通信やユーザの行動等の各種のコンテキスト情報を記憶する。図５に示す行動情報記憶部１２２には、「ユーザＩＤ」、「行動ＩＤ」、「日時」、「種別」、「内容」といった項目が含まれる。
【０１４１】
「ユーザＩＤ」は、ユーザを識別するための識別情報を示す。例えば、ユーザＩＤ「Ｕ１」により識別されるユーザは、図１の例に示したユーザＵ１に対応する。また、「行動ＩＤ」は、ユーザの行動を識別する情報を示す。「日時」は、対応するユーザの行動が行われた日時を示す。なお、図５の例では、「ｄｔ１１」等で図示するが、「日時」には、「２０１８年９月３日１８時４１分５８秒」等の具体的な日時が記憶されてもよい。また、「種別」は、対応するユーザの行動の種別に関する情報を示す。また、「内容」は、対応するユーザの行動の具体的な内容を示す。
【０１４２】
例えば、図５に示す例において、ユーザＩＤ「Ｕ１」により識別されるユーザ（ユーザＵ１）は、行動ＩＤ「ＡＣ１１」や行動ＩＤ「ＡＣ１２」や行動ＩＤ「ＡＣ１５」や行動ＩＤ「ＡＣ１６」等により各々識別される行動情報が取得されたことを示す。
【０１４３】
例えば、図５に示す例においてユーザＵ１は、行動ＡＣ１１に示すように、日時ｄｔ１において、種別が位置の行動情報が取得されたことを示す。行動ＡＣ１１は、日時ｄｔ１におけるユーザＵ１の位置が位置「ＬＣ１」であることを示す。図５に示す例では、位置「ＬＣ１」といった抽象的な符号を図示するが、緯度や経度を示す情報であってもよい。また、例えば、位置「ＬＣ１」は、地域名や住所であってもよい。このように、「行動ＡＣ＊（＊は任意の数値）」と記載した場合、その行動は行動ＩＤ「ＡＣ＊」により識別される行動であることを示す。
【０１４４】
また、例えば、図５に示す例においてユーザＵ１は、行動ＡＣ１２に示すように、日時ｄｔ２において、種別が近接通信の行動情報が取得されたことを示す。行動ＡＣ１２は、日時ｄｔ２において、ユーザＵ１が利用する端末装置１０−１がユーザＵ２が利用する端末装置１０−２と近接通信を行ったこと、すなわちユーザＵ１がユーザＵ２と近傍に位置したことを示す。例えば、行動ＡＣ１２は、日時ｄｔ２において、ユーザＵ１がユーザＵ２とすれ違ったことを示す。
【０１４５】
また、例えば、図５に示す例においてユーザＵ２は、行動ＡＣ２１に示すように、日時ｄｔ２において、種別が近接通信の行動情報が取得されたことを示す。行動ＡＣ２１は、日時ｄｔ２において、ユーザＵ２が利用する端末装置１０−２がユーザＵ１が利用する端末装置１０−１と近接通信を行ったこと、すなわちユーザＵ２がユーザＵ１と近傍に位置したことを示す。
【０１４６】
また、例えば、ユーザＵ２の行動ＡＣ２２は、推定ＥＡＣ１により推定された位置に関する情報を示す。行動ＡＣ２２は、日時ｄｔ２におけるユーザＵ２の位置が、円ＣＲ１上のいずれかであると推定されたことを示す。
【０１４７】
なお、行動情報記憶部１２２は、上記に限らず、目的に応じて種々の情報を記憶してもよい。また、図５では、ユーザＩＤごとに行動情報が行動情報記憶部１２２に記憶される場合を示したが、行動情報は、ユーザＩＤごとに限らず、例えば時刻順に記憶されてもよい。
【０１４８】
（近接情報記憶部１２３）
実施形態に係る近接情報記憶部１２３は、ユーザの近接に関する各種情報を記憶する。図６は、実施形態に係る近接情報記憶部の一例を示す図である。図６に示す近接情報記憶部１２３は、「近接ＩＤ」、「ユーザＩＤ」、「日時」、「行動ＩＤ」、「行動概要」といった項目が含まれる。
【０１４９】
「近接ＩＤ」は、近接を識別するための識別情報を示す。「ユーザＩＤ」は、近接ＩＤにより識別される近接を行ったユーザとして抽出されたユーザを識別するための識別情報を示す。例えば、ユーザＵ１及びユーザＵ２は、図１の例に示したユーザＵ１及びユーザＵ２に対応する。なお、近接を行うユーザの数が３人以上であってもよい。
【０１５０】
「日時」は、対応するユーザが近接していた日時を示す。また、「行動ＩＤ」は、ユーザの近接の推定（補足）に用いられたユーザの行動を識別する情報を示す。例えば、行動ＡＣ１２及び行動ＡＣ２１は、図１の例に示したステップＳ１２における端末装置１０−１及び端末装置１０−２の近接通信に関する行動に対応する。また、「行動概要」は、対応するユーザの近接の補足に用いられた情報の概要を示す。
【０１５１】
例えば、図６に示す例において、近接ＩＤ「ＣＣ１」により識別される近接情報（近接情報ＣＣ１）は、ユーザＵ１及びユーザＵ２が近接していることを示す。また、近接情報ＣＣ１は、ユーザＵ１及びユーザＵ２が日時ｄｔ２において近接したことを示す。また、近接情報ＣＣ１は、端末装置１０の近接通信により捕捉されたことを示す。
【０１５２】
なお、近接情報記憶部１２３は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
【０１５３】
（推定情報記憶部１２４）
実施形態に係る推定情報記憶部１２４は、推定された各種情報を記憶する。図７は、実施形態に係る推定情報記憶部の一例を示す図である。図７に示す推定情報記憶部１２４は、実施形態に係る推定情報記憶部の一例を示す図である。推定情報記憶部１２４は、推定された情報（推定情報）を記憶する。例えば、推定情報記憶部１２４は、各ユーザの位置や端末装置１０の通信やユーザの行動等の各種の推定情報を記憶する。図７に示す推定情報記憶部１２４には、「ユーザＩＤ」、「推定ＩＤ」、「推定情報」といった項目が含まれる。
【０１５４】
「ユーザＩＤ」は、ユーザを識別するための識別情報を示す。例えば、ユーザＩＤ「Ｕ１」により識別されるユーザは、図１の例に示したユーザＵ１に対応する。また、「推定ＩＤ」は、推定処理（単に「推定」ともいう）を識別する情報を示す。 
【０１５５】
「推定情報」には、対応する推定において推定された位置が記憶される。例えば、「推定情報」には、対応する推定において推定された位置の組合せが記憶される。「推定情報」には、「候補ＩＤ」や「推定＃１」や「推定＃２」といった項目が含まれる。
【０１５６】
「候補ＩＤ」は、対応する推定において推定された位置の候補を識別する情報を示す。なお、図７の例では、「推定＃１」、「推定＃２」のみを図示するが、「推定＃３」や「推定＃４」等、対応する推定における一連の位置の数に応じた項目が含まれるものとする。「推定＃１」や「推定＃２」には、「日時」、「位置」といった項目が含まれる。「日時」は、推定される位置に対応する日時を示す。また、「位置」は、対応する日時におけるユーザの推定位置に関する情報を示す。
【０１５７】
例えば、図７に示す例において、ユーザＵ２は、推定ＩＤ「ＥＡＣ１」により識別される推定（推定ＥＡＣ１）が行われたことを示す。図７の例では、ユーザＵ２について、推定ＥＡＣ１により、候補ＩＤ「ＣＤ１」〜「ＣＤ４」により識別される位置の候補（候補ＣＤ１〜ＣＤ４）が推定されたことを示す。候補ＣＤ１〜ＣＤ４は、図１の例に示すユーザＵ２の日時ｄｔ２及び日時ｄｔ４の２つの日時における推定される位置の組合せを示す。例えば、候補ＣＤ１は、ユーザＵ２について、日時ｄｔ２における位置ＬＣ１−１と、日時ｄｔ４における位置ＬＣ２−１との組合せが推定されることを示す。例えば、候補ＣＤ２は、ユーザＵ２について、日時ｄｔ２における位置ＬＣ１−２と、日時ｄｔ４における位置ＬＣ２−２との組合せが推定されることを示す。
【０１５８】
なお、推定情報記憶部１２４は、上記に限らず、目的に応じて種々の情報を記憶してもよい。また、図７では、ユーザＩＤごとに推定情報が推定情報記憶部１２４に記憶される場合を示したが、推定情報は、ユーザＩＤごとに限らず、例えば時刻順に記憶されてもよい。
【０１５９】
（制御部１３０）
図３の説明に戻って、制御部１３０は、コントローラ（controller）であり、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、情報処理装置１００内部の記憶装置に記憶されている各種プログラム（情報処理プログラムの一例に相当）がＲＡＭを作業領域として実行されることにより実現される。また、制御部１３０は、コントローラであり、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現される。
【０１６０】
図３に示すように、制御部１３０は、取得部１３１と、決定部１３２と、推定部１３３と、提供部１３４とを有し、以下に説明する情報処理の機能や作用を実現または実行する。
【０１６１】
（取得部１３１）
取得部１３１は、各種情報を取得する。取得部１３１は、端末装置１０等の外部装置から各種情報を取得する。取得部１３１は、記憶部１２０から各種情報を取得する。例えば、取得部１３１は、ユーザ情報記憶部１２１や行動情報記憶部１２２や近接情報記憶部１２３や推定情報記憶部１２４や道路地図情報記憶部１２５から各種情報を取得する。
【０１６２】
例えば、取得部１３１は、端末装置１０から各種情報を取得する。例えば、取得部１３１は、端末装置１０からユーザのコンテキスト情報を取得する。例えば、取得部１３１は、端末装置１０から他の端末装置１０との通信に関する情報を取得する。例えば、取得部１３１は、端末装置１０から他の端末装置１０と近接通信を行ったことを示す近接情報（コンテキスト情報）を取得する。
【０１６３】
取得部１３１は、位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、対象ユーザ及び他のユーザの近接を示す近接情報とを取得する。取得部１３１は、第１日時における他のユーザの位置を示す位置情報を取得する。取得部１３１は、第２日時における対象ユーザ及び他のユーザの近接を示す近接情報を取得する。
【０１６４】
取得部１３１は、決定部１３２により決定された他のユーザの位置を示す位置情報と、対象ユーザ及び他のユーザの近接を示す近接情報とを取得する。取得部１３１は、他のユーザの移動速度に関する速度情報を取得する。
【０１６５】
取得部１３１は、対象ユーザ及び他のユーザ以外の第３ユーザの位置を示す第３位置情報と、対象ユーザ及び第３ユーザの近接を示す第３近接情報とを取得する。取得部１３１は、第３日時における第３ユーザの位置を示す位置情報を取得する。取得部１３１は、第４日時における対象ユーザ及び第３ユーザの近接を示す第３近接情報を取得する。取得部１３１は、第３ユーザの移動速度に関する第３速度情報を取得する。取得部１３１は、対象ユーザの移動速度に関する対象速度情報を取得する。取得部１３１は、所定の日時における対象ユーザの位置を示す対象位置情報を取得する。
【０１６６】
図１の例では、取得部１３１は、日時ｄｔ１におけるユーザＵ１の位置情報を取得する。取得部１３１は、日時ｄｔ２において、ユーザＵ１とユーザＵ２とが近接したことを示す近接情報を取得する。例えば、取得部１３１は、日時ｄｔ２において、ユーザＵ１とユーザＵ２とがすれ違ったことを示す近接情報を取得する。取得部１３１は、日時ｄｔ３におけるユーザＵ３の位置情報を取得する。取得部１３１は、日時ｄｔ４において、ユーザＵ３とユーザＵ２とが近接したことを示す近接情報を取得する。例えば、取得部１３１は、日時ｄｔ４において、ユーザＵ３とユーザＵ２とがすれ違ったことを示す近接情報を取得する。
【０１６７】
（決定部１３２）
決定部１３２は、各種情報を決定する。決定部１３２は、各種情報を判定する。決定部１３２は、各種情報を生成する。決定部１３２は、記憶部１２０に記憶された各種情報に基づいて、種々の情報を決定する。決定部１３２は、記憶部１２０に記憶された各種情報に基づいて、種々の情報を判定する。決定部１３２は、記憶部１２０に記憶された各種情報に基づいて、種々の情報を生成する。決定部１３２は、ユーザ情報記憶部１２１や行動情報記憶部１２２や近接情報記憶部１２３や推定情報記憶部１２４や道路地図情報記憶部１２５等に基づいて、各種情報を決定する。決定部１３２は、ユーザ情報記憶部１２１や行動情報記憶部１２２や近接情報記憶部１２３や推定情報記憶部１２４や道路地図情報記憶部１２５等に基づいて、各種情報を判定する。決定部１３２は、ユーザ情報記憶部１２１や行動情報記憶部１２２や近接情報記憶部１２３や推定情報記憶部１２４や道路地図情報記憶部１２５等に基づいて、各種情報を生成する。決定部１３２は、推定部１３３により推定された各種情報に基づいて、種々の情報を決定する。決定部１３２は、取得部１３１により取得された各種情報に基づいて、種々の情報を決定する。決定部１３２は、取得部１３１により取得された各種情報に基づいて、種々の情報を判定する。決定部１３２は、取得部１３１により取得された各種情報に基づいて、種々の情報を生成する。
【０１６８】
決定部１３２は、第２日時において対象ユーザが複数ユーザと近接していた場合、複数ユーザのうち、第２日時との時間差が最も小さい日時において位置が検知されたユーザを他のユーザとして、決定する。例えば、決定部１３２は、推定部１３３により推定されたユーザＵ２の位置に基づいてユーザが利用する端末装置１０に提供するコンテンツを決定する。図１の例では、決定部１３２は、は、ユーザＵ２の位置から所定の範囲内に位置する店舗に関する広告を、ユーザＵ２が利用する端末装置１０−２に配信するコンテンツに決定する。
【０１６９】
（推定部１３３）
推定部１３３は、各種情報を推定する。推定部１３３は、各種情報を特定する。推定部１３３は、各種情報を抽出する。推定部１３３は、各種情報を算出する。推定部１３３は、記憶部１２０に記憶された各種情報に基づいて、種々の情報を推定する。推定部１３３は、記憶部１２０に記憶された各種情報に基づいて、種々の情報を特定する。推定部１３３は、記憶部１２０に記憶された各種情報に基づいて、種々の情報を抽出する。推定部１３３は、記憶部１２０に記憶された各種情報に基づいて、種々の情報を算出する。推定部１３３は、ユーザ情報記憶部１２１や行動情報記憶部１２２や近接情報記憶部１２３や推定情報記憶部１２４や道路地図情報記憶部１２５等に基づいて、各種情報を推定する。推定部１３３は、ユーザ情報記憶部１２１や行動情報記憶部１２２や近接情報記憶部１２３や推定情報記憶部１２４や道路地図情報記憶部１２５等に基づいて、各種情報を特定する。推定部１３３は、ユーザ情報記憶部１２１や行動情報記憶部１２２や近接情報記憶部１２３や推定情報記憶部１２４や道路地図情報記憶部１２５等に基づいて、各種情報を抽出する。推定部１３３は、取得部１３１により取得された各種情報に基づいて、種々の情報を推定する。推定部１３３は、取得部１３１により取得された各種情報に基づいて、種々の情報を特定する。推定部１３３は、取得部１３１により取得された各種情報に基づいて、種々の情報を抽出する。例えば、推定部１３３は、取得部１３１により取得された情報を用いて、ユーザのコンテキストを推定する。
【０１７０】
推定部１３３は、取得部１３１により取得された位置情報と近接情報とに基づいて、対象ユーザの位置を推定する。推定部１３３は、第１日時における他のユーザの位置に基づいて、第１日時とは異なる第２日時における対象ユーザの位置を推定する。推定部１３３は、第１日時における他のユーザの位置に基づいて、対象ユーザ及び他のユーザが近接した第２日時における対象ユーザの位置を推定する。
【０１７１】
推定部１３３は、速度情報に基づいて、対象ユーザの位置を推定する。推定部１３３は、位置情報と速度情報とに基づいて、位置情報が示す位置から、対象ユーザ及び他のユーザが近接した位置までの距離を推定し、推定した距離を用いて対象ユーザの位置を推定する。
【０１７２】
推定部１３３は、位置情報、近接情報、第３位置情報、及び第３近接情報に基づいて、対象ユーザの位置を推定する。推定部１３３は、第３日時における第３ユーザの位置に基づいて、第３日時とは異なる第４日時における対象ユーザの位置を推定する。推定部１３３は、第３日時における第３ユーザの位置に基づいて、対象ユーザ及び第３ユーザが近接した第４日時における対象ユーザの位置を推定する。
【０１７３】
推定部１３３は、第３速度情報に基づいて、対象ユーザの位置を推定する。推定部１３３は、第３位置情報と第３速度情報とに基づいて、第３位置情報が示す位置から、対象ユーザ及び第３ユーザが近接した位置までの距離である第３距離を推定し、推定した第３距離を用いて対象ユーザの位置を推定する。推定部１３３は、対象速度情報に基づいて、対象ユーザの位置を推定する。推定部１３３は、対象位置情報に基づいて、所定の日時とは異なる日時における対象ユーザの位置を推定する。
【０１７４】
図１の例では、推定部１３３は、日時ｄｔ１におけるユーザＵ１の位置ＬＣ２１と、日時ｄｔ２においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報とに基づいて、日時ｄｔ２におけるユーザＵ２の位置を推定する。例えば、推定部１３３は、日時ｄｔ１におけるユーザＵ１の位置ＬＣ２１と、日時ｄｔ２においてユーザＵ１とユーザＵ２とが近接したことを示す近接情報とに基づいて、ユーザＵ２がユーザＵ１と近接通信を行った位置を推定する。
【０１７５】
推定部１３３は、日時ｄｔ３におけるユーザＵ３の位置ＬＣ２と、日時ｄｔ４においてユーザＵ３とユーザＵ２とが近接したことを示す近接情報とに基づいて、日時ｄｔ４におけるユーザＵ２の位置を推定する。例えば、推定部１３３は、日時ｄｔ３におけるユーザＵ３の位置ＬＣ２と、日時ｄｔ４においてユーザＵ３とユーザＵ２とが近接したことを示す近接情報とに基づいて、ユーザＵ３がユーザＵ２と近接通信を行った位置を推定する。
【０１７６】
図１の例では、推定部１３３は、ユーザＵ２の位置の推定対象となる日時ｄｔ２と日時ｄｔ４との間の経過時間と、ユーザＵ２の歩行速度に基づいて、第１円ＣＲ１におけるユーザＵ２の位置や第２円ＣＲ２におけるユーザＵ２の位置を絞り込む。例えば、推定部１３３は、日時ｄｔ２と日時ｄｔ４との間の経過時間において、対象ユーザであるユーザＵ２が移動距離に基づいて、第１円ＣＲ１におけるユーザＵ２の位置や第２円ＣＲ２におけるユーザＵ２の位置を絞り込む。
【０１７７】
推定部１３３は、日時ｄｔ２と日時ｄｔ４との間の経過時間と、ユーザＵ２の歩行速度ＷＳ２とによりことにより、日時ｄｔ２と日時ｄｔ４との間におけるユーザＵ２の移動距離を推定（算出）する。例えば、推定部１３３は、上記式（１）に示す条件（抽出条件）を満たすような、第１円ＣＲ１上の地点ｒ１と第２円ＣＲ２上の地点ｒ２との組合せを抽出する。
【０１７８】
例えば、推定部１３３は、地点ｒ１と地点ｒ２との間の距離が２．５ｋｍから所定の範囲（例えば±０．１ｋｍ等）内である場合、その地点ｒ１と地点ｒ２との組合せを推定位置の候補として抽出してもよい。例えば、推定部１３３は、地点ｒ１と地点ｒ２との間の距離が２．５ｋｍに一致する場合、その地点ｒ１と地点ｒ２との組合せを推定位置の候補として抽出してもよい。
【０１７９】
推定部１３３は、抽出条件を満たす第１円ＣＲ１上の地点ｒ１と、第２円ＣＲ２上の地点ｒ２との組合せを抽出する。例えば、推定部１３３は、第１円ＣＲ１上の地点ｒ１に対応する位置ＬＣ１−１と、第２円ＣＲ２上の地点ｒ２に対応する位置ＬＣ２−１とを、抽出条件を満たす組合せとして抽出する。すなわち、推定部１３３は、位置ＬＣ１−１と位置ＬＣ２−１との組合せをユーザＵ２の推定位置の候補として抽出する。
【０１８０】
（提供部１３４）
提供部１３４は、各種情報を提供する。提供部１３４は、外部の情報処理装置へ各種情報を提供する。提供部１３４は、端末装置１０等の外部の情報処理装置に各種情報を提供する。提供部１３４は、端末装置１０に各種情報を送信する。提供部１３４は、端末装置１０に各種情報を配信する。提供部１３４は、取得部１３１により取得された各種情報に基づいて、種々の情報を提供する。提供部１３４は、決定部１３２により決定された各種情報に基づいて、種々の情報を提供する。提供部１３４は、推定部１３３により推定された各種情報に基づいて、種々の情報を提供する。
【０１８１】
提供部１３４は、推定部１３３により推定された対象ユーザの位置に関する情報を用いたサービスを提供する。提供部１３４は、推定部１３３により推定された対象ユーザの位置に関する情報を用いた情報提供サービスを行う。図１の例では、提供部１３４は、推定部１３３により推定されたユーザＵ２の位置に応じて、ユーザＵ２が利用する端末装置１０−２に広告等のコンテンツを提供する。例えば、提供部１３４は、推定部１３３により推定されたユーザＵ２の位置に基づいて決定部１３２により決定された広告を、ユーザＵ２が利用する端末装置１０−２に提供する。例えば、提供部１３４は、ユーザＵ２の位置から所定の範囲内に位置する店舗に関する広告を、ユーザＵ２が利用する端末装置１０−２に配信する。
【０１８２】
〔３．情報処理のフロー〕
ここで、図８を用いて、実施形態に係る情報処理装置１００による情報処理の手順について説明する。図８は、実施形態に係る情報処理の一例を示すフローチャートである。
【０１８３】
図８に示すように、情報処理装置１００は、位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報を取得する（ステップＳ１０１）。また、情報処理装置１００は、対象ユーザ及び他のユーザの近接を示す近接情報を取得する（ステップＳ１０２）。
【０１８４】
そして、情報処理装置１００は、位置情報と近接情報とに基づいて、対象ユーザの位置を推定する（ステップＳ１０３）。そして、情報処理装置１００は、対象ユーザの位置に基づくサービスを提供する（ステップＳ１０４）。例えば、情報処理装置１００は、推定したユーザＵ２の位置に応じて、ユーザＵ２が利用する端末装置１０−２に広告等のコンテンツを提供する。
【０１８５】
〔４．効果〕
上述してきたように、実施形態に係る情報処理装置１００は、取得部１３１と、推定部１３３とを有する。取得部１３１は、位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、対象ユーザ及び他のユーザの近接を示す近接情報とを取得する。推定部１３３は、取得部１３１により取得された位置情報と近接情報とに基づいて、対象ユーザの位置を推定する。
【０１８６】
このように、実施形態に係る情報処理装置１００は、位置の推定対象となるユーザである対象ユーザ以外の他のユーザの位置を示す位置情報と、対象ユーザ及び他のユーザの近接を示す近接情報とに基づいて、対象ユーザの位置を推定することにより、ユーザの位置を適切に推定することができる。
【０１８７】
また、実施形態に係る情報処理装置１００において、取得部１３１は、第１日時における他のユーザの位置を示す位置情報を取得する。推定部１３３は、第１日時における他のユーザの位置に基づいて、第１日時とは異なる第２日時における対象ユーザの位置を推定する。
【０１８８】
このように、実施形態に係る情報処理装置１００は、第１日時における他のユーザの位置に基づいて、第１日時とは異なる第２日時における対象ユーザの位置を推定することにより、ユーザの位置を適切に推定することができる。
【０１８９】
また、実施形態に係る情報処理装置１００において、取得部１３１は、第２日時における対象ユーザ及び他のユーザの近接を示す近接情報を取得する。推定部１３３は、第１日時における他のユーザの位置に基づいて、対象ユーザ及び他のユーザが近接した第２日時における対象ユーザの位置を推定する。
【０１９０】
このように、実施形態に係る情報処理装置１００は、第２日時における対象ユーザ及び他のユーザの近接を示す近接情報に基づいて、対象ユーザ及び他のユーザが近接した第２日時における対象ユーザの位置を推定することにより、ユーザの位置を適切に推定することができる。
【０１９１】
また、実施形態に係る情報処理装置１００は、決定部１３２を有する。決定部１３２は、第２日時において対象ユーザが複数ユーザと近接していた場合、複数ユーザのうち、第２日時との時間差が最も小さい日時において位置が検知されたユーザを他のユーザとして、決定する。取得部１３１は、決定部１３２により決定された他のユーザの位置を示す位置情報と、対象ユーザ及び他のユーザの近接を示す近接情報とを取得する。
【０１９２】
このように、実施形態に係る情報処理装置１００は、第２日時において対象ユーザが複数ユーザと近接していた場合、複数ユーザのうち、第２日時との時間差が最も小さい日時において位置が検知されたユーザを他のユーザとして決定し、決定した他のユーザの位置を示す位置情報と、対象ユーザ及び他のユーザの近接を示す近接情報とを取得する。これにより、情報処理装置１００は、複数ユーザのうち最も推定精度が高いと推定されるユーザの情報を用いることができるため、ユーザの位置を適切に推定することができる。
【０１９３】
また、実施形態に係る情報処理装置１００において、取得部１３１は、他のユーザの移動速度に関する速度情報を取得する。推定部１３３は、速度情報に基づいて、対象ユーザの位置を推定する。
【０１９４】
このように、実施形態に係る情報処理装置１００は、他のユーザの移動速度に関する速度情報に基づいて、対象ユーザの位置を推定することにより、ユーザの位置を適切に推定することができる。
【０１９５】
また、実施形態に係る情報処理装置１００において、推定部１３３は、位置情報と速度情報とに基づいて、位置情報が示す位置から、対象ユーザ及び他のユーザが近接した位置までの距離を推定し、推定した距離を用いて対象ユーザの位置を推定する。
【０１９６】
このように、実施形態に係る情報処理装置１００は、位置情報と速度情報とに基づいて、位置情報が示す位置から、対象ユーザ及び他のユーザが近接した位置までの距離を推定し、推定した距離を用いて対象ユーザの位置を推定することにより、ユーザの位置を適切に推定することができる。
【０１９７】
また、実施形態に係る情報処理装置１００において、取得部１３１は、対象ユーザ及び他のユーザ以外の第３ユーザの位置を示す第３位置情報と、対象ユーザ及び第３ユーザの近接を示す第３近接情報とを取得する。推定部１３３は、位置情報、近接情報、第３位置情報、及び第３近接情報に基づいて、対象ユーザの位置を推定する。
【０１９８】
このように、実施形態に係る情報処理装置１００は、対象ユーザ及び他のユーザ以外の第３ユーザの位置を示す第３位置情報と、対象ユーザ及び第３ユーザの近接を示す第３近接情報をさらに用いて、対象ユーザの位置を推定することにより、より精度よくユーザの位置を適切に推定することができる。
【０１９９】
また、実施形態に係る情報処理装置１００において、取得部１３１は、第３日時における第３ユーザの位置を示す位置情報を取得する。推定部１３３は、第３日時における第３ユーザの位置に基づいて、第３日時とは異なる第４日時における対象ユーザの位置を推定する。
【０２００】
このように、実施形態に係る情報処理装置１００は、第３日時における第３ユーザの位置に基づいて、第３日時とは異なる第４日時における対象ユーザの位置を推定することにより、より精度よくユーザの位置を適切に推定することができる。
【０２０１】
また、実施形態に係る情報処理装置１００において、取得部１３１は、第４日時における対象ユーザ及び第３ユーザの近接を示す第３近接情報を取得する。推定部１３３は、第３日時における第３ユーザの位置に基づいて、対象ユーザ及び第３ユーザが近接した第４日時における対象ユーザの位置を推定する。
【０２０２】
このように、実施形態に係る情報処理装置１００は、第４日時における対象ユーザ及び第３ユーザの近接を示す第３近接情報に基づいて、対象ユーザ及び第３ユーザが近接した第４日時における対象ユーザの位置を推定することにより、より精度よくユーザの位置を適切に推定することができる。
【０２０３】
また、実施形態に係る情報処理装置１００において、取得部１３１は、第３ユーザの移動速度に関する第３速度情報を取得する。推定部１３３は、第３速度情報に基づいて、対象ユーザの位置を推定する。
【０２０４】
このように、実施形態に係る情報処理装置１００は、第３ユーザの移動速度に関する第３速度情報に基づいて、対象ユーザの位置を推定することにより、より精度よくユーザの位置を適切に推定することができる。
【０２０５】
また、実施形態に係る情報処理装置１００において、推定部１３３は、第３位置情報と第３速度情報とに基づいて、第３位置情報が示す位置から、対象ユーザ及び第３ユーザが近接した位置までの距離である第３距離を推定し、推定した第３距離を用いて対象ユーザの位置を推定する。
【０２０６】
このように、実施形態に係る情報処理装置１００は、第３位置情報と第３速度情報とに基づいて、第３位置情報が示す位置から、対象ユーザ及び第３ユーザが近接した位置までの距離である第３距離を推定し、推定した第３距離を用いて対象ユーザの位置を推定することにより、より精度よくユーザの位置を適切に推定することができる。
【０２０７】
また、実施形態に係る情報処理装置１００において、取得部１３１は、対象ユーザの移動速度に関する対象速度情報を取得する。推定部１３３は、対象速度情報に基づいて、対象ユーザの位置を推定する。
【０２０８】
このように、実施形態に係る情報処理装置１００は、対象ユーザの移動速度に関する対象速度情報に基づいて、対象ユーザの位置を推定することにより、より精度よくユーザの位置を適切に推定することができる。
【０２０９】
また、実施形態に係る情報処理装置１００において、取得部１３１は、所定の日時における対象ユーザの位置を示す対象位置情報を取得する。推定部１３３は、対象位置情報に基づいて、所定の日時とは異なる日時における対象ユーザの位置を推定する。
【０２１０】
このように、実施形態に係る情報処理装置１００は、所定の日時における対象ユーザの位置を示す対象位置情報に基づいて、所定の日時とは異なる日時における対象ユーザの位置を推定することにより、より精度よくユーザの位置を適切に推定することができる。
【０２１１】
また、実施形態に係る情報処理装置１００は、提供部１３４を有する。提供部１３４は、推定部１３３により推定された対象ユーザの位置に関する情報を用いたサービスを提供する。
【０２１２】
このように、実施形態に係る情報処理装置１００は、推定した対象ユーザの位置に関する情報を用いたサービスを提供することにより、ユーザの位置に応じた適切なサービスを提供することができる。
【０２１３】
〔５．ハードウェア構成〕
上述してきた実施形態に係る情報処理装置１００は、例えば図１２に示すような構成のコンピュータ１０００によって実現される。図１２は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ１０００は、ＣＰＵ１１００、ＲＡＭ１２００、ＲＯＭ１３００、ＨＤＤ（Hard  Disk  Drive）１４００、通信インターフェイス（Ｉ／Ｆ）１５００、入出力インターフェイス（Ｉ／Ｆ）１６００、及びメディアインターフェイス（Ｉ／Ｆ）１７００を有する。
【０２１４】
ＣＰＵ１１００は、ＲＯＭ１３００またはＨＤＤ１４００に格納されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ１３００は、コンピュータ１０００の起動時にＣＰＵ１１００によって実行されるブートプログラムや、コンピュータ１０００のハードウェアに依存するプログラム等を格納する。
【０２１５】
ＨＤＤ１４００は、ＣＰＵ１１００によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス１５００は、ネットワークＮを介して他の機器からデータを受信してＣＰＵ１１００へ送り、ＣＰＵ１１００が生成したデータをネットワークＮを介して他の機器へ提供する。
【０２１６】
ＣＰＵ１１００は、入出力インターフェイス１６００を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。ＣＰＵ１１００は、入出力インターフェイス１６００を介して、入力装置からデータを取得する。また、ＣＰＵ１１００は、生成したデータを入出力インターフェイス１６００を介して出力装置へ出力する。
【０２１７】
メディアインターフェイス１７００は、記録媒体１８００に格納されたプログラムまたはデータを読み取り、ＲＡＭ１２００を介してＣＰＵ１１００に提供する。ＣＰＵ１１００は、かかるプログラムを、メディアインターフェイス１７００を介して記録媒体１８００からＲＡＭ１２００上にロードし、ロードしたプログラムを実行する。記録媒体１８００は、例えばＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【０２１８】
例えば、コンピュータ１０００が実施形態に係る情報処理装置１００として機能する場合、コンピュータ１０００のＣＰＵ１１００は、ＲＡＭ１２００上にロードされたプログラムを実行することにより、制御部１３０の機能を実現する。コンピュータ１０００のＣＰＵ１１００は、これらのプログラムを記録媒体１８００から読み取って実行するが、他の例として、他の装置からネットワークＮを介してこれらのプログラムを取得してもよい。
【０２１９】
以上、本願の実施形態を図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【０２２０】
〔６．その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に生成することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【０２２１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０２２２】
また、上述してきた実施形態に記載された各処理は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【０２２３】
また、上述してきた「部（section、module、unit）」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
【符号の説明】
【０２２４】
１      情報処理システム
１００  情報処理装置
１２１  ユーザ情報記憶部
１２２  行動情報記憶部
１２３  近接情報記憶部
１２４  推定情報記憶部
１２５  道路地図情報記憶部
１３０  制御部
１３１  取得部
１３２  決定部
１３３  推定部
１３４  提供部
１０    端末装置
Ｎ      ネットワーク
【図１】
2020046369.tif 000004
【図２】
2020046369.tif 000005
【図３】
2020046369.tif 000006
【図４】
2020046369.tif 000007
【図５】
2020046369.tif 000008
【図６】
2020046369.tif 000009
【図７】
2020046369.tif 000010
【図８】
2020046369.tif 000011
【図９】
2020046369.tif 000012
【図１０】
2020046369.tif 000013
【図１１】
2020046369.tif 000014
【図１２】
2020046369.tif 000015