上記のデータ更新システムでは、交通情報等の比較的情報量が少ないデータの更新を行うシステムである。そのため、サーバ装置(センタ装置)側において上記のように差分データを生成して端末装置に送信すれば、端末装置側では、既存のデータを差分データに書き換えること等により、比較的容易にデータの更新を行うことが可能である。
しかしながら、ナビゲーション装置において用いる道路ネットワークデータを含む地図データベース等のように、データ量が多く、更に各データ同士が複雑に関連しているデータベースの更新を行う場合には、受信した差分データを用いてデータベースを更新することは容易ではない。すなわち、そのような複雑なデータでは、一つのデータを変更するために関連して変更が必要となるデータの数が多くなるため、差分データに含まれるデータ数も多くなる。また、そのような差分データに基づいてデータベースを更新するためには、差分データに含まれる多数のデータに対応する更新前のデータを、データ量が多いデータベースの中から抽出する必要がある。この際、例えば、道路ネットワークデータを格納したデータベースを更新する場合には、各データが道路ネットワークの接続順に配列されているため、差分データに含まれる各データを容易に抽出することができないため、端末装置における更新処理が非常に複雑で時間を要するものになるという問題があった。したがって、これまでは、ナビゲーション装置において用いる地図データベース等の複雑なデータベースの更新に際しては、差分更新を行わずに全データを書き換えて更新することが一般的であった。しかし、そのような方法では、更新のために必要なデータ量が膨大になるため、通信ネットワーク等を介して端末装置に更新用データを送信することが困難となる。したがって、頻繁にデータを更新することが容易でなく、高鮮度のデータを継続的に端末装置に提供することが困難であるという問題があった。
そこで、例えばナビゲーション装置において、地図データベースの更新を容易にするために、更新用のデータベースを備える構成とした場合、動作プログラムにより参照される通常の地図データベースと並存させる構成とすると、ナビゲーション装置が備えるデータベースの全体のデータ量が必然的に多くなる。しかし、データベースの全体のデータ量が多くなると、ナビゲーション装置に大きな容量の記憶手段を備えることが必要となり、ナビゲーション装置の大型化やコスト上昇等の要因となる場合がある。
一方、ナビゲーション装置の動作プログラムにより参照される通常の地図データベースを備えず、動作プログラムによる参照の都度、更新用のデータベースから読み出したデータを動作プログラムによる参照に適した参照用データ形式に変換する構成とすればデータベース全体としてのデータ量を少なくすることができる。しかし、動作プログラムにより参照する全てのデータを更新用データベースから変換して参照することとすると、そのような変換のための演算処理負荷が大きくなり、ナビゲーション装置の動作速度の低下等の問題が生じうる。
本発明は、上記の課題に鑑みてなされたものであり、その目的は、例えば道路ネットワークデータを含む地図データベース等のように、データ量が多く、各データ同士が複雑に関連しているデータベースの差分更新を容易に行うことを可能としつつ、ナビゲーション装置が備えるデータベースの全体のデータ量を比較的少なく抑えることが可能であり、更に、ナビゲーション装置の動作性能の低下を抑えることができるデータ更新システム、及びそのデータ更新システムに用いられる端末装置、並びにデータ更新方法を提供することにある。
上記目的を達成するための本発明に係る、所定の動作プログラムに従って動作するナビゲーション装置と、このナビゲーション装置にデータベース更新用の更新データファイルを提供するサーバ装置とを有するデータ更新システムの特徴構成は、前記サーバ装置が、前記ナビゲーション装置に提供するための前記更新データファイルを出力する更新データファイル出力手段を備え、前記ナビゲーション装置が、前記動作プログラムに含まれるアプリケーションプログラムにより参照される参照用データ形式の地図データベースである参照データベースと、前記更新データファイルにより更新可能であって前記参照用データ形式とは異なる更新用データ形式の地図データベースであるローカル保存データベースと、を備えるとともに、前記アプリケーションプログラムに必要な地図データが前記参照データベースに格納されているか否かに応じて前記動作プログラムの1つである参照先決定プログラムが当該地図データの参照先を前記ローカル保存データベースに決定した際に、当該地図データを前記ローカル保存データベースから読み出すデータ読出手段と、前記データ読出手段により読み出された前記地図データを前記参照用データ形式に変換する変換手段と、前記変換手段により変換された前記地図データが前記アプリケーションプログラムによる前記地図データの利用形態に関する所定の利用条件を満たすか否かを判定する利用条件判定手段と、前記利用条件判定手段により前記利用条件を満たすと判定された前記地図データを前記参照データベースに格納する参照データベース更新手段と、を備える点にある。
この特徴構成によれば、前記ナビゲーション装置が、更新データファイルによる更新に適した更新用データ形式で構成されるローカル保存データベースを備え、このローカル保存データベースを更新データファイルにより更新する構成としているので、データ量が多く、各データ同士が複雑に関連している地図データベースの更新を比較的容易に行うことが可能となる。したがって、更新データファイルにより頻繁にデータを更新することが容易になり、高鮮度のデータを継続的に前記ナビゲーション装置に提供することが可能となる。また、この特徴構成によれば、一旦、前記利用条件を満たす利用形態で利用された地図データは、前記動作プログラムに含まれるアプリケーションプログラムにより参照される参照用データ形式で前記参照データベースに格納され保存される。そのため、そのような前記参照データベースに格納された地図データについては、前記変換手段による変換を行うことなく前記動作プログラムに含まれるアプリケーションプログラムにより参照してナビゲーション装置の動作を行うことができる。したがって、前記動作プログラムに含まれるアプリケーションプログラムにより参照する全ての地図データを利用する度に、前記ローカル保存データベースから読み出して前記変換手段により変換する場合と比較して、前記変換手段による演算処理負荷を軽減でき、前記ナビゲーション装置の動作性能の向上を図ることが可能となる。一方、その他の地図データについては、前記ローカル保存データベースから読み出し、前記変換手段により参照用データ形式に変換して利用する構成となっている。即ち、前記動作プログラムの1つである参照先決定プログラムが、前記アプリケーションプログラムが必要とする地図データが前記参照データベースに格納されているか否かに応じて、当該地図データの参照先を前記ローカル保存データベースに決定した際に、当該地図データが前記ローカル保存データベースから読み出される。したがって、前記動作プログラムに含まれるアプリケーションプログラムにより参照する全ての地図データを、前記参照データベースに格納する場合と比較して、前記ナビゲーション装置が備えるデータベースの全体のデータ量を少なく抑えることが可能となる。
また、前記利用条件は、前記ナビゲーション装置の前記動作プログラムにより、
(A)所定の表示装置への地図表示に利用された地図データ
(B)目的地までの経路探索に利用された地図データ
(C)地点検索、地点設定又は地点登録の際に利用された地図データ、及び
(D)自位置の進行履歴を構成する経路を登録する際に利用された地図データ
から選択される一部、又は全部の中の少なくとも一つに該当する利用条件を備える構成とすると好適である。
また、前記参照データベース更新手段は、前記利用条件を満たす地図データとともに、当該地図データの周辺の所定範囲内の地図データを前記参照データベースに格納する構成とすると好適である。
これらの構成によれば、前記ナビゲーション装置により再度利用される可能性が高い地図データを適切に選択して前記参照データベースに格納することができる。したがって、前記ナビゲーション装置の動作性能の向上とデータベースの全体のデータ量の削減とを、適切に両立させることが可能となる。
また、前記ナビゲーション装置の前記参照先決定プログラムは、前記アプリケーションプログラムが必要とする地図データが前記参照データベースに格納されている場合には、前記アプリケーションプログラムに前記参照データベース内の当該地図データを利用させ、前記アプリケーションプログラムが必要とする地図データが前記参照データベースに格納されていない場合には、前記データ読出手段に対して当該必要な地図データの要求を行う構成とすると好適である。
このように構成すれば、前記利用条件を満たして参照データベースに格納された地図データについては、前記変換手段による変換を行うことなく前記アプリケーションプログラムにより参照してナビゲーション装置の動作を行うことができ、参照データベースに格納されていない地図データのみを変換手段により参照用データ形式に変換して利用することになる。したがって、変換手段による演算処理負荷を軽減してナビゲーション装置の動作性能の向上を図るとともに、ナビゲーション装置が備えるデータベースの全体のデータ量を少なく抑えることが可能となる。
また、一般的なナビゲーション装置の地図データベースの構成に合わせて、本願に係るナビゲーション装置では、前記ローカル保存データベース内に、所定の区画毎に分割された複数の地図データが格納されており、前記動作プログラムは、前記地図データを区画単位で利用する構成とすると好適である。
また、前記参照データベース更新手段は、前記参照データベースに格納されている地図データのうち、所定期間以上利用されなかった地図データを前記参照データベースから削除する構成とすると好適である。
このように構成すれば、一度は前記参照データベースに格納されたが今後利用される可能性が低い地図データを、前記参照データベースから削除することができる。したがって、前記ナビゲーション装置の使用時間が長くなるに従って、前記参照データベースのデータ量が増大することを防止でき、前記ナビゲーション装置が備えるデータベースの全体のデータ量を比較的少なく抑えることが可能となる。
また、前記参照用データ形式は、前記地図データを構成する各データが道路ネットワークの接続順に配列されたデータ形式であり、前記更新用データ形式は、前記地図データを構成する各データがデータ種別順に配列されたデータ形式であると好適である。
このように構成すれば、前記ローカル保存データベースのデータ形式を前記更新データファイルによる更新に適した形式としつつ、前記参照データベースに格納されるデータのデータ形式を、前記ナビゲーション装置の動作プログラムによる参照に適した形式とすることができる。したがって、データ量が多く、更に各データ同士が複雑に関連している道路ネットワークデータの更新を比較的容易に行うことが可能となるとともに、前記動作プログラムの動作への影響を抑制でき、前記ナビゲーション装置の動作性能を確保することが可能となる。
また、前記更新データファイルは、更新の態様として追加、変更、削除の別を表すデータと、更新対象となる部分の地図データを構成するデータとを含み、この更新対象となる部分の地図データを構成する各データがデータ種別順に配列されたデータ形式で構成されていると好適である。
このように構成すれば、更新対象となる実態データが更新態様毎に分けられた上で、前記ローカル保存データベースの更新用データ形式と同様に、データ種別順に配列されたデータ形式となっているので、前記更新データファイルによる前記ローカル保存データベースの更新の処理を比較的容易に行うことが可能となる。
また、前記サーバ装置は、前記ローカル保存データベースと同じ内容を有する対照用ローカル保存データベースと、前記参照データベースの内容に対して追加、変更、削除される内容のデータである新規データの入力を受け付ける新規データ受付手段と、前記対照用ローカル保存データベースと前記新規データとに基づいて前記更新データファイルを生成する更新データファイル生成手段と、を備える構成とすると好適である。
このように構成すれば、前記サーバ装置において、入力された新規データに基づいて、前記端末装置のローカル保存データベースの内容を基準とする更新データファイルを容易に生成することができる。
また、前記サーバ装置は、前記対照用ローカル保存データベースと前記新規データとに基づいて、前記対照用ローカル保存データベースと同じデータ形式であって前記新規データの内容で更新された新ローカル保存データベースを生成する新ローカル保存データベース生成手段を備え、前記更新データファイル生成手段は、前記対照用ローカル保存データベースと前記新ローカル保存データベースとの差分に基づいて前記更新データファイルを生成する構成とすると好適である。
このように構成すれば、前記ナビゲーション装置が備える前記ローカル保存データベースと同じデータ形式の更新前と更新後のデータベースに基づいて更新データファイルを生成するので、前記ローカル保存データベースの更新に適した形式の更新データファイルを比較的容易に生成することができる。
また、本発明に係る、データベース更新用の更新データファイルの提供を受けるとともに、所定の動作プログラムに従って動作するナビゲーション装置の特徴構成は、前記動作プログラムに含まれるアプリケーションプログラムにより参照される参照用データ形式の地図データベースである参照データベースと、前記更新データファイルにより更新可能であって前記参照用データ形式とは異なる更新用データ形式の地図データベースであるローカル保存データベースと、を備えるとともに、前記アプリケーションプログラムに必要な地図データが前記参照データベースに格納されているか否かに応じて前記動作プログラムの1つである参照先決定プログラムが当該地図データの参照先を前記ローカル保存データベースに決定した際に、当該地図データを前記ローカル保存データベースから読み出すデータ読出手段と、前記データ読出手段により読み出された前記地図データを前記参照用データ形式に変換する変換手段と、前記変換手段により変換された前記地図データが前記アプリケーションプログラムによる前記地図データの利用形態に関する所定の利用条件を満たすか否かを判定する利用条件判定手段と、前記利用条件判定手段により前記利用条件を満たすと判定された前記地図データを前記参照データベースに格納する参照データベース更新手段と、を備える点にある。
この特徴構成によれば、更新データファイルによる更新に適した更新用データ形式で構成されるローカル保存データベースを備え、このローカル保存データベースを更新データファイルにより更新する構成としているので、データ量が多く、各データ同士が複雑に関連している地図データベースの更新を比較的容易に行うことが可能となる。したがって、更新データファイルにより頻繁にデータを更新することが容易になり、高鮮度のデータの継続的な提供を受けることが可能となる。また、この特徴によれば、一旦、前記利用条件を満たす利用形態で利用された地図データは、前記動作プログラムに含まれるアプリケーションプログラムにより参照される参照用データ形式で前記参照データベースに格納され保存される。そのため、そのような前記参照データベースに格納された地図データについては、前記変換手段による変換を行うことなく前記動作プログラムに含まれるアプリケーションプログラムにより参照することができる。したがって、前記動作プログラムに含まれるアプリケーションプログラムにより参照する全ての地図データを、利用する度に前記ローカル保存データベースから読み出して前記変換手段により変換する場合と比較して、前記変換手段による演算処理負荷を軽減でき、動作性能の向上を図ることが可能となる。一方、参照データベースに格納されない、その他の地図データについては、前記ローカル保存データベースから読み出し、前記変換手段により参照用データ形式に変換して利用する構成となっている。即ち、前記動作プログラムの1つである参照先決定プログラムが、前記アプリケーションプログラムが必要とする地図データが前記参照データベースに格納されているか否かに応じて、当該地図データの参照先を前記ローカル保存データベースに決定した際に、当該地図データが前記ローカル保存データベースから読み出される。したがって、前記動作プログラムに含まれるアプリケーションプログラムにより参照する全ての地図データを、前記参照データベースに格納する場合と比較して、データベースの全体のデータ量を少なく抑えることが可能となる。
また、本発明に係るナビゲーション装置は、前記変換手段により変換された前記地図データを、前記アプリケーションプログラムが参照可能な状態で、前記アプリケーションプログラムによる参照が終了するまで格納する一時記憶領域をさらに備えると好適である。つまり、この構成により、ナビゲーション装置は、必要な地図データが参照データベースに格納されていない場合に、データ読出手段に対して当該必要な地図データの要求を行い、ローカル保存データベースから読み出した地図データを変換手段により参照用データ形式に変換し、一時記憶領域に格納して良好に利用することができる。
また、前記利用条件は、前記動作プログラムにより、
(A)所定の表示装置への地図表示に利用された地図データ
(B)目的地までの経路探索に利用された地図データ
(C)地点検索、地点設定又は地点登録の際に利用された地図データ、及び
(D)自位置の進行履歴を構成する経路を登録する際に利用された地図データ
から選択される一部、又は全部の中の少なくとも一つに該当する構成とすると好適である。
また、前記参照データベース更新手段は、前記利用条件を満たす地図データとともに、当該地図データの周辺の所定範囲内の地図データを前記参照データベースに格納する構成とすると好適である。
これらの構成によれば、前記動作プログラムにより再度利用される可能性が高い地図データを適切に選択して前記参照データベースに格納することができる。したがって、前記ナビゲーション装置の動作性能の向上とデータベースの全体のデータ量の削減とを、適切に両立させることが可能となる。
また、前記参照先決定プログラムは、前記アプリケーションプログラムが必要とする地図データが前記参照データベースに格納されている場合には、前記アプリケーションプログラムに前記参照データベース内の当該地図データを利用させ、前記アプリケーションプログラムが必要とする地図データが前記参照データベースに格納されていない場合には、前記データ読出手段に対して当該必要な地図データの要求を行う構成とすると好適である。
このように構成すれば、前記利用条件を満たして参照データベースに格納された地図データについては、前記変換手段による変換を行うことなく前記アプリケーションプログラムにより参照してナビゲーション装置の動作を行うことができ、参照データベースに格納されていない地図データのみを変換手段により参照用データ形式に変換して利用することになる。したがって、変換手段による演算処理負荷を軽減してナビゲーション装置の動作性能の向上を図るとともに、ナビゲーション装置が備えるデータベースの全体のデータ量を少なく抑えることが可能となる。
また、一般的なナビゲーション装置の地図データベースの構成に合わせて、本願に係るナビゲーション装置では、前記ローカル保存データベース内に、所定の区画毎に分割された複数の地図データが格納されており、前記動作プログラムは、前記地図データを区画単位で利用する構成とすると好適である。
また、前記参照データベース更新手段は、前記参照データベースに格納されている地図データのうち、所定期間以上利用されなかった地図データを前記参照データベースから削除する構成とすると好適である。
このように構成すれば、一度は前記参照データベースに格納されたが今後利用される可能性が低い地図データを、前記参照データベースから削除することができる。したがって、前記ナビゲーション装置の使用期間が長くなるに従って、前記参照データベースのデータ量が増大することを防止でき、データベースの全体のデータ量を比較的少なく抑えることが可能となる。
また、前記参照用データ形式は、前記地図データを構成する各データが道路ネットワークの接続順に配列されたデータ形式であり、前記更新用データ形式は、前記地図データを構成する各データがデータ種別順に配列されたデータ形式であると好適である。
このように構成すれば、前記ローカル保存データベースのデータ形式を前記更新データファイルによる更新に適した形式としつつ、前記参照データベースに格納されるデータのデータ形式を、前記ナビゲーション装置の動作プログラムによる参照に適した形式とすることができる。したがって、データ量が多く、更に各データ同士が複雑に関連している道路ネットワークデータの更新を比較的容易に行うことが可能になるとともに、前記動作プログラムの動作への影響を抑制でき、前記ナビゲーション装置の動作性能を確保することが可能となる。
また、前記更新データファイルは、更新の態様として追加、変更、削除の別を表すデータと、更新対象となる部分の地図データを構成するデータとを含み、この更新対象となる部分の地図データを構成する各データがデータ種別順に配列されたデータ形式で構成されていると好適である。
このように構成すれば、更新対象となる実態データが更新態様毎に分けられた上で、前記ローカル保存データベースの更新用データ形式と同様に、データ種別順に配列されたデータ形式となっているので、前記更新データファイルによる前記ローカル保存データベースの更新の処理を比較的容易に行うことが可能となる。
また、本発明に係る、データベース更新用の更新データファイルの提供を受けてデータベースの更新を行うナビゲーション装置のデータ更新方法の特徴構成は、前記ナビゲーション装置は、前記動作プログラムに含まれるアプリケーションプログラムにより参照される参照用データ形式の地図データベースである参照データベースと、前記更新データファイルにより更新可能であって前記参照用データ形式とは異なる更新用データ形式の地図データベースであるローカル保存データベースと、を備え、前記ナビゲーション装置は、前記更新データファイルを受け付け、前記更新データファイルにより前記ローカル保存データベースを更新し、前記アプリケーションプログラムに必要な地図データが前記参照データベースに格納されているか否かに応じて前記動作プログラムの1つである参照先決定プログラムが当該地図データの参照先を前記ローカル保存データベースに決定した際に、当該地図データを前記ローカル保存データベースから読み出し、この読み出された前記地図データを前記参照用データ形式に変換し、前記アプリケーションプログラムにより参照可能にするとともに、前記変換された前記地図データが前記動作プログラムによる前記地図データの利用形態に関する所定の利用条件を満たすか否かを判定し、前記利用条件を満たすと判定された前記地図データを前記参照データベースに格納する点にある。
前記ナビゲーション装置が、更新データファイルによる更新に適した更新用データ形式で構成されるローカル保存データベースを備え、このローカル保存データベースを更新データファイルにより更新する構成としているので、データ量が多く、各データ同士が複雑に関連している地図データベースの更新を比較的容易に行うことが可能となる。したがって、更新データファイルにより頻繁にデータを更新することが容易になり、高鮮度のデータを継続的に前記ナビゲーション装置に提供することが可能となる。また、この特徴によれば、一旦、前記利用条件を満たす利用形態で利用された地図データは、前記動作プログラムに含まれるアプリケーションプログラムにより参照される参照用データ形式で前記参照データベースに格納され保存される。そのため、そのような前記参照データベースに格納された地図データについては、前記変換手段による変換を行うことなく前記動作プログラムに含まれるアプリケーションプログラムにより参照してナビゲーション装置の動作を行うことができる。したがって、前記動作プログラムに含まれるアプリケーションプログラムにより参照する全ての地図データを、利用する度に前記ローカル保存データベースから読み出して前記変換手段により変換する場合と比較して、前記変換手段による演算処理負荷を軽減でき、前記ナビゲーション装置の動作性能の向上を図ることが可能となる。一方、その他の地図データについては、前記ローカル保存データベースから読み出し、前記変換手段により参照用データ形式に変換して利用する構成となっている。即ち、前記動作プログラムの1つである参照先決定プログラムが、前記アプリケーションプログラムが必要とする地図データが前記参照データベースに格納されているか否かに応じて、当該地図データの参照先を前記ローカル保存データベースに決定した際に、当該地図データが前記ローカル保存データベースから読み出される。したがって、前記動作プログラムに含まれるアプリケーションプログラムにより参照する全ての地図データを、前記参照データベースに格納する場合と比較して、前記ナビゲーション装置が備えるデータベースの全体のデータ量を少なく抑えることが可能となる。
また、前記参照データベースに格納されている地図データのうち、所定時間以上利用されなかった地図データがある場合には、その地図データを前記参照データベースから削除する構成とすると好適である。
このように構成すれば、一度は前記参照データベースに格納されたが今後利用される可能性が低い地図データを、前記参照データベースから削除することができる。したがって、前記ナビゲーション装置の使用期間が長くなるに従って、前記参照データベースのデータ量が増大することを防止でき、前記ナビゲーション装置が備えるデータベースの全体のデータ量を比較的少なく抑えることが可能となる。
1.データ更新システムの基本的形態
本発明の実施形態を説明する前に、本発明の前提となる、データ更新システムの基本的な形態について図面に基づいて説明する。このデータ更新システムは、後述する本発明の第一及び第二の実施形態とは異なり、データ読出手段25と、利用条件判定手段26を備えていない。したがって、ローカル保存データベース16の中にある全ての地図データを変換手段17により変換した参照用データ形式のデータにより参照データベース19の内容を更新する構成となっている。図1は、本形態に係るデータ更新システムの全体の構成を模式的に示すブロック図である。本形態においては、端末装置はナビゲーション装置1である。そして、このデータ更新システムは、更新データ生成サーバ2により生成された更新データファイルDfを更新データ配信サーバ3からナビゲーション装置1に提供し、ナビゲーション用の地図データベースとしての参照データベース19の更新を行うシステムとなっている。そのため、本形態に係るデータ更新システムは、主な構成として、ナビゲーション装置1と、更新データ生成サーバ2と、更新データ配信サーバ3と、を有している。ここで、更新データ生成サーバ2及び更新データ配信サーバ3が本発明におけるサーバ装置を構成する。
ここで、ナビゲーション装置1、更新データ生成サーバ2、及び更新データ配信サーバ3を構成する各手段は、CPU等の演算処理装置を中核部材として、入力されたデータに対して種々の処理を行うための機能部がハードウエア又はソフトウエア(プログラム)或いはその両方で実装されて構成されている。また、ナビゲーション装置1、更新データ生成サーバ2、及び更新データ配信サーバ3が備える各データベースは、例えば、ハードディスクドライブ、フラッシュメモリ等の書き換え可能な記憶媒体とその駆動手段とを有する装置をハードウエア構成として備えている。なお、本願の各図においては、簡略化のために「データベース」は「DB」と省略して表すこととする。以下、各装置の構成について順に説明する。
1−1.ナビゲーション装置1の基本機能を実現するための構成
ナビゲーション装置1は、自位置表示、出発地から目的地までの経路探索、進路案内、目的地検索等の基本機能を実現するための構成として、ナビゲーション用演算手段20、参照データベース19、自位置検出手段21、ドライバ22、表示操作部23、及び音声出力部24を備えている。
ナビゲーション用演算手段20は、動作プログラムとしてのナビゲーションプログラムPGに従って動作する演算処理手段である。図2は、ナビゲーションプログラムPGの構成を模式的に示す図である。この図に示すように、ナビゲーションプログラムPGは、複数のアプリケーションプログラムPG1〜PG5を有して構成される。ここでは、ナビゲーションプログラムPGは、表示プログラムPG1、マップマッチングプログラムPG2、経路探索プログラムPG3、案内プログラムPG4、及び検索プログラムPG5の5つのアプリケーションプログラムを有している。ここで、表示プログラムPG1は、表示操作部23の表示画面に自位置や目的地等の周辺の地図表示や当該地図上への自位置表示等を行うためのプログラムである。マップマッチングプログラムPG2は、自位置検出手段21により検出された自位置を地図の道路上に合わせるマップマッチング処理を行うためのプログラムである。経路探索プログラムPG3は、例えば自位置から表示操作部23により入力された目的地までの経路等の経路探索を行うためのプログラムである。案内プログラムPG4は、経路探索により決定された目的地までの経路に従って、表示操作部23の表示画面による案内表示や音声出力部24による音声案内等により、適切な進路を案内する処理を行うためのプログラムである。検索プログラムPG5は、目的地や地図表示のための地点等を、住所、電話番号、施設名称、ジャンル等に基づいて検索するためのプログラムである。なお、これらの各プログラムによるナビゲーション装置1の動作処理は公知であるので詳細な説明は省略する。そして、これらの各アプリケーションプログラムPG1〜PG5において、道路ネットワークデータRn及び案内用データGd等の参照データベース19に格納されたデータ(情報)が用いられる。
参照データベース19は、ナビゲーション装置1の上記基本機能を実現するために、ナビゲーションプログラムPGにより参照される参照用データ形式のデータが格納されているデータベースである。ここでは、参照データベース19は、地図データとしての道路ネットワークデータRn及び案内用データGdを含むナビゲーション用の地図データベースとして機能する。また、この参照データベース19は、ナビゲーションプログラムPGを構成する複数の機能毎のアプリケーションプログラムに応じて、複数のアプリケーションプログラム用データベースを備えている。図3は、この参照データベース19の構造の具体例を示す説明図である。この図に示すように、参照データベース19に格納されている道路ネットワークデータRn及び案内用データGd等の各データは、各アプリケーションプログラムPG1〜PG5に応じて格納されており、それぞれがアプリケーションプログラム用データベース(以下、簡略化のため「アプリ用データベース」とする。)19a〜19eとなっている。すなわち、参照データベース19内には、表示プログラム用データベース19a、マップマッチングプログラム用データベース19b、経路探索プログラム用データベース19c、案内プログラム用データベース19d、及び検索プログラム用データベース19eが格納されている。なお、図示では一部省略しているが、各アプリ用データベース19a〜19eのそれぞれに、各アプリケーションプログラムPG1〜PG5に応じた参照用データ形式の道路ネットワークデータRnが少なくとも格納されている。なお、例えばマップマッチングプログラム用データベース19b等、案内用データGdを有しないデータベースもある。また、参照データベース19には、並行更新用データ格納手段としての並行更新用領域Frが設けられている。並行更新用領域Frは、ナビゲーションプログラムPGの各アプリケーションプログラムPG1〜PG5による参照データベース19の参照中に、参照データベース19の更新のためのデータを格納するための領域である。この並行更新用領域Frの利用方法については後に詳細に説明する。
図3に示すように、参照データベース19内の各アプリ用データベース19a〜19eに格納される道路ネットワークデータRnは、所定の区画(図3に示す区画<1>〜区画<3>等)毎に分けられた複数のデータとされている。例えば、2.5km四方の領域を1区画とし、日本全国の道路ネットワークを複数の区画毎に分けられた道路ネットワークデータRnが、各アプリ用データベース19a〜19eに格納されている。また、案内用データGdは、区画毎の道路ネットワークデータRnのそれぞれに関連付けられて(図3に示す案内用データ<1>〜案内用データ<3>等)、各アプリ用データベース19a〜19eに格納されている。ここで、案内用データGdは、具体的には、ナビゲーションプログラムPGの各アプリケーションプログラムPG1〜PG5で用いる、表示、案内、検索等のためのデータであり、画像データ、音声データ、POI(Point of Interest)データ等を含んで構成されている。これらの各データは、道路ネットワークデータRnに含まれるリンクやノード等(図4参照)に関するデータに関連付けられて格納されている。
図4は、道路ネットワークデータRnにより表される道路ネットワークの具体例を示す図である。この図に示す例では、リンク列A及びリンク列Bの2つのリンク列があり、各リンク列A、Bが、ノードA1〜A3、B1〜B3(図4の黒丸)と、2個のノード間を結ぶリンクA1、A2、B1、B2(図4の実線)と、各リンクの形状を規定する形状補間点群A1、A2、B1、B2(図4の白丸)とを有して構成されている。道路ネットワークデータRnは、これらの各リンク列を構成する情報を表すデータとなる。なお、リンク列AのノードA2と、リンク列BのノードB2とは、図4上では位置を異ならせて表しているが、同じ交差点を表すノードである。道路ネットワークデータRnでは、各ノードに対応するデータはリンク列A、B毎に管理されるため、同じ交差点を表すノードに対応するデータは、各リンク列A、B毎に備えられる。なお、そのようなノードに対応するデータには、同じ交差点を表す他のノードに対応するデータの配置情報が含まれる。
図5は、図4に示すような道路ネットワークを表す、参照用データ形式の道路ネットワークデータRnの構成の具体例を示す図である。この図に示すように、参照用データ形式は、各データが道路ネットワークの接続順に配列されたデータ形式となっている。上記のとおり、この道路ネットワークデータRnは、所定の区画(図3に示す区画<1>〜区画<3>等)毎に分けられており、対応する区画を示す区画IDデータが先頭に配置されている。また、この道路ネットワークデータRnは、これを構成する実体的なデータとして、交差点データ、接続データ、道路データ、及び形状データを有している。ここで、交差点データは、交差点を表すノードの座標情報、信号機や案内標識の有無等を表す交差点の属性情報、当該交差点が複数段階の地図表示レイヤのどの階層まで表示されるかを示す階層情報等を含んでいる。接続データは、交差点を表すノードにどの道路(リンク)が接続されているかの情報、交差点での進行方向に応じた案内の要否や規制の有無の情報等を含んでいる。道路データは、道路を表すリンクの両端ノードの情報、道路種別情報、幅員情報、車線数情報、当該道路が複数段階の地図表示レイヤのどの階層まで表示されるかを示す階層情報等を含んでいる。形状データは、道路を表すリンクの形状を規定する形状補間点群の座標情報等を含んでいる。なお、これらの交差点データ、接続データ、道路データ、及び形状データと、後述するローカル保存データベース16に格納される更新用データ形式の道路ネットワークデータRnや更新データファイルDfに含まれる道路ネットワークデータRnに関連するデータにおける交差点データ、接続データ、道路データ、及び形状データとは、同種の内容を表すデータであるが、その具体的内容や配列等についてはある程度の相違がある。例えば、更新用データ形式の道路ネットワークデータRnにおける道路拡張データや交差点拡張データの内容は、参照データベース19に格納される道路ネットワークデータRnでは、独立の項目として分離されておらず、関連するデータ毎に交差点データ、接続データ、道路データ、及び形状データのいずれかに含まれている。
そして、これらの各データの配列は、道路ネットワークの接続順とされ、より具体的には、リンク列毎に各リンク列を構成するノード及びリンクの接続順とされている。例えば図4に示すリンク列Aを表すデータに関して説明すると、図5に示すように、先頭から、ノードA1に対応する交差点データA1及び接続データA1、ノードA1に接続するリンクA1に対応する道路データA1、リンクA1の形状補間点群A1に対応する形状データA1の順に配列されている。またその次には、リンクA1の他方端に接続するノードA2に対応する交差点データA2及び接続データA2、ノードA2に接続するリンクA2に対応する道路データA2、リンクA2の形状補間点群A2に対応する形状データA2の順に配列されている。また、リンク列B等の他のリンク列についても同様のデータ配列となっている。この道路ネットワークデータRnは、上記のとおり、所定の区画毎に分けられて各アプリ用データベース19a〜19eに格納されている。なお、各アプリ用データベース19a〜19eのいずれに格納されているかにより、道路ネットワークデータRnを構成する各データの具体的内容等は相違するが、図5に示すような分け方でのデータの配列に関してはいずれのアプリ用データベース19a〜19eについても同様となる。
また、図3には示さないが、参照データベース19には、道路ネットワークデータRn及び案内用データGd等を構成する各データのレコード符号とパーマネントIDとの対照テーブルが格納されている。図6は、この対照テーブルの具体例を示す図である。この図に示すように、道路ネットワークデータRnや案内用データGd等を構成する各データのレコード符号は、ここでは、一例として、道路データの「A1」、「A2」、交差点データの「A1」、「A2」等としている。この対照テーブルが存在することにより、後述する更新データファイルDf(図7参照)に格納されているパーマネントIDデータと、参照データベース19を構成する各データとを対応させることが可能となる。したがって、更新データファイルDfに格納されているパーマネントIDデータ及びそれに結び付けられた実体データと、参照データベース19の案内用データGdを構成する各データとを対応させ、更新データファイルDfに基づいて参照データベース19の案内用データGdを更新することが可能となる。
自位置検出手段21は、ナビゲーション装置1の現在位置を検出するための手段である。そのため、自位置検出手段21は、図示は省略するが、例えば、GPS受信機、方位センサ、及び距離センサ等を備える。そして、これらにより取得された情報に基づいて現在の位置を示す座標や進行方位等の情報を取得して、ナビゲーション用演算手段20に出力する。表示操作部23は、液晶表示装置等の表示画面と、この表示画面に連動するタッチパネルや操作スイッチ等を備えて構成される。また、音声出力部24は、スピーカ及びアンプ等を備えて構成される。そして、表示操作部23及び音声出力部24は、ドライバ22を介してナビゲーション用演算手段20に接続され、ナビゲーション用演算手段20の動作に従って自位置表示、2地点間の経路探索、進路案内、目的地検索等のための表示や音声出力等を行う。また、表示操作部23は、ユーザーによる操作入力を受け付けてナビゲーション用演算手段20にその内容を出力する。
1−2.ナビゲーション装置1の更新機能を実現するための構成
ナビゲーション装置1は、上述した基本機能を実現するための構成に加えて、参照データベース19の更新機能を実現するための構成として、図1に示すように、通信手段11、メディア再生手段12、更新データファイル受付手段13、データ選別手段14、ローカル保存データベース更新手段15、ローカル保存データベース16、変換手段17、及び参照データベース更新手段18を備えている。そして、このナビゲーション装置1では、参照データベース19を更新するために、道路ネットワークデータRnに関しては、更新データ配信サーバ3から提供された更新データファイルDfに基づいてローカル保存データベース16を差分更新し、更新後のローカル保存データベース16のデータを参照用データ形式に変換して参照データベース19の更新を行う。なお、画像データ、音声データ、POI(Point of Interest)データ等の案内用データGdについては、各データ同士の関連が少ないため、更新データファイルDfに基づいて、直接的に参照データベース19の更新を行うこととする。以下、これらの各構成について詳細に説明する。
更新データファイル受付手段13は、更新データ配信サーバ3から提供される更新データファイルDfを受け付ける手段である。ここでは、通信手段11又はメディア再生手段12を介して更新データファイルDfを受け付ける構成となっている。通信手段11は、無線基地局4との間で無線により更新データファイルDfを受信することが可能に構成されている。このような無線通信方法としては、例えば携帯電話網や無線LAN(Local Area Network)等の公知の通信網を用いることができる。また、通信手段11は、ユーザーやナビゲーション装置1の取扱い業者等の有する更新用端末5との間で通信を行い、更新用端末5にインターネット等の通信ネットワーク6を介して送信された更新データファイルDfを受信することが可能に構成されている。ここで、更新用端末5としては、パーソナルコンピュータ等を用いることができ、通信手段11と更新用端末5との間の通信方法としては、公知の有線又は無線の各種通信方法を用いることができる。また、メディア再生手段12は、更新データ配信サーバ3において作成された記録メディアを再生し、そこに記録された更新データファイルDfを読み出すことが可能に構成されている。なお、この更新データファイル受付手段13は、通信手段11を介して更新データ配信サーバ3から更新データファイルDfを受信する際、或いはメディア再生手段12により記録メディアから更新データファイルDfを読み出す際に、ローカル保存データベース16に格納されている道路ネットワークデータRnのバージョンよりも新しいバージョンの更新データファイルDfのみを受け付ける構成となっている。
更新データファイルDfは、ナビゲーション装置1の参照データベース19に格納されているデータの内容に対して、実際の道路や施設の状態等に合わせて更新されるべきデータの内容を更新データとしてまとめたファイルである。この更新データファイルDfは、後述するように、更新データ生成サーバ2において、ナビゲーション装置1のローカル保存データベース16と同じ内容を有する対照用ローカル保存データベース33と新規データとに基づいて生成される。
図7は、更新データファイルDfの構成の具体例を示す図である。ここでは、更新データファイルDfは、道路ネットワークデータRnの各区画(図3に示す区画<1>〜区画<3>等)に対応して作成されており、対応する区画を示す区画IDデータdaが先頭に配置されている。また、更新データファイルDfは、更新のバージョンを示すバージョンデータdbを有している。そして、更新データファイルDfは、更新対象となるデータを更新の態様毎に分けて配列している。そのため、更新の態様毎のデータ群の先頭に、「追加」、「変更」、「削除」の別を表す更新態様データdcが配置されている。更に、更新データファイルDfは、更新の態様毎に分けられたデータ群の各データをデータ種別順に配列している。そのため、データ種別毎のデータ群の先頭に、当該データ群のデータ種別を表すデータ種別IDデータddが配置されている。そして、このデータ種別IDデータddの後に、各データのパーマネントIDデータ及びそれに結び付けられた実体データが配列されている。なお、更新の態様が「削除」となっているデータに関しては、新たな実体データは必要ないのでパーマネントIDデータのみが配列されている。ここで、パーマネントIDは、道路ネットワークデータRnや案内用データGdを構成する各実体データに固有の地図データベース上でユニークなIDであり、参照データベース19及びローカル保存データベース16においても共通に用いられる。
ここで、更新データファイルDfを構成するデータとしては、主に道路ネットワークデータRnを構成する各種データ、及び案内用データGdを構成する各種データがある。具体的には、道路ネットワークデータRnを構成する主要なデータであるネットワーク系データに関するデータ種別としては、「交差点データ」、「接続データ」、「道路データ」、「形状データ」等がある。また、これらネットワーク系データに関連付けられ、道路ネットワークデータRnを構成する付加的なデータとして道路拡張データ及び交差点拡張データがある。そして、道路拡張データに関するデータ種別としては、「道路名称データ」、VICS等の交通情報を道路データに関連付けるための「交通情報関連データ」等があり、交差点拡張データに関するデータ種別としては、「交差点名称データ」、交差点での案内の要否及びその案内内容を構成する案内用データGdのパーマネントIDデータ等を表す「交差点案内データ」等がある。このように本形態では、道路ネットワークデータRnを構成する各種データを「交差点データ」、「接続データ」、「道路データ」、「形状データ」、「道路名称データ」、「交通情報関連データ」、「交差点名称データ」、「交差点案内データ」等の各要素種別に分類し、これら要素種別毎のデータをデータ種別順に配列することとしている。なお、ここでは更新データファイルDfについて説明しているが、この点はローカル保存データベース16に格納される道路ネットワークデータRnについて同様である。また、案内用データGdに関するデータ種別としては、「画像データ」、「音声データ」、「POI(Point of Interest)データ」等がある。そして、これらの各データ種別についてデータ種別IDが付与されており、データ種別IDデータddとして更新データファイルDf内に配置されている。
図1に戻り、データ選別手段14は、更新データファイル受付手段13により受け付けられた更新データファイルDf内のデータを、道路ネットワークデータRnに関するデータと、その他の案内用データGd等とに選別する手段である。後述するように、ここでは、ローカル保存データベース16は道路ネットワークデータRnの差分更新用のデータベースとなっている。そこで、データ選別手段14は、更新データファイルDfから選別した道路ネットワークデータRnに関するデータを、ローカル保存データベース更新手段15に送る。また、データ選別手段14は、道路ネットワークデータRn以外の案内用データGd等に関するデータを、参照データベース更新手段18に送る。
ローカル保存データベース16は、地図データとしての道路ネットワークデータRnの差分更新用のデータベースである。そのため、ローカル保存データベース16に格納される道路ネットワークデータRnは、参照データベース19に格納される参照用データ形式とは異なる更新用データ形式で構成されている。図8は、更新用データ形式の道路ネットワークデータRnの構成の具体例を示す図である。この図に示すように、更新用データ形式は、各データがデータ種別順に配列されたデータ形式となっている。ここでは、参照データベース19と同様に、ローカル保存データベース16内の道路ネットワークデータRnは、所定の区画(図3に示す区画<1>〜区画<3>参照)毎に分けられており、対応する区画を示す区画IDデータdfが先頭に配置されている。また、この道路ネットワークデータRnは、更新のバージョンを示すバージョンデータdgを有している。更に、この道路ネットワークデータRnは、これを構成する実体的なデータの配置を示すアドレスデータが格納されたヘッダ部dhを有している。
ローカル保存データベース16に格納される更新用データ形式の道路ネットワークデータRnは、これを構成するデータの種別として、更新データファイルDfと同様に、ネットワーク系データに関して「交差点データ」、「接続データ」、「道路データ」、「形状データ」等があり、道路拡張データに関して「道路名称データ」、「交通情報関連データ」等があり、交差点拡張データに関して「交差点名称データ」、「交差点案内データ」等がある。そして、これらの各データの配列は、データ種別順とされ、同じデータ種別のデータが連続的に配列されている。具体的には、図8に示すように、先頭から、道路データA1、道路データA2・・・と全ての道路データが連続的に配列され、次に、交差点データA1、交差点データA2・・・と全ての交差点データが連続的に配列され、以降も全てのデータ種別について同様に配列されている。そして、ヘッダ部dhには、データ種別毎のデータの配置領域及び同じデータ種別内での各データの配列を示すアドレスデータが格納されている。したがって、ローカル保存データベース更新手段15は、ヘッダ部dhに格納されている情報を参照することにより、ローカル保存データベース16内の各データの配置情報を取得することができる。
また、ローカル保存データベース16には、参照データベース19と同様に、図6に示すような、道路ネットワークデータRnを構成する各データのレコード符号とパーマネントIDとの対照テーブルが格納されている。この対照テーブルが存在することにより、更新データファイルDfに格納されているパーマネントIDデータ及びそれに結び付けられた実体データと、ローカル保存データベース16の道路ネットワークデータRnを構成する各データとを対応させ、更新データファイルDfに基づいてローカル保存データベース16の道路ネットワークデータRnを更新することが可能となる。
なお、ローカル保存データベース16は、参照データベース19とは異なり、アプリケーションプログラムに応じて分かれておらず、一つのデータベースとなっている。また、ローカル保存データベース16は、道路ネットワークデータRnに関するデータのみが格納されており、案内用データGdに関するデータは格納されていない。
ローカル保存データベース更新手段15は、データ選別手段14により選別された、更新データファイルDfに含まれる道路ネットワークデータRnに関するデータに基づいて、ローカル保存データベース16の内容を更新する手段である。ここで、上記のとおり更新データファイルDf及びローカル保存データベース16内の道路ネットワークデータRnには区画IDデータda、df(図7及び図8参照)が付与されている。したがって、ローカル保存データベース更新手段15は、区画IDデータda、dfが一致する更新データファイルDfを用いて道路ネットワークデータRnの更新を区画毎に行う。更新の方法は、更新データファイルDfに格納されている更新対象となるデータの更新態様が、「追加」、「変更」、「削除」のいずれであるかによって異なる。
ローカル保存データベース更新手段15は、更新態様が「追加」である場合、そのデータに対応するデータ種別のデータが格納されている領域に当該更新対象のデータを追加し、ヘッダ部dhのアドレスデータに当該追加したデータの配列を示す情報を追加する。また、対照テーブルも更新し、当該追加したデータのレコード符号とパーマネントIDの情報を追加する。ローカル保存データベース更新手段15は、更新態様が「変更」である場合、まず図6に示すような対照テーブルに基づいて、更新データファイルDfに格納されている更新対象となるデータのパーマネントIDから対応するデータのレコード符号の情報を取得する。そして、ローカル保存データベース16の道路ネットワークデータRnが備えるヘッダ部dhのアドレスデータを参照して、更新対象となるデータの格納位置の情報を取得し、更新対象となるデータを書き換える。ローカル保存データベース更新手段15は、更新態様が「削除」である場合、まず図6に示すような対照テーブルに基づいて、更新データファイルDfに格納されている更新対象となるデータのパーマネントIDから対応するデータのレコード符号の情報を取得する。そして、ローカル保存データベース16の道路ネットワークデータRnが備えるヘッダ部dhのアドレスデータを参照して、更新対象となるデータの格納位置の情報を取得し、更新対象となるデータ及びそのアドレスデータを削除する。また、対照テーブルも更新し、当該削除したデータのレコード符号とパーマネントIDの情報を削除する。
また、ローカル保存データベース更新手段15は、ローカル保存データベース16を更新データファイルDfにより更新した場合には、ローカル保存データベース16の当該更新した区画の道路ネットワークデータRnのバージョンデータdg(図8参照)を、当該更新データファイルDfのバージョンデータdb(図7参照)と同じバージョンとするように更新する。
変換手段17は、ローカル保存データベース16に格納された道路ネットワークデータRnのデータ形式を、更新用データ形式から参照用データ形式に変換する手段である。具体的には、変換手段17は、図8に示すように各データがデータ種別順に配列された更新用データ形式の道路ネットワークデータRnを、図5に示すように各データが道路ネットワークの接続順に配列された参照用データ形式の道路ネットワークデータRnに変換する処理を行う。ところで、上記のとおり参照データベース19は複数のアプリ用データベース19a〜19eに分かれており、各アプリ用データベース19a〜19eのそれぞれに各アプリケーションプログラムPG1〜PG5に応じた参照用データ形式の道路ネットワークデータRnが格納されている。ここでは、変換手段17は、ローカル保存データベース16に格納された一つの更新用データ形式の道路ネットワークデータRnを変換し、各アプリケーションプログラムPG1〜PG5に応じた複数種類の参照用データ形式の道路ネットワークデータRnを生成することが可能に構成されている。また、各アプリ用データベース19a〜19e内において、道路ネットワークデータRnは所定の区画(図3に示す区画<1>〜区画<3>等)毎に分けられたデータとされている。したがって、変換手段17は、更新用データ形式から参照用データ形式への道路ネットワークデータRnの変換処理を所定の区画毎に行う構成となっている。
参照データベース更新手段18は、参照データベース19を更新する手段である。本形態では、道路ネットワークデータRnについては、変換手段17による変換後の道路ネットワークデータRnを用いて参照データベース19を更新する。上記のとおり、変換手段17は、道路ネットワークデータRnの変換処理を、各アプリケーションプログラムPG1〜PG5に応じた参照用データ形式で、所定の区画毎に行う構成となっている。したがって、参照データベース更新手段18は、変換手段17により変換される道路ネットワークデータRnの単位毎、すなわち各アプリ用データベース19a〜19eの所定の区画毎に、参照データベース19内の道路ネットワークデータRnを変換後の道路ネットワークデータRnに置き換えることで更新を行う。具体的には、例えば変換手段17により、ローカル保存データベース16内の区画<1>の道路ネットワークデータRnが、表示プログラムPG1に応じた参照用データ形式に変換された場合には、表示プログラム用データベース19aの区画<1>の道路ネットワークデータRnを、当該変換後の道路ネットワークデータRnにより置き換えることで更新を行う。
また、参照データベース更新手段18は、案内用データGdについては、データ選別手段14により選別された、更新データファイルDfに含まれる案内用データGdに関するデータに基づいて直接的に参照データベース19を更新する。具体的には、参照データベース更新手段18は、まず図6に示す対照テーブルに基づいて、更新データファイルDfに格納されている更新対象となる案内用データGdのパーマネントIDから対応するデータのレコード符号の情報を取得する。そして、参照データベース19から対応する案内用データGdを読み出し、更新データファイルDfに格納されている実体データに基づいてデータを書き換えることで更新を行う。
また、この参照データベース更新手段18は、ナビゲーションプログラムPGのアプリケーションプログラムPG1〜PG5の実行中は、変換手段17により変換されたデータを順次参照データベース19の並行更新用領域Frに格納する。そして、変換手段17による変換処理の完了後に、並行更新用領域Frに格納されたデータを参照データベース19のデータに置き換えて参照データベース19を更新する処理を行う。すなわち、ナビゲーション用演算手段におけるアプリケーションプログラムPG1〜PG5の実行中は、当該実行中のアプリケーションプログラムPG1〜PG5によって参照データベース19の所定のアプリ用データベース19a〜19eが適宜参照される。一方、変換手段17によるデータ形式の変換処理は比較的長い時間を要するため、アプリケーションプログラムPG1〜PG5の実行中に、変換手段17による変換処理を行いつつ変換後のデータを各アプリ用データベース19a〜19eに書き込んで参照データベース19の更新を行うと、実行中のアプリケーションプログラムPG1〜PG5の動作に支障が生じる恐れがある。そこで、いずれかのアプリケーションプログラムPG1〜PG5の実行中には、変換手段17により変換されたデータを一時的に並行更新用領域Frに格納し、変換処理の完了後に、並行更新用領域Frに格納されたデータを参照データベース19のデータに置き換えて参照データベース19を更新する処理を行う。これにより、ナビゲーションプログラムPGを動作させ、自位置表示、出発地から目的地までの経路探索、進路案内、目的地検索等のナビゲーション装置1の基本機能を動作させながら、同時並行的に参照データベース19の更新処理を行うことが可能となる。なお、並行更新用領域Frに格納されたデータを参照データベース19のデータに置き換える処理は、例えば、並行更新用領域Frに格納されたデータと対応する更新前のデータとの間で、参照データベース19内における格納領域のアドレスを入れ替えること等により行うことができる。
1−3.更新データ生成サーバ2の構成
更新データ生成サーバ2は、更新データファイルDfを生成し、それを更新データ配信サーバ3に提供する処理を行うサーバ装置である。このような処理を実行するための構成として、更新データ生成サーバ2は、新規データ受付手段としての入力端末31、データ種別判定手段32、対象用ローカル保存データベース33、新ローカル保存データベース34、新ローカル保存データベース生成手段35、及び更新データファイル生成手段36を備えている。
入力端末31は、新規データの入力を受け付けるための端末である。ここで入力される新規データは、ナビゲーション装置1の参照データベース19に格納された道路ネットワークデータRnや案内用データGd等の内容に対して新たに追加、変更、削除等されるべき内容の具体的なデータとなる。例えば、現実に新たな道路が作られた場合、当該道路に関する部分の道路ネットワークデータRnを構成する交差点データ、接続データ、道路データ、及び形状データ等や、当該道路の新設に伴って必要となる案内用データGdを構成する各種の画像データ、音声データ、POIデータ等が、新規データとして入力端末31から入力される。また、例えば、道路が撤去されてなくなった場合には、当該道路の撤去に伴って不要となる部分の道路ネットワークデータRnを構成する各種データや案内用データGd等を指定する情報が入力される。このようなデータを指定する情報としては、例えば、各データのパーマネントIDや識別符号等を用いることができる。この入力端末31としては、具体的には、キーボード、マウス、モニタ等を備えたパーソナルコンピュータ等を用いることができる。
データ種別判定手段32は、入力端末31から入力された新規データが、道路ネットワークデータRnに関するデータであるか、その他の案内用データGd等であるかを判定し、それらを選別する手段である。後述するように、ここでは、対照用ローカル保存データベース33は、ナビゲーション装置1のローカル保存データベース16と同じ内容を有する道路ネットワークデータRnのデータベースとなっており、新ローカル保存データベース34は、対照用ローカル保存データベース33の内容を新規データにより更新したものであり、同じく道路ネットワークデータRnのデータベースとなっている。そこで、データ種別判定手段32は、新規データから選別した道路ネットワークデータRnに関するデータを、新ローカル保存データベース生成手段35に送る。また、データ種別判定手段32は、道路ネットワークデータRn以外の案内用データGd等に関するデータを、更新データファイル生成手段36に送る。
対象用ローカル保存データベース33は、ナビゲーション装置1のローカル保存データベース16と同じ内容を有するデータベースである。すなわち、対照用ローカル保存データベース33には、例えば図8に示すような、更新用データ形式の道路ネットワークデータRnが所定の区画(図3に示す区画<1>〜区画<3>参照)毎に分けられて格納されている。また、ローカル保存データベース16と同様に、対象用ローカル保存データベース33には、図6に示すような、道路ネットワークデータRnを構成する各データのレコード符号とパーマネントIDとの対照テーブルが格納されている。そして、この対照用ローカル保存データベース33の内容は、更新データファイルDfを生成した後に、新ローカル保存データベース34の内容と一致するように更新されることにより、更新データファイルDfにより更新されるナビゲーション装置1のローカル保存データベース16と常に同じ内容になるよう維持される。但し、ここでは、後述するように、新ローカル保存データベース34には、新規データにより更新された区画のみについて道路ネットワークデータRnが格納される。したがって、対象用ローカル保存データベース33に格納されている道路ネットワークデータRnの更新も、新ローカル保存データベース34に格納されている区画の道路ネットワークデータRnについてのみ行われる。また、このような対象用ローカル保存データベース33の更新の際には、更新された区画の道路ネットワークデータRnについてのバージョンデータdg(図8参照)が、生成した更新データファイルDfのバージョンデータdb(図7参照)と同じバージョンとなるように更新される。
新ローカル保存データベース34は、対照用ローカル保存データベース33と同じデータ形式であって、入力端末31から入力された新規データの内容で更新された内容を有するデータベースである。すなわち、新ローカル保存データベース34には、対照用ローカル保存データベース33と同様に、例えば図8に示すような、更新用データ形式の道路ネットワークデータRnと、図6に示すような、道路ネットワークデータRnを構成する各データのレコード符号とパーマネントIDとの対照テーブルとが格納されている。但し、後述するように、新ローカル保存データベース生成手段35は、所定の区画(図3に示す区画<1>〜区画<3>参照)毎に道路ネットワークデータRnを更新して新ローカル保存データベース34に格納する。したがって、新ローカル保存データベース34には、道路ネットワークデータRnに関しては、更新された区画についてのデータのみが格納される。また、対照テーブルについては、その内容は、対照用ローカル保存データベース33に対して、新規データの内容で更新された部分が相違するものとなっている。
新ローカル保存データベース生成手段35は、対照用ローカル保存データベース33と入力端末31から入力された新規データとに基づいて、新ローカル保存データベース34を生成する手段である。具体的には、新ローカル保存データベース生成手段35は、入力端末31から入力された、追加、変更、削除等されるべき道路ネットワークデータRnの部分に関するデータを、対照用ローカル保存データベース33に格納されているのと同様の更新用データ形式に変換する。そして、新ローカル保存データベース生成手段35は、対照用ローカル保存データベース33から更新対象となる区画の道路ネットワークデータRnを読み出し、当該変換後のデータを用いてその道路ネットワークデータRnの内容に、追加、変更、削除等を行って更新する。そして、更新後の当該区画の道路ネットワークデータRnを新ローカル保存データベース34に格納する。またこれに対応して、新ローカル保存データベース生成手段35は、対照テーブル(図6参照)の内容についても追加、変更、削除等を行って更新し、更新後の対照テーブルを新ローカル保存データベース34に格納する。
例えば、現実に新たな道路が作られた場合、当該道路に関する部分の道路ネットワークデータRnを構成する交差点データ、接続データ、道路データ、及び形状データ等が入力端末31から入力される。そこで、新ローカル保存データベース生成手段35は、それらのデータ形式を更新用データ形式に整え、各データの座標情報や接続データの内容等に基づいて、対照用ローカル保存データベース33から更新対象となる区画の既存の道路ネットワークデータRnを読み出し、当該道路ネットワークデータRnに新たな道路に関するデータを追加する処理を行う。この際、既存の道路ネットワークデータRnを構成するデータの中の関連するデータに対しても必要な変更等を行う。更に、新ローカル保存データベース生成手段35は、新たに追加されたデータについて新たなパーマネントIDを付与し、対照テーブル(図6参照)に追加する処理も行う。また、例えば、道路が撤去されてなくなった場合には、当該道路の撤去に伴って不要となる部分の道路ネットワークデータRnを構成する各種データを指定する情報が入力端末31から入力される。そこで、新ローカル保存データベース生成手段35は、対照用ローカル保存データベース33から更新対象となる区画の既存の道路ネットワークデータRnを読み出し、不要となる道路ネットワークデータRnの部分を構成するデータを既存の道路ネットワークデータRnから削除するとともに、関連するデータに対して必要な変更等を行う。更に、新ローカル保存データベース生成手段35は、削除されたデータについてのパーマネントIDを対照テーブル(図6参照)から削除する処理も行う。
更新データファイル生成手段36は、対照用ローカル保存データベース33と新ローカル保存データベース34との差分に基づいて更新データファイルDfを生成する手段である。上記のとおり、対照用ローカル保存データベース33は、ナビゲーション装置1のローカル保存データベース16と同じ内容を有するデータベースとなっており、新ローカル保存データベース34は、対照用ローカル保存データベース33と同じデータ形式であって入力端末31から入力された新規データの内容で更新された内容を有するデータベースとなっている。したがって、これら2つのデータベースの内容を比較し、これらの差分を抽出することにより、更新データファイルDfの内容を構成する道路ネットワークデータRnに関するデータを取得することができる。また、更新データファイル生成手段36には、データ種別判定手段32で選別された道路ネットワークデータRn以外の案内用データGd等に関するデータが送られてくる。そこで、更新データファイル生成手段36は、対照用ローカル保存データベース33と新ローカル保存データベース34との差分として取得した道路ネットワークデータRnに関するデータと、データ種別判定手段32から送られてきた案内用データGd等に関するデータとをまとめ、所定の更新データファイルDfのデータ形式にすることで更新データファイルDfを生成する。なお、この更新データファイルDfは、新ローカル保存データベース34に格納された更新した区画についての道路ネットワークデータRnに合わせて、所定の区画毎に生成される。
更新データファイルDfの具体的内容については、既に説明したとおりであるので詳しい説明はしないが、ここでは、図7に示すように、更新データファイルDfは、区画IDデータda及びバージョンデータdbの後に、「追加」、「変更」、「削除」といった更新態様毎に分けて、各データをデータ種別順に配置して構成されている。区画IDデータdaは、当該更新データファイルDfによる更新対象となる道路ネットワークデータRnの区画を表すデータであり、当該更新データファイルDfを生成する元となった道路ネットワークデータRnの区画を示すデータとされる。また、更新データファイル生成手段36は、これまでの更新データファイルDfの生成回数を計数して図示しないバージョンデータ保存手段に記憶しておき、当該生成回数に応じた連番等をバージョンデータdbとして付与する。なお、このような更新データファイルDfの生成回数は、道路ネットワークデータRnの区画に合わせて区画毎に計数し、区画毎の連番等をバージョンデータdbとする。各実体データに関連付けられるパーマネントIDは、新ローカル保存データベース34に格納された対照テーブル(図6参照)に基づいて付与される。また、更新態様を表す更新態様データdcや、データ種別IDデータddは、更新データファイル生成手段36が備える図示しないテーブルに基づいて付与される。そして、更新データファイル生成手段36により生成された更新データファイルDfは、更新データ配信サーバ3に送信され、更新データベース41に格納される。
1−4.更新データ配信サーバ3の構成
更新データ配信サーバ3は、更新データ生成サーバ2により生成された更新データファイルDfをナビゲーション装置1に提供するための処理を行うサーバ装置である。このような処理を実行するための構成として、更新データ配信サーバ3は、更新データベース41と、ナビゲーション装置1に提供するための更新データファイルDfを出力する更新データファイル出力手段44としての配信手段42及びメディア作成手段43とを備えている。
更新データベース41は、更新データ生成サーバ2により生成された更新データファイルDfを格納するデータベースである。この更新データベース41内には、更新データ生成サーバ2によりこれまでに生成された全ての更新データファイルDfが格納されている。すなわち、更新データベース41には、道路ネットワークデータRnに合わせた区画毎に、1又は2以上のバージョンの更新データファイルDfが格納されている。
配信手段42は、ナビゲーション装置1に対して更新データファイルDfを配信するための手段である。ここでは、配信手段42は、無線基地局4を介して、或いは通信ネットワーク6及び更新用端末5を介してナビゲーション装置1に更新データファイルDfを配信することが可能に構成されている。また、メディア作成手段43は、更新データ配信サーバ3の図示しない操作手段から指示等に従い、更新データベース41に格納された更新データファイルDfを記録メディアMeに記録可能に構成されている。この更新データ配信サーバ3による更新データファイルDfの提供方法については、後にフローチャートを用いて詳細に説明する。
1−5.更新データファイルの生成方法
次に、更新データ生成サーバ2による、更新データファイルDfの生成方法について図9に示すフローチャートに基づいて説明する。更新データ生成サーバ2では、まず、入力端末31により新規データの入力を受け付けた場合には(ステップ#01:Yes)、データ種別判定手段32は、新規データが道路ネットワークデータRnに関するデータであるか否かを判定する(ステップ#02)。そして、道路ネットワークデータRnに関するデータについては(ステップ#02:Yes)、新ローカル保存データベース生成手段35に送られ、新ローカル保存データベース生成手段35が、新ローカル保存データベース34を生成する(ステップ#03)。一方、道路ネットワークデータRnに関するデータ以外の案内用データGd等については(ステップ#02:No)、ステップ#03の処理は行わない。なお、新規データに道路ネットワークデータRnとそれ以外の案内用データGd等との両方が含まれている場合には、これらを選別して道路ネットワークデータRnに関するデータは新ローカル保存データベース生成手段35に送り、案内用データGd等は更新データファイル生成手段36に送る。
次に、更新データファイル生成手段36が、対照用ローカル保存データベース33と新ローカル保存データベース34との差分に基づいて更新データファイルDfを生成する(ステップ#04)。そして、生成した更新データファイルDfを更新データ配信サーバ3に送信して更新データベース41に格納する(ステップ#05)。その後、対照用ローカル保存データベース33の内容を、新ローカル保存データベース34の一致させるように更新する(ステップ#06)。以上で、更新データ生成サーバ2による更新データファイルDfの生成処理を終了する。
1−6.更新データファイルの提供方法
次に、更新データ配信サーバ3による、ナビゲーション装置1への更新データファイルDfの提供方法について図10に示すフローチャートに基づいて説明する。更新データ配信サーバ3では、まず、配信手段42が、ナビゲーション装置1との間で通信が可能な状態にあるか否かを判定する(ステップ#11)。なお、配信手段42は、上記のとおり、無線基地局4や通信ネットワーク6及び更新用端末5を介してナビゲーション装置1との通信を行う。そして、ナビゲーション装置1との間で通信可能である場合には(ステップ#11:Yes)、次に、配信手段42が、ナビゲーション装置1に対してローカル保存データベース16に格納されている道路ネットワークデータRnのバージョン情報を要求する(ステップ#12)。この際、ナビゲーション装置1側では、ローカル保存データベース16に格納されている区画毎の道路ネットワークデータRnのそれぞれのバージョンデータdgを読み出し、区画毎の道路ネットワークデータRnのバージョン情報として更新データ配信サーバ3に送信する。
一方、配信手段42は、更新データベース41内に格納されている各更新データファイルDfのバージョンデータdbに基づいて、各区画の更新データファイルDfの最新のバージョン情報を取得する(ステップ#13)。そして、配信手段42が、ステップ#13で取得した各区画の更新データファイルDfの最新のバージョン情報と、ナビゲーション装置1から受信した区画毎の道路ネットワークデータRnのバージョン情報と比較して、バージョンが同じであるか否かを判定する(ステップ#14)。この際、バージョンの比較は、同じ区画IDデータda、df(図7及び図8参照)をもつ更新データファイルDfと道路ネットワークデータRnとで区画毎に行う。そして、バージョンが同じでない場合(ステップ#14:No)、すなわち同じ区画についての更新データファイルDfの最新のバージョンが、ナビゲーション装置1の道路ネットワークデータRnのバージョンよりも新しい場合には、道路ネットワークデータRnのバージョンより新しい全ての更新データファイルDfをナビゲーション装置1に送信する。一方、バージョンが同じである場合(ステップ#14:Yes)、すなわち同じ区画についての更新データファイルDfの最新のバージョンが、ナビゲーション装置1の道路ネットワークデータRnのバージョンと同じである場合には、更新データファイルDfによる更新を行う必要がないので、更新データファイルDfを送信することなく処理は終了する。
また、更新データ配信サーバ3では、配信手段42がナビゲーション装置1との間で通信が可能な状態にない場合には(ステップ#11:No)、次に、更新データ配信サーバ3の図示しない操作手段からのメディア作成要求があるか否かについて判定する(ステップ#16)。そして、メディア作成要求がある場合には、更新データベースに格納されている全ての更新データファイルDfを記録メディアMeに記録する(ステップ#17)。このように作成された更新データファイルDfを記録した記録メディアMeは、郵送等によりナビゲーション装置1のユーザーや取扱い業者等に送付される。以上で処理は終了する。
1−7.ナビゲーション装置1における参照データベース19の更新方法
次に、ナビゲーション装置1における、参照データベース19の更新方法について図11に示すフローチャートに基づいて説明する。ナビゲーション装置1では、まず、更新データファイル受付手段13が更新データファイルDfを受け付けた場合には(ステップ#21:Yes)、データ選別手段14が、受け付けた更新データファイルDf内のデータを、道路ネットワークデータRnに関するデータと、その他の案内用データGd等とに選別する(ステップ#22)。そして、道路ネットワークデータRnに関するデータ以外の案内用データGd等については(ステップ#22:No)、参照データベース更新手段18に送り、参照データベース更新手段18が当該データにより参照データベース19の案内用データGd等を直接更新する(ステップ#23)。一方、道路ネットワークデータRnに関するデータについては(ステップ#22:Yes)、ローカル保存データベース更新手段15に送り、ローカル保存データベース更新手段15がローカル保存データベース16に格納された道路ネットワークデータRnを更新する(ステップ#24)。
次に、ナビゲーション装置1は、ナビゲーション用演算手段20においてナビゲーションプログラムPGが実行中か否かについて判定する(ステップ#25)。ここで、ナビゲーションプログラムPGが実行中でない場合には(ステップ#25:No)、変換手段17が、ローカル保存データベース16から読み出した道路ネットワークデータRnを各アプリケーションプログラムPG1〜PG5に応じた参照用データ形式の道路ネットワークデータRnに変換する(ステップ#26)。そして、参照データベース更新手段18が、変換後の道路ネットワークデータRnにより順次参照データベース19の各アプリ用データベース19a〜19eの内容を更新する(ステップ#27)。一方、ナビゲーションプログラムPGが実行中である場合には(ステップ#25:Yes)、変換手段17が、ローカル保存データベース16から読み出した道路ネットワークデータRnを各アプリケーションプログラムPG1〜PG5に応じた参照用データ形式の道路ネットワークデータRnに変換する(ステップ#28)。そして、参照データベース更新手段18が、変換後の道路ネットワークデータRnを参照データベース19の並行更新用領域に順次格納する(ステップ#29)。そして、ステップ#28の変換処理を行う対象となっている道路ネットワークデータRnの変換処理が全て終了するまでは(ステップ#30:No)、ステップ#28及び#29の処理を行い、当該変換処理が完了した後に(ステップ#30:Yes)、並行更新用領域Frに格納されたデータを参照データベース19のデータに置き換えて参照データベース19を更新する(ステップ#31)。以上で処理を終了する。
2.本発明の第一の実施形態
次に、本発明の第一の実施形態について図面に基づいて説明する。図12は、本実施形態に係るデータ更新システムの全体の構成を模式的に示すブロック図である。この図に示すように、本実施形態に係るナビゲーション装置1は、データ選別手段14を有しておらず、代わりにデータ読出手段25、利用条件判定手段26、及び一時記憶領域27を備えている点で基本的形態と相違している。そして、このナビゲーション装置1は、利用条件判定手段26により所定の利用条件を満たすと判定された一部の道路ネットワークデータRnを参照データベース19に格納する構成としている。これに伴い、ナビゲーションプログラムPGは、各アプリケーションプログラムPG1〜PG5の実行に際して、必要な道路ネットワークデータRnが参照データベース19に格納されている場合には、参照データベース19内の当該道路ネットワークデータRnを利用する。一方、ナビゲーションプログラムPGは、必要な道路ネットワークデータRnが参照データベース19に格納されていない場合には、データ読出手段25に対して当該必要な地図データの要求を行い、ローカル保存データベース16から読み出した道路ネットワークデータRnを変換手段17により参照用データ形式に変換し、一時記憶領域に格納して利用する。そのため、本実施形態に係るナビゲーション装置1は、参照データベース19に格納されている道路ネットワークデータRnの一覧を表す格納データテーブルTbを、ナビゲーションプログラムPGにより参照可能に備えている。また、図13に示すように、ナビゲーションプログラムPGは、各アプリケーションプログラムPG1〜PG5に加えて、格納データテーブルTbに基づいて地図データとしての道路ネットワークデータRnの参照先を決定する参照先決定プログラムPG6を備えている。
ところで、上記の基本的形態の説明では、道路ネットワークデータRnと案内用データGdとを区別して取り扱う場合を例として説明したが、本実施形態においては、これらを一体として道路ネットワークデータRn(地図データの一例)として取り扱う。なお、この場合にも案内用データGdを構成する各データは、ローカル保存データベース16内の道路ネットワークデータRnに含まれるリンクやノード等(図4参照)のデータに関連付けられて格納されている。このように、案内用データGdを一体とした道路ネットワークデータRnとして取り扱うことにより、本実施形態では、ナビゲーション装置1は、データ選別手段14を備えない構成となっている。したがって、更新データファイル受付手段13により受け付けられた更新データファイルDfに含まれる情報は、全てローカル保存データベース更新手段15に送られる。そして、ローカル保存データベース更新手段15により、更新データファイルDfに含まれる道路ネットワークデータRnに基づいて、ローカル保存データベース16の内容が更新される。なお、更新データ生成サーバ2及び更新データ配信サーバ3の構成及び動作方法については、上記基本的形態と同様である。また、その他の構成についても、特に説明しない点については、上記基本的形態と同様である。以下、上記基本的形態との相違点を中心に説明する。
2−1.基本的形態と異なるナビゲーション装置1の構成
データ読出手段25は、ナビゲーションプログラムPGからの要求に従って、ローカル保存データベース16の中から必要な道路ネットワークデータRnを読み出す手段である。本実施形態においては、データ読出手段25は、所定の区画毎の道路ネットワークデータRnを最小単位としてローカル保存データベース16から読み出す。すなわち、データ読出手段25は、後述するナビゲーションプログラムPGの参照先決定プログラムPG6からの必要な道路ネットワークデータRnの区画についての読み出し要求を受け付け、この読み出し要求に示される一又は二以上の区画の道路ネットワークデータRnをローカル保存データベース16から読み出す。
変換手段17は、データ読出手段25により読み出された道路ネットワークデータRnを参照用データ形式に変換する手段である。本実施形態においては、変換手段17は、データ読出手段25により読み出された全てのデータについて、各アプリケーションプログラムPG1〜PG5の個別の実行状態に関わらず、全てのアプリケーションプログラムPG1〜PG5に応じた参照用データ形式(ここでは5種類の参照用データ形式)への変換を行うこととする。このような変換手段17による変換後の参照用データ形式の道路ネットワークデータRnは、一時記憶領域27に格納される。
一時記憶領域27に格納された参照用データ形式の道路ネットワークデータRnは、ナビゲーションプログラムPGの各アプリケーションプログラムPG1〜PG5による参照が終了するまでは、継続して参照可能な状態とされる。なお、例えば設定経路が変更された場合等には、経路探索プログラムPG3等の各アプリケーションプログラムPG1〜PG5により必要とされる区画も変更される。従って、各アプリケーションプログラムPG1〜PG5による参照が行われなくなった区画についての道路ネットワークデータRnは、一時記憶領域27から消去される。また、例えばナビゲーション装置1の電源が切られた場合にも一時記憶領域27に格納されたデータは消去される。
利用条件判定手段26は、変換手段17により変換された地図データとしての道路ネットワークデータRnがナビゲーションプログラムPGによる道路ネットワークデータRnの利用形態に関する所定の利用条件を満たすか否かの判定を行う手段である。ここでは、ナビゲーションプログラムPGは、道路ネットワークデータRnを区画単位で参照して利用する。したがって、利用条件判定手段26は、道路ネットワークデータRnの区画毎に、利用条件を満たすか否かの判定を行う。ここで、この利用条件判定手段26により判定する利用条件は、道路ネットワークデータRnの利用形態に関する条件であり、変換手段17により変換された道路ネットワークデータRnの中から、ナビゲーションプログラムPGにより再度利用される可能性が高い道路ネットワークデータRnを抽出することができる条件とすると好適である。
本実施形態においては、この利用条件は、ナビゲーションプログラムPGの複数のアプリケーションプログラムPG1〜PG5のいずれかにより、(A)所定の表示装置としての表示操作部23への地図表示に利用された区画、(B)目的地までの経路探索に利用された区画、(C)地点検索、地点設定又は地点登録の際に利用された区画、及び(D)自位置の進行履歴を構成する経路を登録する際に利用された区画、の少なくとも一つに該当することとしている。より具体的には、上記(A)に該当する道路ネットワークデータRnの区画には、表示プログラムPG1や案内プログラムPG2による、表示操作部23への自位置周辺の地図表示、ユーザーの操作による地図表示画面のスクロール、地点検索や目地点設定等に伴う地図表示等のために利用された区画が含まれる。上記(B)に該当する道路ネットワークデータRnの区画には、ダイクストラ法等の公知の手法により出発地から目的地までの経路探索を行う際に、経路探索プログラムPG3により利用された区画が含まれる。上記(C)に該当する道路ネットワークデータRnの区画には、検索プログラムPG5による、電話番号、住所、キーワード、ジャンル等を用いた地点検索、地図表示画面上で地図上の位置を指定することによる地点設定、自宅やよく行く場所等として地点を登録する地点登録等のために利用された区画が含まれる。上記(D)に該当する道路ネットワークデータRnの区画には、表示プログラムPG1及びマップマッチングプログラムPG2により、自位置の進行履歴を構成する経路上の座標点を登録するために利用された区画が含まれる。
参照データベース更新手段18は、本実施形態においては、利用条件判定手段26により前記利用条件を満たすと判定された、変換手段17による変換後の道路ネットワークデータRnを参照データベース19に格納する。なお、参照データベース更新手段18は、利用条件判定手段26により前記利用条件を満たすと判定された道路ネットワークデータRnの区画に加えて、当該区画の周辺の所定範囲内の区画の道路ネットワークデータRnを参照データベース19に格納する構成としても好適である。この場合、前記所定範囲は、例えば、前記利用条件を満たす区画に隣接する区画までの範囲や、当該区画に更に隣接する区画までの範囲とし、或いは、前記利用条件に係る地点又は経路から一定距離の範囲等とすることができる。また、前記所定範囲は、前記利用条件により異なる範囲を設定しても好適である。例えば、自宅周辺や目的地周辺等のように比較的広い範囲の道路ネットワークデータRnが必要となる可能性が高い利用条件を満たす区画の周辺は前記所定範囲を広く設定し、探索経路の中間領域のように周辺の道路ネットワークデータRnが必要となる可能性が低い利用条件を満たす区画の周辺は前記所定範囲を狭く設定すると好適である。そして、参照データベース更新手段18は、道路ネットワークデータRnの区画を参照データベース19に格納する際に、格納データテーブルTbの内容を更新する処理を行う。一旦、参照データベース19に格納された道路ネットワークデータRnの区画については、各アプリケーションプログラムPG1〜PG5は、参照データベース19内の当該道路ネットワークデータRnを参照する。
ナビゲーション用演算手段20は、ナビゲーションプログラムPGと格納データテーブルTbとを備えている。ここで、格納データテーブルTbは、参照データベース19に格納されている道路ネットワークデータRnの区画の一覧を表すデータテーブルである。具体的には、格納データテーブルTbには、参照データベース19に格納された道路ネットワークデータRnの各区画の区画IDデータ(図5参照)が格納されている。したがって、ナビゲーションプログラムPGの後述する参照先決定プログラムPG6は、格納データテーブルTbを参照することで、参照データベース19に格納されている地図データとしての道路ネットワークデータRnの区画の情報を取得することができる。
また、ナビゲーションプログラムPGは、本実施形態においては、上述した各アプリケーションプログラムPG1〜PG5に加えて、参照先決定プログラムPG6を備えている。参照先決定プログラムPG6は、格納データテーブルTbに基づいて地図データとしての道路ネットワークデータRnの参照先を決定する処理をナビゲーション用演算手段20に実行させるプログラムである。具体的には、参照先決定プログラムPG6は、格納データテーブルTbを参照して各アプリケーションプログラムPG1〜PG5が必要とする道路ネットワークデータRnの区画が参照データベース19に格納されているか否かを判断し、必要な区画が参照データベース19に格納されている場合には、参照データベース19内の当該区画の道路ネットワークデータRnを利用し、必要な区画が参照データベース19に格納されていない場合には、データ読出手段25に対して当該必要な道路ネットワークデータRnの区画についての読み出し要求を行う。これにより、参照データベース19に格納されていない道路ネットワークデータRnの区画は、上記のとおり、ローカル保存データベース16から読み出され、変換手段17により参照用データ形式に変換され、一時記憶領域27に格納され、各アプリケーションプログラムPG1〜PG5により参照される。
ここで、各アプリケーションプログラムPG1〜PG5が必要とする道路ネットワークデータRnの区画としては、具体的には以下のような区画となる。例えば、表示プログラムPG1は、自位置や目的地等の所定の地点周辺の地図表示等を行うため、当該所定地点の周辺を含む区画の道路ネットワークデータRnを要求する。また、例えば、マップマッチングプログラムPG2は、自位置のマップマッチングを行うために、自位置周辺を含む区画の道路ネットワークデータRnを要求する。また、例えば、経路探索プログラムPG3は、現在地から所定の目的地までの経路を探索するために、現在地周辺を含む区画、目的地周辺を含む区画、及び現在地から目的地までの間の経路周辺を含む区画の道路ネットワークデータRnを要求する。同様に、案内プログラムPG4及び検索プログラムPG5も、それぞれのプログラムによる演算処理に必要な区画のデータを要求する。参照先決定プログラムPG6は、これら各アプリケーションプログラムPG1〜PG5からの要求に従って、各アプリケーションプログラムPG1〜PG5で必要とされる道路ネットワークデータRnの各区画について、格納データテーブルTbに基づいて参照データベース19に格納されているか否かを判断し、格納されていない区画についての読み出し要求をデータ読出手段25に対して行う。
2−2.ナビゲーション装置1の動作処理
次に、ナビゲーション装置1の動作処理について説明する。ここでは、ナビゲーション装置1における、ローカル保存データベース15の更新処理と、ナビゲーションプログラムPGからの要求に従った道路ネットワークデータRnの利用及びそれに伴う参照データベース19の更新処理とについて説明する。
図14は、ローカル保存データベース15の更新処理の方法を示すフローチャートである。この図に示すように、ナビゲーション装置1は、更新データファイル受付手段13が更新データファイルDfを受け付けた場合には(ステップ#41:Yes)、更新データファイルDfに含まれる情報をローカル保存データベース更新手段15に送り、ローカル保存データベース更新手段15がローカル保存データベース16の内容を更新する(ステップ#42)。一方、更新データファイルDfを受け付けない場合には(ステップ#41:No)、ローカル保存データベース16の更新を行わない。以上でローカル保存データベース16の更新処理を終了する。
図15は、ナビゲーションプログラムPGからの要求に従った道路ネットワークデータRnの利用及びそれに伴う参照データベース19の更新処理を示すフローチャートである。この処理は、道路ネットワークデータRnの区画毎にそれぞれ行うこととする。この図15に示すように、アプリケーションプログラムPG1〜PG5からの必要な道路ネットワークデータRnの区画の要求があった場合には(ステップ#51:Yes)、参照先決定プログラムPG6により、ステップ#51で要求があった必要な区画の道路ネットワークデータRnが参照データベース19に格納されているか否かを判断する(ステップ#52)。そして、必要な区画の道路ネットワークデータRnが参照データベース19に格納されている場合には(ステップ#52:Yes)、アプリケーションプログラムPG1〜PG5により参照データベース19内の道路ネットワークデータRnの参照を開始する(ステップ#64)。これにより、各アプリケーションプログラムPG1〜PG5は、必要な区画の道路ネットワークデータRnを利用可能となる。そして、アプリケーションプログラムPG1〜PG5による参照が終了したら(ステップ#65:Yes)、処理を終了する。
一方、ステップ#51で要求があった必要な区画の道路ネットワークデータRnが参照データベース19に格納されていない場合には(ステップ#52:No)、参照先決定プログラムPG6は、必要な区画の道路ネットワークデータRnについての読み出し要求をデータ読出手段25に対して行う(ステップ#53)。これにより、データ読出手段25は、読み出し要求に従ってローカル保存データベース16から必要な区画の道路ネットワークデータRnを読み出す(ステップ#54)。そして、読み出された道路ネットワークデータRnを変換手段17により参照用データ形式に変換する(ステップ#55)。このステップ#55による変換後の道路ネットワークデータRnは、一時記憶領域27に格納される(ステップ#56)。その後、アプリケーションプログラムPG1〜PG5により一時記憶領域27内の道路ネットワークデータRnの参照を開始する(ステップ#57)。これにより、各アプリケーションプログラムPG1〜PG5は、必要な区画の道路ネットワークデータRnを利用可能となる。
次に、ナビゲーション装置1は、利用条件判定手段26により、アプリケーションプログラムPG1〜PG5により利用された道路ネットワークデータRnの区画が、その利用形態に関する所定の利用条件を満たすか否かの判定を行う(ステップ#58)。この利用条件については既に説明したとおりである。そして、アプリケーションプログラムPG1〜PG5により利用された道路ネットワークデータRnの区画が前記利用条件を満たす場合には(ステップ#59:Yes)、参照データベース更新手段18は、変換手段17による参照用データ形式への変換後の当該区画の道路ネットワークデータRnを参照データベース19に格納する(ステップ#60)。また、このステップ#60に伴い、参照データベース更新手段18は、格納データテーブルTbに対して新たに格納された区画についての情報を追加する更新を行う(ステップ#61)。一方、アプリケーションプログラムPG1〜PG5により利用された道路ネットワークデータRnの区画が前記利用条件を満たさない場合には(ステップ#59:No)、処理はそのままステップ#62へ進む。
そして、一時記憶領域27内の道路ネットワークデータRnの、アプリケーションプログラムPG1〜PG5による参照が終了したら(ステップ#62:Yes)、一時記憶領域27内の道路ネットワークデータRnを消去する(ステップ#63)。なお、このステップ#63では、道路ネットワークデータRnは区画毎に消去をされるが、ナビゲーション装置1の電源が切られた場合等には、一時記憶領域27に格納されたデータは全て消去される。以上で、道路ネットワークデータRnの利用及びそれに伴う参照データベース19の更新処理が終了する。
3.第二の実施形態
次に、本発明の第二の実施形態について説明する。本実施形態では、図16に示されるように、ナビゲーション装置1の参照データベース更新手段18は、計時手段51及び削除判定手段52を有して構成される。なお、本実施形態に係る、ナビゲーション装置1の構成は、参照データベース更新手段18以外は図12に示す構成と同じである。そして、本実施形態に係るナビゲーション装置1は、上記第一の実施形態において説明した動作処理に加えて、参照データベース19に格納されている地図データとしての道路ネットワークデータRnのうち、所定期間以上利用されなかった道路ネットワークデータRnを参照データベース19から削除する処理を行う。上記第一の実施形態では、利用条件判定手段26により、所定の利用形態に該当すると判定された道路ネットワークデータRnの区画を参照データベース19に格納することとしているが、ナビゲーション装置1の使用期間が長くなると参照データベース19内の道路ネットワークデータRnのデータ量が非常に大きくなる可能性がある。そこで、本実施形態においては、一度は参照データベース19に格納されたが今後利用される可能性が低い道路ネットワークデータRnを、参照データベース19から削除することにより、参照データベース19のデータ量を少なく抑えることを可能とするものである。なお、その他の構成については、上記第一の実施形態と同様である。以下、上記第一の実施形態との相違点について説明する。
計時手段51は、参照データベース19に格納された道路ネットワークデータRnの区画毎の格納期間を計時する手段である。本例では、道路ネットワークデータRnの格納期間は、ナビゲーション装置1の動作時間により規定される期間としている。この計時手段51としては、タイマやカウンタ等を使用することができる。
削除判定手段52は、計時手段51により計時される参照データベース19に格納された道路ネットワークデータRnの区画毎の格納期間に基づいて、参照データベース19内の各区画の道路ネットワークデータRnのそれぞれについて、参照データベース19から削除するか否かの判定を行う手段である。この削除判定手段52は、参照データベース19に格納されてから所定期間以上アプリケーションプログラムPG1〜PG5により利用されなかった道路ネットワークデータRnについて、参照データベース19から削除すると判定する。ここで、削除判定手段52による判定基準となる前記所定期間としては、例えば、道路ネットワークデータRnの格納期間(すなわち、ナビゲーション装置1の動作時間)で100時間等とする。この削除判定手段52により所定の区画の道路ネットワークデータRnを削除する判定が行われた場合には、参照データベース更新手段18は、参照データベース19から当該区画の道路ネットワークデータRnを削除するとともに、格納データテーブルTbに対して削除された区画についての情報を削除する更新を行う。
3−1.参照データベース19におけるデータ削除に伴う動作方法
次に、所定期間以上利用されなかった道路ネットワークデータRnを参照データベース19から削除する処理について説明する。図17は、この処理の方法を示すフローチャートである。この図に示すように、ある区画の道路ネットワークデータRnが参照データベース19に格納されると(ステップ#71:Yes)、ナビゲーション装置1は、計時手段51により当該区画の道路ネットワークデータRnの格納期間の計時を開始する(ステップ#72)。その後、アプリケーションプログラムPG1〜PG5により当該区画の道路ネットワークデータRnが利用された場合には(ステップ#73:Yes)、計時手段51により計時されている格納期間をリセットし(ステップ#74)、再度当該区画の道路ネットワークデータRnについての格納期間の計時を開始する(ステップ#72)。一方、アプリケーションプログラムPG1〜PG5により当該区画の道路ネットワークデータRnが利用されない場合には(ステップ#73:No)、削除判定手段52により、所定期間が経過したか否かを判定する(ステップ#75)。参照データベース19への当該区画の道路ネットワークデータRnの格納期間が所定期間を経過していない場合には(ステップ#75:No)、処理はステップ#73へ戻る。一方、当該区画の道路ネットワークデータRnの格納期間が所定期間を経過した場合には(ステップ#75:Yes)、削除判定手段52は、当該区画の道路ネットワークデータRnを削除する判定を行い、参照データベース更新手段18は当該区画の道路ネットワークデータRnを参照データベース19から削除する(ステップ#76)。その後、参照データベース更新手段18は、格納データテーブルTbに対して削除された区画についての情報を削除する更新を行う(ステップ#77)。以上で処理は終了する。
4.その他の実施形態
(1)上記の各実施形態では、利用条件判定手段26により判定する利用条件が、(A)所定の表示装置としての表示操作部23への地図表示に利用された区画、(B)目的地までの経路探索に利用された区画、(C)地点検索、地点設定又は地点登録の際に利用された区画、及び(D)自位置の進行履歴を構成する経路を登録する際に利用された区画、の全部の中の少なくとも一つに該当することである場合を例として説明した。これは、単なる例示であり、判定する利用条件が(A)、(B)、(C)及び(D)から選択される一部の中の少なくとも一つに該当することである場合も好適な実施形態の一つである。この利用条件の選択は、(A)、(B)、(C)及び(D)から三つ(例えば(A)、(C)及び(D))、二つ(例えば(C)及び(D))、或いは一つ(例えば(C)のみ、或いは(D)のみ)とすることも当然に可能である。例えば、(C)及び(D)の少なくとも一つに該当することを利用条件とする場合、当該利用条件に該当する参照用データ形式への変換後の道路ネットワークデータRnは、参照データベース19に格納される。一方、(A)又は(B)の利用条件に該当する道路ネットワークデータRnを含む(C)及び(D)の利用条件に該当しない道路ネットワークデータRnは、参照データベース19に格納されることはない。なお、このような利用条件の設定や選択を、ナビゲーション装置1のユーザーが行えるようにすることも、好適な実施形態の一つである。
(2)上記の各実施形態において説明した、地図データとしての道路ネットワークデータRnや更新データファイルDf等の参照用データ形式及び更新用データ形式の具体的構成は単なる例示であり、これらのデータの構成を上記の各実施形態とは異なる構成とすることも当然に可能である。
(3)上記の各実施形態では、更新データ生成サーバ2の対照用ローカル保存データベース33の内容が、更新データファイルDfを生成した後に、新ローカル保存データベース34の内容と一致するように更新される場合を例として説明した。この際、更新前の対照用ローカル保存データベース33の内容を消去することも可能であるが、その内容をバージョンデータとともに対照用ローカル保存データベース33に保存しておく構成とすることも好適な実施形態の一つである。このような構成とした場合、対照用ローカル保存データベース33には、所定の区画毎に複数のバージョンの道路ネットワークデータRnが格納されることになる。
(4)上記の各実施形態では、更新データ生成サーバ2は、新規データに基づいて新ローカル保存データベース34を生成し、対照用ローカル保存データベース33と新ローカル保存データベース34との差分に基づいて更新データファイルDfを生成する構成を例として説明した。しかし、更新データ生成サーバ2の構成は、このようなものに限定されない。したがって、例えば、更新データ生成サーバ2が、新ローカル保存データベース34を生成することなく、新規データと対照用ローカル保存データベース33とから更新データファイルDfを生成する構成とすることも好適な実施形態の一つである。
(5)上記の各実施形態では、更新データ生成サーバ2により、少なくとも新規データと対照用ローカル保存データベース33とに基づいて更新データファイルDfを生成する場合を例として説明した。しかし、本発明のサーバ装置の構成は、このようなものに限定されない。したがって、例えば、入力端末31等により、更新データファイルDfに相当するデータを直接入力し、更新データベース41に格納する構成とすることも可能である。この場合、サーバ装置は、上記の各実施形態における更新データ配信サーバ3に相当する構成に加えて、更新データの受付手段を備えるだけの構成とすることができる。
(6)上記の各実施形態では、更新データ生成サーバ2と更新データ配信サーバ3とによりサーバ装置を構成する例について説明した。しかし、サーバ装置の構成はこのようなものに限定されない。例えば、更新データ生成サーバ2の機能と更新データ配信サーバ3の機能を一つのサーバ装置に集約した構成とすることも好適な実施形態の一つである。
(7)上記の各実施形態では、動作プログラムとしてのナビゲーションプログラムPGが複数のアプリケーションプログラムPG1〜PG5を備え、参照データベース19が各アプリケーションプログラムPG1〜PG5に応じたアプリ用データベース19a〜19eを備えている場合を例として説明した。しかし、本発明に係る動作プログラム及び参照データベース19の構成はこれに限定されない。したがって、参照データベース19に格納されるデータが一種類の参照用データ形式のデータにより構成されていてもよく、複数のデータベースに分かれていなくてもよい。また、動作プログラムが複数のアプリケーションプログラムを備えている必要もない。
(8)上記の各実施形態では、地図データとしての参照用データ形式及び更新用データ形の道路ネットワークデータRnが、所定の区画毎のデータとして構成される場合を例として説明した。しかし、地図データの構成はこのようなものに限定されない。例えば、所定の地域毎や道路毎等のデータとして構成されることも好適な実施形態の一つである。この場合においても、動作プログラムとしてのナビゲーションプログラムPGは、地図データの構成単位に従って、地図データの利用を行うと好適である。
(9)上記の各実施形態では、地図データが道路ネットワークデータRnである場合を例として説明した。しかし、本発明に係る地図データの具体的構成は上記の各実施形態に示すものに限定されず、他の各種の構成を有する地図データを対象とすることができる。
(10)上記の各実施形態では、変換手段17が、データ読出手段25により読み出された全てのデータについて、各アプリケーションプログラムPG1〜PG5の実行状態に関わらず、全てのアプリケーションプログラムPG1〜PG5に応じた参照用データ形式(5種類の参照用データ形式)への変換を行う構成である場合を例として説明した。しかし、変換手段17の構成はこれに限定されない。したがって、変換手段17は、例えば、複数のアプリケーションプログラムPG1〜PG5のそれぞれの必要な区画が異なる場合等には、各アプリケーションプログラムPG1〜PG5が必要な区画のデータを、当該アプリケーションプログラムPG1〜PG5に応じた参照用データ形式に変換する構成とすることも好適な実施形態の一つである。また、変換手段17は、例えば、現在実行中のアプリケーションプログラムのみについての参照用データ形式への変換を行う構成とすることも好適な実施形態の一つである。
(11)上記の第二の実施形態においては、所定期間以上利用されなかった道路ネットワークデータRnを参照データベースから削除するに際して、前記所定期間を規定する道路ネットワークデータRnの格納期間を、ナビゲーション装置1の動作時間により規定する場合を例として説明した。しかし、前記所定期間を規定する格納期間は、ナビゲーション装置1の動作時間とは無関係な実時間とすることもできる。また、道路ネットワークデータRnの格納期間は、時間により規定される期間に限定されるものではなく、自位置検出手段21により検出される自位置の移動距離等により規定される期間とすることも好適な実施形態の一つである。