JPH02259999A - 移動経路探索方法および装置 - Google Patents

移動経路探索方法および装置

Info

Publication number
JPH02259999A
JPH02259999A JP8227489A JP8227489A JPH02259999A JP H02259999 A JPH02259999 A JP H02259999A JP 8227489 A JP8227489 A JP 8227489A JP 8227489 A JP8227489 A JP 8227489A JP H02259999 A JPH02259999 A JP H02259999A
Authority
JP
Japan
Prior art keywords
point
node
route
distance
travel 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.)
Pending
Application number
JP8227489A
Other languages
English (en)
Inventor
Naoji Nakahara
中原 直司
Keiji Kuzutani
啓司 葛谷
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 Corp
Original Assignee
Aisin Seiki 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 Seiki Co Ltd filed Critical Aisin Seiki Co Ltd
Priority to JP8227489A priority Critical patent/JPH02259999A/ja
Publication of JPH02259999A publication Critical patent/JPH02259999A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の目的〕 (産業上の利用分野) 本発明は自動車等の移動体の移動経路を探索する技術に
関する。
(従来の技術) 例えば、不案内な地域において、自動車のドライバや同
乗者は道路地図上の現在地点をトレースしながら走行す
ることがあるが、この種の手作業を自動化した装置があ
る。これの装置は、地図表示装置、自動車の方位検出器
、および走行距離検出手段等からなり、出発地点を入力
して走行を開始すると、地図表示装置上に自動車の現在
地点が逐次表示されるというものである。この場合、地
図表示装置上に表示される情報は自動車の現在地点のみ
であるので、目標地点までの経路は表示された地図から
ドライバや同乗者が判定しなければならない。
この種の不都合に答えるものとして特開昭59−195
113号公報および、特開昭59−195790号公報
には、予め予定経路を手動操作で入力しておき、それを
地図表示装置上に自動車の現在地点とともに表示する装
置が開示されている。これによれば、走行中の経路探索
が不要もしくは簡略化されるのでより円滑な走行が期待
できる。
これをさらに進めて、予定経路の設定を自動化すること
により、装置の有意性をさらに高いものとする試みがな
されている。その1つに特開昭60−11499号公報
がある。これにおいては、道路網内のすべての点を目的
地と考え、各目的地に到着可能なあらゆる地点からその
目的地までの最短経路を車載装置で計算し、これを車載
メモリに記憶し、交差点を通過する毎にメモリから必要
な情報を読み出して表示している。
(発明が解決しようとする問題点) しかしながら、この場合、検出するエリアを限定すると
しても、そこに含まれるすべての道路情報、すなわち、
交差点のつながりや交差点間の距離に関して検索を行な
い、目的地までの最短経路データを記憶しなければなら
ないため、膨大な計算量と大容量のメモリが必要になる
本発明は、少ない処理量で最適な経路を得る移動経路探
索の技術を提供することを目的とする。
〔発明の構成〕
(問題点を解決するための手段) 上記目的を達成するため、本発明においては、移動体の
移動路網に関する情報を用いて、該移動路網上の第1地
点および第2地点が指示されると、第1地点からの累計
移動行程を逐次増加しながら第1地点に接続されている
各移動経路を追跡し、第2地点からの累計移動行程を逐
次増加しながら第2地点に接続されている各移動経路を
追跡し、最初に他方の地点からの移動経路に接合した移
動経路およびそのとき接合した他方の地点からの移動経
路を選択して移動経路を決定するものとする。
(作用) これによれば、例えば、第1地点に接続されている各移
動経路を累計移動行程に関する長さで直線表示し、第2
地点に接続されている各移動経路を累計移動行程に関す
る長さで直線表示すると、各地点を中心とする円が逐次
広げられる形で各移動経路が追跡され、それらが重なっ
た時に経路が決定される。この場合、各円内の領域が探
索範囲を示すものとなるが、両側から円を広げているの
で最も単純な例では一方からのみ探索する場合に比べて
探索範囲が1/2になる。このように探索囲が小さいの
で処理量を極めて少なくできる。
また、移動体の移動路の分岐点の位置に関する位置情報
および相互の接続に関する接続情報を用いれば、第1地
点または第2地点からの累計移動行程を各移動経路上の
分岐点毎に増加しながらそれぞれの第1地点に接続され
ている各移動経路を追跡すれば良いので処理が離散的に
なり、さらに処理量を少なくすることができる。
本発明の他の目的および特長は以下の図面を参照した実
施例説明より明らかになろう。
(実施例) 第1図に本発明を一例で実施する自動車用ナビゲーショ
ン装置を示す。
このナビゲーション装置はマイクロコンビュータ(以下
cpuという)1.CRTドライバ2a。
カラーCRT2b、インターフェイス回路(以下I10
という)3 a、CD−ROMドライバ3b。
入力キーボード4.カウンタ5a、6a9回転パルス発
生器5b、6b、音声合成ユニット7a。
スピーカ7b、音声認識ユニット8aおよびマイクロフ
ォン8bを主体としてなる。なお、ここには図示してい
ないが、この装置は2系統の電源を有し、その一方から
はCPUIに対して常時電力が供給されている。
CRTドライバ2aはキャラクタジェネレータを内蔵し
、CPUIよりの指示に従って車内のダツシュボード中
央部に設置されたカラーCRT2b上に道路地図や経路
、自動車の現在位置、あるいはキャラクタ等の表示を行
なう。
道路地図を表わす地図データはCD−ROMに記録され
ており、CPolは必要に応じてl103aを介してC
D−ROMドライバ3bを制御し、該CD−ROMに記
録されている地図データを読み取る。
入力キーボード4は、カラーCRT2bに近接して備わ
っており、6個のキー4a、4b、4c。
4d、4eおよび4fを備えている。
回転パルス発生器5bは右後輪のアクスルシャフトに1
回転パルス発生器6bは左後輪のアクスルシャフトに、
それぞれ結合されており、各シャフトの1回転毎に約2
0個のパルスを出力する。
このパルス間隔は、各車輪が約ioam進む距離に対応
している。
Rカウンタ5aは回転パルス発生器5bの出力パルスを
計数し、Lカウンタ6aは回転パルス発生器6bの出力
パルスを計数する。
音声合成ユニット7aは、CPUIの指示に応じて予め
用意されている数種のメツセージの1つをスピーカ7b
より音声出力する。
音声認識ユニット8aは、マイクロフォン8bより入力
された音声を認識する。入力される音声は、「ミギ」、
「上ゾリ」およびrソノママ」の3種であり、音声認識
ユニット8aは音節数により入力音声の情報を検出する
この装置は、道案内するナビゲーションモードあるいは
、走行地点の表示のみを行なうトラッキングモードで動
作する。いずれのモードで動作させる場合にも、まず、
出発地点の指定を行なう。
この後、最初に通る交差点(以下ノードという)を指定
すれば、トラッキングモードで動作するが。
目標地点を指定すればそれに至る推奨経路が自動選択さ
れてナビゲーションモードで動作する。ナビゲーション
モードでは、右左折をか予定されている交差点が近づく
とスピーカ7bより「右折して下さい」あるいは「左折
して下さい」という音声のメツセージが出力される。ま
た、経路から外れた場合には「経路から外れました」と
いう音声のメツセージが出力され、その後はトラッキン
グモードで動作する。
次に、第2a図〜第2e図に示したフローチャートを主
に参照しなからCPUIの制御動作を説明する。
まず第2a図を参照されたい。
CPUIは、電源が投入されて各部に所定の電力が供給
されると、SL(フローチャートのステップに付した番
号を示す:以下同義)においてレジスタ、メモリ(不揮
発性領域を除く)およびフラグ等を初期化し、CD−R
OMより地図データを読み取る。
地図データは、通常の地図を示す画像データとそこに含
まれる道路のノードデータよりなる。ノードデータは、
地図上の各ノードの座標およびノード間の接続を示すリ
ンクデータよりなり、その−例を第5図および第7図を
参照して説明する。
第7図はノード間を接続するブランチ、すなわち道路を
直線(実線および破線)で、ノードを「・」で表わした
模式図である。これにおいて、例えばノードN2に注目
すると、ノードN2はノードNl、N3.N4およびN
5と接続されているので(すなわち4差路)、第5図に
示したノードデータテーブルの、ノードN2のノードナ
ンバ(No、)に対応する欄には、ノードN2の座標お
よびリンクデータとしてノードNl、N3.N4および
N5のノードナンバが書き込まれる。
S2では、読み取った地図データに基づいてカラーCR
T2b上に地図およびカーソルを表示する。
83〜S23はオペレータのキー操作に応じて出発地点
および目標地点を設定する処理である。
これにおいては、キー4aが操作されると84で東西方
向の座標に対応するXレジスタ(東を正)を1インクリ
メントし、キー4bが振作されると88でXレジスタを
1デクリメントし、キー4cが操作されるとSi2で北
南方向の座標に対応するYレジスタ(北を正)を1イン
クリメントし。
キー4dが操作されると816でYレジスタを1デクリ
メントする。この結果、これらのレジスタの値に対応す
る座標が画面外となる場合にはS6゜S10.S14ま
たはS18において画像を左方。
右方、下方または上方にスクロールする。
この後、S19において約0.2秒のデイレイを行い、
S23から82に戻ってX、Yレジスタの値で示される
座標にカーソルを表示して上記を繰り返す、つまり、キ
ー4a、4b、4cまたは4dの継続的な操作がある場
合には約0.2秒間隔でカーソルを連続移動表示する。
オペレータは、カーソルが出発地点に一致するとキー4
eを操作する。これにより、S23から524に進む。
最初にキー4eが操作されたときには、フラグRGをリ
セットしているので、S25においてこのフラグをセッ
トし、カーソルにより指定された地点を出発地点Soと
して登録する。この登録においては、指定された地点の
座標を出発地点S。
の座標とし、その地点が存在するブランチの両端のノー
ドのノードナンバを出発地点S。のノードデータとして
ノードデータテーブルのノードナンバSの領域(出発地
点SOのノードデータを書き込む領域)に書き込み、出
発地点Soを通常のノードと同格化する。
この出発地点S。はキー4fの操作により訂正できる。
すなわち、キー4fの操作があると、S20からS21
.S22と進み、これにおいてフラグRGをリセットし
、ノードデータテーブルのノードナンバSの領域のノー
ドデータをクリアし。
仮出発地点S1およびS2をリセットする。
オペレータは、出発地点Soを誤りなく指定すると、次
に、上記と同様に操作してカーソルを移動し、キー4e
を操作して目標地点Doを、指定する。なお、前述した
トラッキングモードで動作させる場合には、このとき最
初に通る交差点(ノード)を目標地点Doとして指定す
る。
これにより、S23から824に進むが、フラグRGを
セットしているので、そこからS26に進み、カーソル
により指定された地点を目標地点Doとして登録する。
この登録においては、指定された地点の座標を目標地点
Doの座標とし、指定された地点が存在するブランチの
両端のノードのノードナンバを目標地点のノードデータ
としてノードデータテーブルのノードナンバDの領域(
目標地点Doの座標を書き込む領域)に書き込み、目標
地点を通常のノードと同格化する。
この後、S27においてリンクテーブル作成処理を実行
する。以下、このリンクテーブル作成処理の詳細につい
て第2b図および第2C図に示したフローチャートを参
照して説明するが、具体的な理解を助けるため、第3a
図に示したモデルを考える。このモデルは、0印により
ノードを、0印とO印とを結ぶ実線によりブランチを、
それぞれ示したものであり、0印の中の数字(記号)は
ノードナンバを、ブランチに近接して付した数字はブラ
ンチの長さ(距M:図上の長さとは無関係)をそれぞれ
示す。ここでは、ノードナンバSのノードを出発地点、
ノードナンバDのノードを目標地点とし、また、各ノー
ドの直近に各ノードから目標地点までの直線距離および
出発地点までの直線距離を付している(目標地点までの
直線距離/目標地点までの直線距離)。
s toiではリスト1〜4を初期化する。リスト1お
よび3は、それぞれ第3b図、第3d図に示したように
シーケンシャルのリストナンバに対応付けした、親ポイ
ンタMP、通過フラグF、ノードナンバNc、累計距離
Tdおよび推定距離Tgの書き込み領域を有するメモリ
であり、リスト2および4は、それぞれ第3c図、第3
e図に示したように、シーケンシャルのリストナンバに
対応付けした、ノードナンバN c 、親ポインタMP
および累計圧wITdの書き込み領域を有するメモリで
ある。これらのリストのうち、リスト1およびリスト2
は出発地点からの経路探索に用いられ、リスト3および
リスト4は目標地点からの経路探索に用いられる。
S 102では、リスト1の先頭欄にノードナンバS(
出発地点)、累計距離Td=Oおよび推定距離Tg=4
を書き込み、リスト3の先頭欄にノードナンバD(目標
地点)、累計距離Td=Oおよび推定距離Tg=4を書
き込む。
5103ではりスト1を検索して最小の推定距離Tgを
得るリストナンバを置数レジスタiに格納し、5104
ではF(i)に通過フラグを書き込む。
この場合は最初であるのでt = 1となり、このとき
のりストlの状態は次の第1表に示すとおりとなる(本
は通過フラグ二以下同じ)。
第 表 S 105では、リスト1の1(=1)Iiiから読み
出したノードナンバNc(+)、親ポインタMP(i)
および累計圧1iTd(i)をリスト2に登録する(第
3c図第111i1)。
8106ではりスト4を調べ、このとき31録したノー
ドナンバNc(i)がリスト4に登録されているときに
はS 140に進むが、登録されていないときには51
07に進む(前者の場合については後述する)。
S 107では、置数レジスタjに1をセットし、81
0Bでは、ノードデータテーブルのノードナンバNc(
i=1)の欄からリンクデータL(j=1)を読み出す
。この場合、L(j=1)=1となるので、5110で
それを置数レジスタkに格納する。
5illではノードナンバNc(i =1)で指定され
るノードN (Nc(i = 1))とノードナンバに
で指定されるノードN(k=1)との距離d(=1)を
求めてノードSからノードN (Nc(i))までの累
計距離Td(i)(=0)に加え、ノードSからノード
N(k)までの累計距離Td(=1)を算出し、さらに
それにノードN(k)から目標地点までの直線距離(=
3)を加えて推定距離Tg(=4)を算出する。
ノードN(k=1)は、リストlおよびリスト2に記載
されていないので、5114においてリスト1に、直前
のノードのノードナンバ、すなわち、Nc(i=1)を
親ポインタとしてノードN(k)のノードナンバk(=
1)、累計距離Td (=1)および推定距離Tg (
=4)を書き込む。これにより、リスト1の状態は次の
第2表に示すとおりとなる。
第     2     表 この後、5117において置数レジスタjを1インクリ
メントして8108に戻るが、L(j=2)の登録はな
いので、5109から5121に進む。
5121ではりスト3を検索して最小の推定距離Tgを
得るリストナンバを置数レジスタQに格納し、S 12
2ではF(Q)に通過フラグを書き込む。
この場合は最初であるのでQ=1となり、このときのり
スト3の状態は次の第3表に示すとおりとなる。
第 表 5123では、リスト3の9(=l)IIから読み出し
たノードナンバNc(Q)、ljtポインタMP(Q)
および累計距離Td(Q)をリスト4に登録する(第3
e図第1欄)。
5124ではりスト2を調べ、このとき登録したノード
ナンバNc(Q)がリスト2に登録されているときには
後述する5140に進むが、登録されていないときには
5125に進む。
5125では、置数レジスタmに1をセットし、512
6では、ノードデータテーブルのノードナンバNc(Q
=1)の欄からリンクデータL(m=1)を読み出す。
この場合、L(m=1)=3となるので、8128でそ
れを置数レジスタnに格納する。
S 114ではノードナンバNc(Q=1)で指定され
るノードN (Nc(Q=1))とノードナンバnで指
定されるノードN(n=3)との距離d(=1)を求め
てノードDからノードN(Nc(Q))までの累計距離
Td(Q)(=0)に加え、ノードDからノードN(n
)までの累計距離Td(=1)を算出し、さらにそれに
ノードN(n)から出発地点までの直線距離(=3)を
加えて推定距離Tg(=4)を算出する。
ノードN(n=3)は、リスト3およびリスト4に記載
されていないので、5132においてリスト3に、直前
のノードのノードナンバ、すなわち、Nc(Q=1)を
親ポインタとしてノードN(n)のノードナンバn (
=3) 、累計距離Td(=1)および推定距離Tg(
=4)を書き込む。これにより、リスト3の状態は次の
第4表に示すとおりとなる。
第     4     表 この後、S 135において置数レジスタmを1インク
リメントして5126に戻るが、L (m = 2 )
の登録はないので、5103に戻る。
5103において、リスト1より通過フラグがなく、最
小の推定距離Tgを得るリストナンバを探索するとi=
2を得るので、5104でF(i=2)に通過フラグを
書き込み、S 105ではリス1−1の1(=2)欄か
ら読み出したノードナンバNc(i)。
親ポインタM P (i )および累計距離Td(i)
をリスト2に登録する(第3c図第20)。
5106ではりスト4を調べるが、このとき登録したノ
ードナンバNc(+)は、リスト4に登録されていない
ので8107に進む。
ノードデータテーブルには、ノードナンバN c (i
 )で指定されるノード、すなわち、N(1)のリンク
