(57)【要約】【課題】所定の空間内に存在する端末装置の位置を正確に推定することの可能な位置推定システム、位置推定方法、プログラムを提供する。【解決手段】本発明の位置推定システムは、所定の空間内に設けられた複数の通信装置から発信された電波を端末装置が受信したときの受信信号強度に関する情報を経時的に取得する取得手段４１と、第１タイミングで取得した受信信号強度に関する情報と、第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、第１タイミングにおける端末装置の位置を始点とする変位ベクトルを複数の通信装置毎に生成する生成手段４２と、複数の通信装置毎の変位ベクトルを合成した合成ベクトルに基づいて、端末装置の移動方向を推定する方向推定手段４３と、推定された移動方向に基づいて、第２タイミングにおける端末装置の位置を推定する位置推定手段４４と、を備える。【選択図】図３
2016075669.tif 000002
【特許請求の範囲】
【請求項１】
所定の空間内に存在する端末装置の位置を推定する位置推定システムであって、
前記空間内に設けられた複数の通信装置から発信された電波を前記端末装置が受信したときの受信信号強度に関する情報、又は、前記端末装置から発信された電波を前記複数の通信装置が受信したときの受信信号強度に関する情報を経時的に取得する取得手段と、
第１タイミングで取得した受信信号強度に関する情報と、前記第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、前記第１タイミングにおける前記端末装置の位置を始点とする変位ベクトルを前記複数の通信装置毎に生成する生成手段と、
前記複数の通信装置毎の変位ベクトルを合成した合成ベクトルに基づいて、前記端末装置の移動方向を推定する方向推定手段と、
推定された移動方向に基づいて、前記第２タイミングにおける前記端末装置の位置を推定する位置推定手段と、
を備える位置推定システム。
【請求項２】
前記変位ベクトルは、前記第１タイミングから前記第２タイミングまでの、前記複数の通信装置のうち何れかの通信装置と前記端末装置との距離の変位を表し、
前記方向推定手段は、前記合成ベクトルに基づいて、前記端末装置の移動方向及び移動距離を推定し、
前記位置推定手段は、推定された移動方向及び移動距離に基づいて、前記第２タイミングにおける前記端末装置の位置を推定する、請求項１に記載の位置推定システム。
【請求項３】
受信信号強度に関する情報を取得すると、受信信号強度と、受信信号強度の所定の基準値との差に基づいて、受信信号強度を補正する補正手段を備え、
前記生成手段は、第１タイミングで取得した受信信号強度であって補正された受信信号強度に関する情報と、前記第２タイミングで取得した受信信号強度であって補正された受信信号強度に関する情報とに基づいて、前記変位ベクトルを前記複数の通信装置毎に生成する、請求項２に記載の位置推定システム。
【請求項４】
前記位置推定手段は、前記複数の通信装置のうち少なくとも１つの通信装置に対応する受信信号強度が前記第２タイミングにおいて所定の閾値以上となる場合に、前記第２タイミングにおける前記端末装置の位置を所定の位置に推定する、請求項１〜３の何れかに記載の位置推定システム。
【請求項５】
前記生成手段は、前記複数の通信装置の各々に対応する受信信号強度の前記第１タイミング以前の第１期間内の平均値と、前記複数の通信装置の各々に対応する受信信号強度の前記第２タイミング以前の第２期間内の平均値とに基づいて、前記変位ベクトルを前記複数の通信装置毎に生成する、請求項１〜４の何れかに記載の位置推定システム。
【請求項６】
前記通信装置は、前記空間内に３つ以上設けられている、請求項１〜５の何れかに記載の位置推定システム。
【請求項７】
所定の空間内に存在する端末装置の位置をコンピュータに推定させる位置推定方法であって、
前記コンピュータは、
前記空間内に設けられた複数の通信装置から発信された電波を前記端末装置が受信したときの受信信号強度に関する情報、又は、前記端末装置から発信された電波を前記複数の通信装置が受信したときの受信信号強度に関する情報を経時的に取得するステップと、
第１タイミングで取得した受信信号強度に関する情報と、前記第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、前記第１タイミングにおける前記端末装置の位置を始点とする変位ベクトルを前記複数の通信装置毎に生成するステップと、
前記複数の通信装置毎の変位ベクトルを合成した合成ベクトルに基づいて、前記端末装置の移動方向を推定するステップと、
推定された移動方向に基づいて、前記第２タイミングにおける前記端末装置の位置を推定するステップと、
の各ステップを実行する位置推定方法。
【請求項８】
所定の空間内に存在する端末装置の位置をコンピュータに推定させるプログラムであって、
前記コンピュータに、
前記空間内に設けられた複数の通信装置から発信された電波を前記端末装置が受信したときの受信信号強度に関する情報、又は、前記端末装置から発信された電波を前記複数の通信装置が受信したときの受信信号強度に関する情報を経時的に取得する機能、
第１タイミングで取得した受信信号強度に関する情報と、前記第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、前記第１タイミングにおける前記端末装置の位置を始点とする変位ベクトルを前記複数の通信装置毎に生成する機能、
前記複数の通信装置毎の変位ベクトルを合成した合成ベクトルに基づいて、前記端末装置の移動方向を推定する機能、及び
推定された移動方向に基づいて、前記第２タイミングにおける前記端末装置の位置を推定する機能、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の空間内に存在する端末装置の位置を推定する位置推定システム、位置推定方法、プログラムに関する。
【背景技術】
【０００２】
近年、インターネットの様々な機能を活用して、ネット上（オンライン）から実店舗（オフライン）に誘客して物品を販売するＯ２Ｏ（Online to Offline）市場が拡大している。Ｏ２Ｏ市場では、例えば実店舗内の位置情報と連動したサービスが急速に広まっており、位置測定技術への関心が高まっている。
【０００３】
多くの位置情報サービスでは、位置測定技術としてＧＰＳ（Global Positioning System）が利用されている。しかしながら、屋内環境ではＧＰＳ電波を受信し難いため、例えば実店舗内等の屋内の位置情報サービスにおいてＧＰＳを好適に利用することが困難であった。そこで、ユーザが所持している端末装置に設けられたセンサを用いて、屋内での当該ユーザの位置測定を行う歩行者自立航法（ＰＤＲ：Pedestrian Dead Reckoning）技術が提案されている。
【０００４】
このようなＰＤＲ技術としては、例えば、加速度センサと、地磁気センサ等の方向センサとを備える端末装置を用いて、ユーザがどの位の速度でどの方向に移動しているのかを推定することにより、当該端末装置の位置（すなわち、ユーザの位置）を測定するものが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−０９７７２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、方向センサを用いて端末装置の移動方向を推定する場合には、端末装置の所持態様（例えば、ユーザが歩行しながら端末装置を操作している、ユーザが端末装置を持った手を振りながら歩行している、又は、ユーザが端末装置をバッグ等に入れた状態で歩行している等）によっては、端末装置の移動方向（すなわち、ユーザの移動方向）と端末装置の向く方向とが必ずしも一致しないことから、端末装置の移動方向を正確に推定することができない場合がある。
【０００７】
このように、方向センサを用いた場合には、端末装置の移動方向を正確に推定することができない場合があるので、結果として、例えば屋内等の空間内に存在する端末装置の位置（すなわち、ユーザの位置）を正確に推定することが困難になるおそれがある。
【０００８】
本発明は上記課題に鑑みてなされたものであり、所定の空間内に存在する端末装置の位置を正確に推定することの可能な位置推定システム、位置推定方法、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、第一に本発明は、所定の空間内に存在する端末装置の位置を推定する位置推定システムであって、前記空間内に設けられた複数の通信装置から発信された電波を前記端末装置が受信したときの受信信号強度に関する情報、又は、前記端末装置から発信された電波を前記複数の通信装置が受信したときの受信信号強度に関する情報を経時的に取得する取得手段と、第１タイミングで取得した受信信号強度に関する情報と、前記第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、前記第１タイミングにおける前記端末装置の位置を始点とする変位ベクトルを前記複数の通信装置毎に生成する生成手段と、前記複数の通信装置毎の変位ベクトルを合成した合成ベクトルに基づいて、前記端末装置の移動方向を推定する方向推定手段と、推定された移動方向に基づいて、前記第２タイミングにおける前記端末装置の位置を推定する位置推定手段と、を備える位置推定システムを提供する（発明１）。
【００１０】
ここで、受信信号強度に関する情報とは、例えば、受信信号強度の値（ＲＳＳＩ値）であってもよいし、ＲＳＳＩ値を所定の計算式に代入することによって得られた値であってもよいし、受信信号強度の度合いを表す情報であってもよい。
【００１１】
かかる発明（発明１）によれば、端末装置又は複数の通信装置が受信した電波の受信信号強度に関する情報に基づいて、複数の通信装置の各々に対応する変位ベクトルを生成し、これらの変位ベクトルに基づき生成された合成ベクトルに基づいて端末装置の移動方向を推定しているので、端末装置又は複数の通信装置が受信した電波の受信信号強度に基づいて端末装置の移動方向を推定することが可能となる。ここで、受信信号強度を用いて端末装置の移動方向を推定する場合には、例えば端末装置の移動方向と端末装置の向く方向とが一致しているか否かにかかわらず、同等の受信信号強度が得られると考えられるので、例えばジャイロセンサや地磁気センサ等の方向センサを用いて端末装置の移動方向を推定する場合と比較して、端末装置の所持態様による影響を抑制することができる。このため、端末装置の移動方向を正確に推定することができる。また、かかる発明（発明１）では、このように推定された移動方向に基づいて端末装置の位置を推定しているので、所定の空間内に存在する端末装置の位置（すなわち、ユーザの位置）を正確に推定することができる。
【００１２】
上記発明（発明１）においては、前記変位ベクトルは、前記第１タイミングから前記第２タイミングまでの、前記複数の通信装置のうち何れかの通信装置と前記端末装置との距離の変位を表し、前記方向推定手段は、前記合成ベクトルに基づいて、前記端末装置の移動方向及び移動距離を推定し、前記位置推定手段は、推定された移動方向及び移動距離に基づいて、前記第２タイミングにおける前記端末装置の位置を推定することが好ましい（発明２）。
【００１３】
かかる発明（発明２）によれば、複数の通信装置の各々と端末装置との距離の第１タイミングから第２タイミングまでの変位を表す変位ベクトルを合成して得られる合成ベクトルによって、端末装置の移動方向だけでなく、第１タイミングから第２タイミングまでの端末装置の移動距離も表すことが可能になるので、この合成ベクトルの終点を第２タイミングにおける端末装置の位置と推定することができる。これにより、端末装置の位置を、例えば加速度センサ等の移動距離計測用の装置を用いることなく推定することができるので、端末装置の位置推定を容易に行うことができるとともに、位置推定システムの製造コストを抑えることができる。
【００１４】
上記発明（発明２）においては、受信信号強度に関する情報を取得すると、受信信号強度と、受信信号強度の所定の基準値との差に基づいて、受信信号強度を補正する補正手段を備え、前記生成手段は、第１タイミングで取得した受信信号強度であって補正された受信信号強度に関する情報と、前記第２タイミングで取得した受信信号強度であって補正された受信信号強度に関する情報とに基づいて、前記変位ベクトルを前記複数の通信装置毎に生成することが好ましい（発明３）。
【００１５】
端末装置と通信装置との距離と、受信信号強度との関係は、端末装置又は通信装置の種類毎及び／又は個体毎に異なり得るし、端末装置又は通信装置の周囲の環境によって異なり得る。例えば、第１の端末装置と通信装置との距離と、受信信号強度との関係を用いて、第１の端末装置と異なる第２の端末装置の位置を推定する場合には、第２の端末装置が第１の端末装置と同じ位置に存在したとしても、上記関係に基づいてもとめられた第２の端末装置と通信装置との距離が、第１の端末装置と通信装置との距離と異なる場合がある。この場合、第２の端末装置が第１の端末装置と異なる位置に存在すると推定され得ることから、端末装置の位置を正確に推定することができない虞がある。
【００１６】
かかる発明（発明３）によれば、受信信号強度に関する情報を取得すると、受信信号強度と、受信信号強度の所定の基準値との差に基づいて、受信信号強度を補正しているので、例えば、異なる端末装置又は通信装置を用いた場合や端末装置又は通信装置の周囲の環境が異なる場合であっても、距離と受信信号強度との所定の関係に適合するように受信信号強度を補正することによって、端末装置又は通信装置の種類や環境等の違いに基づく距離と受信信号との関係の差異を低減することができ、ひいては、端末装置の位置を正確に推定することができる。したがって、端末装置又は通信装置の種類及び／又は個体の違いや、端末装置又は通信装置の周囲の環境の違いに拘わらずに、端末装置の位置を正確に推定することができる。
【００１７】
上記発明（発明１〜３）においては、前記位置推定手段は、前記複数の通信装置のうち少なくとも１つの通信装置に対応する受信信号強度が前記第２タイミングにおいて所定の閾値以上となる場合に、前記第２タイミングにおける前記端末装置の位置を所定の位置に推定することが好ましい（発明４）。
【００１８】
例えば、端末装置の位置を推定する毎に端末装置の正確な位置と推定位置との間に誤差が生じる場合には、端末装置の位置を繰り返して推定する毎に誤差が累積した状態で端末装置の位置が推定されることから、端末装置の位置を正確に推定することが困難になるおそれがある。ところで、端末装置と通信装置との間で送受信される電波の受信信号強度は、これらの距離が短くなるほど高くなり、これらの距離が長くなるほど小さくなるので、受信信号強度に応じて、端末装置と通信装置との距離を推定することが可能となる。
【００１９】
かかる発明（発明４）によれば、例えば、第２タイミングにおける受信信号強度が所定の閾値以上の場合には、第２タイミングにおける端末装置の位置を所定の位置（例えば、閾値以上の受信信号強度に対応する通信装置の位置）に推定しているので、端末装置と通信装置との距離と、受信信号強度との関係に基づいて、端末装置の位置を正確に推定することができる。これにより、例えば、端末装置の正確な位置と推定位置との間に誤差が生じた場合であっても、この誤差が累積した状態で端末装置の位置が新たに推定されるのを抑制することができる。
【００２０】
上記発明（発明１〜４）においては、前記生成手段は、前記複数の通信装置の各々に対応する受信信号強度の前記第１タイミング以前の第１期間内の平均値と、前記複数の通信装置の各々に対応する受信信号強度の前記第２タイミング以前の第２期間内の平均値とに基づいて、前記変位ベクトルを前記複数の通信装置毎に生成することが好ましい（発明５）。
【００２１】
例えば第１タイミング及び第２タイミングの少なくとも一方で取得した受信信号強度が異常値の場合には、当該受信信号強度がそのまま移動方向の推定に用いられることによって移動方向の推定精度が劣化し、ひいては端末装置の位置の推定精度が劣化するおそれがある。かかる発明（発明５）によれば、複数の通信装置の各々に対応する受信信号強度の平均値に基づいて端末装置の位置を推定することができるので、例えば受信信号強度の異常値が第１期間及び第２期間の少なくとも一方に含まれる場合であっても、各期間において受信信号強度を平均化することによって、当該異常値による影響を低減することができる。これにより、受信信号強度の異常値に基づく移動方向の推定精度の劣化を抑制し、ひいては端末装置２０の位置の推定精度の劣化を抑制することができる。
【００２２】
上記発明（発明１〜５）においては、前記通信装置は、前記空間内に３つ以上設けられていることが好ましい（発明６）。
【００２３】
かかる発明（発明６）によれば、第１タイミングにおける端末装置の位置を始点とする３つ以上の変位ベクトルの各々を、同一の平面に沿った何れかの方向を向くように生成することができるので、各変位ベクトルの合成ベクトルも、当該平面に沿った何れかの方向を向くように生成することができる。これにより、端末装置の移動方向を二次元的に推定することができる。
【００２４】
第二に本発明は、所定の空間内に存在する端末装置の位置をコンピュータに推定させる位置推定方法であって、前記コンピュータは、前記空間内に設けられた複数の通信装置から発信された電波を前記端末装置が受信したときの受信信号強度に関する情報、又は、前記端末装置から発信された電波を前記複数の通信装置が受信したときの受信信号強度に関する情報を経時的に取得するステップと、第１タイミングで取得した受信信号強度に関する情報と、前記第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、前記第１タイミングにおける前記端末装置の位置を始点とする変位ベクトルを前記複数の通信装置毎に生成するステップと、前記複数の通信装置毎の変位ベクトルを合成した合成ベクトルに基づいて、前記端末装置の移動方向を推定するステップと、推定された移動方向に基づいて、前記第２タイミングにおける前記端末装置の位置を推定するステップと、の各ステップを実行する位置推定方法を提供する（発明７）。
【００２５】
第三に本発明は、所定の空間内に存在する端末装置の位置をコンピュータに推定させるプログラムであって、前記コンピュータに、前記空間内に設けられた複数の通信装置から発信された電波を前記端末装置が受信したときの受信信号強度に関する情報、又は、前記端末装置から発信された電波を前記複数の通信装置が受信したときの受信信号強度に関する情報を経時的に取得する機能、第１タイミングで取得した受信信号強度に関する情報と、前記第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、前記第１タイミングにおける前記端末装置の位置を始点とする変位ベクトルを前記複数の通信装置毎に生成する機能、前記複数の通信装置毎の変位ベクトルを合成した合成ベクトルに基づいて、前記端末装置の移動方向を推定する機能、及び推定された移動方向に基づいて、前記第２タイミングにおける前記端末装置の位置を推定する機能、を実現させるためのプログラムを提供する（発明８）。
【発明の効果】
【００２６】
本発明の位置推定システム、位置推定方法、プログラムによれば、所定の空間内に存在する端末装置の位置を正確に推定することができる。このため、例えば実店舗内等の屋内での位置情報サービスに好適に利用することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の一実施形態に係る位置推定システムの基本構成を概略的に示す図である。
【図２】端末装置の構成を示すブロック図である。
【図３】位置推定システムで主要な役割を果たす機能を説明するための機能ブロック図である。
【図４】空間内での端末装置の移動方向の一例を示す図である。
【図５】変位データの構成例を示す図である。
【図６】複数の通信装置の各々に対応する変位ベクトルの一例を示す図である。
【図７】合成ベクトルの一例を示す図である。
【図８】端末装置の推定位置の一例を示す図である。
【図９】本発明の一実施形態に係る位置推定システムの主要な処理の一例を示すフローチャートである。
【図１０】変形例における変位データの構成例を示す図である。
【図１１】変形例に係る位置推定システムにおける端末装置の移動方向の一例を示す図である。
【図１２】通信装置と端末装置の間の距離と、受信信号強度との関係を示す図である。
【図１３】変形例における変位データの構成例を示す図である。
【図１４】変形例に係る位置推定システムで主要な役割を果たす機能を説明するための機能ブロック図である。
【図１５】受信信号強度の補正値を説明する図である。
【発明を実施するための形態】
【００２８】
以下、本発明の一実施形態について添付図面を参照して詳細に説明する。ただし、この実施形態は例示であり、本発明はこれに限定されるものではない。
【００２９】
（１）位置推定システムの基本構成
図１は、本発明の一実施形態に係る位置推定システムの基本構成を概略的に示す図である。図１に示すように、この位置推定システムでは、例えば実店舗内の所定の空間Ｓに設けられた複数（図１では３つ）の通信装置１０から発信された電波を端末装置２０が受信したときの受信信号強度（ＲＳＳＩ）に基づいて、端末装置２０が自らの移動方向を推定し、推定した移動方向に基づいて自らの位置を推定するようになっている。
【００３０】
各通信装置１０は、空間Ｓにおいて、Ｂｌｕｅｔｏｏｔｈ（登録商標）を用いて端末装置２０と無線通信を行うことが可能な位置に設けられており、無線通信用の電波を送信するように構成されている。なお、図１の例では、各通信装置１０が同じ高さの位置に設けられている場合を一例として示しているが、各通信装置１０は、異なる高さの位置に設けられてもよい。また、ここでは、Ｂｌｕｅｔｏｏｔｈ（登録商標）を用いて無線通信を行う場合を一例として説明しているが、この場合に限られない。例えば、無線ＬＡＮ（例えばＷｉ−Ｆｉ（登録商標））、ＺｉｇＢｅｅ（登録商標）、ＵＷＢ、光無線通信（例えば赤外線）などの無線通信方式が用いられてもよい。さらに、各通信装置１０は、端末装置２０からデータを直接受信するために、端末装置２０から発信された電波を受信するように構成されてもよい。また、各通信装置１０は、電波到達範囲内にそれぞれ存在する端末装置２０と他の端末装置（図示省略）との間の無線通信を中継してもよいし、端末装置２０と、通信装置１０に対して有線又は無線で接続された他の通信装置（例えば、端末装置２０の空間Ｓ内の位置に基づくサービスを提供するためのサービス提供用サーバなど）との間の通信を中継してもよい。
【００３１】
端末装置２０は、空間Ｓ内に存在する場合に、各通信装置１０との間で無線通信を行うことが可能になっており、各通信装置１０から発信された電波を受信したときの受信信号強度を測定することが可能に構成されている。端末装置２０は、例えば、携帯端末、スマートフォン、ＰＤＡ（Personal Digital Assistant）、パーソナルコンピュータ、双方向の通信機能を備えたテレビジョン受像機（いわゆる多機能型のスマートテレビも含む。）などのように、個々のユーザによって操作される通信端末であってよい。
【００３２】
（２）端末装置の構成
図２を参照して端末装置２０について説明する。図２は、端末装置２０の内部構成を示すブロック図である。図２に示すように、端末装置２０は、ＣＰＵ（Central Processing Unit）２１と、ＲＯＭ（Read Only Memory）２２と、ＲＡＭ（Random Access Memory）２３と、不揮発性メモリ２４と、表示処理部２５と、表示部２６と、入力部２７と、加速度センサ２８と、通信インタフェース部２９とを備えており、各部間の制御信号又はデータ信号を伝送するためのバス２０ａが設けられている。
【００３３】
ＣＰＵ２１は、電源が端末装置２０に投入されると、ＲＯＭ２２又は不揮発性メモリ２４に記憶された各種のプログラムをＲＡＭ２３にロードして実行する。本実施形態では、ＣＰＵ２１は、ＲＯＭ２２又は不揮発性メモリ２４に記憶されたプログラムを読み出して実行することにより、後述する取得手段４１、生成手段４２、方向推定手段４３及び位置推定手段４４（図３に示す）の機能を実現する。ＣＰＵ２１は、各通信装置１０から送信された信号を、通信インタフェース部２９を介して受信し、その信号を解釈する。また、ＣＰＵ２１は、ＲＯＭ２２、ＲＡＭ２３又は不揮発性メモリ２４に記憶されているデータを、通信インタフェース部２９を介して各通信装置１０に送信してもよい。
【００３４】
不揮発性メモリ２４は、例えばフラッシュメモリなどであって、ＣＰＵ２１が実行するプログラムやＣＰＵ２１が参照するデータを格納する。また、不揮発性メモリ２４には、後述する変位データ（図５に示す）が記憶されていてもよい。
【００３５】
表示処理部２５は、ＣＰＵ２１から与えられる表示用データを、表示部２６に表示する。表示部２６は、例えば、マトリクス状に画素単位で配置された薄膜トランジスタを含むＬＣＤ（Liquid Cristal Display）モニタであり、表示用データに基づいて薄膜トランジスタを駆動することで、表示されるデータを表示画面に表示する。
【００３６】
端末装置２０が釦入力方式の通信端末である場合には、入力部２７は、ユーザの操作入力を受け入れるための方向指示釦及び決定釦などの複数の指示入力釦を含む釦群と、テンキーなどの複数の指示入力釦を含む釦群とを備え、各釦の押下（操作）入力を認識してＣＰＵ２１へ出力するためのインタフェース回路を含む。
【００３７】
端末装置２０がタッチパネル入力方式の通信端末である場合には、入力部２７は、主として表示画面に指先又はペンで触れることによるタッチパネル方式の入力を受け付ける。タッチパネル入力方式は、静電容量方式などの公知の方式でよい。
【００３８】
加速度センサ２８は、例えば３軸加速度センサであり、端末装置２０の３軸方向の加速度に応じて所定の検出信号を一定周期で出力するセンサである。加速度センサ２８は、例えば、端末装置２０の加速度が増加している場合には正の信号を出力し、減速度が発生している場合には負の信号を出力する。
【００３９】
通信インタフェース部２９は、上述した無線通信方式を用いて通信を行うためのインタフェース回路と、通信網ＮＷを介して通信を行うためのインタフェース回路とを含む。無線通信方式を用いて通信を行うためのインタフェース回路には、各通信装置１０から発信された電波を受信したときの受信信号強度の値（ＲＳＳＩ値）を検出するＲＳＳＩ回路が設けられている。ここで、ＣＰＵ２１は、検出されたＲＳＳＩ値を、例えば電波を発信した通信装置１０の識別情報などと対応付けて、ＲＡＭ２３又は不揮発性メモリ２４に記憶する。ここで、通信装置１０の識別情報は、例えば、端末装置２０が通信装置１０から電波を受信した場合に、当該通信装置１０から取得可能であってもよい。
【００４０】
（３）位置推定システムにおける各機能の概要
本実施形態の位置推定システムで実現される機能について、図３を参照して説明する。図３は、本実施形態の位置推定システムで主要な役割を果たす機能を説明するための機能ブロック図である。図３の機能ブロック図では、取得手段４１、生成手段４２、方向推定手段４３及び位置推定手段４４が本発明の主要な構成に対応している。
【００４１】
なお、本実施形態の位置推定システムにおける各機能を説明するにあたって、各通信装置１０は、電波を常時又は所定間隔（例えば数十〜数百ミリ秒間隔）で発信しているものと想定する。また、端末装置２０は、図４に示すように、重力方向に対して垂直な水平方向に延びる空間Ｓ内の平面をｘｙ平面とした場合に、ｘｙ平面上に存在しており、ｘｙ平面上に存在している間、各通信装置１０から発信された電波を逐次的に受信しているものと想定する。
【００４２】
ここで、通信装置１０は、空間Ｓ内に３つ以上設けられていることが好ましい。この場合、後述するように、第１タイミングにおける端末装置２０の位置を始点とする変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４（図６に示す）の各々を、ｘｙ平面に沿った何れかの方向を向くように生成することができるので、各変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４の合成ベクトルＲＶ（図７に示す）も、ｘｙ平面に沿った何れかの方向を向くように生成することができる。これにより、端末装置２０の移動方向を二次元的に推定することができる。
【００４３】
なお、以下の説明では、空間Ｓ内（ｘｙ平面のｘ軸方向及びｙ軸方向の四隅）に４つの通信装置１０が設けられている場合を一例として説明する。また、４つの通信装置１０の各々を、通信装置Ａ、通信装置Ｂ、通信装置Ｃ、通信装置Ｄと適宜表記する。
【００４４】
取得手段４１は、空間Ｓ内に設けられた複数の通信装置１０から発信された電波を端末装置２０が受信したときの受信信号強度に関する情報、又は、端末装置２０から発信された電波を複数の通信装置１０が受信したときの受信信号強度に関する情報を経時的に取得する機能を備える。なお、ここでは、取得手段４１が、複数の通信装置１０から発信された電波を端末装置２０が受信したときの受信信号強度に関する情報を経時的に取得する場合を一例として説明する。
【００４５】
また、受信信号強度に関する情報とは、例えば、受信信号強度の値（ＲＳＳＩ値）であってもよいし、ＲＳＳＩ値を所定の計算式に代入することによって得られた値であってもよいし、受信信号強度の度合いを表す情報であってもよい。
【００４６】
取得手段４１の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、各通信装置１０から発信された電波を受信する毎に、通信インタフェース部２９で検出されたＲＳＳＩ値と、当該電波を発信した通信装置１０の識別情報とを対応付けて、例えばＲＡＭ２３に記憶する。
【００４７】
生成手段４２は、第１タイミングで取得した受信信号強度に関する情報と、第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、第１タイミングにおける端末装置２０の位置を始点とする変位ベクトルを複数の通信装置１０毎に生成する機能を備える。
【００４８】
生成手段４２の機能は、例えば以下のように実現される。なお、ここでは、端末装置２０が、第１タイミングにおいて、空間Ｓ内のｘｙ平面上の位置Ｐ（図６に示す）に存在していた場合を一例として説明する。端末装置２０のＣＰＵ２１は、取得手段４１の機能に基づいて、第１タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値をＲＡＭ２３に記憶すると、ＲＡＭ２３に記憶されたＲＳＳＩ値を例えば図５に示す変位データに記憶する。変位データは、第１タイミングのＲＳＳＩ値と、第１タイミング後の第２タイミングのＲＳＳＩ値と、第１タイミングと第２タイミングとの間のＲＳＳＩ値の変位とが、複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に記述されているデータである。変位データは、例えば端末装置２０の不揮発性メモリ２４に記憶されている。
【００４９】
次に、端末装置２０のＣＰＵ２１は、取得手段４１の機能に基づいて、第１タイミング後（例えば第１タイミングの１秒後）の第２タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値を取得してＲＡＭ２３に記憶すると、ＲＡＭ２３に記憶されたＲＳＳＩ値を、第２タイミングにおける複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎の受信信号強度として、変位データに記憶する。そして、ＣＰＵ２１は、第１タイミングと第２タイミングとの間のＲＳＳＩ値の変位を複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に算出し、算出した変位値を変位データに記憶する。
【００５０】
そして、端末装置２０のＣＰＵ２１は、ｘｙ平面において、第１タイミングにおける端末装置２０の位置Ｐを始点とする変位ベクトルを複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に生成する。具体的に説明すると、先ず、ＣＰＵ２１は、変位データにアクセスして、各通信装置Ａ，Ｂ，Ｃ，Ｄの変位値を抽出する。次に、ＣＰＵ２１は、例えば図６に示すように、ｘｙ平面において、位置Ｐを始点とする変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４を、通信装置Ａ，Ｂ，Ｃ，Ｄの各々と位置Ｐとを結ぶ直線上に生成する。ここで、変位ベクトルＤＶ１は通信装置Ａに対応しており、変位ベクトルＤＶ２は通信装置Ｂに対応しており、変位ベクトルＤＶ３は通信装置Ｃに対応しており、変位ベクトルＤＶ４は通信装置Ｄに対応している。各変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４の大きさは、対応する通信装置１０の変位値の絶対値に相当する。また、各変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４の方向は、対応する通信装置１０の変位値が正の場合には、対応する通信装置１０に向かう方向となり、対応する通信装置１０の変位値が負の場合には、対応する通信装置１０から離れる方向となる。
【００５１】
なお、ＣＰＵ２１は、後述する位置推定手段４４の機能に基づいて第２タイミングにおける端末装置２０の位置を推定すると、変位データにアクセスして、第２タイミングにおける複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎の受信信号強度を、第１タイミングにおける複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎の受信信号強度として記憶する。そして、ＣＰＵ２１は、複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値を端末装置２０から新たに取得すると、取得したＲＳＳＩ値を、第２タイミングにおける複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎の受信信号強度として変位データに記憶し、ＲＳＳＩ値の変位を複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に算出する。
【００５２】
方向推定手段４３は、複数の通信装置１０毎の変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４を合成した合成ベクトルＲＶに基づいて、端末装置２０の移動方向を推定する機能を備える。
【００５３】
方向推定手段４３の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、図７に示すように、ｘｙ平面において、各変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４を合成することにより、合成ベクトルＲＶを生成する。そして、ＣＰＵ２１は、合成ベクトルＲＶの傾き（ここでは、合成ベクトルＲＶとｘ軸とのなす角）θをもとめることによって、第１タイミングから第２タイミングまでの端末装置２０の移動方向を推定する。なお、傾きθは、合成ベクトルＲＶをｕとし、ｘ軸方向の単位ベクトルをｖとしたときに、以下の式（１）を満たすθを算出することによって得られる。
【数１】
2016075669.tif 000003
【００５４】
位置推定手段４４は、推定された移動方向に基づいて、第２タイミングにおける端末装置２０の位置を推定する機能を備える。
【００５５】
位置推定手段４４の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、方向推定手段４３の機能に基づいて端末装置２０の移動方向を推定すると、加速度センサ２８の検出データを用いて、第１タイミングから第２タイミングまでの端末装置２０の移動距離を推定する。ここで、端末装置２０の移動距離ｄｎ（ｎは０以上の整数）は、以下の式（２）のように示される。
ｄｎ＝ｓｎ×ｌｎ  …（２）
【００５６】
式（２）中、ｓｎは、端末装置２０を所持するユーザの歩数を示しており、ｌｎは、当該ユーザの歩幅を示している。歩数ｓｎは、例えば、加速度センサ２８の検出データ（すなわち加速度）の値が所定の閾値以上に達する毎に１つずつ増加するようにしてもとめられてもよい。また、歩幅ｌｎは、例えばユーザの体のサイズに応じて適宜設定される値であってもよいし、固定値であってもよい。
【００５７】
次に、ＣＰＵ２１は、第１タイミングにおける端末装置２０の位置と、端末装置２０の移動方向と、端末装置２０の移動距離とを用いて、第２タイミングにおける端末装置２０の位置をもとめる。ここで、第１タイミングにおける端末装置２０の位置をＰｎ＝（ｘｎ，ｙｎ）、第１タイミングから第２タイミングまでの端末装置２０の移動方向をθｎとすると、第２タイミングにおける端末装置２０の位置Ｐｎ＋１は、以下の式（３）のように示される。
Ｐｎ＋１＝（ｘｎ＋ｄｎｃｏｓθｎ，ｙｎ＋ｄｎｓｉｎθｎ）  …（３）
【００５８】
ここで、図８を参照して、端末装置２０の推定位置の一例を説明する。なお、ここでは、空間Ｓ内の端末装置２０の初期位置をＰ０＝（ｘ０，ｙ０）と想定している。第１タイミングにおいて端末装置２０が位置Ｐ０に存在しており、第１タイミングから第２タイミングまでの端末装置２０の移動距離がｄ０、第１タイミングから第２タイミングまでの端末装置２０の移動方向がθ０である場合には、第２タイミングにおける端末装置２０の位置Ｐ１は、Ｐ１＝（ｘ１，ｙ１）＝（ｘ０＋ｄ０ｃｏｓθ０，ｙ０＋ｄ０ｓｉｎθ０）と示される。
【００５９】
次に、位置Ｐ１を第１タイミングにおける端末装置２０の位置とした場合には、第２タイミングにおける端末２０の位置Ｐ２は、Ｐ２＝（ｘ２，ｙ２）＝（ｘ１＋ｄ１ｃｏｓθ１，ｙ１＋ｄ１ｓｉｎθ１）と示される。このようにして、ＣＰＵ２１は、端末装置２０の位置推定を経時的に繰り返し行う。
【００６０】
（４）本実施形態の位置推定システムの主要な処理のフロー
次に、本実施形態の位置推定システムにより行われる主要な処理のフローの一例について、図９のフローチャートを参照して説明する。
【００６１】
先ず、端末装置２０のＣＰＵ２１は、各通信装置１０から発信された電波を受信する毎に、通信インタフェース部２９で検出されたＲＳＳＩ値と、当該電波を発信した通信装置１０の識別情報とを対応付けて、例えばＲＡＭ２３に記憶する。
【００６２】
次に、端末装置２０のＣＰＵ２１は、第１タイミングで取得した受信信号強度に関する情報と、第１タイミング後の第２タイミングで取得した受信信号強度に関する情報とに基づいて、第１タイミングにおける端末装置２０の位置Ｐを始点とする変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４を複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に生成する（ステップＳ１０２）。
【００６３】
具体的に説明すると、端末装置２０のＣＰＵ３１は、取得手段４１の機能に基づいて、第１タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値をＲＡＭ２３に記憶すると、ＲＡＭ２３に記憶されたＲＳＳＩ値を変位データに記憶する。また、ＣＰＵ２１は、第１タイミング後（例えば第１タイミングの１秒後）の第２タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値を取得してＲＡＭ２３に記憶すると、ＲＡＭ２３に記憶されたＲＳＳＩ値を、第２タイミングにおける複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎の受信信号強度として、変位データに記憶する。そして、端末装置２０のＣＰＵ２１は、第１タイミングにおける端末装置２０の位置Ｐを始点とする変位ベクトルを複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に生成する。
【００６４】
次いで、端末装置２０のＣＰＵ２１は、複数の通信装置１０毎の変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４を合成した合成ベクトルＲＶに基づいて、端末装置２０の移動方向を推定する（ステップＳ１０４）。
【００６５】
具体的に説明すると、端末装置２０のＣＰＵ２１は、各変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４を合成することにより、合成ベクトルＲＶを生成する。そして、ＣＰＵ２１は、合成ベクトルＲＶの傾き（ここでは、合成ベクトルＲＶとｘ軸とのなす角）θをもとめることによって、第１タイミングから第２タイミングまでの端末装置２０の移動方向を推定する。
【００６６】
次に、端末装置２０のＣＰＵ２１は、推定された移動方向に基づいて、第２タイミングにおける端末装置２０の位置を推定する（ステップＳ１０６）。具体的に説明すると、ＣＰＵ３１は、第１タイミングにおける端末装置２０の位置と、第１タイミングから第２タイミングまでの端末装置２０の移動方向と、第１タイミングから第２タイミングまでの端末装置２０の移動距離とを用いて、第２タイミングにおける端末装置２０の位置をもとめる。
【００６７】
なお、端末装置２０のＣＰＵ２１は、ステップＳ１０６の処理後に所定時間（例えば１秒）が経過したときには（ステップＳ１０８：ＹＥＳ）、ステップＳ１００の処理に移行する。これにより、ＣＰＵ２１は、端末装置２０の位置推定を経時的に繰り返し行う。
【００６８】
上述したように、本実施形態の位置推定システム、位置推定方法、プログラムによれば、端末装置２０が受信した電波の受信信号強度に関する情報に基づいて、複数の通信装置１０の各々に対応する変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４を生成し、これらの変位ベクトルＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４に基づき生成された合成ベクトルＲＶに基づいて端末装置２０の移動方向を推定しているので、端末装置２０が受信した電波の受信信号強度に基づいて端末装置２０の移動方向を推定することが可能となる。ここで、受信信号強度を用いて端末装置２０の移動方向を推定する場合には、例えば端末装置２０の移動方向と端末装置２０の向く方向とが一致しているか否かにかかわらず、同等の受信信号強度が得られると考えられるので、例えばジャイロセンサや地磁気センサ等の方向センサを用いて端末装置２０の移動方向を推定する場合と比較して、端末装置２０の所持態様による影響を抑制することができる。このため、端末装置２０の移動方向を正確に推定することができる。また、本実施形態では、このように推定された移動方向に基づいて端末装置２０の位置を推定しているので、空間Ｓ内に存在する端末装置２０の位置（すなわち、ユーザの位置）を正確に推定することができる。
【００６９】
以下、上述した実施形態の変形例について説明する。
（変形例１）
上記実施形態では、取得手段４１が、複数の通信装置１０から発信された電波を端末装置２０が受信したときの受信信号強度に関する情報を経時的に取得する場合を一例として説明したが、この場合に限られない。例えば、取得手段４１は、端末装置２０から発信された電波を複数の通信装置１０が受信したときの受信信号強度に関する情報を取得してもよい。この場合、各通信装置１０には、端末装置２０と同様に、端末装置２０から発信された電波を受信したときの受信信号強度の値を検出するＲＳＳＩ回路が設けられていてもよい。
【００７０】
この場合、端末装置２０のＣＰＵ２１は、取得手段４１の機能として、各通信装置１０に対して、端末装置２０から受信した電波のＲＳＳＩ値を端末装置２０に送信するように要求する。そして、ＣＰＵ２１は、各通信装置１０から送信された情報を、通信インタフェース部２９を介して受信（取得）すると、受信した情報を例えばＲＡＭ２３に記憶する。なお、生成手段４２、方向推定手段４３及び位置推定手段４４の機能は、上述した実施形態と同様である。
【００７１】
このように、本変形例にかかる位置推定システム、位置推定方法、プログラムによれば、上述した実施形態と同様の作用効果を発揮することが可能である。
【００７２】
（変形例２）
上記実施形態において、位置推定手段４４は、複数の通信装置１０のうち少なくとも１つの通信装置１０に対応する受信信号強度が第２タイミングにおいて所定の閾値以上となる場合に、第２タイミングにおける端末装置２０の位置を所定の位置に推定してもよい。
【００７３】
例えば、端末装置２０の位置を推定する毎に、端末装置２０の正確な位置と推定位置との間に誤差が生じる場合には、端末装置２０の位置を繰り返して推定する毎に誤差が累積した状態で端末装置２０の位置が推定されることから、端末装置２０の位置を正確に推定することが困難になるおそれがある。ところで、端末装置２０と通信装置１０との間で送受信される電波の受信信号強度は、これらの距離が短くなるほど高くなり、これらの距離が長くなるほど小さくなるので、受信信号強度に応じて、端末装置２０と通信装置１０との距離を推定することが可能となる。
【００７４】
本変形例によれば、例えば、第２タイミングにおける受信信号強度が所定の閾値以上の場合には、第２タイミングにおける端末装置２０の位置を所定の位置（例えば、閾値以上の受信信号強度に対応する通信装置１０の位置）に推定しているので、端末装置２０と通信装置１０との距離と、受信信号強度との関係に基づいて、端末装置２０の位置を正確に推定することができる。これにより、例えば、端末装置２０の正確な位置と推定位置との間に誤差が生じた場合であっても、この誤差が累積した状態で端末装置２０の位置が新たに推定されるのを抑制することができる。
【００７５】
本変形例における位置推定手段４４の機能は例えば以下のように実現される。端末装置２０のＣＰＵ２１は、変位データにアクセスして、各通信装置Ａ，Ｂ，Ｃ，Ｄのうち、第２タイミングにおける受信信号強度の値が所定の閾値以上の通信装置（例えば通信装置Ｄ）が存在する場合には、端末装置２０の位置を所定の位置（例えば通信装置Ｄの位置）に推定する。
【００７６】
また、ＣＰＵ３１は、各通信装置Ａ，Ｂ，Ｃ，Ｄのうち、第２タイミングにおける受信信号強度の値が所定の閾値以上の通信装置が２つ存在する場合には、例えば、これらの２つの通信装置間の中心となる位置を端末装置２０の位置として推定してもよい。さらに、ＣＰＵ３１は、各通信装置Ａ，Ｂ，Ｃ，Ｄのうち、第２タイミングにおける受信信号強度の値が所定の閾値以上の通信装置が３つ存在する場合には、例えば、これらの３つの通信装置間の中心となる位置を端末装置２０の位置として推定してもよい。
【００７７】
さらに、位置推定手段４４は、複数の通信装置１０のうち少なくとも１つの通信装置１０に対応する受信信号強度の第２タイミング以前の第２期間（例えば第２タイミングを含む過去１秒間）における平均値が所定の閾値以上となる場合に、第２タイミングにおける端末装置２０の位置を所定の位置に推定してもよい。これにより、例えば、受信信号強度が瞬時的に所定の閾値以上となる異常値であったとしても、平均化した受信信号強度が当該閾値以下の場合には、端末装置２０が所定の位置に誤って推定されるのを抑制することができる。
【００７８】
この場合における位置推定手段４４の機能は、例えば以下のように実現される。ここで、変位データは、例えば図１０に示すように、第１タイミング以前の第１期間（例えば第１タイミングを含む過去１秒間）内のＲＳＳＩ値の平均値と、第２期間内のＲＳＳＩ値の平均値と、第１期間と第２期間との間のＲＳＳＩ値の平均値の変位とが、複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に記述されていてもよい。ＣＰＵ３１は、変位データにアクセスして、各通信装置Ａ，Ｂ，Ｃ，Ｄのうち、第２期間における受信信号強度の平均値が所定の閾値以上の通信装置（例えば通信装置Ｄ）が存在する場合には、端末装置２０の位置を所定の位置（例えば通信装置Ｄの位置）に推定してもよい。
【００７９】
（変形例３）
上記実施形態において、生成手段４２は、複数の通信装置１０の各々に対応する受信信号強度の第１タイミング以前の第１期間内の平均値と、複数の通信装置１０の各々に対応する受信信号強度の第２タイミング以前の第２期間内の平均値とに基づいて、変位ベクトルを複数の通信装置１０毎に生成してもよい。
【００８０】
例えば第１タイミング及び第２タイミングの少なくとも一方で取得した受信信号強度が異常値の場合には、当該受信信号強度がそのまま移動方向の推定に用いられることによって移動方向の推定精度が劣化し、ひいては端末装置２０の位置の推定精度が劣化するおそれがある。本変形例によれば、複数の通信装置１０の各々に対応する受信信号強度の平均値に基づいて端末装置２０の位置を推定することができるので、例えば受信信号強度の異常値が第１期間及び第２期間の少なくとも一方に含まれる場合であっても、各期間において受信信号強度を平均化することによって、当該異常値による影響を低減することができる。これにより、受信信号強度の異常値に基づく移動方向の推定精度の劣化を抑制し、ひいては端末装置２０の位置の推定精度の劣化を抑制することができる。
【００８１】
本変形例における生成手段４２の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、取得手段４１の機能に基づいて、第１タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値を取得すると、複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎にＲＳＳＩ値の第１タイミング以前の第１期間（例えば第１タイミングを含む過去１秒間）内の平均値をもとめる。そして、ＣＰＵ２１は、ＲＳＳＩ値の平均値を、例えば図１０に示す変位データに記憶する。また、ＣＰＵ２１は、取得手段４１の機能に基づいて、第２タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値を取得すると、複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎にＲＳＳＩ値の第２タイミング以前の第２期間（例えば第２タイミングを含む過去１秒間）内の平均値をもとめる。そして、ＣＰＵ２１は、ＲＳＳＩ値の平均値を変位データに記憶する。なお、変位ベクトルを生成する処理の内容については、上述した実施形態と同様である。
【００８２】
また、生成手段４２は、複数の通信装置１０の各々に対応する受信信号強度の第１タイミング以前の第１期間内の指数平滑平均値と、複数の通信装置１０の各々に対応する受信信号強度の第２タイミング以前の第２期間内の指数平滑平均値とに基づいて、変位ベクトルを複数の通信装置１０毎に生成してもよい。この場合においても、受信信号強度の異常値に基づく移動方向の推定精度の劣化を抑制し、ひいては端末装置２０の位置の推定精度の劣化を抑制することができる。
【００８３】
この場合、端末装置２０のＣＰＵ２１は、第１タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値を取得すると、複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎にＲＳＳＩ値の第１タイミング以前の第１期間（例えば第１タイミングを含む過去１０秒間）内の指数平滑平均値をもとめる。そして、ＣＰＵ２１は、ＲＳＳＩ値の指数平滑平均値を、例えば変位データに記憶してもよい。また、ＣＰＵ２１は、第２タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値を取得すると、複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎にＲＳＳＩ値の第２タイミング以前の第２期間（例えば第２タイミングを含む過去１０秒間）内の指数平滑平均値をもとめる。そして、ＣＰＵ２１は、ＲＳＳＩ値の指数平滑平均値を変位データに記憶してもよい。
【００８４】
なお、ＲＳＳＩ値の指数平滑平均値に基づいて端末装置２０の移動方向を推定する場合には、第２期間の始期は、第１期間の始期と同じであってもよいし、異なっていてもよい。また、所定期間Ａ（例えば１秒間）のＲＳＳＩ値の平均値の、所定期間Ｂ（例えば１０秒間）の指数平滑平均値に基づいて、端末装置２０の移動方向を推定してもよい。
【００８５】
（変形例４）
上記実施形態では、通信装置１０の数が３つ以上の場合を一例として説明したが、通信装置１０の数は２つであってもよい。この場合、上記実施形態と同様の処理を行うことによって、図１１に示す２つの通信装置Ａ，Ｂを結ぶ直線状の空間における端末装置２０の位置を推定することが可能となる。
【００８６】
（変形例５）
上記実施形態において、変位ベクトルは、第１タイミングから第２タイミングまでの、複数の通信装置１０のうち何れかの通信装置１０と端末装置２０との距離の変位を表し、方向推定手段４３は、合成ベクトルに基づいて、端末装置２０の移動方向及び移動距離を推定し、位置推定手段４４は、推定された移動方向及び移動距離に基づいて、第２タイミングにおける端末装置２０の位置を推定してもよい。
【００８７】
本変形例によれば、複数の通信装置１０の各々と端末装置２０との距離の第１タイミングから第２タイミングまでの変位を表す変位ベクトルを合成して得られる合成ベクトルによって、端末装置２０の移動方向だけでなく、第１タイミングから第２タイミングまでの端末装置２０の移動距離も表すことが可能になるので、この合成ベクトルの終点を第２タイミングにおける端末装置２０の位置と推定することができる。これにより、端末装置２０の位置を、例えば加速度センサ等の移動距離計測用の装置を用いることなく推定することができるので、端末装置２０の位置推定を容易に行うことができるとともに、位置推定システムの製造コストを抑えることができる。
【００８８】
本変形例における生成手段４２の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、取得手段４１の機能に基づいて、第１タイミングで各通信装置１０からＲＳＳＩ値（受信信号強度に関する情報）を取得すると、取得したＲＳＳＩ値を用いて、各通信装置１０と端末装置２０との距離をもとめる。ここで、一つの通信装置１０と端末装置２０との距離は、例えば、当該距離とＲＳＳＩ値との関係を事前に実測することによってもとめられてもよい。また、両者の関係は、以下の式（４）及び（５）を用いることによって、より正確にもとめることが可能である。
Ｐｒ＝Ｐｔ＋Ｇｒ＋Ｇｔ−Ｌ  …（４）
【数２】
2016075669.tif 000004
式（４）中、ＰｒはＲＳＳＩを示し、Ｐｔは通信装置１０の送信電力（ｄＢｍ）を示し、Ｇｒは端末装置２０の受信アンテナの利得（ｄＢｉ）を示し、Ｇｔは通信装置１０の送信アンテナの利得（ｄＢｉ）を示し、Ｌは自由空間損失（ｄＢｍ）を示している。このＬは式（５）でもとめられ、式（５）中、ｄは通信装置１０と端末装置２０との距離（ｍ）を示し、ｆは電波の周波数（Ｈｚ）を示し、ｃは光速（＝２．９９７９２４５８×１０８）（ｍ／ｓ）を示している。式（４）及び（５）によってもとめられる距離とＲＳＳＩ値の関係は、例えば図１２に示す対数関数で表される。
【００８９】
ＣＰＵ２１は、第１タイミングにおける各通信装置１０と端末装置２０との距離をもとめると、もとめた距離を例えば図１３に示す変位データに記憶する。本変形例における変位データは、第１タイミングでの通信装置１０と端末装置２０との距離と、第２タイミングでの通信装置１０と端末装置２０との距離と、第１タイミングと第２タイミングとの間の距離の変位とが、複数の通信装置（図の例ではＡ，Ｂ，Ｃ，Ｄ）毎に記述されているデータである。
【００９０】
次に、端末装置２０のＣＰＵ２１は、取得手段４１の機能に基づいて、第１タイミング後の第２タイミングで複数の通信装置Ａ，Ｂ，Ｃ，Ｄの各々から受信した電波のＲＳＳＩ値を取得すると、取得したＲＳＳＩ値を用いて各通信装置Ａ，Ｂ，Ｃ，Ｄと端末装置２０との距離をもとめ、もとめた距離を変位データに記憶する。そして、ＣＰＵ２１は、第１タイミングと第２タイミングとの間の距離の変位値を複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に算出し、算出した変位値を変位データに記憶する。
【００９１】
そして、端末装置２０のＣＰＵ２１は、ｘｙ平面において、第１タイミングにおける端末装置２０の位置を始点とする変位ベクトルを複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎に生成する。これらの変位ベクトルは、図６に示した変位ベクトルＤＶ１〜ＤＶ４と同様に生成される。
【００９２】
本変形例において、方向推定手段４３は、複数の通信装置Ａ，Ｂ，Ｃ，Ｄ毎の変位ベクトルを合成した合成ベクトルに基づいて、端末装置２０の移動方向及び移動距離を推定する機能を備える。
【００９３】
方向推定手段４３の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、ｘｙ平面において、各変位ベクトルを合成することにより、合成ベクトルを生成する。この合成ベクトルは、図７に示した合成ベクトルＲＶと同様に生成される。そして、ＣＰＵ２１は、上述した式（１）を用いて合成ベクトルの傾きをもとめることによって、第１タイミングから第２タイミングまでの端末装置２０の移動方向を推定する。また、ＣＰＵ２１は、合成ベクトルの大きさをもとめることによって、第１タイミングから第２タイミングまでの端末２０の移動距離を推定する。
【００９４】
本変形例において、位置推定手段４４は、推定された移動方向及び移動距離に基づいて、第２タイミングにおける端末装置２０の位置を推定する機能を備える。
【００９５】
位置推定手段４４の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、方向推定手段４３の機能に基づいて端末装置２０の移動方向及び移動距離を推定すると、合成ベクトルの終点の位置を、第２タイミングにおける端末装置２０の位置と推定する。ここで、合成ベクトルの終点の位置は、第１タイミングにおける端末装置２０の位置をＰｎ＝（ｘｎ，ｙｎ）（ｎは０以上の整数）、第１タイミングから第２タイミングまでの端末装置２０の移動方向をθｎ、第１タイミングから第２タイミングまでの端末装置２０の移動距離をｄｎとすると、上述した式（３）と同様にもとめられる。
【００９６】
（変形例６）
本変形例の機能ブロック図を図１４に示す。図１４に示すように、この機能ブロック図は、図３に示したものとは、補正手段４５が追加されている点で異なる。
【００９７】
上述した変形例５において、受信信号強度に関する情報を取得すると、受信信号強度と、受信信号強度の所定の基準値との差に基づいて、受信信号強度を補正する補正手段４５を備え、生成手段４２は、第１タイミングで取得した受信信号強度であって補正された受信信号強度に関する情報と、第２タイミングで取得した受信信号強度であって補正された受信信号強度に関する情報とに基づいて、変位ベクトルを複数の通信装置１０毎に生成してもよい。
【００９８】
端末装置と通信装置との距離と、受信信号強度との関係は、端末装置又は通信装置の種類毎及び／又は個体毎に異なり得るし、端末装置又は通信装置の周囲の環境によって異なり得る。例えば、第１の端末装置と通信装置との距離と、受信信号強度との関係を用いて、第１の端末装置と異なる第２の端末装置の位置を推定する場合には、第２の端末装置が第１の端末装置と同じ位置に存在したとしても、上記関係に基づいてもとめられた第２の端末装置と通信装置との距離が、第１の端末装置と通信装置との距離と異なる場合がある。この場合、第２の端末装置が第１の端末装置と異なる位置に存在すると推定され得ることから、端末装置の位置を正確に推定することができない虞がある。
【００９９】
本変形例によれば、受信信号強度に関する情報を取得すると、受信信号強度と、受信信号強度の所定の基準値との差に基づいて、受信信号強度を補正しているので、例えば、異なる端末装置２０又は通信装置１０を用いた場合や端末装置２０又は通信装置１０の周囲の環境が異なる場合であっても、距離と受信信号強度との所定の関係に適合するように受信信号強度を補正することによって、端末装置２０又は通信装置１０の種類や環境等の違いに基づく距離と受信信号との関係の差異を低減することができ、ひいては、端末装置２０の位置を正確に推定することができる。したがって、端末装置２０又は通信装置１０の種類及び／又は個体の違いや、端末装置２０又は通信装置１０の周囲の環境の違いに拘わらずに、端末装置２０の位置を正確に推定することができる。
【０１００】
補正手段４５は、受信信号強度に関する情報を取得すると、受信信号強度と、受信信号強度の所定の基準値との差に基づいて、受信信号強度を補正する機能を備える。
【０１０１】
補正手段４５の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、取得手段４１の機能に基づいて、各通信装置１０からＲＳＳＩ値（受信信号強度に関する情報）を取得すると、取得したＲＳＳＩ値を補正する。ところで、ＲＳＳＩ値と距離との関係をそれぞれ表す複数の対数関数の各々の傾きは、例えば図１５に示すように、端末装置２０又は通信装置１０の種類毎及び／又は個体毎や、端末装置２０又は通信装置１０の周囲の環境に依存することなく同じである。すなわち、ＲＳＳＩ値と距離との所定の関係を示す対数関数（図１５において実線で示す）と、ＲＳＳＩ値と距離との他の関係（例えば、端末装置２０又は通信装置１０の種類や環境等が異なる場合のＲＳＳＩ値と距離との関係）を示す対数関数（図１５において一点鎖線で示す）との間のＲＳＳＩ値の差ＣＶは、距離が変化しても同じ値である。したがって、空間Ｓ内の所定の位置におけるＲＳＳＩ値の基準値（例えば理論値）と当該位置におけるＲＳＳＩ値の実測値との差ＣＶを用いてＲＳＳＩ値を補正することにより、端末装置２０又は通信装置１０の種類や環境等の違いに基づく距離と受信信号との関係の差異を低減することができる。
【０１０２】
ＣＰＵ２１は、上述した式（４）及び（５）を用いて、空間Ｓ内の所定の位置におけるＲＳＳＩ値の基準値（例えば理論値）を事前にもとめてもよい。また、ＣＰＵ２１は、例えば、この所定の位置におけるＲＳＳＩ値の実測値が入力部２７を用いて入力された場合に、ＲＳＳＩ値の実測値と、ＲＳＳＩ値の基準値との差ＣＶをもとめてもよい。さらに、ＣＰＵ２１は、差ＣＶを事前にもとめてもよい。そして、ＣＰＵ２１は、通信装置１０からＲＳＳＩ値を取得すると、取得したＲＳＳＩ値が基準値に適合するように、取得したＲＳＳＩ値を、差ＣＶを用いて補正する（図１５の例では、取得したＲＳＳＩ値に差ＣＶの値を加算する）。
【０１０３】
なお、ＣＰＵ２１は、過去にもとめられた差ＣＶを利用した指数平滑法や移動平均法等を用いて、新たな差ＣＶをもとめてもよい。
【０１０４】
本変形例において、生成手段４２は、第１タイミングで取得した受信信号強度であって補正された受信信号強度に関する情報と、第２タイミングで取得した受信信号強度であって補正された受信信号強度に関する情報とに基づいて、変位ベクトルを複数の通信装置１０毎に生成する機能を備える。
【０１０５】
本変形例における生成手段４２の機能は、例えば以下のように実現される。端末装置２０のＣＰＵ２１は、補正手段４５の機能に基づいて、第１タイミングで各通信装置１０から取得したＲＳＳＩ値（受信信号強度に関する情報）を補正すると、補正したＲＳＳＩ値を用いて、各通信装置１０と端末装置２０との距離をもとめる。また、ＣＰＵ２１は、第１タイミングにおける各通信装置１０と端末装置２０との距離をもとめると、もとめた距離を例えば図１３に示す変位データに記憶する。
【０１０６】
次に、端末装置２０のＣＰＵ２１は、補正手段４５の機能に基づいて、第１タイミング後の第２タイミングで複数の通信装置１０から取得したＲＳＳＩ値を補正すると、補正したＲＳＳＩ値を用いて各通信装置１０と端末装置２０との距離をもとめ、もとめた距離を変位データに記憶する。そして、ＣＰＵ２１は、第１タイミングと第２タイミングとの間の距離の変位値を複数の通信装置１０毎に算出し、算出した変位値を変位データに記憶する。なお、本変形例における方向推定手段４３及び位置推定手段４４の機能は、上述した変形例５と同様であってよい。
【０１０７】
なお、本発明のプログラムは、コンピュータで読み取り可能な記憶媒体に記憶されていてもよい。このプログラムを記録した記憶媒体は、図２に示された不揮発性メモリ２４であってもよい。また、例えばＣＤ−ＲＯＭドライブ等のプログラム読取装置に挿入されることで読み取り可能なＣＤ−ＲＯＭ等であってもよい。さらに、記憶媒体は、磁気テープ、カセットテープ、フレキシブルディスク、ＭＯ／ＭＤ／ＤＶＤ等であってもよいし、半導体メモリであってもよい。
【０１０８】
以上説明した実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
【０１０９】
例えば、上述した各実施形態では、一つの端末装置２０の移動方向を推定する場合を一例として説明していたが、複数の端末装置の移動方向（すなわち、複数のユーザの移動方向）を推定してもよい。この場合、複数の端末装置の種類は、同じであってもよいし、異なっていてもよい。この場合においても、複数の通信装置１０毎の変位ベクトルを合成してなる合成ベクトルを複数の端末装置ごとにもとめることによって、各端末装置の移動方向（すなわち、各ユーザの移動方向）を正確に推定することができる。
【０１１０】
上述した実施形態及び変形例では、端末装置２０によって、取得手段４１、生成手段４２、方向推定手段４３、位置推定手段４４及び補正手段４５の各機能を実現する構成としたが、この構成に限られない。例えば、インターネットやＬＡＮ(Local Area Network)などの通信網を介して端末装置２０と通信可能に接続されたコンピュータ（例えば汎用のパーソナルコンピュータなど）によって、上記各手段４１，４２，４３，４４，４５の機能を実現する構成としてもよい。また、上記各手段４１，４２，４３，４４，４５のうち少なくとも一部の手段の機能を上記コンピュータによって実現する構成としてもよい。さらに、これらのすべての手段を通信装置１０又は端末装置２０によって実現する構成としてもよいし、少なくとも一部の手段を通信装置１０又は端末装置２０によって実現する構成としてもよい。
【産業上の利用可能性】
【０１１１】
上述したような本発明の位置推定システム、位置推定方法、プログラムは、所定の空間内に存在する端末装置の位置を正確に推定することができ、例えば実店舗内等の屋内での位置情報サービスに好適に利用することができるので、その産業上の利用可能性は極めて大きい。
【符号の説明】
【０１１２】
１０…通信装置
２０…端末装置
４１…取得手段
４２…生成手段
４３…方向推定手段
４４…位置推定手段
４５…補正手段
ＤＶ１，ＤＶ２，ＤＶ３，ＤＶ４…変位ベクトル
ＲＶ…合成ベクトル
Ｓ…空間
【図１】
2016075669.tif 000005
【図２】
2016075669.tif 000006
【図３】
2016075669.tif 000007
【図４】
2016075669.tif 000008
【図５】
2016075669.tif 000009
【図６】
2016075669.tif 000010
【図７】
2016075669.tif 000011
【図８】
2016075669.tif 000012
【図９】
2016075669.tif 000013
【図１０】
2016075669.tif 000014
【図１１】
2016075669.tif 000015
【図１２】
2016075669.tif 000016
【図１３】
2016075669.tif 000017
【図１４】
2016075669.tif 000018
【図１５】
2016075669.tif 000019