(57)【特許請求の範囲】
【請求項１】
第１の地点からノード（交差点）ｎを経由して第２の地点に至る場合、ノードｎにおける評価値ｆ(n)を、第１の地点からノードｎまでのコストｇ(n)、ノードｎから第２の地点に到達するまでに必要であると予測される最小コストｈ(n)、重み係数ε（≧１）を用いて次式
ｆ(n)＝ｇ(n)＋ε・ｈ(n)で表現し、対象ノードのうち評価値が最小のノードを求め、該ノードを対象ノードから除外すると共に、該ノードに接続するノードを対象ノードに加え、順次対象ノードのうち評価値が最小のノードを求めて第１の地点から第２の地点までの経路を探索する経路探索方法において、
現在の重み係数εを用いて与えられた制限時間内に経路探索が終了するか経路探索中に判定し、
判定結果に基づいて重み係数εの値を変更する、
ことを特徴とする時間制限付き経路探索方法。
【請求項２】
第１の地点から第２の地点までの予測コスト（距離）Ｄを制限時間Ｔで除算して基準速度Ｖを演算し、
次のノードへ探索が進む毎に、第１の地点から該ノードまでの有効距離ｄを探索時間ｔで除算して有効速度ｖを演算し、
基準速度Ｖと有効速度ｖとの差に基づいて制限時間内に経路探索が終了するか判定すること、を特徴とする請求項１記載の時間制限付き経路探索方法。
【請求項３】
評価関数が最小のノードに接続する各ノードから第２の地点までの最小予測コストｈを求め、該ｈが最小のものをmin-hとするとき、前記有効距離ｄを
ｄ＝Ｄ−min-h
により演算することを特徴とする請求項２記載の時間制限付き経路探索方法。
【請求項４】
基準速度Ｖと有効速度ｖとの差（ｖ−Ｖ）が設定上限値より大きい場合には重み係数εの値を所定量減小し、差（ｖ−Ｖ）が設定下限値より小さい場合には重み係数εの値を所定量増加することを特徴とする請求項２または請求項３記載の時間制限付き経路探索方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は第１の地点から第２の地点までの経路を制限時間内に探索する経路探索方法に係わり、特に、周知のＡ*アルゴリズムを改良したε近似探索法を用いて与えられた制限時間内に第１の地点から第２の地点までの略最適経路を探索する時間制限付き経路探索方法に関する。
【０００２】
【従来の技術】
車載ナビゲーション装置には、車両を出発地から目的地まで誘導する経路誘導機能が設けられている。かかる経路誘導機能によれば、目的地を設定すると、出発地（現車両位置）から目的地までの最適経路（例えば最短距離の経路）を探索し、探索した最短経路をモニターに表示してドライバを目的地に向けて案内する。従来、かかる最短経路問題に使用可能な探索法として、Ａ*アルゴリズムが知られている。
【０００３】
Ａ*アルゴリズムは、最短経路を効率的に発見できるアルゴリズムである。Ａ*アルゴリズムは、探索段階においてｈ(n)，ｇ(n)の和をノードｎ（交通網における交差点）の評価値ｆ(n)とする。
つまり、
ｆ(n)＝ｇ(n)＋ｈ(n)        (1)  ただし、
ｈ(n)＝ノードｎから目的地ノード到達までに必要と予測される最小コスト（ヒューリスティック関数）
ｇ(n)＝出発地点ノードからノードｎまでの実コスト
である。このノードの評価値ｆ(n)を最小にするノードが探索の各段階で枝を広げ、探索が進められる。
なお、最短経路探索において、「ノードｎからゴールまでの直線距離」が良いヒューリスティック関数ｈ(n)として知られている。図１４は、かかる評価関数の図解的説明であり、Ｓは出発地、Ｇは目的地、ｎは着目ノードである。
【０００４】
Ａ*アルゴリズムの特徴として、次の２点があげられる。
・出発地点から目的地点までの経路があるならば、必ず経路（解）を発見することができる。
・ｈ(n)が真のコストを越えなければ最短経路を発見することができる。
なお、前述のｈ(n)＝「ノードｎから目的地点までの直線距離」は、真のコストを越えることがない。というのは、道路網におけるある２点間の距離は、その２点を結ぶ最短経路の距離よりも必ず小さいからであり、従って、ｈ(n)を直線距離とすれば必ず最短経路を得ることができる。
【０００５】
図１５はＡ*アルゴリズムの処理フローである。尚、ノードｎからノードｍに至るコストをcost(n,m)、あるノードに接続する全ての子ノードを求める処理を展開する（expand)と表現する。又、展開可能性のあるノードの集合をＯＰＥＮ、既に展開済みのノードの集合をＣＬＯＳＥとする。
初期時、集合ＯＰＥＮを構成するノードを出発地Ｓのみとし、集合ＣＬＯＳＥを空集合とする（ステップ１０１）。すなわち、
ＯＰＥＮ：（Ｓ）
ＣＬＯＳＥ：［ ］
とする。
ついで、集合ＯＰＥＮが空集合であるかチェックし(ステップ１０２）、空集合であれば最適経路探索は失敗と判定する（ステップ１０３）。しかし、空集合でなければ、集合ＯＰＥＮの先頭ノード（初期時には出発地Ｓ）を取り出してｎとする（ステップ１０４）。尚、先頭ノードを取り出すことにより該ノードを集合ＯＰＥＮより削除する。
【０００６】
ついで、ノードｎが目的地Ｇであるかチェックし（ステップ１０５）、目的地であれば、経路探索が成功する（ステップ１０６）。したがって、後述するポインタを用いて目的地Ｇより出発地Ｓ方向に辿ることにより最適経路を得ることができる。
一方、ステップ１０５において、ノードｎが目的地Ｇでなければ、該ノードｎを展開して子ノードを全て求め、ノードｎを集合ＣＬＯＳＥに入れる（ステップ１０７）。以後、全ての子ノードについて以下のステップ１０８ａ〜１０８ｄを実行する。
すなわち、子ノードｍについて、評価値を次式
ｆ(n,m)＝ｇ(n)+cost(n,m)＋ｈ(m)      (2)により計算すると共に、子ノードｍが集合ＯＰＥＮあるいは集合ＣＬＯＳＥを構成するかチェックする（ステップ１０８ａ）。
【０００７】
子ノードが集合ＯＰＥＮ、ＣＬＯＳＥのいずれをも構成してなければ、
▲１▼子ノードｍから親ノードｎへのポインタを作成し、
▲２▼前記評価値ｆ(n,m)をｆ(m)とし（ｆ(m)＝ｆ(n,m)）、
それぞれ子ノードｍに関連付け、該子ノードｍを集合ＯＰＥＮに入れる（ステップ１０８ｂ）。
一方、子ノードｍが集合ＯＰＥＮを構成するノードであれば、集合ＯＰＥＮの該ノードに関連付けられている評価値ｆ(m)（第１の評価値）と前記計算した評価値ｆ(n,m)（第２の評価値）を比較する。第２の評価値が小さければ、集合ＯＰＥＮの前記ノードの評価値を第２の評価値ｆ(n,m)で更新し（ｆ(n,m)→ｆ(m)）、かつ、該ノードの親ノードがノードｎとなるようにポインタを更新する（ステップ１０８ｃ）。尚、第２の評価値ｆ(n,m)が第１の評価値より大きければ、ステップ１０８ｃの処理をせず、着目している子ノードｍは棄てる。このステップ１０８ｃは、ノードｍに到る既知経路より更に評価値の良い経路が発見された場合、ポインタを更新することにより評価値のよい経路を新たな既知経路とするものである。
【０００８】
一方、子ノードｍが集合ＣＬＯＳＥを構成するノードであれば、集合ＣＬＯＳＥの該ノードに関連付けられている評価値ｆ(m)（第１の評価値）と前記計算した評価値ｆ(n,m)（第２の評価値）を比較する。第２の評価値が小さければ、集合ＣＬＯＳＥにおける着目ノード（子ノードと同一ノード）の親ノードがノードｎとなるようにポインタを更新し、かつ、該着目ノードの評価値を第２の評価値ｆ(n,m)で更新し（ｆ(n,m)→ｆ(m)）、該着目ノードを集合ＯＰＥＮに戻す（ステップ１０８ｄ）。尚、第２の評価値ｆ(n,m)が第１の評価値より大きければ、ステップ１０８ｄの処理はせず、着目している子ノードｍは棄てる。
このステップ１０８ｄは、ノードｍに到る既知の経路より更に評価値の良い経路が発見された場合であって、該ノードｍが既に展開済みになっている場合に、ノードｍのポインタを更新することにより評価値のよい経路を新たな既知経路とし、かつ、ノードｍを新たな既知経路に関連して展開可能性があるものとして集合ＯＰＥＮに復活するものである。
【０００９】
ついで、集合ＯＰＥＮを構成する各ノードの評価値に基づいて評価値の小さい順に並び替える（ステップ１０９）。これにより、評価値が最小の、現時点では最も最適と思われるノードが集合ＯＰＥＮの先頭ノードになる。以後、ステップ１０２に戻り、目的地にたどり着くまで以降の処理を繰り返す。
図１６はＡ*アルゴリズムの探索例題を示す道路網であり、Ｓは出発地、Ｇは目的地、Ａ〜Ｉは交差点でそれぞれノードを構成する。各ノードは枝（リンク）で相互に接続され、隣接ノード間のコスト(距離)はリンク上に付している。又、各ノードの目的地までの最小予測コスト(ヒューリスティック関数値)は丸付き数字で示している。
【００１０】
図１７は図１６の道路網にＡ*アルゴリズムを適用して出発地Ｓから目的地Ｇまでの最適経路を求めた場合の説明図である。集合ＯＰＥＮの初期ノードを出発地Ｓとして図１５のＡ*アルゴリズムを繰り返し適用すると、図１７の枠数字順に集合ＯＰＥＮを構成するノード、集合ＣＬＯＳＥを構成するノードおよび評価値（カッコ内数値）が順に求まり、最終的に出発地から目的地までの最適経路
Ｓ→Ａ→Ｂ→Ｈ→Ｉ→Ｇ
が求まる。
【００１１】
【発明が解決しようとする課題】
上記Ａ*アルゴリズムによるヒューリスティック探索は人工知能を代表する方法であり、ゲームや経路計画（経路探索）に利用されてきた。しかし、Ａ*アルゴリズムは、最適解を求るために計算量が膨大になりリアルタイムな探索に適していない。そのため、探索を効率化するためのヒューリスティック関数の設定、メモリ消費量の少ない探索法、双方向探索など様々な工夫がなされてきた。しかしながら、現在のところヒューリスティック探索法は依然として、実問題に見られるようなリアルタイムな探索には適していない。
【００１２】
例えば、自律走行車やカーナビにおいては、タスクが動的に与えられ、目的地が次々と設定されることが実際の運用上よく見られることである。又、自動車が運転中に誘導経路を外れる（オフルートする）こともよく見られることである。このように目的地が次々と設定されたり、オフルートが起こると、走行中に経路探索を行わなければならず、しかも、制限時間内に経路探索を終える必要がある。かかる問題は時間的な制約のもとでの最適化問題としてとらえることができる。Ａ*アルゴリズムによるヒューリスティック探索法は最適解が得られるまでに長時間を必要とし、制限時間内に経路探索を終えることができない。
【００１３】
時間的な制約のもとでの最適化問題においては、探索された経路の質に加えて、経路探索に費やされる時間も考慮する必要がある。理想的な経路探索に望まれるのは、より高速で、より質の良い解である。しかし、一般に解の質と探索時間はトレードオフの関係にあり、現実的に探索時間が短くて済む最適解に近い解の方が、長い探索時間を必要とする最適解よりも利用価値がある。カーナビの場合、渋滞にでもおちいっていない限り探索結果が得られるのを待っている間も刻々と状況は変化してしまうのである。Ａ*アルゴリズムは最適経路、すなわち、最短経路を探索できるが、探索範囲が広いため探索時間が長くなり、制限時間内に最適経路を探索できない問題がある。
以上から、本発明の目的は、制限時間内に最適経路あるいはそれに近い経路（準最適経路）を探索できる時間制限付き経路探索方法を提供することである。
【００１４】
【課題を解決するための手段】
ε−近似探索法では、第１の地点からノード（交差点）ｎを経由して第２の地点に至る場合、ノードｎにおける評価値ｆ(n)を、第１の地点からノードｎまでのコストｇ(n)、ノードｎから第２の地点に到達するまでに必要であると予測される最小コストｈ(n)、重み係数ε（≧１）を用いて次式
ｆ(n)＝ｇ(n)＋ε・ｈ(n)で表現し、対象ノード(初期値は第１のノード)のうち評価値が最小のノードを求め、該ノードを対象ノードから除外すると共に、該ノードに接続するノードを対象ノードに加え、以後、順次対象ノードのうち評価値が最小のノードを求めて第１の地点から第２の地点までの経路を探索する。
【００１５】
本発明は、かかるε−近似探索法において、(1) 現在の重み係数εを用いて与えられた制限時間内に経路探索が終了するか経路探索中に判定し、(2) 判定結果に基づいて重み係数εの値を変更し、制限時間内に経路探索を終了する。ε−近似探索法は、重み係数εを大きくすれば、探索経路の質は落ちるが探索すべきノードが減って探索時間を短くできる。逆に、重み係数εを小さくすれば、探索すべきノードが増えて探索時間が長くなるが探索経路の質を高めることができる。本発明の時間制限付き経路探索は、このようなε−近似探索法の特徴を利用したもので、εの値を変化させることで、解の質と探索時間のトレードオフをうまく調節し、制限時間内に準最適経路を探索できる。
【００１６】
又、本発明において上記(1)における判定は、▲１▼ 第１の地点から第２の地点までの予測コスト（距離）Ｄを制限時間Ｔで除算して基準速度Ｖを演算し、▲２▼ 次のノードへ探索が進む毎に、第１の地点から該ノードまでの有効距離ｄを探索時間ｔで除算して有効速度ｖを演算し、▲３▼ 基準速度Ｖと有効速度ｖとの差に基づいて制限時間内に経路探索が終了するか判定する。例えば、基準速度Ｖと有効速度ｖとの差（ｖ−Ｖ）が設定上限値より大きい場合には重み係数εの値を所定量減小し、差（ｖ−Ｖ）が設定下限値より小さい場合には重み係数εの値を所定量増加する。
【００１７】
【発明の実施の形態】
（Ａ）本発明の概略
本発明は、指定された時間内に準最適な経路を求める時間制限付き経路探索方法である。準最適という意味はε−近似を意味しており、アルゴリズムは従来のＡ*に基づく。従来の方法との違いは、εを固定するのではなく、探索中にεの値を動的に変化させ、制限時間に間に合うように探索を終了させることである。一般にε大きくすれば探索すべきノードが減るので、残り時間が少なくなければεを大きくすることで所望の探索時間で目的地まで到達できる。本発明においては、出発点に近いノードはεの値を小さくして厳密に探策し、目的地点に近いノードはεの値を増加させて粗く探索する。これは移動中の走行車におけるリアルタイムな経路生成に適したものである
εを動的に変化させることは古くはPohlが行ったが本発明はこれを探索の制限時間とリンクさせることでリアルタイムアルゴリズムにしている。
【００１８】
尚、本発明の実用性を明らかにするために、カーナビ等で実際に使用されているデジタルマップを使って、探索時間を計測した。この地図を用いて、探索時間、展開されるノード数、解の質、εの変化を実験的に明らかにする。
本明細書の以下における構成は次の通りである。まず、▲１▼本発明の基礎となっているε−近似探索法について説明し、ついで、▲２▼本発明の原理、▲３▼本発明を適用できるナビゲーション装置の構成、▲４▼本発明の時間制限付き経路探索のアルゴリズム、▲５▼本発明のプログラム例、▲６▼本発明の考察について説明し、ついで、▲７▼実験結果を分析し、▲８▼最後にまとめる。
【００１９】
（Ｂ）ε−近似探索
経路探索などの問題では、前述のようにＡ*アルゴリズムが知られている。このＡ*アルゴリズムは、最良優先探索の一つで次に展開するノードの評価をｆ(n)＝ｇ(n)＋ｈ(n)により求め、この評価値を最小とするものからどんどん展開していくという戦略をとるものである。つまり、ｇ(n)，ｈ(n)の両者をできる限り小さく保ちながら探索を進めようとするのがＡ*アルゴリズムの戦略である。ここで、ｇ(n)は出発地からノードｎまでの累積コストを表し、ｈ(n)はノードｎから目的地までの最小予測コストを表す。このｈ(n)は真の値に近くなればなる程、効率性を向上させる性質がある。経路探索の場合、
ｈ(n)＝（ノードｎからゴールまでの直線距離）
を使用する場合が多い。
【００２０】
力学的に表現すれば、図１に示すように、ｇ(n)は出発地との距離を小さくする、つまり、出発地に引き付けようとする力である。一方、ｈ(n)は目的地までの直線距離を小さくする、つまり目的地に引き付けようとする力であると見なすことができる。ここで、重要なことは、Ａ*アルゴリズムでは、力ｇ(n)と力ｈ(n)が１：１で評価されている点である。この点に着目し、ｇ(n)とｈ(n)の力関係に変化を加えることにより、探索時間を短縮し、かつ、略最適の経路を探索できるようにするのがε−近似探索法のねらいである。
すなわち、ｇ(n)よりｈ(n)の評価を大きくするならば、Ａ*アルゴリズムに比べてより目的地に引き寄せる力が大きく作用する。この結果、出発地と目的地を結ぶ直線から探索ノードが大きく外れることがなくなって行き、探索範囲の拡がりが抑制され、探索時間が短縮する。
【００２１】
図２は探索範囲の傾向を示すものであり、（ａ）はＡ*アルゴリズムによる場合で、探索範囲はふっくらと広がった形状を示し、（ｂ）はｇ(n)よりｈ(n)の評価を大きくしたε−近似探索法の場合で、探索範囲は先鋭化して出発地と目的地を結ぶ直線に近づく傾向を示す。この（ａ）、（ｂ）より明らかなようにＡ*アルゴリズムによる場合には、探索範囲が広くなって探索ノードが多くなり、探索時間が長くなる。これに対してｇ(n)よりｈ(n)の評価を大きくした場合は、探索範囲が狭まって探索ノードが少なくなり、探索時間が短くなる。
【００２２】
ε−近似探索法は、以上を考慮して評価関数
ｆ(n)＝ｇ(n)＋ε・ｈ(n)        (2)          ｈ(n)≦ｈ*(n)SUP>
を用いて探索をするものである。ここで、ｇ(n)は出発地(スタートノード)からノードｎまでの実コスト、ｈ(n)はノードｎから目的地(ゴールノード)までに必要とされる最小コスト（予測最小コスト）、ｈ*(n)はノードｎからゴールノードまでの実際のコストある。ｈ(n)≦ｈ*(n)なので、ｈ(n)は許容的ヒューリスティックであり、ｆ(n)が最小のノードを探索することで最適な経路を求めることができる。εはヒューリスティック関数値ｈ(n)に対する重みでε≧１であり、ε＝１の場合にＡ*アルゴリズムと同様になる。
【００２３】
ε−近似探索ではεの値によって解の質と探索空間が変化する。ε・ｈ(n)＞ｈ*(n)のとき、評価関数ｆは非単調になり最適性が保証されなくなる。このときε−近似探索で得られる解の質（経路長）ｑは、最適解をｑ*とした場合、
ｑ*≦ｑ≦εｑ*（但し、ε≧１）となるが、探索空間はεを大きくすることで大幅に短縮されることが知られている。ｇ(n)が無視できるほどεが十分に大きくなるとｆ(n)＝ｈ(n)となり、これはgreedy探索に等しくなる。この場合ゴールノードに近いノードを展開するように探索が進む。一般的にgreedy探索の計算量は最悪の場合Ｏ（ｂm）（分岐度ｂ，ｍは探索空間の最大の深さ）である。しかしながら、道路地図のようにノードとアークが十分に密なグラフでは、探索が進むにつれてｈ(n)が単調に減少し、着実にゴールへ近づくことになる。したがって、探索のバックトラックはほとんど起こらず、解の深さｄとしたときに、計算量はＯ（ｂ＊ｄ）に近い値になり、高速な探索が可能となる。
【００２４】
図３(a),(b),(c)は、関東圏における経路探索において、異なるε(=1.0, 1.1, 2.0)に対して展開されたノードを示している。図中のドットは展開したノードを表しており、解の質(quality)は最適解（68.809km)を基準として求めたものである。εの値が大きくなるにつれて展開されるノード数（#nodes)は減少する。それに伴い探索時間(time)も減少している。具体的にはεの値を1.0から1.1に増加させるだけで、69％の探索時間をカットすることが可能であり、2.0の場合は97％もの探索時間をカットすることが可能である。一方、その時の解の質の低下は１％と５％程度である。
本発明の時間制限付き経路探索は、このようなε−近似探索の特徴を利用したもので、εの値を変化させることで、解の質と探索時間のトレードオフをうまく調節する。
【００２５】
（Ｃ）本発明の時間制限付き経路探索の原理
制限時間内で探索を終了させるための単純な方法は、最も単純な解を導き出し、制限時間の間に少しずつ条件を厳しくして解の質を向上させる方法である。すなわちεの初期値を大きく設定して解を求め、徐々にεの値を小さくしていき、制限時間になったならば、それまでに得られた中で最適な解を出力するというものである。しかしこの方法は時間に余裕がある場合に質の悪い解を何度も生成してしまうという欠点がある。さらに、解の生成の際に一度通ったノードを再び通ることになり、反復深化と似た現象を引き起こしてしまう。
これに対して、本発明はεの値を動的に変化させて制限時間を十分に活用した探索方法である。この方法では、残された時間で探索を終了するために、どの程度の近似（εの値）で探索を実行すればよいかの見積りを行う必要がある。
【００２６】
かかるεの見積りを実現するために、以下に示す▲１▼〜▲６▼のパラメータを定義する。
▲１▼距離Ｄ＝h(start)：
スタートノードからゴールまでの予測コスト。
▲２▼制限時間Ｔ：
探索を終了するまでに与えられた時間。
▲３▼基準速度Ｖ＝Ｄ／Ｔ：
制限時間Ｔで探索を終了するための探索速度。
▲４▼有効距離ｄ＝Ｄ−min- h：
探索が進んだ距離（min-hは展開されたノードの中で最小のｈ）。
▲５▼探索時間ｔ：
探索を開始してからの経過時間。
▲６▼有効速度υ＝ｄ／ｔ：
探索開始から現時点までの探索の平均速度。
【００２７】
距離と制限時間は経路探索問題の難しさを表すパラメータである。道路地図における経路探索の場合、距離Ｄは図４のようにスタートノードとゴールノードとの間の直線距離で表される。距離Ｄが長く、制限時間Ｔが短い問題は難しい問題としてとらえることができる。また、有効距離ｄと探索時間ｔは探索の現在の状況を表すパラメータである。ここで、探索の有効速度υが基準速度Ｖに一致するならば、制限時間ぎりぎりで探索が終了することになる。しかしながら、基準速度υで探索を実行するようにεの値を決めることは不可能である。なぜなら、同じεの値であっても有効速度が一定であるとは限らないからである。したがって、基準速度Ｖを保つためには、状況に応じてεの値を変化させなければならない。本発明は基準速度Ｖと有効速度υを比較することでεの値を以下のように制御する。
【００２８】
▲１▼ υ−Ｖ＜ Lowerならばε＝ε＋δ
▲２▼ υ−Ｖ＞ Upperならばε＝ε−δ
▲３▼ それ以外ならば、εの値を変化させない。
ここで、ε＞１，δ＞０で、εの初期値は１である。又、▲１▼の有効速度υが基準速度Ｖ+Lowerより小さい場合にはεの値を増加させる。これは、εを大きくすることで、図３(c)のように、展開されるノードの数を減少させるためである。結果的に、ノードはゴール方向に向かって直線的に展開されるようになり、有効速度υを上昇させることができる。一方、▲２▼の有効速度υがＶ+Upperより大きい場合にはεの値を下げる。これにより、図３(b),(c)のように展開されるノードの数が増えて有効速度υが減少するが、解の質の向上に寄与する。以上のように、εの値を変化させて有効速度を基準速度に保つように制御する。
【００２９】
実際、有効速度υは検索が進むにつれて減少する傾向にある。これは、図２に示すように探索空間が楕円を描くように広がるためである。始めの段階では展開されるノードは少なく、ゴール方向へノードが展開される割合は高い。しかしながら、探索が進につれて展開されるノードは広範囲になる。そのために、ゴール方向へノードが展開される割合は低くなり、有効速度υは低下する。
このような有効速度υの特性と上述のεの値の制御によって、実際のεの値は探索が進むにつれて大きくなる。この結果、探索空間の拡がりとεの増加によって展開されるノード数はほぼ一定となり、有効速度も一定となる。このようにεの値を変化させることは、スタートノードに近い部分を厳密に探索し、ゴールノードに近い部分を粗く探索することを意味している。これは、リアルタイムな経路生成に適した探索になる。なぜなら、リアルタイムな経路生成では、移動中に探索を繰り返し実行するが、実際に移動するのは生成した経路の前半部分であり、その部分さえ厳密に探索すればよいからである。
【００３０】
本発明の経路探索において、与えられた制限時間が十分長ければ、基準速度Ｖは小さくなり、有効速度υは基準速度を下回ることはない。従って、εの値は変化せず初期値１のままになり、探索はＡ*アルゴリズム同様に最適経路探索となる。一方、制限時間があまりに短い場合には、常に有効速度を下回るため、ノードが展開されるたびにεの値は増加し、結果的にgreedy探索に近い探索時間で、高速に探索を終了することになる。
【００３１】
（Ｄ）本発明を適用できるナビゲーション装置の構成
図５は本発明を適用できるナビゲーション装置の概略構成図である。図中、１は地図情報を記憶するＣＤ−ＲＯＭ、ＤＶＤ等の地図情報記憶媒体、２は自車位置を検出する車両位置検出部で、自立航法センサー（車速センサー、方位センサーなど）やＧＰＳで構成されるもの、３は目的地の設定やメニュー項目の選択による各種指示、地図の拡大／縮小等の操作を行うリモコンユニット、４はナビゲーション制御部におけるマイコン構成の経路探索ユニット、５は地図及び探索した誘導経路を表示するモニターである。経路探索ユニット４は、目的地が入力されたり、オフルートすると本発明の時間制限付き経路探索法に基づいたアルゴリズムにしたがって現車両位置を出発地として経路探索を開始し、得られた経路をモニター５に表示する。
【００３２】
（Ｅ）時間制限付き経路探索アルゴリズム
図６、図７は本発明の時間制限付き経路探索アルゴリズムの処理フローである。この時間制限付き経路探索アルゴリズムでは、スタートノードStart、ゴールノードGoal、制限時間Ｔを入力とし、経路が見つかればその経路を、そうでなければ失敗(failure)を出力する。
アルゴリズム内で使用する主な変数は次の通りである。
・OPEN：展開可能性のあるノードの集合である。探索中の経路の先端のノードを集合として格納したものであり、この中で最小の評価値ｆを持つノードが選択されて展開される。
・CLOSE：既に展開されたノードを集合として格納したもの。同じノードが繰り返し展開されるのをチェックするために利用する。
・min-h:展開されたノードのｈの中で最小の値である。これは、有効距離の計算に利用する。
・timestart:探索開始時刻である。
【００３３】
初期時、集合OPENを構成するノードをスタートノードとし、集合CLOSEを空集合とする（ステップ２０１）。すなわち、OPEN：{start｝，CLOSE：［０］とする（ステップ２０１）。
ついで、スタートノードからゴールノード迄の予測コスト（距離）Ｄ計算すると共に、基準速度Ｖを次式
Ｖ＝Ｄ／Ｔ    Ｔは制限時間   (3)により計算する(ステップ２０２）。又、探索時間ｔ、有効距離ｄ、有効速度υを０に初期化し、かつ、重み係数εを1.0に初期化する(ステップ２０３）。
ついで、スタートノードからゴールノードまでの予測最小コスト（ヒューリスティック関数）ｈ(start)を計算してmin-hとし(ステップ２０４）、現時刻を読み取ってtimestartとする(ステップ２０５）。
【００３４】
しかる後、集合OPENが空集合であるかチェックし(ステップ２０６）、空集合であれば経路探索は失敗と判定する（ステップ２０７）。しかし、空集合でなければ、現在のε(初期値は1.0)を用いて集合OPEN中の全ノードについて評価値ｆを次式
ｆ＝ｇ＋ε・ｈ
により計算し、評価値が最小のノードをmin-nodeとする(ステップ２０８）。尚、集合OPEN中の各ノードに対応させてｇ、ｈが記憶されているから上式の評価値ｆの計算に際してはこれら記憶値を用いる。
min-nodeが求まれば該min-nodeを集合OPENより削除して集合CLOSEに入れる  （ステップ２０９）。
【００３５】
ついで、min-nodeと接続する集合CLOSEに含まれない全ノードを展開ノードとして求め、各展開ノードのｇ，ｈ，ｆを計算し、
▲１▼展開ノードからmin-nodeへのポインタと、
▲２▼前記計算したｇ，ｈ，ｆ
をそれぞれ展開ノードに関連付けて集合OPENに入れる(ステップ２１０）。例えば、図８においてノードｎをmin-node、ノードｍを展開ノードとし、スタートノードＳからノードｎ迄のコストをｇ(n)、ノードｎ−ｍ間のコストをcost(n,m)、展開ノードｍにおけるゴールノードＧ迄の最小予測コストをｈ(m)とすれば、展開ノードｍの評価値ｆ(m)及び展開ノードｍ迄のコストｇ(m)はそれぞれ次式
ｇ(m)＝ｇ(n)+cost(n,m)     (4)  ｆ(m)＝ｇ(m)＋ε・ｈ(m)    (5)により計算できる。従って、これらｆ(m)，ｇ(m)，ｈ(m)及びノードｎへのポインタを展開ノードｍに関連付けて集合OPENに入れる。
【００３６】
各展開ノードの最小予測コストｈ(m)が求まれば、最小のｈ(m)をmin-hとし(ステップ２１１）、ついで、min-h＝０であるかチェックする（ステップ２１２）。min-h＝０であれば、ノードｍはゴールノードであり、経路探索が成功する（ステップ２１３）。したがって、前述するポインタを用いてゴールノードＧよりスタートノードＳ方向に辿ることにより最適経路を得ることができる。
一方、ステップ２１２において、min-h＝０でなければ、すなわち、展開ノードｍがゴールノードＧでなければ、有効距離ｄを次式
ｄ＝Ｄ−min-h      (6)により計算する(ステップ２１４）。又、現時刻から探索開始時刻 timestartを差し引いて探索時間ｔを求め（ステップ２１５）、次式
υ＝ｄ／ｔ          (7)により有効速度υを計算する(ステップ２１６）。
【００３７】
ついで、有効速度と基準速度との差（υ−Ｖ）を計算し、υ−Ｖ＞ Upperであるかチェックし（ステップ２１７）、ＹＥＳであれば、すなわち有効速度υが基準速度ＶよりUpper分大きければεの値をδ減小する（ε＝ε−δ、ステップ２１８）。
ステップ２１７においてＮＯであれば、υ−Ｖ＜ Lowerであるかチェックし(ステップ２１９）、ＹＥＳであれば、すなわち有効速度υが（Ｖ＋Lower）より小さければεの値をδ増加する（ε＝ε＋δ、ステップ２２０）。
ステップ２１９においてＮＯであれば、ε＜1.0であるかチェックし（ステップ２２１）、ＹＥＳであればεを1.0にする(ステップ２２２）。なお、
（Ｖ＋Lower）≦ε≦（Ｖ＋Upper)の場合にはεを変更しない。
以上によりεの変更処理を終了すれば、ステップ２０６に戻り、以降の処理を繰り返す。
【００３８】
（Ｆ）時間制限付き経路探索アルゴリズムのプログラム例
以下はＣ++言語で図６、図７に示す時間制限付き経路探索のアルゴリズムを記述したプログラム例である。
Algorithm Time-Constrained-Search (Start,Goal,T)
1 OPEN ←{Start},CLOSE←φ,NODES←φ
2 D=h(Start)3 V=D/Ttart)
4 t=0,d=0,υ=05 ε=16 min-h←h(start)7 timestart←get-time()>
8 while OPEN≠φ
9    min node←get-min-node(OPEN,ε)10   CLOSE←CLOSE∪{min-node}B>
11   OPEN←OPEN∪expand-node(min-node,CLOSE,GOAL,ε)12   min-h←get-min-h(OPEN,minh)
13   if min-h=0 then
14       return route-to(Start,min-node)B>
15   d=D-min-h
16   t=get-time()-timestart17   υ=d/t18   ifυ-V>Upper then19      ε←(ε-δ)20   else ifυ-V<Lower then21      ε←(ε+δ)22   ifε<1.0 then23      ε←1.024 return failure
1-7行目において各々の変数が初期化される。7行目のget-timeは現在の時刻を返す関数であり、探索開始時刻がtimestartにセットされる。
【００３９】
While文はOPENが空（＝φ）のとき終了し、そのときはゴールまでの経路が存在しないためfailure（失敗）を返し、アルゴリズムを終了する(24行)。そうでなければ次の手順（9行目以降の手順）を繰り返し実行する。
まず、get-min-nodeで集合OPENの中で最小の評価値fを持つノードをmin-nodeとして取り出し、それを展開済みノードとしてOPENより除去して集合CLOSEに入れる(9-10行)。次にmin-nodeを展開する(11行)。expand-nodeはmin-nodeに接続するノードの集合を返す関数であり、CLOSEの中にないものが返され集合OPENに入れられる。関数expand-nodeの中ではｇ，ｈ，ｆを計算し、get-min-hによって展開されたノードの中で最小のｈの値をmin-hとして求める(12行)。13-14行はゴールかどうかの判定で、min-hの値が０ならば、得られた経路を出力してアルゴリズムを終了する。ここで、route-toはStartからmin-nodeにつながる経路を生成する関数である。15-17行では、有効距離ｄ,探索時間ｔ,有効速度υ計算し、18-23行で有効速度υと基準速度Ｖを比較することでεの値を変化させる。
【００４０】
（Ｇ）時間制限付き経路探索アルゴリズムの考察
通常、Ａ*アルゴリズムは集合OPENに格納されているノードをfの大小によって管理する際にヒープ木を使うことができる。これにより、O(log|OPEN|)の手間でノードを管理することができる。しかしながら、本発明の時間制限付き経路探索アルゴリズムではヒープ木を使えない。なぜなら、εの値が変化したときは、集合OPENにある全てのノードに対してfの再計算が必要であり、その結果、ヒープ木を再構成しなければならないからである。
本発明の時間制限付き経路探索アルゴリズムは、▲１▼評価関数ｆが異なる点((1),(2)式参照)、▲２▼εの変更操作をしている点、を除けばＡ*アルゴリズムとほぼ同じである。Ａ*アルゴリズムでは、評価値ｆは単調であり、最初に得られた解が最適であることが保証されているため、そこでアルゴリズムを終了する。
【００４１】
しかしながら、本発明のアルゴリズムのように評価値ｆが非単調の場合は、最初に発見された経路よりも短い経路が存在する可能性がある。ここで、εの値を固定して考える。上記本発明の時間制限付き経路探索アルゴリズムで得られる経路を{start,n1,n2,・・・,goal}、経路長をf(goal)とし、又、最適経路を{start,m1,m2・・・,mk,goal}とすると、次式
f(goal)≦g(mi)＋εh(mi)
を満足するノードmi(1≦i≦k)が存在する。最短経路長をq*とすれば、
0004176211.tif 000002
ここで、εの上限値εmaxを定めれば、εをどう変化させても、得られる経路長はεmaxq*を超えることはない。すなわちεmaxはアルゴリズムが出力する解の質を制約することになる。
【００４２】
次に探索の残り時間がほとんど０に等しい場合を考える。εはパラメータδを使ってステップ関数的に変化するが、δを十分大きな値にするとスタートの次のノードからgreedy探索になる。従って、探索の終了時間は制限時間とgreedy探索に要する時間の和になる。これは最悪の場合であり、実際は探索時間と制限時間はほぼ等しくなることが次節の実験結果からわかる。
以上から本発明の時間制限付き経路探索アルゴリズムは、与えられた制限時間と解の質に関する制約を充足する解が存在すれば、それを出力する。なお、アルゴリズムが有限時間内で停止することは展開されるノードが有限であることから明らかである。
【００４３】
（Ｈ）実験結果
本発明の時間制限付き経路探索アルゴリズムをJava言語で実装し、様々なマシン環境上で実験を行った。道路地図は実際のカーナビゲーションシステムで使用されているものを用いた。
探索経路はノードが密になっている首都圏を通り、高速道路が最短とならないようにして、探索時間が最もかかるものを選択した(図３のスタートとゴールを結ぶ経路)。CPUがSun Ultra SPARC 168Mhz、メモリが128Mbyteのマシンにおいて、ハードディスクに納められたデジタルマップを利用し、この問題をＡ*アルゴリズムで解くと139.1秒を要した（図３（ａ）参照）。δは実験から最適なものを選択して行い、0.05に設定した。以下異なる視点からの実験結果をまとめる。
【００４４】
（ａ）制限時間と解のトレードオフ
図９は制限時間と本発明により得られる解の質との関係を示している。ここで、解の質は最短経路長に対する得られた経路長の割合で表している。制限時間70秒までは解の質は上昇し、それ以降からは最適解が得られ、解の質は1.0になっている。
これより、最適解が得られるまでは、与えられる制御時間が長ければ長いほど解の質は高くなることがわかる。
【００４５】
（ｂ）制限時間と探索時間の関係
図１０は制御時間と実際に費やした探索時間の関係、及び、そのときに展開されたノード数(#nodes)の関係を示すもので、図１０(a)はSun Ulter SPARCでハードディスクに納められたデジタルマップを利用した場合、図１０(b)はIntel 486DX4でCD-ROMのマップを利用した場合である。
図１０(a)において、制限時間140秒以降から探索時間が頭打ちになっている。これは140秒がＡ*アルゴリズムの探索時間であるため、既に最適経路が求まっており、それ以上のノードは展開されず、それ以上の時間を必要としないからである。図１０(b)では制限時間が約60秒までは、与えられ制約時間に関わらず探索時間が約60秒かかっている。これはマシン性能の限界と見なすことができる。つまり、このマシン環境において解を求めるためには最低60秒を必要とすることを意味している。
しかしながら、本発明のアルゴリズムは制限時間とほぼ同じ時間で経路探索を終了しており、展開ノード数は制限時間に応じて増加することがわかる。すなわち、本発明のアルゴリズムは制限時間内というよりも、制限時間を十分に活用して探索を実行している。これは図９の結果において、制限時間の増加にしたがって解の質が向上することを裏付けるものといえる。また、図１０の結果から、このような特徴はマシンの性能に関わらず成り立つことがわかる。
【００４６】
（ｃ）εの変化による効果
図１１は、本発明の時間制限付き経路探索アルゴリズムによって展開されるノードの分布、展開ノード数(#nodes)、探索時間(time)、解の質（quality)を制限時間を変えて示すものであり、図１２は探索中のεの実際の変化を示す。
図１１(a)〜（ｃ）より、制限時間が減少するつれて展開されるノード数が減少していることがわかる。これは、図３のεの値に対するノード数の変化に似ている。しかしながら、明らかに異なるのはスタート地点に近い部分は展開されるノード数は多く、ゴール地点に近い部分はノード数は少ないということである。これは、図１２のεの変化を具体的に示す結果となっている。図１２よりどの制限時間のε変化パターンであっても、探索の前半部分においてεの値がほとんど1.0であり、後半になって高い値を取っていることがわかる。つまり、探索の前半は厳密な探索を実行し、後半部分は粗い探索となることを示している。
【００４７】
（ｄ）実時間反復探索と解の質の関係
ここでは、スタートからゴールまでの間に探索と移動を繰り返し実行するといった実時間反復探索に本発明のアルゴリズムを適用した結果について述べる。
走行車は、一定ノード数Ｎを移動する間に探索を実行し、得られた経路に沿って移動するものとする。このとき、現在のノードをnode(i)とすると、次のＮ番目のノードnode(i+N)に到着する前に、node(i+N)からゴールまでの探索を終了しておく必要がある。ここで、node(i)からnode(i+N)の移動時間Ｔは、走行車の移動速度から予測することができる。つまり、本発明の時間制限付き経路探索アルゴリズムはこの移動時間Ｔを制限時間とすることで、node(i+N)に到着するまでに経路探索を終了し、ドライバはnode(i+N)からこの新たに検索された経路を走行するこができる。
【００４８】
図１３は、Ｎ個のノードの移動時間(制限時間)を10秒、30秒、60秒に固定した状況下での、ノード数Ｎに対する解の質を示した。ここでの解とは走行車がスタートからゴールまでに実際に移動した経路であり、縦軸にその解の質を示した。また、横軸のVehicle speedは移動時間ごとに走行車が通過したノード数を示した。これは走行車の移動速度と見なすことができる。
図１３において、どの移動時間においても通過するノード数が増加するにしたがって、解の質は低下することがわかる。図１２で示したように、本アルゴリズムの特徴としてεの値は後半で大きな値を取る。これは、生成される経路の前半部分では最短経路であるが、後半部分では最短経路とならないことを意味する。したがって、一回の探索で通過するノード数が多い場合は、得られた経路が最適である可能性は低くなり、解の質は低下する。
【００４９】
さらに、図１３に示した解の質と各移動時間に対応する図９の制限時間の解の質を比較すると、繰り返し探索を実行することで結果的に移動する経路の質は向上していることがわかる(例えば、図９の制限時間30秒の解の質は約0.985であり、図１３の移動時間30秒では0.997以上である)。これは、繰り返し得られる経路の前半部分が準最適な経路になっており、走行車はこの準最適の経路を移動するからである。
ここで、一つのノード間の距離を約０．２Kmとし、移動時間60秒で通過するノード数を１とすれば、走行車の速度は時速１２Kmとなる。図１３の場合、移動時間60秒での移動速度（通過ノード数）は５(現実には速度６０Kmを表す。)以下が現実的である。なぜなら、この速度において解の質は1.0となり、最短経路が得られるからである。
したがって、本発明の時間制限付き経路探索アルゴリズムを利用して実時間反復探索を実行することで、結果的に走行車は最短経路を移動することになる。これは、本発明のアルゴリズムが移動中の走行車に適したリアルタイムな経路探索を実現しているものといえる。
【００５０】
（ｅ）関連研究
制限時間内に準最適な経路を生成する問題は、ある制約のもとでの最適化問題としてとらえることができ、走行車をエージェントとみなせばこれはRusselの提案したBounded-optimalなエージェントの一例となる。Russellはこのようなエージェントを設計・実現する一般的な方法を提案している。それに対して本発明は最短経路問題に限定しているが、その分、制限時間内での最適経路発見の方法やアルゴリズムを具体的に示すことに成功した。Russellではエージェントが探索問題において、どのような方法で近似解を生成すればよいかは述べていない。一方、本発明は残された探索時間からεの値をどのように変化させればよいのかを含めた探索アルゴリズムを示した。
【００５１】
制限時間が長ければ、良い解が得られるという特徴はAnytimeアルゴリズムと似ている。Anytimeアルゴリズムはいつでも割り込みでき、その時点での最良結果を出力する。アクションの効用関数は時間に対して単調であるという性質をベースとしており、さらに計算を止めてよいかを決定するメタレベルの手続がある。しかしながら、具体的にどのようなクラスの問題に対して適用可能かは明らかにされていない。しかも、アルゴリズムの評価はなされていない。この種の問題ではiterative deeping探索が使われるが、本発明方法では近似の度合い(ε)を変化させる探索になっている点が異なる。
εを動的に変化させることは本発明が初めてではなく、古くはPohlの研究がある。Pohlは巡回セールスマン問題に対してεの値を探索の深さに反比例させる方法を提案した。これは、解に到達するまでのステップ数を見積り、そのステップ数が多いときは粗に探索し、解に近付いてくると厳密に探索するという戦略になっている。本発明ではεの値は探索が進むにつれて大きくなる。さらに、制限時間とリンクさせることは本発明の独自の方法であり、結果としてリアルタイムアルゴリズムを構成している点で異なる。
【００５２】
KorfのReal-Time A*アルゴリズムでは、計画と実行のインターリーブを許すことで、局所最適な解を生成する。これは一度通ったノードに後戻りできるためである。しかし、本発明のような走行車の経路生成では後戻りは非常に高いコストがつく。そのため実行の前に近似的な解を生成する必要がある。本発明方法はスタートノードに近いところは厳密に探索するため、移動中に再探索させることで、図１３に示したような、ほぼ最適な経路が得られる。本発明はReal-Time A*アルゴリズムと違って、近似の度合をコントロールできる点に特徴がある。
εを増加させることは、ノードの分岐数を徐々に減らすことに相当する。これはGinsbergが提案したIterative Broadeningとは正反対の特徴を持っている。  Interative Broadeningはノードの分岐数を増やして探索空間に徐々に広げていくものである。しかし、本発明方法では分岐数が残りの時間とともに動的に設定される。
【００５３】
（Ｉ）まとめ
本発明はカーナビで使用されるデジタルマップ上で経路探索をリアルタイムに行う方法を提案した。すなわち、経路探索を時間制約付きの最適化問題として定式化し、従来の近似Ａ*アルゴリズムを拡張した動的な探索アルゴリズムを示した。
時間制限付き経路探索を実用化するためには、制限時間をどのように設定・変更するかといった課題を解決する必要がある。この答えの一つに、走行車の移動速度から制限時間を決定する方法が考えられる。移動速度から次に探索を実行するノードへの移動時間が予測できる。この移動時間を制限時間に設定することでリアルタイムな経路生成が実現できる。
【００５４】
移動中に生成した経路をはずれたとき（オフルート）や、渋滞が発生したときなど、新たな経路を急に必要とすると場合には、次のノードに到着するまでの時間を制限時間に設定するといったように、それぞれの状況に応じて制限時間を設定することで実用的な経路生成が可能となる。又、現在インターネットを利用して、より詳細な情報を移動中にリアルタイムに獲得することが可能となりつつあり、そのような中で、どのような状況でどのように制限時間を設定すべきかを明らかにすることが考えられる。これは今後の課題である。
以上、本発明を実施例により説明したが、本発明は請求の範囲に記載した本発明の主旨に従い種々の変形が可能であり、本発明はこれらを排除するものではない。
【００５５】
【発明の効果】
以上本発明によれば、評価値ｆを
ｆ(n)＝ｇ(n)＋ε・ｈ(n)とするε−近似探索法において、(1) 現在の重み係数εを用いて与えられた制限時間内に経路探索が終了するか経路探索中に判定し、(2) 判定結果に基づいて重み係数εの値を変更するようにしたから、制限時間内に経路探索を終了でき、しかも、準最適の経路を探索することができる。
【００５６】
又、本発明では、(1) 第１の地点から第２の地点までの予測コスト（距離）Ｄを制限時間Ｔで除算して基準速度Ｖを演算し、(2) 次のノードへ探索が進む毎に、第１の地点から該ノードまでの有効距離ｄを探索時間ｔで除算して有効速度ｖを演算し、(3) 基準速度Ｖと有効速度ｖとの差に基づいて制限時間内に経路探索が終了するか判定するようにしたから、制限時間内に経路探索が終了するか否かの判定を正確に行うことができる。
【００５７】
又、本発明によれば、対象ノードのうち評価関数が最小のノードに接続する各ノードから第２の地点までの最小予測コストｈを求め、該ｈが最小のものをmin-hとするとき、前記有効距離ｄを
ｄ＝Ｄ−min-h
により演算するようにしたから、正しく有効距離を算出でき、従って、有効速度の精度を高めることができ制限時間内に経路探索が終了するか否かの判定を正確に行うことができる。
【００５８】
又、本発明によれば、基準速度Ｖと有効速度ｖとの差（ｖ−Ｖ）が設定上限値より大きい場合には重み係数εの値を所定量減小し、差（ｖ−Ｖ）が設定下限値より小さい場合には重み係数εの値を所定量増加するようにしたから、制限時間を十分に使って質の高い経路を探索することができる。
【図面の簡単な説明】
【図１】Ａ*アルゴリズムの考察図である。
【図２】探索範囲の傾向説明図である。
【図３】ε−近似探索法の探索空間説明図である。
【図４】時間制限付き経路探索のパラメータ説明図である。
【図５】本発明を適用できるナビゲーション装置の概略構成図である。
【図６】本発明の時間制限付き経路探索の処理フロー（その１）である。
【図７】本発明の時間制限付き経路探索の処理フロー（その２）である。
【図８】本発明の時間制限付き経路探索の説明図である。
【図９】制限時間と解の質の関係説明図である。
【図１０】制限時間とノード数及びサーチ時間の関係説明図である。
【図１１】本発明の時間制限付き経路探索の探索空間説明図である。
【図１２】εの変化説明図である。
【図１３】実時間反復探索における解の質の説明図である。
【図１４】Ａ*アルゴリズムのイメージ図である。
【図１５】Ａ*アルゴリズムの処理フロー図である。
【図１６】探索例題を示す道路網である。
【図１７】Ａ*アルゴリズムによる探索説明図である。
【符号の説明】
１・・地図情報記憶媒体
２・・車両位置検出部
３・・リモコンユニット
４・・時間制限付き経路探索アルゴリズムに基づた経路探索ユニット
５・・モニター
【図１】
0004176211.tif 000003
【図２】
0004176211.tif 000004
【図３】
0004176211.tif 000005
【図４】
0004176211.tif 000006
【図５】
0004176211.tif 000007
【図６】
0004176211.tif 000008
【図７】
0004176211.tif 000009
【図８】
0004176211.tif 000010
【図９】
0004176211.tif 000011
【図１０】
0004176211.tif 000012
【図１１】
0004176211.tif 000013
【図１２】
0004176211.tif 000014
【図１３】
0004176211.tif 000015
【図１４】
0004176211.tif 000016
【図１５】
0004176211.tif 000017
【図１６】
0004176211.tif 000018
【図１７】
0004176211.tif 000019