データとして2,5.6およびSが登録されている。そ
こで、5107で置数レジスタjに1をセットし、81
08でノードデータテーブルのノードナンバNe(i=
2)の欄からリンクデータL(j=1)として2を読み
出し、S 110で置数レジスタkに格納する。
S 111ではノードN (Nc(+=2))とノード
N(k=2)との距離d (=3)を求め、ノードN(
Nc(i))までの累計距離Td(i)(=1)に加え
てノードSからノードN(k)までの累計距離Td  
(=4)を算出し、それにノードN(k)から目標地点
までの直線距離(5)を加えて推定距離Tg (=9)
を算出する。
ノードN(k=2)は、リスト1およびリスト2に記載
されていないので、5114においてリスト1に、直前
のノードのノードナンバ、すなわち、Nc(t=2)を
親ポインタとしてノードN(k)のノードナンバk  
(=2) 、累計距離Td (=4)および推定距離T
g (=9)を書き込む。
この後、S 117においてjを1インクリメントして
8108に戻り、ノードデータテーブルのノードナンバ
Nc(m=2)の欄からリンクデータL(m=2)とし
て5を読み出し、S 110で置数レジスタkに格納す
る。
S 111では、上記同様にノードSからノードN (
Nc(i =2))を通すノードN(k=5)に至るま
での累計距離Td (=2)およびそのノードを選択し
たときの目標地点までの推定距離Tg(=4)を算出す
る。
このノードN(k=5)は、リスト1およびリスト2に
記載されていないので、S 114においてリスト1に
、ノードナンバN c (i = 2 )を親ポインタ
としてノードN(k)のノードナンバk  (=5) 
累計距離Td (=2)および推定距離Tg (=4)
を書き込む。
上記同様に、m=3としてリンクデータL(j)=6に
ついて検討し、5114においてリスト1に、ノードナ
ンバNc(i =2)を親ポインタとしてノードN(k
=6)のノードナンバk  (=6) 、累計距離Td
(=3)および推定距離Tg (=8)を書き込む。さ
らに、m=4としてリンクデータL(j)=Sについて
も検討するが、このノードはリスト1にすでに記載され
ており、そこに記載された推定距離(4)がこのとき求
めた推定距離Tg (=5)より小さいのでリスト1の
変更を行なわない。
以上により、リスト1の状態は次の第5表に示すとおり
となる。
第     5     表 S 109から5121に進み、これにおいてリスト3
を調べ、通過フラグがなく、最小の推定距離Tgを得る
リストナンバを探索すると、m=2を得るので、512
2でF(m=2)に通過フラグを書き込み、5123で
はりスト3の12(=2)IIから読み出したノードナ
ンバNc(12L親ポインタMP(Q)および累計距離
Td(fl)をリスト4゛に登録する(第3e図第2欄
)。
5124ではりスト2を調べるが、リスト2にはこのと
き登録したノードナンバNC(Q)の登録がないので8
125に進む。
ノードデータテーブルには、ノードナンバNc(u)で
指定されるノード、すなわち、N(3)のリンクデータ
として2.4.6,7およびDが登録されている。そこ
で、5125で置数レジスタmに1をセットし、812
6でノードデータテーブルのノードナンバNc(Q=’
2)の欄からリンクデータL(m=1)として2を読み
出し、8128で置数レジスタnに格納する。
5129ではノードN (N c (Q = 2))と
ノードN(n=2)との距11id  (=5)を求め
、ノードN (Nc(ffi))までの累計距離Td(
Q)(=1)に加えてノードDからノードN(n)まで
の累計距離Td (=6)を算出し、それにノードN 
(n )から出発地点までの直線距離(3)を加えて推
定距離Tg (=9)を算出する。
ノードN(n=2)は、リスト3およびリスト4に記載
されていないので、5132においてリスト3に、直前
のノードのノードナンバ、すなわち、Nc((1=2)
を親ポインタとしてノードN(n)のノードナンバn 
(=2) 、累計距離Td (=6)および推定距fi
Tg(=9)を書き込む。
この後、5135においてmを1インクリメントして5
126に戻り、ノードデータテーブルのノードナンバN
 c (k=2)の欄からリンクデータL(m=2)と
して4を読み出し、5128で置数レジスタnに格納す
る。
5129では、上記同様にノードDからノードN (N
 c (Q = 2))を通すノードN(n=4)に至
るまでの累計距離Td  (=2)および七のノードを
選択したときの目標地点までの推定距離Tg(=4)を
算出する。
このノードN(n=4)は、リスト3およびリスト4に
記載されていないので、5132においてリスト3に、
ノードナンバNc(Q=2)を親ポインタとしてノード
N(n)のノードナンバn(=4)。
累計距離Td (=2)および推定距離Tg (=4)
を書き込む。
さらに、m=3としてリンクデータL(m)=6につい
て検討し、S 132においてリスト3に、ノードナン
バN c (Q = 2 )を親ポインタとしてノード
N(n=6)のノードナンバn (=6) 、累計距離
Td (=6)および推定距離Tg (=8)を書き込
み、m = 4としてリンクデータL(m)=7につい
て検討し、5132においてリスト3に、ノードナンバ
Nc(Q=2)を親ポインタとしてノードN(n=7)
のノードナンバn(=7)、累計距離Td (=5)お
よび推定距離Tg(=11)を書き込む。また、m =
 5としてリンクデータL(m)=Dについて検討する
が、このノードはリスト3にすでに記載されており、そ
こに記載された推定距離(4)がこのとき求めた推定距
離Tg (=5)より小さいのでリスト3の変更を行な
わない。
以上により、リスト3の状態は次の第6表に示すとおり
となる。
S 103に戻り、リストlを検索すると、通過フラグ
がない最小の推定距離Tgを得るリストナンバとしてi
=4を得るので、5104においてF(i=4)に通過
フラグを書き込み、5105においてリストlの1(=
4)欄から読み出したノードナンバNc(i)、Wtポ
インタM P (i)および累計距離Td(i)をリス
ト2に登録する(第3C図第311)。
S 106ではりスト4を調べるが、リスト4にこのと
き登録したノードナンバNe(i)の登録がないので8
107に進む。
ノードデータテーブルには、ノードナンバN c (i
 = 4 )で指定されるノードのリンクデータとして
1,4および6が登録されている。そこで、5107で
置数レジスタjに1をセットした後。
8108でノードデータテーブルのノードナンバN c
 (i = 4 )の欄からリンクデータL(j=1)
として1を読み出し、5ttoで置数レジスタkに格納
する。
5111では上記同様にノードSからノードN (Nc
(i))を通すノードN(k=1)に至るまでの累計比
11iTd (=3)およびそのノートを選択した。と
きの目標地点までの推定比i!lfT g (= 6 
)を算出する。
この場合、ノードN(k=1)は、すでにリストlに記
載されており、そこに記載されている推定距離(=4)
はここで求めた推定距離Td (=6)より小さいので
、リスト1を変更することなく5118から5117に
進み、ここでレジスタjを1インクリメントして810
8に戻る。
8108において、ノードデータテーブルのノードナン
バNc(i=4)の欄からリンクデータL(j=2)と
して4を読み出し、5110で置数レジスタkに格納し
た後、5lllでは上記同様にノードSからノードN 
(Nc(i))を通すノードN(k=4)に至るまでの
累計距離Td (=3)およびそのノードを選択したと
きの推定距離Tg(=4)を算出する。
ノードN(k=4)は、リスト1およびリスト2に記載
されていないので、5114においてリストlに、ノー
ドナンバNe(i=4)を親ポインタとしてノードN(
k=4)のノードナンバk  (=4) 。
累計距離Td (=3)および推定距離Tg (=4)
を書き込む。
さらにレジスタjを1インクリメントし、リンクデータ
L(j=3)=6について検討を行ない、累計距離Td
 (=3)および推定距離Tg (=8)を得る。この
場合、リスト1にノードN(k=6)の記載があり、推
定距離が等しいのでリスト1の記載内容を変更しない。
以上により、リスト1の状態は次の第7表に示すとおり
となる。
第     7     表 5121に進み、リスト3を検索すると、通過フラグが
ない最小の推定距離Tgを得るリストナンバとしてm=
4を得るので、5122においてFCQ=4)に通過フ
ラグを書き込み、5123においてリスト3のQ(=4
)欄から読み出したノードナンバNc(Q)を親ポイン
タMP(fl)および累計距離Td(Q)をリスト4に
登録する(第3e図第3欄)。
5124ではりスト2を調べるが、リスト2にはこのと
き登録したノードナンバNc(Q)の登録がないので8
125に進む。
ノードデータテーブルには、ノードナンバNc(m=4
)で指定されるノードのリンクデータとして3および5
が登録されている。そこで、S 125で置数レジスタ
mに1をセットした後、5126でノードデータテーブ
ルのノードナンバNc(m=4)の欄からリンクデータ
L(m=1)として3を読み出し、8128で置数レジ
スタnに格納する。
5129では上記同様にノードDがらノードN (Nc
(R))を通すノードN(n=3)に至るまでの累計距
離Td (=3)およびそのノードを選択したときの目
標地点までの推定距離Tg (=6)を算出する。
この場合、ノードN(n=3)は、すでにリスト3に記
載されており、そこに記載されている推定距離(=4)
はここで求めた推定距離Td (=6)より小さいので
、リスト3を変更することなく5136から5135に
進み、ここでレジスタmを1インクリメントしてS 1
26に戻る。
8126において、ノードデータテーブルのノードナン
バNc(m=4)の欄からリンクデータL(m=2)と
して5を読み出し、5128で置数レジスタnに格納し
た後、5129では上記同様にノードDからノードN 
(Nc(Q)) を通すノードN(n=5)に至るまで
の累計距離Td (=3)およびそのノードを選択した
ときの推定距離Tg(=4)を算出する。
ノードN(n=5)は、リスト3およびリスト4に記載
されていないので、5132においてリスト3に、ノー
ドナンバNc(R=4)を親ポインタとしてノードN(
n=5)のノードナンバn (=5) 。
累計比mTd (=3)および推定距離Tg (=4)
を書き込む。
以上により、リスト3の状態は次の第8表に示すとおり
となる。
再びS 103に戻り、リスト1を検索すると、通過フ
ラグがない最小の推定距離Tgを得るリストナンバとし
てi=6を得るので、5104においてF(i=6)に
通過フラグを書き込み、5105においてリストlの1
(=6)IIから読み出したノードナンバNc(i)、
親ポインタMP(+)および累計距#T d (i )
をリスト2に書き込む(第3C図第34!J)。
この場合、5124においてリスト4を調べると、ここ
でリスト2に518したノートナンバNc(i)、すな
わち、114 jTの登録があるので、処理を終了して
5140に進む。5140では、リスト2およびリスト
4を統合して、第6図に示したような出発地点SOから
目標地点DOに至る経路を示すリンクテーブルを完成す
る。
なお、上記の第3a図に基づいた説明では呪われなかっ
たが、検討中のノードがリスト1 (または3)すでに
記載されており、そこに記載しである推定距離より小さ
いときには、5l19(またはS 137)においてそ
のノードの親ポインタ、累計距離および推定距離を書き
換え、検討中のノードがリスト2(または4)すでに登
録されており、そこに記載しである推定距離より小さい
ときには、5116(またはS 134)においてその
ノードの親ポインタ、累計距離および推定距離を書き換
える。
リンクテーブル作成処理を終了すると328においては
、このとき作成したリンクテーブルで示される経路を、
推奨経路としてカラーCRT2b上の地図に色分は表示
し、併せてその経路長(距離)を表示する。
目標地点Doの指定誤りはキー4fの操作により訂正で
きる。すなわち、キー4fの操作があると、S29から
330に進み、ここでノードデータテーブルのノードナ
ンバDの領域をクリアした後、S31においてリンクテ
ーブルをクリアし、S2に戻る。
オペレータは、表示された推奨経路に確認するとキー4
eti−操作して走行を開始する。S32でこの操作を
検出すると533で置数レジスタMにリンクテーブルの
データ数をセットし、置数レジスタmの値を0にリセッ
トした後、第2b図に示したフローチャートの334以
下に進む。
S34では、レジスタDsをリセットする。このレジス
タには、割込処理においてリセット後の積算走行距離デ
ータが格納される。
以下の説明を続ける前に、第2e図を参照して割込処理
を説明する。この割込処理は、CPUIの内部クロック
により0.5秒毎に起動され、Rカウンタ5aの値およ
びLカウンタ6aの値により走行距離と偏向角を算出す
る。
まず、S201においてRカウンタ5aの値をレジスタ
Aに、Lカウンタ6aの値をレジスタBに、それぞれ格
納し、3202に−おいでRカウンタ5aおよびLカウ
ンタ6aをリセットする。
つまり、Rカウンタ5aは割込発生周期の間に回転パル
ス発生器5bが発生したパルス数を、Lカウンタ6aは
割込発生周期の間に回転パルス発生器6bが発生したパ
ルス数を、それぞれカウントする。これらのパルス数は
、前述したように、左右後軸のアクスルシャフトの回転
数、すなわち、左右後輪のそれぞれの走行距離に対応す
るので、これらの値を用いて割込発生周期の偏向角を求
めることができる。
具体的には第4図を参照されたい。
自動車が0[rad1時計方向に回旋した場合の右後輪
の走行距離aは、回旋の中心から右後輪Rvまでの距離
rHを用いてrR・θで表わされ、左後輪の走行距離す
は、回旋の中心から左後輪Rwまでの距離rLを用いて
rL・θで表わされる。
したがって、偏向角θは、 θ= (b−a) / (r L−r R)   ・”
・(1)で表わされる。この第(1)式において、右辺
の分母(rL rF:L)はホイールトラックWである
ので、左右の車輪の走行距離の差から偏向角θが算出で
きる。
この第(1)式を適当な定数を用いて1次変換すること
により、Lカウンタ6aのカウントデータ(レジスタB
の値)とRカウンタ5aのカウントデータ(レジスタA
の値)との差から、時計方向を正とする1周3606の
角度で偏向角を求める関数f1が得られる。本実施例で
は、関数f】をテーブル形式でCPUIの内部ROMに
記憶している。
5203においては、レジスタBの値とレジスタAの値
との差でROMテーブルを参照して割込発生周期の偏向
角を求め、レジスタCに格納する。
レジスタCの値は5204においてレジスタAzに積算
される。つまり、レジスタAzの値は特定の期間の偏向
角を示すことになる。
5205では、関数f2を用いて割込発生周期の走行距
離を求めてDレジスタに格納する。この関数f2はAレ
ジスタの値とBレジスタの値の平均値から走行距離をメ
ートル単位で求める関数であり、テーブル形式でCPU
Iの内部ROMに記憶されている。
5206においては、レジスタDsにレジスタDの値を
加算する。つまり、レジスタDsの値は特定の期間の積
算走行距離を示すことになる。
再度第2b図を参照されたい。
S34でレジスタDsをリセットしたので、割込処理に
おいてはこれ以降の積算走行距離データが格納される。
m==0のときは、レジスタDsの値は出発地点からの
走行距離となる。
S35においては、リンクテーブルの第m番および第m
+1番のデータを読み出してそれぞれ置数レジスタiお
よびjにセットする。これらの値は走行経路上に連続し
て存在するノードの番号を示すので(前述したように本
実施例では出発地点および目標地点を通常のノード同格
で扱っており、m=0であればi=Sとなり出発地点の
ノード番号を示す、)、S36においては、l+Jの値
でそれぞれ示されるノードN (i) 、 N (j)
間の距離を求めてレジスタDslに格納し、それらのノ
ード間を結ぶブランチの方位角を求めてレジスタAzl
に格納する。なお、本実施例においては、方位角を地図
上の真北を基準に時計方向に正とする1周360°の角
度で表わすものとする(第8図参照)。
出発地点の座標および進行方向(次に通過予定のノード
)が指定されているので、レジスタDsの値から現在地
点が求まる。つまり、第8図に示すように、ある時点で
ノードN(i)にいた自動車Vは、次に通過するノード
N(j)が指定されていればノードN (i)とノード
N(j)とを結ぶブランチに沿って移動するので、ノー
ドN (i)からの積算走行距離データ、すなわち、レ
ジスタDsの値により自動車Vの現在地点が求まる。
S37〜S39でなるループにおいては、レジスタDs
lの値とレジスタDsの値との差およびキー4fの操作
を監視しながら、レジスタDsの値に基づいてカラーC
RT2bのノードN (i)とノードN (3)との間
を結ぶブランチ上に、現在地点をカーソル表示する。こ
の後、レジスタDslの値とレジスタDsの値との差、
すなわち、現在地点から次の交差点(ノードN (j)
 )までの距離が所定の値Dt以下になるとS40以下
に進む、いいかえると、S37〜S39でなるループは
、第8図において自動車Vが次の交差点(ノードN(j
))から半径Dtのエリア内に進入するのを待つループ
である。本実施例ではこのDtの値を、約30mに設定
している。
S40ではレジスタAzをリセット(o)し、レジスタ
mを1インクリメントする。レジスタmの値がレジスタ
Mの値より小さいときには、リンクテーブル内に次のノ
ードナンバを示すデータが格納されているので842以
下に進み、ナビゲーションモードで動作するが、レジス
タmの値がレジスタMの値以上になるとリンクテーブル
内には次のノードナンバを示すデータがないので354
以下に進み、トラッキングモードで動作する。ここでは
前者から説明する。
S42ではリンクテーブルの第m+1番のデータを読み
出して置数レジスタkに格納し、S43ではノードN(
j)とN (k)との間を結ぶブランチの方位角を求め
てレジスタA7.2に格納する。
レジスタAzlには現在走行中のブランチの方位角が格
納されているのでレジスタAzlの値とレジスタAz2
の値とを比較することにより、予定された次の進行方向
が求まる。例えば、第8図においては、ノードN (i
)とノードN(j)との間を結ぶブランチの方位角、す
なわちレジスタAzlの値より、ノードN(」)とノー
ドN (k)との間を結ぶブランチの方位角、すなわち
レジスタA z 2の値の方が大きいので、自動車■は
ノードN(j)において右回旋すれば良いことになる。
このようにしてS44で右左折の方向を判定し、右折と
判定した場合にはS46において「右折して下さい」と
いうメツセージをスピーカ7bを介して音声出力し、左
折と判定した場合にはS47において「左折して下さい
」というメツセージをスピーカ7bを介して音声出力し
、直進と判定した場合には音声出力を行なわない。
348〜S50のループは、第8図において自動車Vが
ノードN(j)から半径Dtのエリア外に出るのを待つ
ループである。このエリア外に出ると、S51において
そのときのレジスタAzの値、すなわち、自動車Vがノ
ードN N)から前後Dtの距離を通過する間の偏向角
をレジスタAzlの値に加えてレジスタAz3に格納す
る。
本実施例においては、360を法として方位角を設定し
ているので、レジスタAz3の値についてもこれに順じ
て360を法とした加算を行なう。
S52では、レジスタAz3の値とレジスタA Z 2
の値とを比較する。予定された経路を運転者が正しく選
択した場合には二九らの値はほぼ等しくなるので334
に戻る。以下は、ノードを通過する毎に、そのノードを
基準にして現在地点を求め、予定された旋回方向を判定
する。
ところで、レジスタAz3の値とA z 2の値とが許
容範囲を超えて異なる場合には853にお5Nて「経路
を外れました」というメツセージをスピーカ7bを介し
て音声出力し、以下はトラッキングモードで動作する。
この場合は858でレジスタDsをリセット(O)した
後、レジスタA z 3の値に最も近%)方位角を有す
る、ノードN(j)に接続されるブランチを検索する。
このとき、適正なブランチが見付かると364において
そのブランチを運転者(オペレータ)が選択したブラン
チとして設定するが、見付からない場合には361〜3
63でなる、運転者の声による回旋方向のデータの入力
待ループを設定する。このループにおいて運転者から、
「ミギ」、「上ゾリ」あるいは「ソノママ」という音声
信号が入力されると、S64でそれに基づいて運転者が
選択したブランチを設定する。
S65では通過したノードのノードナンバをレジスタi
に、設定したブランチの他端に相当するノードのノード
ナンバをレジスタjに、それぞれ格納する。
S66では、S36と同様にしてi+Jの値でそれぞれ
示されるノードN (i) 、 N (j)間の距離を
求めてレジスタDslに格納し、それらのノード間を結
ぶブランチの方位角を求めてレジスタAzlに格納する
前述と同様に、367〜S69でなるループにおいては
自動車が次のノードN(j)から半径Dtのエリア内に
進入するのを待ち、このエリア内になると870におい
てレジスタAzをリセットする。この後、854〜S5
6でなるループにおいて自動車がそのノードN(j)か
ら半径Dtのエリア外に出るのを待ってノードN (j
)を通過する間の偏向角を求める。
S57では、レジスタAzlの値にレジスタAzの値を
加えて自動車の現在方位角を求めてレジスタAz3に格
納する。このレジスタAz3の値は、前述と同様に、S
59において運転者が選択したブランチを検索するのに
用いる。
以上の処理を行なう間は、常にカーソルが自動車の現在
地点を表示しているので、自動車の走行がトラッキング
される。また、動作中にキー4fが操作された場合には
処理を中止し、S71において前述と同様に出発地点S
oおよび目標地点Doをクリアし、リンクテーブルをク
リアし、フラグRGをリセットして第2a図に示したフ
ローチャートの82に戻る。
なお、上記実施例においては、経路長を移動行程として
いるが、これに替えて移動時間を用いても良い。
また、上記実施例においては自動車の経路探索に本発明
を適用しているが、この他の陸上の移動体あるいは、陸
上以外の移動体に本発明が適要可能であることは自明で
あろう。
〔発明の効果〕
以上説明したとおり、本発明においては、移動体の移動
路網に関する情報を用いて、該移動路網上の第1地点お
よび第2地点が指示されると、第1地点からの累計移勤
行程を逐次増加しながら第1地点に接続されている各移
動経路を追跡し、第2地点からの累計移勤行程を逐次増
加しながら第2地点に接続されている各移動経路を追跡
し、最初に他方の地点からの移動経路に接合した移動経
路およびそのとき接合した他方の地点からの移動経路を
選択して移動経路を決定している。
つまり、これによれば、例えば、第1地点に接続されて
いる各移動経路を累計移勤行程に関する長さで直線表示
し、第2地点に接続されている各移動経路を累計移勤行
程に関する長さで直線表示すると、各地点を中心とする
円が逐次広げられる形で各移動経路が追跡され、それら
が重なった時に経路が決定される。この場合、各円内の
領域が探索範囲を示すものとなるが、両側から円を広げ
ているので最も単純な例では一方からのみ探索する場合
に比べて探索範囲が1/2になる。このように探索囲が
小さいので処理量を極めて少なくできる。
また、移動体の移動路の分岐点の位置に関する位置情報
および相互の接続に関する接続情報を用いれば、第1地
点または第2地点からの累計移勤行程を各移動経路上の
分岐点毎に増加しながらそれぞれの第1地点に接続され
ている各移動経路を追跡すれば良いので処理が離散的に
なり、さらに処理量を少なくすることができる。
【図面の簡単な説明】
第1図は、本発明を一例で実施する自動車用ナビゲーシ
ョン装置の構成を示すブロック図である。 第2a図〜第2e図は、第1図に示したマイクロコンピ
ュータ1の動作概要を示すフローチャートである。 第3a図は、第1図に示したマイクロコンピュータ1が
行なう経路探索の処理を説明するための説明図である。 第3b図〜第3e図は各リストの一例を示す平面図であ
る。 第4図は自動車の右後輪と左後輪の走行距離差で回旋角
を検出する原理を示す説明図である。 第5図はノードデータテーブルの一例を示す平面図であ
る。 第6図はリンクテーブルの一例を示す平面図である。 第7図はノードの接続例を示す説明図である。 第8図は現在位置の検出および回旋方向の検出の原理を
示す説明図である。 7a:音声合成ユニット 7b:スピー力8a:音声認
識ユニット 8b二マイクロフォン■:自動車

Claims (3)

    【特許請求の範囲】
  1. (1) 移動体の移動路網に関する情報を用いて、移動
    路網上の第1地点および第2地点が指示されると、第1
    地点からの累計移動行程を逐次増加しながら第1地点に
    接続されている各移動経路を追跡し、第2地点からの累
    計移動行程を逐次増加しながら第2地点に接続されてい
    る各移動経路を追跡し、最初に他方の地点からの移動経
    路に接合した移動経路およびそのとき接合した他方の地
    点からの移動経路を選択して移動経路を決定する、移動
    経路探索方法。
  2. (2) 移動体の移動路網に関する移動路網情報を記憶
    する記憶手段; 前記移動路上の第1地点および第2地点を指示する指示
    手段;および、 前記指示手段により第1地点および第2地点が指示され
    ると、該第1地点からの累計移動行程を逐次増加しなが
    ら該第1地点に接続されている各移動経路を追跡し、該
    第2地点からの累計移動行程を逐次増加しながら該第2
    地点に接続されている各移動経路を追跡し、最初に他方
    の地点からの移動経路に接合した移動経路およびそのと
    き接合した他方の地点からの移動経路を選択して移動経
    路を決定する、処理手段; を備える、移動経路探索装置。
  3. (3) 前記記憶手段は、移動体の移動路の分岐点の位
    置に関する位置情報および相互の接続に関する接続情報
    を記憶し、 前記処理手段は、前記第1地点からの累計移動行程を各
    移動経路上の分岐点毎に増加しながら該第1地点に接続
    されている各移動経路を追跡し、前記第2地点からの累
    計移動行程を各移動経路上の分岐点毎に増加しながら該
    第2地点に接続されている各移動経路を追跡する、前記
    特許請求の範囲第(2)項記載の移動経路探索装置。
