(57)【特許請求の範囲】
【請求項１】
コンピュータにより実行される地図データ修正方法であって、
複数の移動体により計測された時系列位置データを取得して、時系列位置データ格納部に格納する取得ステップと、
地図データ格納部に格納された地図データ中の所定の位置と当該地図データ中の所定の位置に対応し且つ前記時系列位置データ格納部に格納された時系列位置データから得られる位置との差を計算するステップと、
前記地図データ中の所定の位置毎に前記差の代表値を計算するステップと、
前記差の代表値が所定の基準を超える場合には、前記地図データ中の所定の位置を前記差の代表値を用いて修正し、修正後の位置データを前記地図データ格納部に格納するステップと、
前記移動体毎に、前記時系列位置データ格納部に格納された前記時系列位置データで特定される経路について新規経路の部分と既に測定した経路の部分とを特定し、前記新規経路の部分の移動距離と前記既に測定した経路の部分の移動距離とをそれぞれ異なる重み付けで集計するステップと、
前記移動体毎に集計された前記移動距離に基づき、当該移動体の保持者に対し所定の特典を付与するための処理を実施するステップと、
を前記コンピュータが実行することを特徴とする地図データ修正方法。
【請求項２】
コンピュータに、
複数の移動体により計測された時系列位置データを取得して、時系列位置データ格納部に格納するステップと、
地図データ格納部に格納された地図データ中の所定の位置と当該地図データ中の所定の位置に対応し且つ前記時系列位置データ格納部に格納された時系列位置データから得られる位置との差を計算するステップと、
前記地図データ中の所定の位置毎に前記差の代表値を計算するステップと、
前記差の代表値が所定の基準を超える場合には、前記地図データ中の所定の位置を前記差の代表値を用いて修正し、修正後の位置データを前記地図データ格納部に格納するステップと、
前記移動体毎に、前記時系列位置データ格納部に格納された前記時系列位置データで特定される経路について新規経路の部分と既に測定した経路の部分とを特定し、前記新規経路の部分の移動距離と前記既に測定した経路の部分の移動距離とをそれぞれ異なる重み付けで集計するステップと、
前記移動体毎に集計された前記移動距離に基づき、当該移動体の保持者に対し所定の特典を付与するための処理を実施するステップと、
を実行させる地図データ修正プログラム。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、移動体による測位データを用いた地図データの修正技術に関する。
【０００２】
【従来の技術】
例えば特開平１０−２８９３９６号公報は、車両の自動変速機の変速段を道路データに基づき制御するために、道路の改修などにより道路データと実際の道路形状とが異なる際の処理について開示を行っている。すなわち、車両のナビゲーション装置が、道路データ上の位置から現在位置が逸脱している場合に、逸脱した位置を基地局側へ送信する。基地局は、車両側から修正データが送出された際に、送出されたデータに基づき地図データを修正する。
【０００３】
【発明が解決しようとする課題】
この公報では、車両において地図との差を計算しているため車両における処理負担が大きい。また、自動変速機の制御のための発明であるから道路におけるカーブの曲率の差を問題としている。また、道路データが大きく変更される道路の改修を検出するという点が大きな目的となっているため、同一の道路修正用データが所定数以上収集されないと道路データが修正されない。しかし、実際には道路が改修されなくとも地図作成時に誤った位置データを用いて地図が作成されている場合もある。このような場合であっても地図データの修正を行うべきである。測定値は常に誤差を含むものであり、この公報のように同一の道路修正用データが所定数以上収集されるという状況はあまり生じないものと考えられる。特に、道路データを微調整するような場合にはこの公報では修正はほとんど行われないように考えられる。
【０００４】
よって本発明の目的は、地図データを精度良く修正するための技術を提供することである。
【０００５】
また他の目的は、より多くの位置情報を取得できるようにするための技術を提供することである。
【０００６】
【課題を解決するための手段】
本発明の地図データ修正方法は、複数の移動体（例えば車両。例えば実施の形態における移動体１。）により計測された時系列位置データを取得して、時系列位置データ格納部（例えば実施の形態における走行経路ＤＢ３２）に格納する取得ステップ（例えば実施の形態におけるステップＳ１１：図４）と、地図データ格納部（例えば実施の形態における地図データＤＢ３４）に格納された地図データ中の所定の位置と当該地図データ中の所定の位置に対応し且つ時系列位置データ格納部に格納された時系列位置データから得られる位置との差を計算し、記憶装置に格納するステップ（例えば実施の形態におけるステップＳ１３：図４）と、地図データ中の所定の位置毎に上記差の代表値（例えば分布の平均的傾向を示す単純平均や加重平均など）を計算し、記憶装置に格納するステップ（例えば実施の形態におけるステップＳ１５：図４）と、当該差の代表値が所定の基準を超える場合には、地図データ中の所定の位置を上記差の代表値を用いて修正し、修正後の位置データを地図データ格納部に格納するステップ（例えば実施の形態におけるステップＳ１７：図４）とを含む。
【０００７】
本発明のようにすれば地図データとの差の代表値を計算することにより統計的に誤差を相殺することができ、より正確なデータをもって地図データの修正を実施することができるようになる。
【０００８】
また、時系列位置データ格納部に格納された時系列位置データに基づいて、移動体毎に移動距離を集計し、記憶装置に格納する移動距離集計ステップ（例えば実施の形態におけるステップＳ２３：図８）と、集計された移動距離に基づき、当該移動体の保持者に対し所定の特典を付与するための処理を実施するステップ（例えば図１２の処理）とをさらに含むような構成も可能である。地図データ修正に協力してもらった対価として移動距離に応じた特典を付与するものである。
【０００９】
さらに、上で述べた移動距離集計ステップにおいて、時系列位置データに基づいて、移動体毎に、新規経路移動距離と既に通過したことのある同一経路移動距離とを、予め定められた重みにて加算するような構成も可能である。例えば、新規経路移動距離×Ａ＋同一経路移動距離×Ｂといった計算にて移動距離を集計する。ここで、ＡとＢは重み付けであって、例えばＡ＝１でＢ＝０とするような構成であってもよい。広範囲の道路データを均等に得た方が地図データの修正に役立つためである。
【００１０】
さらに、時系列位置データ格納部に格納された時系列位置データに基づいて、道路の所定区間毎の移動体数を所定の時間帯について計数し、記憶装置に格納するステップ（例えば実施の形態におけるステップＳ９１：図１４）をさらに含むような構成も可能である。これにより、道路ごとに交通量を把握し、時間による変動量なども計算することができるようになる。
【００１１】
なお、代表値には単純平均、加重平均などによる平均値、あるいは中央値または最頻値など統計処理において使用される、分布の中心的傾向をあらわす値を用いる。
【００１２】
また、本発明の地図データ修正方法は、当該地図データ修正方法を実施するためのプログラムにて実装することができ、この場合、当該プログラムは、例えばフロッピー・ディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、当該プログラムはネットワークを介して送信されることもある。なお、処理途中のデータについては、コンピュータのメモリに一時保管される。
【００１３】
【発明の実施の形態】
図１に本発明の一実施の形態に係るシステム概要図を示す。例えば自動車である複数の移動体１は、例えばＧＰＳ（Global Positioning System）衛星５からの信号等を用いて自分の位置を時間経過と共に測定する位置情報取得部１１と、当該位置情報取得部１１により取得された位置情報を時系列的に格納する走行経路データ・ファイル１５と、当該走行経路データ・ファイル１５の内容を定期的又は不定期に送信する送信部１３とを含む。なお移動体１は自動車に限定されず、例えば自転車や、少なくとも位置情報取得部１１及び走行経路データ・ファイル１５を備える装置を保持した人間であってもよい。また、送信部１３は携帯電話機やＰＨＳ（Personal Handyphone System）電話機に接続して情報を送信するものであっても良い。
【００１４】
本実施の形態では、移動体１の送信部１３が走行経路データ・ファイル１５内の情報を無線にて無線基地局７に送信し、無線基地局７が公衆回線網９などの有線ネットワークを介してセンタ・サーバ３に転送する構成となっている。
【００１５】
しかし、移動体１の送信部１３から走行経路データ・ファイル１５内の情報を直接センタ・サーバ３に送信するような構成であってもよいし、無線基地局７からセンタ・サーバ３への送信も有線ではなく、無線通信にて行うような構成であってもよい。さらに、移動体１に何らかの記録媒体に対して読み書きを実施することができる装置が含まれている場合には、当該記録媒体に走行経路データ・ファイル１５の情報を書き込み、当該記録媒体をセンタ・サーバ３を運用しているセンタ運用者に郵送するような構成であってもよい。また、移動体１からセンタ・サーバ３に送信するのではなく、記録媒体に記憶された走行経路データ・ファイル１５の情報を他のコンピュータに読み込ませ、当該他のコンピュータからセンタ・サーバ３に送信するような構成であっても良い。さらに、ＧＰＳは一例であって、他の方法にて位置情報を測定する構成であってもよい。
【００１６】
センタ・サーバ３は、例えば公衆回線網９を介して各移動体１から送られてきた走行経路データ（時系列位置データ）を受信し、走行経路ＤＢ３２に登録する受信部３１と、各移動体１から送られてきた走行経路データを格納する走行経路ＤＢ３２と、道路の各地点の位置情報等を格納する地図データＤＢ３４と、地図データＤＢ３４中の各地点の位置データとマップマッチングにより得られ且つ走行経路ＤＢ３２中の対応する位置データとを比較する比較部３３と、比較部３３の比較結果をもって道路の各地点の位置データを修正する修正部３５とを含む。これらの処理部にて地図データの修正を行うことができる。
【００１７】
また、センタ・サーバ３は、走行経路ＤＢ３２を参照して各移動体１の走行実績データを生成し、走行実績データ・ファイル５２に格納する走行距離処理部５１と、走行距離処理部５１により生成された各移動体１の走行実績データを格納する走行実績データ・ファイル５２と、走行実績データ・ファイル５２を参照して各移動体１の累積走行距離データを生成し、累積走行距離データ・ファイル５４に格納する走行距離累積部５３と、走行距離累積部５３により生成された各移動体１の累積走行距離データを格納する累積走行距離データ・ファイル５４と、累積走行距離データ・ファイル５４を参照して移動体１のユーザ等に対するサービスのための処理を実施するユーザ・サービス処理部５５とを含む。これにより、各移動体のユーザに対する特典を付与するための処理を実施することができる。
【００１８】
さらに、センタ・サーバ３は、走行実績データ・ファイル５２を参照して各道路の区間についての交通量を例えば１時間単位で集計し、交通量データ・ファイル７３に格納する走行実績処理部７１と、走行実績処理部７１により集計された交通量データを格納する交通量データ・ファイル７３と、交通量データ・ファイル７３を参照して所定の単位で交通量データをまとめる交通量処理部７５とを含む。これにより、道路や時間ごとの交通量を把握又は推測することができるようになる。
【００１９】
センタ・サーバ３は、１台のコンピュータで上記のような機能を実現しても良いし、複数台のコンピュータにて上記のような機能を実現しても良い。また、コンピュータ・プログラムと通常のコンピュータ・ハードウエアの組み合わせにて実現しても良いし、専用の電子回路などを組み合わせて実現しても良い。
【００２０】
次に、各移動体１における処理を図２を用いて説明する。移動体１の位置情報取得部１１は、移動体１が移動し始めると自動的に又は移動体１のユーザによる指示に応じて、走行中の位置情報を定期的に取得し、走行経路データ・ファイル１５に時刻情報と共に登録する（ステップＳ１）。走行経路データ・ファイル１５に格納されるデータ・フォーマットは例えば図３のようになる。すなわち、移動体コードと、時刻（年月日時分秒：yyyymmddhhmmss）と、その時点の緯度（度）、経度（度）、高度（ｍ）の情報を含む。さらに、経度誤差（度）、緯度誤差（度）及び高度誤差（ｍ）の情報も取得され、走行経路データ・ファイル１５に登録される。これらの誤差情報は、移動体１が取得している位置情報のぶれの範囲を示すデータである。
【００２１】
そして、送信部１３による送信タイミングに達したかを判断する（ステップＳ３）。この送信タイミングは任意であって、例えば１日に１回であってもよいし、１週間に一回でもよい。また、自動的に送信タイミングを決定せずとも移動体１のユーザが指示した送信タイミングに従うようにしても良い。もし、送信タイミングでなければステップＳ７に移行する。一方、送信タイミングであると判断された場合には、送信部１３は、未送信の位置情報及び時刻情報を送信する（ステップＳ５）。誤差情報も合わせて送信する。そして、このような処理を処理終了まで繰り返す（ステップＳ７）。但し、処理終了も移動体１のユーザに指示された場合に処理終了と判断しても良いし、移動体１の移動が所定時間以上止まった場合に処理を自動的に終了させるようにしても良い。
【００２２】
また、走行経路データ・ファイル１５のデータは、送信部１３により送信されると全て削除されるような構成であってもよいし、どのデータまで送信されたのかという情報を追加して、移動体１の記憶容量が許す限り蓄積するような構成であってもよい。
【００２３】
このようにして送信部１３により送信された位置情報及び時刻情報並びに誤差情報は無線基地局７、公衆回線網９などを介してセンタ・サーバ３に転送される。
【００２４】
次に、センタ・サーバ３における処理を図４乃至図１５を用いて説明する。最初に、地図データの修正処理について図４乃至図７を用いて説明する。センタ・サーバ３の受信部３１は、各移動体１からの位置情報及び時刻情報を受信し、走行経路ＤＢ３２に登録する（ステップＳ１１）。また、誤差情報も受信して走行経路ＤＢ３２に登録する。走行経路ＤＢ３２には例えば図３と同様のデータが格納される。次に、比較部３３は、道路の各基準点について、受信した（走行経路ＤＢ３２に格納された）位置情報と地図データＤＢ３４中の位置情報との差（Δｒ）を計算する（ステップＳ１３）。この処理については図５を用いて説明する。
【００２５】
例えば地図データＤＢ３４に登録されているある道路は図５に示したようにＡ−Ｂ−Ｃの形状（点線で示す）を有していたとする。一方、走行経路ＤＢ３２に格納された位置情報及び時刻情報とから走行経路はＡ−Ｂ'−Ｃ'であったとする。このように地図データＤＢ３４に登録されている道路Ａ−Ｂ−Ｃは実際はＡ−Ｂ'−Ｃ'であるかもしれない。そこで、道路に設けられた各基準点（図５の例ではＸ。例えば１Ｋｍ毎に設けられる。）に対応する走行経路上の点をマップマッチング技術により求める。図５の例ではＸに対応する点はＸ'である。マップマッチング技術は、周知の技術でありここではこれ以上述べない。なお、Ｘ'における位置情報は、そのものが走行経路ＤＢ３２に含まれていない場合には、周囲の位置情報の補間等により計算される。
【００２６】
そして、比較部３３はΔｒ＝Ｘ−Ｘ'を計算する。なお、Ｘはある座標系で表したＸの位置ベクトルであり、Ｘ'は同じ座標系で表したＸ'の位置ベクトルである。Δｒについては、地球固定座標系で表すとΔｘ、Δｙ、Δｚという形になる。比較部３３は、各移動体１からの位置情報及び時刻情報から上のような計算を行って、道路の各基準点について図６のようなデータを生成する。すなわち、各道路基準点（経度（度）及び緯度（度）で指定される点）につき、例えば走行回数（同一移動体だけでなく異なる移動体についての走行も含む）を表すシリアル番号及びその時のΔｘ、Δｙ、Δｚとが含まれる。
【００２７】
なお、誤差情報が所定の閾値を超える場合には、ステップＳ１１で走行経路ＤＢ３２に位置情報及び時刻情報を登録しないような構成や、ステップＳ１３における計算対象から除外するような構成も可能である。このようにすれば、誤差がある値より大きい場合、すなわち移動体１が取得した位置情報の品質が悪い時のデータを排除することができるようになる。
【００２８】
次に、修正部３５は、比較部３３が計算した図６のようなデータのうち各道路基準点につき全ての差をΔｘ、Δｙ、Δｚ毎に加算して、Δｘの累積値をΔｘの個数（シリアル番号の最大値）、Δｙの累積値をΔｙの個数（シリアル番号の最大値）、Δｚの累積値をΔｚの個数（シリアル番号の最大値）で除算を行う（ステップＳ１５）。除算の結果はΔｘ、Δｙ、Δｚの平均値ということになる。この平均値は、地図データが正確であって且つ移動体１の位置情報取得部１１により取得された位置情報がある誤差をもってガウス分布に従ってばらついていると仮定すれば０に近い値となるであろう。ところが、地図データが不正確であると、Δｘ、Δｙ、Δｚの平均値は０からはずれると予測される。すなわち、図７（ａ）に示すように、地図データが正確であればΔｘ（Δｙ及びΔｚも同様）は０を中心としたガウス分布をとる。しかし、地図データが不正確であれば、Δｘは、Δｘの平均値だけ０からずれた点を中心としたガウス分布をとる。よって、Δｘの平均値を修正量とすれば、地図データを正確な値に修正できる。なお、Δｘ、Δｙ、Δｚのそれぞれについて平均値からのばらつき（標準偏差σx，σy，σy）も計算する。場合によっては、平均値ではなく、中央値、最頻値など統計処理において使用される、分布の中心的傾向を表す値を計算する場合もある。
【００２９】
よって修正部３５は、所定の基準（本例では０）を超える、差Δｘ、Δｙ、Δｚの平均値を有する基準点について、差Δｘ、Δｙ、Δｚの平均値でもって地図データＤＢ３４内の地図データを修正し、修正後の地図データを地図データＤＢ３４に登録する（ステップＳ１７）。なお、Δｘ，Δｙ，Δｚの平均値が標準偏差σx，σy，σyを超える場合には、地図データを修正するような構成にしてもよい。また、平均値を基準にしたり、平均値で修正するのではなく、中央値や最頻値等の分布の中心的傾向をあらわす値にて修正を行っても良い。
【００３０】
このようにして、複数の移動体１により計測された位置情報に基づき、センタ・サーバ３により地図データＤＢ３４の地図データを修正することができる。なお、修正した地図データを移動体１に送信するような構成であってもよい。また、本実施の形態では、１つの移動体からの位置情報に基づき計算された、地図データと走行データとの差に基づき修正を行うわけではなく、複数の移動体からの位置情報に基づき、各位置情報に含まれる誤差を相殺するような処理を実施するため、より正確な修正量を計算することができ、より正確な地図データを得ることができるようになる。
【００３１】
次に図８乃至図１３を用いて移動体１のユーザに対する特典付与のための処理を説明する。図８は前処理を示している。まず、走行距離処理部５１は、各移動体１について走行経路及び距離を計算する（ステップＳ２１）。本実施の形態において走行距離処理部５１は、単純に移動体１の走行距離を計算するのではなく、なるべく多くの道路を走行してもらい、多くの道路についての情報を取得するため、例えば同じ道路を２度以上走行しても、２度目以降の分については累積走行距離には含まれないようにするための処理を実施する。但し、２度目以降の分については１度目より短く換算して累積するような構成であってもよい。より一般的には、新規経路か既に計測した経路かを判断し、それぞれの重み付けで集計するような構成であってもよい。ステップＳ２１における処理の詳細については図１１を用いて説明する。そして、ステップＳ２１の計算結果は、走行実績データ・ファイル５２に登録される。
【００３２】
走行実績データ・ファイル５２のデータ・フォーマットは例えば図９のようなものである。すなわち、移動体コードごとに、道路識別情報（道路番号）、走行日（年月日時：yymmddhh）、開始位置（Ｆｒｏｍ（経度））、開始位置（Ｆｒｏｍ（緯度））、移動先位置（ｔｏ（経度））、移動先位置（Ｔｏ（緯度））、距離、及びフラグを格納するようになっている。このように、本実施の形態では、道路番号が変われば行を変えて記録するようになっている。また、フラグの列には、以前に走行したことがある道路の区間であれば０を格納し、以前に走行したことがない道路の区間であれば１を格納するようになっている。よって、同じ道路番号であっても過去に走行したことのある区間であればフラグの列に０を格納し、過去に走行したことのない区間に入れば行を変えてフラグの列に１を格納するようにする。逆に、同じ道路番号であっても過去に走行したことのない区間を走行していればフラグの列に１を格納し、過去に走行したことのある区間に入れば行を変えてフラグの列に０を格納するようになっている。後の処理で計算を簡単にするために、距離の欄にはフラグが１である行のみに走行距離を格納するようにする。
【００３３】
走行距離累積部５３は、走行実績データ・ファイル５２を参照して、各移動体１について走行距離を累積し、累積走行距離を累積走行距離データ・ファイル５４に登録する（ステップＳ２３）。累積走行距離データ・ファイル５４のデータフォーマットの一例を図１０に示す。このように移動体コードと累積走行距離のデータが対になって格納される。後に説明するが、ユーザ・サービス処理部５５は、例えばユーザの端末からの各種問い合わせに対して累積走行距離データ・ファイル５４を基に応答データを作成して、ユーザの端末に返信する。
【００３４】
次に図１１を用いてステップＳ２１の詳細を説明する。まず、最初の２つの位置情報を走行経路ＤＢ３２から取得して走行している道路の道路番号を特定し、走行実績データ・ファイル５２の１つの行に登録する（ステップＳ３１）。そして、開始位置（Ｆｒｏｍ）及び移動先位置（Ｔｏ）を、道路番号を登録した行に登録する（ステップＳ３３）。
【００３５】
そして当該道路番号の区間を以前に走行したことがあるかを判断する（ステップＳ３５）。もし、走行したことのある区間であれば、ステップＳ５３に移行する。一方、走行したことのない区間である場合には、処理を終了するかを判断する（ステップＳ３７）。処理を終了すると判断された場合には、そのまま処理を終了して図８のステップＳ２３に移行する。一方、処理を終了しないと判断された場合には、次の位置情報を走行経路ＤＢ３２から取得する（ステップＳ３９）。そして、既に登録されている移動先位置から今回取得した位置情報までの区間が以前に走行したことのある区間か否かを判断する（ステップＳ４１）。
【００３６】
もし、以前に走行したことのある区間である場合には（ステップＳ４１：Ｙｅｓルート）、走行したことのない区間から走行したことのある区間に移行したことになる。よって、走行実績データ・ファイル５２において行を変更しなければならないので、処理はステップＳ４７に移行する。一方、依然走行したことのない区間である場合には（ステップＳ４１：Ｎｏルート）、道路番号が変化したか判断する（ステップＳ４３）。道路番号が変化した場合には（ステップＳ４３：Ｙｅｓルート）、走行実績データ・ファイル５２において行を変更しなければならないので、ステップＳ４７に移行する。一方、道路番号が変化していない場合には（ステップＳ４３：Ｎｏルート）、行を変更する必要が無く、取得した位置情報を移動先情報（Ｔｏ）として走行実績データ・ファイル５２の現在の行を更新する（ステップＳ４５）。そしてステップＳ３７に戻る。
【００３７】
行を変更しなければならない場合（ステップＳ４１：Ｙｅｓルート及びステップＳ４３：Ｙｅｓルート）、走行実績データ・ファイル５２における現在行の移動先位置（Ｔｏ）を既に走行した区間の開始位置（取得した位置情報と同じではない場合もある。この場合には既に登録されている移動先情報と今回取得した位置情報までの区間に含まれる位置）に更新する（ステップＳ４７）。そして、走行実績データ・ファイル５２におけるフラグを１にセットする（ステップＳ４９）。さらに、走行距離を地図データＤＢ３４を参照して計算し、現在行の距離の欄に格納する（ステップＳ５１）。そして、ステップＳ３１に戻る。ステップＳ３１では、道路番号が変更になっていなければ前の行の道路番号を特定して、新たな行に登録する。一方、道路番号が変更になっていれば変更後の道路番号を特定して新たな行に登録する。また、ステップＳ３３では、前の行の移動先位置（Ｔｏ）を開始位置（Ｆｒｏｍ）として現在行に登録し、ステップＳ３９で取得した次の移動先情報を移動先位置（Ｔｏ）として現在行に登録する。以下同様の処理を実施する。
【００３８】
また、ステップＳ３５においてステップＳ５３に移行するものと判断された場合にも、まず処理を終了するかを判断する（ステップＳ５３）。処理を終了すると判断された場合には、そのまま処理を終了して図８のステップＳ２３に移行する。一方、処理を終了しないと判断された場合には、次の位置情報を走行経路ＤＢ３２から取得する（ステップＳ５５）。そして、既に登録されている移動先位置から今回取得した位置情報までの区間が以前に走行したことのある区間か否かを判断する（ステップＳ５７）。
【００３９】
もし、以前に走行したことのない区間である場合には（ステップＳ５７：Ｎｏルート）、走行したことのある区間から走行したことのない区間に移行したので、走行実績データ・ファイル５２において行を変更しなければならない。よって、処理はステップＳ６３に移行する。一方、依然走行したことのある区間である場合には（ステップＳ５７：Ｙｅｓルート）、道路番号が変化したか判断する（ステップＳ５９）。道路番号が変化した場合には（ステップＳ５９：Ｙｅｓルート）、走行実績データ・ファイル５２において行を変更しなければならないので、ステップＳ６３に移行する。一方、道路番号が変化していない場合には（ステップＳ５９：Ｎｏルート）、行を変更する必要が無く、取得した位置情報を移動先情報（Ｔｏ）として走行実績データ・ファイル５２の現在の行を更新する（ステップＳ６１）。そしてステップＳ５３に戻る。なお、以前に走行したことのある経路についても、当該経路に対する重みをかけたものを距離の欄に登録するような構成であってもよい。
【００４０】
行を変更しなければならない場合（ステップＳ５７：Ｎｏルート及びステップＳ５９：Ｙｅｓルート）、走行実績データ・ファイル５２における現在行の移動先位置（Ｔｏ）を以前に走行したことのない区間の開始位置（取得した位置情報と同じではない場合もある。この場合には既に登録されている移動先情報と今回取得した位置情報までの区間に含まれる位置）に更新する（ステップＳ６３）。そして、走行実績データ・ファイル５２におけるフラグを０にセットする（ステップＳ６５）。今回は、累積対象の走行ではないので、距離の計算は行なわない。そして、ステップＳ３１に戻る。ステップＳ３１では、道路番号が変更になっていなければ前の行の道路番号を特定して、新たな行に登録する。一方、道路番号が変更になっていれば変更後の道路番号を特定して新たな行に登録する。また、ステップＳ３３では、前の行の移動先位置（Ｔｏ）を開始位置（Ｆｒｏｍ）として現在行に登録し、ステップＳ５５で取得した次の移動先情報を移動先位置（Ｔｏ）として現在行に登録する。以下同様の処理を実施する。
【００４１】
このようにすれば、図１０で述べたような走行実績データ・ファイル５２を生成することができるようになる。この走行実績データ・ファイル５２が生成されれば、走行距離累積部５３は、距離の列の数字を全て加算することにより、累積走行距離を簡単に得ることができるようになる。なお、以前に走行したことのある経路についても、当該経路に対する重みをかけたものを距離の欄に登録するような構成の場合には、（新規経路走行距離（フラグが１の累積走行距離））×１．０（重み）＋（既に走行したことのある経路の走行距離（フラグが０の累積走行距離））×０．５（重み）といった計算にて累積走行距離を計算するような構成も可能である。１．０や０．５は一例である。既に走行したことのある経路についても地図修正のためのデータとしては役に立っており、通勤等で車を使用する人などに大きなインセンティブを与えることになり、より多くのデータ収集ができるようになる。
【００４２】
次に図１２を用いてユーザに特典を与えるための処理の一例を説明する。この処理はセンタ・サーバ３のユーザ・サービス処理部５５とユーザの端末（図示せず。例えばパーソナル・コンピュータ、携帯電話機、携帯端末等の装置）とのデータのやり取りの例である。この場合、ユーザ・サービス処理部５５は例えばウェブ（Ｗｅｂ）サーバ機能を有しており、ユーザの端末はＷｅｂブラウザ機能を有しているものとする。なお、ここではコンピュータ間のやり取りを示すが、例えばユーザが電話を用いて依頼を出したり、情報を得たり、申し込みを行ったりするような構成であってもよい。この場合、例えばユーザ・サービス処理部５５は自動音声応答機能を有している場合もある。
【００４３】
まず、ユーザはユーザ端末を操作して、移動体コードを含む累積走行距離確認依頼をユーザ・サービス処理部５５に送信する（ステップＳ７１）。これに対してユーザ・サービス処理部５５は、移動体コードを含む累積走行距離確認依頼を受信し（ステップＳ７３）、累積走行距離データ・ファイル５４を参照して、受信した移動体コードに対応する累積走行距離データを取得する（ステップＳ７５）。そして、当該累積走行距離データを用いてサービス提供ランク・テーブルを参照して、サービス・ランクを特定する（ステップＳ７７）。サービス提供ランク・テーブルの一例を図１３に示す。ここでは５００ＫｍまではＡランク、５０１Ｋｍから１０００ＫｍまではＢランク、１００１Ｋｍから２０００ＫｍまではＣランク、２００１Ｋｍから４０００ＫｍまではＤランク、４００１Ｋｍから１００００ＫｍまではＥランク、１０００１Ｋｍ以降はＦランクというランク分けになっている。
【００４４】
ユーザ・サービス処理部５５は、取得した累積走行距離データ及び特定されたランク情報をユーザ端末に送信する（ステップＳ７９）。ユーザ端末は、ユーザ・サービス処理部５５から累積走行距離データ及びランク情報を受信し、表示装置に表示する（ステップＳ８１）。これにてユーザは、自己の累積走行距離を確認することができ、且つ享受できるサービスのランクを知ることができるようになる。
【００４５】
ここでサービスとは、例えばランクに応じたキャッシュバック（電子マネーの場合も含む）、ランクに応じた量のガソリン提供、ランクに応じた金券の提供、最新電子地図データの提供、ランクに応じた割引の提供等である。但し本実施の形態はこれらに限定されるものではない。
【００４６】
もし、ユーザがこの時点でセンタからのサービス提供を希望する場合には、ユーザ端末を操作してサービス享受申込をユーザ・サービス処理部５５に送信する（ステップＳ８３）。センタ・サーバ３のユーザ・サービス処理部５５は、ユーザ端末からサービス享受申込を受信し（ステップＳ８５）、サービス提供のための処理を実施する（ステップＳ８７）。例えば、キャッシュバックの場合にはユーザの銀行口座への振込のための処理、金券の提供の場合にはユーザへの発送のための処理、割引の提供の場合には割引券などの発送のための処理等を実施する。センタの運営者は、測量調査を実施せずとも、ユーザの移動体１から多くの位置情報が自動的・継続的に取得することができ、安価に地図データの修正を実施することができるようになる。この浮いた費用の一部をユーザに提供するものである。このようにして、ユーザは位置情報収集の対価としてサービスを得ることができるため、多くのユーザがこのシステムに参加するようになる。
【００４７】
なお図１２の説明では、累積走行距離のみを提供する例を示したが、例えば走行経路ＤＢ３２の情報や走行実績データ・ファイル５２の情報をユーザ・サービス処理部５５から提供するような構成であってもよい。また、いろいろなサービス等を提供する場合には、ユーザ・サービス処理部５５からサービス提供選択画面の情報を送信してユーザ端末に表示させ、ユーザにより選択されたサービスの情報をユーザ・サービス処理部５５が受信し、当該選択サービスを提供するための処理を実施するような構成であってもよい。
【００４８】
次に、図１４及び図１５を用いて、交通量データを集計する処理について説明する。走行実績処理部７１は、走行実績データ・ファイル５２を参照して、道路の区間単位で１時間毎の通行台数をカウントし、交通量データ・ファイル７３に登録する（ステップＳ９１）。例えば走行実績データ・ファイル５２において、所定の道路番号で且つ所定の開始位置（又はその範囲）及び移動先位置（又はその範囲）を含む行数をカウントする。交通量データ・ファイル７３の例を図１５に示す。ここでは、日時（年月日時間：yymmddhh）毎に、道路番号、区間番号、１時間当りの通行台数が格納されるようになっている。
【００４９】
そして、交通量処理部７５は、特定の時間単位又は道路の区間単位で交通量（移動体１の台数）を集計し、記憶装置に格納する（ステップＳ９３）。例えば、特定の時間帯毎、季節毎や、道路の区間毎に集計する。集計単位については、予め設定しておく。但し、図１４の処理はバッチ処理でよいので、センタ運営者の必要な情報を得られるような設定を予め行っておく。交通量処理部７５は、センタ運営者からの要求に応じて対応するデータを出力する（ステップＳ９５）。要求に応じてではなく、自動的に出力するような構成とすることも可能である。さらに、集計するだけでなく、集計結果から実際の交通量を所定のルールに従って推測するような構成であってもよい。また、センタ運営者に出力するだけでなく、ユーザからの要求に対応して出力するような構成であってもよい。
【００５０】
このようにすれば、混雑状況（渋滞など）を予測したり、道路の拡張計画立案、店舗の出店計画立案など様々な用途に用いることができるようになる。
【００５１】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば走行実績データ・ファイル５２は上で述べたように開始位置及び移動先位置並びに距離のみを記録するような構成となっているが、速度や加速度の情報をさらに計算し、格納するような構成も可能である。このようにすれば運行中に発生する急ブレーキ等の異常状態を、発生した位置と合わせて取得することができるようになり、道路の特定位置での通行上の危険を推測することも可能となる。山間部であれば、道路の通行難易度（整備度合い）を推測することも可能となる。このように、走行経路ＤＢ３２に格納されたデータを用いて又はさらに多くのデータを移動体１から収集してより複雑な処理を実施する場合もある。
【００５２】
（付記１）
複数の移動体により計測された時系列位置データを取得して、時系列位置データ格納部に格納する取得ステップと、
地図データ格納部に格納された地図データ中の所定の位置と当該地図データ中の所定の位置に対応し且つ前記時系列位置データ格納部に格納された時系列位置データから得られる位置との差を計算するステップと、
前記地図データ中の所定の位置毎に前記差の代表値を計算するステップと、
前記差の代表値が所定の基準を超える場合には、前記地図データ中の所定の位置を前記差の代表値を用いて修正し、修正後の位置データを前記地図データ格納部に格納するステップと、
を含む地図データ修正方法。
【００５３】
（付記２）
前記時系列位置データ格納部に格納された時系列位置データに基づいて、移動体毎に移動距離を集計する移動距離集計ステップと、
集計された前記移動距離に基づき、当該移動体の保持者に対し所定の特典を付与するための処理を実施するステップと、
をさらに含む付記１記載の地図データ修正方法。
【００５４】
（付記３）
前記移動距離集計ステップにおいて、
前記移動距離に対して新規経路か既に計測した経路かを判断し、それぞれの重み付けで集計する
ことを特徴とする付記２記載の地図データ修正方法。
【００５５】
（付記４）
前記時系列位置データ格納部に格納された時系列位置データに基づいて、道路の所定区間毎の移動体数を所定の時間帯について計数するステップ、
をさらに含む付記１乃至３のいずれか１つ記載の地図データ修正方法。
【００５６】
（付記５）
前記時系列位置データ格納部に格納された時系列位置データから、移動体毎に、当該移動体が移動した道路の識別情報、移動時刻情報、移動開始位置、移動終了位置情報、及び移動距離情報を計算するステップ
をさらに含む付記１乃至４のいずれか１つ記載の地図データ修正方法。
【００５７】
（付記６）
前記取得ステップにおいて、
前記複数の移動体により計測された時系列位置データの誤差情報を取得し、
前記差を計算するステップにおいて、
前記誤差情報が所定の条件を満たす場合には、対応する時系列位置データを計算対象外とする
ことを特徴とする付記１乃至５のいずれか１つ記載の地図データ修正方法。
【００５８】
（付記７）
複数の移動体により計測された時系列位置データを取得して、時系列位置データ格納部に格納する手段と、
地図データ格納部に格納された地図データ中の所定の位置と当該地図データ中の所定の位置に対応し且つ前記時系列位置データ格納部に格納された時系列位置データから得られる位置との差を計算する手段と、
前記地図データ中の所定の位置毎に前記差の代表値を計算する手段と、
前記差の代表値が所定の基準を超える場合には、前記地図データ中の所定の位置を前記差の代表値を用いて修正し、修正後の位置データを前記地図データ格納部に格納する手段と、
を有する地図データ修正装置。
【００５９】
（付記８）
コンピュータに、
複数の移動体により計測された時系列位置データを取得して、時系列位置データ格納部に格納するステップと、
地図データ格納部に格納された地図データ中の所定の位置と当該地図データ中の所定の位置に対応し且つ前記時系列位置データ格納部に格納された時系列位置データから得られる位置との差を計算するステップと、
前記地図データ中の所定の位置毎に前記差の代表値を計算するステップと、
前記差の代表値が所定の基準を超える場合には、前記地図データ中の所定の位置を前記差の代表値を用いて修正し、修正後の位置データを前記地図データ格納部に格納するステップと、
を実行させるための地図データ修正プログラム。
【００６０】
（付記９）
コンピュータに、
複数の移動体により計測された時系列位置データを取得して、時系列位置データ格納部に格納するステップと、
地図データ格納部に格納された地図データ中の所定の位置と当該地図データ中の所定の位置に対応し且つ前記時系列位置データ格納部に格納された時系列位置データから得られる位置との差を計算するステップと、
前記地図データ中の所定の位置毎に前記差の代表値を計算するステップと、
前記差の代表値が所定の基準を超える場合には、前記地図データ中の所定の位置を前記差の代表値を用いて修正し、修正後の位置データを前記地図データ格納部に格納するステップと、
を実行させるための地図データ修正プログラムを格納した記録媒体。
【００６１】
【発明の効果】
以上述べたように、本発明により地図データを精度良く修正することができる。
【００６２】
また、位置情報を提供するユーザに対して特典を与えることができるため、より多くの位置情報を取得することができるようになる。さらに、多様な交通データを利用できるようになる。
【図面の簡単な説明】
【図１】  本発明の一実施の形態に係るシステムの概要を示す図である。
【図２】  移動体における処理フローを示す図である。
【図３】  走行経路データ・ファイルのデータ・フォーマットの一例を示す図である。
【図４】  地図データ修正のための処理フローを示す図である。
【図５】  地図データと走行データの対応関係を表す模式図である。
【図６】  比較部における処理結果の一例を示す図である。
【図７】  地図データ修正の原理を説明するための図である。（ａ）は地図データが正確である場合の例、（ｂ）は地図データが不正確な場合の例を示す。
【図８】  各移動体の走行距離を累積するための処理フローを示す図である。
【図９】  走行実績データ・ファイルのデータ・フォーマットの一例を示す図である。
【図１０】  累積走行距離データ・ファイルのデータ・フォーマットの一例を示す図である。
【図１１】  走行実績データ・ファイルの生成処理フローを示す図である。
【図１２】  ユーザ・サービス処理部の処理を説明するための図である。
【図１３】  サービス提供ランク・テーブルの一例を示す図である。
【図１４】  交通量計算処理フローを示す図である。
【図１５】  交通量データ・ファイルのデータ・フォーマット例を示す図である。
【図１】
0004297626.tif 000002
【図２】
0004297626.tif 000003
【図３】
0004297626.tif 000004
【図４】
0004297626.tif 000005
【図５】
0004297626.tif 000006
【図６】
0004297626.tif 000007
【図７】
0004297626.tif 000008
【図８】
0004297626.tif 000009
【図９】
0004297626.tif 000010
【図１０】
0004297626.tif 000011
【図１１】
0004297626.tif 000012
【図１２】
0004297626.tif 000013
【図１３】
0004297626.tif 000014
【図１４】
0004297626.tif 000015
【図１５】
0004297626.tif 000016