(57)【要約】【課題】容易な構成で迷子になったペット、小さな子供、高齢者の位置の推定精度を向上することができ、動物の探索を効率よくすることができる。【解決手段】自装置の位置を取得する取得部と、動物が有する発信器からの信号を受信する受信部と、受信部が受信した信号から、発信器から自装置までの距離を測定する距離測定部と、受信部が複数の異なる時刻に受信した信号で求められた各距離と、各時刻において取得した自装置の位置とから、発信器を有する動物の位置を推定する推定部と、推定部で得られた推定位置を出力する出力部とを備える。【選択図】図１
2018046790.tif 000002
【特許請求の範囲】
【請求項１】
動物が有する発信器から送信される信号を受信可能な可搬型の端末装置から、当該端末装置の位置と、当該端末装置が発信器から受信した信号で測定される前記発信器から当該端末装置までの距離情報とを受信する受信部と、
前記端末装置を使用者が運搬する過程において、前記発信器から前記端末装置までの距離情報を複数回受信し、これら複数の距離情報から、前記発信器を有する動物の位置を推定する推定部と、
前記推定部で得られた推定位置を出力する出力部と、を備える位置推定装置。
【請求項２】
前記受信部が受信する端末装置の位置と、距離情報とを、受信時刻と関連づけた集計データとして、集計データ記憶部に記憶させる記憶処理部をさらに備える請求項１に記載の位置推定装置。
【請求項３】
前記推定部は、パーティクルフィルタを利用して前記動物の位置を推定する請求項１又は２に記載の位置推定装置。
【請求項４】
前記推定部は、時間の経過に応じた尤度関数を考慮して位置を推定する請求項３に記載の位置推定装置。
【請求項５】
前記出力部は、前記推定部で得られた複数の推定位置を含むマップを出力する請求項１乃至４のいずれか１項に記載の位置推定装置。
【請求項６】
前記集計データ記憶部に記憶した、端末装置の異なる時刻の複数の位置に関して、これら複数の位置同士の幾何学的配置から、当該端末装置の移動方向を一直線ではない方向に移動するように誘導する誘導部をさらに備え、
前記移動方向情報を前記出力部にさらに出力する、請求項２に記載の位置推定装置。
【請求項７】
動物が有する発信器から送信される信号を受信可能な可搬型の端末装置から、当該端末装置の位置と、当該端末装置が発信器から受信した信号で測定される前記発信器から当該端末装置までの距離情報とを受信する受信ステップと、
前記端末装置を移動させつつ、前記発信器から前記端末装置までの距離情報を複数回受信し、これら複数の距離情報から、前記発信器を有する動物の位置を推定する推定ステップと、
前記推定部で得られた推定位置を出力する出力ステップと、を備える位置推定方法。
【請求項８】
位置推定装置に、
動物が有する発信器から送信される信号を受信可能な可搬型の端末装置から、当該端末装置の位置と、当該端末装置が発信器から受信した信号で測定される前記発信器から当該端末装置までの距離情報とを受信する受信機能と、
前記端末装置を移動させつつ、前記発信器から前記端末装置までの距離情報を複数回受信し、これら複数の距離情報から、前記発信器を有する動物の位置を推定する推定機能と、
前記推定部で得られた推定位置を出力する出力機能と、を実現させる位置推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、位置推定装置に関し、特に、飼育者による動物の保護、または、保護者による子供や高齢者の保護に利用する位置推定装置、位置推定方法及び位置推定プログラムに関する。
【背景技術】
【０００２】
従来から、迷子になった動物を探す場面が多い。例えば、飼い猫や飼い犬等のペットが迷子になると、飼い主は、近所を歩きまわって探す必要がある。また、小さな子供が迷子になった場合も、保護者は、子供の名前を呼びながら、周辺を歩きまわって探す必要がある。さらに、子供だけでなく、自分の家に戻れなくなった高齢者が迷子になった場合も、同様である。
【０００３】
例えば、迷子になった飼い猫を探す場合、その飼い猫が好む場所を中心に探し回ったりするが、すぐに見つけられないことも多い。仮に、飼い主が、迷子の猫とは異なる方向に進んだ場合、時間の経過と共にお互いが異なる方向に進むことが考えられ、さらに見つけにくくなる問題がある。また、小さな子供や高齢者が迷子になった場合にも、同様に保護者は、周囲を歩き回って探索することが一般的である。
【０００４】
これに対し、例えば、通信端末を利用して、迷子の子供や高齢者を探索する技術が開発されている（例えば、特許文献１及び２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１７８９３号公報
【特許文献２】特開２０１５−１１５６９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、特許文献１及び２に記載される上述の技術は、大掛かりなシステムが必要であり、簡易に実現することができない。
【０００７】
そこで、本発明は、比較的簡易な構成で、迷子になったペット、小さな子供、高齢者等の動物の位置の推定精度を向上することができ、動物の探索を効率よくすることができる位置推定装置、位置推定方法及び位置推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明に係る位置推定装置は、動物が有する発信器から送信される信号を受信可能な可搬型の端末装置から、端末装置の位置と、端末装置が発信器から受信した信号で測定される前記発信器から端末装置までの距離情報とを受信する受信部と、端末装置を使用者が運搬する過程において、発信器から端末装置までの距離情報を複数回受信し、これら複数の距離情報から、発信器を有する動物の位置を推定する推定部と、推定部で得られた推定位置を出力する出力部とを備える。
【発明の効果】
【０００９】
本発明によれば、比較的容易な構成で迷子になったペット、小さな子供、高齢者等の動物の位置の推定精度を向上することができ、動物の探索を効率よくすることができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係る位置推定装置の構成を説明するブロック図である。
【図２】実施形態に係る位置推定システムの概要を説明する説明図である。
【図３】実施形態に係る位置推定システムの構成を説明するブロック図である。
【図４】実施形態に係る位置推定装置で利用されるデータ構成の一例を説明するデータ構成図である。
【図５】実施形態に係る位置推定装置で利用する位置推定方法の原理を説明する図である。
【図６】実施形態に係る位置推定装置で利用する位置推定方法の処理の一例を説明するフローチャートである。
【図７】実施形態に係る位置推定装置における位置推定を説明する説明図である。
【図８】実施形態に係る位置推定装置における位置推定を説明する説明図である。
【図９】実施形態に係る位置推定装置において位置推定の結果を出力する出力画面の一例である。
【図１０】実施形態に係る位置推定装置の構成の一例を説明する回路構成図である。
【発明を実施するための形態】
【００１１】
以下に、図面を用いて本発明の実施形態に係る位置推定システムについて説明する。実施形態に係る位置推定システムは、ペット、子供、高齢者等の動物の位置を推定するものである。ユーザは、迷子等で動物の位置が不明となりその動物の位置を探索する際に、この位置推定システムを使用する。ユーザは、この位置推定装置を携帯しながら動物のいると思われる範囲を移動する。位置推定装置は、動物に取り付けた発信器から発信される信号を受信すると、受信した信号を利用しながら、動物の位置を推定する。したがって、ユーザは、推定された位置に近づくように動くことで、動物を探し出すことができる。以下の説明において、同一の構成については、同一の符号を用いて説明を省略する。
本実施形態において、「取得部」は、自装置の位置を取得するものである。「受信部」は、動物が有する発信器からの信号を受信するものである。「距離測定部」は、受信部が受信した信号から、発信器から自装置までの距離を概略測定するものである。「推定部」は、受信部が複数の異なる位置・時刻に受信した信号で求められた各概略距離と、各時刻において取得した自装置の位置とから、発信器を有する動物の位置を推定するものである。「演算部」は、取得部で前回得られた自装置の位置から今回新たに得られた自装置の位置までを結ぶベクトルを求めるものである。「誘導部」は、演算部で得られたベクトルにもとづいて、動物の位置推定上有利となる方向に移動するよう誘導する誘導情報を生成するものである。「画像生成部」は、取得部が取得した自装置の位置と、推定部で得られた動物の推定位置とを含むマップ画像を推定結果として生成するものである。「出力部」は、推定部で得られた推定位置を出力するものである。
【００１２】
図１に示すように、実施形態に係る位置推定装置１は、自装置の位置を取得する取得部１０１と、動物が有する発信器からの信号を受信する受信部１０２と、受信部１０２が受信した信号から、発信器から自装置までの距離を測定する距離測定部１０３と、受信部１０２が複数の異なる時刻に受信した信号で求められた各距離と、各時刻において取得した自装置の位置とから、発信器を有する動物の位置を推定する推定部１０４と、推定部１０４で得られた推定位置を出力する出力部１０８とを備える。
【００１３】
以下では、位置推定装置１は、図２に示すように、位置推定装置１のユーザであって、位置推定の対象Ｔである猫の飼い主が有する装置であって、飼い猫が迷子になった場合に、猫の首輪等につけられた発信器２から発信される信号を用いて対象Ｔである猫の位置を推定するものとして説明する。
【００１４】
例えば、図３に示すように、位置推定装置１は、中央処理装置（ＣＰＵ）１０、記憶装置１１、入力装置１２、表示装置１３、受信器１４、通信Ｉ／Ｆ１５を備え、ユーザの有するスマートフォン等の携帯可能な情報処理装置を利用して、実現することができる。具体的には、位置推定装置１として利用する情報処理装置の記憶装置１１に記憶される位置推定プログラムＰを実行することで、ＣＰＵ１０が、取得部１０１、受信部１０２、距離測定部１０３、推定部１０４、演算部１０５、誘導部１０６、画像生成部１０７及び出力部１０８として処理を実行する。
【００１５】
入力装置１２は、位置推定装置１のユーザが操作信号の入力に使用する操作ボタンやタッチパネル等である。
【００１６】
表示装置１３は、位置推定装置１において、推定定結果等の出力画面を表示するディスプレイである。
【００１７】
受信器１４は、位置推定の対象Ｔに付けられた発信器２から発信された信号を受信し、その電波強度を測定可能な受信装置である。この電波強度は電磁気学的原理により、受信機１４と発信器２との距離に応じて変化するため、距離の測定に利用できる。ただし、原理的にその測定精度は低く、真値に対して数％以上の誤差を含む。
【００１８】
発信器２から発信される信号は、発信器２の位置情報を含む必要はなく、少なくとも発信器２の識別情報を含めばよい。以下の説明では、受信器１４は、ＢＬＥ（Ｂｌｕｅｔｏｏｔｈ（登録商標）  Ｌｏｗ  Ｅｎｅｒｇｙ）等の信号を受信するものとして説明する。この場合、対象Ｔには、例えば、所定時間毎にＢＬＥ信号を発信する発信器２を有する必要がある。
【００１９】
通信Ｉ／Ｆ１５は、インターネット網等のネットワーク（図示せず）を介して外部の装置とのデータの送受信を実現する通信インタフェースである。
【００２０】
記憶装置１１は、位置推定プログラムＰの他、画像データ１１０、位置データ１１１、対象データ１１２、距離データ１１３、推定データ１１４、ベクトルデータ１１５及び誘導データ１１６を記憶する。
【００２１】
画像データ１１０は、位置推定装置１において、表示装置１３に表示する出力画面等の生成に利用されるデータである。
【００２２】
位置データ１１１は、取得部１０１が取得した位置推定装置１の位置情報と、位置情報を取得した時刻情報とが関連付けられるデータである。
【００２３】
対象データ１１２は、位置推定装置１の位置推定の対象Ｔの識別情報に関するデータである。
【００２４】
距離データ１１３は、受信部１０２で受信した信号に基づいて距離測定部１０３で測定された位置推定装置１と対象Ｔとの概略距離と、距離の測定に利用した信号を受信した時刻情報とが関連付けられるデータである。
【００２５】
推定データ１１４は、受信部１０２で受信した信号に基づいて推定部１０４で推定した対象Ｔの推定位置と、位置推定に利用した信号を受信した時刻情報とが関連付けられるデータである。
【００２６】
ベクトルデータ１１５は、取得部１０１で受信した位置測定装置１の位置情報に基づいて演算部１０５で演算された異なる時刻の位置を結ぶベクトルと、位置情報を取得した時刻情報とが関連づけられるデータである。
【００２７】
誘導データ１１６は、取得部１０１で取得した位置情報に基づいて誘導部１０６で生成された誘導情報と、位置情報を取得した時刻情報とが関連付けられるデータである。
【００２８】
なお、図１に示す例では、位置データ１１１、距離データ１１３、推定データ１１４、ベクトルデータ１１５及び誘導データ１１６を別々のデータとして記憶しているが、図４に示すように、１のデータに全ての情報が含まれる構成であってもよい。
【００２９】
例えば、図４に示す例では、位置推定装置１は、時刻t1に自装置である位置推定装置１の位置として「P1」を取得し、時刻t1に受信した信号を発信した発信器２と位置推定装置１の概略距離として「L1」が測定されたことが分かる。なお、位置を推定するためには、幾何学的な制約により３つ以上の異なる位置にて求めた距離が必要である。したがって、時刻t1に受信した信号から測定された概略距離「L1」のみから発信器２の位置、すなわち、対象Ｔの推定位置を求めることはできない。また、ベクトルを求めるためにも、複数の地点における位置推定装置１の位置が必要であるため、時刻t1に取得した位置「P1」のみからベクトルを求めることはできない。
【００３０】
また、図４に示す例では、位置推定装置１は、時刻t1,t2,t3に位置推定装置１の位置として「P1,P2,P3」および、距離「L1,L2,L3」を取得し、これら距離から推定位置「Q3」を求めたことが分かる。さらに、P1,P2から、位置推定装置１のベクトルV1,2を求めたこと、さらにP2,P3から、ベクトルV2,3を求めたことが分かる。
【００３１】
取得部１０１は、例えば、ＧＰＳ（全地球測位システム）の電波を取得し、取得した電波から、自装置である位置推定装置１の位置を特定する。また、取得部１０１は、特定した自装置の位置を、時刻と共に、記憶装置１１で記憶される位置データ１１１に追加する。例えば、取得部１０１は、定期的なタイミングで電波を受信して位置測定装置１の位置を特定してもよいし、受信部１０２が信号を入力したタイミングで位置推定装置１の位置を特定してもよい。
【００３２】
受信部１０２は、受信器１４が受信した信号が入力される。ここで、受信部１０２で受信した信号から、位置推定の対象Ｔからの信号のみを距離測定部１０３に出力する。位置推定装置１では、位置推定の対象Ｔが有する発信器２が使用する信号の識別情報を対象データ１１２として、記憶装置１１に記憶している。これにより、受信部１０２は、受信した信号のうち、対象Ｔの発信器２の識別情報の信号のみを距離測定部１０３に出力することができる。
【００３３】
距離測定部１０３は、受信器１４から入力された信号から、位置推定装置１から、位置を推定する対象Ｔまでの距離を測定する。また、距離測定部１０３は、信号を受信した時刻と、信号を受信した際の位置推定装置１の位置と、特定位置とを関連付けて、記憶装置１１で記憶される距離データ１１３に追加する。
【００３４】
ＢＬＥの信号の電波強度は、発信器２で発信された後、所定の減衰率で、距離に応じて減衰する。したがって、距離測定部１０３は、その減衰率に基づき、発信器２から受信器１４までの距離、すなわち、発信器２から位置推定装置１までの距離を測定することができる。
【００３５】
推定部１０４は、複数の異なる地点・時刻にて受信した信号から距離測定部１０３で測定された距離を利用して、発信器２の位置、すなわち、対象Ｔの位置を推定する。また、推定部１０４は、得られた推定位置を、信号を受信した時刻と共に、記憶装置１１に記憶される推定データ１１４に蓄積する。
【００３６】
例えば、推定部１０４は、時系列フィルタリングを利用する。具体的には、推定部１０４は、いわゆるパーティクルフィルタ（粒子フィルタ）を利用して対象Ｔの位置を推定する。ここで、推定部１０４が利用するパーティクルフィルタは、不規則な移動を行う対象物の位置推定に使える時系列データの予測手法である。例えば、画像処理による物体追跡に利用されるものである。複数のサンプルデータとして異なる複数の時刻に取得した誤差を含むデータを集めてパーティクルフィルタを利用することで、推定対象の位置をできるだけ誤差を小さくして推定することができる。
【００３７】
＜パーティクルフィルタが必要な理由＞
誤差を含む時系列信号を用いた移動体の位置推定によく用いられる手法として、カルマンフィルタがある。カルマンフィルタは、少ない計算コストで理論的に最適な位置推定が可能な優れた手法であるが、（条件１）移動体の運動モデルが比較的単純であること（線形性があること）、（条件２）誤差の確率分布が正規分布に従っていること、という制約を満たす場合しか使えない。したがって、本システムが対象とする猫等の動物では、予測不能な複雑な運動を行うため、カルマンフィルタを適用するのは難しい。
【００３８】
パーティクルフィルタは、前記（条件１）および（条件２）が成立しなくても適用可能な手法である。粒子（パーティクル）と呼ばれる仮想的な推定点を計算機上でランダムに多数発生させ、各計測値に対する尤度を用いて各パーティクルを評価して絞り込むことで、誤差をできるだけ最小化して位置推定を実施することができる。
【００３９】
さて、位置推定処理は、一定の周期で、自己位置の特定、対象Ｔとの距離測定、対象Ｔの位置推定という一連のステップを繰り返す形式とする。これをステップ１回目、２回目、・・・N回目と表す。
【００４０】
＜基礎円＞
また、『取得部１０１がある時刻tに受信した自己位置Ptを中心位置とし、同じ時刻tに距離測定部１０３で得られた距離Ltを半径とする仮想的な円』のことを、『（時刻ｔの）基礎円 Ct』と呼ぶことにする。
【００４１】
＜パーティクル初期化＞
まず推定処理のステップ１回目について説明する。この時刻をt1とする。推定部１０４は、基礎円Ct1の円周付近に、M個のパーティクル（粒子）を乱数でランダムに配置したデータを発生させ、これを保持しておく。ここでMは数百〜数千程度の定数である。これをパーティクルの初期化と呼ぶ。
以下、時刻tiにおけるk番目のパーティクルの位置ベクトルを
Xti,k(k=0,1,2,3,...,M-1)と表すことにする。
【００４２】
＜パーティクル初期分布＞
前記パーティクルの初期化に用いる乱数の確率分布は、基礎円Bｔの中心からの距離Rと、方位角度θよって定める（図５（ａ））。Rの確率分布は、基礎円の半径を平均値とする正規分布とする。また、θの確率分布は0度〜360度範囲内の一様分布とする。
【００４３】
＜パーティクルフィルタ全体概要＞
次に、推定処理のn回目（n>1）ステップにおいて、推定部１０４は、対象Tの位置推定値の更新を行うが、そこでは（ａ）パーティクルの予測、（ｂ）尤度の計算、（ｃ）パーティクルのリサンプリング、（ｄ）推定位置の更新、という詳細ステップが含まれる。以下それらについて説明する。
【００４４】
＜（ａ）パーティクルの予測＞
「パーティクルの予測」とは、k-1回目のステップにおいて保持されている全てのパーティクルの位置を各々移動させることである。これは各パーティクルを対象Ｔに見立て、その移動をシミュレートすることに相当している。ここで、パーティクルの移動量は対象Ｔの運動特性に合わせて適切に設定する。例えば対象Ｔの最大移動速度に応じて最大移動可能範囲を設定し、その範囲内でランダムに移動先を決める、などである。すなわち、
Xtn,k＝Xt(n-1),k＋ΔXk：  ただし、ΔXkはk番目のパーティクルの移動量ベクトル
ΔXk=random(0,|ΔXmax|)：ただし、random(C,R)は、中心Cから半径Rの円内の位置を一様乱数で選択し、その位置ベクトルを返す関数とする。また、ΔXmaxは、Ｔの最大移動可能量を表すベクトルとする。
【００４５】
＜（ｂ）尤度の計算＞
「尤度の計算」とは、「（ａ）パーティクルの予測」で予測を終えた各々のパーティクルについて尤度wtn,kを計算することである。ここでの尤度は、各パーティクルの位置に対象Ｔが存在すると仮定した場合に、その時刻の基礎円Ctnが計測されうる確率を表したものである。たとえば、k番目のパーティクル位置と自己位置との距離値Jtn,kに対し、基礎円の半径Rtnを平均値とする正規分布の確率密度関数を適用することで尤度を計算できる。すなわち、
wtn,k＝pdf_norm(Rtn,S,Jtn,k)
である。ただし、pdf_norm(m,s,c)は、平均値m，標準偏差sの正規分布における、値cに対する確率密度関数（probability densitiy function）である。
また、Sは距離測定値の標準偏差であり、使用するBLE機器の特性などに応じて適切に設定する。
【００４６】
＜（ｃ）パーティクルのリサンプル＞
「パーティクルのリサンプリング」とは、「（ｂ）尤度の計算」にて計算された尤度を使って各パーティクルを抽出する処理である。その際、尤度が高いパーティクルほど、抽出される可能性が高くなるように調整する。したがって、尤度が低いパーティクルは消滅させる場合もある。なおリサンプリング後もパーティクルの個数は一定とするため、尤度の高いパーティクルは複数回抽出することがある。
【００４７】
＜（ｄ）Ｔの推定位置の更新＞
「Ｔの推定位置の更新」とは「（ｃ）パーティクルのリサンプリング」にて得られたパーティクルのうち最も尤度の高いパーティクルを選び、その位置を、対象Ｔの新たな位置として採用することである。ただし、この更新結果を実際のＴの推定位置として採用するのは、繰り返しステップn=3回目以降とする。理由は、幾何学的制約である。少なくとも相異なる3個以上の自己位置からの距離値がないと、幾何学的にTの位置を求められない。
【００４８】
＜パーティクルフィルタの実行例＞
例えば、図６（ａ）は、推定部１０４で対象Ｔの位置を推定する際の、位置推定装置１と対象Ｔの位置関係と、利用するパーティクル（粒子）の関係を示す例である。ここで、パーティクルは、対象Ｔが存在する可能性のある位置を特定する点である。図６（ａ）における複数の円は、時刻t1,t2,t3に得られた基礎円Ct1,Ct2,Ct3を描いたものである。
【００４９】
＜パーティクルフィルタによって位置推定ができる理由＞
ある時刻t11におけるパーティクルの尤度は、「（ｂ）尤度の計算」にて説明したように、基礎円 Ct1 の円周付近で高くなり、そこから離れるほど低くなるように設定している。そのため、「（ｃ）パーティクルのリサンプリング」により Ct1 の円周付近のパーティクルの密度が高くなる。
【００５０】
また、同様に時刻t2におけるパーティクルの密度は、基礎円Ct2の円周付近で高くなる。さらに時刻t3でも同様に基礎円Ct3は円周付近のパーティクルの密度を高める。
【００５１】
したがって、このような処理を繰り返すことにより、基礎円Ct1,Ct2,Ct3,...の円周が重なり合った位置付近のパーティクル密度が高まることになる。この高密度領域は対象Tが存在する可能性が高い領域に相当するので、例えばこの領域の重心位置を求めることにより、最終的に対象Tの位置を推定することができる。
【００５２】
＜計測者誘導＞
またこの際、これら複数の基礎円の配置の具合によって、対象Tの位置推定の精度は異なる。いま、対象Tが静止していると考え、さらに、距離計測に全く誤差がない場合を考えてみる。相異なる（あいことなる）複数の位置から計測した距離値を用いて、対象Tの位置を求めようとする場合、幾何学的な原理により、少なくとも３個以上の計測値があり、かつ各計測位置が同一直線上に位置しないとき、それぞれの距離値を半径とする円の交点を求めることができ、それが対象Tの位置となる（図５（ｂ））。
【００５３】
したがって、推定装置１の移動経路が一直線状になるのは好ましくなく、適度に方向を変化させながら移動する必要があることが分かる。
【００５４】
前記の議論は、距離の測定誤差や対象Tの移動を考慮した場合も基本的に同様である。本システムでは、パーティクルフィルタにより、対象Tの移動や距離の測定誤差を勘案して尤度を計算し、確率的に対象Tの位置を推定するが、幾何学的な原理は前記と同様である。
【００５５】
演算部１０５は、取得部１０１で前回得られた位置推定装置１の位置から今回新たに得られた位置推定装置１の位置までを結ぶベクトルを求める。また、演算部１０５は、求めた演算結果を、対象の信号を受信した時刻と共に、記憶装置１１に記憶されるベクトルデータ１１５に蓄積する。
【００５６】
例えば、図６（ａ）に示すように、位置推定装置１が点P1にあった後、図６（ｂ）に示すように、位置推定装置１が点P2に移動したとする。この場合、点P1から点P2までのベクトルV1,2を求める。
【００５７】
＜誘導情報の生成＞
誘導部１０６は、演算部１０５で得られたベクトルと異なる方向に移動するよう誘導する誘導情報を生成する。これにより、誘導部１０６は、一直線でない方向に移動するよう誘導する。この誘導情報は具体的には、次に進むべき移動方位角度φであり、図７に示すφ1〜φ2または-φ1〜-φ2の角度範囲内の角度として生成する。
【００５８】
ここで図７について説明する。直前の移動位置P1,P2を通る直線をMとする。Mと並行で、かつ距離E離れている直線をMA,MBとする。ここでEは適当に定めたシステム定数である。
【００５９】
次に点PA,PA',PB,PB'は、点P2を中心とし、ベクトルV1,2の長さを半径とする円と、直線MA,MBが交わる４つの点である。そして、角度φ1は直線Mと線分P2-PA'がなす角であり、φ2は直線Mと線分P2-PAがなす角である。
【００６０】
距離Eの値は、システムで実際に使用する距離測定部１０３の精度特性を反映して、その距離値の分布の標準偏差の少なくとも２倍以上の値とする。可能であれば３倍以上が望ましい。
【００６１】
移動方位角度φは、φ1〜φ2または-φ1〜-φ2の角度範囲内で決定するが、対象Tへ接近しながら探索するというシステムの目的を達成するため、さらなる調整を行う。
【００６２】
すなわち、P1からP2へと自己位置が移動するにつれて、対象Tとの距離が増加している場合、つまり、Lt1<Lt2である場合には、90°≦φ≦φ2または-90°≧φ≧-φ2なるφとして決定する。
【００６３】
また逆にLt1>Lt2である場合には、φ1≦φ＜90°または-φ1≧φ≧-90°なるφとして決定する。
【００６４】
さらに前記に加えて、角度φの決定方法は本発明を搭載するシステムの外部構成や運用状況を加味して適切に決めればよい。例えば、GoogleMap（登録商標）のようなインターネットで提供される地図情報を援用できるシステムの場合は、前記角度範囲内でユーザが実際に移動可能な道路の方向に合わせて誘導情報を生成することが考えられる。
【００６５】
また例えば、もっと単純なシステムの場合には、指定範囲内でランダムに決定することもできる。
【００６６】
誘導部１０６は、前記のごとく生成した誘導情報である移動方向角度φを、対象の信号を受信した時刻とともに、記憶装置１１に記憶される誘導データ１１６に蓄積する。
【００６７】
＜画面表示関係＞
画像生成部１０７は、取得部１０１が取得した位置推定装置１の位置と、推定部１０４で得られた推定位置とを含むマップ画像を推定結果として生成する。このとき、画像生成部１０７は、異なる時刻に得られた信号を用いて推定部１０４で得られた複数の推定位置を含む推定結果を生成する。また、画像生成部１０７は、複数の推定位置と共に、推定位置に存在したと推定した時刻を含む推定結果を生成する。さらに、画像生成部１０７は、誘導部１０６が誘導データを生成したとき、誘導情報を含む推定結果を生成する。
【００６８】
出力部１０８は、取得部１０１が取得した位置推定装置１の位置と、推定部１０４で得られた推定位置とを用いて画像生成部１０７が生成した推定結果を出力する。例えば、出力部１０８は、表示装置１３に、図８（ａ）〜図８（ｃ）に示すような出力画面を表示する。
【００６９】
＜フローチャート＞
図９に示すフローチャートを用いて、位置推定装置１で実行される位置推定方法について説明する。位置推定装置１は、まず、ユーザに携帯されながら移動され、発信器２から発信された信号を受信する（Ｓ１）。
【００７０】
また、位置推定装置１は、自装置である位置推定装置１の位置を取得する（Ｓ２）。この位置は、位置データ１１１として記憶装置１１に記憶される。
【００７１】
位置推定装置１は、ステップＳ１で受信した信号から、位置推定装置１から発信器２までの距離、すなわち、対象Ｔまでの距離を測定する（Ｓ３）。この距離は、距離データ１１３として記憶装置１１に記憶される。
【００７２】
位置推定装置１は、ステップＳ２で取得した位置推定装置１の位置と、ステップＳ５で測定した距離とを使用して、パーティクル処理を実行する（Ｓ４）。
【００７３】
位置推定装置１は、パーティクル処理の結果として、対象Ｔの位置を推定する（Ｓ５）。この推定位置は、推定データ１１４として記憶装置１１に記憶される。
【００７４】
位置推定装置１は、ステップＳ２で取得した異なる時刻の位置推定装置１の位置を使用して、ベクトルを演算する（Ｓ６）。このベクトルは、ベクトルデータ１１５として記憶装置１１に記憶される。
【００７５】
位置推定装置１は、ステップＳ６で得られたベクトルを使用して、誘導情報を生成する（Ｓ７）。この誘導情報は、誘導データ１１６として記憶装置１１に記憶される。
【００７６】
位置推定装置１は、ステップＳ５で得られた推定位置と、ステップＳ７で得られたベクトルとを用いて出力画像を生成する（Ｓ８）。
【００７７】
位置推定装置１は、ステップＳ８で得られた出力画像を出力する（Ｓ９）。
【００７８】
位置推定装置１は、対象Ｔの推定を継続する間、ステップＳ１〜Ｓ９の処理を繰り返す（Ｓ１０）。
【００７９】
なお、上述した例では、位置推定装置１は、表示装置１３に推定結果や誘導情報等を含む出力画面を表示するものとして説明したが、スピーカ（図示せず）を利用して、推定結果や誘導情報を出力可能としてもよい。
【００８０】
このように、実施形態に係る位置推定装置１では、対象Ｔの動物を探索する際、対象Ｔの動物が有する発信器２からの信号を受信し、位置を推定することができる。したがって、ユーザは、この位置推定装置１を携帯して移動することで、探索の際に誤った方向に進むことを防止し、どの方向に進めばよいのかを把握することが可能となり、探索を効率よく進めることができる。
【００８１】
ここで、ＢＬＥ信号の発信器２は、消費電力が低い。したがって、発信器２の電池交換の必要回数は極めて少なくて済む。例えば、猫等のペットの首輪に発信器２を付ける場合、ペットが首輪を交換する期間程度、同一の電池で対応することも可能である。
【００８２】
また、ＢＬＥ信号の発信器２は、小型及び低コストであるため、容易にペットの首輪、子供や高齢者の洋服に付けることができる。
【００８３】
さらに、多くのスマートフォン等の情報処理装置でＢＬＥ信号の受信器１４が内蔵されている。したがって、ユーザは、わざわざ単体の位置推定装置１を購入する必要はなく、もともと持っている自身のスマートフォンに専用のアプリケーション（位置推定プログラムＰ）のみをインストールすることで、スマートフォンを位置推定装置１として利用することができる。
【００８４】
記憶装置１１は、位置推定装置１が動作上必要とする各種プログラムやデータを記憶する記録媒体である。記憶装置１１は、例えば、ＨＤＤ（Hard Disc Drive）、ＳＳＤ（Solid State Drive）などにより実現可能である。
【００８５】
また、位置推定装置１のＣＰＵ１０が位置推定プログラムP等を実行することにより、実現することとしているが、これは位置推定装置１に集積回路（ＩＣ（Integrated Circuit）チップ、ＬＳＩ（Large Scale Integration））等に形成した論理回路（ハードウェア）や専用回路によって実現してもよい。また、これらの回路は、１又は複数の集積回路により実現してもよく、上記実施の形態に示した複数の機能部の機能を１つの集積回路により実現することとしてもよい。ＬＳＩは、集積度の違いにより、ＶＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩなどと呼称することもある。
【００８６】
すなわち、図１０に示すように、位置推定装置１は、取得回路１０１ａと、受信回路１０２ａと、距離測定回路１０３ａと、推定回路１０４ａと、演算回路１０５ａと、誘導回路１０６ａと、画像生成回路１０７ａと、出力回路１０８ａとから構成してもよく、それぞれの機能は、上記実施の形態に示した同様の名称を有する各部と同様である。
【００８７】
また、上記位置推定プログラムＰは、ＣＰＵ１０が読み取り可能な記録媒体に記録していてもよく、記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、検索プログラムは、当該検索プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介してプロセッサに供給してもよい。なお、映像表示プログラムが電子的な伝送によって具現化した、搬送波に埋め込まれたデータ信号の形態でも実現し得る。
【００８８】
なお、位置推定プログラムＰは、例えば、ActionScript、JavaScript（登録商標）、Python、Rubyなどのスクリプト言語、C言語、C＋＋、C＃、Objective-C、Java（登録商標）、swiftなどのコンパイラ言語などを用いて実装できる。
【産業上の利用可能性】
【００８９】
この発明は、迷子になったペット、小さな子供、高齢者等の動物の位置の推定精度を向上することができ、動物の探索を効率よくすることができるという効果を有し、位置推定装置全般に適用可能である。
【符号の説明】
【００９０】
１  位置推定装置
１０  ＣＰＵ
１０１  取得部
１０２  受信部
１０３  距離測定部
１０４  推定部
１０５  演算部
１０６  誘導部
１０７  画像生成部
１０８  出力部
１１  記憶装置
Ｐ  位置推定プログラム
１１０  画像データ
１１１  位置データ
１１２  対象データ
１１３  距離データ
１１４  推定データ
１１５  ベクトルデータ
１１６  誘導データ
１２  入力装置
１３  表示装置
１４  受信器
１５  通信Ｉ／Ｆ
２  発信器
【図１】
2018046790.tif 000003
【図２】
2018046790.tif 000004
【図３】
2018046790.tif 000005
【図４】
2018046790.tif 000006
【図５】
2018046790.tif 000007
【図６】
2018046790.tif 000008
【図７】
2018046790.tif 000009
【図８】
2018046790.tif 000010
【図９】
2018046790.tif 000011
【図１０】
2018046790.tif 000012