(57)【要約】      （修正有）【課題】発信機からの信号の受信の前後における端末の移動が滞留を含む場合であっても、位置推定精度の劣化を防止する。【解決手段】位置推定装置は、取得部と位置推定部とを備える。取得部は、端末が信号を受信した時刻と、受信信号強度とを取得し、受信時刻よりも前の第１時刻において第１地点で取得した第１位置時刻情報と、受信時刻よりも後の第２時刻において第２地点で取得した第２位置時刻情報とを取得する。位置推定部は、第１位置時刻情報および第２位置時刻情報より、端末の第１地点と第２地点の間の平均移動速度を算出し、平均移動速度が所定値以下で且つ第１地点と第２地点との間の距離が所定の距離以上の場合に、第１時刻と受信時刻との間の第１の時間間隔と、受信時刻と第２時刻との間の第２の時間間隔のうち少なくとも一方に対し補正を行い、補正後の少なくとも一方の時間間隔に基づき、受信時刻における端末の位置と、発信機の位置推定を行う。【選択図】図１０
2019158608.tif 000002
【特許請求の範囲】
【請求項１】
端末が発信機からの信号を受信した受信時刻と、前記端末が受信した前記信号の強度と、前記端末が前記受信時刻よりも前の第１の時刻において第１の地点で取得した第１の位置時刻情報と、前記端末が前記受信時刻よりも後の第２の時刻において第２の地点で取得した第２の位置時刻情報と、を取得する取得部と、
前記第１の位置時刻情報および前記第２の位置時刻情報より、前記端末の前記第１の地点と前記第２の地点の間の平均移動速度を算出し、前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離以上である場合に、前記第１の時刻と前記受信時刻との間の第１の時間間隔と、前記受信時刻と前記第２の時刻との間の第２の時間間隔のうちの少なくとも一方に対し補正を行い、該補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行い、該推定に基づいて前記発信機の位置の推定を行う位置推定部と、
を備えることを特徴とする位置推定装置。
【請求項２】
前記位置推定部は、前記補正を前記第２の時間間隔に対し行うことを特徴とする請求項１に記載の位置推定装置。
【請求項３】
前記位置推定部は、
前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離未満である場合に、前記補正を行い、該補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行う、
ことを特徴とする請求項１又は２に記載の位置推定装置。
【請求項４】
前記位置推定部は、
前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離未満である場合には、前記補正を行わず、前記第１の時間間隔と前記第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行う、
ことを特徴とする請求項１又は２に記載の位置推定装置。
【請求項５】
前記位置推定部は、
前記補正を行う場合には、前記補正の後の第１の時刻と第２の時刻のうちの少なくとも一方を用いて線形補間を行うことにより前記受信時刻における前記端末の位置の推定を行い、
前記補正を行わない場合には、前記第１の時刻と前記第２の時刻のうちの少なくとも一方を用いて線形補間を行うことにより前記受信時刻における前記端末の位置の推定を行う、
ことを特徴とする請求項１から４のいずれか１項に記載の位置推定装置。
【請求項６】
前記位置推定部は、
前記補正を行う場合には、前記補正の後の第１の時間間隔と第２の時間間隔のうち、より短い時間間隔に基づき前記受信時刻における前記端末の位置の推定を行い、
前記補正を行わない場合には、前記第１の時間間隔と前記第２の時間間隔のうち、より短い時間間隔に基づき前記受信時刻における前記端末の位置の推定を行う、
ことを特徴とする請求項１から５のいずれか１項に記載の位置推定装置。
【請求項７】
前記位置推定部は、
推定された前記端末の位置の座標に重みを付与して前記発信機の位置の座標を算出し、
前記重みは、
前記位置推定部により前記補正が行われる場合には、前記補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方を用いて算出され、
前記位置推定部により前記補正が行われない場合には、前記第１の時間間隔と前記第２の時間間隔のうちの少なくとも一方を用いて算出される、
ことを特徴とする請求項１から６のいずれか１項に記載の位置推定装置。
【請求項８】
前記重みの算出には、さらに、前記信号の強度と、前記第１の地点と前記第２の地点との間の距離のうちの少なくとも１つが用いられることを特徴とする請求項７に記載の位置推定装置。
【請求項９】
前記位置推定装置は、さらに、
前記発信機の推定位置と、前記発信機の位置の推定に用いられた前記端末の推定位置との間の差分距離を算出し、
前記差分距離と前記重みとに基づいて誤りスコアを算出し、前記誤りスコアが閾値より大きい場合に、前記信号が前記発信機から発信されたものではないと判定する誤り判定部、
を備えることを特徴とする請求項７又は８に記載の位置推定装置。
【請求項１０】
前記位置推定装置は、さらに誤り位置推定部を備え、
前記誤り位置推定部は、
前記発信機の推定位置と、前記発信機の位置の推定に用いられた１以上の前記端末の各推定位置との間の差分距離を算出し、
前記端末毎に、前記差分距離と前記重みとに基づいて誤りスコアを算出し、
前記１以上の端末の誤りスコアのうち少なくとも１つが閾値よりも大きい場合に、前記誤りスコアが前記１以上の端末の誤りスコアのうちで最高の前記端末により受信された前記信号は、前記発信機とは別の発信機から発信されたものと判定し、
前記１以上の端末のうち、前記発信機から発信された信号を受信したと判定された前記端末の推定位置に基づき、前記発信機の推定位置の推定を再度導出し、
前記１以上の端末のうち、前記別の発信機から発信された信号を受信したと判定された前記端末の推定位置に基づき、前記別の発信機の推定位置の導出する、
ことを特徴とする請求項７又は８に記載の位置推定装置。
【請求項１１】
前記誤り位置推定部は、
前記１以上の端末の各推定位置と、前記発信機の推定位置との間の差分距離を算出し、
前記１以上の端末の各推定位置と、前記別の発信機の推定位置との間の差分距離を算出し、
前記端末の推定位置と前記発信機の推定位置との間の差分距離が、前記端末の推定位置と前記別の発信機の推定位置との間の差分距離以下の場合、前記端末は前記受信時刻において前記発信機より信号を受信したと判定し、
前記端末の推定位置と前記発信機の推定位置との間の差分距離が、前記端末の推定位置と前記別の発信機の推定位置との間の差分距離より大きい場合、前記端末は前記受信時刻において前記別の発信機より信号を受信したと判定し、
前記１以上の端末のうち、前記発信機から発信された信号を受信したと判定された前記端末の推定位置に基づき、前記発信機の推定位置の導出し、
前記１以上の端末のうち、前記別の発信機から発信された信号を受信したと判定された前記端末の推定位置に基づき、前記別の発信機の推定位置を導出する、
ことを特徴とする請求項１０に記載の位置推定装置。
【請求項１２】
前記誤り位置推定部は、
前記発信機から発信された信号を受信したと判定された前記端末を第１のクラスタへ分類し、前記別の発信機から発信された信号を受信したと判定された前記端末を第２のクラスタへ分類し、
前記第１のクラスタにおける前記端末の推定位置に基づいて前記発信機の推定位置を導出し、
前記第２のクラスタにおける前記端末の推定位置に基づいて前記別の発信機の推定位置を導出する、
ことを特徴とする請求項１０又は１１に記載の位置推定装置。
【請求項１３】
前記発信機は、ビーコンであることを特徴とする請求項１から１２のいずれか１項に記載の位置推定装置。
【請求項１４】
端末が発信機からの信号を受信した受信時刻と、前記端末が受信した前記信号の強度と、前記端末が前記受信時刻よりも前の第１の時刻において第１の地点で取得した第１の位置時刻情報と、前記端末が前記受信時刻よりも後の第２の時刻において第２の地点で取得した第２の位置時刻情報と、を取得し、
前記第１の位置時刻情報および前記第２の位置時刻情報より、前記端末の前記第１の地点と前記第２の地点の間の平均移動速度を算出し、
前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離以上である場合に、前記第１の時刻と前記受信時刻との間の第１の時間間隔と、前記受信時刻と前記第２の時刻との間の第２の時間間隔のうちの少なくとも一方に対し補正を行い、該補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行い、該推定に基づいて前記発信機の位置の推定を行う、
処理を位置推定装置に実行させる位置推定プログラム。
【請求項１５】
端末が発信機からの信号を受信した受信時刻と、前記端末が受信した前記信号の強度と、前記端末が前記受信時刻よりも前の第１の時刻において第１の地点で取得した第１の位置時刻情報と、前記端末が前記受信時刻よりも後の第２の時刻において第２の地点で取得した第２の位置時刻情報と、を取得し、
前記第１の位置時刻情報および前記第２の位置時刻情報より、前記端末の前記第１の地点と前記第２の地点の間の平均移動速度を算出し、
前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離以上である場合に、前記第１の時刻と前記受信時刻との間の第１の時間間隔と、前記受信時刻と前記第２の時刻との間の第２の時間間隔のうちの少なくとも一方に対し補正を行い、該補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行い、該推定に基づいて前記発信機の位置の推定を行う、
位置推定装置が実行する位置推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置推定装置、位置推定プログラム、および位置推定方法に関する。
【背景技術】
【０００２】
近年、商業施設等における広告配信や店舗内のレイアウト配置のための、位置情報を活用した顧客の行動分析等が行われつつある。一般的に位置情報の取得には、例えばＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）を用いる例が知られている。しかしＧＰＳは屋内における対象物の位置情報を把握することが困難な場合も少なくない。一方、例えばビーコンは、屋内においても使用でき低コストで設置できるため、位置情報の取得の為に活用される場合が多い。
【０００３】
ビーコンを活用するためには、ビーコンの識別子と当該ビーコンの設置位置に係る位置情報を事前に取得し、これらを利用可能にしておかなければならないが、ビーコンの設置位置に係る位置情報が事前に得られていない場合が存在する。このため、ビーコンの設置位置に係る位置情報（ビーコンの位置情報と記載する）の正確な把握とデータベース化が求められることがある。
【０００４】
ビーコンから発信される信号には、当該ビーコンの位置情報が含まれるとは限らない。このため、ビーコンからの信号を受信可能な端末は、ビーコンから信号を受信した時刻におけるビーコンの位置情報を、ビーコンから直接取得できるとは限らない。
【０００５】
ここで、ビーコンを含めた対象物の位置情報の取得方法として、例えば、同一時刻において、位置が把握されている複数のノードからの信号を用いて当該対象物の位置を検出する方法が知られる。しかし対象物が移動している場合や、複数のノードから発信される各信号が同一時刻に発信されたものでない場合には、対象物の位置の推定の精度が落ちてしまう場合がある。
【０００６】
これに対し例えば、位置の把握できるノードから対象物への信号の照射範囲に応じ重みを決め、当該信号の重み付き平均を用い、対象物の位置を検出する方法が知られる。しかし、複数のノードからの各信号の取得間隔が大きい場合などにおいては、推定される対象物の位置は、実際の対象物の位置とは異なってしまう場合もある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１３―０７３３３８号公報
【非特許文献】
【０００８】
【非特許文献１】ワイヤレス位置検出技術，計測と制御，４８（７），  ５６０―５６４，  ２００９
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ビーコン等の発信機の位置の推定に用いられるノードは必ずしも位置が特定されているとは限らないことがあり、また位置の特定されているノードがあったとしてもビーコンから信号を受信できる位置にあるとは限らない場合もある。このため、ビーコンから信号を受信可能で、位置の特定されているノードから位置情報を取得可能な、例えば移動体端末を用いて、ビーコンの位置の推定を行う方法が考えられる。この場合、当該端末を用いてのビーコンの位置推定方法として、当該端末により取得された位置情報であって、ビーコンからの信号の受信前後に取得されたものを用いることにより、ビーコンの位置の推定を行う方法が考えられる。この場合、位置の推定には、端末により取得された、ビーコンからの信号を受信した時刻、当該信号の強度の情報、位置情報を取得した時刻、および位置情報が用いられ得る。
【００１０】
しかし、端末は必ずしも、一定の速度で移動しているとは限らず、滞留する場合も存在する。このため、ビーコンを受信した前後の時刻とその際に得られた位置情報を用いて、ビーコンの位置を推定すると、適切でない場合が存在する。一方、ビーコンを受信した前後の時刻において取得した各位置情報に係る位置が、互いに近接しているほど、当該各位置情報に係る位置はビーコンの位置に近いと考えられ、端末が滞留している場合を除外することは適切ではない。
【００１１】
本発明の一つの側面に係る目的は、発信機からの信号の受信の前後における端末の移動が滞留を含む場合であっても、位置の推定の精度の劣化を防止することである。
【課題を解決するための手段】
【００１２】
一つの態様に係る位置推定装置は、取得部と位置推定部とを備える。取得部は、端末が発信機からの信号を受信した受信時刻と、端末が受信した信号の強度とを取得する。また取得部は、端末が受信時刻よりも前の第１の時刻において第１の地点で取得した第１の位置時刻情報と、端末が受信時刻よりも後の第２の時刻において第２の地点で取得した第２の位置時刻情報とを取得する。位置推定部は、第１の位置時刻情報および第２の位置時刻情報より、端末の第１の地点と第２の地点の間の平均移動速度を算出する。位置推定部は、平均移動速度が所定値以下であり、且つ第１の地点と第２の地点との間の距離が所定の距離以上の場合に、第１の時刻と受信時刻との間の第１の時間間隔と、受信時刻と第２の時刻との間の第２の時間間隔のうちの少なくとも一方に対し補正を行う。また位置推定部は、補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、受信時刻における端末の位置の推定を行い、推定に基づいて発信機の位置の推定を行う。
【発明の効果】
【００１３】
発信機からの信号の受信の前後における端末の移動が滞留を含む場合であっても、位置の推定の精度の劣化を防止する。
【図面の簡単な説明】
【００１４】
【図１】第１の実施形態に係る位置推定システムの構成の一例を示す図である。
【図２】第１の実施形態に係る位置推定装置の機能ブロックの機能と処理内容を説明するための図である。
【図３】端末の移動の軌跡と軌跡抽出情報との対応を説明するための図である。
【図４】座標と時間間隔とを用いた位置推定方法の一例を示す図である。
【図５】端末の滞留の一例を示す図である。
【図６】端末の通過の一例を示す図である。
【図７】第１の実施形態に係る位置推定装置による処理のフローチャートである。
【図８】データ取得部により取得された受信情報と位置時刻情報を例示する図である。
【図９】、軌跡抽出部により生成された軌跡抽出情報を例示する図である。
【図１０】第１の実施形態における位置推定部による処理のフローチャートである。
【図１１】位置推定部の処理に基づき生成される軌跡情報を例示する図である。
【図１２】従来技術を用いて位置推定を行った場合と、第１の実施形態における位置推定を行った場合の各精度の比較例を示す図である。
【図１３】第２の実施形態に係る位置推定システムの構成の一例を示す図である。
【図１４】第２の実施形態に係る位置推定装置の各機能ブロックの処理内容を説明するための図である。
【図１５】第２の実施形態に係る位置推定装置による処理のフローチャートである。
【図１６】第２の実施形態における誤り判定部による処理のフローチャートである。
【図１７】第２の実施形態に係る位置推定装置による誤り判定処理の一例を説明するための図である。
【図１８】第２の実施形態に係る位置推定装置による誤り判定処理の一例を説明するための図である。
【図１９】第２の実施形態における誤り判定処理を行うことによる効果の一例を示す図である。
【図２０】第３の実施形態に係る位置推定システムの構成の一例を示す図である。
【図２１】第３の実施形態に係る位置推定装置２Ｃの各機能ブロックの処理内容を説明するための図である。
【図２２】第３の実施形態に係る位置推定装置による処理のフローチャートである。
【図２３】第３の実施形態における誤り位置推定装置による処理のフローチャートである。
【図２４】第３の実施形態における誤り位置推定処理の例を示す図である。
【図２５】第３の実施形態における誤り位置推定処理の例を示す図である。
【図２６】第３の実施形態における誤り位置推定処理の例を示す図である。
【図２７】第３の実施形態における誤り位置推定処理の例を示す図である。
【図２８】第３の実施形態に係る位置推定装置２Ｃによる位置推定において得られる効果の一例を示す図である。
【図２９】その他の実施形態１に係る位置推定方法を示す図である。
【図３０】その他の実施形態１に係る位置推定装置の機能ブロックを示す図である
【図３１】その他の実施形態２に係る位置推定装置の機能ブロックを示す図である。
【図３２】その他の実施形態２に係る位置推定装置による処理の一例を示す図である。
【図３３】第１、２、３の実施形態とその他の実施形態１、２、３、４に係る各位置推定装置の各機能を実現するためのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１５】
（第１の実施形態）
図１は、本実施形態に係る位置推定システム１Ａの構成の一例を示す図である。本実施形態に係る位置推定システム１Ａは、位置推定装置２Ａ、移動履歴データベース３、および位置情報マスタデータベース４等を備える。移動履歴データベース３と位置情報マスタデータベース４は、それぞれ位置推定装置２Ａと接続されている。また位置推定システム１は、ネットワーク５を介し、移動履歴データベース３と無線にて通信可能に接続される１以上の端末６を備える。当該ネットワーク５は、有線又は無線のネットワークである。また位置推定システム１Ａは、ネットワーク５を介し、各端末６と無線にて通信可能な、それぞれが１以上のセンサ７とビーコン８とを備える。このようなセンサ７又はビーコン８を、発信機とも記載する。センサ７又はビーコン８は、移動履歴データベース３と有線又は無線にて通信可能に接続されていてもよい。
【００１６】
なお、図１に示す例においては、位置推定装置２Ａと移動履歴データベース３と位置情報マスタデータベース４とは互いに別個のものとして表されるが、位置推定装置２Ａは、移動履歴データベース３又は位置情報マスタデータベース４を含んでいてもよい。
【００１７】
位置推定装置２Ａは、図１に示すようにデータ取得部２０、軌跡抽出部２１、および位置推定部２２等の機能ブロックを備える。これらの機能ブロックについては後述する。
【００１８】
移動履歴データベース３は、例えばクラウドコンピューティングにおけるストレージ等に記憶されているものである。移動履歴データベース３に記録されているデータは、本実施形態においては移動履歴データベース３が各端末６から受信した情報であるとし、この情報には、これらの各端末６がセンサ７やビーコン８から受信したデータが含まれる。ただしこれに限定されず、センサ７又はビーコン８が、端末６から受信したデータを含む情報を移動履歴データベース３に送信してもよい。
【００１９】
位置情報マスタデータベース４は、位置情報を管理し記憶するための記憶装置等に保存されているものである。位置情報マスタデータベース４には、センサ７やビーコン８などの広義的なセンサの配置されている位置の座標、あるいは配置されていると推測される位置の座標が記録されている。
【００２０】
端末６は、例えば携帯電話やスマートフォンやタブレット、カーナビゲーションシステム、電車における運転士支援システム等である。各端末６には、固有のＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）が与えられている。端末６は、ネットワーク５を介し、センサ７やビーコン８からの信号を受信し、移動履歴データベース３にデータを送信する。また端末６は、センサ７又はビーコン８に対し適宜信号を送信する。なお、ここでの信号とは、無線での情報の授受のために変調された電波である。
【００２１】
センサ７は、本実施形態においては、その取り付けられた位置の座標がわかっているものとする。センサ７は、当該座標の情報に対応する信号を送信する。そして端末６は、センサ７からの信号を受信することでセンサ７の設置位置の座標の情報を得る。なお、センサ７の設置位置が特定されていない場合は、センサ７が以下に記載する位置推定の対象となってもよい。
【００２２】
ビーコン８は、本実施形態においては、それが取り付けられている位置がどこであるかの推定の対象となるものとする。ただしビーコン８は、取り付けられている位置が特定されているものでもよい。この場合、例えばビーコンの取り付け位置の確認のために、後述するような位置の推定が行われてもよい。各ビーコン８には固有の識別子が与えられている。そしてビーコン８は、自己の識別子に対応する信号を送信し、当該信号を受信した端末６は、当該ビーコン８の識別子を取得する。
【００２３】
端末６は、センサ７からその設置位置の座標を取得すると、その座標およびこれを取得した時刻の情報を含む情報（位置時刻情報とも記載する）を、自己のＩＤと共に移動履歴データベース３へと送信する。なお、位置時刻情報にＩＤを組み合わせたものも、以下では位置時刻情報と記載する。
【００２４】
ここで、端末６がセンサ７からその座標を取得した時刻に代わり、端末６は次のような時刻の情報を移動履歴データベース３へ送信してもよい。例えば、センサ７が、その座標の情報の送信の際の時刻に係る情報を座標の情報と共に端末６へ送信し、端末６は、この際に受信する当該時刻に係る情報を移動履歴データベース３に送信してもよい。なお、このような時刻と座標の情報、又はこれに端末６のＩＤが組み合わされた情報も、位置時刻情報と記載する。
【００２５】
端末６は、ビーコン８から、その電波が届く範囲で、そのビーコン８の識別子を取得できる。端末６は、自己のＩＤ、ビーコン８の識別子、ビーコン８の識別子の取得の際の当該ビーコン８からの電波の強度（信号の強度とも記載する）、およびビーコン８から信号を受信した時刻に係る情報を移動履歴データベース３へ送信する。ここでビーコン８からの識別子を含む、端末６から移動履歴データベース３へ送信される情報を受信情報とも記載する。
【００２６】
ここで、端末６が受信するビーコン８からの電波の強度は、ビーコン８と端末６とが近いほど大きくなるため、ビーコン８からの端末６の近さを示す指標となる。このため端末６は、ビーコン８からの信号の強度に代わり、ビーコン８からの近さを数値化したものを移動履歴データベース３に送信してもよい。
【００２７】
端末６は、同一のビーコン８から連続して信号を受信した場合には、この中の１つの信号に対応する情報を保持し、それ以外の信号に対応する情報を削除する。端末６において余分なデータが蓄積されるのを防ぐためである。本実施形態に係る端末６が、同一のビーコン８から受信した複数の信号に対応する情報のうち保持するものは、当該ビーコン８から最初に受信した信号に対応する情報であるとする。ただしこれに限定されず、例えば、端末６は、同一のビーコン８から連続して受信した複数の信号に対応する情報のうち、最後の信号に対応する情報や、任意に選択した信号に対応する情報を残し、それ以外の信号に対応する情報を削除してもよい。端末６は、同一のビーコン８から連続して受信した複数の信号に対応する情報のうち、このようにして残したものを受信情報に含ませ、移動履歴データベース３に送信する。移動履歴データベース３に余分なデータが蓄積されるのを防ぎ、ネットワーク上に多量のデータが送信されてトラヒックが増大するのを防止するためである。本実施形態に係る端末６が、同一のビーコン８から連続して複数の信号を受信した際に、移動履歴データベース３に送信する受信情報は、当該ビーコン８から最初に受信した信号に対応する情報を含むものである。
【００２８】
図２は、本実施形態に係る位置推定装置２Ａの機能ブロックの機能と処理内容を説明するための図である。位置推定装置２Ａが備えるデータ取得部２０は、位置の推定の対象となるビーコン８の識別子を含む受信情報を移動履歴データベース３から読み込む。位置の推定の対象となるビーコン８は、例えば位置情報マスタデータベース４において位置が登録されていないビーコン８や、位置が登録されていても位置の再確認を行ったほうが好ましいと判断されるようなビーコン８である。後者は、例えば、位置の再確認の度に、推定された位置に変化があるようなビーコン８である。また位置の推定の対象となるビーコン８は、上述したようなビーコン８に限定されず、任意のビーコン８であってもよい。例えば、定期的に任意のビーコン８の位置の確認を行うこともあり得るためである。
【００２９】
データ取得部２０は、ユーザから、位置の推定対象となるビーコン８の識別子等の入力を受け、位置情報マスタデータベース４から当該識別子等を含む受信情報を読み込んでもよい。あるいはデータ取得部２０は、位置情報マスタデータベース４においてビーコン８の座標の情報が記録されているか、またビーコン８の座標が更新毎にどれほど変化しているか等を参照し、これに基づき位置の推定対象のビーコン８を選択してもよい。
【００３０】
データ取得部２０は、移動履歴データベース３から読み込んだ受信情報を軌跡抽出部２１へ出力する。
【００３１】
またデータ取得部２０は、移動履歴データベース３から読み込んだ受信情報における端末６のＩＤが含まれる位置時刻情報を、移動履歴データベース３から読み込む。
【００３２】
図２に示す一例では、位置推定装置２Ａは、識別子がｐ１とｐ２の各ビーコン８の位置の推定を行う。このためデータ取得部２０は、移動履歴データベース３から、識別子がｐ１とｐ２の各受信情報を読み込む。当該受信情報は、図２の中間部分より左に示される。なお、ここでは受信情報を表形式で表しているが、受信情報は、端末６のＩＤ、当該端末６がビーコン８から信号を受信した時刻、当該ビーコン８の識別子、および当該ビーコン８からの当該信号の強度が互いに関連付けられていればよい。
【００３３】
データ取得部２０は、読み込んだ受信情報におけるＩＤを参照し、このＩＤを含む位置時刻情報を移動履歴データベース３から読み込む。このＩＤは、位置の推定の対象となるビーコン８からの信号を受信した端末６のＩＤである。図２に例示される、識別子がｐ１の受信情報には、ＩＤがiｄ１とiｄ３のものがある。このため、データ取得部２０は、ＩＤがiｄ１とiｄ３の各位置時刻情報を移動履歴データベース３から読み込む。同様にデータ取得部２０は、識別子がｐ２である受信情報におけるＩＤがiｄ２とiｄ３であることから、これらのＩＤの各々が含まれる位置時刻情報を移動履歴データベース３から読み出す。
【００３４】
図２に例示される位置時刻情報は表形式で表されているが、位置時刻情報は、端末６のＩＤ、当該端末６がセンサ７から信号を受信した時刻、および当該センサ７の設置位置の座標が互いに関連付けられていればよい。図２の位置時刻情報を参照すると、ＩＤがｉｄ１の端末６は、時刻ｔ１１において、センサ７より、座標ｘ１１を取得していることがわかる。
【００３５】
軌跡抽出部２１は、データ取得部２０により読み込まれた受信情報と位置時刻情報とをＩＤ毎にまとめ、時刻順にソートする。図２の右側には、軌跡抽出部２１が、受信情報と位置時刻情報をＩＤ毎にまとめ、時刻順にソートしたデータが示される。当該データを参照すると、例えばＩＤがiｄ２である端末６は、時刻ｔ２１において、座標ｘ２１に設置されているセンサ７から、当該座標ｘ２１を含む情報に係る信号を受信していることがわかる。そして当該端末６は、その後の時刻ｔ２２において識別子がｐ２のビーコン８から強度ｖ２２の信号を受信し、さらにその後の時刻ｔ２３において座標ｘ２３に設置されているセンサ７より信号を受信していることがわかる。当該端末６は、続いて時刻ｔ２４において座標ｘ２４に設置されているセンサ７より信号を受信していることがわかる。
【００３６】
軌跡抽出部２１は、さらにこのデータをビーコン８毎にまとめる。なお、この処理はＩＤ毎に受信情報と位置時刻情報をまとめる処理に先立ち行われてもよい。１つの端末６が２つ以上のビーコン８から信号を受信している場合には、これらのビーコン８に係る受信情報の各々に対し、当該端末６のＩＤを含む位置時刻情報がまとめられてもよい。
【００３７】
軌跡抽出部２１は、受信情報と位置時刻情報がＩＤ毎にまとめられ時刻順にソートされたデータにおいて、受信情報に基づく情報と、当該受信情報における時刻の直前および直後の各時刻を含む位置時刻情報に基づく情報を抽出する。例えば図２の右側に示される当該データにおいて、ＩＤがiｄ２の場合、軌跡抽出部２１は、時刻がｔ２２の行と、時刻ｔ２２の直前の時刻ｔ２１の行と、時刻ｔ２２の直後の時刻ｔ２３の行に、それぞれ対応する情報を抽出する。このように、軌跡抽出部２１により抽出された情報を軌跡抽出情報とも記載する。
【００３８】
位置推定部２２は、軌跡抽出部２１より生成された軌跡抽出情報から各ビーコン８の設置位置の座標を算出して推定する。位置推定部２２による詳細な処理については後述する。
【００３９】
図３は、端末６の移動の軌跡と軌跡抽出情報との対応を説明するための図である。図３に示す本実施形態におけるビーコン８は固定設置されている。また図３に示すように、端末６は、実線で示された通路に沿って移動可能である。図３に示すように各端末６は、破線によって示される移動に伴いセンサ７やビーコン８からの信号を受信する。なお、破線の矢印の方向が端末の移動方向を示す。以下、具体的に軌跡抽出情報と端末６の移動とを対応付けて説明する。
【００４０】
図３の左の図において、例えばＩＤが４の端末６について参照すると、当該端末６は、地点Ａ又はその近傍においてセンサ７から信号を受信し、当該センサ７の設置位置である地点Ａの座標を取得していることがわかる。軌跡抽出情報を参照すると、ＩＤ４の端末６は、時刻が０且つ地点Ａで、センサ７から地点Ａの座標（１０、１０）を取得していることがわかる。なお時刻の単位は、例えば秒や分である。続いて当該端末６は、その移動経路において時刻が４０のときにビーコン８から強度が１００の信号を受信している。そしてまた当該端末６は、時刻が９０且つ地点Ｂで、センサ７から地点Ｂの座標（８０、３０）を取得している。ＩＤが１、２、３、５、６の他の各端末についても同様に、図３から移動経路、取得した情報、および当該情報を取得した時刻等がわかる。なお、本実施形態では、端末６が或る地点でセンサ７から信号を受信する場合、当該センサ７の座標は、当該地点の座標と等しいか、当該地点との距離が十分小さい位置の座標であるとする。
【００４１】
図３に例示されるように軌跡抽出情報は、端末６毎に、ビーコン８からの信号の受信を示すデータと、当該ビーコン８からの信号の受信の前後におけるセンサ７からの信号の受信を示すデータとが抽出されていることがわかる。このため或る端末６のこれらのデータを、当該端末６の軌跡抽出情報と記載する。
【００４２】
図４は、座標と時間間隔とを用いた位置推定方法の一例を示す図である。ここでは、図３に示されている、ＩＤ３の端末６の移動経路と受信状況と軌跡抽出情報とを参照して、当該位置推定方法の説明を行う。当該端末６は、時刻０で地点Ｃにおいて、或るセンサ７から座標（８０、７０）の情報を取得する。その後、当該端末６は、時刻４０において識別子がｐ１のビーコン８から、強度が９０の信号を受信する。この信号は、当該ビーコン８の識別子ｐ１の情報に係る信号である。その後、当該端末６は、時刻７０で地点Ｄにおいて、別の或るセンサ７から座標（１０、０）の情報を取得する。
【００４３】
ここで、図４に示されるようなＩＤ３の端末６の軌跡抽出情報を参照しても、当該端末６の時刻０と時刻７０における各位置に関する情報以外の移動経路の情報は得られるとは限らない。このように位置推定装置２Ａは、各端末６の移動経路の情報を取得できるとは限らない。本実施形態に係る位置推定装置２Ａは、ビーコン８の位置の推定を行うために、端末６が当該ビーコン８から電波を受信した時点における当該端末６の位置の推定を行う。しかし、端末６がビーコン８からの電波を受信した位置の推定のため、位置推定装置２Ａが、当該端末６の移動経路の情報を取得するには、センサ７を増加しなければならず、これにより通信量が増加してしまいかねない。このようなことを避けるため、本実施形態に係る位置推定装置２Ａは、図３、４等に示されるような軌跡抽出情報を用いつつ、適宜、補正等を行って端末６がビーコン８から信号を受信した位置の推定を行う。ここからの処理は、上述した位置推定部２２により行われる。
【００４４】
図４に示す場合において、位置推定部２２は、軌跡抽出情報を参照し、地点Ｃと地点Ｄとを結ぶ線分によりＩＤ３の端末６の移動経路を近似する。そして位置推定部２２は、当該端末６が識別子ｐ１のビーコン８から信号を受信した時刻４０が、当該端末６が地点Ｃに存在した時刻０と地点Ｄに存在した時刻７０の間の時間の中でどこに位置するかを算出する。軌跡抽出情報から、端末６が地点Ｃから移動してビーコン８の信号を受信するまでの時間間隔は４０であることがわかり、端末６がビーコン８の信号を受信してから地点Ｄに到達するまでの時間間隔は３０であることがわかる。ビーコン８の位置、又は端末６が当該ビーコン８からの信号を受信したと考えられる位置として、一般的には線形補間を用いて、地点Ｃと地点Ｄを結ぶ線分を時間間隔の比、すなわち４対３で内分する点が考えられる。しかし、このような内分点は図４における例示により明らかなように、実際のビーコン８の設置位置にも、当該ビーコン８から端末６が信号を受信した位置にも等しいとは限らない。
【００４５】
以下において、ビーコン８からの信号の受信の前後において端末６がセンサ７より座標の情報を取得する各地点を、第１の地点、第２の地点とも記載する。また以下において、端末６が第１の地点においてセンサ７から座標に係る情報を取得した時刻を、第１の時刻とも記載する。同様に、当該端末６が第２の地点においてセンサ７から座標に係る情報を取得した時刻を、第２の時刻とも記載する。同様に端末６がビーコン８から信号を受信した時刻を受信時刻とも記載する。そして、第１の時刻と受信時刻との間の時間間隔を第１の時間間隔とも記載する。同様に、受信時刻と第２の時刻との間の時間間隔を第２の時間間隔とも記載する。また以下において内分点とは、第１の時間間隔と第２の時間間隔との比により、第１の地点と第２の地点とを結ぶ線分を内分する点を意味するものとする。
【００４６】
ここで本実施形態では、端末６の受信時刻における位置を正確に推定するため、以下に説明する滞留について考慮する。図５は、端末６の滞留の一例を示す図である。ここではＩＤ５の端末６の滞留について説明する。図５における左の図には、ＩＤ５の端末６の実際の移動経路が示される。ここでの実線と破線は、図３、４の場合と同様、それぞれ通路と端末６の移動経路を示す。またビーコン８や、端末６がセンサ７から情報を受信した位置等の各図形も、上記図３、４の場合と同様である。
【００４７】
端末６が、ビーコン８からの電波を受信できる範囲からしばらく移動しない場合、当該端末６は、当該ビーコン８から複数の信号を受信し得る。理解を容易にするために、端末６が、これら複数の信号の各々に対応する受信情報を移動履歴データベース３に送信した場合を仮定する。ここでは、ＩＤ５の端末６が、同一のビーコン８から連続して複数の信号を受信し、これらに対応する複数の受信情報を移動履歴データベース３に送信した場合を考える。このとき軌跡抽出部２１は、当該端末６からの当該受信情報と位置時刻情報を時刻順に並べ、図５の中間部分に示されるようなデータを生成する。ただし、本実施形態における端末６が、移動履歴データベース３に送信する受信情報は、あくまでもビーコン８から最初に受信した信号に対応するものであり、上述した仮定は滞留について説明するためのものである。
【００４８】
図５における左の図と中間部分のデータから、ＩＤ５の端末６は、時刻０で地点Ｅにおいてセンサ７から情報を取得した後、時刻４０までの間、図５の破線で示す経路に沿い移動していることがわかる。続いて当該端末６は、時刻４０においてビーコン８からの信号を受信した後、時刻８０までの間において、時刻４０までの速度よりも低い速度で移動、又は同じ地点もしくはその近傍に留まっていることがわかる。そして当該端末６は、時刻８０から時刻９０において、時刻４０から時刻８０までの速度より高い速度で移動し、時刻９０においてセンサ７から座標の情報を取得していることがわかる。このような端末６の移動に対し抽出される軌跡抽出情報は、図５の右下に示されるものとなる。
【００４９】
この軌跡抽出情報から、端末６の移動経路として導き出される経路は、図５の右上に示される、第１の地点（Ｅ）と第２の地点（Ｆ）とを結ぶ線分に沿う経路となる。そしてビーコン８の設置位置として認識され得る地点は、当該線分により表される経路を、第１の時間間隔４０と第２の時間間隔５０の比（４：５）に応じて内分した点である地点Ｇとなる。しかし、実際のビーコン８の位置は地点Ｆに近い。地点Ｅと地点Ｆとの間の距離が小さくない場合、又は端末６が地点Ｅから地点Ｆまでの移動に費やした時間が小さくない場合には、地点Ｇは実際のビーコン８の設置位置からは離れた地点となり得る。このように端末６の移動速度の影響により、ビーコン８の位置の推定の精度の劣化が生じ得る。
【００５０】
本実施形態においては、端末６の平均移動速度が所定値以下の場合を滞留とする。なお、この所定値は、ユーザにより予め設定されている値である。この所定値は、端末６の種類毎に予め定められている。例えば、端末６がカーナビゲーションシステムや携帯電話等の場合があるが、所定値はこれらの各場合に応じ予め定められている。
【００５１】
本実施形態における位置推定部２２は、ビーコン８の位置推定に用いられる端末６について軌跡抽出情報を参照し、当該端末６の第１の地点と第２の地点との間における平均移動速度を算出する。次に位置推定部２２は、当該平均移動速度から、当該端末６が滞留しているか否かを判定する。位置推定部２２は、当該端末６が滞留していると判定される場合であって、第１の地点と第２の地点との間の距離が所定の距離以上の場合に、第２の時間間隔を補正する。この補正は、例えば、滞留が無かった場合に、端末６が移動に実際にかかったと推定される時間間隔等への変換を行うものである。この変換のために予め移動履歴データベース３、位置情報マスタデータベース４、又は他のデータベースには、ビーコン８の設置位置として想定される範囲や第２の地点付近において、どれ程の時間、不特定の端末６が位置し続けるか等のデータが保持されている。このデータは、第２の地点の付近やビーコン８が設置されていると見積もられる範囲において、設置場所が特定されている他のビーコン８やセンサ７から情報を取得した端末６を介し蓄積されたものでもよい。また当該データは、設置位置が特定されていないが当該範囲内に存在すると見込まれるビーコン８からの信号を受信した多数の端末６を介して蓄積されたものでもよい。位置推定部２２、又は位置推定装置２Ａに対し設定を行う者は、このデータを用いて、滞留により、本来の移動にかかるはずの時間間隔がどのように変化するのかを事前に調べ、どのように補正するのかを決定する。例えば、移動に１０分程の距離の或る範囲において平均１００分の間、不特定多数の端末６が位置し続けるという統計データがある場合、位置推定部２２は、滞留する端末６の第２の時間間隔を１／１０倍するなどする。あるいは、或る範囲の端から端の距離が大きくないのに、不特定多数の端末６が当該範囲に平均１時間は留まっているような統計データがある場合、位置推定部２２は、第２の時間間隔から１時間を差し引くなどする。
【００５２】
ここで第２の時間間隔を補正する理由は、以下の理由による。まずビーコン８が備え付けられる場所は、飲食店等の、端末６の滞留があると考えられる場所である場合が多い。また端末６は、同一のビーコン８から複数の信号を連続して受信した場合、最初の信号に係る受信情報を移動履歴データベース３に送信し、他の信号に係る受信情報を送信しない。このため、同一のビーコン８から最後に信号を受信してから、次にセンサ７から座標の情報を取得するまでの時間間隔については不明である。この時間間隔は、滞留がなかった場合の第２の時間間隔とほぼ等しいと考えられる。このため位置推定部２２は、当該地点の滞留時間等の統計を用いて、第２の時間間隔を補正する。
【００５３】
逆に、端末６が、同一のビーコン８から連続して受信した複数の信号のうち最後の信号に係る受信情報を移動履歴データベース３に送信する場合には、位置推定部２２は、第１の時間間隔を補正する。なおこれら以外に、位置推定部２２は、第１の時間間隔と第２の時間間隔の両方を補正してもよい。また、受信情報がビーコン８から受信した複数の信号のうちの任意のものに係る場合には、これに応じた補正がされてもよい。
【００５４】
なお本実施形態においては、滞留があっても第１の地点と第２の地点との距離が小さい場合、例えば当該距離が所定の距離未満の場合には、第２の時間間隔の補正は行われない。なぜならこの場合には、ビーコン８の設置位置として推定される範囲がそれほど広範ではないためである。そして補正を行わないことで、位置推定部２２の計算量を増加させないためである。第２の時間間隔への補正の要否の境目となる、上記所定の距離は、ユーザにより適宜設定される。例えば、所定の距離として設定されるものは、ビーコン８の実際の設置位置と、推定されたビーコン８の位置との間の距離を誤差とした場合に、許容する誤差の例えば２倍、または当該誤差に一定値を足したものとなる。
【００５５】
本実施形態に係る位置推定装置２Ａは、第２の時間間隔に対し補正を行った場合に、補正後の第２の時間間隔と第１の時間間隔との比を用いた線形補間により得られる内分点の座標を、受信時刻における端末６の位置として推定する。一方、第２の時間間隔に対し補正を行わなかった場合には、位置推定装置２Ａは、元の第１の時間間隔と第２の時間間隔との比を用いた線形補間により得られる内分点の座標を、受信時刻における端末６の位置として推定する。なお、このような線形補間により得られた内分点の座標を補間座標又は線形補間座標とも記載する。この線形補間座標は、端末６毎に得られるため、端末６の線形補間座標、端末６の補間座標とも記載する。
【００５６】
端末６が滞留する場合もある一方、端末６の平均移動速度が高いために、ビーコン８の位置の推定の精度が劣化する場合もある。このような場合を、通過と記載する。図６は、端末６の通過の一例を示す図である。図６における左の図には、ＩＤ３の端末６の実際の移動経路が示される。ここでの実線と破線は、図３、４の場合と同様、それぞれ通路と端末６の移動経路を示す。またビーコン８や、端末６がセンサ７から情報を受信した位置等の各図形も上記図３、４の場合と同様とする。図６の真ん中には、ＩＤ３の端末６の軌跡抽出情報が示される。図６の左の図と軌跡抽出情報から、ＩＤ３の端末６は、時刻０で地点Ｈにおいてセンサ７から座標の情報を取得していることがわかる。そして当該端末６は、図６の左において破線で示される移動経路に従って移動し、時刻４０においてビーコン８から強度９０の信号を受信していることがわかる。次に当該端末６は、時刻７０においてセンサ７から座標の情報を取得していることがわかる。ここで、当該端末６の移動速度が高い場合、時刻５から時刻４０までの間に進む距離と、時刻４０から時刻７０までの間に進む距離の少なくとも一方は大きくなると考えられる。ここでは、これらの距離はどちらも大きいとする。
【００５７】
軌跡抽出情報から当該端末６の移動経路として導き出される経路は、図６の右の図において示される破線により表される経路となる。この場合、地点Ｈと地点Ｉとを結ぶ線分で表される経路と、ビーコン８の実際の設置位置との距離は大きくなり得る。そしてこの場合、ビーコン８の設置位置として推定される地点は、地点Ｈと地点Ｉとを結ぶ経路上の地点Ｊとなり、これは実際のビーコン８の設置位置から離れた位置となり得る。このように端末６の移動速度が高い場合には、線形補間によるビーコン８の位置の推定の精度が落ちてしまう可能性が高くなる。
【００５８】
ビーコン８の設置位置のより正確な推定のために、位置推定装置２Ａは、ビーコン８からの信号を受信した１以上の端末６の各内分点の座標に対し、以下に説明する重みを付与する。そして位置推定装置２Ａは、これらの内分点の座標の重み付き平均を算出することで、ビーコン８の位置を推定する。
【００５９】
まずビーコン８の信号の強度は、ビーコン８からの近さに対応する。そのため、当該強度が高いほど、端末６がビーコン８から信号を受信した位置は、ビーコン８の設置位置に近い。このため本実施形態における重みは、ビーコン８からの信号の強度をパラメータとして含む。
【００６０】
また第１の地点と第２の地点との間の距離が小さいほど、ビーコン８の設置位置としての推定対象となる範囲は狭まるので、本実施形態における重みは、当該距離の逆数をパラメータとして含む。
【００６１】
また、複数の端末６の移動速度が互いに同じ場合、第１の時刻と第２の時刻との間の時間間隔が小さい端末６ほど移動距離は小さくなるため、当該時間間隔を本実施形態における重みのパラメータとして考慮に入れることができる。ただし、本実施形態においては、第１の時間間隔と第２の時間間隔（補正された場合は補正後の第２の時間間隔）のうち、より短い時間間隔（短時間間隔とも記載する）の逆数をパラメータとして重みに含ませる。その理由は、以下の通りである。第１、２の時間間隔のうち、例えば第２の時間間隔が小さい場合には、内分点は第２の地点により近い。また逆に第１の時間間隔が第２の時間間隔より小さい場合には、内分点は第１の地点により近い。平均移動速度が等しい１以上の端末６の各々の短時間間隔を第２の時間間隔とすると、これらの各端末６の受信時刻における位置として推定される内分点は、短時間間隔が小さいほど各々の第２の地点に近い。そしてまた第２の地点の座標は特定されている。一方、端末６の移動経路において第１、２の各地点以外の座標は特定されていない。このため、１以上の端末６の線形補間座標のうち、短時間間隔がより短い補間座標に対し大きい重みを持たせるほうが、ビーコン８の設置位置として想定される範囲が狭まり、より正確な座標が求まると考えられる。このため、上記重みに短時間間隔の逆数をパラメータとして含ませる。ただし、これに限定されない。
【００６２】
これらのことより、本実施形態では、線形補間座標に付加する重みを次のように定義する。
重み＝（ｘ×１／ｙ×１／ｚ）
ここで、ｘ、ｙ、ｚは、それぞれビーコン８からの信号の強度、第１の地点と第２の地点との間の距離、短時間間隔を表す。
【００６３】
なお、本実施形態に係る位置推定装置２Ａは、通過の場合については補正を行わない。理由は以下の通りである。端末６の平均移動速度が高いために移動距離が大きくなることが位置推定の精度の劣化の原因となる。ここで上述した重みにおいて、第１の地点と第２の地点との間の距離の逆数がパラメータとして用いられ、精度の劣化の原因となる移動距離の大きさについて既に考慮されている。このため本実施形態に係る位置推定装置２Ａは、通過の場合には、滞留の場合のような補正を行わない。ただしこれに限定されず、例えば第１の時間間隔と第２の時間間隔の少なくとも一方に対し、補正を行ってもよい。
【００６４】
以下、本実施形態に係る位置推定装置２Ａの動作について説明する。図７は、本実施形態に係る位置推定装置２Ａによる処理のフローチャートである。位置推定装置２Ａのデータ取得部２０は、位置の推定の対象となるビーコン８の識別子を含む受信情報と、当該受信情報に含まれるＩＤを含む位置時刻情報を、移動履歴データベース３より取得する（ステップＳ１００）。
【００６５】
図８は、データ取得部２０により取得された受信情報と位置時刻情報を例示する図である。ステップＳ１００においてデータ取得部２０は、図８に例示されるような受信情報と位置時刻情報を移動履歴データベース３より取得する。図８に示される受信情報と位置時刻情報は、それぞれ図２に示される受信情報と位置時刻情報に具体的な数値を代入したものに対応する。
【００６６】
図８に示される受信情報から、ここでは位置推定装置２Ａは、識別子ｐ１とｐ２の各ビーコン８の設置位置の推定を行うことがわかる。また図８に示される受信情報から、例えばＩＤ１の端末６は、時刻０において識別子ｐ１のビーコン８から強度７０の信号を受信していることがわかる。
【００６７】
また図８に示される位置時刻情報から、例えばＩＤ１の端末６は、時刻０においてセンサ７より当該センサの座標である（１０、８０）の情報を取得していることがわかる。
【００６８】
図７を再度参照する。軌跡抽出部２１は、データ取得部２０により取得された受信情報と位置時刻情報とを用いて、軌跡抽出情報を生成する（ステップＳ１０１）。
【００６９】
図９は、軌跡抽出部２１により生成された軌跡抽出情報を例示する図である。図９に示される軌跡抽出情報は、軌跡抽出部２１により、図８に示される受信情報と位置時刻情報から生成されたものである。ここでは、受信情報と位置時刻情報とがまとめられた情報が、端末６のＩＤ毎に分けられ、時刻が昇順となるよう並び替えられている。これにより、端末６毎の軌跡抽出情報が生成される。またこの端末６毎の軌跡抽出情報においては、ビーコン８からの信号を受信した直前と直後の位置時刻情報からのデータが使用されている。ここで例えばＩＤ１の端末６の軌跡抽出情報を参照すると、上述した受信情報から読み取られたように、当該端末６は、時刻０においてセンサ７から当該センサ７の設置位置の座標である（１０、８０）の情報を取得していることがわかる。また当該端末６は、時刻７において識別子ｐ１のビーコン８から強度が７０の信号を受信していることがわかる。さらに当該端末６は、時刻６０においてセンサ７から、当該センサ７の座標である（０、６０）の情報を取得していることがわかる。次にステップＳ１０２における位置推定部２２による処理を、図１０と１１を参照して説明する。
【００７０】
図１０は、本実施形態における位置推定部２２による処理のフローチャートである。また図１１は位置推定部２２の処理に基づき生成される軌跡情報を例示する図である。位置推定部２２は、軌跡抽出情報に基づいて、端末６毎の、第１の時間間隔、第２の時間間隔、および第１の地点と第２の地点との間の距離を算出する。また位置推定部２２は、第１の地点と第２の地点との間の時間間隔を算出し、これにより第１の地点と第２の地点との間の距離を除算し、端末６の平均移動速度を算出する。位置推定部２２は、当該端末６の平均移動速度が所定値より大きい場合には、当該端末６は滞留していないと判定する。一方、端末６の平均移動速度が所定値以下の場合には、位置推定部２２は、当該端末６が滞留していると判定する。そして位置推定部２２は、滞留の場合であって、第１の地点と第２の地点との距離が所定の距離以上の場合に、第２の時間間隔の補正を行うこととし（ステップＳ２００）、これ以外の場合に、当該補正を行わないこととする（ステップＳ２００）。
【００７１】
なお本実施形態では、位置推定部２２は、第１の地点と第２の地点との間の距離にかかわらず、当該２点間における端末６の平均移動速度を算出している。しかしこれに限定されず、位置推定部２２は、当該距離が所定の距離より小さい場合に、当該２点間における平均移動速度の算出を行わないものとしてもよい。
【００７２】
図１１を参照し、位置推定部２２により行われるステップＳ２００の処理について具体的に説明する。なお、図１１における時間の単位は秒である。また図１１における座標は、緯度と経度のように、地面に対し平行で、互いに直交する２つの座標軸上の座標とし、単位はメートルであるとする。また図１１における距離の単位は、メートルとなる。また、本実施形態に係る位置推定部２２は、軌跡抽出情報を拡張した情報であって、当該軌跡抽出情報を用いて算出した値を含む軌跡情報を生成する。ただし、位置推定部２２は、軌跡情報を生成せずに軌跡抽出情報を用いて、ステップＳ２００、ステップＳ２０１、又はステップＳ２０３の処理を行ってもよい。
【００７３】
なおここでは、軌跡抽出情報と軌跡情報は共に表形式で表されるとする。ただし、軌跡抽出情報又は軌跡情報の各列の項目におけるデータが、ＩＤ毎に関連付けられて記憶されていれば、軌跡抽出情報又は軌跡情報は表形式でなくともよい。また軌跡情報は、図１１に示す列の項目の全てを有さなくともよく、これらの項目のうちの一部を有するものでもよい。あるいは軌跡情報は、図１１に示す列の項目以外の項目を有するものでもよい。本実施形態における軌跡情報と軌跡抽出情報は、位置推定装置２Ａに一時的に記憶されるとする。記憶される軌跡情報や軌跡抽出情報は、ユーザが認識可能なデータとして記憶されなくともよく、位置推定装置２Ａがこれを用いて処理を行うことが可能に記憶されればよい。また軌跡情報は、位置推定装置２Ａによる処理に応じて、記憶される内容が更新されていってもよい。例えば、或る処理の後に、軌跡情報においてそれまで用いられていた情報を位置推定装置２Ａが用いなくなった場合に、当該情報が消去され新たな情報が軌跡情報に付加されてもよい。
【００７４】
図１１を参照し、ＩＤ１の場合について説明する。軌跡抽出情報において、ＩＤ１の端末６の、第１の時刻は０、受信時刻は７、第２の時刻は６０である。ここでは位置推定部２Ａは、第１の時間間隔を７、第２の時間間隔を５３と求める。ここではこれらは、軌跡情報の時間間隔の列に記録される。また軌跡抽出情報において、ＩＤ１の端末６の第１の地点の座標は（１０、８０）、第２の地点の座標は（０、６０）である。ここから位置推定部２Ａは、第１の地点と第２の地点との間の距離を算出し、２２．３６（２２．３６≒｛（０−１０）２＋（６０−８０）２｝１／２）を得る。ここでは当該値は、軌跡情報の距離の列に記録される。次に位置推定部２２は、第１の地点と第２の地点との間の距離を、第１の時間間隔と第２の時間間隔の和により除算するなどし、ＩＤ１の端末６の平均移動速度を算出する。ここでは当該平均移動速度は０．３７（２２．３６／６０≒０．３７）となる。ここでは当該平均移動速度は、軌跡情報の平均移動速度の列に記録される。
【００７５】
ここで、端末６が、滞留しているか否かの判定条件を、平均移動速度が１以下であるか否かとする。すなわち平均移動速度が１以下の場合、滞留となる。ここでＩＤ１の端末６の平均移動速度は０．３７であることから、位置推定部２２は、当該端末６が滞留していると判定する。
【００７６】
また位置推定部２２は、ＩＤ１の端末６の第１の地点と第２の地点との間の距離２２．３６が、所定の距離より小さいことから、当該端末６の第２の時間間隔の補正を行わないこととする。なお、ここでは、第２の時間間隔に対し補正を行うための第１の地点と第２の地点との間の距離についての判定条件に係る所定の距離を２５とする。
【００７７】
位置推定部２２は、同様にして、ＩＤ毎に、第１の地点と第２の地点との間の距離を算出する。また位置推定部２２は、ＩＤ毎に、平均移動速度を算出する。ここで図１１において、ＩＤ２の端末６について軌跡情報を参照すると、平均移動速度は所定値以下の０．３７であることから、当該ＩＤ２の端末６に滞留があったことがわかる。同様にＩＤ２の端末６における第１の地点と第２の地点との間の距離は、所定の距離以上の６７．０８である。これらより、位置推定部２２は、ＩＤ２の端末６の第２の時間間隔の補正を行う。ここでの補正は、第２の時間間隔を１／１０倍し、これにより得られたものを新たな第２の時間間隔とするものである。これにより、ＩＤ２の端末６の、補正前に１５０であった第２の時間間隔は、１５になる。図１１に示す例においては、補正処理の後に得られた第１の時間間隔と第２の時間間隔は、補正時間間隔の列に示される。
【００７８】
図１０を再度参照する。位置推定部２２は、線形補間により、第１の時間間隔と第２の時間間隔との比を用いて、第１の地点と第２の地点とを結ぶ線分上の内分点を算出する（ステップＳ２０１）。ここで用いられる第２の時間間隔は、上記補正があった場合には、補正後のものとなる。図１１を参照すると、第２の時間間隔に補正が行われていないＩＤ１の場合の線形補間座標は（８．８、７７．７）、当該補正がされたＩＤ２の場合の線形補間座標は（３０、４０）である。
【００７９】
図１０を参照すると、位置推定部２２は、ステップＳ２０１に続き、各ＩＤの場合における重みを算出する（ステップＳ２０２）。この重みの計算には、上述したように、端末６がビーコン８から受信した信号の強度と、第１の地点と第２の地点との間の距離と、短時間間隔が用いられる。
【００８０】
図１１を参照して具体的にステップＳ２０２の処理を説明する。図１１に示す例では、重みの計算に用いるための、短時間間隔、および第１の地点と第２の地点との間の距離は、それぞれＩＤ毎に、取得間隔／時間の列と取得間隔／距離の列に記録される。なお、この「取得間隔／時間」は、取得間隔のうちの時間を示すものであり、同様に、「取得間隔／距離」は、取得間隔のうちの距離を示すものである。ＩＤ１の場合、第１の時間間隔は７で第２の時間間隔は５３であるため、短時間間隔は７となる。また図１１において、ＩＤ１の場合の第１の地点と第２の地点との間の距離は２２．３６であるため、当該値の小数点以下２桁目を四捨五入した２２．４が取得間隔／距離の列に示されている。
【００８１】
同様に図１１の軌跡情報におけるＩＤ２の場合には、取得間隔／時間の列には、短時間間隔である補正後の第２の時間間隔１５が示され、取得間隔／距離の列には６７．１が示される。
【００８２】
図１１を用いて、位置推定部２２による重みの計算について説明する。位置推定部２２は、ＩＤ毎に、上述した重みを算出するための式におけるｘ、ｙ、ｚのそれぞれに対し、強度と取得間隔／距離と取得間隔／時間の各値を代入し、重みを算出する。例えばＩＤ１の場合、重みは０．４５（０．４５≒７０×１／２２．４×１／１０）となる。その他のＩＤの場合についても同様である。
【００８３】
図１０を再び参照すると、位置推定部２２は、各ＩＤにおける線形補間座標と重みとを用いて、ビーコン８の識別子毎に、ビーコン８の設置位置として推定される位置の座標（ビーコン８の推定座標、又は推定座標とも記載する）の算出を行う（ステップＳ２０３）。なお、ビーコン８の設置位置として推定される位置を推定位置とも記載する。また同様に、端末６の線形補間座標における位置を端末の推定位置とも記載する。位置推定部２２は、ステップＳ２０３において得られたビーコン８の推定座標を位置情報マスタデータベース４に記憶する。
【００８４】
図１１を参照すると、位置推定部２２は、識別子ｐ１のビーコン８の推定座標の算出において、ＩＤ１、２、３のそれぞれにおける補間座標と重みとを用いて重み付き平均を算出することにより、当該ビーコン８の推定座標を得ている。図１１では、当該推定座標は（９．４、６３）と示されている。識別子ｐ２のビーコン８の推定座標の算出においても同様である。
【００８５】
なお、位置推定装置２Ａは、位置情報マスタデータベース４に出力したビーコン８の座標を、位置の特定されていない他のビーコン８の位置の推定に用いてもよい。例えば、位置推定装置２Ａは、或るビーコン８の位置の推定において、その際に用いられる位置時刻情報に示されるセンサ７の設置位置から或る一定の範囲に、その推定位置が含まれるビーコン８の推定座標を用いてもよい。この場合、位置の推定の対象となるビーコン８からの信号を受信した端末６は、当該推定に用いられるセンサ７からの信号と共に、当該センサ７の近傍に位置していると推定されるビーコン８からの信号を受信している可能性が高い。このため、位置推定装置２Ａは、このような推定座標が得られているビーコン８からの受信情報を、当該ビーコン８の推定座標と併せて、位置時刻情報として用いて、他のビーコン８の位置の推定を行ってもよい。この場合、データ取得部２０は、位置情報マスタデータベース４より、ビーコン８の推定位置を取得する。またこの場合、データ取得部２０又は軌跡抽出部２１は、位置情報マスタデータベース４からのビーコン８の推定座標と、当該ビーコン８に係る受信情報から位置時刻情報又は軌跡抽出情報を生成する。なお、位置情報マスタデータベース４に記録されているビーコン８の推定座標が信頼できるものか否かの判断のため、当該ビーコン８の一定回数以上の位置推定の結果、その座標に変化がないこと等を示す情報が当該データベースに記録されていてもよい。
【００８６】
図１２は、従来技術を用いて位置推定を行った場合と、本実施形態における位置推定を行った場合の各精度の比較例を示す図である。図１２は、図９に示される軌跡抽出情報を用い、識別子ｐ１とｐ２の各ビーコン８の設置位置の座標の推定を行った結果を表したものである。図１２において、第２の時間間隔を補正しない従来技術を用いた場合が左に、第２の時間間隔を補正する本実施形態に係る位置推定方法を用いた場合が右に示されている。なお、ここでの従来技術には、上記線形補間による端末６の補間座標の算出と、当該補間座標の重み付き平均によるビーコン８の推定座標の算出が含まれていると仮定している。ただし、この仮定は第２の時間間隔の補正を行った場合の効果を示すためのものであり、実際の従来技術にこれらが含まれているとは限らない。
【００８７】
図１２の上段の左右には、ビーコン８の位置推定に用いられた各端末６の推定位置が示されている。なお、従来技術を用いた場合における端末６の推定位置は、時間間隔に補正を行わずに得られた内分点に対応する。図１２においては図３等の場合と同様、各端末６の第１の地点および第２の地点は小円で表され、各端末６の推定に係る移動経路は破線で表される。これらの各破線に付されたＩＤｎ（ｎは自然数）は、当該破線が示す移動経路を移動したと推測される端末６のＩＤを示す。また当該移動経路上には、ビーコン８からの信号（電波）を示すマークであって、破線で輪郭が縁取られたマークが記されるが、このマークのある地点が端末６の推定位置となる。
【００８８】
図１２の下段の左右の図には、各ビーコン８の実際の位置と推定位置が、それぞれ実線と破線のビーコン８を表すマークにて示される。また図１２の下段の左右の図におけるビーコン８の推定位置を示すマークを囲むように記載される実線と破線の楕円は、ビーコン８の推定位置から、ビーコン８の設置位置がどれ位離れているかを示すために記載されたものである。またこれらの楕円は、ビーコン８の推定位置に基づき、ビーコン８の設置位置としてさらに推測され得る範囲を示す。また図１２の下段の図において、ビーコン８からの信号を表す、波線で輪郭が縁取られたマークと共に数字が記載されているが、これは重みを示す。
【００８９】
図１２において、識別子ｐ２のビーコン８と、当該ビーコン８の位置推定に用いられるＩＤ４、５、６の端末６に着目する。図１２の左上段、すなわち従来技術を用いて得られた、各端末６の推定位置が示された図を参照すると、第２の時間間隔について補正はされていない。図１１に示した通り、ＩＤ４、５、６の端末６にはいずれも滞留がある。しかしこのような滞留は、図１２の左上段に示す従来技術の場合における各端末６の推定位置には反映されていない。このため従来技術を用いて得られた端末６の推定位置は、実際の受信時刻における当該端末６の位置とは大きく異なる可能性がある。このように、従来技術における場合では、ビーコン８の推定座標を算出する前の、端末６の推定位置を求める段階から誤差が生じ得る。そして、これによりビーコン８の設置位置の推定対象となる範囲が狭められていない。そして滞留を考慮に入れずに求めた端末６の推定位置の座標から算出されるビーコン８の推定座標は、実際のビーコン８の設置位置の座標とは異なる可能性が高いと同時に、その誤差も無視できないと考えられる。図１２に示す一例においては、この従来技術を用いた場合の誤差（ビーコン８の設置位置と推定位置との間の距離）は１３．７ｍとなる。
【００９０】
一方、本実施形態に係る位置推定方法を用いた場合、ＩＤ４、５、６の端末６に滞留があったことが、これらの各補間座標に反映されている。これにより、端末６の受信時刻における推定位置が実際の位置により近いものとなる可能性が高い。またこれにより、図１２の左上段と右上段の各図における破線の楕円に示される、ビーコン８が存在すると見込まれる範囲が、本実施形態における補正を用いた場合では、従来技術における場合より狭い範囲に特定されている。そして、この補正を用いて算出された補間座標に対し重み付き平均を行うことで、ビーコン８の設置位置の推定における誤差が小さくなると考えられる。図１２の右下に示すように、本実施形態に係る位置推定方法を用いると、ビーコン８の推定位置は、従来の場合よりもビーコン８の実際の設置位置に近いものとなった。そしてこの場合の誤差は、従来技術を用いた場合よりも小さく、６．１ｍとなった。
【００９１】
本実施形態によれば、ビーコン８からの信号の受信の前後における端末６の移動が滞留を含む場合であっても、位置の推定の精度の劣化を防止することができる。
【００９２】
（第２の実施形態）
第１の実施形態では、位置の推定の対象となるビーコン８に与えられている識別子が、ビーコン８毎に一意的に決められている場合について説明した。しかし、或るビーコン８と同一の識別子を不正に有する他のビーコン８（なりすましビーコン８Ｆとも記載する）が存在する場合もある。このように或る識別子を有するなりすましビーコン８Ｆが存在する場合、正当に当該識別子を有するビーコン８（正当なビーコン８Ｔとも記載する）の設置位置の推定において、次のような問題が生じ得る。当該推定において、位置推定装置２Ａは、正当なビーコン８Ｔから信号を受けた端末６と、なりすましビーコン８Ｆから信号を受けた端末６からの各受信情報を取得し得る。そして位置推定装置２Ａは、これらの端末６のＩＤを含む位置時刻情報を取得し得る。これにより位置推定装置２Ａは、正当なビーコン８Ｔとなりすましビーコン８Ｆに関する各受信情報に基づいて、軌跡抽出情報を生成する可能性がある。そして位置推定装置２Ａは、これらのビーコン８の各々から信号を受信した端末６が同一のビーコン８から信号を受信したものとして、各端末６の補間座標を一緒くたにして重み付き平均を行ってしまう可能性がある。そしてこのような重み付き平均の結果、正当なビーコン８Ｔの推定位置が、実際の設置位置より、なりすましビーコン８Ｆの設置位置の側へずれてしまう可能性がある。
【００９３】
本実施形態に係る位置推定装置２Ｂは、或る識別子を有するビーコン８の設置位置の推定において、同じ識別子を有する他のビーコン８がある場合において、推定されたビーコン８の位置に誤りがあると判定することができる。
【００９４】
図１３は、本実施形態に係る位置推定システム１Ｂの構成の一例を示す図である。図１３における位置推定システム１Ｂに含まれる位置推定装置１Ｂ以外の要素は、上記第１の実施形態におけるものと同様であるため説明を省略する。ただし図１３におけるビーコン８は、正当なビーコン８Ｔ、又はなりすましビーコン８Ｆである。また本実施形態に係る位置情報マスタデータベース４は、上記実施形態の場合において記憶する情報に加え、ビーコン８の推定位置が誤っているものか否かの情報を記憶する。当該システムに含まれる装置等の間の接続関係も、付されている符号に関係なく上記実施形態における接続関係と同様とする。
【００９５】
位置推定装置２Ｂは、上述した機能ブロックに加え、誤り判定部２３を備える。誤り判定部２３は、位置推定部２２に接続され、位置推定部２２により算出されたビーコン８の推定座標と端末６の補間座標と重みとを取得する。誤り判定部２３は、ビーコン８の推定位置と端末６の推定位置との間の距離（差分距離とも記載する）を算出し、当該距離と重みを用いて誤りスコアを算出する。ここで誤りスコアは、本実施形態では以下のように定義される。
誤りスコア＝重み×差分距離
【００９６】
誤りスコアについて説明する。なお、この誤りスコアは、端末６毎に算出されるものであるため、或る端末６の補間座標を用いて算出された誤りスコアを、当該端末６の誤りスコアとも記載する。或る識別子を有するビーコン８の設置位置の推定に用いられる、或るＩＤの端末６の補間座標に付与される重みが大きい場合、当該端末６の推定位置は、通常の場合、当該ビーコン８の設置位置に近いと考えられる。しかし重みが大きいにも関わらず、差分距離が大きい場合、当該端末６は、当該ビーコン８と同一の識別子を有するなりすましビーコン８Ｆからの信号を受信したと考えられる。このため誤り判定部２３は、或る識別子のビーコン８の設置位置の推定において、或る端末６の誤りスコアが閾値より大きい場合、当該ビーコン８の推定位置は誤っていると判定する機能を有する。
【００９７】
なおこの閾値は、例えば、設置位置が特定された任意の複数のビーコン８のうちの２つのビーコン８の距離の平均値等に基づき、ユーザにより適宜設定される値であるとする。
【００９８】
またなお、誤りスコアは上記の定義に限定されず、例えば、互いに桁数を合わせた重みと差分距離との和であってもよいし、桁数を互いに合わせた重みと差分距離のうち小さい値でもよい。
【００９９】
位置推定装置２Ｂは、位置推定部２２により算出されたビーコン８の推定座標と共に、誤り判定部２３により判定された結果を位置情報マスタデータベース４に記録する。
【０１００】
図１４は、本実施形態に係る位置推定装置２Ｂの各機能ブロックの処理内容を説明するための図である。ここで、データ取得部２０と軌跡抽出部２１と位置推定部２２による処理とこれらにより収集又は導出される情報は、上記第１の実施形態における場合と同様であるため、説明を省略する。
【０１０１】
誤り判定部２３は、上述したようにビーコン８の推定座標と端末６の補間座標と重みとを取得し、これらに基づき誤りスコアを算出し、当該誤りスコアが閾値より大きいか否かを判定する。誤り判定部２３は、或る識別子のビーコン８の設置位置の推定において、少なくとも１つの端末６の誤りスコアが閾値より大きい場合、位置推定部２２により算出された当該ビーコン８の推定座標は不正確であると判定する。また誤り判定部２３は、このような判定の結果を含む誤り判定情報を生成する。図１４に示す誤り判定情報を参照すると、識別子ｐ１のビーコン８の推定座標は誤りがあると判定されていることがわかる。また識別子ｐ２のビーコン８の場合における判定結果「-」は、当該ビーコン８の位置の推定に誤りがないことを示している。なお、ビーコン８の位置の推定に誤りがないとする判定結果として誤り判定情報に格納されるデータは、例えば初期値やＮｉｌｌ値など、誤りなしを示すデータであれば特に限定されない。
【０１０２】
図１５は、本実施形態に係る位置推定装置２Ｂによる処理のフローチャートである。当該フローチャートにおいて、ステップＳ１００からステップＳ１０２までの各処理の主体および処理内容は、図７を参照して説明した上記第１の実施形態の場合と同様であるため、説明を省略する。ステップＳ１０３において、位置推定装置２Ｂの誤り判定部２３による処理が実行される。
【０１０３】
図１６は、本実施形態における誤り判定部２３による処理のフローチャートである。誤り判定部２３は、ステップＳ１０２において位置推定部２２により得られたビーコン８の推定位置と、当該ビーコン８の設置位置の推定に用いられた端末６の推定位置との間の距離である差分距離を算出する（ステップＳ３００）。続いて誤り判定部２３は、ステップＳ３００で算出した差分距離と、ステップＳ１０２におけるステップＳ２０２（図１０）において位置推定部２２が算出した重みとを用いて、誤りスコアを算出する（ステップＳ３０１）。誤り判定部２３は、算出した誤りスコアを閾値と比較する。誤り判定部２３は、誤りスコアが閾値よりも大きい場合には、ステップＳ１０２におけるステップＳ２０３で算出したビーコン８の推定座標が誤っていると判定し、そうでない場合にはビーコン８の位置の推定が誤っていないと判定する（ステップＳ３０３）。誤り判定部２３は、ステップＳ３０３における処理による誤り判定結果を位置情報マスタデータベース４に記憶する。
【０１０４】
図１７は、本実施形態に係る位置推定装置２Ｂによる誤り判定処理の一例を説明するための図である。ここでは、位置推定装置２Ｂが移動履歴データベース３より、図１７の左に示される位置時刻情報と受信情報とを取得した場合を考える。ここでの位置時刻情報は、第１の実施形態に係る位置推定装置２Ａによる処理の説明のために、図８に例示した位置時刻情報と等しい。またここでの受信情報は、識別子以外、位置推定装置２Ａによる処理の説明のために、図８で例示した受信情報と等しい。図１７における受信情報において、ＩＤ１から６の端末６が受信した、ビーコン８からの信号に係る情報に含まれる識別子は、ｐ１であるとする。
【０１０５】
位置推定装置２Ｂのデータ取得部２０は、第１の実施形態におけるステップＳ１００（図７）における処理により、図１７の左に示される位置時刻情報と受信情報を移動履歴データベース３から読み込む。軌跡抽出部２１は、ステップＳ１０１において、位置時刻情報と受信情報とから軌跡抽出情報を生成する。位置推定部２２は、上述したステップＳ２００（図１０）における処理により、補正を行うかの判定結果を導出する。また位置推定部２２は、当該判定結果に基づき、上述したステップＳ２０１において、各端末６の第２の時間間隔を適宜補正する。そして位置推定部２２は、補正を行った場合には補正後の第１、２の時間間隔、補正を行わない場合には元の第１、２の時間間隔を用いて、各端末６の線形補間座標を算出する。また位置推定部２２は、ステップＳ２０２において、第１の地点と第２の地点との間の距離、短時間間隔、およびビーコン８から受信した信号の強度を用いて、各端末６の線形補間座標に付加する重みを算出する。そして位置推定部２２は、ステップＳ２０３において、識別子ｐ１のビーコン８に用いるＩＤ１から６の端末６の線形補間座標の重み付き平均を算出し、これを当該ビーコン８の推定座標とする。
【０１０６】
図１７に例示される場合においては、識別子ｐ１のビーコン８の推定座標は（５５．４、３９．６）と算出されている。
【０１０７】
図１８は、本実施形態に係る位置推定装置２Ｂによる誤り判定処理の一例を説明するための図である。誤り判定部２３は、識別子ｐ１のビーコン８の推定座標（５５．４、３９．６）と、ＩＤ１からＩＤ６の各端末６の線形補間座標を取得し、これらの間の差分距離を算出する（ステップＳ３００）。図１８に示される例においては、ＩＤ１の場合の差分距離の値は６０．２、ＩＤ２の場合の差分距離は２５．４である。
【０１０８】
算出した差分距離を用いて、誤り判定部２３は、各ＩＤについて誤りスコアを算出する（ステップＳ３０１）。図１８においては、ＩＤ１の場合の誤りスコアは２６．９であり、ＩＤ２の場合の誤りスコアは２．５である。
【０１０９】
次に誤り判定部２３は、ステップＳ３０１において算出した、各ＩＤにおける誤りスコアが閾値より大きいか否かを判定する。同一の識別子の場合における誤りスコアのうち、少なくとも１つが閾値より大きい場合、誤り判定部２３は、位置推定部２２が算出した当該識別子のビーコン８の推定座標が誤っていると判定する（ステップＳ３０２）。
【０１１０】
図１８の場合において、閾値を７とすると、ＩＤ１の場合の誤りスコア２６．９は閾値７より大きい。これにより、ＩＤ１の端末６の線形補間座標を用いて重み付き計算を行うことによって得られた識別子ｐ１のビーコン８の推定座標は、誤っている可能性が高いことがわかる。誤り判定部２３は、図１８の右下に例示されるような誤り判定情報を生成し、これを位置情報マスタデータベース４に記憶する。
【０１１１】
図１９は、本実施形態における誤り判定処理を行うことによる効果の一例を示す図である。ここでは、図１７に示す受信情報と位置時刻情報に基づいて、位置推定処理と誤り判定処理が行われた結果が示される。図１９における線や円やマーク等は、それぞれ上述の場合と同様のものを示す。
【０１１２】
図１９の左上段には、各端末６の推定位置が示される。またここには、同一の識別子ｐ１を有する２つのビーコン８が示される。
【０１１３】
図１９の右上段には、重み付き平均により得られた識別子ｐ１のビーコン８の推定位置が示される。なお、各端末６が推定位置において受信したと推定されるビーコン８からの信号を示すマークの傍らの数字は、重みを表す。例えばＩＤ１の場合では、重みは０．４５である。ここで、ＩＤ１の場合の重みは、ＩＤ１の端末６の推定位置がビーコン８の推定位置から離れているにも関わらず、他のＩＤの場合の重みより大きい。重みは、ビーコン８から近いほど大きくなるはずであり、これによりＩＤ１の端末６が受信した信号が、位置推定部２２により算出された推定座標に位置するビーコン８からのものなのか疑問が生じる。
【０１１４】
さらに図１９の下段の図を参照し、誤り判定処理について説明する。ここで、ビーコン８からの信号を示すマークの傍らの数字のうち、［］の外のものは重み、［］の中のものは誤りスコアを表す。例えばＩＤ１の場合では、重みは０．４５、誤りスコアは２６．９である。ＩＤ１の場合の誤りスコアは、閾値２５より大きい。同様にＩＤ５、６の場合の各誤りスコアも閾値より大きい。このため、位置推定部２２により得られたビーコン８の推定位置は誤っている可能性があると認識できる。これにより位置推定装置２Ｂは、誤った情報を正しい情報として位置情報マスタデータベース４に蓄積することを防ぐことができる。
【０１１５】
（第３の実施形態）
上記第２の実施形態に係る位置推定装置２Ｂは、同一の識別子を持つ２以上のビーコン８が存在する場合を考慮に入れ、自己が推定したビーコン８の位置が正しいか否かの判定を行うことができる。しかし当該位置推定装置２Ｂは、ビーコン８の推定位置に誤りがあると判定できても、同一の識別子を持つ２以上のビーコン８の各設置位置の推定を行えない。本実施形態に係る位置推定装置２Ｃは、ビーコン８の推定位置が正しいものか否かの判定を行える以外に、同一の識別子を持つ２以上のビーコン８の各々の設置位置を推定することができる。
【０１１６】
図２０は、本実施形態に係る位置推定システム１Ｃの構成の一例を示す図である。位置推定システム１Ｃは、上述した第１、２の実施形態における端末６、センサ７、ビーコン８、移動履歴データベース３、および位置情報マスタでエータベース４を備える。これらについては上記実施形態における場合と同様なので説明を省略する。なおビーコン８は、正当なビーコン８Ｔ又はなりすましビーコン８Ｆである。また位置推定システム１Ｃは、位置推定装置２Ｃを備える。当該システムに含まれる装置等の間の接続関係は、付されている符号に関係なく上記実施形態における接続関係と同様とする。
【０１１７】
位置推定装置２Ｃは、上記実施形態における位置推定装置２Ａ、２Ｂと同様に、データ取得部２０、軌跡抽出部２１、および位置推定部２２を備える。位置推定装置２Ｃは、これらに加え、誤り位置推定部２４を備える。ここで、位置推定装置２Ｃにおける誤り位置推定部２４以外の機能ブロックは、上記実施形態の場合と同様であるため説明を省略する。ただし、上記実施形態における位置推定部２２は、位置情報マスタデータベース４に接続されているが、本実施形態における位置推定部２２は位置情報マスタデータベース４に接続されていなくともよい。誤り位置推定部２４は、位置推定部２２と位置情報マスタデータベース４とに接続されている。
【０１１８】
誤り位置推定部２４は、位置推定部２２により算出された、ビーコン８の推定座標、端末６の補間座標、および各補間座標への重みを取得する。そして誤り位置推定部２４は、これらに基づいて後述するように同一の識別子を有する複数のビーコン８の各推定座標を算出する。誤り位置推定部２４は、位置情報マスタデータベース４と接続され、算出したビーコン８の推定座標を位置情報マスタデータベース４に出力する。
【０１１９】
図２１は、本実施形態に係る位置推定装置２Ｃの各機能ブロックの処理内容を説明するための図である。ここで、データ取得部２０と軌跡抽出部２１と位置推定部２２による各処理とこれらの機能ブロックにより収集又は導出される情報は、上記第１、２の実施形態における場合と同様であるため、説明を省略する。
【０１２０】
誤り位置推定部２４は、位置推定部２２により算出された、ビーコン８と端末６の各推定位置、および端末６の補間座標に付与する重みを取得する。誤り位置推定部２４は、取得したこれらの情報を用いて、同一の識別子を有するビーコン８が複数存在する場合に、これらのビーコン８の各々の推定座標を算出する。図２１の右下には、誤り位置推定部２４により算出されたビーコン８の推定座標が示される。識別子ｐ１のビーコン８は２つあることがわかり、これらの各推定座標は、Ｘ’１―１、Ｘ’１―２であることがわかる。
【０１２１】
図２２は、本実施形態に係る位置推定装置２Ｃによる処理のフローチャートである。ここでは、ステップＳ１００からステップＳ１０２までの処理は、上記実施形態の場合と同様であるので説明を省略する。ただし、ステップＳ１０２において上記実施形態における位置推定部２２は、位置情報マスタデータベース４にビーコン８の推定座標の出力を行っていたが、本実施形態に係る位置推定部２２から位置情報マスタデータベース４への当該出力はない。しかしこれに限定はされず、位置推定部２２から、位置情報マスタデータベース４にビーコン８の推定座標が出力されてもよい。この場合、位置推定部２２による当該出力の後に、誤り位置推定部２４がビーコン８の推定座標を位置情報マスタデータベース４に出力し、位置情報マスタデータベース４がこれに基づきビーコン８の推定座標を更新してもよい。あるいは、誤り位置推定部２４は、或る識別子のビーコン８の位置の推定に用いられた端末６の誤りスコアが閾値より大きい場合に、算出した当該識別子のビーコン８の推定座標を、位置情報マスタデータベース４に出力してもよい。
【０１２２】
図２３は、本実施形態における誤り位置推定部２４による処理（図２２におけるステップＳ１０４）のフローチャートである。また図２４、２５、２６、２７は、本実施形態における誤り位置推定処理の例を示す図である。以下、図２３、および図２４から図２７を参照しながら誤り位置推定処理について説明する。なお図２４から２７は、位置推定装置２Ｃが、図２１の左に示される位置時刻情報と受信情報を読み込んだ場合における誤り位置推定処理についてのものである。
【０１２３】
誤り位置推定部２４は、位置推定部２２が軌跡情報を用いて算出したビーコン８と端末６の各推定座標から差分距離を算出する（ステップＳ４００）。図２４を参照すると、例えばＩＤ１の場合の差分距離は６０．２と求められ、ＩＤ２の場合の差分距離は２５．４と求められていることがわかる。
【０１２４】
図２３に戻る。ステップＳ４００に続き、誤り位置推定部２４は誤りスコアを算出する（ステップＳ４０１）。図２４を参照すると、誤り位置推定部２４により、ＩＤ１の場合の誤りスコアは２６．９、ＩＤ２の場合の誤りスコアは２．５と算出されていることがわかる。
【０１２５】
図２３に戻る。ステップＳ４０１に続き、誤り位置推定部２４は、各端末６の誤りスコアが閾値より大きいか判定する（ステップＳ４０２）。
【０１２６】
図２４を参照すると、ＩＤ１の場合には誤りスコアが２６．９であるが、これは閾値である７より大きい。このため誤り位置推定部２４は、ＩＤ１の端末６が受信した信号は、座標（５５．４、３９．５）に対応する位置に設置されていると推定されるビーコン８からのものとするのは誤りである可能性があると判定する。これにより、図２４に例示される軌跡情報において、ＩＤ１の場合の判定結果は「誤り」となっている。同様に、ＩＤ２の場合には、誤りスコアは、閾値の７より小さい２．５となる。このため、ＩＤ２の端末６が受信した信号は、座標（５５．４、３９．５）に対応する位置にあると推定されるビーコン８からのものである可能性が高いと判定される。このため図２４に例示される軌跡情報において、ＩＤ２の場合の判定結果は、「-」で示されている。
【０１２７】
図２３に戻る。ステップＳ４０２に続き、誤り位置推定部２４は、或る識別子のビーコン８に対し、誤りスコアが閾値より大きい端末６がある場合には（ステップＳ４０３：Ｙｅｓ）、誤りスコアが最高となる端末６の推定位置（補間座標）を別のクラスタへと分類する（ステップＳ４０４）。続いて誤り位置推定部２４は、クラスタ毎に、端末６の補間座標の重み付き平均を計算する。当該計算によって得られた座標に対応する位置を重心とも記載する。誤り位置推定部２４は、各端末６の推定位置と各クラスタの重心との間の距離（当該距離も差分距離とも記載する）を算出する。そして誤り位置推定部２４は、端末６の推定位置と重心との間の差分距離が最も小さいクラスタへ、当該端末６の推定位置を再分類する（ステップＳ４０６）。誤り位置推定部２４は、各端末６の推定位置の分類先がステップＳ４０６の前後で変化しているか否かを判定し、変化していれば（ステップＳ４０７：Ｙｅｓ）、ステップＳ４０５の処理に戻る。一方、各端末６の補間座標の分類先がステップＳ４０６の前後で変化していなければ（ステップＳ４０７：Ｎｏ）、誤り位置推定部２４は、ステップＳ４００の処理に戻る。なお、誤り位置推定部２４は、ここでステップＳ４００の処理に戻る代わりにステップＳ４０１の処理に戻ってもよい。
【０１２８】
図２５を参照してステップＳ４０４の処理について説明する。図２５は、図２４に具体的に例示した処理に続く処理を示す。図２５の上に示す軌跡情報の判定結果を参照すると、「誤り」が存在する（ステップＳ４０３：Ｙｅｓ）。これにより、誤り位置推定部２４は、誤りスコアが最高の２６．９であるＩＤ１の端末６の補間座標（８．８、７７．７）を別のクラスタへ分類する（ステップＳ４０４）。図２５の場合においては、クラスタ名をビーコン８の識別子と対応させているが、補間座標（８．８、７７．７）が分類されたクラスタをｐ１−２とし、これ以外の補間座標を含むクラスタをｐ１−１としている。次に誤り位置推定部２４は、クラスタｐ１−１とｐ１−２の各々における補間座標の重み付き平均を算出し、クラスタｐ１−１の重心の座標（７６．１、２２．５）と、クラスタｐ１−２の重心の座標（８．８、７７．７）を得る（ステップＳ４０５）。
【０１２９】
図２５において、更に誤り位置推定部２４は、各線形補間座標に対応する端末６の推定位置と各クラスタの重心との間の差分距離を算出し、各端末６の推定位置を差分距離がより小さいクラスタへ再分類する。図２５の下段に示される軌跡情報には、各端末６の推定位置と各重心との間の差分距離が示され、例えば補間座標（３０、４０）に対応する端末６の推定位置と、クラスタｐ１−１の重心との間の差分距離は４９．３である。また当該端末６の推定位置とクラスタｐ１−２の重心との間の距離は４３．２である。ここから当該端末６の推定位置は、クラスタｐ１−１の重心よりもクラスタｐ１−２の重心に近いことがわかる。このため誤り位置推定部２４は、当該端末６の推定位置をクラスタｐ１−２へ再分類する（ステップＳ４０６）。図２５の上下段の各軌跡情報における、補間座標（３０、４０）の分類先のクラスタについて参照すると、ステップＳ４０５の前後のそれぞれにおいてクラスタｐ１−1、クラスタｐ１−２に分類され、分類結果に変化が生じていることがわかる（ステップＳ４０７）。
【０１３０】
図２６には、図２５に示す誤り位置推定部２４による処理の続きであって、ステップＳ４０７の処理からステップＳ４０５へ処理が移行した場合（図２３におけるステップＳ４０７：Ｙｅｓ）の誤り位置推定部２４による処理の内容が示される。誤り位置推定部２４は、図２６の上段に示される再分類後の軌跡情報を用いて、クラスタｐ１−１、ｐ１−２のそれぞれにおける各補間座標の重み付き平均を再度算出する（ステップＳ４０５）。これによりクラスタｐ１−１、ｐ１−２の各々の重心の座標は、図２６の中段に示されるように（８１．２、２０．６）、（１２．７、７０．８）となる。誤り位置推定部２４は、各補間座標に対応する端末６の推定位置と各重心との間の距離を再度算出する。これにより例えば、補間座標（３０、４０）に対応する端末６の推定位置と、クラスタｐ１−１の重心との間の差分距離は５４．８、当該端末６の推定位置とクラスタｐ１−２の重心との間の差分距離は３５．４と求まる。誤り位置推定部２４は、各補間座標を、その重心との間の差分距離が小さくなるクラスタへ再度分類する。図２６の下段には、各補間座標に対し再度分類を行った場合の結果を格納した軌跡情報が示されている。ここでは、直前のステップＳ４０５の処理後、補間座標の分類結果に変化はないことがわかる（図２３におけるステップＳ４０７：Ｎｏ）。これにより、誤り位置推定部２４は、ステップＳ４００へ処理を戻す。
【０１３１】
図２７は、図２６に示す誤り位置推定部２４による処理の続きが示される。誤り位置推定部２４は、図２７の中段に示される各クラスタの重心の座標を用いて、端末６の推定位置と、当該端末６の補間座標が分類されるクラスタの重心との間の差分距離を算出する（ステップＳ４００）。誤り位置推定部２４は、このステップＳ４００における差分距離の算出に代わり、ステップＳ４０６において算出した差分距離のうち短いものを用い、これにより軌跡情報における差分距離を更新してもよい。またこの際に誤り位置推定部２４は、ステップＳ４０６において算出した差分距離のうち長いものを削除してもよい。図２７の上段に示される軌跡情報における例えばＩＤ１の場合には、差分距離７．９が示される。
【０１３２】
誤り位置推定部２４は、直前のステップＳ４００の処理で得た、各ＩＤにおける差分距離と重みから誤りスコアを算出する（ステップＳ４０１）。図２７において、ＩＤ１の場合には、誤りスコアは３．５となることがわかる。当該誤りスコアは閾値である７よりも小さい。同様に、ＩＤ２、３、４、５、６の各場合についても、誤りスコアは閾値以下となっていることがわかる。これにより誤り位置判定部２４は、誤りスコアが閾値より大きいものが存在しないと判定する（ステップＳ４０３：Ｎｏ）。このとき直前のステップＳ４０５において算出された各クラスタの重心の座標（８１．２、２０．６）、（１２．７、７０．８）を、識別子がｐ１の２つのビーコン８の各推定座標と見なすことができる。これにより、端末６が受信した信号を発したとされるビーコン８が、重みが大きいにも関わらず遠くに存在しているという矛盾が解消される。
【０１３３】
またここでは、ステップＳ４０４において、誤りスコアが閾値より大きい２以上の端末６の各推定位置を一まとめに別のクラスタへ分類するよりも、誤りスコアが最高の１つの端末６の補間座標を別のクラスタに分類している。この理由は、２以上の端末６の各推定位置をまとめて別の１つのクラスタへ分類しても、これらの端末６が同じビーコン８から信号を受信したとは限らないからである。そして、ステップＳ４０４において１つの補間座標を、ステップＳ４０３の処理毎に別のクラスタへ分類し、後続の処理を行うことにより、閾値以上となる誤りスコアが生じるような事態が収集され、各補間座標は分類されるべきクラスタへとまとめられていく。
【０１３４】
閾値より大きい誤りスコアが存在しない場合（ステップＳ４０３：Ｎｏ）、誤り位置推定部２４は、算出したビーコン６の推定位置を位置情報マスタデータベース４に出力し、処理を終える。これに伴い、位置推定装置２Ｃは、図２２に示すように一連の処理を終了する。
【０１３５】
図２８は、本実施形態に係る位置推定装置２Ｃによる位置推定において得られる効果の一例を示す図である。図２８の左の図に示される各端末６の重みや誤りスコアや推定される移動経路や、推定されるビーコンの位置等は、図１９等と同様である。また図２８において例示される処理は、誤り位置推定部２４が図２４から図２７における軌跡情報を用いて処理を行った場合を示す。図２８の左に示す図は、誤り位置推定部２４が処理を開始してから、最初に各端末６の誤りスコアが算出された状態を表している。ＩＤ１の場合、誤りスコアは２６．９であり、これは、閾値７よりも大きく且つＩＤ１からＩＤ６までにおける各誤りスコアの中で最高値である。これにより、図２８の真ん中に示されるように、ＩＤ１の場合の推定位置は、他のＩＤの端末６の推定位置とは別のクラスタに分けられる。この時点でクラスタ毎の重心をビーコン８の推定位置として考えると、図２８の真ん中の図のうち、クラスタｐ１−２におけるビーコン８の推定位置は、ＩＤ１の端末６の推定位置と等しくなる。そしてクラスタｐ１−１におけるビーコン８の推定位置は、図２８の真ん中の図において、もう一方のビーコン８の推定位置を示す図形により示される位置となる。この場合において、誤りスコアを算出すると、図２８の真ん中の図における［］の中の数字となる。例えば線形座標（３０、４０）のＩＤ２の場合の誤りスコアは、図２５の下段に示す軌跡情報から、クラスタｐ１−１の重心とＩＤ２の端末６の推定位置との間の差分距離４９．３と、重み０．１との積の４．９となる。
【０１３６】
誤り位置推定部２４は、各ＩＤの端末６の推定位置が、重心との間の距離がより小さくなるよう更に分類を行う。当該分類に基づいて算出された各クラスタの重心は、図２８の右の図におけるビーコン８の推定位置のマークにより示される。またこの図における［］内に、各端末６の誤りスコアが示されるが、誤りスコアはどれも閾値以下であることがわかる。そしてこれにより、各クラスタの重心の位置が、識別子を同じくする２つのビーコン８の各々の推定位置に対応することがわかる。
【０１３７】
このように本実施形態に係る位置推定装置２Ｃによれば、識別子が同一の２以上のビーコン８が存在する場合でも、これらのビーコン８の各々の位置を、精度を劣化させることなく推定することができる。
【０１３８】
（その他の実施形態１）
上記実施形態に係る位置推定装置２Ａ、２Ｂ、２Ｃは、ビーコン８やセンサ７から信号を受信した端末６からの受信情報や位置時刻情報に基づいて、ビーコン８の位置を推定した。本実施形態に係る位置推定装置２Ｄは、ビーコン８からの信号に基づく受信情報に代わり、キーワードとなる単語を含む、ＳＮＳ（ｓｏｃｉａｌ  ｎｅｔｗｏｒｋｉｎｇ  ｓｅｒｖｉｃｅ）等におけるデータを用いる。ここでキーワードとなる単語は、例えば「ラーメン」や「パスタ」等の料理名や、「背広」、「シューズ」等の商品名などである。このような単語を含むデータをここではＳＮＳデータと記載する。
【０１３９】
図２９は、その他の実施形態に係る位置推定方法を示す図である。ここでは位置推定装置２Ｄは、上述した受信情報に代わり、ＳＮＳデータをクラウド等から読み込む。図２９に示すＳＮＳデータには、当該ＳＮＳデータに含まれる単語の入力に用いられた端末６のＩＤと、当該単語がＳＮＳのホームページ上に書き込まれた時刻と、当該単語の文字データと、当該入力内容の信頼度が含まれる。この入力内容の信頼度とは、端末６からの書き込みの内容がどれだけ信頼できるかを数値で表したものである。信頼度は、端末６によっても変化し得るし、その書き込み内容によっても変化し得る。信頼度は上記実施形態におけるビーコン８からの信号の強度に対応し、このため以下では信頼度を強度とも記載する。
【０１４０】
上記実施形態では、端末６がビーコン８等の発信機から信号を受信した時刻を受信時刻としたが、ここでは単語がＳＮＳのホームページ上に書き込まれた時刻、又は書き込みを行った人物が書き込みを行うきっかけとなった情報を取得した時刻がこれに対応する。そのため、これらの時刻をまとめて受信時刻とも記載する。
【０１４１】
また上記実施形態におけるビーコン８からの信号は、ＳＮＳに対し書き込みを行った人物が移動中などに見つけた店舗の情報等に対応する。また本実施形態においては店舗等が、上記実施形態におけるビーコン８等に対応する。
【０１４２】
図２９に示されるＳＮＳデータを参照すると、ＩＤ１、２、３の端末６から、それぞれ時刻７、３０、４０に単語「ラーメン」がＳＮＳのホームページ上に書き込まれていることがわかる。またＩＤ１、２、３の端末６からの当該書き込みについての信頼度は、それぞれ７０、１００、９０であることがわかる。位置推定装置２Ｄは、これらのＳＮＳデータと位置時刻情報を用いて、例えばラーメン店の場所を推定する。
【０１４３】
まず位置推定装置２Ｄは、上述した軌跡抽出情報に対応する情報であって、ＩＤ毎に、位置時刻情報とＳＮＳデータとをまとめ、これを時刻の昇順に並べた情報を生成する。この際において位置推定装置２Ｄは、ＳＮＳデータの時刻の直前と直後の時刻に係る位置時刻情報と当該ＳＮＳデータとを組み合わせる。このように生成された情報もまた軌跡抽出情報を記載する。
【０１４４】
位置推定装置２Ｄは、上記実施形態と同様に、各ＩＤの端末６の移動経路と、受信時刻における端末６の推定位置、すなわち単語がＳＮＳのホームページ上に書き込まれたと推定される位置（書込推定位置とも記載する）を導出する。図２９の上段の真ん中より左に示す図に、当該導出された各端末６の移動経路と、各端末６の書込推定位置が示される。ここでは、ハッチングが施されていない雲のマークの地点において、「ラーメン」がＳＮＳのホームページ上に書き込まれたと推定され、ハッチングが施された雲のマークの地点において、「パスタ」がＳＮＳのホームページ上に書き込まれたと推定される。
【０１４５】
位置推定装置２Ｄは、これらの書込推定位置に対し、単語毎に重み付き平均を算出し、当該単語に関係する店舗等の位置を推定する。本実施形態における重みは、上記実施形態の場合と同様に定義される。ここでの単語は、上記実施形態におけるビーコン８の識別子に対応する。
【０１４６】
図２９の右上には、当該推定結果の具体例が示される。ここでは、ラーメン店の推定位置の座標として（１４．１、６８．７）が得られている。
【０１４７】
図３０は、本実施形態に係る位置推定装置２Ｄの機能ブロックを示す図である。本実施形態に係る位置推定装置２Ｄの各機能ブロックは、第１の実施形態に係る位置推定装置２Ａの機能ブロックと同様である。ただし本実施形態におけるデータ取得部２０は、移動履歴データベース３と位置情報マスタデータベース４の他に、クラウド等に接続されているか、又はネットワーク５に直接接続されている。
【０１４８】
また位置推定部２２は、位置情報マスタデータベース４以外にも、クラウド等に接続されているか、又はネットワーク５に直接接続されていてもよい。あるいは位置情報マスタデータベース４は、ネットワーク５に接続されていてもよく、例えばクラウドにおけるデータベースであってもよい。
【０１４９】
本実施形態に係る位置推定装置２Ｄによる位置推定に係る処理は、図７および図１０に示したものと同様である。ただしデータ取得部２０は、ステップＳ１００において受信情報に代わり、ＳＮＳデータを取得する。また位置推定部２０は、図１０のステップＳ２０３の処理に代わり、単語が意味する物等の提供等を行う店舗等の位置を推定し、その座標を算出する。またステップＳ２０３において位置推定部２２は、推定した店舗等の位置を、位置情報マスタデータベース４に代わり、クラウド等に記憶してもよい。
【０１５０】
本実施形態に係る位置推定装置２Ｄによれば、端末６のユーザが、店舗等からの提供品等を移動中に目にしてＳＮＳのホームページに書き込んだデータを、当該提供品等を扱う場所や当該店舗等の位置の推定に有効利用することができる。これにより目的の店の位置や、目的の提供品がどこに行けば手に入るかの情報を、ネットワーク５に接続される端末６を有するユーザに提供することができる。
【０１５１】
（その他の実施形態２）
上記その他の実施形態１では、同一の商品等を提供する複数の店舗等があるような場合に次のような問題がある。複数の店舗等の前を通りかかるなどした１以上の端末６の各ユーザによりＳＮＳのホームページに同じような単語が書き込まれた結果、複数の店舗等に関するはずのＳＮＳデータが１つの店舗等に関するものと扱われかねなくなる。そしてこのようなＳＮＳデータを用いて位置推定装置２Ｄが算出した店舗等の推定座標は、実際の位置とは異なる可能性がある。
【０１５２】
本実施形態に係る位置推定装置２Ｅは、同一の商品等を提供する複数の店舗等の各々の位置の推定を行う。
【０１５３】
本実施形態に係る位置推定装置２Ｅは、上述したその他の実施形態１に係る位置推定装置２Ｄが取得する位置時刻情報やＳＮＳデータを取得する。そして、位置推定装置２Ｅは、これらを元に軌跡抽出情報を作成し、上記実施形態と同様に店舗等の位置を推定する。この際に、店舗等の位置の推定に用いられる端末６の受信時刻における推定位置と、当該店舗等の推定位置との間の距離（当該距離も差分距離とも記載する）、および重みから第２、３の実施形態における場合と同様の誤りスコアを算出する。そして第３の実施形態と同様に、同一の単語に対応付けられる複数の店舗等の位置を推定する。
【０１５４】
図３１は、本実施形態に係る位置推定装置２Ｅの機能ブロックを示す図である。本実施形態に係る位置推定装置２Ｅの各機能ブロックは、第３の実施形態に係る位置推定装置２Ｃの機能ブロックと同様である。ただし本実施形態におけるデータ取得部２０は、移動履歴データベース３と位置情報マスタデータベース４の他に、クラウド等に接続されているか、又はネットワーク４に直接接続されていてもよい。
【０１５５】
また本実施形態における誤り位置推定部２４は、位置情報マスタデータベース４以外にも、クラウド等に接続されているか、又はネットワーク５に直接接続されていてもよい。あるいは位置情報マスタデータベース４は、ネットワーク５に接続されていてもよく、例えばクラウドにおけるデータベースであってもよい。
【０１５６】
本実施形態に係る位置推定装置２Ｅによる位置推定に係る処理は、図２２および図２３に示したものと同様である。ただし本実施形態におけるデータ取得部２０は、ステップＳ１００において受信情報に代わり、ＳＮＳデータを取得する。また本実施形態における位置推定部２２は、ステップＳ１０２の処理に代わり、ビーコン８の推定位置の座標を得る代わりに、単語が意味する物等の提供等を行う店舗等の推定位置の座標を算出する。本実施形態における誤り位置推定部２４によるステップＳ１０４における処理は、上記実施形態において算出したビーコン８の推定位置の座標に代わり、同一の単語に対応付けられる複数の店舗等の各推定位置の座標を算出する。また本実施形態における誤り位置推定部２４は、ステップＳ４０３において閾値より大きい誤りスコアがない場合、ビーコン８の推定位置の座標に代わり、推定した店舗等の位置を位置情報マスタデータベース４又はクラウド等に記憶する。
【０１５７】
図３２は、本実施形態に係る位置推定装置２Ｅによる処理の一例を示す図である。位置推定装置２Ｅは、図３２の左に示される位置時刻情報とＳＮＳデータを取得する。この位置時刻情報は、上記実施形態におけるものと同様である。またＳＮＳデータは上記実施形態におけるＳＮＳデータと単語以外は同一であり、単語は全て「ラーメン」となっている。
【０１５８】
図３２における上段の中央から左寄りの図には、上記その他の実施形態１の場合と同様である。図３２の右上の図には、誤り位置推定部２４により導出された複数のラーメン店の各々の推定位置が示されている。ここでは、ＳＮＳのホームページ上に「ラーメン」の単語が書き込まれるきっかけとなったラーメン店は２つあることがわかる。そしてこれらのラーメン店のうちの、一方の推定座標として（８２．２、２０．６）、他方の推定座標として（１２．７、７０．８）が算出されたことがわかる。
【０１５９】
本実施形態に係る位置推定装置２Ｅによれば、同一の商品等を提供する複数の店舗等がある場合でも、ＳＮＳデータにおける短い単語を用いて、これら複数の店舗の各々の位置の推定を行うことができる。
【０１６０】
（その他の実施形態３）
上記実施形態においては、移動する端末６からの受信情報等に基づいて固定されたビーコン８や店舗等の位置の推定が行われた。しかし位置推定装置２Ａ等は、上記端末６に代わり、固定されたゲートウェイ等の受信機を用いて、固定されたビーコン８に代わり移動体端末の位置を推定してもよい。この場合、固定されたゲートウェイ等の受信機が上記実施形態における端末６に対応し、移動体端末が上記実施形態におけるビーコン８等の発信機に対応する。なお、このときに用いられるセンサ７は、位置が特定されていれば固定されていてもいなくてもよい。
【０１６１】
（その他の実施形態４）
上記実施形態においては端末６の平均移動速度が算出され、当該端末６に滞留があるかないか等が判定された。しかし、センサ７又はビーコン８が、端末６との間の相対速度や相対的な方向等の情報を取得できる場合には、このような情報を当該センサ７又はビーコン８から端末６は取得してもよい。そして当該端末６から相対速度等の情報を取得した位置推定装置２Ａ等は、これをビーコン８の位置の推定に用いてもよい。
【０１６２】
図３３は、第１、２、３の実施形態とその他の実施形態１、２、３、４に係る各位置推定装置の各機能を実現するためのハードウェア構成の一例を示す図である。なおここでは、各位置推定装置は、一般的なコンピュータとしてハードウェアを有し、各位置推定装置による処理は、以下に示すハードウェア９を具体的に利用することにより実行される。ハードウェア９は、互いにバス９０によって接続されたプロセッサ９１、メモリ９２、記憶装置９３、ネットワークインタフェース回路９４、および入力装置９５を備える。
【０１６３】
プロセッサ９１は、例えばシングルコア、デュアルコア、またはマルチコアのプロセッサである。
【０１６４】
メモリ９２は、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、半導体メモリである。
【０１６５】
プロセッサ９１が、メモリ９２に記憶された情報、または記憶装置９３からメモリ９２に読み込んだ情報を用いて、メモリ９２に記憶された各種プログラムを実行することにより、軌跡抽出部２１、位置推定部２２の機能が実現される。同様に、プロセッサ９１とメモリ９２、又はプロセッサ９１とメモリ９２と記憶装置９３により、第２の実施形態等における誤り判定部２３、第３の実施形態等における誤り位置推定部２４の機能が実現されることができる。
【０１６６】
記憶装置９３は、例えばハードディスクドライブ、光ディスク装置等であり、外部記憶装置や可搬型記憶媒体でもよい。なお、移動履歴データベース３や位置情報マスタデータベース４が、当該記憶装置９３により実現されてもよい。
【０１６７】
ネットワークインタフェース回路８４は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネット、またはイントラネット等を介して、位置推定装置が他のノードと通信を行えるようにするためのインタフェースである。移動履歴データベース３や位置情報マスタデータベース４が位置推定装置の外部に存在する場合や、位置推定装置がクラウド等から情報を収集する場合等において、ネットワークインタフェース回路２３により上記データ取得部２０のデータ収集機能が実現される。また、データ取得部２０が位置の推定の対象となるビーコン８の選択等を行うような場合には、当該データ取得部２０の機能は、上記プロセッサ９１とメモリ９２等により実現される。
【０１６８】
入力装置９５は、例えばキーボードやタッチパネル等であり、位置の推定の対象となるビーコン８の選択をユーザが行い、当該ビーコン８の識別子等を入力するためのものである。なお、位置推定装置により、位置の推定の対象となるビーコン８が自動的に線ｔなくされるような場合等には、当該入力装置９５はなくともよい。
【０１６９】
なお、上述した場合以外にも、図１、１３、２０、３０、３１の各々の機能ブロックの全て、又はその一部の機能は、適宜、専用のハードウェアにより実現されることもできる。
【０１７０】
上述の実施形態１〜ｎを含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
端末が発信機からの信号を受信した受信時刻と、前記端末が受信した前記信号の強度と、前記端末が前記受信時刻よりも前の第１の時刻において第１の地点で取得した第１の位置時刻情報と、前記端末が前記受信時刻よりも後の第２の時刻において第２の地点で取得した第２の位置時刻情報と、を取得する取得部と、
前記第１の位置時刻情報および前記第２の位置時刻情報より、前記端末の前記第１の地点と前記第２の地点の間の平均移動速度を算出し、前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離以上である場合に、前記第１の時刻と前記受信時刻との間の第１の時間間隔と、前記受信時刻と前記第２の時刻との間の第２の時間間隔のうちの少なくとも一方に対し補正を行い、該補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行い、該推定に基づいて前記発信機の位置の推定を行う位置推定部と、
を備えることを特徴とする位置推定装置。
（付記２）
前記位置推定部は、前記補正を前記第２の時間間隔に対し行うことを特徴とする付記１に記載の位置推定装置。
（付記３）
前記位置推定部は、
前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離未満である場合に、前記補正を行い、該補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末（６）の位置の推定を行う、
ことを特徴とする付記１又は２に記載の位置推定装置。
（付記４）
前記位置推定部は、
前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離未満である場合には、前記補正を行わず、前記第１の時間間隔と前記第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行う、
ことを特徴とする付記１又は２に記載の位置推定装置。
（付記５）
前記位置推定部は、
前記補正を行う場合には、前記補正の後の第１の時刻と第２の時刻のうちの少なくとも一方を用いて線形補間を行うことにより前記受信時刻における前記端末の位置の推定を行い、
前記補正を行わない場合には、前記第１の時刻と前記第２の時刻のうちの少なくとも一方を用いて線形補間を行うことにより前記受信時刻における前記端末の位置の推定を行う、
ことを特徴とする付記１から４のいずれかに記載の位置推定装置。
（付記６）
前記位置推定部は、
前記補正を行う場合には、前記補正の後の第１の時間間隔と第２の時間間隔のうち、より短い時間間隔に基づき前記受信時刻における前記端末の位置の推定を行い、
前記補正を行わない場合には、前記第１の時間間隔と前記第２の時間間隔のうち、より短い時間間隔に基づき前記受信時刻における前記端末の位置の推定を行う、
ことを特徴とする付記１から５のいずれかに記載の位置推定装置。
（付記７）
前記位置推定部は、
推定された前記端末の位置の座標に重みを付与して前記発信機の位置の座標を算出し、
前記重みは、
前記位置推定部により前記補正が行われる場合には、前記補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方を用いて算出され、
前記位置推定部により前記補正が行われない場合には、前記第１の時間間隔と前記第２の時間間隔のうちの少なくとも一方を用いて算出される、
ことを特徴とする付記１から６のいずれかに記載の位置推定装置。
（付記８）
前記重みの算出には、さらに、前記信号の強度と、前記第１の地点と前記第２の地点との間の距離のうちの少なくとも１つが用いられることを特徴とする付記７に記載の位置推定装置。
（付記９）
前記位置推定装置は、さらに、
前記発信機の推定位置と、前記発信機の位置の推定に用いられた前記端末の推定位置との間の差分距離を算出し、
前記差分距離と前記重みとに基づいて誤りスコアを算出し、前記誤りスコアが閾値より大きい場合に、前記信号が前記発信機から発信されたものではないと判定する誤り判定部、
を備えることを特徴とする付記７又は８に記載の位置推定装置。
（付記１０）
前記位置推定装置は、さらに誤り位置推定部を備え、
前記誤り位置推定部は、
前記発信機の推定位置と、前記発信機の位置の推定に用いられた１以上の前記端末の各推定位置との間の差分距離を算出し、
前記端末毎に、前記差分距離と前記重みとに基づいて誤りスコアを算出し、
前記１以上の端末の誤りスコアのうち少なくとも１つが閾値よりも大きい場合に、前記誤りスコアが前記１以上の端末の誤りスコアのうちで最高の前記端末により受信された前記信号は、前記発信機とは別の発信機から発信されたものと判定し、
前記１以上の端末のうち、前記発信機から発信された信号を受信したと判定された前記端末の推定位置に基づき、前記発信機の推定位置を再度導出し、
前記１以上の端末のうち、前記別の発信機から発信された信号を受信したと判定された前記端末の推定位置に基づき、前記別の発信機の推定位置を導出する、
ことを特徴とする付記７又は８に記載の位置推定装置。
（付記１１）
前記誤り位置推定部は、
前記１以上の端末の各推定位置と、前記発信機の推定位置との間の差分距離を算出し、
前記１以上の端末の各推定位置と、前記別の発信機の推定位置との間の差分距離を算出し、
前記端末の推定位置と前記発信機の推定位置との間の差分距離が、前記端末の推定位置と前記別の発信機の推定位置との間の差分距離以下の場合、前記端末は前記受信時刻において前記発信機より信号を受信したと判定し、
前記端末の推定位置と前記発信機の推定位置との間の差分距離が、前記端末の推定位置と前記別の発信機の推定位置との間の差分距離より大きい場合、前記端末は前記受信時刻において前記別の発信機より信号を受信したと判定し、
前記１以上の端末のうち、前記発信機から発信された信号を受信したと判定された前記端末の推定位置に基づき、前記発信機の推定位置の導出し、
前記１以上の端末のうち、前記別の発信機から発信された信号を受信したと判定された前記端末の推定位置に基づき、前記別の発信機の推定位置を導出する、
ことを特徴とする付記１０に記載の位置推定装置。
（付記１２）
前記誤り位置推定部は、
前記発信機から発信された信号を受信したと判定された前記端末を第１のクラスタへ分類し、前記別の発信機から発信された信号を受信したと判定された前記端末を第２のクラスタへ分類し、
前記第１のクラスタにおける前記端末の推定位置に基づいて前記発信機の推定位置を導出し、
前記第２のクラスタにおける前記端末の推定位置に基づいて前記別の発信機の推定位置を導出する、
ことを特徴とする付記１０又は１１に記載の位置推定装置。
（付記１３）
前記発信機は、ビーコンであることを特徴とする付記１から１２のいずれか１つに記載の位置推定装置。
（付記１４）
端末が発信機からの信号を受信した受信時刻と、前記端末が受信した前記信号の強度と、前記端末が前記受信時刻よりも前の第１の時刻において第１の地点で取得した第１の位置時刻情報と、前記端末が前記受信時刻よりも後の第２の時刻において第２の地点で取得した第２の位置時刻情報と、を取得し、
前記第１の位置時刻情報および前記第２の位置時刻情報より、前記端末の前記第１の地点と前記第２の地点の間の平均移動速度を算出し、
前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離以上である場合に、前記第１の時刻と前記受信時刻との間の第１の時間間隔と、前記受信時刻と前記第２の時刻との間の第２の時間間隔のうちの少なくとも一方に対し補正を行い、該補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行い、該推定に基づいて前記発信機の位置の推定を行う、
処理を位置推定装置に実行させる位置推定プログラム。
（付記１５）
端末が発信機からの信号を受信した受信時刻と、前記端末が受信した前記信号の強度と、前記端末が前記受信時刻よりも前の第１の時刻において第１の地点で取得した第１の位置時刻情報と、前記端末が前記受信時刻よりも後の第２の時刻において第２の地点で取得した第２の位置時刻情報と、を取得し、
前記第１の位置時刻情報および前記第２の位置時刻情報より、前記端末の前記第１の地点と前記第２の地点の間の平均移動速度を算出し、
前記平均移動速度が所定値以下であり、且つ前記第１の地点と前記第２の地点との間の距離が所定の距離以上である場合に、前記第１の時刻と前記受信時刻との間の第１の時間間隔と、前記受信時刻と前記第２の時刻との間の第２の時間間隔のうちの少なくとも一方に対し補正を行い、該補正の後の第１の時間間隔と第２の時間間隔のうちの少なくとも一方に基づき、前記受信時刻における前記端末の位置の推定を行い、該推定に基づいて前記発信機の位置の推定を行う、
位置推定装置が実行する位置推定方法。
【符号の説明】
【０１７１】
１  位置推定システム
２Ａ、２Ｂ、２Ｃ、２Ｄ、２Ｅ  位置推定装置
３  移動履歴データベース
４  位置情報マスタデータベース
５  ネットワーク
６  端末
７  センサ
８  ビーコン
８Ｆ  なりすましビーコン
８Ｔ  正当なビーコン
９  ハードウェア
２０  データ取得部
２１  軌跡抽出部
２２  位置推定部
２３  誤り判定部
２４  誤り位置推定部
９０  バス
９１  プロセッサ
９２  メモリ
９３  記憶装置
９４  ネットワークインタフェース回路
９５  入力装置
【図１】
2019158608.tif 000003
【図２】
2019158608.tif 000004
【図３】
2019158608.tif 000005
【図４】
2019158608.tif 000006
【図５】
2019158608.tif 000007
【図６】
2019158608.tif 000008
【図７】
2019158608.tif 000009
【図８】
2019158608.tif 000010
【図９】
2019158608.tif 000011
【図１０】
2019158608.tif 000012
【図１１】
2019158608.tif 000013
【図１２】
2019158608.tif 000014
【図１３】
2019158608.tif 000015
【図１４】
2019158608.tif 000016
【図１５】
2019158608.tif 000017
【図１６】
2019158608.tif 000018
【図１７】
2019158608.tif 000019
【図１８】
2019158608.tif 000020
【図１９】
2019158608.tif 000021
【図２０】
2019158608.tif 000022
【図２１】
2019158608.tif 000023
【図２２】
2019158608.tif 000024
【図２３】
2019158608.tif 000025
【図２４】
2019158608.tif 000026
【図２５】
2019158608.tif 000027
【図２６】
2019158608.tif 000028
【図２７】
2019158608.tif 000029
【図２８】
2019158608.tif 000030
【図２９】
2019158608.tif 000031
【図３０】
2019158608.tif 000032
【図３１】
2019158608.tif 000033
【図３２】
2019158608.tif 000034
【図３３】
2019158608.tif 000035