JPH11173863A - 経路探索方法 - Google Patents

経路探索方法

Info

Publication number
JPH11173863A
JPH11173863A JP34095997A JP34095997A JPH11173863A JP H11173863 A JPH11173863 A JP H11173863A JP 34095997 A JP34095997 A JP 34095997A JP 34095997 A JP34095997 A JP 34095997A JP H11173863 A JPH11173863 A JP H11173863A
Authority
JP
Japan
Prior art keywords
node
evaluation value
open
destination
route
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.)
Withdrawn
Application number
JP34095997A
Other languages
English (en)
Inventor
Fumio Mizoguchi
文雄 溝口
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.)
Alpine Electronics Inc
Mizoguchi Fumio
Original Assignee
Alpine Electronics Inc
Mizoguchi Fumio
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 Alpine Electronics Inc, Mizoguchi Fumio filed Critical Alpine Electronics Inc
Priority to JP34095997A priority Critical patent/JPH11173863A/ja
Publication of JPH11173863A publication Critical patent/JPH11173863A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Navigation (AREA)
  • Traffic Control Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Instructional Devices (AREA)

Abstract

(57)【要約】 【課題】 短い時間で最適経路あるいはそれに近い経路
を探索する。 【解決手段】 (1) 出発地からノードnを経由して目的
地に至る場合、ノードnの評価関数f(n)を、出発地か
らノードnまでのコストg(n)、ノードnから目的地ま
での最小予測コストh(n)、重み係数ε(≧0)を用いて
次式 f(n)=g(n)+(1+ε)×h(n) で表現し、(2) 展開可能性のあるノードの集合をOPE
N(初期値は出発地)とし、集合OPENの先頭ノードを
取り出してA*アルゴリズムと同様のアルゴリズムを適
用して新たな集合OPENを生成し、(3) 該新たな集合
OPENを構成する各ノードの評価値のうち最小の評価
値fを求め、(4) 評価値が(1+δ)×f以下のノード
であって(δ≧0)、hが最小のノードを集合OPEN
より求め、(5) 該ノードを集合OPENの先頭ノードと
して再度上記処理を繰り返し出発地から目的地までの経
路を探索する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は第1の地点から第2
の地点までの経路を探索する経路探索方法に係わり、特
に、周知のA*アルゴリズムを改良したε−δ法を用い
て最適経路あるいは略最適経路を短時間で探索する経路
探索方法に関する。
【0002】
【従来の技術】車載ナビゲーション装置には、車両を出
発地から目的地まで誘導する経路誘導機能が設けられて
いる。かかる経路誘導機能によれば、目的地を設定する
と、出発地(現車両位置)から目的地までの最適経路
(例えば最短距離の経路)を探索し、探索した最短経路
をモニターに表示してドライバを目的地に向けて案内す
る。従来、かかる最短経路問題に使用可能な探索法とし
て、A*アルゴリズムが知られている。
【0003】A*アルゴリズムは、最短経路を効率的に
発見できるアルゴリズムである。A*アルゴリズムは、
探索段階においてh(n),g(n)の和をノードn(交通網
における交差点)の評価f(n)とする。つまり、 f(n)=g(n)+h(n), ただし、 h(n)=ノードnから目的地ノード到達までに必要と予
測される最小コスト(ヒューリスティック関数) g(n)=出発地点ノードからノードnまでの実コスト である。このノードの評価f(n)を最小にするノードが
探索の各段階で枝を広げ、探索が進められる。なお、最
短経路探索においては、 h(n)=ノードnからゴールまでの直線距離 が良いヒューリスティック関数として知られている。図
18は、かかる評価関数の図解的説明であり、Sは出発
地、Gは目的地、nは着目ノードである。
【0004】A*アルゴリズムの特徴として、次の2点
があげられる。 ・出発地点から目的地点までの経路があるならば、必ず
経路(解)を発見することができる。 ・h(n)が、真のコストを越えないのであれば、最短経
路を発見することができる。 なお、前述のh(n)=(ノードnから目的地点までの直
線距離)は、真のコストを越えることがない(道路網に
おけるある2点間の距離は、その2点を結ぶ最短経路の
距離よりも必ず小さい)ので、必ず最短経路を得ること
ができる。
【0005】図19はA*アルゴリズムの処理フローで
ある。尚、ノードnからノードmに至るコストをcost
(n,m)、あるノードに接続する全ての子ノードを求める
処理を展開すると表現する。又、展開可能性のあるノー
ドの集合をOPEN、既に展開済みのノードの集合をC
LOSEDとする。初期時、集合OPENを構成するノ
ードを出発地Sのみとし、集合CLOSEDを空集合と
する(ステップ101)。すなわち、 OPEN:(S) CLOSED:[ ] とする。ついで、集合OPENが空集合であるかチェッ
クし(ステップ102)、空集合であれば最適経路探索
は失敗と判定する(ステップ103)。しかし、空集合
でなければ、集合OPENの先頭ノード(初期時には出
発地S)を取り出してnとする(ステップ104)。
尚、先頭ノードを取り出すことにより該ノードを集合O
PENより削除する。
【0006】ついで、ノードnが目的地Gであるかチェ
ックし(ステップ105)、目的地であれば、経路探索
が成功する(ステップ106)。したがって、後述する
ポインタを用いて目的地Gより出発地S方向に辿ること
により最適経路を得ることができる。一方、ステップ1
05において、ノードnが目的地Gでなければ、該ノー
ドnを展開して子ノードを全て求め、ノードnを集合C
LOSEDに入れる(ステップ107)。以後、全ての
子ノードについて以下のステップ108a〜108dを
実行する。すなわち、子ノードmについて、評価値を次
式 f(n,m)=g(n)+cost(n,m)+h(m) (2) により計算すると共に、子ノードmが集合OPENある
いは集合CLOSEDを構成するかチェックする(ステ
ップ108a)。
【0007】子ノードが集合OPEN、CLOSEDの
いずれをも構成してなければ、 子ノードmから親ノードnへのポインタを作成し、 前記評価値f(n,m)をf(m)とし(f(m)=f(n,m))、 それぞれ子ノードmに関連付け、該子ノードmを集合O
PENに入れる(ステップ108b)。一方、子ノード
mが集合OPENを構成するノードであれば、集合OP
ENの該ノードに関連付けられている評価値f(m)(第
1の評価値)と前記計算した評価値f(n,m)(第2の評
価値)を比較する。第2の評価値が小さければ、集合O
PENの前記ノードの評価値を第2の評価値f(n,m)で
更新し(f(n,m)→f(m))、かつ、該ノードの親ノード
がノードnとなるようにポインタを更新する(ステップ
108c)。尚、第2の評価値f(n,m)が第1の評価値
より大きければ、ステップ108cの処理をせず、着目
している子ノードmは棄てる。このステップ108c
は、ノードmに到る既知経路より更に評価値の良い経路
が発見された場合、ポインタを更新することにより評価
値のよい経路を新たな既知経路とするものである。
【0008】一方、子ノードmが集合CLOSEDを構
成するノードであれば、集合CLOSEDの該ノードに
関連付けられている評価値f(m)(第1の評価値)と前
記計算した評価値f(n,m)(第2の評価値)を比較す
る。第2の評価値が小さければ、集合CLOSEDにお
ける着目ノード(子ノードと同一ノード)の親ノードが
ノードnとなるようにポインタを更新し、かつ、該着目
ノードの評価値を第2の評価値f(n,m)で更新し(f(n,
m)→f(m))、該着目ノードを集合OPENに戻す(ス
テップ108d)。尚、第2の評価値f(n,m)が第1の
評価値より大きければ、ステップ108dの処理はせ
ず、着目している子ノードmは棄てる。このステップ1
08dは、ノードmに到る既知の経路より更に評価値の
良い経路が発見された場合であって、該ノードmが既に
展開済みになっている場合に、ノードmのポインタを更
新することにより評価値のよい経路を新たな既知経路と
し、かつ、ノードmを新たな既知経路に関連して展開可
能性があるものとして集合OPENに復活するものであ
る。
【0009】ついで、集合OPENを構成する各ノード
の評価値に基づいて評価値の小さい順に並び替える(ス
テップ109)。これにより、評価値が最小の、現時点
では最も最適と思われるノードが集合OPENの先頭ノ
ードになる。以後、ステップ102に戻り、目的地にた
どり着くまで以降の処理を繰り返す。図20はA*アル
ゴリズムの探索例題を示す道路網であり、Sは出発地、
Gは目的地、A〜Iは交差点でそれぞれノードを構成す
る。各ノードは枝(リンク)で相互に接続され、隣接ノ
ード間のコスト(距離)はリンク上に付している。又、各
ノードの目的地までの最小予測コスト(ヒューリスティ
ック関数値)は丸付き数字で示している。
【0010】図21は図20の道路網にA*アルゴリズ
ムを適用して出発地Sから目的地Gまでの最適経路を求
めた場合の説明図である。集合OPENの初期ノードを
出発地Sとして図19のA*アルゴリズムを繰り返し適
用すると、図21の枠数字順に集合OPEN、集合CL
OSEDを構成するノードおよび評価値が順に求まり、
最終的に出発地から目的地までの最適経路 S→A→B→H→I→G が求まる。
【0011】
【発明が解決しようとする課題】ナビゲーション装置の
ユーザは、経路探索に関して生成される経路の質だけで
は満足しない。その経路を探索するのに費やされる時間
についても考慮する必要がある。理想的に経路探索に望
まれるのは、より高速で、より質の良い解である。しか
し、一般に解の質と探索時間はトレードオフの関係にあ
り、現実的に探索時間が短くて済む最適解に近い解の方
が、長い探索時間を必要とする最適解よりも利用価値が
ある。カーナビの場合、渋滞にでもおちいっていない限
り探索結果が得られるのを待っている間も刻々と状況は
変化してしまうのである。A*アルゴリズムは最適経
路、すなわち、最短経路を探索できるが、探索範囲が広
いため探索時間が長くなり、許容時間内に最適経路を探
索できない場合がある。最近のナビゲーション装置で
は、車両が誘導経路を外れたオフルート時に、直ちに目
的地までの経路を再探索して表示する機能が要求され、
経路探索時間の短縮が要望されている。以上から、本発
明の目的は、短い時間で最適経路あるいはそれに近い経
路を探索できる経路探索方法を提供することである。
【0012】
【課題を解決するための手段】上記目的は本発明によれ
ば、(1) 出発地からノードnを経由して目的地に至る場
合、ノードnの評価関数f(n)を、出発地からノードn
までのコストg(n)、ノードnから目的地までの最小予
測コストh(n)、重み係数ε(≧0)を用いて次式 f(n)=g(n)+(1+ε)×h(n) で表現し、(2) 展開可能性のあるノードの集合をOPE
N(初期値は出発地)、既に展開済みのノードの集合をC
LOSEDとし、集合OPENの先頭ノードを取り出し
てA*アルゴリズムを適用して(但し、評価関数は上式
を用いる)新たな集合OPENを生成し、(3) 該新たな
集合OPENを構成する各ノードの評価値のうち最小の
評価値fを求め、(4) 評価値が(1+δ)×f以下のノ
ードであって(δ≧0)、最小予測コストhが最小のノ
ードを集合OPENより求め、(5)該ノードを集合OP
ENの先頭ノードとして再度A*アルゴリズムを適用
し、以後、上記処理を繰り返して出発地から目的地まで
の経路を探索する経路探索方法により達成される。
【0013】
【発明の実施の形態】(a)本発明を適用できるナビゲ
ーション装置の構成 図1は本発明を適用できるナビゲーション装置の概略構
成図である。図中、1は地図情報を記憶するCD−RO
M、DVD等の地図情報記憶媒体、2は自車位置を検出
する車両位置検出部で、自立航法センサー(車速センサ
ー、方位センサーなど)やGPSで構成されるもの、3
は目的地の設定やメニュー項目の選択による各種指示、
地図の拡大/縮小等の操作を行うリモコンユニット、4
はナビゲーション制御部における経路探索ユニット、5
は地図及び探索した誘導経路を表示するモニターであ
る。経路探索ユニット4は、目的地が入力されると本発
明のε-δ法に基づいたアルゴリズムにしたがって現車
両位置を出発地として経路探索を開始し、得られた経路
をモニター5に表示する。ε-δ法の最大の特徴は、道
路網の性質を反映したヒューリスティックスを使用して
いる点と、解の質の下限を制限することができる点であ
る。この2つの特徴により経路探索時間を短縮すること
が可能になる。
【0014】(b)ε−δ法 経路探索などの問題では、前述のようにA*アルゴリズ
ムが知られている。このA*アルゴリズムは、最良優先
探索の一つで次に展開するノードの評価を f(n)=g(n)+h(n) により求め、この評価値を最小とするものからどんどん
展開していくという戦略をとるものである。つまり、g
(n),h(n)の両者をできる限り小さく保ちながら探索を
進めようとするのがA*アルゴリズムの戦略である。こ
こで、g(n)は出発地からノードnまでの累積コストを
表し、h(n)はノードnから目的地までの最小予測コス
トを表す。このh(n)は真の値に近くなればなる程、効
率性を向上させる性質がある。経路探索の場合、 h(n)=(ノードnからゴールまでの直線距離) を使用する場合が多い。
【0015】力学的に表現すれば、図2に示すように、
g(n)は出発地との距離を小さくする、つまり、出発地
に引き付けようとする力である。一方、h(n)は目的地
までの直線距離を小さくする、つまり目的地に引き付け
ようとする力であると見なすことができる。ここで、重
要なことは、A*アルゴリズムでは、力g(n)と力h(n)
が1:1で評価されている点である。この点に着目し、
g(n)とh(n)の力関係に変化を加えることにより、探索
時間をユーザが許容する程度に短縮し、かつ、略最適の
経路を探索できるようにするのがε−δ法のねらいであ
る。すなわち、g(n)よりh(n)の評価を大きくするなら
ば、A*アルゴリズムに比べてより目的地に引き寄せる
力が大きく作用する。この結果、出発地と目的地を結ぶ
直線から探索ノードが大きく外れることがなくなって行
き、探索範囲の拡がりが抑制され、探索時間が短縮す
る。
【0016】図3は探索範囲の傾向を示すものであり、
(a)はA*アルゴリズムによる場合で、探索範囲はふ
っくらと広がった形状を示し、(b)はg(n)よりh(n)
の評価を大きくした場合で、探索範囲は先鋭化して出発
地と目的地を結ぶ直線に近づく傾向を示す。この
(a)、(b)より明らかなようにA*アルゴリズムに
よる場合には、探索範囲が広くなって探索ノードが多く
なり、探索時間が長くなる。これに対してg(n)よりh
(n)の評価を大きくした場合は、探索範囲が狭まって探
索ノードが少なくなり、探索時間が短くなる。
【0017】ε−δ法は、以上を考慮して評価関数 f(n)=g(n)+(1+ε)×h(n) を用いて探索をするものである。(1+ε)はヒューリ
スティック関数値h(n)に対する重みであり、ε≧0で
ε=0の場合にA*アルゴリズムと同様になる。ε−δ
法は、A*アルゴリズムがベースであるがA*アルゴリズ
ムに比べ効率よく探索を進めることができる。道路網に
おいては、ある2点間の最短距離はその2点間の直線距
離の1次関数として表せるという報告(腰塚武志、小林
純一、”道路距離と直線距離”,第18回日本都市計画
学会学術研究論文集1983)がなされており、このことか
らも、h(n)(直線距離)の代わりに(1+ε)×h(n)を
使用するのは、より真の値に近い適格なヒューリスティ
ックを使用したことと等しくなる。そして、結果として
展開するノード数を大幅に減少させ、探索時間を小さく
することができる。
【0018】また、δは探索結果の解の精度に関する制
約を調節するものである。具体的には、A*アルゴリズ
ムにおいて、OPENリストから次の着目ノードを決定
する際に、評価値fにδ%の誤差を許すことで、より高
速に解を求めることを可能にする。現在のOPENリス
ト内で最良の評価値fの値に対し、(1+δ)×f以下
の評価値を持つノードを次の着目ノードの候補とし、そ
の候補の中からヒューリスティック関数値(最小予測コ
スト)h(n)が最も小さいものを次の着目ノードとす
る。これにより、評価値が(1+δ)×fより大きいノ
ードは探索の対象から除外されるため探索範囲が狭ま
り、探索を高速化させることが可能になる。又、h(n)
が小さいということは目的地に近いということに等しい
から、ヒューリスティック関数値h(n)が最小のノード
は最も好ましいノードであり、このノードを次の着目ノ
ードとすることにより経路探索を更に短縮できる。
【0019】(c)ε−δ法のアルゴリズム 図4、図5は本発明のε−δ法による経路探索アルゴリ
ズムのフローであり、図6はその説明図である。展開可
能性のあるノードの集合をOPEN、既に展開済みのノ
ードの集合をCLOSEDとする。
【0020】初期時、集合OPENを構成するノードを
出発地Sとし、集合CLOSEDを空集合とする(ステ
ップ201)。すなわち、 OPEN:(S) CLOSED:[ ] とする。ついで、集合OPENが空集合であるかチェッ
クし(ステップ202)、空集合であれば経路探索は失
敗と判定する(ステップ203)。しかし、空集合でな
ければ、集合OPENの先頭ノード(初期時には出発地
S)を取り出してnとする(図6、ステップ204)。
尚、先頭ノードを取り出すことにより該ノードを集合O
PENより削除する。
【0021】ついで、ノードnが目的地Gであるかチェ
ックし(ステップ205)、目的地であれば、経路探索
が成功する(ステップ206)。したがって、後述する
ポインタを用いて目的地Gより出発地S方向に辿ること
により最適経路を得ることができる。一方、ステップ2
05において、ノードnが目的地Gでなければ、該ノー
ドnを展開して子ノードmを全て求め、ノードnを集合
CLOSEDに入れる(ステップ207)。ついで、子
ノードmについて、ヒューリスティック関数値(最小予
測コスト)h(m)を計算して保存すると共に、評価値を
次式 f(n,m)=g(n)+cost(n,m)+(1+ε)×h(m) (3) により計算する(ステップ208)。しかる後、子ノー
ドmが集合OPENあるいは集合CLOSEDを構成す
るかチェックする(ステップ209)。
【0022】子ノードが集合OPEN、CLOSEDの
いずれをも構成してなければ、 子ノードmから親ノードnへのポインタと、 前記計算したヒューリスティック関数値h(m)と、 前記計算した評価値f(n,m)をf(m)として(f(m)=
f(n,m))、 それぞれ子ノードmに関連付け、該子ノードmを集合O
PENに入れる(ステップ210)。
【0023】一方、子ノードmが集合OPENを構成す
るノードであれば、集合OPENの該ノードに関連付け
られている評価値f(m)(第1の評価値)と前記計算し
た評価値f(n,m)(第2の評価値)を比較する。第2の
評価値が小さければ、集合OPENの前記ノードの評価
値を第2の評価値f(n,m)で更新し(f(n,m)→f
(m))、かつ、該ノードの親ノードがノードnとなるよ
うにポインタを更新する(ステップ211)。この場
合、第2の評価値f(n,m)が第1の評価値f(m)より大き
ければ、ステップ211の処理をせず、着目している子
ノードmは棄てる。このステップ211は、ノードmに
到る既知経路より更に評価値の良い経路が発見された場
合、ポインタを更新して、より評価値のよい経路を新た
な既知経路とするものである。
【0024】一方、ステップ209において、子ノード
mが集合CLOSEDを構成するノードであれば、集合
CLOSEDの該ノードに関連付けられている評価値f
(m)(第1の評価値)と前記計算した評価値f(n,m)(第
2の評価値)を比較する。第2の評価値が小さければ、
集合CLOSEDにおける着目ノード(子ノードと同一
ノード)の親ノードがノードnとなるようにポインタを
更新し、かつ、着目ノードの評価値を第2の評価値f
(n,m)で更新し(f(n,m)→f(m))、該着目ノードを集
合OPENに戻す(ステップ212)。この場合、第2
の評価値f(n,m)が第1の評価値f(m)より大きければ、
ステップ212の処理はせず、着目している子ノードm
は棄てる。このステップ212は、ノードmに到る既知
の経路より更に評価値の良い経路が発見された場合であ
って、該ノードmが既に展開済みになっている場合に、
ノードmのポインタを更新することにより評価値のよい
経路を新たな既知経路とし、かつ、ノードmを新たな既
知経路に関連付けて展開可能性があるものとして集合O
PENに復活するものである。
【0025】しかる後、ステップ207で求めた全子ノ
ードについて上記処理を完了したかチェックし(ステッ
プ213)、終了してなければ、次の子ノードについて
ステップ208以降の処理を繰り返す。全子ノードにつ
いて処理が終了すれば、新たな集合OPENを構成する
各ノードの評価値に基づいて評価値の小さい順に並び替
える(ステップ214)。ついで、最小の評価値をfと
し(ステップ215)、次式 upper=f×(1+δ) (4) により、評価値の許容上限値upperを演算する(ステップ
216)。
【0026】ついで、評価値が許容上限値upper以下
で、かつ、最小のヒューリスティック関数値hのノード
を求め(ステップ217)、該ノードを集合OPENの
先頭ノードにする(ステップ218)。これにより、許
容上限値を越えないノードのうち、最もゴール近くにあ
ると思われるノードがOPENの先頭ノードになる。以
後、ステップ202に戻り、目的地にたどり着くまで以
降の処理を繰り返す。又、h(n)が小さいということは
目的地に近いことを意味しているから、ヒューリスティ
ック関数値h(n)が最小のノードは現時点では最も好ま
しいノードであり、このノードを次の着目ノードとする
ことにより経路探索を更に短縮することができる。図7
〜図11は図20の道路網に本発明のε−δ法のアルゴ
リズムを適用して経路探索する手順説明図であり、 ε′=1+ε=1.5, ε=0.5 δ′=1+δ=1.2, δ=0.2 とした例である。
【0027】(d)ε−δ法アルゴリズムのプログラム
例以下はC++言語で図4、図5に示すε−δ法を記述
したプログラム例である。 0: class node{ 1: pointer parent; 2: value f; 3: value h; 4: } 5: 6: Search(){ 7: node m,n,S,G; 8: value epsilon; 9: S←start node; 10: G←goal node; 11: OPEN:[S]; 12: CLOSED:[]; 13: 14: while{ 15: if(OPEN = φ) 16: exit(fail); 17: 18: n←first element of OPEN; 19: remove n from OPEN; 20: 21: if(n=G) 22: exit(success); 23: 24: add n to CLOSED; 25: 26: for(each child node m of n){ 27: 28: f(n,m)←g(n)+cost(n,m)+(1+epsilon)×h(m); 29: 30: if((OPEN∩m)∪(CLOSED∩m)=φ) 31: m.parent←n; 32: m.f←f(n,m); 33: m.h←h(m); 34: else if((OPEN∩m)≠φ) 35: if(f(n,m)<m.f) 36: m.parent←n; 37: m.f←f(n,m); 38; else if((CLOSED∩m)≠φ) 39: if(f(n,m)<m.f) 40: m.parent←n; 41: m.f←f(n,m); 42: remove m from CLOSED; 43: and m to OPEN; 44: } 45: 46: sort(OPEN); 47: } 48: } 49: 50: sort(List){ 51: 52: value delta,upper,tmp_value; 53: node tmp_node; 54: 55: find element p with min f value from List; 56: upper←p.f×(1+delta); 57: 58: tmp_value←∞; 59: 60: for(each element q of List){ 61: if(q.f<upper) 62: if (q.h<tmp_value) 63: tmp_node←q; 64: tmp_value←q.h; 65: } 66: 67: remove q from List; 68: insert q to List as first element; 69: } 上記プログラムと図4および図5には以下の対応関係が
ある。
【0028】すなわち、(1) 上記プログラム番号11,12
が図4のステップ201に対応し、(2) プログラム番号
15、16がステップ202、203に対応し、(3) プログ
ラム番号18、19がステップ204に対応し、(4) プログ
ラム番号21、22がステップ205、206に対応し、(5)
プログラム番号24〜26がステップ207,213に対
応し、(6) プログラム番号28がステップ208に対応
し、(7) プログラム番号30,34,38がステップ209に対
応し、(8) プログラム番号31〜33がステップ210に対
応し、(9) プログラム番号35〜37がステップ211に対
応し、(10)プログラム番号39〜43がステップ212に対
応し、(11)プログラム番号46がステップ214に対応
し、(12)プログラム番号55がステップ215に対応し、
(13)プログラム番号56がステップ216に対応し、(14)
プログラム番号60〜65がステップ217に対応し、(15)
プログラム番号67〜68がステップ218に対応する。
【0029】(e)εの決定法 2点間の直線距離と道路網における最短距離の関係から
εを導く。この方法は以下の通りである。 (1) ランダムな2点を選び、その直線距離xiとして保
存する。 (2) その2点の最短経路を、直線距離をヒューリスティ
ックス値としたA*アルゴリズムで解く。その結果をyi
として保存する。 (3) (1),(2)のデータ(xi,yi)を収集する。 (4) α%の確率でyi>(1+ε)×xiといえる係数εを
求める。以上より、最短距離を直線距離の(1+ε)倍と
して表すことができる。α=100%の場合ε=0であり、
αが小さくなる程εが大きくなる。探索時間を短縮する
という点でεはなるべく大きい値が望ましいが、大きす
ぎるとαが小さいことを意味し、探索経路の精度に影響
を与える。すなわち、確率α%が小さくなるほど(εが
大きくなる程)、得られる解は最適解にならない場合が
増加するため、適当なεを決定する必要がある。
【0030】図12は、ランダムに選ばれた2点間の最
短距離xiと直線距離yiの関係を230点プロットした
ものである。このデータに対するεの変化により、最適
解を保証する確率は図13のようになる。なお、図13
において(1+ε)<1にも拘らず、確率が1にならな
いのは、地球上の2点間の距離の測定法に若干の誤差が
含まれているからである。ここで、最適解が得られる確
率が約90%であるε=0.12と、約95%であるε=0.
09を使って探索時間の変化をランダムな10例題に適用
した実験結果を図14および図15に示す。図14は探
索時間の比較、図15は探索した経路距離の比較を示す
グラフである。なお、計算に使用したマシンはSun ULTR
A1(CPU:ULTRA Sparc144MHz,Memory:128Mbyte)である。
使用した地図のレベルはレベル0である。
【0031】実験結果では、εの効果が明らかに出てい
る。例題4の結果などを見れば、解の質は最適解に等し
いものにもかかわらず(図15参照)、探索時間がε=
0.12の場合に約4分の3以下にまで短縮されている。そ
の他の例題に関しても、解の質の低下は極めて小さなも
のであり、そのわずかな低下で探索時間を大きく減少さ
せることに成功している。この結果、より本アルゴリズ
ムが解の質を大きく落とすことなく探索時間を短縮させ
る能力があることが示されている。εの最適値は道路状
況に応じて変化するから、予め地図と組にεを持たせる
ようにする。あるいは、都市部、郊外、山間部等で道路
状況が異なるから、ユーザがどの地域を走行しているか
によりεを設定する。あるいは、地図に含まれる道路長
などから、自動的にεを決定するようにすることもでき
る。
【0032】(f)δの決定法 δは、ユーザの嗜好で決定される変数である。この変数
は、小さくなればなるほどより質の良い解を返す。逆に
大きくすれば、解の質は落ちる可能性が高くなるが高速
探索が可能になる。以下に、このδを変化させたときの
経路探索のパフォーマンスの変化を図16および図17
に示す。なお、εとして先ほどの実験で用いたε=0.09
を使用し、また、ナビ研地図の図葉630番におけるノ
ード番号207から500番までの最適経路探索をした
場合について示す。ノード207番からノード500番
周辺は、千葉県柏市周辺で特に入り組んだ道路網となっ
ており、探索の評価に適していると考えたからである。
使用したマシンは先ほどと同じSun ULTRA1である。
【0033】図16では、δを大きくする程、探索時間
の高速化が明らかに見られる。また、図17ではδの増
加とともに経路長が長くなる傾向にあるが、あるδにお
ける経路長は少なくとも、もっとも良い解の(1+δ)
倍以下に完全に抑えられるという保証が示されている。
具体的な数値をあげると、例えばδ=0.2の場合、実験
により得られた経路長は12782mであるが、これはδ=0
の最良の場合の経路長12356mに対し、 12782<12356×(1+0.2)=14827.2 という関係にある。以上の実験により、εにより高速化
され、δで最悪のケースを保証してさらにそれを高速化
している本アルゴリズムの有効性が明らかなものである
ことが示された。以上、本発明を実施例により説明した
が、本発明は請求の範囲に記載した本発明の主旨に従い
種々の変形が可能であり、本発明はこれらを排除するも
のではない。
【0034】
【発明の効果】以上本発明のε-δ法によれば、εの値
は道路網の性質から導き出し、このεを使うことで大き
く探索時間を短縮できた。また、あるεが導きだす最良
の結果に対し、δは値は最悪の場合の解を保証をしたう
えで高速化を可能にする。本発明によれば、経路探索に
求められる解の質、計算速度の条件を満たしており、ナ
ビゲーション装置に適用して好適である。
【図面の簡単な説明】
【図1】本発明を適用できるナビゲーション装置の概略
構成図である。
【図2】A*アルゴリズムの考察図である。
【図3】探索範囲の傾向説明図である。
【図4】本発明のε−δ法を用いた経路探索の処理フロ
ー(その1)である。
【図5】本発明のε−δ法を用いた経路探索の処理フロ
ー(その2)である。
【図6】本発明のε−δ法を用いた経路探索の説明図で
ある。
【図7】本発明のε−δ法による経路探索手順(その
1)である。
【図8】本発明のε−δ法による経路探索手順(その
2)である。
【図9】本発明のε−δ法による経路探索手順(その
3)である。
【図10】本発明のε−δ法による経路探索手順(その
4)である。
【図11】本発明のε−δ法による経路探索手順(その
5)である。
【図12】最短距離と直線距離の関係図である。
【図13】εの値と最適解を与える確率の対応図表であ
る。
【図14】εの値に応じた探索時間の比較グラフであ
る。
【図15】εの値に応じた探索経路距離の比較グラフで
ある。
【図16】δと探索時間の関係図である。
【図17】δと探索経路の質の関係図である。
【図18】A*アルゴリズムのイメージ図である。
【図19】A*アルゴリズムの処理フロー図である。
【図20】探索例題を示す道路網である。
【図21】A*アルゴリズムによる探索説明図である。
【符号の説明】
1・・地図情報記憶媒体 2・・車両位置検出部 3・・リモコンユニット 4・・ε-δ法アルゴリズムに基づた経路探索ユニット 5・・モニター

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 第1の地点から第2の地点までの経路を
    探索する経路探索方法において、 出発地からノード(交差点)nを経由して目的地に至る
    場合、ノードnの評価関数f(n)を、出発地からノード
    nまでのコストg(n)、ノードnから目的地に到達する
    までに必要であると予測される最小コストh(n)、重み
    係数ε(≧0)を用いて次式 f(n)=g(n)+(1+ε)×h(n) で表現し、又、ノードnからノードmに至るコストをco
    st(n,m)、あるノードに接続する全ての子ノードを求め
    る処理を展開すると表現する時、展開可能性のあるノー
    ドの集合をOPEN、既に展開済みのノードの集合をC
    LOSEDとし、初期時、集合OPENを構成するノー
    ドを出発地とし、集合CLOSEDを空集合とし、 集合OPENの先頭ノードを取り出してnとし、ノード
    nが目的地であるかチェックし、目的地でなければ、n
    を展開して子ノードを全て求め、ノードnを集合CLO
    SEDに入れ、 子ノードmについて、評価値を次式 g(n)+cost(n,m)+(1+ε)×h(m) により計算すると共に、子ノードmが集合OPENある
    いは集合CLOSEDを構成するかチェックし、 子ノードが集合OPEN、CLOSEDのいずれをも構
    成してなければ、子ノードmから親ノードnへのポイ
    ンタと、前記評価値と、子ノードmから目的地まで
    の最小予測コストh(m)をそれぞれ関連付けて該子ノー
    ドmを集合OPENに入れ、 子ノードmが集合OPENを構成するノードであれば、
    集合OPENの該ノードに関連付けられている第1の評
    価値と前記計算した第2の評価値を比較し、第2の評価
    値が小さければ、集合OPENの前記ノードの評価値を
    第2の評価値で更新し、かつ、親ノードがノードnとな
    るようにポインタを更新し、 子ノードmが集合CLOSEDを構成するノードであれ
    ば、集合CLOSEDの該ノードに関連付けられている
    第1の評価値と前記計算した第2の評価値を比較し、第
    2の評価値が小さければ、集合CLOSEDにおけるノ
    ードの親ノードがノードnとなるようにポインタを更新
    し、かつ、該ノードの評価値を第2の評価値で更新して
    集合CLOSEDより集合OPENに戻し、 しかる後、集合OPENを構成する各ノードに関連付け
    られている評価値であって、最小の評価値fを求め、評
    価値が(1+δ)×f以下のノードであって(δ≧
    0)、最小予測コストが最小のノードを求め、 該ノードを集合OPENの先頭ノードnとして、上記処
    理を繰り返して出発地から目的地までの経路を探索す
    る、ことを特徴とする経路探索方法。
  2. 【請求項2】 ノードnから目的地に到達するまでに必
    要であると予測される最小コストh(n)は、ノードnと
    目的地間の直線距離であることを特徴とする請求項1記
    載の経路探索方法。
