JP5057246B2 - ナビゲーション装置およびプログラム - Google Patents

ナビゲーション装置およびプログラム Download PDF

Info

Publication number
JP5057246B2
JP5057246B2 JP2008267041A JP2008267041A JP5057246B2 JP 5057246 B2 JP5057246 B2 JP 5057246B2 JP 2008267041 A JP2008267041 A JP 2008267041A JP 2008267041 A JP2008267041 A JP 2008267041A JP 5057246 B2 JP5057246 B2 JP 5057246B2
Authority
JP
Japan
Prior art keywords
cost
route
search
hierarchy
shortest
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008267041A
Other languages
English (en)
Other versions
JP2010096603A (ja
Inventor
保輝 細井
正吾 松久
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aisin AW Co Ltd
Original Assignee
Aisin AW Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aisin AW Co Ltd filed Critical Aisin AW Co Ltd
Priority to JP2008267041A priority Critical patent/JP5057246B2/ja
Priority to US12/461,915 priority patent/US8219313B2/en
Priority to DE102009045039A priority patent/DE102009045039A1/de
Publication of JP2010096603A publication Critical patent/JP2010096603A/ja
Application granted granted Critical
Publication of JP5057246B2 publication Critical patent/JP5057246B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes

Description

本発明は階層構造を有する地図データの容量を削減し、経路の品質を維持しつつ経路探索時間の短縮を図るようにしたナビゲーション装置及びプログラムに関する。
ナビゲーション装置では、経路の探索を行う際に、高速道路、有料道路、国道、主要地方道、県道、細街路等の道路種別や、右左折禁止、一方通行等の交通規制の有無、リンク長、道路の幅員、車線数等によって、それぞれ、リンク又はリンク間(ノード)に各種のコストが設定されている。そして、自車位置から目的地までの最適経路を探索する際、地図データに記憶されたリンクに沿って出発地側及び目的地側から経路を探索し、出発地側からの探索と目的地側からの探索との重なり部分において、出発地側から累積されたコストと目的地側から累積されたコストとを加算し、コスト加算値が最小になる経路を最適な誘導経路として設定している。
このような経路探索の所要時間を短縮するために、階層構造を持つ地図データを使用した階層別探索手法が知られている(特許文献1)。階層構造を持つ地図データは、下位階層は全ての道路データを有する詳細地図データ、上位の階層ほど主要な道路データのみ有する広域の地図データから構成される。階層別探索手法は、出発地と目的地の周辺は詳細な地図データを用いてコストを計算し、経路の中間地域では、より粗い地図データで概略的に計算し、両方の結果を統合して案内経路として出力する方法である。このような階層別探索手法によれば、出発地と目的地との間が遠距離の場合、中間経路を粗い地図データを使用して経路探索できるため、全経路を詳細な地図データで探索する場合に比べて、全体として経路探索に要する時間を短縮することができる。
また、経路探索を行った下位階層の地図データにおいて最短コスト経路が確定した場合には、その時点で経路探索を終了し、経路探索の対象となる上位階層の地図データに対して経路探索を行うことなく、より短時間で最適経路を得る手法もある(特許文献2)。例えば、図13(a)において、詳細な地図データを有する階層1において出発地側、目的地側の所定領域内をそれぞれ探索し、出発地側の領域においては探索コスト最小の境界ノードSN11、目的地側の領域においては探索コスト最小の境界ノードDN11が探索されると、これら境界ノードに該当する階層2のノードSN21、DN21に移行し、階層2で経路探索を行う。階層2の重なり部分において出発地側からの経路と目的地側からの経路がつながると、この経路P1を最適経路とする。
特開平2−56591号公報 特開平11−257987号公報
上記従来の経路探索手法では、階層化された地図データと経路探索アルゴリズムを組み合わせる場合、経路探索の所要時間を短縮化するアルゴリズムが、経路探索で得られた経路P1の品質についても最適経路であることを保障するものではない。例えば、図13(b)において、階層1では所定領域の境界到達コストが最小でない出発地側境界ノードSN12、目的地側境界ノードDN12が存在し、これら境界ノードに対応する階層2におけるノードSN22、DN22を起点とする探索で階層2の出発地側、目的地側の所定領域における境界到達コストが最小のノードSN23、DN23が探索され、ノードSN23、DN23に対応する階層3のノードSN31、DN31を起点とする探索で経路P2が探索され、経路P2の探索コストが経路P1の探索コストより小さい可能性がある。経路P2の探索コストの方が小さければ、経路P1より品質について最適経路であることになる。すなわち、階層構造を有する地図データを使用して出発地と目的地とをつなぐ経路をできるだけ迅速に見つけるだけでは、例えば、曲がりくねった山道等を含む経路が探索される可能性があり、最小の探索コストの経路、即ち最短時間で品質が最適な経路を探索できるとは限らない。
しかしながら、階層別探索手法で高品質な経路探索を可能にするためには地図データの階層数を増やす必要がある。例えば、図14に示すように、全ての道路データを有する詳細地図データからなる階層1、一般道路以上の道路データからなる階層2、県道以上の道路データからなる階層3、高速道路データのみ有する階層4のように、地図データの階層数を増やして出発地側、目的地側から経路探索することで非常に高品質な経路の探索が可能となるが、地図データの容量が大きくなり、SDカードのような小型の記憶媒体には、地図データの全てが収まりきらなくなってしまうという問題がある。
本発明は上記課題を解決しようとするもので、階層別探索手法において地図データの容量を少なくするとともに、経路探索で得られる経路の品質を維持しつつ経路探索の所要時間を短縮化することを目的とする。
本発明は、出発地から目的地まで経路探索するナビゲーション装置において、少なくとも1つの階層の地図データを除いた階層構造を有する地図データを格納した情報記憶手段と、前記情報記憶手段から階層構造の地図データを読み出し、出発地側、目的地側それぞれ所定領域内を経路探索し、探索領域の重なった範囲で最短コスト経路を取得する経路探索手段と、経路探索手段の探索を制御する制御手段とを備え、前記経路探索手段は、直近の上位階層の地図データが存在しない階層の探索において前記所定領域を上位階層の探索領域に拡張して探索し、前記制御手段は、取得した最短コスト経路のコストより上位階層まで探索して取得した最短コスト経路のコストが小さいとき、最短コスト経路のコストを更新することを特徴とする。
また、本発明は、道路に関する情報を記憶した情報記憶手段と、前記情報記憶手段に記憶された道路情報に基づいて、目的地までの経路を探索する経路探索手段と、前記経路探索手段により探索された経路の品質を判定し経路探索処理を制御する制御手段とを有し、前記道路情報は、少なくとも1つの階層を除いた詳細度の異なる複数階層のデータレベルで構成され、前記経路探索手段は、出発地側・目的地側の所定領域の範囲を詳細なデータで探索し、直近の上位階層のデータが存在しない階層の探索において前記所定領域を前記上位階層の探索領域に拡張して探索した後、上位の階層のデータレベルへ移行して経路探索を継続し、前記制御手段は、出発地と目的地の間で経路がつながったとき、上位の階層のデータレベルで探索された経路と下位階層のデータレベルで探索された経路とのコストを比較し、下位階層のデータレベルで探索された経路のコストが、上位階層のデータレベルで探索された経路のコストより低いと判断したとき、経路探索処理を終了することを特徴とする。
また、本発明は、出発地から目的地まで経路探索するナビゲーション装置を制御すプログラムにおいて、情報記憶手段から少なくとも1つの階層の地図データを除いた階層構造を有する地図データを読み出すステップ、出発地側、目的地側それぞれ所定領域内を経路探索し、直近の上位階層の地図データが存在しない階層の探索において前記所定領域を前記上位階層の探索領域に拡張して探索し、探索領域の重なった範囲で最短コスト経路を取得するステップ、取得した最短コスト経路のコストより上位階層まで探索して取得した最短コスト経路のコストが小さいとき、最短コスト経路のコストを更新するステップをコンピュータに実行させることを特徴とする。
本発明は、階層化された地図データのうちのある階層を除くことで地図データの容量を削減し、かつ経路探索で得られる経路の品質を維持しつつ経路探索の所要時間を短縮化することが可能となる。
以下、本発明の実施の形態について説明する。
図1は本実施形態に係るナビゲーション装置の例を示すブロック図である。出発地や目的地の情報を入力するキーボード、マウス、タッチパネル、操作キー等からなる入力装置1、現在位置に関する情報を検出する現在位置検出装置2、階層構造を有する地図データであって、少なくとも一つの階層の地図データを除いてデータ容量を削減した地図データ、交差点データ、経路の探索に必要なナビゲーション用データ、経路案内に必要な表示/音声の案内データ、さらに地図の表示、経路探索、音声案内等の案内を行うためのプログラム(アプリケーション及び/又はOS)等を記憶した情報記憶装置3、階層構造を有する地図データを読み出し、出発地側、目的地側それぞれ所定領域内を経路探索し、探索領域の重なった範囲で最短コスト経路を取得する経路探索手段4a、経路探索手段により探索された経路の品質をコストの比較により判定し、経路探索手段による探索処理を制御する制御手段4bを備え、ナビゲータ処理手段として地図の表示処理、経路案内に必要な表示/音声案内処理、さらにシステム全体の制御を行う中央処理装置4、車両の走行に関する情報である、例えば道路情報、交通情報を送受信したり、車両の現在位置に関する情報を検出したり、さらに現在位置に関する情報を送受信したりする情報送受信装置5、経路案内に関する情報を出力するディスプレイやスピーカその他の出力装置6から構成されている。
図2は本実施形態の階層構造の地図データの例を説明する図である。
本実施形態の階層構造を持つ地図データは、少なくとも一つの階層の地図データを除いてデータ容量を削減したデータ構造をしており、図示の例は4階層構造で、階層2のデータが省略されている。階層1は、全ての道路データを有する詳細地図データを有しており、一般道路以上の道路データからなる階層2は除かれている。階層3は県道以上の道路データ、階層4は高速道路データのみ有している。階層2については、ブロック毎の探索用領域については定義されているものの、道路データは存在せず、そのことはデータフォーマット上で定義されていて、中央処理装置4では、経路探索に際して、探索領域の取得については階層2のデータを利用するが、道路データがないことは分かっているので中身のデータの取得処理は行わない。なお、地図データ容量を削減するためには、詳細な道路データを有しているデータ容量の大きい下位階層の地図データを除くのが効果的であるが、一方で全道路データは持っている必要がある。かかる観点から本実施形態では最下位階層より一段上の階層である階層2の地図データを省略している。階層1が全道路データを有しているので、他の階層すべてを省略して階層1のデータのみを用いて経路探索することも可能であるが、それでは探索時間や探索経路の品質に影響が生ずる。従って、データ容量を削減するためには階層構造にもよるが、最下位階層より上であってできるだけ下位に属する階層の地図データを除くのが望ましい。
図3は本実施形態の経路探索、コスト付け処理についての概略を説明する図である。
ここでは、階層2の地図データを省略した4階層構造の地図データを用いる場合の処理手順を示している。階層構造を持つ地図データは、各階層とも所定領域(データ量の多い地域ほど狭い)の複数ブロックから構成され、下位階層は全ての道路データを有する詳細地図データ、上位の階層ほど主要な道路データのみ有する広域の地図データから構成されている。まず、階層1の詳細な地図データを用いて出発地側、目的地側の所定領域についてそれぞれ経路探索するが、階層2のデータが除かれているため階層2の範囲を階層1でカバーして探索する。本来、階層1で探索する領域は狭いが、階層2で探索する範囲まで領域を拡張して探索し(ステップS1、S2)、各領域の境界ノードのコストを求めて保持し、これら両領域で探索した経路に重なりがあれば最短コスト経路としてそのコストを求める(ステップS3)(図の星印はコストを保持していることを示す)。なお、階層2には地図データはないが、領域については定義されているので階層1の探索結果を階層2の領域に適用する。次いで、階層1の探索で到達した各領域の境界ノードに対応する階層3のノードを取得し(ステップS4、S5)、これら各ノードを起点として所定領域の経路探索を行って各ノードの到達コストを保持し(ステップS6、S7)、階層3の出発地側、目的地側の領域で探索した経路に重なりがあり、つながった経路のコストが階層1で取得した最短コスト経路のコストより小さければ、最短コスト経路のコストを更新する(ステップS8)。このように、各階層で出発地側、目的地側の領域で探索し、両領域で探索した経路の重なりがあり、つながった経路のコストが下位階層で取得した最短コスト経路のコストより小さければ、最短コスト経路のコストを更新し、最上位階層4へ移行する(ステップS9、S10)。最上位階層4では必ず経路はつながる筈なので、目的地側から探索を行い(ステップS11)、最上位階層4で得られた経路のコストがそれより下位階層での最短コスト経路のコストより小さければ最短コスト経路のコストを更新する(ステップS12)。このように最短コストの経路が求まるまで各階層での探索を継続することにより取得した経路の品質(コスト)を保持する。また、各階層においてノードの到達コストが最短コスト経路のコストより大きい場合には、以降のノードに対してはコスト付けを行わないとともに、上位階層へ移行する場合には、出発地側と目的地側の境界ノードの中で最小到達コストの和が最短コスト経路のコストより大きい場合には経路探索を終了する(詳細は後述)ことで探索時間が長くなるのを防止する。こうして、地図データの容量を削減しつつ、探索経路の品質の保持と探索時間の短縮を図ることができる。
図4は階層1の探索領域を階層2の探索領域まで拡張する場合の説明図である。
上記したように、階層2の地図データは除かれているが、探索領域については定義されているので、これを利用して階層1の探索において階層2で探索する範囲まで領域を広げて探索する。図示の例で、領域Aが階層1で定義されている探索領域(探索コア領域)とすると、まず、探索コア領域の探索を行ってその境界ノードNd1、Nd2、Nd3、Nd4のコスト(境界までのコスト)を取得し、境界までのコストが最小となる方向に優先的に探索領域を拡張していく。例えば、Nd1のコストが最小であるとすると、Nd1を起点として隣接する領域、この例では領域Dへ優先的に探索領域を拡張していく。次いで、A、Dを合わせた領域を1つの領域とみて、この領域の境界までのコストが最小となる方向、例えば、図示の例で、Nd3のコストが最小であれば領域Bへ優先的に探索領域を拡張し、以後、同様に順次探索領域を拡張していく。こうして、階層2で探索すべき範囲まで探索領域を拡げてその領域の境界ノードとコストを求める。
図5は図2に示したような階層2の地図データを省略した階層構造の地図データを用いた場合の経路探索処理の全体フローを説明する図である。
まず、出発地側の探索開始地点と目的地側の探索開始地点を設定する(ステップS101)。これらの地点は、例えば、図6に示すように、出発地Sに直近の探索対象道路上のノードSN1(図6(a))、目的地Dに直近の探索対象道路上のノードDN1(図6(b))として設定される。次いで、出発地側/目的地側の探索において探索階層を最下位層とし(ステップS102)、出発地側、目的地側の一定領域内をダイクストラ法を用いて探索する(ステップS103、104)。図4で説明したように、階層1の出発地側と目的地側の一定領域(探索コア領域)内をダイクストラ法を用いて探索する。道路には、高速道路、有料道路、国道、主要地方道、県道、細街路等の道路種別や、右左折禁止、一方通行等の交通規制の有無、リンク長、道路の幅員、車線数等によって、それぞれ、リンク又はリンク間(ノード)に各種のコストが設定されており、ダイクストラ法により出発地から目的地までの経路を探索してこれらコストを加算していき最短コストの経路を求める(詳細は後述)。ステップS103、104の探索で出発地側探索領域と目的地側探索領域が重なるか否か判断し(ステップS105)、重なる場合には、探索領域の重なった範囲で最短コスト経路を算出する(ステップS106)。
次いで、最短コスト経路が既に求められていて、そのコストが保存されているか否か判断し(ステップS107)、保存されている場合は、新たに算出された最短コスト経路のコストが、保存されている最短コスト経路のコストより低いか否か判断する(ステップS108)。ステップS107で最短コスト経路が保存されていない場合、ステップS108で新たに算出された最短コスト経路のコストの方が小さい場合は、最短コスト経路のコストを更新する(ステップS109)。ステップS105で出発地側探索領域と目的地側探索領域が重ならない場合、ステップS108で新たに算出された最短コスト経路のコストの方が保持されている最短コストより大きい場合は、経路探索終了判定(詳細は後述)を行う(ステップS110)。この判定で経路探索終了と判定されたか否か判断し(ステップS111)、終了と判定されなかった場合は、直近の上位階層が存在するか否か判断する(ステップS112)。階層1では直近の上位階層(階層2)が存在しないので、現階層(階層1)の上位階層(階層2)に相当する領域に拡張して探索する(ステップS113)(詳細は後述)。次いで、ステップS113における探索の中で経路探索終了と判定されたか否か判断し(ステップS114)、経路探索終了と判定されていない場合、上位階層へのコスト付け(詳細は後述)を行い(ステップS115)、出発地側/目的地側の探索の探索階層を上位階層とする(ステップS116)。次いで、この上位階層が最上位階層か否か判断し(ステップS117)、最上位階層でない場合は、ステップS103に戻って出発地側から同様に探索処理を繰り返し、最上位階層である場合は、ステップS104に戻って目的地側から同様に探索処理を繰り返す。ステップS111、ステップS114で経路探索終了と判定された場合、経路が求められたか否か判断し(ステップS118)、経路が求められていない場合は経路探索失敗とし(ステップS120)、経路が求められている場合は経路探索結果から経路を構成(ステップS117)して経路探索処理を終了する。
図7はダイクストラ法を用いた探索処理フローを示す図である。
探索対象の階層の出発地側/目的地側の一定領域内でコスト付け対象ノードを検索し(ステップS201)、コスト付け対象の全てのノードにコスト付けが行われたか否か判断し(ステップS202)、対象ノード全てにコスト付けが行われていない場合、コスト付け対象ノードの到達コストを取得する(ステップS203)。例えば、図8(黒丸は探索対象領域におけるコスト付け対象ノードを示す)において、コスト付け対象ノードN3が、ノードN1、N2を経由する経路上のノードでその到達コストとして300を取得する。次いで、コスト付け対象ノードに接続する全てのリンクを取得し(ステップS204)、取得した全てのリンクで探索したか否か判断する(ステップS205)。全てのリンクで探索していない場合、コスト付け対象ノードの隣接ノードの到達コストを取得する(ステップS207)。図8の例で、コスト付け対象ノードN3の隣接ノードをN4とし、他のノードNmを経由してきた経路で隣接ノードN4に到達コスト500が設定されていたとして、この値を取得する。次いで、リンクコスト/リンク間(ノード)コストをコスト付け対象ノードの到達コストに加算し(ステップS208)、加算したコストが最短コスト経路のコストを超えているか否か判断し(ステップS209)、超えていない場合はステップS208で求めたコストがステップS207で取得した隣接ノードの到達コストを超えているか否か判断する(ステップS210)。図8の例では、コスト付け対象ノードN3に加算するリンクのコストLCは150であり、これを加算すると隣接ノードN4の到達コストは450となる。一方、既に取得されている最短コスト経路のコストが700であると仮定すると、コスト付け対象ノードN3にリンクコストLCを加算した隣接ノードN4のコストは450で最短コスト経路のコスト700より小さく、さらに、隣接ノードN4に既に設定されている到達コスト500より小さいので、隣接ノードN4の到達コストを450に登録更新して、ステップS205に戻り同様の処理を行う。
ステップS209においてステップS208で求めたコストが最短コスト経路のコストを超えている場合、ステップS210において、ステップS208で取得したコストが隣接ノードのコストを超えている場合は、既に設定されている隣接ノードの到達コストは維持されてステップS205に戻り同様の処理を行う。例えば、図8の例において、コスト付け対象ノードN3と隣接ノードN5間のリンクコストLCが500とすると、隣接ノードN5の到達コストは800となり、既に取得している最短コスト経路のコスト700を超えてしまうため、それ以後のコスト付けは行わず、このノードにはコスト∞を設定してステップS205に戻る。他の隣接ノードN6についてみると、コスト付け対象ノードN3との間のリンクコストLCが100で、これを加算すると到達コストは400となり、このコストを設定する。このような処理を順次行い、ステップS205でコスト付け対象ノードに接続する全てのリンクで探索され、ステップS202で領域内対象ノード全てにコスト付けが行われると領域内探索処理は終了する。
図9は現階層を上位階層に相当する領域に拡張して探索処理するフローを説明する図である。
現階層の地図データからその上位階層に相当する範囲の複数探索領域を出発地側、目的地側について取得する(ステップS501)。これは、図3、図4の例で説明したように除かれた上位階層の探索領域をカバーするためである。図4の例では、図5の処理フローにおけるステップS103、104で探索コア領域(A領域)は既に取り込んでいるのでステップS501では残りの3つの領域(B、C、D領域)を取得する。次いで、目的地側における探索対象の領域を選定する(ステップS502)。この処理は、図4の例の場合には、B、C、D領域の選択順序を選定する処理で、前述したように、探索コア領域の境界ノードのコストの小さい隣接領域の順に選定する。次いで、選定した領域についてダイクストラ法を用いた一定領域内探索を行い(ステップS503)、出発地側探索コア領域と目的地側探索領域が重なるか否か判断し(ステップS504)、重なる場合には探索領域の重なった範囲で最短コストの経路を算出する(ステップS505)。次いで、最短コスト経路のコストは既に保存されているか否か判断し(ステップS506)、保存されている場合には、新たに算出された最短コスト経路のコストは保存している最短コスト経路のコストより低いか否か判断し(ステップS507)、新たに算出された最短コスト経路のコストの方が低い場合、ステップS506において最短コスト経路コストが保存されていない場合には、最短コスト経路のコストを更新する(ステップS508)。ステップS504で出発地側探索コア領域と目的地側探索領域が重ならない場合、ステップS507において新たに算出された最短コスト経路のコストの方が保存されている最短コスト経路のコストより低くない場合には、経路探索終了判定を行う(ステップS509)(詳細は後述)。なお、最下位の階層であっても、出発地と目的地が同じ探索コア領域にある場合は経路探索終了経路探索は終了する。経路探索終了と判定されない場合には(ステップS510、NO)、目的地側複数探索領域全てにコスト付けしたか否か判断し(ステップS511)、複数探索領域全てにコスト付けしてない場合にはステップS502に戻って同様の処理を繰り返す。
ステップS511において複数探索領域全てにコスト付けした場合は、出発地側の探索対象の領域を選定する(ステップS512)。この処理は、ステップS502と同様に、図4の例の場合には、B、C、D領域の選択順序を選定する。次いで、選定した領域についてダイクストラ法を用いた一定領域内探索を行い(ステップS513)、出発地側探索領域と目的地側探索領域が重なるか否か判断し(ステップS514)、重なる場合には探索領域の重なった範囲で最短コストの経路を算出する(ステップS515)。次いで、最短コスト経路のコストは既に保存されているか否か判断し(ステップS516)、保存されている場合には、新たに算出された最短コスト経路のコストは保存している最短コスト経路のコストより低いか否か判断し(ステップS517)、新たに算出された最短コスト経路のコストの方が低い場合、ステップS516において最短コスト経路のコストが保存されていない場合には、最短コスト経路のコストを更新する(ステップS518)。ステップS514で出発地側探索領域と目的地側探索領域が重ならない場合、ステップS517において新たに算出された最短コスト経路のコストの方が保存されている最短コスト経路のコストより低くない場合には、経路探索終了の判定を行い(ステップS519)、経路探索終了と判定されない場合(ステップS520、NO)は、出発地側複数探索領域全てにコスト付けしたか否か判断し(ステップS521)、複数探索領域全てにコスト付けしてない場合にはステップS512に戻って同様の処理を繰り返す。ステップS510、ステップS520において経路探索終了と判定された場合には、現階層を上位階層に相当する領域に拡張しての探索を終了し、ステップS521において出発地側複数探索領域全てにコスト付けした場合には、経路探索を続行(図5のステップS114、ステップS115へと移行)する。
図10は経路探索終了判定を説明する図である。
探索対象の階層が最上位階層か否か判断し(ステップS301)、最上位階層でない場合は、出発地側上位移行ノード(領域境界ノード)の中で最小到達コストノードを検索し(ステップS302)、出発地側上位移行ノードの1つでも到達コストが設定されているか否か判断する(ステップS303)。次いで、目的地側上位移行ノード(領域境界ノード)の中で最小到達コストノードを検索し(ステップS304)、目的地側上位移行ノードの1つでも到達コストが設定されているか否か判断する(ステップS305)。出発地側、目的地側とも上位移行ノードが設定されている場合、出発地側/目的地側それぞれの上位移行ノードの中での最小コストの合計が最短コスト経路のコストより小さいか否か判断し(ステップS306)、各上位移行ノード最小コストの合計が最短コスト経路のコストより小さいときには、経路探索を続行する。ステップS303、ステップS305で到達コストが設定されていない場合は上位階層へ移行しての探索は行わず、ステップS306で出発地側/目的地側それぞれの上位移行ノード最小コストの合計が最短コスト経路のコストより大きい場合には、上位階層で探索しても最短コスト経路は存在しないので経路探索を終了する(ステップS308)。
次に、図11、図12により上位階層へのコスト付け処理を説明する。
図11は上位階層へのコスト付け処理フローを示す図、図12は上位階層へのコスト付けの例を示す図である。
図11において、探索した階層の一定領域内に存在する全ノードを取得する(ステップS401)。探索した階層はダイクストラ法で一定領域内の全ノードに対してのコスト付けは完了している。これら全ノードに対して上位階層へのコスト付け判定が終了したか否か判断し(ステップS402)、終了してない場合、着目している該当ノードは探索した階層の一定領域内の境界に存在するノードか否か判断し(ステップS403)、境界ノードでない場合はステップS402に戻り処理を継続する。この処理は上位階層に上げるノードは境界ノードだけとする処理である。ついで、境界ノードである場合は、該当ノードが上位階層の一定領域内(境界を含む)に存在するか否か判断し(ステップS404)、上位階層の一定領域内(境界を含む)に存在しない場合は探索の継続ができないのでステップS402に戻って、処理を継続する。該当ノードが境界ノードであり、かつ該当ノードが上位階層に存在する場合は、該当ノードに接続する全てのリンクを取得し(ステップS405)、該当ノードに接続する全てのリンクで探索したか否か判断する(ステップS406)。境界ノードに接続する全リンクでの探索は、探索階層での最短コスト経路の探索処理であり、上位階層へコスト付けする処理の段階において、探索階層での最短コスト経路の取得処理を並行して行っている。例えば、図12において、探索階層での探索処理により、出発地側の5つの境界ノードのコストが、それぞれ200、400、800、1100、1400であり、目的地側の5つの境界ノードのコストが300、500、700、1100、1200であるものとすると、これらのノードを上位階層にそのまま上げるとともに、探索階層での5つの境界ノード間を経路探索して上位階層へのコスト付けと並行して最短コスト経路を探索する。
ステップS406で全てのリンクでの探索が終了していない場合、該当ノードの到達コストを取得し(ステップS407)、該当ノードの上位階層ノードに接続する全てのリンクを取得する(ステップS408)。次いで、該当ノードの上位階層ノードに接続する全てのリンクで探索したか否か判断し(ステップS409)、全てのリンクで探索していない場合、該当ノードの上位階層ノードの隣接ノードを取得し(ステップS410)、その到達コストを取得する(ステップS411)。次いで、該当ノードと隣接ノード間のリンクコスト/リンク間(ノード)コストをステップS407で取得した該当ノードの到達コストに加算し、加算したコストがこの段階で取得されている最短コスト経路のコストを超えるか否か判断する(ステップS413)。超えていない場合は加算したコストが該当ノードの上位階層ノードの隣接ノードの到達コストを超えるか否か判断し(ステップS414)、いずれも超えていない場合は該当ノードの上位階層ノードの隣接ノードの到達コストを登録更新して、ステップS409に戻って同様の処理を継続する。例えば、図12の出発地側の領域において、コスト400のノードM1に着目し、ノードM1の隣接ノードM2との間のリンクコストLCが100とすると、ノードM1のコスト400にリンクコスト100を加算して隣接ノードM2の到達コスト500を取得する。この段階で取得されている最短コスト経路のコストが1000であるとすると、隣接ノードM2の到達コストは最短コスト経路のコストより小さい。また、他経路からの探索で隣接ノードM2に到達コスト600が設定されていたと仮定すると、ノードM1からの探索で取得した隣接ノードM2の到達コストはそれより小さいので、隣接ノードM2の到達コストを600から500に登録更新する。こうして順次コスト付けを行って、上位階層の領域の境界ノードM3のコスト800を取得する。
ステップS413において、ステップS412で算出したコスト(該当ノードの到達コストにリンクコスト/リンク間(ノード)コストを加算したコスト)が最短コスト経路のコストを超える場合は、それ以上のコスト付けは行わず、ステップS409に戻って同様の処理を継続する。例えば、図12の出発地側領域において、到達コスト800のノードM4に着目し、その隣接ノードM5との間のリンクLCのコストが250であるとすると、隣接ノードM5の到達コストは1050となって最短コスト経路のコスト1000を超えてしまうので、これ以降のノード付けは行わず、ノードM5に対してはコスト∞を設定する。また、ノードM6、ノードM7は上位階層への移行時は最短コスト経路のコスト1000が分かっていなかったため、それぞれコスト1100、1400に設定されているが、これらのノードに接続するどのノードも到達コストが最短コスト経路コストを超えるので同様にこれ以降のノード付けは行わず、それらのノードに対してはコスト∞を設定する。また、ステップS414において、ステップS412で算出したコストが隣接ノードの到達コストを超える場合もコストの登録はせずにステップS409に戻って同様の処理を継続する。こうして、ステップS409で上位階層ノードに接続する全てのリンクでの探索が終了し、ステップS402で探索階層での全ノードに対して上位階層へのコスト付け判定で終了と判定されると、上位階層へのコスト付けが終了する。
本実施形態に係るナビゲーション装置の例を示すブロック図である。 本実施形態の階層構造の地図データの例を説明する図である。 経路探索、コスト付け処理についての概略を説明する図である。 階層1の探索領域を階層2の探索領域まで拡張する場合の説明図である。 本実施形態の経路探索処理の全体フローを説明する図である。 出発地側、目的地側の探索開始地点を説明する図である。 ダイクストラ法を用いた探索処理フローを示す図である。 探索階層におけるノードのコスト付けを説明する図である。 現階層を上位階層に相当する領域に拡張して探索処理するフローを説明する図である。 経路探索終了判定を説明する図である。 上位階層へのコスト付け処理フローを示す図である。 上位階層へのコスト付けを説明する図である。 階層構造を有する地図データを用いた経路探索を説明する図である。 階層数を増やした地図データを説明する図である。
符号の説明
1…入力装置、2…現在位置検出装置、3…情報記憶装置、4…中央処理装置、4a…経路探索手段、4b…制御手段、5…情報送受信装置、6…出力装置。

Claims (8)

  1. 出発地から目的地まで経路探索するナビゲーション装置において、
    少なくとも1つの階層の地図データを除いた階層構造を有する地図データを格納した情報記憶手段と、
    前記情報記憶手段から階層構造の地図データを読み出し、出発地側、目的地側それぞれ所定領域内を経路探索し、探索領域の重なった範囲で最短コスト経路を取得する経路探索手段と、
    経路探索手段の探索を制御する制御手段とを備え、
    前記経路探索手段は、直近の上位階層の地図データが存在しない階層の探索において前記所定領域を上位階層の探索領域に拡張して探索し、
    前記制御手段は、取得した最短コスト経路のコストより上位階層まで探索して取得した最短コスト経路のコストが小さいとき、最短コスト経路のコストを更新することを特徴とするナビゲーション装置。
  2. 前記経路探索手段は、前記所定領域を上位階層の探索領域に拡張する際に、前記所定領域内の境界までのコストが最小になる方向に優先的に拡張することを特徴とする請求項1記載のナビゲーション装置。
  3. 前記制御手段は、出発地側、または目的地側の所定領域内で探索途中の到達コストが既に取得した最短コスト経路のコストを超えたとき、それ以降のノードに対するコスト付けをしないように経路探索手段を制御することを特徴とする請求項1記載のナビゲーション装置。
  4. 前記制御手段は、出発地側、または目的地側の所定領域の境界ノードに到達コストが設定されていないとき、経路探索手段の経路探索を終了させることを特徴とする請求項1記載のナビゲーション装置。
  5. 前記制御手段は、出発地側、目的地側の所定領域の境界ノード最小コストの合計が既に取得した最短コスト経路のコストより大きいとき、経路探索手段の経路探索を終了させることを特徴とする請求項1記載のナビゲーション装置。
  6. 下位階層の境界ノードに対応する上位階層ノードの隣接ノード到達コストが既に取得した最短コスト経路のコストを超えたとき、それ以降のノードに対するコスト付けをしないように経路探索手段を制御することを特徴とする請求項1記載のナビゲーション装置。
  7. 道路に関する情報を記憶した情報記憶手段と、
    前記情報記憶手段に記憶された道路情報に基づいて、目的地までの経路を探索する経路探索手段と、
    前記経路探索手段により探索された経路の品質を判定し経路探索処理を制御する制御手段とを有し、
    前記道路情報は、少なくとも1つの階層を除いた詳細度の異なる複数階層のデータレベルで構成され、
    前記経路探索手段は、出発地側・目的地側の所定領域の範囲を詳細なデータで探索し、直近の上位階層のデータが存在しない階層の探索において前記所定領域を前記上位階層の探索領域に拡張して探索した後、上位の階層のデータレベルへ移行して経路探索を継続し、前記制御手段は、出発地と目的地の間で経路がつながったとき、上位の階層のデータレベルで探索された経路と下位階層のデータレベルで探索された経路とのコストを比較し、下位階層のデータレベルで探索された経路のコストが、上位階層のデータレベルで探索された経路のコストより低いと判断したとき、経路探索処理を終了することを特徴とするナビゲーション装置。
  8. 出発地から目的地まで経路探索するナビゲーション装置を制御すプログラムにおいて、
    情報記憶手段から少なくとも1つの階層の地図データを除いた階層構造を有する地図データを読み出すステップ、
    出発地側、目的地側それぞれ所定領域内を経路探索し、直近の上位階層の地図データが存在しない階層の探索において前記所定領域を前記上位階層の探索領域に拡張して探索し、探索領域の重なった範囲で最短コスト経路を取得するステップ、
    取得した最短コスト経路のコストより上位階層まで探索して取得した最短コスト経路のコストが小さいとき、最短コスト経路のコストを更新するステップ、
    をコンピュータに実行させることを特徴とするプログラム。
JP2008267041A 2008-10-16 2008-10-16 ナビゲーション装置およびプログラム Expired - Fee Related JP5057246B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008267041A JP5057246B2 (ja) 2008-10-16 2008-10-16 ナビゲーション装置およびプログラム
US12/461,915 US8219313B2 (en) 2008-10-16 2009-08-27 Navigation device and program
DE102009045039A DE102009045039A1 (de) 2008-10-16 2009-09-25 Navigationsvorrichtung und -programm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008267041A JP5057246B2 (ja) 2008-10-16 2008-10-16 ナビゲーション装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2010096603A JP2010096603A (ja) 2010-04-30
JP5057246B2 true JP5057246B2 (ja) 2012-10-24

Family

ID=42035212

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008267041A Expired - Fee Related JP5057246B2 (ja) 2008-10-16 2008-10-16 ナビゲーション装置およびプログラム

Country Status (3)

Country Link
US (1) US8219313B2 (ja)
JP (1) JP5057246B2 (ja)
DE (1) DE102009045039A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2718788C (en) 2008-07-07 2016-04-19 Primordial, Inc. System and method for generating tactical routes
DE102010030715B4 (de) * 2010-06-30 2018-01-18 Preh Car Connect Gmbh Verfahren und Vorrichtung zur effizienten Berechnung von Routen
US8374792B2 (en) * 2010-07-30 2013-02-12 Primordial Inc. System and method for multi-resolution routing
DE102011075327A1 (de) * 2011-05-05 2012-11-08 Bayerische Motoren Werke Aktiengesellschaft Verfahren und Routenermittlungseinrichtung zum Ermitteln zumindest einer ersten Route
CN107851373A (zh) * 2015-07-21 2018-03-27 日产自动车株式会社 场景评估装置、行驶辅助装置、场景评估方法
EP3465089A1 (en) * 2016-06-07 2019-04-10 HERE Global B.V. Gateway cost data sets for fast routing
US10274331B2 (en) 2016-09-16 2019-04-30 Polaris Industries Inc. Device and method for improving route planning computing devices

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0346492B1 (en) 1987-12-28 1995-05-03 Aisin Aw Co., Ltd. Route search method for navigation system
JP2653847B2 (ja) 1988-08-22 1997-09-17 アイシン・エィ・ダブリュ株式会社 ナビゲーション装置及びそのルート探索方法
JP2874397B2 (ja) * 1991-03-19 1999-03-24 松下電器産業株式会社 経路選出装置
JPH0727568A (ja) * 1993-07-09 1995-01-27 Zanabui Informatics:Kk 経路誘導装置および経路探索方法
JP3414873B2 (ja) * 1995-01-20 2003-06-09 三菱電機株式会社 車載用ナビゲーション装置
JPH08292058A (ja) * 1995-04-21 1996-11-05 Matsushita Electric Ind Co Ltd 経路探索装置
JP3173983B2 (ja) * 1995-12-28 2001-06-04 松下電器産業株式会社 経路選出方法およびシステム
JPH109884A (ja) * 1996-06-24 1998-01-16 Mitsubishi Electric Corp 車両用経路案内装置および経路探索方法
JP3717300B2 (ja) * 1998-03-13 2005-11-16 松下電器産業株式会社 経路選出方法
WO2000031663A1 (fr) * 1998-11-24 2000-06-02 Matsushita Electric Industrial Co., Ltd. Structure de données d'un fichier cartographique numérique
US6581003B1 (en) * 2001-12-20 2003-06-17 Garmin Ltd. Systems and methods for a navigational device with forced layer switching based on memory constraints
JP3923848B2 (ja) * 2002-05-17 2007-06-06 アルパイン株式会社 ナビゲーション装置
CN1668893B (zh) * 2002-07-17 2012-03-21 株式会社查纳位资讯情报 导航方法、用于导航系统的处理方法、地图数据管理装置、地图数据管理程序、以及计算机程序
JP4162959B2 (ja) * 2002-09-27 2008-10-08 株式会社ザナヴィ・インフォマティクス 地図データ処理装置
JP4275392B2 (ja) * 2002-12-04 2009-06-10 三菱電機株式会社 ナビゲーション装置
JP3849779B2 (ja) * 2003-01-24 2006-11-22 アイシン・エィ・ダブリュ株式会社 車両用ナビゲーション装置及びプログラム
US7342516B2 (en) * 2003-10-08 2008-03-11 Hitachi, Ltd. Method and apparatus for communicating map and route guidance information for vehicle navigation
JP3910203B2 (ja) * 2005-06-28 2007-04-25 松下電器産業株式会社 経路選出方法
JP4822062B2 (ja) * 2006-09-29 2011-11-24 アイシン・エィ・ダブリュ株式会社 データ更新システム、ナビゲーション装置、及びデータ更新方法
JP2008267041A (ja) 2007-04-23 2008-11-06 Noritz Corp ヘアキャッチャア

Also Published As

Publication number Publication date
DE102009045039A1 (de) 2010-04-22
JP2010096603A (ja) 2010-04-30
US8219313B2 (en) 2012-07-10
US20100100309A1 (en) 2010-04-22

Similar Documents

Publication Publication Date Title
JP4513073B2 (ja) ナビゲーション装置およびプログラム
JP5057246B2 (ja) ナビゲーション装置およびプログラム
JP5116236B2 (ja) 地図データ作成方法及び地図データ作成装置
JP5013738B2 (ja) 地図データ作成装置
US20090125229A1 (en) Corridor mapping with alternative routes
EP1199694A2 (en) Route search apparatus
JPH0727568A (ja) 経路誘導装置および経路探索方法
JP4573216B2 (ja) ナビゲーション装置、ナビゲーション方法及びナビゲーションプログラム。
JP2009002896A (ja) 経路算出装置、経路算出システム、および経路算出方法
JP6912859B2 (ja) 地図更新装置、地図更新方法、コンピュータプログラム及びコンピュータプログラムを記録した記録媒体
JP5164028B2 (ja) 経路探索方法および経路探索装置
JP2013008135A (ja) 渋滞予測装置および渋滞予測データ
JP2009156940A (ja) 経路探索方法
JP4568173B2 (ja) 移動補助情報提供装置
JP2018010019A (ja) 探索装置、探索方法及び探索用プログラム
JP4677767B2 (ja) ナビゲーション装置及び情報提示方法
JP6307270B2 (ja) 経路探索装置
JP3221239B2 (ja) 経路探索装置
JP5660938B2 (ja) 経路設定装置
JP2017049526A (ja) 地図データ作成方法
JP2949887B2 (ja) 経路探索装置
JP4038045B2 (ja) 階層構造のデータを用いた経路探索
JP2015145793A (ja) 経路探索装置、経路探索方法及び経路探索用プログラム
JP7143166B2 (ja) 情報処理装置、方法、および、プログラム
JP2018044902A (ja) ナビゲーションシステム及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110215

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120704

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120706

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120719

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150810

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5057246

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees