(57)【要約】【課題】位置推定方法、端末装置及びプログラムに関し、位置推定精度を低下させることなく端末装置の消費電力を低減することを目的とする。【解決手段】端末装置の移動距離を算出し、移動方向の変化が検出されてから所定時間後に絶対位置を取得する処理を繰り返し、１回目の処理で取得した第１の絶対位置と２回目の処理で取得した第２の絶対位置を通る移動距離の長さを有する第１のリンクを算出し、第１及び第２の絶対位置と３回目の処理で取得した第３の絶対位置に最も近く第１の絶対位置を通らない移動距離の長さを有する第２のリンクを算出する。第１及び第２のリンクの第１の絶対位置に対する方位を示す角度の差が所定値以内であれば第２のリンクの角度を第１の絶対位置の直前のリンクと直後の第１のリンクとがなす角度とみなし、第１の絶対位置の直前のリンクと直後の第１のリンクを接続したリンク形状に基づいて端末装置の現在位置を推定するように構成する。【選択図】図３
2012122892.tif 000002
【特許請求の範囲】
【請求項１】
端末装置の移動距離を算出する移動距離算出手段と、
動作時に端末装置の絶対位置を検出するＧＰＳ受信機と、
前記端末装置の移動方向の変化の有無を検出する方向変化検出手段と、
前記方向変化検出手段により移動方向の変化が検出された時点から所定時間後に前記ＧＰＳ受信機を動作させて絶対位置を取得して当該絶対位置の取得後に前記ＧＰＳ受信機を非動作にする処理を繰り返す絶対位置取得手段と、
前記移動距離及び前記絶対位置に基づいて前記端末装置の移動経路を取得する移動経路取得手段を備え、
前記移動経路取得手段は、
前記絶対位置取得手段の１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る第１のリンクを算出し、
前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない第２のリンクを算出し、
前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなし、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記端末装置の現在位置を推定する
ことを特徴とする、端末装置。
【請求項２】
前記移動経路取得手段は、前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値を超える場合には、前記第３の絶対位置を取得した時点から前記所定時間後に前記ＧＰＳ受信機を再度動作させて第４の絶対位置を取得し、前記第１乃至第４の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第３のリンクを算出する処理を、前記第１の絶対位置に対する前記第２及び第３のリンクの角度の差が前記所定値以内に収束するまで繰り返すことを特徴とする、請求項１記載の端末装置。
【請求項３】
前記移動経路取得手段は、前記ＧＰＳ受信機により測位された絶対位置と測位時点の実際の位置との間の測位誤差を仮想バネの変位の位置エネルギーとして扱う、前記仮想バネでリンクが接続された節バネモデルにおいて、前記仮想バネの変位の位置エネルギーが最小となる状態を最も正解移動経路に近いリンクであると判断して当該リンクを前記ＧＰＳ受信機により取得した絶対位置に合わせて補間する移動経路補正部を有することを特徴とする、請求項１又は２記載の端末装置。
【請求項４】
表示部を更に備え、
前記移動経路取得手段は、前記端末装置の現在位置を推定して取得した推定位置から前記端末装置の推定移動経路を取得して前記表示部に表示することを特徴とする、請求項１乃至３のいずれか１項記載の端末装置。
【請求項５】
コンピュータに、前記コンピュータの位置を推定する位置推定処理を実行させるプログラムであって、
前記コンピュータの移動距離を移動距離算出機能で算出して記憶部に格納し、前記コンピュータの移動方向の変化の有無を方向変化検出機能で検出し、前記移動方向の変化が検出された時点から所定時間後にＧＰＳ機能で絶対位置を取得して前記記憶部に格納する処理を繰り返す手順と、
１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る移動距離の長さを有する第１のリンクを算出して前記記憶部に格納する手順と、
前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第２のリンクを算出して前記記憶部に格納する手順と、
前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなして前記記憶部に格納し、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記コンピュータの現在位置を推定する手順
を前記コンピュータに実行させることを特徴とする、プログラム。
【請求項６】
端末装置の移動距離を移動距離算出機能で算出し、前記端末装置の移動方向の変化の有無を方向変化検出機能で検出し、前記移動方向の変化が検出された時点から所定時間後にＧＰＳ機能で絶対位置を取得する処理を繰り返し、
１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る移動距離の長さを有する第１のリンクを算出し、
前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第２のリンクを算出し、
前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなし、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記端末装置の現在位置を推定し、
前記ＧＰＳ機能を絶対位置の取得時に動作させ、取得後に非動作とする
ことを特徴とする、位置推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置推定方法、そのような位置推定方法で自装置の位置を推定する端末装置、コンピュータにそのような位置推定方法を用いた位置推定処理を実行させるプログラム、及びそのようなプログラムを格納したコンピュータ読み取り可能な記憶媒体に関する。
【背景技術】
【０００２】
携帯電話等の携帯端末装置が採用している位置測位システムは、ＧＰＳ（Global Positioning System）が主流である。しかし、携帯端末装置のＧＰＳ機能を連続動作させると、ＧＰＳ機能による消費電力が携帯端末装置の他の機能による消費電力と比較して高いため、携帯端末装置を駆動する電池が消耗してしまい、例えば８時間程度の比較的短い連続動作しか実現できない。
【０００３】
一方、自律測位（又は、自律航法）を用いてユーザの歩行経路又は移動経路を推定する携帯端末装置も提案されている。自律測位を用いて推定された結果は、ナビゲーションサービス（Navigation Service）に限らず、携帯端末装置の現在位置に対応する情報提供サービス等の各種サービスに利用可能である。この種の携帯端末装置は、例えば方位を検出する方位検出機能、歩数を検出する歩数検出機能、予め入力されている歩幅と歩数の積から移動距離を算出する移動距離算出機能、現在の絶対位置を取得するＧＰＳ機能等の測位機能を有する。この種の携帯端末装置は、一定時間毎、或いは、一定移動距離毎にＧＰＳ機能が動作するようにＧＰＳ機能を間欠動作させ、これらの測位機能により取得される方位、移動距離、絶対位置等に基づいて、ユーザの移動経路を推定する（例えば、特許文献１、特許文献２、特許文献３参照）。
【０００４】
自律測位を用いる携帯端末装置は、ＧＰＳ機能を連続動作させてユーザの移動経路を推定する携帯端末装置と比較すると、消費電力を比較的低く抑えることができる。これは、ＧＰＳ機能以外の測位機能の動作時の消費電力が、ＧＰＳ機能の動作時の消費電力と比較すると少ないことによる。しかし、各機能により取得される方位、移動距離、絶対位置等には誤差が含まれるため、ユーザの移動経路の推定精度を向上させるためには誤差を補正する必要がある。
【０００５】
例えば方位検出機能が磁気センサを用いる場合、磁気センサのキャリブレーションを実行する必要がある。磁気センサを有する携帯端末装置は、磁気センサが例えば２〜３箇所に設けられ、各磁気センサが地磁気を測定して方位を取得する。しかし、これらの磁気センサのキャリブレーションを実行しても磁気センサ間の測定誤差、即ち、オフセットをゼロにすることは難しい。又、測定誤差は、ユーザが携帯端末装置を携帯して移動する距離に応じて累積されて増大するため、ユーザの移動経路の推定精度を向上させるためには例えばＧＰＳ機能を比較的頻繁に動作させて誤差を補正する等の対策が必要となる。ＧＰＳ機能により取得した絶対位置にも誤差は含まれるが、ＧＰＳ機能による測位誤差は例えばバネモデルを用いた歩行軌跡補間技術を用いて補正できるので（例えば、非特許文献１参照）、ユーザの移動距離に応じて累積されて増大する磁気センサの測定誤差はＧＰＳ機能により取得した絶対位置に基づいて補正することができる。
【０００６】
このように、ある程度の位置推定精度を確保するためにＧＰＳ機能を連続動作させると携帯端末装置の消費電力が比較的高くなり、消費電力を低く抑えるためにＧＰＳ機能を比較的長い間隔で間欠動作させると累積される測定誤差のために位置推定精度が低下してしまう。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００１−２７２２４７号公報
【特許文献２】特開２００２−１６２２５０号公報
【特許文献３】特開２００９−９２５０６号公報
【特許文献４】特開２０１０−２２３８２９号公報
【非特許文献】
【０００８】
【非特許文献１】森 信一郎他、「ばねモデルを用いた歩行軌跡補間技術」、「マルチメディア，分散，協調とモバイル（ＤＩＣＯＭＯ２０１０）シンポジウム」、平成２２年７月、pp.953-960
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従来の位置推定方法では、位置推定精度を低下させることなく端末装置の消費電力を低減することは難しいという問題があった。
【００１０】
そこで、本発明は、位置推定精度を低下させることなく端末装置の消費電力を低減可能な位置推定方法、端末装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一観点によれば、端末装置の移動距離を移動距離算出機能で算出し、前記端末装置の移動方向の変化の有無を方向変化検出機能で検出し、前記移動方向の変化が検出された時点から所定時間後にＧＰＳ機能で絶対位置を取得する処理を繰り返し、１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る移動距離の長さを有する第１のリンクを算出し、前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第２のリンクを算出し、前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなし、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記端末装置の現在位置を推定し、前記ＧＰＳ機能を絶対位置の取得時に動作させ、取得後に非動作とすることを特徴とする位置推定方法が提供される。
【００１２】
本発明の一観点によれば、端末装置の移動距離を算出する移動距離算出手段と、動作時に端末装置の絶対位置を検出するＧＰＳ受信機と、前記端末装置の移動方向の変化の有無を検出する方向変化検出手段と、前記方向変化検出手段により移動方向の変化が検出された時点から所定時間後に前記ＧＰＳ受信機を動作させて絶対位置を取得して当該絶対位置の取得後に前記ＧＰＳ受信機を非動作にする処理を繰り返す絶対位置取得手段と、前記移動距離及び前記絶対位置に基づいて前記端末装置の移動経路を取得する移動経路取得手段を備え、前記移動経路取得手段は、前記絶対位置取得手段の１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る第１のリンクを算出し、前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない第２のリンクを算出し、前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなし、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記端末装置の現在位置を推定することを特徴とする端末装置が提供される。
【００１３】
本発明の一観点によれば、コンピュータに、前記コンピュータの位置を推定する位置推定処理を実行させるプログラムであって、前記コンピュータの移動距離を移動距離算出機能で算出して記憶部に格納し、前記コンピュータの移動方向の変化の有無を方向変化検出機能で検出し、前記移動方向の変化が検出された時点から所定時間後にＧＰＳ機能で絶対位置を取得して前記記憶部に格納する処理を繰り返す手順と、１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る移動距離の長さを有する第１のリンクを算出して前記記憶部に格納する手順と、前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第２のリンクを算出して前記記憶部に格納する手順と、前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなして前記記憶部に格納し、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記コンピュータの現在位置を推定する手順を前記コンピュータに実行させることを特徴とするプログラムが提供される。
【発明の効果】
【００１４】
開示の位置推定方法、端末装置及びプログラムによれば、位置推定精度を低下させることなく端末装置の消費電力を低減することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施例における端末装置の構成の一例を示すブロック図である。
【図２】コンピュータシステムの構成の一例を示すブロック図である。
【図３】携帯電話の動作の一例を説明するフローチャートである。
【図４】スタート時動作を説明するフローチャートである。
【図５】現在位置算出処理を説明するフローチャートである。
【図６】直線移動距離算出処理を説明するフローチャートである。
【図７】最適化処理を説明するフローチャートである。
【図８】節バネモデルを説明する図である。
【図９】現在位置出力処理を説明するフローチャートである
【図１０】終了時動作を説明するフローチャートである。
【図１１】リンクの算出を説明する図である。
【図１２】１回目の角度算出処理時の推定移動経路と正解移動経路とを比較する図である。
【図１３】２回目の角度算出処理時の推定移動経路と正解移動経路とを比較する図である。
【図１４】３回目の角度算出処理時の推定移動経路と正解移動経路とを比較する図である。
【図１５】４回目の角度算出処理時の推定移動経路と正解移動経路とを比較する図である。
【図１６】５回目の角度算出処理時の推定移動経路と正解移動経路とを比較する図である。
【発明を実施するための形態】
【００１６】
開示の位置推定方法、端末装置及びプログラムでは、端末装置の移動距離を算出し、移動方向の変化が検出されてから所定時間後に絶対位置を取得する処理を繰り返し、１回目の処理で取得した第１の絶対位置と１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る移動距離の長さを有する第１のリンクを算出し、第１及び第２の絶対位置と２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く第１の絶対位置を通らない移動距離の長さを有する第２のリンクを算出する。第１及び第２のリンクの第１の絶対位置に対する方位を示す角度の差が所定値以内であれば第２のリンクの角度を第１の絶対位置の直前のリンクと直後の第１のリンクとがなす角度とみなし、第１の絶対位置の直前のリンクと直後の第１のリンクを接続したリンク形状に基づいて端末装置の現在位置を推定する。
【００１７】
以下に、開示の位置推定方法、端末装置及びプログラムの各実施例を図面と共に説明する。
【実施例】
【００１８】
図１は、本発明の一実施例における端末装置の構成の一例を示すブロック図である。この例では、本発明が携帯電話に適用されている。
【００１９】
図１に示すように、携帯電話１００は、地磁気センサ３０、加速度センサ４０、ＧＰＳ受信機５９、及び移動経路推定装置５０を有する。携帯電話１００は、周知の通話機能を備えており、更にメール、インターネット等の周知の通信機能、周知の撮影機能等の各種機能を備えても良いが、図１ではこれら各種機能を実現するための構成の図示は省略する。又、図１ではテンキー等の入力部、移動経路等を表示する表示部等の図示も省略する。
【００２０】
地磁気センサ３０は、例えば３軸座標系上での地磁気を検出する周知の磁気方位センサで形成可能である。加速度センサ４０は、例えば３軸方向の加速度を検出する周知のセンサで形成可能である。ＧＰＳ受信機５９は、例えば複数のＧＰＳ衛星からの信号をアンテナ（図示せず）で受信して携帯電話１００の絶対位置（即ち、緯度及び経度で示される位置）を取得する周知の構成を有する。
【００２１】
移動経路推定装置５０は、方位取得部８、絶対位置取得部１０、方向転換検出部１２、移動距離取得部１４、方位算出部１６、移動経路取得部１８、移動経路補正部２０、座標変換部２２、及び経路情報保持部２４を有する。
【００２２】
方位取得部８は、地磁気センサ３０が検出して出力する地磁気値に基づいて携帯電話１００に予め定められた軸が指し示す方位（以下、相対方位と言う）を取得する。尚、地磁気センサ３０の代わりに基準面に対する相対角度を検出するジャイロスコープ（gyroscope）又は角速度を検出する角速度センサを用い、方位取得部８がジャイロスコープ又は角速度センサの検出出力に基づいて相対方位を取得するようにしても良い。絶対位置取得部１０は、ＧＰＳ受信機５９が取得して出力する絶対位置を取得する。方向転換検出部１２は、方位取得部８が取得した相対方位に基づいて、携帯電話１００を携帯するユーザが例えば道路の曲がり角を曲がる等することにより進行方向を転換したか否かの情報、或いは、ユーザが移動する方位（以下、進行方位と言う）を変えずに移動しているか否かの情報を検出する。
【００２３】
移動距離取得部１４は、ユーザが入力部から入力したユーザの１歩分の長さを表す歩幅情報、或いは、デフォルトの歩幅情報を予め保持しており、当該歩幅情報と、加速度センサ４０が検出して出力する加速度から算出される歩数情報とから、ユーザの移動距離（＝歩幅×歩数）を計算する。尚、移動距離の求め方自体は、加速度センサを用いた周知の歩数計と同様で良いため、その詳細な説明は省略する。方位算出部１６は、絶対位置取得部１０で取得された絶対位置に基づいて、携帯電話１００を携帯するユーザが進行方向を転換したときの転換角度を算出する。この転換角度の算出方法には、例えば特許文献４より周知の算出方法を採用可能である。
【００２４】
移動経路取得部１８は、方位取得部８が取得した相対方位と移動距離取得部１４が計算したユーザの移動距離から現在位置と相対移動経路を算出すると共に、方位算出部１６が算出した転換角度に基づいて相対移動経路を補正する。以下の説明では、補正後の相対移動経路を、「補正後移動経路」とも呼ぶ。この移動経路取得部１８の処理の概略は、例えば特許文献４より周知である。
【００２５】
移動経路補正部２０は、補正後移動経路を、絶対位置取得部１０が取得した絶対位置を用いて更に補正する。座標変換部２２は、移動経路補正部２０が補正した相対経路を絶対座標に変換し、経路情報保持部２４は、座標変換部２２が変換した結果を保持する。
【００２６】
ＧＰＳ受信機５９及び絶対位置取得部１０は、ＧＰＳ機能（又は、ＧＰＳ手段）を形成可能である。地磁気センサ３０、方位取得部８及び方向転換検出部１２は、方向変化検出機能（又は、方向変化検出手段）を形成可能である。又、加速度センサ４０及び移動距離取得部１４は、歩数検出機能（又は、歩数検出手段）を含む移動距離算出機能（又は、移動距離算出手段）を形成可能である。方位算出部１６、移動経路取得部１８、移動経路補正部２０、及び座標変換部２２は、移動経路取得機能（又は、移動経路取得手段）を形成可能である。
【００２７】
図１の如き基本構成を有する携帯電話１００は、例えば特許文献４より周知である。尚、移動経路推定装置５０は、例えばＣＰＵ（Central Processing Unit）等のプロセッサと記憶部の組み合わせにより形成可能である。図２は、携帯電話１００を形成可能なコンピュータシステムの構成の一例を示すブロック図である。
【００２８】
図２において、コンピュータシステム５００は、ＣＰＵ５０１、記憶部５０２、テンキー等を含む入力部５０３、表示部５０４、及びタイマ５０５を有する。この例では、記憶部５０２、入力部５０３、表示部５０４、及びタイマ５０５がバス５０６を介してＣＰＵ５０１に接続されているが、バス５０６を用いることなく記憶部５０２、入力部５０３、表示部５０４、及びタイマ５０５を夫々直接ＣＰＵ５０１に接続した構成であっても良い。又、ＧＰＳ受信機５９、地磁気センサ３０、加速度センサ４０、及び携帯電話１００の状態を検出する周知の状態センサ６０は、バス５０６を介してＣＰＵ５０１に接続されていても、直接ＣＰＵ５０１に接続されていても良い。尚、図２では、説明の便宜上、状態センサ６０のみを示し、ＧＰＳ受信機５９、地磁気センサ３０、及び加速度センサ４０の図示は省略する。
【００２９】
例えば、状態センサ６０は、携帯電話１００が折りたたみ式の場合に蓋の開閉状態を検出したり、携帯電話１００がスライド式の場合に蓋のスライド状態を検出したり、携帯電話１００の表示部（即ち、コンピュータシステム５００の表示部５０４）のオン／オフ状態を検出したりすることで、携帯電話１００の動作状態、或いは、動作モードを検出する。
【００３０】
尚、入力部５０３及び表示部５０４は、タッチパネル等により一体的に設けられていても良い。タイマ５０５は、ＣＰＵ５０１の内部タイマを用いる場合は省略可能である。バス５０６を介さずに直接ＣＰＵ５０１と信号の送受信を行う場合、バス５０６上のトラフィックの問題が軽減できる。
【００３１】
ＣＰＵ５０１は、コンピュータシステム５００全体の制御を司り、位置推定プログラムを含む各種プログラムを実行することで図１に示す移動経路推定装置５０の各機能を実現できる。記憶部５０２は、移動経路推定装置５０内の経路情報保持部２４の機能を実現すると共に、ＣＰＵ５０１が実行するプログラム、及びＣＰＵ５０１が実行する算出処理等の中間データ、地図等を含む各種データを格納する。つまり、記憶部５０２は、移動経路推定装置５０内の各部が取得、検出、算出、補正、或いは変換した情報を記憶できる。記憶部５０２は、例えばＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＨＤＤ（Hard Disk Drive）等で形成可能である。入力部５０２は、コンピュータシステム５００（即ち、携帯電話１００）にコマンドやデータを入力する際にユーザにより操作される。表示部５０３は、入力部５０２からの入力情報、ユーザへのメッセージ、各種操作メニュー、地図、移動経路推定装置５０により推定された移動経路等を表示する。タイマ５０５は、ＣＰＵ５０１が実行する処理で用いるタイミングを決定したり、所定時間を管理することができる。
【００３２】
コンピュータシステム５００に少なくとも位置推定機能を持たせるプログラム（位置推定プログラム）は、コンピュータシステム５００（即ち、ＣＰＵ５０１）を位置推定機能を有する携帯電話１００として動作させる。プログラムは、コンピュータ読み取り可能な記憶媒体に格納されていても良い。コンピュータ読み取り可能な記憶媒体は、例えばＩＣ（Integrated Circuit）カードメモリ等の半導体記憶装置、フロッピー（登録商標）ディスク等の磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ等の可搬型記録媒体に限定されるものではなく、コンピュータシステム５００でアクセス可能な各種記録媒体を含む。又、コンピュータ読み取り可能な記憶媒体は、例えば記憶部５０２で形成されても良い。
【００３３】
言うまでもなく、ＣＰＵ５０１は、位置推定機能に加え、各種プログラムを実行することで携帯電話１００の通話機能、通信機能、撮影機能等の各種機能の少なくとも一部を更に実現しても良い。
【００３４】
次に、携帯電話１００の動作を図３乃至図１０と共に説明する。図３は、携帯電話１００の動作の一例を説明するフローチャートである。尚、移動経路推定装置５０の各機能をＣＰＵ５０１で実現する場合、図３乃至図１０に示す処理はＣＰＵ５０１により実行される。図３の処理は、例えば加速度センサ４０が携帯電話１００を携帯するユーザの歩行開始を検出した時点から、或いは、ユーザが入力部５０３から移動経路の取得開始指示等を入力した時点から開示される。
【００３５】
図３において、ステップＳ１は、携帯電話１００の位置推定機能を用いるアプリケーションソフトウェア（以下、アプリと言う）が起動されたか否か、或いは、携帯電話１００の動作モードが履歴モードから現在位置測位モードに切り替えられたか否かを判定する。位置推定機能を用いるアプリが起動されたか否かは、ＣＰＵ５０１が当該アプリを実行したか否かに基づいて判定できる。又、携帯電話１００の動作モードが履歴モードから現在位置測位モードに切り替えられたか否かは、状態センサ６０の検出出力に基づいて判定できる。履歴モードでは、例えば移動経路取得部１８が取得して記憶部５０２に記憶した移動経路を読み出して表示部５０４に表示する等して、携帯電話１００を携帯するユーザの歩行履歴を地図上に表示することができる。一方、現在位置測位モードでは、携帯電話１００の位置を測位して現在位置を推定する。ステップＳ１の判定結果がＹＥＳになると、ステップＳ２は、図４と共に後述するスタート時動作を開始する。ステップＳ２の後、ステップＳ３〜Ｓ９、ステップＳ１１〜Ｓ１４、及びステップＳ１５の処理が並行して実行される。
【００３６】
ステップＳ３は、方向転換検出部１２により方向転換、即ち、曲がりが検出されたか否かを判定する。ステップＳ３の判定結果がＹＥＳになると、ステップＳ４は、移動距離取得部１４により図６と共に後述する直線距離算出処理を行う。ステップＳ５は、移動経路取得部１８により図５と共に後述する現在位置算出処理を行う。ステップＳ６は、方位算出部１６により算出した進行方位ｎを記憶部５０２に記憶する。ステップＳ７は、ステップＳ５同様に移動経路取得部１８により図５と共に後述する現在位置算出処理を行い、ステップＳ８は、ステップＳ６と同様に方位算出部１６により算出した進行方位ｎ＋１を記憶部５０２に記憶する。ステップＳ６，Ｓ８で算出した進行方位ｎ，ｎ＋１は、後述するステップＳ１５にて利用される。ステップＳ９は、｜（進行方位ｎ）−（進行方位ｎ＋１）｜＞閾値であるか否かを移動経路取得部１８により判定し、判定結果がＹＥＳであるとユーザが直線的に移動していないと推定されるので処理はステップＳ７戻り、判定結果がＮＯであるとユーザが直線的に移動していると推定されるので処理は後述するステップＳ２１へ進む。
【００３７】
一方、ステップＳ１１は、タイマ５０５が監視している所定時間が経過したか否かを例えば移動経路取得部１８により判定する。ステップＳ１１の判定結果がＹＥＳになると、ステップＳ１２は、ステップＳ５同様に移動経路取得部１８により図５と共に後述する現在位置算出処理を行い、ステップＳ１３は、ステップＳ６と同様に方位算出部１６により算出した進行方位ｎを記憶部５０２に記憶する。ステップＳ１４は、タイマ５０５をリセットし、処理はステップＳ１５へ進む。
【００３８】
ステップＳ１５は、移動経路取得部１８により図９と共に後述する現在位置出力処理を行い、処理はステップＳ２１へ進む。
【００３９】
ステップＳ２１は、ステップＳ１においてアプリが起動されたか否かを判定した場合は、起動されているアプリが終了したか否かを判定する。又、ステップＳ２１は、ステップＳ１において携帯電話１００の動作モードが履歴モードから現在位置測位モードに切り替えられたか否かを判定した場合は、携帯電話１００の動作モードが現在位置測位モードから履歴モードに切り替えられたか否かを判定する。
【００４０】
起動されているアプリが終了したか否かを判定し、アプリが終了しておらずステップＳ２１の判定結果がＮＯであると、処理はステップＳ３，Ｓ１１，Ｓ１５へ進む。一方、アプリが終了してステップＳ２１の判定結果がＹＥＳ（Ｙ１）であると、ステップＳ２３は図１０と共に供述する終了時動作を実行し、処理は終了する。
【００４１】
携帯電話１００の動作モードが現在位置測位モードから履歴モードに切り替えられたか否かを判定し、履歴モードへの切り替えが発生しておりステップＳ２１の判定結果がＹＥＳ（Ｙ２）であると、ステップＳ２２は携帯電話１００の動作モードを履歴モードへ切り替え、処理は終了する。一方、履歴モードへの切り替えが発生しておらずステップＳ２１の判定結果がＮＯであると、処理はステップＳＳ３，Ｓ１１，Ｓ１５へ進む。
【００４２】
図４は、ステップＳ２のスタート時動作を説明するフローチャートである。図４において、ステップＳ２０１は、ＧＰＳ受信機５９を起動して（即ち、動作させて）アンカーポイント（anchor point）として利用される絶対位置を絶対位置取得部１０により取得し、ステップＳ２０２は、加速度センサ４０が出力する加速度から歩数を算出する歩数計を移動距離取得部１４内で起動する。ＧＰＳ受信機５９は、アンカーポイント取得後はその都度解放（即ち、非動作と）される。ステップＳ２０３は、ステップＳ２０１でアンカーポイントを取得した時点からステップＳ２０２で起動された歩数計で計数された歩数に基づいて算出された当該アンカーポイントからの移動距離に基づき、図５と共に後述する現在位置算出処理を移動経路取得部１８により行う。ステップＳ２０４は、地磁気センサ３０の出力地磁気値に基づいて相対方位を取得する処理を方位取得部８により行い、相対方位を進行方位ｎとして記憶部５０２に記憶する。ステップＳ２０５は、図５と共に後述する現在位置算出処理を移動経路取得部１８により行う。ステップＳ２０６は、地磁気センサ３０の出力地磁気値に基づいて相対方位を取得する処理を方位取得部８により行い、相対方位を進行方位ｎ＋１として記憶部５０２に記憶する。ステップＳ２０７は、｜（進行方位ｎ）−（進行方位ｎ＋１）｜＞閾値であるか否かを移動経路取得部１８により判定し、判定結果がＹＥＳであるとユーザが直線的に移動していないと推定されるので処理はステップＳ２０５戻り、判定結果がＮＯであるとユーザが直線的に移動していると推定されるので処理は呼出元の図３の処理（ステップＳ２）へ戻る。図３の処理に戻る際には、現在位置及び進行方位が求められている。
【００４３】
図５は、現在位置算出処理を説明するフローチャートである。図５において、ステップＳ５１は、ＧＰＳ受信機５９を起動してアンカーポイントを絶対位置取得部１０により取得しする。ステップＳ５２は、ステップＳ５１でアンカーポイントを取得した時点から歩数計で計数された歩数に基づいて、図６と共に後述する直線移動距離算出処理を移動距離取得部１４により行う。ステップＳ５３は、直線移動距離を含む現在位置算出用データを記憶部５０２に保存する。ステップＳ５４は、図７と共に後述する最適化処理を移動経路補正部２０により行う。ステップＳ５５は、タイマ５０５を例えば移動距離取得部１４によりセットし、処理は呼出元の処理へ戻る。呼出元の処理に戻る際には、現在位置及び進行方位が求められている。
【００４４】
図６は、直線移動距離算出処理を説明するフローチャートである。図６において、ステップＳ４１は、方向転換検出部１２により方向転換、即ち、曲がりが検出された（即ち、図３のステップＳ３の判定結果がＹＥＳ）の場合の処理であるか、或いは、絶対位置取得部１０によりアンカーポイントが取得された場合（即ち、図５のステップＳ５１の後）の処理であるかを移動距離取得部１４により判別する。前者の場合をケースＡとし、後者の場合をケースＢとすると、ステップＳ４２は、ケースＡの場合は移動距離取得部１４により直線移動距離を[｛（今回の曲がり検出時の歩数）−（前回の曲がり検出時の歩数）｝×（歩幅）]から算出し、処理は呼出元の処理（例えば図３のステップＳ４）へ戻る。一方、ステップＳ４２は、ケースＢの場合は、移動距離取得部１４により直線移動距離を[｛（アンカーポイント取得時の歩数）−（前回の曲がり検出時の歩数）｝×（歩幅）]から算出し、処理は呼出元の処理（例えば図５のステップＳ５２）へ戻る。呼出元の処理に戻る際には、前回の曲がり検出時から今回のアンカーポイント取得時までの直線移動距離、即ち、リンク長が求められている。リンクとは、移動距離の長さを有する線分のことを言う。リンクは移動経路に相当し、有限の長さを有する一又は複数の節で形成される。１リンクにつき例えば３種類の変数（又は、パラメータ）、即ち、節の長さ、節の角度、及びリンクの角度が設定可能である。
【００４５】
図７は、最適化処理を説明するフローチャートである。この例では、例えば非特許文献１等で提案されているバネモデルを用いた歩行軌跡補間技術を用いた最適化処理を行う。図７において、ステップＳ５４１は、各リンクの絶対位置（又は、アンカーポイント）に対する初期方位（即ち、初期角度）を移動経路補正部２０により決定する。ステップＳ５４２は、各リンクの対応点座標を移動経路補正部２０により算出する。各リンクの対応点は、図８と共に後述するバネモデルにおいてＧＰＳ機能により取得された絶対位置がバネを介してリンクに接続する位置であり、絶対位置の取得タイミングにおけるリンク上の位置に相当する。ステップＳ５４３は、絶対位置座標（即ち、ＧＰＳ座標）と対応点座標の距離、及びリンクＮの終点とリンク（即ち、リンクＮに連続する次のリンク）Ｎ＋１の始点の距離の二乗和（即ち、エネルギー値）を移動経路補正部２０により算出する。ステップＳ５４４は、算出した二乗和、即ち、エネルギー値を最小化するリンクを求め、処理は呼出元の処理（例えば図５のステップＳ５４）へ戻る。呼出元の処理に戻る際には、エネルギー値が最小化されるリンクにより最適化された現在位置及び進行方位が求められている。この最適化処理により、エネルギー値が最小となる解が求められる。
【００４６】
【数１】
2012122892.tif 000003
【００４７】
エネルギー値Ｅは、例えば次式により表すことができる。
【００４８】
【数２】
2012122892.tif 000004
【００４９】
リンクは移動経路に相当し、有限の長さを有する一又は複数の節で形成される。１リンクにつき例えば３種類の変数（又は、パラメータ）、即ち、節の角度、節の長さ、及びリンクの角度を決めることが可能である。
【００５０】
次式で表されるように、節の角度及び節の長さを決め、リンクの始点を決めることができる。
【００５１】
【数３】
2012122892.tif 000005
【００５２】
又、次式で表されるように、リンクの角度を決め、各対応点を決めることができる。
【００５３】
【数４】
2012122892.tif 000006
【００５４】
更に、次式で表されるように、リンクの終点を決めることができる。
【００５５】
【数５】
2012122892.tif 000007
【００５６】
このようにして１リンクについて３種類の変数を決めた後、次のリンクについて同様に３種類の変数を決めることができる。そして、周知の最適化手法を用いることで、エネルギーＥが最小となる解を求める。
【００５７】
【数６】
2012122892.tif 000008
【００５８】
このような節バネモデルのバネの延び縮みを利用して、直線移動距離の誤差を補正することができる。つまり、この例では、リンクの始点位置の特定にバネモデルの理論を応用しているとも言える。
【００５９】
図９は、現在位置出力処理を説明するフローチャートである。図９において、ステップＳ１５１は、現在位置及び進行方位ｎ＋１が取得されているか否かを移動経路取得部１８により判定する。ステップＳ１５１の判定結果がＹＥＳであると、ステップＳ１５２は、取得されている現在位置を移動経路取得部１８により出力し、処理は呼出元の処理（例えば図３のステップＳ１５）へ戻る。一方、ステップＳ１５１の判定結果がＮＯであると、ステップＳ１５３は、移動経路取得部１８により現在位置を[（一歩前の現在位置）＋（歩幅）×（一歩前の進行方位ｎ）]から算出し、処理は呼出元の処理へ戻る。
【００６０】
図１０は、終了時動作を説明するフローチャートである。図１０において、ステップＳ２３１は、ＧＰＳ受信機５９を起動して絶対位置取得部１０によりアンカーポイントを取得する。ステップＳ２３２は、移動経路取得部１８により図５に示す現在位置算出処理を行って現在位置を算出し、処理は呼出元の処理（例えば図３のステップＳ２３）に戻る。呼出元の処理に戻る際には、現在位置が求められている。
【００６１】
図１１は、リンクの算出を説明する図である。上述の如く、この例では、方向変化検出機能で携帯電話１００の移動方向の変化を検出すると、ＧＰＳ機能を動作させてアンカーポイントＧ１を取得する。又、移動方向の変化を検出してから所定時間後にＧＰＳ機能を再度動作させてアンカーポイントＧ２を取得し、アンカーポイントＧ１，Ｇ２を通るリンク（又は、直線線分）Ａを算出する。次に、アンカーポイントＧ２を取得した時点から所定時間後にＧＰＳ機能を再度動作させてアンカーポイントＧ３を取得する。ＧＰＳ機能は、各アンカーポイントＧ１，Ｇ２，Ｇ３を取得後に非動作となるので、消費電力を比較的低く抑えることができる。
【００６２】
アンカーポイントＧ１は、携帯電話１００の移動方向の変化を検出した時点でＧＰＳ機能により取得された絶対位置であるが、移動方向の変化を検出した時点は、必ずしも携帯電話１００の移動方向が実際に変化した時点と一致するものではない。そこで、アンカーポイントＧ１，Ｇ２，Ｇ３に最も近く、且つ、アンカーポイントＧ１を通らないリンクＢを算出する。アンカーポイントＧ１を通らないリンクＢを算出することで、アンカーポイントＧ１に対する各リンクＡ，Ｂの方位を示す角度の差が所定範囲内に収束し易くする。又、アンカーポイントＧ１を通らないリンクＢを算出することで、アンカーポイントＧ１を通るリンクを算出する場合と比較して、アンカーポイントＧ１に対するリンクの方位（以下、リンクの角度と言う）の精度を向上することができる。
【００６３】
このようにして、アンカーポイントに対するリンクの角度を決定するまでにＧＰＳ機能を動作させる回数を比較的少なくすることができる。更に、アンカーポイントＰ１に対するリンクの角度を決定後は、次に携帯電話１００の移動方向の変化が検出されるまではＧＰＳ機能を動作させる必要がない。このため、ＧＰＳ機能を連続動作させる場合と比較すると、ＧＰＳ機能の消費電力、即ち、携帯電話１００の消費電力を少なくすることができる。
【００６４】
その後、アンカーポイントＧ１に対する各リンクＡ，Ｂの角度θＡ，θＢを比較し、角度の差｜θＡ−θＢ｜が所定値以内であればリンクＢのアンカーポイントＧ１に対する角度θＢを、アンカーポイントＧ１の直前のリンクとアンカーポイントＧ１直後のリンクＡとがなす角度とみなし、アンカーポイントＧ１の直前のリンクとアンカーポイントＧ１直後のリンクＡを接続したリンク形状に基づいて携帯電話１００の現在位置を推定する。
【００６５】
一方、アンカーポイントＧ１に対する各リンクＡ，Ｂの角度θＡ，θＢを比較し、角度の差｜θＡ−θＢ｜が所定値を超える場合には、アンカーポイントＧ３を取得した時点から所定時間後にＧＰＳ機能を再度動作させてアンカーポイントＧ４を取得する。そして、アンカーポイントＧ１，Ｇ２，Ｇ３，Ｇ４に最も近く、且つ、アンカーポイントＧ１を通らないリンクＣを算出する。このようにリンクＣを算出する処理は、アンカーポイントＧ１に対する各リンクＢ，Ｃの角度θＢ，θＣを比較し、角度の差｜θＢ−θＣ｜が所定値以内に収束するまで繰り返される。
【００６６】
このようにして、この例では、単純に一定時間毎、或いは、一定移動距離毎にＧＰＳ機能を間欠動作させる従来例と比較して、位置推定精度を低下させることなく、且つ、ＧＰＳ機能を動作させる回数を減らして消費電力を更に低減することができる。
【００６７】
図１２乃至図１６は、上記の例において推定された位置に基づき推定された推定移動経路と、正解移動経路とを比較する図である。図１２はリンクの１回目の角度算出時の様子、図１３はリンクの２回目の角度算出時の様子、図１４はリンクの３回目の角度算出時の様子、図１５はリンクの４回目の角度算出時の様子、図１６はリンクの５回目の角度算出時の様子を夫々示す。図１２乃至図１６中、縦軸は地図上の例えば南北方向上の移動距離をメートル（ｍ）で示し、横軸は地図上の例えば東西方向上の移動距離をメートル（ｍ）で示す。尚、図１２乃至図１６では、原点が最初に取得した緯度及び経度で示されるＧＰＳ座標に対する値で示されているので、この例では縦軸の値が０．０００ｍ、横軸の値が５０．０００ｍの位置が原点でるが、原点はこの値に限定されるものではない。
【００６８】
図１２乃至図１６の各図において、（ａ）はリンクが作成される様子を正解移動経路と共に示し、（ｂ）は（ａ）によるリンクの作成により算出される推定移動経路を正解移動経路と共に示す。又、図１２乃至図１６の各図において、（ａ）では取得されたＧＰＳ位置を×印付きの□印で示し、正解移動経路のサンプル位置を◆印で示し、節バネモデルの算出結果が取得される位置を■印で示し、携帯電話１００の自律航法結果を梨地の△印で示す。又、（ｂ）では取得されたＧＰＳ位置を×印付きの□印で示し、正解移動経路を破線で示し、節バネモデルの算出結果が取得される位置を●印で示し、自律航法結果を梨地の○印で示す。
【００６９】
図１２（ａ）においてリンクＬ１〜Ｌ３のうち、リンクＬ２のリンク長は例えば４６．２ｍであり、正解移動経路中のリンクＬ２に相当するリンク長は例えば５５．７ｍである。そこで、この例では、推定移動経路と正解移動経路との間のリンクＬ２についての９．５ｍの誤差を次のリンクＬ３の仮想バネで補正する。
【００７０】
表１は、リンクＬ３について１回目から５回目の角度算出処理で求めた節の長さ（ｍ）、節の角度（rad）、及びリンクの角度（rad）を示す。連続する角度算出処理（例えば１回目と２回目の角度算出処理）間のリンクの角度の変化が所定値以下であれば、上記の如く携帯電話１００を携帯するユーザは直進していると判断する。一方、連続する処理間のリンクの角度の変化が所定値を超えると、上記の如くユーザは直進していないと判断して再度方位を算出する。
【００７１】
つまり、（ＳＴ１）初期方位を決定して初期方位に基づいて自律航法を行い、（ＳＴ２）曲がり（即ち、旋回イベント）を検出するとＧＰＳ機能により絶対位置を取得し、（ＳＴ３）リンクに節バネモデルを適用して方位を算出し、（ＳＴ４）算出した方位に基づいて自律航法を行い、（ＳＴ５）曲がりを検出する度に（ＳＴ２）〜（ＳＴ４）の処理を繰り返す。
【００７２】
図１２乃至図１６の例では、５回目の角度算出処理を経てリンクＬ３で表される推定移動経路が正解移動経路を良好に再現できることが確認できる。
【００７３】
【表１】
2012122892.tif 000009
【００７４】
尚、図１２乃至図１６に示す如き推定移動経路は、例えば周知の方法で表示部５０４に表示された地図上に表示することで、ユーザに対するナビゲーションサービスを提供することができる。
【００７５】
上記の例では、端末装置が携帯電話である場合について説明したが、端末装置は携帯型の装置（即ち、携帯端末装置）に限定されるものではなく、端末装置は、自動車や二輪車等の車両に搭載されるナビゲーション装置であっても良い。この場合、移動距離取得部１４は、例えば車両のタイヤの外周の長さと、タイヤの回転数から車両の移動距離を取得すれば良い。
【００７６】
更に、上記の例では、説明の便宜上、地図及び移動経路が二次元で表示される場合について説明したが、地図及び移動経路は三次元で表示されても良いことは言うまでもない。
【００７７】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
端末装置の移動距離を移動距離算出機能で算出し、前記端末装置の移動方向の変化の有無を方向変化検出機能で検出し、前記移動方向の変化が検出された時点から所定時間後にＧＰＳ機能で絶対位置を取得する処理を繰り返し、
１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る移動距離の長さを有する第１のリンクを算出し、
前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第２のリンクを算出し、
前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなし、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記端末装置の現在位置を推定し、
前記ＧＰＳ機能を絶対位置の取得時に動作させ、取得後に非動作とする
ことを特徴とする、位置推定方法。
（付記２）
前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値を超える場合には、前記第３の絶対位置を取得した時点から前記所定時間後に前記ＧＰＳ機能を再度動作させて第４の絶対位置を取得し、前記第１乃至第４の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第３のリンクを算出する処理を、前記第１の絶対位置に対する前記第２及び第３のリンクの角度の差が前記所定値以内に収束するまで繰り返すことを特徴とする、付記１記載の位置推定方法。
（付記３）
前記ＧＰＳ機能により測位された絶対位置と測位時点の実際の位置との間の測位誤差を仮想バネの変位の位置エネルギーとして扱う、前記仮想バネでリンクが接続された節バネモデルにおいて、前記仮想バネの変位の位置エネルギーが最小となる状態を最も正解移動経路に近いリンクであると判断して当該リンクを前記ＧＰＳ機能により取得した絶対位置に合わせて補間することを特徴とする、付記１又は２記載の位置推定方法。
（付記４）
前記端末装置の現在位置を推定して取得した推定位置から前記端末装置の推定移動経路を取得して表示部に表示することを特徴とする、付記１乃至３のいずれか１項記載の位置推定方法。
（付記５）
取得した前記推定移動経路を前記端末装置の移動履歴として記憶部に格納することを特徴とする、付記４記載の位置推定方法。
（付記６）
前記移動距離算出機能は、加速度センサを用いた歩数検出機能で検出された歩数に基づいて移動距離を算出し、
前記方向変化検出機能は、地磁気センサ又は角速度センサを用いて移動方向の変化を検出することを特徴とする、付記１乃至５のいずれか１項記載の位置推定方法。
（付記７）
端末装置の移動距離を算出する移動距離算出手段と、
動作時に端末装置の絶対位置を検出するＧＰＳ受信機と、
前記端末装置の移動方向の変化の有無を検出する方向変化検出手段と、
前記方向変化検出手段により移動方向の変化が検出された時点から所定時間後に前記ＧＰＳ受信機を動作させて絶対位置を取得して当該絶対位置の取得後に前記ＧＰＳ受信機を非動作にする処理を繰り返す絶対位置取得手段と、
前記移動距離及び前記絶対位置に基づいて前記端末装置の移動経路を取得する移動経路取得手段を備え、
前記移動経路取得手段は、
前記絶対位置取得手段の１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る第１のリンクを算出し、
前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない第２のリンクを算出し、
前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなし、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記端末装置の現在位置を推定する
ことを特徴とする、端末装置。
（付記８）
前記移動経路取得手段は、前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値を超える場合には、前記第３の絶対位置を取得した時点から前記所定時間後に前記ＧＰＳ受信機を再度動作させて第４の絶対位置を取得し、前記第１乃至第４の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第３のリンクを算出する処理を、前記第１の絶対位置に対する前記第２及び第３のリンクの角度の差が前記所定値以内に収束するまで繰り返すことを特徴とする、付記７記載の端末装置。
（付記９）
前記移動経路取得手段は、前記ＧＰＳ受信機により測位された絶対位置と測位時点の実際の位置との間の測位誤差を仮想バネの変位の位置エネルギーとして扱う、前記仮想バネでリンクが接続された節バネモデルにおいて、前記仮想バネの変位の位置エネルギーが最小となる状態を最も正解移動経路に近いリンクであると判断して当該リンクを前記ＧＰＳ受信機により取得した絶対位置に合わせて補間する移動経路補正部を有することを特徴とする、付記７又は８記載の端末装置。
（付記１０）
表示部を更に備え、
前記移動経路取得手段は、前記端末装置の現在位置を推定して取得した推定位置から前記端末装置の推定移動経路を取得して前記表示部に表示することを特徴とする、付記７乃至９のいずれか１項記載の端末装置。
（付記１１）
取得した前記推定移動経路を前記端末装置の移動履歴として格納する記憶部を更に備えたことを特徴とする、付記１０記載の端末装置。
（付記１２）
前記移動距離算出手段は、加速度センサを用いた歩数検出手段で検出された歩数に基づいて移動距離を算出し、
前記方向変化検出手段は、地磁気センサ又は角速度センサを用いて移動方向の変化を検出する
ことを特徴とする、付記７乃至１１のいずれか１項記載の端末装置。
（付記１３）
コンピュータに、前記コンピュータの位置を推定する位置推定処理を実行させるプログラムであって、
前記コンピュータの移動距離を移動距離算出機能で算出して記憶部に格納し、前記コンピュータの移動方向の変化の有無を方向変化検出機能で検出し、前記移動方向の変化が検出された時点から所定時間後にＧＰＳ機能で絶対位置を取得して前記記憶部に格納する処理を繰り返す手順と、
１回目の処理で取得した第１の絶対位置と前記１回目の処理から所定時間後に実行される２回目の処理で取得した第２の絶対位置を通る移動距離の長さを有する第１のリンクを算出して前記記憶部に格納する手順と、
前記第１及び第２の絶対位置と、前記２回目の処理から所定時間後に実行される３回目の処理で取得した第３の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第２のリンクを算出して前記記憶部に格納する手順と、
前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値以内であれば前記第２のリンクの前記第１の絶対位置に対する角度を、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクとがなす角度とみなして前記記憶部に格納し、前記第１の絶対位置の直前のリンクと前記第１の絶対位置直後の前記第１のリンクを接続したリンク形状に基づいて前記コンピュータの現在位置を推定する手順
を前記コンピュータに実行させることを特徴とする、プログラム。
（付記１４）
前記第１及び第２のリンクの前記第１の絶対位置に対する方位を示す角度の差が所定値を超える場合には、前記第３の絶対位置を取得した時点から前記所定時間後に前記ＧＰＳ機能を再度動作させて第４の絶対位置を取得し、前記第１乃至第４の絶対位置に最も近く、且つ、前記第１の絶対位置を通らない移動距離の長さを有する第３のリンクを算出する処理を、前記第１の絶対位置に対する前記第２及び第３のリンクの角度の差が前記所定値以内に収束するまで繰り返す手順
を前記コンピュータに更に実行させることを特徴とする、付記１３記載のプログラム。
（付記１５）
前記ＧＰＳ機能により測位された絶対位置と測位時点の実際の位置との間の測位誤差を仮想バネの変位の位置エネルギーとして扱う、前記仮想バネでリンクが接続された節バネモデルにおいて、前記仮想バネの変位の位置エネルギーが最小となる状態を最も正解移動経路に近いリンクであると判断して当該リンクを前記ＧＰＳ機能により取得した絶対位置に合わせて補間する手順
を前記コンピュータに更に実行させることを特徴とする、付記１３又は１４記載のプログラム。
（付記１６）
前記コンピュータの現在位置を推定して取得した推定位置から前記端末装置の推定移動経路を取得して表示部に表示する手順
を前記コンピュータに更に実行させることを特徴とする、付記１３乃至１５のいずれか１項記載のプログラム。
（付記１７）
取得した前記推定移動経路を前記コンピュータの移動履歴として前記記憶部に格納する手順
を前記コンピュータに更に実行させることを特徴とする、付記１６記載のプログラム。
（付記１８）
前記移動距離算出機能は、加速度センサを用いた歩数検出機能で検出された歩数に基づいて移動距離を算出し、
前記方向変化検出機能は、地磁気センサ又は角速度センサを用いて移動方向の変化を検出し、
前記コンピュータは携帯端末装置に備えられていることを特徴とする、付記１３乃至１７のいずれか１項記載のプログラム。
【００７８】
以上、開示の位置推定方法、端末装置及びプログラムを実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。
【符号の説明】
【００７９】
８      方位取得部
１０      絶対位置取得部
１２    方向転換検出部
１４      移動距離取得部
１６      方位算出部
１８      移動経路取得部
２０      移動経路補正部
３０      地磁気センサ
４０      加速度センサ
５０      移動経路推定装置
５９      ＧＰＳ受信機
６０      状態センサ
１００      携帯電話
５００      コンピュータシステム
５０１      ＣＰＵ
５０２      記憶部
【図１】
2012122892.tif 000010
【図２】
2012122892.tif 000011
【図３】
2012122892.tif 000012
【図４】
2012122892.tif 000013
【図５】
2012122892.tif 000014
【図６】
2012122892.tif 000015
【図７】
2012122892.tif 000016
【図８】
2012122892.tif 000017
【図９】
2012122892.tif 000018
【図１０】
2012122892.tif 000019
【図１１】
2012122892.tif 000020
【図１２】
2012122892.tif 000021
【図１３】
2012122892.tif 000022
【図１４】
2012122892.tif 000023
【図１５】
2012122892.tif 000024
【図１６】
2012122892.tif 000025