JP34095997A 1997-12-11 1997-12-11 経路探索方法 Withdrawn JPH11173863A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34095997A JPH11173863A (ja) 1997-12-11 1997-12-11 経路探索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34095997A JPH11173863A (ja) 1997-12-11 1997-12-11 経路探索方法

Publications (1)

Publication Number Publication Date
JPH11173863A true JPH11173863A (ja) 1999-07-02

Family

ID=18341896

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34095997A Withdrawn JPH11173863A (ja) 1997-12-11 1997-12-11 経路探索方法

Country Status (1)

Country Link
JP (1) JPH11173863A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100639498B1 (ko) * 1999-12-14 2006-10-26 주식회사 케이티 객체 모듈의 다변수 가중치 변경을 통한 최적경로 산출방법
JP2010151539A (ja) * 2008-12-24 2010-07-08 Mic Ware:Kk 地図情報処理装置、地図情報処理方法、およびプログラム
CN103529843A (zh) * 2013-10-17 2014-01-22 电子科技大学中山学院 Lambda*路径规划算法
KR20150062834A (ko) * 2013-11-29 2015-06-08 현대엠엔소프트 주식회사 휴리스틱을 이용한 주행 경로 탐색 장치 및 방법
CN109724606A (zh) * 2019-01-23 2019-05-07 北京信息科技大学 基于改进的a*算法的矿井突水避灾路径规划方法和装置
CN111399543A (zh) * 2020-04-04 2020-07-10 西安爱生技术集团公司 一种基于a*算法的同区域多条无碰撞航线规划方法
KR20220073580A (ko) * 2020-11-26 2022-06-03 울산과학기술원 지도 상에서 경로를 제공하는 방법 및 장치

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100639498B1 (ko) * 1999-12-14 2006-10-26 주식회사 케이티 객체 모듈의 다변수 가중치 변경을 통한 최적경로 산출방법
JP2010151539A (ja) * 2008-12-24 2010-07-08 Mic Ware:Kk 地図情報処理装置、地図情報処理方法、およびプログラム
CN103529843A (zh) * 2013-10-17 2014-01-22 电子科技大学中山学院 Lambda*路径规划算法
CN103529843B (zh) * 2013-10-17 2016-07-13 电子科技大学中山学院 Lambda*路径规划算法
KR20150062834A (ko) * 2013-11-29 2015-06-08 현대엠엔소프트 주식회사 휴리스틱을 이용한 주행 경로 탐색 장치 및 방법
CN109724606A (zh) * 2019-01-23 2019-05-07 北京信息科技大学 基于改进的a*算法的矿井突水避灾路径规划方法和装置
CN111399543A (zh) * 2020-04-04 2020-07-10 西安爱生技术集团公司 一种基于a*算法的同区域多条无碰撞航线规划方法
KR20220073580A (ko) * 2020-11-26 2022-06-03 울산과학기술원 지도 상에서 경로를 제공하는 방법 및 장치

Similar Documents

Publication Publication Date Title
US7054742B2 (en) Method and system for route calculation in a navigation application
US20090125229A1 (en) Corridor mapping with alternative routes
US11733058B2 (en) Methods and systems for generating parking routes
JP5053705B2 (ja) 推定関数を使用する最適ルート決定
JP4353658B2 (ja) 経路探索方法及び経路探索装置
EP2075537B1 (en) Navigation apparatus and program
JPH063156A (ja) 経路探索装置
JP2001304892A (ja) ルーティング・ガイダンスを供給する方法及びシステム
KR20040067828A (ko) 차량용 네비게이션 장치 및 프로그램
Zhao et al. An adaptive route-guidance algorithm for intelligent vehicle highway systems
US8219313B2 (en) Navigation device and program
JPH11173863A (ja) 経路探索方法
JPH08201091A (ja) 経路誘導装置
CN112384759A (zh) 用于为车辆路线规划确定路线的方法和设备
Hedderich et al. Adapting the A* algorithm for park spot routing
JP3289240B2 (ja) グラフ探索方法及び装置
KR101158815B1 (ko) 운전자의 운전성향 학습에 의한 경로 탐색 방법
JP2000136939A (ja) 時間制限付き経路探索方法
Lakshna et al. Smart Navigation for Vehicles to Avoid Road Traffic Congestion using Weighted Adaptive Navigation* Search Algorithm
JPH0798799A (ja) 自動車の経路誘導装置
JP4677767B2 (ja) ナビゲーション装置及び情報提示方法
JP2725900B2 (ja) 経路探索方法
JPH07103773A (ja) 経路計算方法及び装置
JP2005069824A (ja) 経路探索装置および経路探索プログラム
JPH08189837A (ja) 経路誘導装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050301