JP8227489A 1989-03-31 1989-03-31 移動経路探索方法および装置 Pending JPH02259999A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8227489A JPH02259999A (ja) 1989-03-31 1989-03-31 移動経路探索方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8227489A JPH02259999A (ja) 1989-03-31 1989-03-31 移動経路探索方法および装置

Publications (1)

Publication Number Publication Date
JPH02259999A true JPH02259999A (ja) 1990-10-22

Family

ID=13769913

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8227489A Pending JPH02259999A (ja) 1989-03-31 1989-03-31 移動経路探索方法および装置

Country Status (1)

Country Link
JP (1) JPH02259999A (ja)

Similar Documents

Publication Publication Date Title
JPH02260000A (ja) 移動経路探索方法および装置
JP2778374B2 (ja) 車両用ナビゲーション装置
JP4776476B2 (ja) ナビゲーション装置および交差点拡大図の描画方法
JPH10122884A (ja) ナビゲーション装置
JPH09178498A (ja) 車両位置修正方法
JPH08271268A (ja) ナビゲーション装置のデモンストレーション方法
JP2618254B2 (ja) 走行経路表示装置
JP2000146604A (ja) 車両用ナビゲ―ション・システム及び方法
JP3969373B2 (ja) ナビゲーション装置
CN101385061A (zh) 地图显示系统及地图显示系统的地图显示方法与地图显示装置及程序
JP3769817B2 (ja) 経路探索表示装置
JPH09184732A (ja) 車両用道路地図表示装置
JPH0688732A (ja) 車両用ナビゲーション装置
JPH10300492A (ja) ロケータ装置
JP4305181B2 (ja) ナビゲーション装置
JP2882251B2 (ja) 経路誘導装置
JP3283146B2 (ja) 自動車用ナビゲーション装置
JPH02259999A (ja) 移動経路探索方法および装置
JPH06201392A (ja) 道路地図データの作成方法
JP2675427B2 (ja) 車両位置決定方法
JPH01250200A (ja) 移動経路探索方法および装置
JPH09292254A (ja) 走行位置表示装置
JP2001141467A (ja) データベース修正装置及びデータベース修正方法
JP2002148056A (ja) ナビゲーション装置、移動軌跡の表示方法、記憶媒体
JP2885665B2 (ja) ナビゲーション装置