【実施例1】
【0020】
実施例1は、対象となる発信機を探索する探索機能と、携帯装置が登録された発信機の発信機IDを受信すると、特定の処理を行う処理機能を有する例である。
【0021】
図1は、実施例1に係るシステムのブロック図である。システム100は、携帯装置10、情報処理装置12、データベース14、端末装置15および発信機16を有する。携帯装置10は、例えばスマートフォンまたは携帯電話である。情報処理装置12は、例えばパーソナルコンピュータまたはサーバ等のコンピュータである。データベース14は、情報処理装置12が登録する複数の携帯装置10および複数の発信機16の情報を記憶する。データベース14は、情報処理装置12内のハードディスクユニット等の記憶装置でもよい。端末装置15は、例えば、スマートフォン、携帯電話またはパーソナルコンピュータであり、発信機16を探索するユーザの端末である。発信機16は、発信機16の識別情報(ID:Identification)を含む発信機情報を無線にて発信する。発信機16は、例えばiBeacon(登録商標)方式のビーコン発信機である。携帯装置10と情報処理装置12とは、例えばインターネット等のネットワーク18を介し接続されている。ネットワーク18には、無線回線および/または有線回線が含まれる。
【0022】
まず、対象となる発信機を探索する探索機能について説明する。
[システムの探索機能のシーケンス]
図2は、実施例1に係るシステムの探索機能のシーケンス図である。
図2に示すように、端末装置15は、探索する発信機16のIDを対象となる発信機16のID(対象ID)として情報処理装置12に出力する(ステップS10)。情報処理装置12は、対象IDを取得すると、発信機16を探索する探索範囲Rを設定する。データベース14は複数の携帯装置のIDを携帯装置10の位置と対応付けて記憶している。情報処理装置12は、データベース14から探索範囲R内に位置する複数の携帯装置10のIDをリストAとして取得する(ステップS12)。情報処理装置12は、リストA内の複数の携帯装置10から一部の携帯装置10を抽出しリストBとする(ステップS14)。情報処理装置12は、リストB内の抽出した携帯装置10にリストCを送信する(ステップS16)。リストCは、対象IDを含む発信機のIDのリストである。
【0023】
携帯装置10は、発信機16に近づくと、発信機16から発信機IDを含む情報を受信する(ステップS18)。携帯装置10は、発信機16から受信した発信機IDがリストCに含まれているか判定する(ステップS20)。発信機IDがリストCに含まれていると、携帯装置10は、受信した発信機IDと現在の携帯装置10の位置を示す位置情報P1とを含む発信機情報を情報処理装置12に送信する(ステップS22)。携帯装置10は、現在の位置を検出できないとき、位置情報P1を位置の検出不能を示す情報とする。情報処理装置12は、受信した発信機情報内の発信機IDが対象IDか判定する(ステップS23)。発信機IDが対象IDのとき、情報処理装置12は、受信した位置情報P1に基づき対象となる発信機16に関連する位置情報P2を生成する(ステップS24)。情報処理装置12は、生成した位置情報P2を端末装置15に送信する(ステップS26)。その後、ステップS12以降の処理を行う。
【0024】
このように、情報処理装置12は、探索範囲R内の複数の携帯装置10のうち一部の携帯装置10に対象IDを送信する。携帯装置10が対象IDを受信すると、携帯装置10の位置を示す位置情報P1を情報処理装置12に送信する。情報処理装置12は受信した位置情報P1から対象となる発信機16の位置に関連する位置情報P2を生成し、位置情報P2を端末装置15に送信する。これにより、端末装置15のユーザは探索する発信機16のおおよその位置を知ることができる。
【0025】
例えば携帯装置10が地下等の位置を検出できない場所にいる場合、携帯装置10が対象となる発信機16の対象IDを受信しても、携帯装置10の位置が検出できない。そこで、位置情報P1を検出不能情報とする。実施例1では、位置情報P1が検出不能情報の場合、ステップS24において、携帯装置10のログデータに基づき位置情報P2を生成する。ログデータには、携帯装置10が受信した他の発信機IDが時刻情報と対応して含まれている。データベース14には発信機IDが位置情報と対応付けて記憶されている。そこで、携帯装置10が対象となる発信機の前後に発信機IDを受信した発信機の位置情報をデータベース14から取得する。取得した位置情報に基づき位置情報P2を生成できる。以下、実施例1の詳細を説明する。
【0026】
まず、携帯装置10および情報処理装置12のハードウエア構成を説明する。
図3(a)は、実施例1に係る携帯装置のブロック図であり、
図3(b)は、実施例1に係る情報処理装置のブロック図である。
【0027】
図3(a)に示すように、携帯装置10は、プロセッサ20、表示装置21、入力装置22、記憶装置23、通信インターフェース(I/F:Interface)24、近距離無線インターフェース(I/F)25、位置検出器26および内部バス29を有する。プロセッサ20は、例えばCPU(Central Processing Unit)である。プロセッサ20は、例えばアプリ(アプリケーションプログラム)等のプログラムを実行する。表示装置21は、例えば液晶パネルまたは有機エレクトロルミネッセンスパネルである。入力装置22は、例えばタッチパネルまたはボタンである。記憶装置23は、例えばRAM(Random Access Memory)等の揮発性メモリまたはフラッシュメモリ等の不揮発性メモリである。記憶装置23は、例えばプログラムおよびデータを記憶する。
【0028】
通信インターフェース24は、例えば基地局との通信を行なう通信ユニットである。通信インターフェース24は、ネットワーク18を介し情報処理装置12に情報を送信および情報を受信する。近距離無線インターフェース25は、例えばBluetooth(登録商標) Low Energy方式等の近距離無線方式の受信ユニットである。近距離無線インターフェース25は、発信機16から送信された発信機情報を受信する。位置検出器26は、例えばGPS(Global Positioning System)等の衛星測位システムを用い携帯装置10の緯度および経度の情報を取得する。内部バス29は、各ユニット間を接続する。
【0029】
図3(b)に示すように、情報処理装置12は、プロセッサ40、表示装置41、入力装置42、記憶装置43、通信インターフェース44、データベース(DB:Data Base)インターフェース45および内部バス49を有する。プロセッサ40は、例えばCPUである。プロセッサ40は、プログラムを実行する。表示装置41は、例えば液晶パネルまたは有機エレクトロルミネッセンスパネルである。入力装置42は、例えばキーボードまたはマウスである。記憶装置43は、例えばRAM等の揮発性メモリまたはフラッシュメモリもしくはハードディスクユニット等の不揮発性メモリである。記憶装置43は、例えばプログラムおよびデータを記憶する。通信インターフェース44は、例えばネットワーク18との通信を行なう通信ユニットである。通信インターフェース44は、ネットワーク18を介し携帯装置10および端末装置15に情報を送信および情報を受信する。DBインターフェース45は、データベース14と情報の送信および受信を行なうユニットである。内部バス49は、各ユニット間を接続する。
【0030】
[情報処理装置の処理]
情報処理装置12が行なう処理を説明する。
図4は、実施例1に係る情報処理装置の機能ブロック図である。
図5は、実施例1に係る情報処理装置が行なう処理を示すフローチャートである。
図6は、
図5のステップS42の処理を示すフローチャートである。
図4に示すように、情報処理装置12のプロセッサ40は、プログラムとの協働により、処理部30、送信部32、受信部34、入力部36および出力部38として機能する。
【0031】
図4および
図5に示すように、
図2のステップS10において、入力部36には、ユーザの端末装置15から探索する対象となる発信機16の対象IDを入力する(ステップS30)。例えば、入力部36は、対象IDを通信インターフェース44を介し端末装置15から取得する。入力部36は、対象IDをネットワーク18を介さず直接取得してもよい。
【0032】
処理部30は、対象となる発信機16を探索する探索範囲Rを設定する(ステップS32)。例えば、端末装置15からユーザが探索範囲Rを指定してもよい。処理部30は、探索範囲Rをデータベース14が予め記憶する範囲としてもよい。処理部30は、対象となる発信機16が含まれると推定できる広い範囲を探索範囲Rとしてもよい。探索範囲Rは、例えば緯度経度等のX座標およびY座標で指定した範囲である。
【0033】
処理部30はデータベース14に探索範囲Rを出力する(ステップS33)。データベース14は、探索範囲R内に位置する携帯装置10のIDをリストAとして処理部30に出力する。処理部30は、データベース14から携帯装置10のリストAを取得する(ステップS34)。ステップS33およびS34は、
図2のステップS12に相当する。
【0034】
処理部30はリストA内の携帯装置10から一部の携帯装置10をリストBとして抽出する(ステップS36)。処理部30は、例えばランダムに携帯装置10を抽出する。例えば、抽出する携帯装置10の個数はリストA内の携帯装置10の個数にかかわらず一定としてもよい。ステップS36は、
図2のステップS14に相当する。
【0035】
処理部30は、抽出された携帯装置10のIDのリストであるリストBと対象IDを送信部32に出力する。送信部32は、リストBに記載された携帯装置10にリストCを送信する(ステップS38)。リストCには、対象IDを含む発信機のIDが含まれる。例えば、送信部32は、リストCを通信インターフェース44を介し携帯装置10に送信する。ステップS38は
図2のステップS16に相当する。
【0036】
図2のステップS22において、携帯装置10は情報処理装置12に発信機IDおよび位置情報P1を含む発信機情報を送信する。受信部34は、携帯装置10から発信機情報を受信する(ステップS39)。処理部30は受信部34が受信した発信機IDが対象IDか否か判定する(ステップS40)。ステップS40は
図2のステップS23に相当する。Noのとき、処理部30は、発信機情報を送信した携帯装置10のログデータとして発信機情報をデータベース14に記憶する(ステップS41)。その後、ステップS39に戻る。
【0037】
ステップS40において、Yesのとき、処理部30は、携帯装置10の位置情報P1に基づき対象となる発信機16の位置に関連する位置情報P2を生成する(ステップS42)。詳細は後述する。出力部38は、位置情報P2を端末装置15に出力する(ステップS44)。例えば、出力部38は、位置情報P2を通信インターフェース44を介し端末装置15に出力する。ステップS44は
図2のステップS24に相当する。処理部30は、位置情報P2に基づき探索範囲Rを設定する(ステップS46)。
【0038】
処理部30は終了か否か判定する(ステップS48)。例えば、端末装置15が対象となる発信機16の探索の終了を指示したとき、処理部30はYesと判定する。Yesのとき終了する。Noのとき、ステップS33に戻る。ステップS33においては、ステップS46において位置情報P2に基づき設定された探索範囲Rをデータベース14に出力する。
【0039】
以下、ステップS42の処理について説明する。
図6に示すように、処理部30は、受信部34が受信した発信機情報に検出不能情報が含まれるかを判定する(ステップS52)。例えば処理部30は、発信機情報内の位置情報P1がブランクのとき、検出不能情報が含まれると判定する。処理部30は、発信機情報に含まれる位置情報P1の検出精度が所定の精度より低いとき、発信機情報に検出不能情報が含まれると判定してもよい。Noのとき、処理部30は、位置情報P1に基づき、対象となる発信機16の位置に関連した位置情報P2を生成する(ステップS58)。例えば処理部30は、位置情報P1を位置情報P2とする。
【0040】
ステップS52においてYesのとき、処理部30は、データベース14から発信機情報を送信した携帯装置10のログデータを取得する(ステップS54)。ログデータには、携帯装置10が受信した対象ID以外の発信機IDと、携帯装置10が対象ID以外の発信機ID(例えば固定発信機)を受信した時刻が含まれている。処理部30は、データベース14からこの対象ID以外の発信機の位置情報を取得する(ステップS55)。処理部30は、この対象ID以外の発信機の位置情報に基づき、対象となる発信機の位置情報P2を生成する(ステップS56)。
【0041】
[携帯装置の処理]
次に、携帯装置10が行なう処理を説明する。
図7は、実施例1に係る携帯装置の機能ブロック図である。
図8は、実施例1に係る携帯装置が行なう処理を示すフローチャートである。
図7に示すように、携帯装置10のプロセッサ20は、プログラムとの協働により、処理部50、受信部52、送信部54および受信部56として機能する。
【0042】
図7および
図8に示すように、受信部52は、情報処理装置12から対象IDを含むリストCを受信する(ステップS60)。例えば、受信部52はリストCを通信インターフェース24を介して受信する。ステップS60は、
図2のステップS16に相当する。処理部50は、受信部52からリストCを取得する。ステップS60の処理は、プロセッサ20が実行する他の処理と並行して行なってもよい。その後、プロセッサ20は待機または他の処理を行なう。
【0043】
プロセッサ20が待機または他の処理を実行しているときに、受信部56は、発信機16が送信した発信機IDを含む情報を受信する(ステップS62)。例えば、受信部56は、発信機IDを含む情報を近距離無線インターフェース25を介し受信する。ステップS62は、
図2のステップS18に相当する。
【0044】
処理部50は、発信機IDがリストCに含まれるか否か判定する(ステップS64)。ステップS64は、
図2のステップS20に相当する。NoのときステップS62に戻る。
【0045】
ステップS64において、Yesのとき、処理部50は、位置検出器26が、携帯装置10の位置を検出可能か判定する(ステップS67)。例えば、処理部50は、位置検出器26がGPS信号等の測位信号を受信できるときYes、できないときNoと判定する。
【0046】
Yesのとき、処理部50は、携帯装置10の位置を示す位置情報P1を生成する(ステップS65)。例えば、処理部50は、GPS受信機等の位置検出器26から現在の自分の携帯装置10の位置を示す位置情報P1を取得する。
【0047】
ステップS67において、Noのとき、処理部50は、検出不能情報を生成する(ステップS68)。例えば処理部50は、位置情報P1をブランク等の検出不能を示す情報とする。処理部50は、位置情報P1をブランクとし、位置情報P1に検出不能情報を付加してもよい。位置情報P1の検出精度を示す情報を検出不能情報としてもよい。
【0048】
処理部50は、送信部54に発信機IDおよび位置情報P1(または検出不能情報)を含む発信機情報を情報処理装置12に送信させる(ステップS66)。例えば、送信部54は、通信インターフェース24を介し発信機情報を情報処理装置12に送信する。ステップS66は、
図2のステップS22に相当する。送信部54は、複数の発信機情報をまとめて情報処理装置12に送信してもよい。例えば、送信部54が情報処理装置12に発信機情報を送信できない場合、送信可能となったときに複数の発信機情報をまとめて情報処理装置12に送信してもよい。
【0049】
位置情報P1は、例えば位置検出器26が取得した緯度および経度情報でもよい。また、位置情報P1は、例えば受信部56が受信した固定された発信機の発信機IDでもよい。さらに、位置情報P1は、例えば通信インターフェース24が通信を行なっている基地局に関連する情報(例えば基地局のID)でもよい。位置情報P1が発信機IDまたは基地局IDの場合、
図6のステップS58において、処理部30は、発信機IDまたは基地局IDに基づき位置情報P2を生成する。
【0050】
[システムの処理機能のシーケンス]
次に、携帯装置が登録された発信機の発信機IDを受信すると、特定の処理を行う処理機能について説明する。処理機能における、携帯装置10および情報処理装置12のブロック図および機能ブロック図は、
図3(a)、
図3(b)、
図4および
図7と同じであり説明を省略する。
【0051】
図9は、実施例1に係るシステムの処理機能のシーケンス図である。
図9に示すように、携帯装置10の送信部54は、通信インターフェース24を介し情報処理装置12に、携帯装置10の現在の位置に関連する位置情報P3を送信する(ステップS70)。位置情報P3は、例えば位置検出器26が取得した緯度および経度情報、受信部56が受信した発信機の発信機ID、または通信インターフェース24が通信を行なっている基地局IDである。情報処理装置12の処理部30は、データベース14内の携帯装置10の位置情報を更新する(ステップS71)。
【0052】
情報処理装置12の処理部30は、携帯装置10の位置情報P3に基づき、データベース14から登録された発信機の位置に関連する位置情報および発信機の識別情報IDをリストDとして取得する(ステップS72)。取得する発信機のIDは、携帯装置10の近傍に位置する発信機のIDである。情報処理装置12の処理部30は、取得した複数の発信機から少なくとも一部の発信機を抽出する(ステップS74)。抽出した発信機のIDをリストCとする。リストCには、探索に用いる対象IDも含ませる。発信機16の抽出方法は特許文献2に記載された方法を用いてもよい。
【0053】
情報処理装置12の送信部32は、通信インターフェース44を介し携帯装置10にリストC送信する(ステップS76)。ステップS76は、
図2のステップS16と同時に行ってもよい。携帯装置10の受信部56は、発信機16に近づくと、近距離無線インターフェース25を介し発信機16から発信機IDを含む発信機情報を受信する(ステップS78)。ステップS78は、
図2のステップS18と同時に行ってもよい。
【0054】
携帯装置10の処理部50は、発信機16から受信した発信機IDがリストCに含まれか否か判定する(ステップS80)。ステップS80は
図2のステップS20と同時に行ってもよい。処理部50は、発信機IDがリストCに含まれていると判定すると、特定の処理を行なう(ステップS82)。処理部50は、発信機IDがリストCに含まれていないと判定すると、特定の処理を行なわない。
【0055】
特定の処理として、例えば携帯装置10は、ネットワーク18に接続されたサーバから発信機情報を発信した発信機16の位置を取得する。これにより、GPS信号および/または基地局の信号を受信できない場合でも自分の携帯装置10の位置を確認できる。また、携帯装置10は、登録された特定の店舗に近づくと、来店ポイントを店舗のサーバに要求することもできる。さらに、携帯装置10は、特定の店舗に近づくと、店舗に関する情報をユーザに提供することもできる。このように、特定の処理は、発信機16から受信した発信機IDが発信機リストに含まれるときにのみ実行される処理であり、その他の場合には実行されない処理である。
【0056】
携帯装置10の処理部50は、受信した発信機IDと現在の携帯装置10の位置に関連する位置情報P3とを含む発信機情報を情報処理装置12に送信する(ステップS84)。ステップS84は、
図2のステップS22と同時に行ってもよい。処理部50は、位置情報P3(
図2の場合は位置情報P1)に基づきデータベース14内の携帯装置の位置情報を更新する(ステップS71)。その後、ステップS72からS84を繰り返す。これにより、携帯装置10が移動すると、携帯装置10の位置に応じたリストCを更新できる。
【0057】
以下、実施例1における探索機能および処理機能について説明する。
【0058】
[携帯装置を抽出する例]
図2のステップS12およびS14において、情報処理装置12が携帯装置10を抽出する例を説明する。なお、実際の携帯装置10の個数は例えば1万個以上または10万個以上と非常に多い場合もあるが理解しやすいように20個を例に説明する。
図10は、実施例1における携帯装置の地理的な位置を示す図である。抽出された(リストBに含まれる)携帯装置を太線楕円で示す。
図11(a)は、データベースが記憶する携帯装置のテーブルの例、
図11(b)および
図11(c)は、リストAおよびリストBの例を示す図である。
【0059】
図10に示すように、X座標およびY座標に携帯装置M1からM20が位置している。X座標およびY座標は例えば緯度および経度である。
図11(a)に示すように、データベース14には、携帯装置M1からM20のX座標XM1からXM20およびY座標YM1からYM20が記憶されている。携帯装置M1からM20は移動可能である。移動後の携帯装置M1からM20の位置は定期的にまたは不定期に携帯装置M1からM20から情報処理装置12にネットワーク18を介し送信されている。情報処理装置12は、定期的または不定期に各携帯装置M1からM20のX座標およびY座標を更新する。例えば、情報処理装置12は、
図9のステップS71において携帯装置M1からM20の位置情報を更新する。
【0060】
図5のステップS32またはステップS46は、探索する発信機の予測位置P0を含むように探索範囲Rを設定する。例えば、予測位置P0は、位置情報P2の位置である。例えば、予測位置P0は、位置情報P2から予測した対象となる発信機16の位置である。
【0061】
図5のステップS33において、情報処理装置12の処理部30はX座標がX1からX2の範囲かつY座標がY1からY2の範囲を探索範囲Rとしてデータベース14に出力する。
図5のステップS34において、データベース14は、
図11(a)のテーブルからX座標がX1からX2の範囲内かつY座標がY1からY2の範囲内の携帯装置の携帯装置のIDおよびX座標およびY座標をリストAとして情報処理装置12に出力する。
図11(b)のように、この例では、リストAには8個の携帯装置M7−M9、M12−M14、M17およびM19のIDおよびX座標、Y座標が含まれる。リストAには、X座標およびY座標は含まれていなくてもよい。
【0062】
図5のステップS36において、情報処理装置12の処理部30は、リストAから一部の携帯装置をランダムに抽出する。例えば処理部30は、リストAの携帯装置IDに基づきランダムに携帯装置を抽出してもよい。また、処理部30は、X座標および/またはY座標に基づき携帯装置を抽出してもよい。また、処理部30は、探索範囲R内の全ての携帯装置を抽出してもよい。
図11(c)に示すように、処理部30は4個の携帯装置M8、M14、M17およびM19を抽出する。リストBには、携帯装置M8、M14、M17およびM19のIDが記載されている。
【0063】
[発信機を抽出する例]
図9のステップS71およびS74において、情報処理装置12が発信機16を抽出する例を説明する。なお、実際の発信機16の個数は例えば1万個以上または10万個以上と非常に多い場合もあるが理解しやすいように20個を例に説明する。
図12は、実施例1における発信機の地理的な位置を示す図である。抽出されたリストCに含まれる発信機を太線四角で示し、移動可能な発信機を二重線四角で示す。
図13(a)は、データベースが記憶する発信機のテーブルの例、
図13(b)および
図13(c)は、リストDおよびリストCの例を示す図である。
【0064】
図12に示すように、X座標およびY座標に発信機B1からB20が位置している。X座標およびY座標は例えば緯度および経度である。発信機B1は移動可能であり探索する対象となる発信機である。発信機B2からB20は固定された発信機である。携帯装置M8は、
図2のステップS14において抽出されたリストBに含まれる携帯装置である。
図11(c)のリストBに含まれる他の携帯装置M14、M17およびM19においても、同様の処理が行われる。
【0065】
図13(a)に示すように、データベース14には、発信機B2からB20のX座標XB2からXB20およびY座標YB2からYB20が記憶されている。発信機B1は移動しているためX座標およびY座標は記憶されていない。
図2のステップS26における位置情報P2を発信機B1のX座標およびY座標としてもよい。
【0066】
図9のステップS72において、情報処理装置12の処理部30はデータベース14からX座標がX1からX2の範囲かつY座標がY1からY2の範囲内の発信機のIDおよびX座標およびY座標をリストDとして取得する。
図13(b)に示すように、リストDには7個の発信機のIDが含まれる。リストDには、X座標およびY座標は含まれていなくてもよい。
【0067】
図9のステップS74において、例えば、情報処理装置12の処理部30は、リストDから携帯装置M8と距離の近い発信機を抽出する。例えば処理部30は、処理部30は、範囲内の全ての発信機を抽出してもよい。
図13(c)に示すように、処理部30は4個の発信機B9、B10、B14およびB15を抽出する。さらに、処理部30は、対象となる発信機B1の対象IDを加えリストCとする。
【0068】
[動作の例1]
次に、携帯装置および発信機の移動にともなう動作を説明する。
図14(a)から
図14(e)は、実施例1における携帯装置および発信機の地理的な位置を示す図である。携帯装置M8および発信機B1の移動方向を点線矢印でしめしている。
図15(a)から
図15(e)は、それぞれ
図14(a)から
図14(e)における発信機情報の例を示す図である。
【0069】
携帯装置M8はいずれの場所においても例えばGPSを用い位置検出可能である。
図14(a)に示すように、携帯装置M8は、発信機B14から発信機IDを受信する。携帯装置M8は、例えばGPSを用い現在の位置情報P1としてX座標「XM8a」およびY座標「YM8a」を生成する。
図15(a)に示すように、携帯装置M8は、情報処理装置12に発信機IDとして「B14」および現在の位置情報P1としてX座標「XM8a」およびY座標「YM8a」を送信する。
図5のステップS40においてNoのため、情報処理装置12は、ステップS41において受信した発信機情報をデータベース14にログデータとして記憶する。また、位置情報P1に基づき
図11(a)の携帯装置M8のX座標およびY座標が(XM8a、YM8a)に更新される。
【0070】
図14(b)に示すように、携帯装置M8は、発信機B13から発信機IDを受信する。
図15(b)に示すように、携帯装置M8は、情報処理装置12に発信機IDとして「B13」および現在の位置情報P1としてX座標「XM8b」およびY座標「YM8b」を送信する。情報処理装置12は、受信した発信機情報をデータベース14に記憶する。
図11(a)の携帯装置M8のX座標およびY座標が(XM8b、YM8b)に更新される。
【0071】
図14(c)に示すように、携帯装置M8は、発信機B1から発信機IDを受信する。
図15(c)に示すように、携帯装置M8は、情報処理装置12に発信機IDとして「B1」および現在の位置情報P1としてX座標「XM8c」およびY座標「YM8c」を送信する。
図5のステップS40においてYes、
図6のステップS52においてNoのため、情報処理装置12は、ステップS58において位置情報P1に基づき位置情報P2を生成する。例えば、発信機B1の位置情報P2を(XM8c、YM8c)とする。
図5のステップS44において、情報処理装置12は、端末装置15に位置情報P2を出力する。
図11(a)の携帯装置M8のX座標およびY座標が(XM8c、YM8c)に更新される。
【0072】
図14(d)および
図14(e)に示すように、携帯装置M8は、B12およびB11から順に発信機IDを受信する。
図15(d)および
図15(e)に示すように、携帯装置M8は、情報処理装置12に「B12」、「XM8d」およびY座標「YM8d」、並びに「B11」、「XM8e」およびY座標「YM8e」を順に送信する。情報処理装置12は、受信した発信機情報をデータベース14に記憶する。
図11(a)の携帯装置M8のX座標およびY座標が(XM8d、YM8d)および(XM8e、YM8e)に順に更新される。
【0073】
携帯装置M8は例えば地下に位置しGPSを用い位置検出が不可能である。
図16(a)から
図16(e)は、それぞれ
図14(a)から
図14(e)における発信機情報の例を示す図、
図16(f)は、ログデータの例を示す図、
図16(g)は、発信機IDと位置情報を示す図である。
【0074】
図16(a)から
図16(e)に示すように、携帯装置M8が位置情報P1を生成できないため、X座標およびY座標は検出不能を示す検出不能情報である。
【0075】
図14(a)、
図14(b)、
図14(d)および
図14(e)の場合、
図5のステップS40においてNoのため、情報処理装置12は、ステップS41において受信した発信機情報をデータベース14にログデータとして記憶する。
図16(f)に示すように、ログデータには、携帯装置M8が受信した発信機IDと時刻とが記録されている。時刻は、例えば発信機16が発信機IDを送信した時刻、携帯装置M8が発信機情報を生成した時刻、または情報処理装置12が発信機情報を受信した時刻である。
【0076】
図14(c)の場合、
図5のステップS40においてYes、
図6のステップS52においてYesのため、情報処理装置12は、ステップS54においてデータベース14から
図16(f)のログデータを取得する。なお、ステップS54からS58は、
図14(c)の直後に実行してもよいが、
図14(d)または
図14(e)の後に実行してもよい。
【0077】
情報処理装置12は、ステップS55において、データベース14から発信機B1以外の発信機B14、B13、B12およびB11の位置情報を取得する。
図16(g)のように、発信機B14、B13、B12およびB11の位置情報を
図11(a)から取得する。
【0078】
情報処理装置12の処理部30は、ステップS56において、
図16(f)および
図16(g)に基づき、発信機B1の位置情報P2を生成する。
【0079】
処理部30は、携帯装置M8が発信機B1の受信機IDを受信した直前に受信した発信機B13の位置情報に基づき位置情報P2を生成してもよい。これにより、情報処理装置12は、早期に位置情報P2を生成できる。
【0080】
また、処理部30は、携帯装置M8が発信機B1の発信機IDを受信した直後に受信した発信機B12の位置情報に基づき位置情報P2を生成してもよい。これにより、位置情報P2の生成は遅くなるが、より最新の位置情報P2を生成できる。
【0081】
さらに、処理部30は、発信機B13およびB12の位置情報に基づき位置情報P2を生成してもよい。処理部30は、発信機B13およびB12の位置情報、並びに時刻t2およびt4から発信機B1の移動速度と移動方向を算出し、発信機B1の位置を予測し位置情報P2を生成してもよい。これにより、より精度よく発信機B1の位置情報P2を生成できる。
【0082】
さらに、処理部30は、発信機B14、B13、B12、B11の位置情報、並びに時刻t1、t2、t4およびt5に基づき発信機B1の位置を推定し、位置情報P2を生成してもよい。これにより、より精度よく発信機B1の位置情報を生成できる。
【0083】
さらに、処理部30は、携帯装置M8が発信機B1以前に接触した発信機B14およびB13の位置情報、並びに時刻t1およびt2に基づき発信機B1の位置を推定し、位置情報P2を生成してもよい。これにより、精度よく早期に位置情報P2が生成できる。
【0084】
さらに、処理部30は、複数の携帯装置のログデータに基づき、位置情報P2を生成してもよい。これにより、より精度よく位置情報P2を生成できる。
【0085】
実施例1によれば、
図2のステップS16および
図5のステップS38のように、情報処理装置12の送信部32は、携帯装置10(
図11(c)のM8、M14、M17およびM19)に、移動可能である対象となる発信機(対象発信機)B1を含む少なくとも一部の発信機B9、B10、B14およびB15の識別情報が記載されたリストC(例えば
図13(c))を、ネットワークを介し送信する。
【0086】
図2のステップS20および
図8のステップS64のように、携帯装置10の処理部50は、発信機から送信された発信機ID(自発信機を示す自識別情報)を受信し受信した発信機IDがリストCに含まれるか否かを判定する。処理部50が発信機IDがリストCに含まれると判定したとき、
図2のステップS22および
図8のステップS66のように、送信部54は、発信機IDと発信機IDを受信したときの携帯装置10の位置を示す位置情報P1または検出不能情報を、ネットワークを介し情報処理装置12に送信する。ここで、携帯装置10が位置を検出可能なとき、位置情報P1は携帯装置10の位置を示す第2位置情報である。第2位置情報は、例えば
図15(a)から
図15(e)のX座標およびY座標である。携帯装置10が地下街等に位置し、携帯装置10の位置が検出できないとき、位置情報P1は携帯装置10の位置の検出不能を示す検出不能情報である。検出不能情報は、
図16(a)から
図16(e)のように、ブランクでもよいし、検出不能を示すフラグでもよい。位置情報P1はブランクとし、位置情報P1以外に検出不能情報を付加してもよい。
【0087】
図6のステップS58のように、情報処理装置12の処理部30は、受信した発信機情報に対象IDが含まれかつ位置情報P1が含まれるとき、位置情報P1基づき対象となる発信機の位置に関連した位置情報P2(第3位置情報)を生成する。
図14(a)から
図14(d)の例では、
図15(c)のように発信機情報に位置情報(XM8c、YM8c)が含まれているとき、位置情報(XM8c、YM8c)に基づき発信機B1の位置情報P2を生成する。
【0088】
図6のステップS56のように、情報処理装置12の処理部30は、受信した発信機情報に対象IDおよび検出不能情報が含まれている(例えば位置情報P1に測定不能情報が含まれている)とき、発信機情報を送信した携帯装置10が送信した他の発信機情報に含まれる対象となる発信機以外の少なくとも一部の発信機に対応する位置情報に基づき、位置情報P2を生成する。
図14(a)から
図14(e)の例では、
図16(c)のように発信機情報が検出不能情報を含むとき、携帯装置M8が送信した他の発信機情報に含まれる対象となる発信機B1以外の発信機B11−B14に対応する位置情報(
図16(g))に基づき発信機B1の位置情報P2を生成する。
【0089】
これにより、携帯装置M8が発信機IDを受信したときに、位置情報P1が生成できない場合においても、情報処理装置12は発信機B1の位置情報P2を生成できる。よって、例えば携帯装置M8が地下街等のGPSの信号が受信できない場合でも、発信機B1を探索できる。
【0090】
処理部30が位置情報P2を生成する他の発信機情報は、発信機情報を送信した携帯装置M8が発信機情報を送信する直前および/または直後に送信した発信機情報(B13および/またはB12)を含む。これにより、処理部30は位置情報P2を精度よく生成できる。
【0091】
図5のステップS33からS36において、
図10のように、処理部30は、データベース14に記憶された携帯装置(
図11(a)のM1からM20)のX座標およびY座標(第4位置情報)に基づき、携帯装置M1からM20から少なくとも一部の携帯装置(
図11(c)のM8、M14、M17およびM19を抽出する。送信部32は、携帯装置M8、M14、M17およびM19にリストCを送信する。これにより、探索する発信機周辺の携帯装置を抽出できる。
【0092】
処理部30は、携帯装置M1からM20の一部の携帯装置を抽出することが好ましい。これにより、探索のためのリソースを抑制できる。
【0093】
図9のステップS71のように、処理部30は、位置情報P1またはP3に基づき、データベース14に記憶された携帯装置M8のX座標およびY座標(第1位置情報)を更新する。これにより、携帯装置の位置情報を順次更新できる。
【0094】
発信機16は、自分の発信機を示す発信機IDを近距離無線通信方式を用い送信する。この場合、発信機IDを受信する携帯装置10は発信機16の近傍に位置している。よって、より正確に発信機16の位置を探索できる。
【0095】
位置情報P1は、衛星測位システムを用い検出された位置情報である場合、携帯装置10が地下街等の衛星からの電波が受信できない場所に位置すると、位置情報P1を生成できない。実施例1では、このような場合においても探索する発信機の位置情報P2を生成できる。
【0096】
発信機16は、例えば発信機を示す発信機IDを含むビーコン情報を発信するビーコン発信機である。発信機16は、例えば送信機能と受信機能を備えてもよい。また、発信機16は、例えば近距離無線通信を用い発信機IDを送信するが、受信機能を有さなくともよい。例えば、iBeacon(登録商標)等のビーコン発信機である。iBeacon(登録商標)では、発信機IDはUU(Universally Unique)ID、メジャー値およびマイナー値を含む。発信機リスト内の発信機IDはUUID、メジャー値およびマイナー値を含んでもよいが、UUIDのみ、UUIDとメジャー値のみでもよい。このように、発信機リスト内の発信機IDは、発信機単位でなく、発信機のグループでもよい。携帯装置10のプロセッサ20を処理部50、受信部52、56および送信部54として機能させるプログラムは、携帯装置10にインストールされるアプリケーションプログラムでもよいし、アプリケーションプログラムの一部の部品でもよい。
【0097】
以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。