(58)【調査した分野】(Int.Cl.,DB名)
エリアに設置された複数のWi−Fiアクセスポイントと、前記Wi−Fiアクセスポイントと近距離無線通信可能なユーザ端末と、ネットワークを介して前記ユーザ端末と無線通信可能なサーバとを備えた位置推定システムであって、
前記エリアの各地点において第一のユーザ端末の周辺に存在する複数のWi−Fiアクセスポイントの固有情報及び当該固有情報の電波強度を含むWi−Fi指紋に基づいて、前記各地点に対する前記Wi−Fi指紋中の複数の固有情報及び当該固有情報の電波強度を並べた登録固有情報リストを前記エリアの各地点毎に生成する登録リスト生成部と、
前記生成された各地点毎の登録固有情報リストに基づいて、前記登録固有情報リストに含まれる特定の固有情報をキーとして、当該特定の固有情報を含む登録固有情報リストの地点と、当該登録固有情報リストにおける特定の固有情報の電波強度とを紐付けした地点リストを各特定の固有情報毎に生成する地点リスト生成部と、
前記エリアにおいて第二のユーザ端末の周辺に存在する複数のWi−Fiアクセスポイントの固有情報を含むWi−Fi指紋に基づいて、前記Wi−Fi指紋の複数の固有情報を並べた推定固有情報リストを生成する推定リスト生成部と、
前記生成された推定固有情報リストと、各固有情報毎の前記地点リストとに基づいて、当該推定固有情報リストの各固有情報毎に対応する地点リストの地点を、当該地点に紐付けされた電波強度が高い順番に並べ、同一の固有情報に紐付けされた地点の出現回数に、電波強度に応じた重みを付けて、同一の地点の出現回数を各地点毎に算出する出現回数算出部と、
前記出現回数が最も多い地点を前記第二のユーザ端末が存在する存在位置として推定する位置推定部と、
を備える位置推定システム。
エリアに設置された複数のWi−Fiアクセスポイントと、前記Wi−Fiアクセスポイントと近距離無線通信可能なユーザ端末と、ネットワークを介して前記ユーザ端末と無線通信可能なサーバとを備えた位置推定システムの位置推定方法であって、
前記エリアの各地点において第一のユーザ端末の周辺に存在する複数のWi−Fiアクセスポイントの固有情報及び当該固有情報の電波強度を含むWi−Fi指紋に基づいて、前記各地点に対する前記Wi−Fi指紋中の複数の固有情報及び当該固有情報の電波強度を並べた登録固有情報リストを前記エリアの各地点毎に生成する登録リスト生成ステップと、
前記生成された各地点毎の登録固有情報リストに基づいて、前記登録固有情報リストに含まれる特定の固有情報をキーとして、当該特定の固有情報を含む登録固有情報リストの地点と、当該登録固有情報リストにおける特定の固有情報の電波強度とを紐付けした地点リストを各特定の固有情報毎に生成する地点リスト生成ステップと、
前記エリアにおいて第二のユーザ端末の周辺に存在する複数のWi−Fiアクセスポイントの固有情報を含むWi−Fi指紋に基づいて、前記Wi−Fi指紋中の複数の固有情報を並べた推定固有情報リストを生成する推定リスト生成ステップと、
前記生成された推定固有情報リストと、各固有情報毎の前記地点リストとに基づいて、当該推定固有情報リストの各固有情報毎に対応する地点リストの地点を、当該地点に紐付けされた電波強度が高い順番に並べ、同一の固有情報に紐付けされた地点の出現回数に、電波強度に応じた重みを付けて、同一の地点の出現回数を各地点毎に算出する出現回数算出ステップと、
前記出現回数が最も多い地点を前記第二のユーザ端末が存在する存在位置として推定する位置推定ステップと、
を備える位置推定方法。
【発明を実施するための形態】
【0020】
以下に、添付図面を参照して、本発明の実施形態について説明し、本発明の理解に供する。尚、以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格のものではない。
【0021】
本発明に係る位置推定システム1は、
図1に示すように、エリアAに設置された複数のWi−Fiアクセスポイント10と、前記Wi−Fiアクセスポイント10と近距離無線通信可能なユーザ端末11と、ネットワーク12を介してユーザ端末11と無線通信可能なサーバ13(位置推定サーバ)とを備えている。
【0022】
Wi−Fiアクセスポイント10は、無線LANのWi−Fi中継機器を意味し、例えば、各ビル内に固定して設置されている固定式のWi−Fiアクセスポイントが該当する。又、移動式のモバイルルータやWi−Fi信号を定期的に送信するユーザ端末11も、疑似的にWi−Fiアクセスポイント10になり得る。
【0023】
Wi−Fiアクセスポイント10は、ユーザ端末10と近距離無線通信用の通信部を備えている。ここで、近距離無線通信とは、近距離無線電波を用いて、数十cm〜百数十mの範囲内に存在するWi−Fiアクセスポイント10とユーザ端末11とがデータの送信又は受信を行うことを意味し、単方向及び双方向を含む。Wi−Fiアクセスポイント10は、近距離無線通信のためのWi−Fi信号を定期的に送信し、ユーザ端末11が、Wi−Fiアクセスポイント10の電波受信圏(受信範囲)に入ると、Wi−Fiアクセスポイント10からのWi−Fi信号を受信する。Wi−Fi信号には、Wi−Fiアクセスポイント10の固有情報(Wi−Fiアクセスポイント10を識別可能な情報、例えば、SSID)と電波強度(受信強度)とを含み、複数のWi−Fi信号におけるSSIDと電波強度の信号対のリストが、Wi−Fi指紋となる。
【0024】
ユーザ端末11は、例えば、タッチパネル付きの携帯端末装置(スマートフォン)、タブレット型端末装置、携帯用のノートパソコン等である。ユーザ端末11は、画面を表示する端末表示部(出力部)と、ユーザの操作により所定の指示の入力を受け付ける端末受付部(入力部)と、近距離無線通信を含む無線通信用の通信部とを備えている。
【0025】
ネットワーク12は、上述したWi−Fiアクセスポイント10を介したLAN(Local Area Network)の他、無線基地局を介したWAN(Wide Area Networ)、衛星及び衛星地球局を介した衛星通信網を含み、ユーザ端末11の通信部と接続される。
【0026】
位置推定サーバ13は、一般的に使用されるコンピュータ等であり、データを蓄積する記憶部と、各種処理する処理部とを備えている。又、位置推定サーバ13は、ネットワーク12を介して、ユーザ端末11に情報を配信する。
【0027】
Wi−Fiアクセスポイント10と、ユーザ端末11と、位置推定サーバ13とは、図示しないCPU、ROM、RAM等を内蔵しており、CPUは、例えば、RAMを作業領域として利用し、ROM等に記憶されているプログラムを実行する。又、後述する各部についても、CPUがプログラムを実行することで当該各部を実現する。
【0028】
次に、
図2、
図3を参照しながら、本発明の実施形態に係る構成及び実行手順について説明する。先ず、第一のユーザ(例えば、位置推定システム1を構築する構築者)が、第一のユーザ端末11(例えば、スマートフォン)を携帯して、ユーザの位置の推定を行いたい所定のエリアに赴く。
【0029】
ここで、エリアは、例えば、ビル、駅、会館、病院、図書館、商店街、ショッピングモール、住宅街、マンション地帯、工業地帯、観光地、公園等の公私用施設であり、複数のWi−Fiアクセスポイント10が至るところに存在するエリアである。
【0030】
次に、第一のユーザが、エリアAの各地点毎のWi−Fi指紋の収集を行う。具体的には、第一のユーザが、第一のユーザ端末11からネットワーク12を介して位置推定サーバ13にアクセスし、地点登録アプリケーションをダウンロードする。地点登録アプリケーションは、誰でも簡単に地点登録が出来るように、エリアAにおける各地点の選択とWi−Fi指紋の収集の機能を有している。
【0031】
そして、第一のユーザが、
図4Aに示すように、エリアAのうち、複数(例えば、3つ)のビル40が存在する第一の地点(例えば、ランドマークになる「Spot A」)へ赴く。複数のビル40の内部又は外部には、固定式のWi−Fiアクセスポイント10がそれぞれ設置されている。更に、第一のユーザが、第一のユーザ端末11の地点登録アプリケーションを起動させると、第一のユーザ端末11の第一の表示受付部201は、地点登録画面をタッチパネル上に表示する。
【0032】
地点登録画面400には、
図4Aに示すように、地点登録401と、複数の登録地点キーが並べられた登録地点リスト402と、登録キー403と、キャンセルキー404とが表示される。尚、登録地点リスト402における複数の登録地点キーは、地点登録画面400に予め設定されており、選択可能にする。これにより、第一のユーザが登録地点の入力の際のタイプミスや誤登録を防止し、どのようなユーザであっても特定の地点を確実に選択出来るようにする。一方、地点登録の状況に応じて、ユーザの操作により所定の地点の名称を入力可能にしても良い。
【0033】
ここで、第一のユーザは、現在居る位置の第一の地点に対応する登録地点キー402a(「Spot A」)を選択すると、第一の表示受付部201が、登録地点キー402aの選択を受け付ける(
図3:S101)。
【0034】
次に、第一のユーザが、登録キー403を選択すると、第一のユーザ端末11の第一の指紋取得部202は、エリアの第一の地点(「Spot A」)において第一のユーザ端末11の周辺に存在する複数のWi−Fiアクセスポイント10のWi−Fi指紋を取得する(
図3:S102)。
【0035】
ここで、第一の指紋取得部202がWi−Fi指紋を取得する方法に特に限定は無い。例えば、第一の指紋取得部202が、周辺の複数のWi−Fiアクセスポイント10を検索(スキャン)することで、複数のWi−Fiアクセスポイント10のWi−Fi信号(SSID及び電波強度)を電波強度が高い順番に取得する。
【0036】
例えば、
図4Aに示すように、第一の地点(「Spot A」)の第一のユーザ端末11は、SSID「abc」、「def」、「ghi」の3つのWi−Fiアクセスポイント10に近接していることから、
図4Bに示すように、第一の指紋取得部202は、SSID「abc」及びその電波強度「82」、SSID「def」及びその電波強度「72」、SSID「ghi」及びその電波強度「61」を順番に取得する。この各Wi−Fiアクセスポイント10毎のSSID及び電波強度がWi−Fi指紋となる。
【0037】
次に、第一の指紋取得部202は、取得したWi−Fi指紋を、ネットワーク12を介して位置推定サーバ13に送信し、位置推定サーバ13の登録リスト生成部203は、前記取得されたWi−Fi指紋に基づいて、前記第一の地点(「Spot A」)に対する前記Wi−Fi指紋中の複数のSSIDを並べた登録SSIDリスト(登録固有情報リスト)を生成する(
図3:S103)。
【0038】
ここで、登録リスト生成部203が登録SSIDリストを生成する方法に特に限定は無い。例えば、登録リスト生成部203は、
図4Bに示すように、複数のSSIDを、当該SSIDの電波強度が高い(強い)順番に所定方向に沿って(左から右に沿って)並べ、並べた複数のSSIDを区切り文字「|」で連結することで、第一の地点405(「Spot A」)に対する登録SSIDリスト406を生成する。
【0039】
一方、上述の登録SSIDリスト406では、電波強度の大小関係は順番により明確になるものの、電波強度(値)は反映されない。電波強度が必要な場合、登録リスト生成部203は、
図4Bに示すように、例えば、SSIDの電波強度を両括弧「(」、「)」で挟んで、当該SSIDの直後に挿入し、挿入後の複数のSSIDを区切り文字「|」で連結することで、第一の地点405(「Spot A」)について、電波強度を反映させた登録SSIDリスト407を生成することが出来る。
【0040】
そして、生成された登録SSIDリストは、位置推定サーバ13のSSIDリストテーブルに記憶され、一つの地点に対する登録SSIDリストの収集が完了する。
【0041】
ここで、登録SSIDリストの数が所定数未満である場合(
図3:S104NO)、S101からS103までの処理が繰り返される。所定数には、エリアAにおいてユーザ端末の位置を推定するために必要最低限の地点の登録SSIDリストの数が設定される。ここでは、所定数を3つに設定して、本発明の説明を簡略化する。
【0042】
例えば、
図5Aに示すように、第一のユーザは、エリアAのうち、大きなビル40が存在する第二の地点(例えば、「Spot B」)に訪れ、地点登録画面400で第二の地点に対応する登録地点キー402及び登録キー403を選択すると(
図3:S101)、第一の指紋取得部202は、エリアAの第二の地点(「Spot B」)において第一のユーザ端末11の周辺の複数のWi−Fiアクセスポイント10に対応して、SSID「jkl」及びその電波強度「77」、SSID「abc」及びその電波強度「55」、SSID「ghi」及びその電波強度「41」、SSID「pqr」及びその電波強度「25」を順番に取得する(
図3:S102)。そして、登録リスト生成部203は、第二の地点(「Spot B」)に対する登録SSIDリストを生成する(
図3:S103)。
【0043】
ここでは、未だ登録SSIDリストの数が所定数未満であるため(
図3:S104NO)、再度、S101からS103までの処理が行われる。
図5Aに示すように、第一のユーザは、複数のビル40に囲まれた第三の地点(例えば、「Spot C」)に訪れ、地点登録画面400で第三の地点に対応する登録地点キー402及び登録キー403を選択すると(
図3:S101)、第一の指紋取得部202は、エリアAの第三の地点(「Spot C」)において第一のユーザ端末11の周辺の複数のWi−Fiアクセスポイント10に対応して、SSID「mno」及びその電波強度「78」、SSID「pqr」及びその電波強度「65」、SSID「jkl」及びその電波強度「54」を順番に取得する(
図3:S102)。そして、登録リスト生成部203は、第三の地点(「Spot C」)に対する登録SSIDリストを生成する(
図3:S103)。
【0044】
ここで、複数の登録SSIDリストが生成されると、
図5Bに示すように、位置推定サーバ13のSSIDリストテーブル500には、特定の地点(登録地点)501と、当該特定の地点に対する登録SSIDリスト502とが紐付けされて記憶される。
【0045】
そして、S104において、登録SSIDリストの数が所定数以上の場合(
図3:S104YES)、位置推定サーバ13の地点リスト生成部204は、所定のタイミングで、前記生成された各地点501毎の登録SSIDリスト502に基づいて、前記登録SSIDリスト502に含まれる特定のSSIDをキーとして、当該特定のSSIDを含む登録SSIDリスト502の地点501を用いた地点リストを各SSID毎に生成する(
図3:S105)。
【0046】
ここで、地点リスト生成部204が各SSID毎の地点リストを生成する方法に特に限定は無い。例えば、地点リスト生成部204は、第一の登録SSIDリスト502に含まれる第一のSSID(例えば、「abc」)を選択し、選択した第一のSSIDを含む全ての登録SSIDリスト502を参照する。ここでは、地点リスト生成部204は、二つの登録SSIDリスト「abc(81)|def(72)|ghi(61)」、「jkl(77)|abc(55)|ghi(41)|pqr(25)」を参照する。
【0047】
そして、地点リスト生成部204は、参照した登録SSIDリスト502に紐付けされた地点501を取得し、取得した地点を用いた地点リストを生成する。例えば、地点リスト生成部204は、参照した二つの登録SSIDリスト502に対して2つの地点501を取得し、
図6Aに示すように、第一のSSID「abc」601に対して2つの地点602(第一の地点「Spot A」、第二の地点「Spot B」)を紐付けした地点リスト600を生成する。
【0048】
ここで、上述の地点リスト600では、地点602に対して電波強度(値)は反映されない。地点リストに電波強度を反映させる場合、地点リスト生成部204は、参照した登録SSIDリスト502に紐付けされた地点501と、前記登録SSIDリスト502の第一のSSIDの直後に挿入された電波強度503を取得し、第一のSSID504に対して地点501及び電波強度503を紐付ける。例えば、地点リスト生成部204は、
図6Aに示すように、第一のSSID「abc」601に対して2つの地点602(第一の地点「Spot A」、第二の地点「Spot B」)と、各地点602の登録SSIDリストにおける第一のSSIDの電波強度603(第一の地点「Spot A」に「81」、第二の地点「Spot B」に「55」)とを紐付けた地点リスト600を生成する。これにより、第一のSSIDに対する地点リストの生成が完了する。
【0049】
ここで、地点リスト生成部204は、第一のSSIDに対する地点リストの生成を完了すると、次に、第一の登録SSIDリスト502に含まれるSSIDのうち、地点リストを生成した第一のSSID以外の第二のSSIDを選択し、当該第二のSSIDに対して地点リストを生成する。このように、第一の登録SSIDリスト502に含まれる各SSID毎に地点リストが生成される。そして、第一の登録SSIDリスト502の全てのSSIDに対して地点リストを生成すると、地点リスト生成部204は、SSIDを選択した第一の登録SSIDリスト502以外の第二の登録SSIDリスト502を選択し、選択した第二の登録SSIDリストに含まれるSSIDのうち、地点リストを生成したSSID以外のSSIDを選択する。このように、地点リスト生成部204は、全ての登録SSIDリスト502に含まれるSSIDのうち、複数の異なるSSIDについて、上述の処理を繰り返すことで、各SSID毎の地点リストを生成する。
【0050】
ここでは、
図6Bに示すように、複数の異なるSSID601(「abc」、「def」、「ghi」、「jkl」、「mno」、「pqr」)について地点602と電波強度603とを紐付けた地点リスト600がそれぞれ生成される。尚、地点リスト600では、1つのSSID601に1つの地点602のみが紐付けられる場合もある。
【0051】
このように、各SSID毎の地点リストが生成されると、ユーザ端末11の位置を推定するためのデータベースが整うため、次に、ユーザ端末11の位置の推定について説明する。
【0052】
先ず、第二のユーザ(例えば、位置推定システム1を利用する利用者)が、第二のユーザ端末11(スマートフォン)からネットワーク12を介して位置推定サーバ13にアクセスし、位置推定アプリケーションをダウンロードする。位置推定アプリケーションは、誰でも簡単に位置推定が出来るように、エリアAにおけるWi−Fi指紋の送信の機能を有している。
【0053】
そして、第二のユーザが、
図7Aに示すように、第二のユーザ端末11を携帯して、上述したエリアAに赴いた際に、第二のユーザ端末11の位置推定アプリケーションを起動させると(
図3:S201)、第二のユーザ端末11の第二の指紋取得部205は、エリアAにおいて第二のユーザ端末11の周辺に存在する複数のWi−FiアクセスポイントのWi−Fi指紋を取得する(
図3:S202)。
【0054】
ここで、第二の指紋取得部205がWi−Fi指紋を取得する方法に特に限定は無い。例えば、第二の指紋取得部205が、周辺の複数のWi−Fiアクセスポイント10をスキャンすることで、複数のWi−Fiアクセスポイント10のSSIDを電波強度が高い順番に取得する。
【0055】
ここで、例えば、
図7Aに示すように、第二のユーザ端末11は、SSID「abc」、「def」、「ghi」の固定式のWi−Fiアクセスポイント10と、SSID「stu」の移動式のユーザ端末11に接近していることから、第二の指紋取得部205は、SSID「abc」及びその電波強度「78」、SSID「stu」及びその電波強度「76」、SSID「def」及びその電波強度「65」、SSID「ghi」及びその電波強度「54」を順番に取得する。
【0056】
次に、第二の指紋取得部205は、取得したWi−Fi指紋を、ネットワーク12を介して位置推定サーバ13に送信し、位置推定サーバ13の推定リスト生成部206は、前記取得されたWi−Fi指紋に基づいて、前記Wi−Fi指紋中の複数のSSIDを並べた推定SSIDリスト(推定固有情報リスト)を生成する(
図3:S203)。
【0057】
ここで、推定リスト生成部206が推定SSIDリストを生成する方法に特に限定は無い。例えば、推定リスト生成部206は、
図7Aに示すように、複数のSSID701を電波強度が高い順番に所定方向に沿って(左から右に沿って)並べ、並べた複数のSSID701を区切り文字「|」で連結することで、推定SSIDリスト700を生成する。又、電波強度が必要な場合、上述と同様に、推定リスト生成部206は、SSIDの電波強度を両括弧「(」、「)」で挟んで、当該SSIDの直後に挿入し、挿入後の複数のSSIDを区切り文字「|」で連結する。尚、ここでは、第二のユーザ端末11でのWi−Fi指紋は、その場の状況により、第一のユーザ端末11でのWi−Fi指紋と異なることから、推定SSIDリスト700は、登録SSIDリスト502と異なる。
【0058】
次に、位置推定サーバ13の出現回数算出部207は、前記生成された推定SSIDリスト700と、データベースにおける各SSID毎の地点リスト600とに基づいて、当該推定SSIDリスト700の各SSID毎に対応する地点リスト600の地点602のうち、同一の地点の出現回数を各地点毎に算出する(
図3:S204)。
【0059】
ここで、出現回数算出部207が出現回数を算出する方法に特に限定は無い。例えば、出現回数算出部207は、推定SSIDリスト700の第一のSSIDに対応する地点リスト600を参照し、参照した地点リスト600の地点602を、前記第一のSSIDに紐付ける(抽出する)。具体的には、
図7Bに示すように、推定SSIDリスト700の第一のSSID701a(「abc」)に対応する地点リスト600には、二つの地点602(「Spot A」、「Spot B」)が存在するため、出現回数算出部207は、第一のSSID700a(「abc」)に二つの地点602(「Spot A」、「Spot B」)を紐付ける。
【0060】
ここで、推定SSIDリスト700のSSIDのうち、地点リスト600が存在しないSSID(例えば、「stu」)は、固定式のWi−Fiアクセスポイント10のSSIDで無く、その場で一時的に通過した移動式のWi−Fiアクセスポイント10のSSID(ノイズ)である可能性が高い。そのため、出現回数算出部207は、推定SSIDリスト700の特定のSSIDに対応する地点リスト600が存在しない場合には、登録時にデータベースに移動式のWi−Fiアクセスポイント10のSSIDは存在しないため、当該特定のSSIDを無視して、次のSSIDに対する地点リスト600を参照する。このように、地点リスト600が存在しないSSIDが推定SSIDリスト700に含まれていても、地点リスト600が存在するSSIDに基づいて地点の出現回数を算出するため、推定SSIDリスト700の生成時の状況が、登録SSIDリスト500の生成時の状況と異なったとしても、本システム1のロバスト性により、精度高く第二のユーザ端末11の位置の推定を行うことが出来る。
【0061】
そして、出現回数算出部207は、推定SSIDリスト700に含まれるSSIDのうち、地点を紐付けた第一のSSID以外の第二のSSIDに対応する地点リスト600を参照し、参照した地点リスト600の地点602を、前記第二のSSIDに紐付ける。このように、出現回数算出部207は、推定SSIDリスト700のSSIDのうち、異なるSSIDについて、上述の処理を繰り返すことで、
図7Bに示すように、推定SSIDリスト700の全てのSSIDに対応する地点リスト600の地点602を各SSID毎に紐付けることが出来る。そして、出現回数算出部207は、推定SSIDリスト700のSSIDに紐付けられた複数の地点のうち、同一の地点の数をカウントすることで、当該同一の地点の出現回数を算出する。
【0062】
例えば、出現回数算出部207は、
図7Bに示すように、第一の地点(例えば、「Spot A」)の数をカウントすることで、
図8Aに示すように、推定SSIDリスト700の第一の地点(「Spot A」)の出現回数を「3」と算出する。同様に、出現回数算出部207は、第二の地点(「Spot B」)の出現回数を「2」と算出し、第三の地点(「Spot C」)の出現回数を「0」と算出する。
【0063】
このように、出現回数算出部207は、各地点毎の出現回数を算出すると、
図8Aに示すように、位置推定サーバ13の出現回数テーブル800に、各地点801毎に出現回数802を紐付ける。
【0064】
次に、位置推定サーバ13の位置推定部208は、前記算出された各地点801毎の出現回数802に基づいて、出現回数802が最も多い地点801を第二のユーザ端末11が存在する存在位置として推定する(
図3:S205)。
【0065】
例えば、位置推定部208が、出現回数テーブル800を参照し、出現回数が最も多い地点801a(「Spot A」)を第二のユーザ端末11の存在位置として推定する。これにより、第二のユーザ端末11の存在位置を、当該第二のユーザ端末11が取得したWi−Fi指紋から容易に推定することが出来る。
【0066】
ここで、本発明に係る位置推定システム1のロバスト性について説明する。S203において、SSIDが「def」の固定式のWi−Fiアクセスポイント10が何らかの理由により除去された場合、推定リスト生成部206が生成する推定SSIDリスト803には、
図8Bに示すように、SSID「def」が削除された推定SSIDリスト「abc(78)|stu(76)|ghi(54)」が生成される。そして、出現回数算出部207が、SSID「abc」、「ghi」に対応する地点リスト600の地点602のみを各SSID毎に紐付け、各地点毎の出現回数を算出する。
【0067】
そして、各地点805毎に出現回数806を紐付けた出現回数テーブル804では、
図8Bに示すように、第一の地点(「Spot A」の出現回数は「2」となり、第二の地点(「Spot B」)の出現回数を「1」となり、第三の地点(「Spot C」)の出現回数を「0」となる。
【0068】
ここで、SSIDが「def」の固定式のWi−Fiアクセスポイント10が除去されたとしても、他のSSID「abc」、「ghi」の地点リスト600の地点602が出現回数に反映されることで、SSIDが「def」の固定式のWi−Fiアクセスポイント10が存在する場合と同じように、出現回数が最も多い地点805aは、「Spot A」になることが分かる。つまり、一部の固定式のWi−Fiアクセスポイント10が減少したとしても、第二のユーザ端末11の位置を正確に推定することが出来るのである。このように、本発明に係る位置推定システム1では、登録SSIDリスト500に基づくデータベースを各SSID毎の地点リストに変換し、登録SSIDリスト500の一部が推定SSIDリスト700の一部と異なり、登録SSIDリスト500が多少変化したとしても、地点の出現回数の算出に基づくユーザ端末11の位置の推定により、それを許容し、ロバスト性を確保することが出来る。
【0069】
尚、固定式のWi−Fiアクセスポイント10が新たに増加した場合、このSSIDの地点リストが存在しないため、他のSSIDの地点リストによって、ユーザ端末11の位置の推定が行われる。従って、一度、各SSID毎の地点リストを登録すれば、登録時の状況が多少変化したとしても、ユーザ端末11の位置を精度高く推定することが出来る。
【0070】
長時間が経過し、仮に、第一のユーザが各SSID毎の地点リストを再登録する場合、所定のタイミングで、地点登録アプリケーションを用いてWi−Fi指紋を同一の地点で再取得すれば、増加した固定式のWi−Fiアクセスポイント10のSSIDを地点の出現回数に反映させることが出来るため、この場合であっても、ユーザ端末11の位置を正確に推定することが出来る。
【0071】
例えば、
図9Aに示すように、第一の地点「Spot A」の周辺に新たなビル40が建設され、そのビル40の内部に、SSIDが「vwx」の固定式のWi−Fiアクセスポイント10が設置された後に、第一のユーザが、再登録のために、第一の地点「Spot A」で、地点登録画面400の第一の地点に対応する登録地点キー402及び登録キー403を選択する(
図3:S101)。すると、第一の指紋取得部202は、エリアの第一の地点(「Spot A」)において第一のユーザ端末11の周辺の複数のWi−Fiアクセスポイント10に対応して、SSID「abc」及びその電波強度「80」、SSID「def」及びその電波強度「73」、SSID「ghi」及びその電波強度「60」、SSID「vwx」及びその電波強度「45」を順番に取得する(
図3:S102)。そして、登録リスト生成部203は、第一の地点(「Spot A」)901に対して複数の異なるSSID902を並べた登録SSIDリスト900を再生成する(
図3:S103)。
【0072】
ここでは、SSIDリストテーブルには、前記再生成された第一の地点901の登録SSIDリスト900が追加されるため、地点リスト生成部204は、前記登録SSIDリスト900に含まれるSSIDのうち、既に地点リストが存在するSSID以外の新たなSSID「vwx」を選択し、選択した新たなSSID「vwx」をキーとして、地点リストを生成する(
図3:S104)。具体的には、
図9Aに示すように、新たなSSID「vwx」904に対して第一の地点905(「Spot A」)と電波強度「45」906が紐付けされた地点リスト903が生成される。
【0073】
この状態で、第二のユーザが、第一の地点「Spot A」の付近で、第二のユーザ端末11の位置推定アプリケーションを起動させると(
図3:S201)、第二の指紋取得部205は、
図9Bに示すように、SSID「abc」及びその電波強度「77」、SSID「def」及びその電波強度「64」、SSID「ghi」及びその電波強度「53」、SSID「vwx」及びその電波強度「44」を順番に取得する(
図3:S202)。推定リスト生成部206は、前記取得した複数のSSID及び電波強度に基づいて、推定SSIDリスト907を生成し(
図3:S203)、出現回数算出部207が、推定SSIDリスト907の各SSID毎に対応する地点リストの地点を各SSID毎に紐付け、紐付けられた地点のうち、同一の地点の数をカウントすることで、各地点毎の出現回数を算出する(
図3:S204)。
【0074】
ここで、推定SSIDリスト907に新たなSSID「vwx」が含まれる場合には、第一の地点の数が一つ多くカウントされ、その結果、第一の地点の出現回数が最も多くなる。このように、第二のユーザ端末11の存在位置は、第一の地点「Spot A」となり、再登録の後であっても、ユーザ端末11の位置を正確に推定することが出来る。
【0075】
ところで、S102では、第一の指紋取得部202がWi−Fi指紋を取得する際に、一回のスキャンでは、第一のユーザ端末11の周辺に存在する全てのWi−Fiアクセスポイント10を検索することが出来なかったり、第一のユーザ端末11の周辺に一時的に存在したモバイルルータ(移動式Wi−Fiアクセスポイント)のSSIDまで取得してしまったりする可能性がある。
【0076】
そこで、第一の指紋取得部202は、所定時間内に、複数のWi−Fi指紋を取得し、前記複数のWi−Fi指紋中のSSIDの電波強度の経時的変化を各SSID毎に算出し、電波強度が経時的に一定であるSSIDと、当該SSIDの電波強度とを、前記第一のユーザ端末の周辺に存在する複数の固定式のWi−FiアクセスポイントのSSIDを含むWi−Fi指紋として取得しても良い。ここで、電波強度が経時的に一定であるSSIDのWi−Fiアクセスポイント10は、固定式で、ユーザ端末11の位置推定に利用出来るWi−Fiアクセスポイントと推定される。
【0077】
例えば、第一の指紋取得部202が、第一の地点において第一のユーザ端末11でスキャンした際に、
図10Aに示すように、固定式のWi−FiアクセスポイントのSSID(「abc」、「def」、「ghi」)と、移動式のWi−FiアクセスポイントのSSID(「zyx」、「wvu」、「tsr」)とを取得すると、取得した複数のSSID及びその電波強度を一時的に保持する。
図10Bに示すように、登録SSIDテーブル1000には、一回目のスキャンで取得されたSSID1001が電波強度の高い順番に並べられ、各SSID毎に電波強度1002が紐付けされる。
【0078】
ここで、第一の指紋取得部202は、所定時間内(例えば、30秒)に、複数回(数回〜数十回、n回とする)、スキャンを繰り返し、各スキャン毎に得られた複数のSSID及び電波強度をスキャンの回数(又は経時時間)に対応して登録SSIDテーブル1000に記憶させる。尚、所定時間は、例えば、30秒、60秒、120秒等、少し長めに設定され、エリアAの環境に応じて適宜設定される。そして、所定時間が経過すると、第一の指紋取得部202は、登録SSIDテーブル1000に基づいて、電波強度が一定であるSSIDを取得する。
【0079】
例えば、第一の指紋取得部202は、
図10Bに示すように、スキャンの回数に対してSSIDの電波強度をプロットしたグラフを各SSID毎に生成し、生成したグラフのうち、回数(経過時間)に対する電波強度の変動値が所定の範囲H内であるSSIDを、固定式のWi−Fiアクセスポイント10として取得し、回数に対する電波強度の変動値が前記所定の範囲H外であるSSIDを、移動式のWi−Fiアクセスポイント10として取得しない。前記所定の範囲Hは、例えば、経験的に設定される値で構成され、具体的には、回数に対する複数の電波強度の平均値を中心値とし、所定の閾値を中心値に加算した上限値と、前記所定の閾値を中心値から減算した下限値とで構成される。仮に、第一のユーザ端末11に一時的に接近した移動式のWi−Fiアクセスポイント10であっても、所定時間が経過すれば、その場を移動したり立ち去ったりすることで、このWi−Fiアクセスポイント10のSSID(「zyx」、「wvu」、「tsr」)の電波強度は大きく変動する。一方、固定式のWi−Fiアクセスポイント10では、所定時間を経過しても、その固定式のWi−FiアクセスポイントのSSID(「abc」、「def」、「ghi」)の電波強度は殆ど変らない(一定である)。このように、電波強度の経時的変化に基づいて、固定式と移動式のWi−Fiアクセスポイント10のSSIDを区別することで、ノイズとなり得るSSIDを除去することが出来る。尚、固定式のWi−Fiアクセスポイント10のSSIDの電波強度は、各スキャン毎に得られた全ての電波強度の平均値として取得される。
【0080】
又、S102では、Wi−Fiアクセスポイント10のSSIDには、公共のWi−Fiアクセスポイント10のSSID等、広いエリアにおいて複数のWi−Fiアクセスポイント10に同一のSSIDが使用されている場合がある。このようなSSIDは、位置の推定に役立つ情報とならない。
【0081】
そこで、どこの地点のWi−Fiアクセスポイント10でも同一であるSSIDやノイズとなり得るSSIDは、
図11Aに示すように、排除SSIDとして排除SSIDテーブル1100に予め記憶させておく。ここで、公共のWi−Fiアクセスポイント10のSSIDは、サイトで公開されている場合があり、又、モバイルルータであれば、そのSSID(初期値)がサイトで公開されている場合があるため、それを排除SSIDとして利用する。そして、第一の指紋取得部202が、取得したWi−Fi指紋のSSIDと、排除SSIDテーブル1100の排除SSID1101とを照合し、照合したSSIDを登録SSIDリストの生成に利用せず、照合しないSSIDを登録SSIDリストの生成に利用する。これにより、ノイズとなり得るSSIDを排除することで、位置の推定の精度を高めることが出来る。
【0082】
又、S102では、エリアAが、駅周辺や繁華街等の都市部である場合、そこに存在するWi−Fiアクセスポイント10は、大量であり、大量のSSIDをそのまま取得すると、データ量の膨大化や処理への影響、処理時間の長期化の点から好ましくない。
【0083】
そこで、第一の指紋取得部202は、
図11Aに示すように、取得された大量(例えば、30個)のSSID1102のうち、電波強度が最も高いSSID1102aから電波強度が低い(弱い)順番に所定数(例えば、20個)のSSID1103に限定する。この限定された所定数のSSID1103が登録SSIDリストの生成に利用される。これにより、ユーザ端末11の位置の推定に必要なSSIDを確保するとともに、SSIDのデータ量を削減させることが出来る。又、第一の指紋取得部202は、所定数に限定したSSIDから、上述した排除SSIDテーブル1100の排除SSID1101を排除することで、位置の推定の精度を更に高めても良い。更に、第一の指紋取得部202が、単に、Wi−Fi指紋を登録リスト生成部203に送信し、登録リスト生成部203が、Wi−Fi指紋中の複数のSSIDのうち、電波強度が最も高いSSIDから所定数のSSIDだけ限定したり、上述した排除SSIDテーブル1100の排除SSID1101を排除したりしても良い。
【0084】
又、S103では、Wi−Fiアクセスポイント10のSSIDに設定出来る情報は、通常、1〜32文字の半角英数文字である。Wi−Fiアクセスポイント10の機種に応じて、日本語等のマルチバイト文字をSSIDに設定ことが出来る。このような多様なSSIDをそのまま登録SSIDリストに利用すると、データ量の膨大化や個人情報保護の点から好ましくない。
【0085】
そこで、登録リスト生成部203は、取得されたWi−Fi指紋のSSIDに対して、当該SSIDの桁数を低下させる符号化を施し、符号化後のSSIDを用いて登録SSIDリストを生成する。
【0086】
ここで、登録リスト生成部203がSSIDを符号化する方法に特に限定は無いが、例えば、チェックサムと進数化を挙げることが出来る。例えば、
図11Bに示すように、取得されたSSID1104が、「AdInte_V2K3DLCH9LIZI2PX」である場合、データ量が大きく、且つ、「AdInte」という固有名称が含まれる。そこで、登録リスト生成部203は、このSSIDに対してチェックサム(例えば、adler32チェックサム)を施し、桁数が8桁のチェックサム後のSSID1105「57bf0701」を生成する。このチェックサムは、チェックサム後のSSIDからチェックサム前のSSIDに復号することが出来ないことから、データ量を削減し、且つ、個人情報を無くすことが出来る。更に、登録リスト生成部203は、チェックサム後のSSIDに対して進数化(62進数化)を施し、桁数が1−6桁の進数化後のSSID1106「1BCW4x」を生成する。この進数化は、主にデータ量を削減することが出来る。このように、符号化は、チェックサムと進数化を組み合わせることで、データ量の削減と個人情報の保護を確実に行うことが出来る。
【0087】
ここで、符号化の種類に特に限定は無く、例えば、チェックサム又は進数化のみでも良く、パリティ符号、巡回冗長検査、ハッシュ関数、巡回ハミング符号、リード・ソロモン符号等の他の符号化でも良い。
【0088】
登録リスト生成部203は、
図11Bに示すように、複数の符号化後SSIDを電波強度が高い順番に所定方向に沿って並べ、並べた複数の符号化後SSIDを区切り文字「|」で連結して、第一の地点1107(「Spot A」)に対する登録SSIDリスト1108を生成する。又、電波強度が必要な場合、登録リスト生成部203は、並べた符号化後SSIDの直後に、両括弧で挟んだ電波強度を挿入し、並べた複数のSSID及び両括弧で挟まれた電波強度を区切り文字「|」で連結することで、第一の地点1103(「Spot A」)に対する登録SSIDリスト1109を生成する。
【0089】
尚、S203において、推定リスト生成部206は、上述と同様に、取得されたWi−Fi指紋のSSIDに対して、前記符号化を施し、符号化後のSSIDを用いて推定SSIDリストを生成することになる。
【0090】
ところで、SSIDの符号化により、桁数が減少する一方、符号化SSIDの衝突が生じる可能性がある。ここで、符号化SSIDの衝突とは、符号化前のSSIDは異なるものの、符号化後のSSIDは同じ文字列に変換されることを意味する。しかしながら、本発明では、SSIDが多少増減しても、ユーザ端末11の位置を正確に推定するロバスト性を確保していることから、符号化SSIDの衝突が生じても、他の符号化SSIDの地点リストから、正確にユーザ端末11の存在位置を推定することが出来る。
【0091】
又、S204において、下記の構成を採用することが出来る。即ち、地点リスト生成部204が、特定のSSIDを含む登録SSIDリストの地点に、当該登録SSIDリストの前記特定のSSIDの電波強度を紐付けることで、地点リストに地点と電波強度とを紐付け、出現回数算出部207が、推定SSIDリストの各SSID毎に対応する地点リストの地点のうち、電波強度が高い地点に対して、多い出現回数を加算して、同一の地点の出現回数を算出しても良い。
【0092】
例えば、
図12Aに示すように、特定のSSID1201(「abc」)の地点リスト1200において、第一の地点1202(「Spot A」)に対して第一の電波強度1203(「81」)が紐付けられ、第二の地点1202(「Spot B」)に対して第二の電波強度1203(「55」)が紐付けられている。出現回数算出部207が、特定のSSID1201(「abc」)の地点リスト1200の地点1202の数をカウントする場合、電波強度が最も高い第一の地点1202の数を「2」と算出し、電波強度が次に高い第二の地点1202の数を「1」と算出する。
図12Bに示すように、出現回数算出部207が、推定SSIDリスト1204の各SSID1205毎に、電波強度が高い順番に地点リストの地点1206を並べ、同一の地点1206の数をカウントする際に、電波強度が最も高い地点の数を「2」としてカウントし、電波強度が次に高い地点の数を「1」としてカウントして、同一の地点1205の出現回数を算出する。尚、SSID1205に1つしか地点1206が紐付けされていない場合は、その地点1206の数は、「1」としてカウントする。すると、推定SSIDリスト1203の第一の地点(「Spot A」)の出現回数は「5」となり、第二の地点(「Spot B」)の出現回数は「2」となり、第三の地点(「Spot C」)の出現回数を「0」となる。つまり、同一のSSID1025に紐付けされた地点の数に、電波強度に応じた重みを付けて、同一の地点の出現回数を算出することで、電波強度に関係無く同一の地点の出現回数を算出する場合(例えば、
図8A)と比較して、第一の地点(「Spot A」)の出現回数が他の地点の出現回数よりも顕著に多くなり、第一の地点がユーザ端末11の存在位置として推定される可能性が高くなる。そのため、更に、ユーザ端末11の存在位置を精度高く推定することが出来る。尚、重み付けの値に特に限定は無い。又、出現回数算出部207は、推定SSIDリストの各SSID毎に対応する地点リストの地点のうち、電波強度が最も高い地点から電波強度が低い順番に所定数(例えば、2個〜5個)の地点に限定して、同一の地点の出現回数を算出しても良い。このような構成とすることで、処理量を減らすとともに、ユーザ端末11の存在位置を精度高く推定することが出来る。
【0093】
さて、本発明に係る位置推定システム1の応用例について説明する。S205において、第二のユーザ端末11の存在位置が推定された場合、ユーザ分析部209は、
図13Aに示すように、当該第二のユーザ端末11の識別情報(ID、例えば、MACアドレス、「aaa」)1301と、推定された存在位置(「Spot A」)1302と、推定された日付時刻(例えば、「2016/11/11 9:30」)1303とをユーザ位置テーブル1300に紐付ける。ここで、ユーザ分析部208は、ユーザ端末11の識別情報1301を、個人情報保護の点から、上述のように、更に符号化してもよい。そして、エリアAにおいて第二のユーザ端末11がWi−Fi指紋を取得する度に、当該第二のユーザ端末11の存在位置と日付時刻とをユーザ位置テーブルに紐付けることで、当該第二のユーザ端末11を所有する第二のユーザの移動経路、活動半径、業務区域を知ることが可能となる。又、毎日の第二のユーザ端末11のユーザ位置テーブルを分析することで、第二のユーザの属性、特徴、職業、余暇活動、食事、ショッピングの店舗の訪問頻度、ペットや子供の有無を分析することが出来る。そして、第二のユーザ端末11の移動経路と第二のユーザの属性を分析した上で、第二のユーザの移動経路に様々な広告を配置又は発信し、その広告の存否による第二のユーザの移動経路の変化から、当該広告の効果を測定することが出来る。
図13Bに示すように、第二のユーザが興味を持つ可能性のある広告物1204を、第二のユーザの移動経路で、視覚に入る位置に設置し、第二のユーザの移動経路の変化を調査することで、広告物1204の広告の効果を測定することが出来る。又、第二のユーザ端末11の通知先が位置推定システム1に登録されている場合、ユーザ分析部209は、第二のユーザが興味を持つ可能性のある広告を第二のユーザ端末11に所定のタイミングで通知しても良い。又、上述の分析を複数のユーザに対して行うことで、特定のユーザ属性を持つユーザの流れや動きを分析することが可能となる。例えば、エリアAの各地点毎の移動形跡パターンを定義し、複数のユーザに対して移動形跡パターンの頻度を算出することで、各地点毎の二点間リンク強度を測定することが出来る。
【0094】
ところで、Wi−Fi指紋におけるSSIDの電波強度やSSIDの種類は、建物内と建物外とで大きく異なる。例えば、
図14Aに示すように、特定の店舗(例えば、「Shop A」)について、店舗外(店舗の入口付近)に第一の登録地点(例えば、「Spot A−1」)を設定し、店舗内に第二の登録地点(例えば、「Spot A−2」)を設定し、各登録地点毎にWi−Fi指紋を取得して、各登録地点毎に登録SSIDリストを生成すれば、ユーザ端末11の位置が店舗外か店舗内かを判別することが可能となる。そこで、今度は、特定の店舗(「Shop A」)に着目し、店舗内外における複数のユーザ端末11の存在位置を経時的に取得し、店舗外のユーザ端末11を、店舗を単に通過した通過者と判定し、店舗内のユーザ端末11を、店舗に訪問した訪問者と判定する。そして、複数のユーザ端末11を、通過者か訪問者かに区別し、
図14Bに示すように、経過時間に対して店舗の通過者と訪問者をプロットしたグラフを生成する。このグラフでは、例えば、通過者は、日中、殆ど変らないが、訪問者は、朝と夕方に多いことが分かる。そこで、この店舗で昼の通過者のユーザ属性を分析し、昼の通過者が興味を持つ可能性のある広告を店舗に設置し、昼の訪問者を増加させる広告を行う。このように応用することで、店舗の広告を効果的に効率よく行うことが出来る。
【0095】
又、同一の種類(ブランド)の店舗がエリア内に複数存在する場合には、各店舗毎に通過者及び訪問者の数、訪問の時間帯を調査することが可能となる。特に、異なるブランドの店舗がエリア内に複数偏在する場合、
図15に示すように、エリア上において、各ブランド毎の店舗の訪問者の数を、当該訪問者の数が多い程、大きい半径を有する円領域で示す。すると、ユーザがどのブランドの店舗を頻繁に使用するか明確になるため、ユーザに対するブランド力を測定することが出来る。又、各ブランド毎の平均通過者と平均訪問者を算出し、これらを比較することで、ユーザに対するブランド店舗の利用頻度を測定することが出来る。
【0096】
又、本発明の実施形態では、位置推定システム1が各部を備えるよう構成したが、当該各部を実現するプログラムを記憶媒体に記憶させ、当該記憶媒体を提供するよう構成しても構わない。当該構成では、前記プログラムを装置に読み出させ、当該装置が前記各部を実現する。その場合、前記記録媒体から読み出されたプログラム自体が本発明の作用効果を奏する。さらに、各部が実行するステップをハードディスクに記憶させる方法として提供することも可能である。
【解決手段】登録リスト生成部203は、エリアの第一の地点において第一のユーザ端末のWi−Fi指紋に基づいて、第一の地点に対する登録固有情報リストをエリアの各地点毎に生成する。地点リスト生成部204は、前記登録固有情報リストに含まれる特定の固有情報をキーとして、当該特定の固有情報を含む登録固有情報リストの地点を用いた地点リストを各固有情報毎に生成する。推定リスト生成部206は、エリアの第二の地点において第二のユーザ端末のWi−Fi指紋に基づいて、推定固有情報リストを生成する。出現回数算出部207は、推定固有情報リストの各固有情報毎に対応する地点リストの地点のうち、同一の地点の出現回数を各地点毎に算出する。位置推定部208は、出現回数が最も多い地点を第二のユーザ端末が存在する存在位置として推定する。