(57)【特許請求の範囲】
【請求項１】
移動手段の現在位置を検出する現在位置検出手段と、
目的地を設定するための目的地設定手段と、
この目的地設定手段によって設定された目的地までの案内経路を設定する案内経路設定手段と、
上記現在位置が上記案内経路設定手段により設定された案内経路から外れているか否かを判別する経路外れ判別手段と、
この経路外れ判別手段により現在位置が案内経路から外れていると判別されたときに、上記現在位置が案内対象道路上にあるか非案内対象道路上にあるかを判別する位置判別手段と、
この位置判別手段により現在位置が非案内対象道路上にあると判別された場合に、上記現在位置から案内対象道路上の地点までの距離及びこの案内対象道路上の地点から上記目的地までの距離の合計距離を算出し、この算出された合計距離に基づいて上記目的地までの経路を設定する再探索手段とを有することを特徴とするナビゲーション装置。
【請求項２】
移動手段の現在位置を検出する現在位置検出手段と、
目的地を設定するための目的地設定手段と、
この目的地設定手段によって設定された目的地までの案内経路を設定する案内経路設定手段と、
上記現在位置が上記案内経路設定手段により設定された案内経路から外れているか否かを判別する経路外れ判別手段と、
この経路外れ判別手段により現在位置が案内経路から外れていると判別されたときに、上記現在位置が案内対象道路上にあるか非案内対象道路上にあるかを判別する位置判別手段と、
この位置判別手段により現在位置が非案内対象道路上にあると判別された場合に、上記現在位置から案内対象道路上の地点までの距離及びこの案内対象道路上の地点から上記目的地までの距離の合計距離を算出し、この算出された合計距離に基づいて上記目的地までの経路を設定する再探索手段と、
上記現在位置に基づいて上記目的地までの案内を報知するための報知手段とを有し、
上記報知手段は、上記再探索手段により算出された現在位置から案内対象道路上の地点までの距離を報知することを特徴とするナビゲーション装置。
【請求項３】
上記再探索手段により算出される現在位置から案内対象道路上の地点までの距離は、現在位置と案内対象道路上の地点とを結ぶ直線距離であることを特徴とする請求項１、２記載のナビゲーション装置。
【請求項４】
上記再探索手段により算出される現在位置から案内対象道路上の地点までの距離は、現在位置から案内対象道路上の地点に至る実走行距離であることを特徴とする請求項１、２記載のナビゲーション装置。
【請求項５】
移動手段の進行方向を検出する進行方向検出手段を備え、
上記再探索手段は、上記進行方向に探索エリアを設定し、この設定された探索エリア内にある案内対象道路上の地点を探索することを特徴とする請求項１、２記載のナビゲーション装置。
【請求項６】
上記探索エリアは、現在位置から所定距離前方を中心とする所定範囲のエリアであることを特徴とする請求項５記載のナビゲーション装置。
【請求項７】
上記探索エリアは、現在位置の進行方向に対して所定角度幅のエリアであることを特徴とする請求項５記載のナビゲーション装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、現在位置が案内経路上にない場合に、改めて案内経路の設定が可能なナビゲーション装置に関する。
【０００２】
【従来の技術】
従来のナビゲーション装置では、使用者により目的地が登録された後に、この目的地までの経路がマニュアル操作で登録されたり、自動的に目的地までの最短経路または最適経路や推奨経路が求められたりする。そして、この目的地までの経路は、案内経路として地図画面上に太線等の目立つ線で表示され、この案内経路に従って自車が移動するように経路案内が行われる。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来のナビゲーション装置には、現在位置が出発時に設定された案内経路を外れた場合に、現在位置から新たに案内経路を探索する再探索機能を有するものがある。しかし、自車が案内経路から外れたときに、現在位置が道路データにない地点である場合には、新たな案内経路の探索は行われず、出発時に設定された案内経路が表示されたままであるか、或いは出発時に設定された案内経路が消去されてしまうこともある。このため、出発時に設定された案内経路の他に目的地までの最適な道路が存在しても、この最適な道路が新たな案内経路とされることはなく、また、当初の案内経路が消去されてしまうと運転者は目的地までの経路が解らなくなる。
【０００４】
【課題を解決するための手段】
上記課題を解決するために、請求項１に記載された本発明では、移動手段の現在位置を検出する現在位置検出手段と、目的地を設定するための目的地設定手段と、この目的地設定手段によって設定された目的地までの案内経路を設定する案内経路設定手段と、上記現在位置が上記案内経路設定手段により設定された案内経路から外れているか否かを判別する経路外れ判別手段と、この経路外れ判別手段により現在位置が案内経路から外れていると判別されたときに、上記現在位置が案内対象道路上にあるか非案内対象道路上にあるかを判別する位置判別手段と、この位置判別手段により現在位置が非案内対象道路上にあると判別された場合に、上記現在位置から案内対象道路上の地点までの距離及びこの案内対象道路上の地点から上記目的地までの距離の合計距離を算出し、この算出された合計距離に基づいて上記目的地までの経路を設定する再探索手段とを有する。
【０００５】
また、請求項２に記載された本発明では、移動手段の現在位置を検出する現在位置検出手段と、目的地を設定するための目的地設定手段と、この目的地設定手段によって設定された目的地までの案内経路を設定する案内経路設定手段と、上記現在位置が上記案内経路設定手段により設定された案内経路から外れているか否かを判別する経路外れ判別手段と、この経路外れ判別手段により現在位置が案内経路から外れていると判別されたときに、上記現在位置が案内対象道路上にあるか非案内対象道路上にあるかを判別する位置判別手段と、この位置判別手段により現在位置が非案内対象道路上にあると判別された場合に、上記現在位置から案内対象道路上の地点までの距離及びこの案内対象道路上の地点から上記目的地までの距離の合計距離を算出し、この算出された合計距離に基づいて上記目的地までの経路を設定する再探索手段と、上記現在位置に基づいて上記目的地までの案内を報知するための報知手段とを有し、上記報知手段は、上記再探索手段により算出された現在位置から案内対象道路上の地点までの距離を報知する。
【０００６】
また、請求項３に記載された本発明では、上記再探索手段により算出される現在位置から案内対象道路上の地点までの距離は、現在位置と案内対象道路上の地点とを結ぶ直線距離である。また、請求項４に記載された本発明では、上記再探索手段により算出される現在位置から案内対象道路上の地点までの距離は、現在位置から案内対象道路上の地点に至る実走行距離である。また、請求項５に記載された本発明では、移動手段の進行方向を検出する進行方向検出手段を有し、上記再探索手段は、上記進行方向に探索エリアを設定し、この設定された探索エリア内にある案内対象道路上の地点を探索する。また、請求項６に記載された本発明では、上記探索エリアは、現在位置から所定距離前方を中心とする所定範囲のエリアである。また、請求項７に記載された本発明では、上記探索エリアは、現在位置の進行方向に対して所定角度幅のエリアである。
【０００７】
【発明の実施の形態】
１．実施例の要約
以下に説明する本発明に係る実施例は、移動手段の現在位置を検出する現在位置検出手段（図３のステップ５０）と、目的地を設定するための目的地設定手段（図３のステップ５１）と、この目的地設定手段によって設定された目的地までの案内経路を設定する案内経路設定手段（図３のステップ５２）と、この案内経路設定手段により設定された案内経路及び上記現在位置を表示手段に表示する経路表示制御手段（図３のステップ５３）と、上記現在位置が上記案内経路設定手段により設定された案内経路から外れているか否かを判別する経路外れ判別手段（図１１のステップ１４２）と、この経路外れ判別手段により現在位置が上記案内経路から外れていると判別されたときに、現在位置が案内対象道路上にあるか否かを判別する位置判別手段（図１４のステップ１６２、１６４）と、この位置判別手段により、現在位置が案内対象道路上にないと判別された場合に、現在位置近傍の案内対象道路上の地点から上記目的地設定手段によって設定された目的地までの経路を設定する再探索手段（図１４のステップ１６６〜１７２、ステップ１８２〜１８６）と、この再探索手段により設定された新たな経路と既に設定された案内経路との何れが有利であるか否かを判別する経路判別手段（図１４のステップ１７４、１９４）と、この経路判別手段により新たな経路が有利であると判別されたときに、この新たな経路を新たな案内経路とする案内経路変更手段（図１４のステップ１７８）とを備えたことを特徴とするナビゲーション装置である。
【０００８】
また、  以下に説明する本発明に係る実施例は、移動手段の現在位置を検出する現在位置検出手段（図３のステップ５０）と、目的地を設定するための目的地設定手段（図３のステップ５１）と、この目的地設定手段によって設定された目的地までの案内経路を設定する案内経路設定手段（図３のステップ５２）と、この案内経路設定手段により設定された案内経路及び上記現在位置を表示手段に表示する経路表示制御手段（図３のステップ５３）と、上記現在位置が上記案内経路設定手段により設定された案内経路から外れているか否かを判別する経路外れ判別手段（図１１のステップ１４２）と、この経路外れ判別手段により現在位置が上記案内経路から外れていると判別されたときに、現在位置が案内対象道路上にあるか否かを判別する位置判別手段（図１４のステップ１６２、１６４）と、この位置判別手段により、現在位置が案内対象道路上にないと判別された場合に、現在位置近傍の案内対象道路上の地点から上記目的地設定手段によって設定された目的地までの経路を設定する再探索手段（図１４のステップ１６６〜１７２、ステップ１８２〜１８６）と、この再探索手段により設定された新たな経路と既に設定された案内経路との何れが有利であるか否かを判別する経路判別手段（図１４のステップ１７４、１９４）と、前記現在位置検出手段により検出された現在位置に基づいて案内経路に沿って案内を報知するための報知手段（図３のステップ５３）とを有し、前記再探索手段は、現在位置から案内対象道路上にある案内開始地点までの距離を算出（図１４、１９のステップ１６６、１８２、図２１のステップ２４４）し、前記報知手段は、前記再探索手段により算出された案内開始地点までの距離を報知する（図１１のステップ１５０）ことを特徴とするナビゲーション装置である。
【０００９】
また、以下に示す実施例は、移動手段の現在位置を検出する現在位置検出手段（図３のステップ５０）と、目的地を設定するための目的地設定手段（図３のステップ５１）と、この目的地設定手段によって設定された目的地までの案内経路を設定する案内経路設定手段（図３のステップ５２）と、この案内経路設定手段により設定された案内経路及び上記現在位置を表示手段に表示する経路表示制御手段（図３のステップ５３）と、上記現在位置が上記案内経路設定手段により設定された案内経路から外れているか否かを判別する経路外れ判別手段（図１１のステップ１４２）と、この経路外れ判別手段により現在位置が上記案内経路から外れていると判別されたときに、現在位置が案内対象道路上にあるか否かを判別する位置判別手段（図１４、１９のステップ１６２）と、上記移動手段の進行方向を検出する進行方向検出手段（図１の相対方位センサ２２）と、上記位置判別手段により、現在位置が案内対象道路上にないと判別された場合に、上記進行方向検出手段により検出された上記移動手段の進行方向に探索エリアを設定する探索エリア設定手段（図２０、２１のステップ２２４）と、この探索エリア設定手段により設定された探索エリア内にあって、現在位置近傍の案内対象道路上の地点を探索する地点探索手段（図２０のステップ２２６、図２１のステップ２２４）と、この地点探索手段により探索された地点から上記目的地設定手段によって設定された目的地までの経路を設定する再探索手段（図１４のステップ１６６〜１７２、ステップ１８２〜１８６）とを備えたことを特徴とするナビゲーション装置である。
【００１０】
なお、上記経路外れ判別手段によって判別される案内経路は、上記再探索手段によって再探索された経路であっても良い。
【００１１】
２．全体回路
図１は、ナビゲーション装置の全体回路を示す。中央処理装置１は、ＣＰＵ２によってナビゲーション装置の動作制御や演算を行う。第１ＲＯＭ３には、ＣＰＵ２で実行されるシステムプログラムや、表示制御と音声案内制御に必要なプログラム及び各種パラメータ等が記憶されている。ＲＡＭ４には、外部から入力されたデータ及び演算のために用いられる各種パラメータや演算結果等が記憶される。第２ＲＯＭ５には、ルート案内及び地図表示に必要な表示データが記憶されている。時計６は時間情報を発生する。センサ入力インタフェイス７は、現在位置検出装置２０の絶対方位センサ２１、相対方位センサ２２、距離センサ２３から検出データを受け取り、ＣＰＵ２へ送る。通信インタフェイス８は、データバス２８に接続された装置との間で各種データの送受を行う。
【００１２】
画像プロセッサ９は、画像メモリ１０に記憶されている画像データを読み出して、ＣＲＴや液晶ディスプレイ、プラズマディスプレイ等の画像表示が可能なディスプレイ３３に画像データを出力する。画像メモリ１０は、ディスプレイ３３の画面に表示される画像データを記憶し、画像プロセッサ９との間で画像データの送受を行う。画像プロセッサ９は、ＣＰＵ２からの指令によって後述する目標物や道路等のデータを表示用データに変換して、ディスプレイ３３の画面に表示する画像データを形成する。このとき、画面のスクロールのために、ディスプレイ３３に表示される画面の周囲の画像も形成されて、画像メモリ１０に保存される。第２ＲＯＭ５には、案内音声用の合成または肉声を録音した音声波形データが記憶されており、ＣＰＵ２によって必要とされる音声波形データが読み出され、音声プロセッサ１１へ送られる。音声プロセッサ１１は、入力された音声波形データからアナログ波形の音声波形を形成し、スピーカ１３へ送る。
【００１３】
現在位置検出装置２０は、自車の現在位置を検出するためのデータを得るための装置である。絶対方位センサ２１は、例えば地磁気を検出して絶対方位となる南北方向を示すデータを出力する地磁気センサである。相対方位センサ２２は、絶対方位センサ２１により検出される絶対方位に対する自車の進行方向の偏差を示すデータを出力するものであり、例えば光ファイバジャイロや圧電振動ジャイロ等のジャイロ装置や車輪の操舵角を検出する操舵角センサである。距離センサ２３は、自車の走行距離を示すデータを出力するものであり、例えば走行距離メータに連動したデジタルカウンタである。
【００１４】
ＧＰＳ受信装置２５は、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ  ）の信号を受信して位置データを出力する。ビーコン受信装置２６は、ＧＰＳの補正データやＶＩＣＳ（道路交通情報通信システム）等の情報提供システムからのビーコンを受信して、その受信データを出力する。データ送受信装置２７は、セルラフォーンやＦＭ多重信号、電話回線等を利用した双方向式の現在位置情報提供システムやＡＴＩＳ（交通情報サービス）等との間で現在位置情報の送受信を行う。
【００１５】
入出力装置３０は、出発地、目的地、通過地点等の目的地設定に必要な情報を入力したり、ナビゲーション動作中に案内情報を出力する。ディスプレイ３３の画面上には、透明なタッチパネル３４が設けられている。このタッチパネルは、透明タッチスイッチを平面マトリクス状に配置したものである。プリンタ３５は、通信インタフェイス８を介して出力される地図や施設ガイド等の各種情報を印刷する。情報記憶装置３７は、ナビゲーション動作に必要な、地図データ、交差点データ、ノードデータ、道路データ、写真データ、目的地点データ、案内地点データ、詳細目的地データ、目的地読みデータ、その他のデータとして表示案内データ、音声案内データ等が記憶されたデータベースである。この情報記憶装置は、例えばＩＣメモリ、ＣＤ−ＲＯＭ、ＩＣメモリカード、光ディスク、磁気ディスク等の記録媒体とその読取り装置で構成されている。
【００１６】
３．データ群
図２は、ＲＡＭ４内に記憶されるデータ群の一部を示す。外部データＧＤには、上記情報記憶装置３７に記憶されているデータの全部または一部が複写される。現在位置データＭＰは、現在位置検出装置２０によって検出された自車の現在位置データである。絶対方位データＺＤは、絶対方位センサ２１からのデータに基づいて求められた南北方向を示すデータである。相対方位角データθは、相対方位センサ２２からのデータに基づいて求められた自車の進行方向が絶対方位に対してなす角度である。走行距離データＭＬは、距離センサ２３からのデータに基づいて求められた自車の走行距離である。現在位置情報ＰＩは、ビーコン受信装置２６またはデータ送受信装置２７から入力された現在位置に関するデータである。ＶＩＣＳデータＶＤとＡＴＩＳデータＡＤは、ビーコン受信装置２６またはデータ送受信装置２７から入力されたＶＩＣＳまたはＡＴＩＳのデータである。登録目的地データＴＰは、使用者が登録した目的地の位置や名称等の目的地に関するデータである。案内経路データＭＷは、後述する経路探索処理（ステップ５２）で検索された目的地までの最適な経路または推奨される経路を示すデータである。案内開始地点データＳＰは、経路探索処理（ステップ５２）で決定される、ナビゲーション動作の開始地点の地図上の座標データである。最終案内地点データＥＰは経路探索処理（ステップ５２）で決定される、ナビゲーション動作の終了地点の地図上の座標データである。目的地方向データＭＨは後述する案内・表示処理（ステップ５３）で求められる目的地の方向を示すデータである。交点データＣＰは、案内経路と地図画面の端部との交点の座標データである。
【００１７】
４．全体処理
図３は、ＣＰＵ２によって実行される全体処理のフローチャートである。この処理は、電源投入によってスタートし、電源オフによって終了する。スタート時にはＣＰＵ２、ＲＡＭ４、画像メモリ９等のイニシャライズ処理が行われる。そして、現在位置取得処理（ステップ５０）、目的地設定処理（ステップ５１）、経路探索処理（ステップ５２）、案内・表示処理（ステップ５３）が繰り返し実行される。
【００１８】
現在位置取得処理（ステップ５０）では、上記現在位置検出装置２０から送られたデータに基づいて自車の現在位置が演算される。この現在位置の演算処理では、ＧＰＳ受信装置２５から入力されたデータから緯度及び経度が算出されて、この緯度及び経度は現在位置データＭＰとしてＲＡＭ４に記憶される。この現在位置データＭＰは、ビーコン受信装置２６またはデータ送受信装置２７から入力された現在位置に関する情報によって修正される。
【００１９】
また、絶対方位データＺＤと、相対方位角データθと、走行距離データＭＬとに基づいて、自車位置を特定する演算処理が行われる。この演算処理によって求められた自車位置は、外部データＧＤ内の地図データと照合され、地図画面上の現在位置が正確に表示されるように補正が行われる。この補正処理によって、トンネル内等のＧＰＳ信号が受信できないときでも自車の現在位置を正確に求めることができる。
【００２０】
目的地設定処理（ステップ５１）では、目的地の設定操作処理が実行される。目的地の設定操作処理では、使用者による目的地設定モードを選択する操作により、目的地設定入力画面がディスプレイ３３に表示される。使用者は、地域、住所、電話番号、名称等の検索項目の何れかから目的地を特定することができる。なお、例えば、さらに観光地、各種施設等のジャンル別メニューから１つのジャンルを選択すると、選択されたジャンルに記憶されている複数の目的地がリストの形でディスプレイ３３に表示されるようにしても良い。さらに、各目的地の詳細な案内を表示させることもできる。目的地が決まったら、使用者が目的地の確定を指示する操作を行うことにより、確定した目的地に関するデータが登録目的地データＴＰとしてＲＡＭ４に記憶される。なお、この目的地設定処理（ステップ５１）は、新たな目的地設定操作が行われない場合にはジャンプされる。
【００２１】
経路探索処理（ステップ５２）では、登録目的地データＴＰと、現在位置データＭＰと、道路データとに基づいて、目的地までの案内経路が探索される。そして、この案内経路を構成する道路の道路ナンバデータが出発地から目的地までの道順に従って並べられ、この並べられた道路ナンバデータが案内経路データＭＷとしてＲＡＭ４に記憶される。例えば、図４に示すように、出発地から目的地まで行く場合には、目的地設定処理（ステップ５１）において、使用者が目的地を入力することによって、現在位置が出発地とされ、入力された目的地が登録目的地とされる。そして、この出発地から目的地までに至る最適な経路または推奨される経路（図中太線で示す）が自動的に探索される。この案内経路は、交差点Ｋ１〜Ｋ７に挟まれた道路の中から、出発地から順次連続する道路を選択して、最短距離で、幹線道路を多く使用して、円滑に目的地まで到達できるような経路である。そして、この案内経路を構成する道路ナンバデータが案内経路データＭＷとしてＲＡＭ４に記憶される。図４に示される場合には、案内経路データＭＷには、道路ナンバデータ１、３、７、１１、１４が、この順番に並べられてＲＡＭ４に記憶される。ここで、案内経路として選択される道路は、案内対象道路に限られ、非案内対象道路は除かれる。
【００２２】
また、次の案内・表示処理（ステップ５３）の処理中に、現在位置が案内経路から外れた場合には、所定のスイッチ操作または音声入力に応答して、或いは自動的に、経路探索処理（ステップ５２）が実行されて、案内経路の再設定が行われる。なお、この経路探索処理（ステップ５２）は、案内経路に変更がなければジャンプされる。
【００２３】
案内・表示処理（ステップ５３）では、上記経路検索処理（ステップ５２）で求められた案内経路が、ディスプレイ３３に表示された地図画面中に赤、青、その他目立つ色の太線で表示される。また、現在位置を示す現在位置マークと現在位置に対する目的地の方向を示す目的地方向マークが表示される。そして、この案内経路に従って自車が走行できるように、案内がスピーカ１３から音声によって発音されたり、案内が地図画面中に表示される。地図画面には、少なくとも案内経路と現在位置マークと目的地方向マーク、または目的地の位置表示、若しくは目的地までの距離、或いは案内経路上の交差点までの距離とが表示され、他の道路、建物、施設、地名等の地理的情報は表示されないようにしても良い。このように表示することにより、経路の視認性が向上し、運転者は経路案内情報を容易に確認することができる。なお、案内経路の表示は、デフォルメされた表示であっても良く、例えば、現在位置から前方にあり、案内経路上にあって案内が行われる交差点において進む方向を表示するようにしても良い。この場合、現在位置から表示された交差点までの距離を表示しても良い。また、目的地までの距離は、例えば、現在位置が案内経路上であれば、現在位置から目的地までの案内経路上の走行距離を目的地までの距離とし、現在位置が案内経路から外れたときには、現在位置から目的地までの直線距離を目的地までの距離とするようにしても良い。
【００２４】
このように、必要最小限の情報のみをディスプレイ３３に表示することにより、自車の進む方向が一目で確認できる。なお、交差点等の予め決められた案内地点に自車が近付いたときには、案内地点付近の拡大地図が表示され、案内表示が行われるとともに、音声による案内が発音される。また、現在位置は自車の進行に応じて修正され、現在位置の移動に伴って地図画面が自動的にスクロールされる。
【００２５】
５．道路データ
図５は、上記情報記憶装置３７に記憶されている道路データファイルの中の道路データの一部を示す。この道路データファイルには、地図データファイルに記憶されている地域の範囲内に存在する一定幅以上の道路の全てに関する情報が含まれている。この道路データファイルに含まれる道路数をｎとすれば、ｎ本の道路に関する各道路の道路データが含まれており、各道路データは、道路ナンバデータ、案内対象フラグ、道路属性データ、形状データ、案内データ、長さデータから構成されている。道路ナンバデータは、地図データに含まれる道路の全てを分断して、分断された道路毎に付した識別番号である。案内対象フラグには案内対象道路であれば“１”、非案内対象道路であれば“０”が記憶されている。なお、案内対象道路は主幹道路や一般道路等の所定幅以上の道路であり、非案内対象道路はあぜ道や路地等の所定幅以下の狭い道路である。道路属性データは、高架道路、地下道、高速道路、有料道路等の属性を示すデータである。形状データは、道路の形状を示すデータであり、道路の始点、終点、及び始点から終点までの間のノードの座標データを記憶したものである。例えば、図４に示す場合には、道路ナンバが１、４、１４の道路にノードが設けられ、各ノードにノードナンバＮ１〜Ｎ４が付されている。そして、これらのノードナンバＮ１  〜Ｎ４の座標データが、始点、終点の座標データと共に形状データとして記憶されている。
【００２６】
案内データは、交差点名称データ、注意点データ、道路名称データ、道路名称音声データ、行き先データから構成されている。交差点名称データは、道路の終点が交差点である場合に、その交差点の名称を表すデータである。注意点データは、踏切、トンネル入口、トンネル出口、幅員減少点等の道路上の注意点に関するデータである。道路名称音声データは、音声案内に使用される道路名称を表す音声データである。
【００２７】
行き先データは、道路の終点に連続する道路（これを、行き先とする）に関するデータであり、行き先数ｋと、行き先毎のデータから構成されている。行き先に関するデータは、行き先の道路ナンバを示す行き先道路ナンバデータ、行き先の道路名称を示す行き先名称データ、行き先の道路名称を音声案内するための行き先名称音声データ、行き先の道路が向いている方向を示す行き先方向データ、行き先の道路に入るために右車線に寄ったり、左車線に寄ったり、中央を走行したりすることを案内するための走行案内データから構成されている。長さデータは、道路の始点から終点までの長さと、始点から各ノードまでの長さ、及び各ノードの間の長さのデータである。
【００２８】
６．経路探索処理
図６は上記経路探索処理（ステップ５２）のフローチャートを示す。先ず、再探索か否かが判別される（ステップ６０）。これは、ＲＡＭ４に記憶されている再探索フラグＳＦによって判別される。この再探索フラグＳＦは、図１１に示す案内・表示処理（ステップ５３）で、現在位置が案内経路から外れたときにオンにセットされる（ステップ１４４）。また、再探索処理（ステップ７２）が終了したときには、再探索フラグＳＦはオフにリセットされる（ステップ７４）。
【００２９】
ここで、再探索フラグＳＦがオフの場合には、再探索は要求されていないので、次に経路設定が要求されているか否かが判別される（ステップ６２）。これは、経路設定フラグＫＦがオンであるか否かの判別である。この経路設定フラグＫＦは、目的地設定処理（ステップ５１）で、使用者によって目的地が登録されたときにオンにセットされ、案内経路データＭＷがＲＡＭ４に記憶された時（ステップ７０）にオフにリセットされる。
【００３０】
この経路設定フラグＫＦがオンのときには、新規に案内経路を探索する処理が行われる（ステップ６４〜７０）。ステップ６４では、目的地までの経路の案内が開始される地点となる案内開始地点が決定される。またステップ６６では、経路の案内が終了する地点となる最終案内地点が決定される。そして、この案内開始地点から最終案内地点までの経路が探索される（ステップ６８）。探索された経路は、案内経路データＭＷとしてＲＡＭ４に記憶される（ステップ７０）。
【００３１】
案内経路の探索（ステップ６８）では、前述したように、案内開始地点がある道路に連続する道路が順次選択されて、最終案内地点までの道順に従って道路ナンバデータが並べられる。例えば、案内開始地点がある道路の道路ナンバが、案内経路データＭＷの先頭アドレスに記憶され、次にこの道路データの中の行き先データに基づいて、この道路に連続する道路データが読み出される。そして、この読み出された道路データの中から最適な道路が選択される。この選択の条件は種々あるが、例えば、道路属性データに基づく優先順位に従って選択される。この選択された道路の道路ナンバが次のアドレスに記憶される。そして、連続する道路の選択が、最終案内地点に到達するまで行われる。
【００３２】
また、案内経路の全体が探索されたとき、選択された道路の長さデータが順次合計されることにより、案内経路全体の長さが求められる。また、最終案内地点に近い道路から順に案内経路全体の長さから各始点、終点、ノードの長さデータが引かれることにより、各始点、終点、ノードにおける最終案内地点までの距離が求められ、各始点、終点、ノードの座標データに対応させて記憶される。また、案内経路として選択される道路は、案内対象道路に限られており、前述したように、案内対象道路か否かは案内対象フラグによって判別される。
【００３３】
なお、案内経路を探索する場合に交通規制の情報を選択の条件に加えても良いし、単純に、目的地までの最短距離の経路を検索しても良い。さらに、推奨される経路を複数求めて、使用者にこれらの推奨経路の中から選択させるようにしても良い。
【００３４】
７．案内開始地点決定処理
図７は、経路探索処理（ステップ５２）内において実行される案内開始地点決定処理（ステップ６４）のフローチャートを示す。前述したように、案内経路は案内対象道路で構成されるので、非案内対象道路または道路データに記憶されていない地点が現在位置の場合には、現在位置から最短距離にある案内対象道路上の地点が案内開始地点とされる。
【００３５】
まず、ＣＰＵ２に現在位置データＭＰが読み込まれ（ステップ８０）、現在位置が案内対象道路の上であるか否かが判別される（ステップ８２）。例えば、現在位置データＭＰの座標上に道路データが存在しており、この道路データの中の案内対象フラグが“１”であるときに案内対象道路であると判別される。現在位置が案内対象道路上であれば、この現在位置データＭＰが案内開始地点データＳＰとしてＲＡＭ４に記憶される（ステップ１００）。例えば、図８に示す現在位置ＭＰ１のように、案内対象道路ＡＤ１上にある場合には、この現在位置ＭＰ１が案内開始地点とされる。
【００３６】
また、現在位置が案内対象道路上にないときには、次に、現在位置が非案内対象道路上であるか否かが判別される（ステップ８４）。例えば、現在位置データＭＰの座標上に道路データが存在しており、この道路データの中の案内対象フラグが“０”であるときに非案内対象道路であると判別される。ここで、現在位置が道路データ上に無い場合には、現在位置が案内対象道路上にも非案内対象道路上にも無く、現在位置が施設の敷地内または駐車場や空き地内などの非道路上にあることになる。
【００３７】
この場合には、現在位置から所定距離範囲内に存在する案内対象道路の始点データ及びノードデータが読み出される（ステップ８６）。そして、読み出された始点データ及びノードデータのそれぞれと、現在位置との距離が計算される（ステップ８８）。このステップ８８で求められた距離の長短が比較されることにより、現在位置から最短距離にある始点またはノード（これを、最短地点とする）が求められる（ステップ９０）。なお、最短地点が複数ある場合には、登録目的地ＴＰに最も近いものが選ばれる。この場合、例えば、各最短地点からの各案内経路の道路データの合計数の最も少ないものが選ばれる。そして、この最短地点の座標が案内開始地点データＳＰとしてＲＡＭ４に記憶される（ステップ９２）。
【００３８】
例えば、図８に示される現在位置ＭＰ３のように、非道路上である場合には、現在位置ＭＰ３から所定距離の範囲内にある案内対象道路ＡＤ１、ＡＤ２上のノードＮＤ１、ＮＤ４、ＮＤ８、ＮＤａ、ＮＤｂの座標が求められる（ステップ８６）。そして、現在位置ＭＰ３の座標と各ノードＮＤ１、ＮＤ４、ＮＤ８、ＮＤａ、ＮＤｂの座標との差に基づいて、現在位置ＭＰ３から各ノードＮＤ１、ＮＤ４、ＮＤ８、ＮＤａ、ＮＤｂまでの直線距離が求められ（ステップ８８）、最短距離にあるノードＮＤ８が求められ（ステップ９０）、このノードＮＤ８が案内開始地点とされる（ステップ９２）。現在位置ＭＰ３が非道路上であるから、自車の進行方向に無関係に最短距離にあるノードＮＤ８を案内開始地点としても良いし、自車の進行方向とは逆方向にあるノードＮＤ１、ＮＤａは案内開始地点の候補から除外しても良い。また、目的地方向とは逆方向にあるノードＮＤｂを案内開始地点の候補から除外しても良い。
【００３９】
他方、上記ステップ８４で現在位置が非案内対象道路上であると判別されたときには、この非案内対象道路の道路データが読み出され、現在位置からこの現在位置がある非案内対象道路と案内対象道路との交点までに至る経路の長さが求められる（ステップ９４）。現在位置が存在する非案内対象道路から案内対象道路に到達するまでに、複数の経路が存在する場合には、それぞれの経路の長さが求められる。現在位置から案内対象道路までの長さは、現在位置から案内対象道路までに存在する非案内対象道路の道路データの中の現在位置から終点までの長さデータまたは始点から終点までの長さデータを読み出して合計して求める。さらに、求められた各経路の長さが大小比較され、この中から最短のものが求められる（ステップ９６）。そして、この最短の経路と案内対象道路との交点の座標が案内開始地点データＳＰとしてＲＡＭ４に記憶される（ステップ９８）。
【００４０】
例えば、図８に示される現在位置ＭＰ２のように、非案内対象道路ＮＡ２上にある場合には、この現在位置ＭＰ２から非案内対象道路ＮＡ１〜ＮＡ６と案内対象道路ＡＤ１、ＡＤ２との交点ＮＤ１〜ＮＤ５までに至る経路の長さが求められる（ステップ９４）。図８においては、非案内対象道路ＮＡ１〜ＮＡ６と案内対象道路ＡＤ１、ＡＤ２との交点が案内対象道路ＡＤ１、ＡＤ２のノードＮＤ１〜ＮＤ５に一致しているが、非案内対象道路と案内対象道路との交点が案内対象道路のノードに一致しない場合もある。
【００４１】
図８の場合には、先ず、現在位置ＭＰ２の座標とノードＮＤ６の座標の差に基づいて、現在位置ＭＰ２からノードＮＤ６までの長さＮＬａが求められる。そして、非案内対象道路の長さＮＡ１と距離ＮＬａを合計した長さが、現在位置ＭＰ２から非案内対象道路ＮＡ１と案内対象道路ＡＤ２との交点ＮＤ４までの経路の長さである。同様にして、距離ＮＬａと非案内対象道路ＮＡ３〜ＮＡ６の長さを合計することにより、現在位置ＭＰ２から交点ＮＤ２、ＮＤ３、ＮＤ５までの経路の長さが求められる。ここで、交点ＮＤ１は自車の進行方向とは逆方向にあるので、案内開始地点の候補から除外される。そして、現在位置ＭＰ２から最短距離にある交点ＮＤ４が案内開始地点とされる（ステップ９８）。
【００４２】
なお、現在位置が非道路上である場合には、次のようにして案内開始地点を決定しても良い。例えば、図８に示すように、非道路上にある現在位置ＭＰ３から所定距離の範囲にある案内対象道路ＡＤ１、ＡＤ２上のノードＮＤ１、ＮＤ４、ＮＤ８、ＮＤａ、ＮＤｂの座標を求め（ステップ８６）、これらの座標と現在位置の座標とから、現在位置ＭＰ３から案内対象道路ＡＤ１、ＡＤ２に下ろした垂線Ｖ１、Ｖ２の長さ、及び垂線Ｖ１、Ｖ２と案内対象道路ＡＤ１、ＡＤ２との交点ＶＰ１、ＶＰ２の座標を求める。そして、垂線Ｖ１、Ｖ２の短い方が選択され、この垂線Ｖ２と案内対象道路ＡＤ２との交点ＶＰ１が案内開始地点とされる。この場合には、上記最短地点を案内開始地点とする場合よりも、さらに現在位置に近い地点を案内開始地点とすることができる。以上のような案内開始地点の決定は、各案内開始地点までの各経路の車幅、自車の進行方向等によって重み付けが行われて、対比決定されても良い。
【００４３】
８．最終案内地点決定処理
図９は、経路探索処理（ステップ５２）内において実行される最終案内地点決定処理（ステップ６６）のフローチャートを示す。上述のように、案内経路は案内対象道路で構成される。従って、目的地が、非案内対象道路または道路データに記憶されていない地点にある場合には、目的地から最短距離にある案内対象道路上の地点が最終案内地点とされる。
【００４４】
まず、ＣＰＵ２に登録目的地の座標データＴＰが読み込まれ（ステップ１０２）、登録目的地が案内対象道路の上であるか否かが判別される（ステップ１０４）。例えば、登録目的地データＴＰの座標上に道路データが存在しており、この道路データの中の案内対象フラグが“１”であるときに案内対象道路であると判別される。登録目的地が案内対象道路上であれば、この登録目的地データＴＰが最終案内地点データＥＰとしてＲＡＭ４に記憶される（ステップ１２２）。
【００４５】
また、登録目的地が案内対象道路上にないときには、次に、登録目的地が非案内対象道路上であるか否かが判別される（ステップ１０６）。例えば、登録目的地データＴＰの座標上に道路データが存在しており、この道路データの中の案内対象フラグが“０”であるときに非案内対象道路であると判別される。ここで、登録目的地置が道路データ上に無い場合には、登録目的地が案内対象道路上にも非案内対象道路上にも無いから、登録目的地は非道路上にあることになる。
【００４６】
この場合には、登録目的地から所定距離範囲内に存在する案内対象道路の終点データ及びノードデータが読み出される（ステップ１０８）。そして、読み出された終点データ及びノードデータのそれぞれと、登録目的地との距離が計算される（ステップ１１０）。このステップ１１０で求められた距離の長短が比較されることにより、登録目的地から最短距離にある終点またはノード（これを、最短終点とする）が求められる（ステップ１１２）。なお、最短終点が複数ある場合には、登録目的地ＴＰに最も近いものが選ばれる。この場合、例えば、各最短終点からの各案内経路の道路データの合計数の最も少ないものが選ばれる。そして、この最短終点の座標が最終案内地点データＥＰとしてＲＡＭ４に記憶される（ステップ１１４）。
【００４７】
上記ステップ１０６で登録目的地が非案内対象道路上であると判別されたときには、この非案内対象道路の道路データが読み出され、登録目的地からこの登録目的地がある非案内対象道路と案内対象道路との交点までの経路の長さが求められる（ステップ１１６）。登録目的地が存在する非案内対象道路から案内対象道路に到達するまでに、複数の経路が存在する場合には、それぞれの経路の長さが求められる。登録目的地から案内対象道路までの長さは、登録目的地から案内対象道路までに存在する非案内対象道路の道路データまでの登録目的地から終点までの長さデータまたは始点から終点までの長さデータを読み出して合計して求める。さらに、求められた各経路の長さが大小比較され、この中から最短のものが求められる（ステップ１１８）。そして、この最短の経路と案内対象道路との交点の座標が最終案内地点データＥＰとしてＲＡＭ４に記憶される（ステップ１２０）。
【００４８】
例えば、図１０に示すように、登録目的地ＴＰ１が案内対象道路ＡＤ２上にある場合には、この登録目的地ＴＰ１が最終案内地点とされる（ステップ１２２）。また、登録目的地ＴＰ２が非案内対象道路ＮＡ６上にある場合には、この登録目的地ＴＰ２から非案内対象道路ＮＡ１〜ＮＡ６と案内対象道路ＡＤ１、ＡＤ２との交点ＮＤ１〜ＮＤ５までに至る経路の長さが求められる（ステップ１１６）。図１０においては、非案内対象道路ＮＡ１〜ＮＡ６と案内対象道路ＡＤ１、ＡＤ２との交点が、案内対象道路ＡＤ１、ＡＤ２のノードＮＤ１〜ＮＤ５に一致しているが、非案内対象道路と案内対象道路との交点が案内対象道路のノードに一致しない場合もある。
【００４９】
図１０の場合には、先ず、登録目的地ＴＰ２の座標とノードＮＤ７の座標の差に基づいて、登録目的地ＴＰ２からノードＮＤ７までの長さＮＬｂが求められる。そして、非案内対象道路ＮＡ５の長さと長さＮＬｂを合計した長さが登録目的地ＴＰ２から非案内対象道路ＮＡ５と案内対象道路ＡＤ１との交点ＮＤ２までの経路の長さである。同様にして、長さＮＬｂと非案内対象道路ＮＡ１〜ＮＡ４の長さを合計することにより、登録目的地ＴＰ２から交点ＮＤ１、ＮＤ４、ＮＤ５までの距離が求められる。さらに、非案内対象道路ＮＡ６の長さから長さＮＬｂを引くことにより、登録目的地ＴＰ２からノードＮＤ３までの経路の長さが求められる。そして、登録目的地ＴＰ２から最短距離にある交点ＮＤ３が最終案内地点とされる（ステップ１２０）。
【００５０】
さらに、登録目的地ＴＰ３が非道路上である場合には、登録目的地ＴＰ３から所定距離の範囲内にある案内対象道路ＡＤ１、ＡＤ２上のノードＮＤ３、ＮＤ５、ＮＤｃ、ＮＤｄの座標が求められる（ステップ１０８）。そして、登録目的地ＴＰ３の座標と各ノードＮＤ３、ＮＤ５、ＮＤｃ、ＮＤｄの座標との差に基づいて、登録目的地ＴＰ３から各ノードＮＤ３、ＮＤ５、ＮＤｃ、ＮＤｄまでの直線距離が求められ（ステップ１１０）、最短距離にあるノードＮＤ３が最終案内地点とされる（ステップ１１４）。
【００５１】
なお、登録目的地が非道路上である場合には、上記案内開始地点の場合と同様に、登録目的地ＴＰ３から案内対象道路ＡＤ１、ＡＤ２へ下ろした垂線Ｖ３、Ｖ４の長さと、交点ＶＰ３、ＶＰ４の座標を求めて、短い方の垂線Ｖ３の交点ＶＰ３を最終案内地点としても良い。以上のような最終案内地点の決定は、各最終案内開始地点までの各経路の車幅、自車の進行方向等によって重み付けが行われて対比決定されても良い。
【００５２】
９．案内・表示処理
図１１は、案内・表示処理（ステップ５３）のフローチャートを示す。この処理が開始されると、先ず、ＣＰＵ２によってＲＡＭ４から現在位置データＭＰが読み込まれる（ステップ１３０）。さらに、ＲＡＭ４から地図データ及び案内経路データＭＷが読み込まれる（ステップ１３２、１３４）。そして、現在位置を含む地図画面データが作成される（ステップ１３６）。この地図画面データは、現在位置がディスプレイ３３に表示される地図画面の中心となるように、地図データの中から選択されたデータであり、画像プロセッサ９へ送られる。また、自車の進行方向が常に地図画面の上方向に向くように表示方向データが発生され、画像プロセッサ９において、この表示方向データに応じて地図画面データが回転される。なお、自車の前方の上方を多く表示するフロントワイドモードが指定された場合には、現在位置の前方の表示面積を広くするため、現在位置が地図画面の中心より少し下方になるよに、地図データが作成される。
【００５３】
そして、現在位置ＭＰに対する登録目的地ＴＰの方向が求められる（ステップ１３８）。例えば、登録目的地ＴＰの座標と現在位置ＭＰの座標とを結ぶ直線の傾き角θｍを計算することによって登録目的地ＴＰの方向が求められる。傾き角θｍを求める基準は、南北方向または東西方向であっても良いし、ディスプレイ３３に表示される画像の座標系における座標軸であっても良い。求められた傾き角θｍは、目的地方向データＭＨとしてＲＡＭ４に記憶される。
【００５４】
次に、ディスプレイ３３に表示されるデータが画像プロセッサ９へ送られることにより、ディスプレイ３３に案内経路、現在位置及び目的地方向マークのみが表示される（ステップ１４０）。例えば、図１２に示すように、ディスプレイ３３に表示された地図画面Ｈ１の中心より少し下方に現在位置マークＨ２が表示される。地図画面Ｈ１は自車の進行方向が真上方向となるように表示される。さらに、地図画面Ｈ１には案内経路Ｈ３が表示される。目的地方向マークは、登録目的地ＴＰの方向が分かり易いマークであれば良く、例えば、登録目的地ＴＰと現在位置マークＨ２とを結ぶ直線Ｈ４、或いは登録目的地ＴＰの方向を示す矢印Ｈ５である。直線Ｈ４及び矢印Ｈ５は、赤色等の目立つ色で表示したり、実線の他に、細線、鎖線で表示しても良いし、点滅させても良い。矢印Ｈ５は、現在位置マークＨ２の近傍に表示しても良いし、現在位置マークＨ２から離れた所定位置に表示しても良い。矢印Ｈ５は直線Ｈ４上、または直線Ｈ４付近のどこへ表示しても良く、地図画面の端の方へ表示しても良い。
【００５５】
また、案内経路Ｈ３の端に目的地の方向、または案内経路Ｈ３の端における進行方向を示すマークＨ６を表示しても良い。この方向マークＨ６は、案内経路Ｈ３と地図画面Ｈ１の端との交点ＣＰ上に表示される。例えば、上記案内経路データＭＷを構成する道路の中から、画像プロセッサ９によってディスプレイ３３に表示されている座標の範囲内に含まれる道路データが読み出される。そして、この道路データの中から、登録目的地ＴＰに最も近い道路が求められる。上述のように、案内経路データＭＷには、案内開始地点から最終案内地点までの間を結ぶ道路ナンバデータが順番に並べられて記憶されている。従って、この順番（アドレスナンバ）が最も大きい道路ナンバが登録目的地に最も近い道路である。さらにこの道路の形状データの中から、ディスプレイ３３に表示されている座標範囲内のものが読み出される。そして、この形状データの中で、最も順番（アドレスナンバ）が大きい形状データＮＤ１が選択される。さらに、この形状データＮＤ１と、この次のアドレスナンバの形状データＮＤ２とを結ぶ直線がディスプレイ３３の画面端部と交差する点の座標データが求められる。この求められた座標データは、交点データＣＰとしてＲＡＭ４に記憶される。
【００５６】
そして、第２ＲＯＭ５には、方向マークＨ６に用いられる矢印のキャラクタパターンデータが記憶されており、上記登録目的地の方向または案内経路の端における進行方向を示す矢印となるように回転される。このキャラクタパターンデータは画像プロセッサ９へ送られて、画像データに組み込まれることによって、方向マークＨ６が案内経路Ｈ３の端に表示される。このとき、矢印の先端が交点データＣＰの座標に一致するように、方向マークＨ６の表示位置が決められる。
【００５７】
地図画面Ｈ１には、現在位置マークＨ２、案内経路Ｈ３、目的地方向マークＨ４〜Ｈ６のみが表示され、これら以外の地理的情報は表示されない。このように、ディスプレイ３３に必要最低限の情報を表示することによって、運転者は、他の地理的情報に注意を引かれることがなく、短時間で進路を確認することができる。なお、案内経路Ｈ３の現在位置マークＨ２の後方部分ＰＳＳは、自車が通過した経路であるから、消去しても良いし、表示の色を変更したり、細線や破線などで表示しても良い。また、登録目的地ＴＰが地図画面Ｈ１内に入ったときには、登録目的地ＴＰの座標に登録目的地を表示する目的地マークが表示される。このとき、上記方向マークＨ４〜Ｈ６は消去されても良いし、表示されていても良い。
【００５８】
次に、現在位置が案内経路上であるか否かが判別される（ステップ１４２）。例えば、現在位置データＭＰの座標が案内経路データＭＷを構成する道路の道路データの座標に一致している場合には、案内経路上に現在位置が存在し、不一致の場合には、現在位置が案内経路から外れていると判別される。ここで、現在位置が案内経路から外れていると判別されたときには、再検索フラグＳＦがオンに設定される（ステップ１４４）。これにより、次に経路探索処理（ステップ５２）が実行されるときには、再探索処理（ステップ７２）が実行される。例えば図１３に示すように、現在位置マークＨ２が案内経路Ｈ３から外れた位置に表示される。地図画面Ｈ１には、現在位置マークＨ２と案内経路Ｈ３と方向マークＨ４〜Ｈ６または目的地マークのみが表示されているため、現在位置マークＨ２が案内経路Ｈ３から外れると、現在位置から案内経路Ｈ３へ至る経路が分からない。そこで、新たな案内経路を再探索して地図画面Ｈ１に表示することにより、運転者が道に迷わないように目的地まで案内する。
【００５９】
次に、現在位置がノード等の予め決められた案内地点に近付いたときには（ステップ１４６）、案内地点付近の拡大地図が表示され、案内表示が行われるとともに音声による案内が発音される（ステップ１４８）。これは、案内地点データファイルからＣＰＵ２によって読み出された案内地点の座標データ、案内表示画像データ、案内音声データ等に基づいて行われる。
【００６０】
その他の処理（ステップ１５０）では、再探索処理（ステップ７２）が実行されたときに、再探索された案内経路の案内開始地点と現在位置との距離が、音声またはディスプレイ３３の表示により報知される。この距離は、再探索処理内で計算される（図１４、１９のステップ１６６、１８２、図２１のステップ２４４）。その他に、例えば、地図画面Ｈ１の縮尺を変更する処理、現在位置の移動に伴って地図画面を自動的にスクロールさせる処理、使用者の要求に応じて案内情報を表示する処理等が行われる。
【００６１】
１０．再探索処理
図１４は、経路探索処理（ステップ５２）内において実行される再探索処理（ステップ７２）のフローチャートを示す。この処理は、既に決定された案内経路から現在位置が外れた場合に開始されるのであるから、最終案内地点は変更されない。従って、再探索処理では、新たに案内開始地点が決定されて、この新しい案内開始地点から最終案内地点までの経路が新たに探索される。
【００６２】
先ず、ＣＰＵ２によってＲＡＭ４から現在位置データＭＰが読み込まれる（ステップ１６０）。そして、現在位置が案内対象道路の上であるか否かが判別される（ステップ１６２）。例えば、現在位置データＭＰの座標上に道路データが存在しており、この道路データの中の案内対象フラグが“１”であるときに案内対象道路であると判別される。現在位置が案内対象道路上であれば、この現在位置が新たな案内開始地点となるから、この現在位置から最終案内地点までの経路が探索される（ステップ１８０）。例えば、図１５に示すように、案内対象道路ＡＤ１が案内経路ＭＷであり、現在位置ＭＰ４が案内対象道路ＡＤ２上にある場合には、この現在位置ＭＰ４が案内開始地点とされ、この現在位置ＭＰ４から最終案内地点ＥＰまでの経路が探索される。この経路の探索は、図６に示した案内経路探索処理（ステップ６８）と同じ処理によって行われる。そして、ＲＡＭ４に記憶されている案内経路データＭＷが消去され、ステップ１８０で検索された新たな案内経路データＭＷがＲＡＭ４に記憶される（ステップ１７８）。再探索処理が開始される前にＲＡＭ４に記憶されている案内経路データＭＷは、目的地設定処理（ステップ５１）によって登録目的地ＴＰが設定された直後に設定された案内経路のデータの場合と、この再探索処理（ステップ７２）で再探索された案内経路データの場合があり、これは、以下の説明でも同じである。
【００６３】
新たな案内経路データＭＷがＲＡＭ４に記憶されると、再探索処理（ステップ７２）は終了し、再探索フラグＳＦがオフにリセットされる（図６のステップ７４）。そして、次に案内・表示処理（ステップ５３）が実行されることにより、新たな案内経路が地図画面Ｈ１に表示される。例えば、図１２に示される案内経路Ｈ３が新たな案内経路となった案内対象道路ＡＤ２であり、ＲＡＭ４に記憶されていた案内経路であった案内対象道路ＡＤ１は表示されない。但し、現在位置ＭＰ４が案内開始地点となるから、新たな案内経路が表示された直後には、現在位置ＭＰ４の後方部分ＰＳＳは表示されない。
【００６４】
他方、現在位置が案内対象道路上にないときには、次に、現在位置が非案内対象道路上であるか否かが判別される（ステップ１６４）。例えば、現在位置データＭＰの座標上に道路データが存在しており、この道路データの中の案内対象フラグが“０”であるときに非案内対象道路であると判別される。ここで、現在位置が非案内対象道路上であると判別されたときには、この非案内対象道路の道路データが読み出され、現在位置からこの現在位置がある非案内対象道路を経由して非案内対象道路と案内対象道路との交点までに至る経路の長さが求められる（ステップ１６６）。現在位置が存在する非案内対象道路から案内対象道路に到達するまでに、複数の経路が存在する場合には、それぞれの経路の長さが求められる。現在位置から案内対象道路までの経路の長さは、現在位置から案内対象道路までに存在する非案内対象道路の道路データの中の現在位置から終点までの長さデータまたは始点から終点までの長さデータを読み出して合計して求める。さらに、求められた各交点から最終案内地点ＥＰまでの経路が探索される（ステップ１６８）。この経路の探索は、図６に示した案内経路探索処理（ステップ６８）と同じ処理によって行われ、上記各交点が案内開始地点とされる。
【００６５】
さらに、求められた各経路の全体の距離Ｌｎ（ｎ＝１〜ｎ）が計算される。この距離Ｌｎは、上記ステップ１６６で求められた距離と、上記交点から最終案内地点ＥＰに至る経路の長さとの合計値である。そして、各距離Ｌｎが大小比較され、この中から最短距離のものが求められる（ステップ１７２）。
【００６６】
次に、上記ステップ１７２で求められた最短距離の経路がＲＡＭ４に記憶されている案内経路であるか否かが判別される（ステップ１７４）。ここで、ステップ１７２で求められた経路がＲＡＭ４に記憶されている案内経路であれば、案内経路を変更する必要はないから、案内経路データＭＷは保存される（ステップ１７６）。他方、ステップ１７２で求められた経路がＲＡＭ４に記憶されている案内経路でない場合には、新たに求められた経路の方がＲＡＭ４に記憶されている案内経路よりも短いので、ＲＡＭ４に記憶されている案内経路データＭＷが消去され、この新たに求められた経路を構成する道路データが新たな案内経路データＭＷとしてＲＡＭ４に記憶される（ステップ１７８）。再探索処理（ステップ７２）が終了すると、再探索フラグＳＦがオフにリセットされる（図６のステップ７４）。そして、次に案内・表示処理（ステップ５３）が実行されることにより、再探索された案内経路が地図画面Ｈ１に表示される。
【００６７】
例えば、図１５に示される現在位置ＭＰ５のように、現在位置が非案内対象道路ＮＡ２上にある場合には、この現在位置ＭＰ５から非案内対象道路ＮＡ１〜ＮＡ６と案内対象道路ＡＤ１、ＡＤ２との交点ＮＤ１〜ＮＤ５までに至る経路の距離が求められる（ステップ１６６）。これは、前記案内開始地点決定処理（ステップ６４）のステップ８８の処理と同じである。図１５においては、非案内対象道路ＮＡ１〜ＮＡ６と案内対象道路ＡＤ１、ＡＤ２との交点が、案内対象道路ＡＤ１、ＡＤ２のノードＮＤ１〜ＮＤ５に一致しているが、非案内対象道路と案内対象道路との交点が案内対象道路のノードに一致しない場合もある。
【００６８】
そして、各交点ＮＤ１〜ＮＤ５から最終案内地点ＥＰまでの経路が探索され、各経路の距離Ｌｎが計算され（ステップ１７０）、最短のものが選択される（ステップ１７２）。図１５を見た場合には、現在位置ＭＰ５から最も近いノードＮＤ４から開始される経路が最短距離と考えられるが、最終案内地点までの経路全体の距離を比較するため、ノードＮＤ４以外の地点が案内開始地点となる場合もある。ここで、最短距離の経路がノードＮＤ３を案内開始地点とする経路であったとすると、案内・表示処理（ステップ５３）で表示される地が画面Ｈ１には、図１６に示すように、再探索処理が開始される以前に表示されていた案内経路Ｈ３が表示される。非案内対象道路ＮＡ１〜ＮＡ６は表示されないが、運転者は、非案内対象道路を進めば、現在位置の移動に伴って案内経路Ｈ３の表示が移動するので、案内経路Ｈ３へ到達することができる。なお、図１６中の実線部分のみがディスプレイ３３に表示され、破線部分は表示されない。以下の図面においても同じである。
【００６９】
また、最短距離の経路がノードＮＤ４を案内開始地点とする経路であったとすると、案内・表示処理（ステップ５３）で表示される地図画面Ｈ１には、図１７に示すように、ノードＮＤ４がある案内対象道路ＡＤ２が案内経路Ｈ３として表示され、再探索処理が開始される以前に表示されていた案内経路（案内対象道路ＡＤ１）は消去される。
【００７０】
他方、上記ステップ１６４で現在位置が非案内対象道路上ではないと判別されたときには、現在位置は、道路データにはない地点であることになる。すなわち、現在位置が施設の敷地内または駐車場や空き地内などにある場合である。この場合には、現在位置から最短距離にある案内対象道路上の始点またはノードの座標が求められる（ステップ１８２）。このステップ１８２では、図６のステップ８６〜９２の処理と同じ処理が行われる。
【００７１】
例えば、図１５に示される現在位置ＭＰ６のように、現在位置が非道路上である場合には、現在位置ＭＰ６から所定距離の範囲内にある案内対象道路ＡＤ１、ＡＤ２上のノードＮＤ１、ＮＤ２、ＮＤ４、ＮＤ５の座標が求められる。そして、現在位置ＭＰ６の座標と各ノードＮＤ１、ＮＤ２、ＮＤ４、ＮＤ５の座標との差に基づいて、現在位置ＭＰ６から各ノードＮＤ１、ＮＤ２、ＮＤ４、ＮＤ５までの直線距離が求められる。さらに、最短距離にあるノードＮＤ４が選択される。現在位置ＭＰ６が非道路上であるから、自車の進行方向に無関係に最短距離にあるノードＮＤ４を案内開始地点としても良いし、自車の進行方向とは逆方向にあるノードは案内開始地点の候補から除外しても良い。
【００７２】
次に、現在位置からノードＮＤ４及び案内対象道路ＡＤ２を経由して最終案内地点ＥＰに至る経路全体の距離Ｌｂが求められる。この経路の探索は、案内経路の探索処理（図６のステップ６８）と同一の処理によって行われ、ノードＮＤ４が案内開始地点とされる。また、この経路全体の距離Ｌｂは、上記ステップ１８２で求められた現在位置からノードＮＤ４までの距離と、ノードＮＤ４から最終案内地点ＥＰに至る経路の長さとの合計値である。
【００７３】
次に、現在位置ＭＰ６から最短距離にある案内経路ＭＷ上の始点またはノードの座標が求められる（ステップ１９０）。図１５に示す場合には、案内経路ＭＷの一部である案内対象道路ＡＤ１上のノードＮＤ２の座標が求められる。そして、このノードＮＤ２から最終案内地点ＥＰまでの距離Ｌａが求められる（ステップ１９２）。この距離Ｌａは、ステップ６８で既に計算され、ノードＮＤ２の座標データと共にＲＡＭ４に記憶されている。
【００７４】
そして、距離Ｌａと距離Ｌｂとの大小が比較される（ステップ１９４）。ここで、Ｌｂ＜Ｌａであれば、現在位置ＭＰ６がある案内対象道路ＡＤ２を使用した経路の方が当初の案内経路ＭＷよりも最終案内地点までの距離が短いことになるから、案内経路を案内対象道路ＡＤ２を使用した経路に変更する（ステップ１７８）。これによって、ステップ１８４で検索された経路を構成する道路データが新たな案内経路データＭＷとしてＲＡＭ４に記憶される。この場合のディスプレイ３３の表示は図１７と同じである。他方、ステップ１９４でＬｂ＞Ｌａであれば、案内対象道路ＡＤ２を使用した経路よりも当初の案内経路ＭＷの方が最終案内地点までの距離が短いことになるから、案内経路ＭＷの変更は行われない（ステップ１７６）。この場合のディスプレイ３３の表示は図１６と同じである。
【００７５】
なお、現在位置が非道路上である場合には、図８に示した現在位置ＭＰ３における案内対し地点の決定処理と同様に、現在位置ＭＰ６から案内対象道路ＡＤ１、ＡＤ２に下ろした垂線Ｖ１、Ｖ２の長さと、この垂線Ｖ１、Ｖ２と案内対象道路ＡＤ１、ＡＤ２との交点ＶＰ１、ＶＰ２の座標とから、現在位置ＭＰ６から最短距離の地点を求めても良い。この場合には、上記始点またはノードを案内開始地点とする場合よりも、さらに現在位置に近い地点を案内開始地点とすることができる。
【００７６】
１１．経路探索処理の他の例
図１８は経路探索処理（ステップ５２）の他の例のフローチャートを示す。なお、図１８において図６、１４と同じ符号のステップは、それらのステップと同一の処理を実行するものとする。この処理は、経路設定フラグＫＦまたは再探索フラグＳＦがオンのときに開始される（ステップ２００）。そして、新規に案内経路を設定する場合には、図６に示した経路探索処理（ステップ５２）と同様の処理（ステップ６４、６６、６８、７０）によって案内経路が設定される。この後、経路設定フラグＫＦがオフにリセットされる（ステップ２０２）。
【００７７】
他方、再探索が要求されたときにも、新規に案内経路を設定する場合と同様に、案内開始地点決定処理（ステップ６４）、最終案内地点決定処理（ステップ６６）及び案内経路探索処理（ステップ６８）によって、案内経路が探索される。従って、図１４に示したような再探索処理（ステップ７２）は行われない。
【００７８】
そして、再探索である場合には（ステップ６０がＹＥＳ）、新たに探索された経路がＲＡＭ４に記憶されている案内経路データＭＷが新たに検索された経路データに変換される（ステップ１７８）。ここで、再探索された案内経路は新たに決定された案内開始地点から開始されるから、再探索された案内経路が再探索が行われる前の案内経路と同一であっても、地図画面Ｈ１に表示される案内経路Ｈ３は、新たに決定された案内開始地点から始まる経路に変更される。そして、案内経路の変更が行われた後、再探索フラグＳＦがオフにリセットされる（ステップ２０２）。
【００７９】
このように、新規に案内経路を設定する処理と、再探索を行う処理とを共通の処理で構成することにより、処理プログラムを簡素化できる。例えば、現在位置が案内対象道路上に無い場合に、図１４の処理のように、現在位置から案内対象道路上の地点を経由して最終案内地点に至るまでの経路の全長を求めて、長さの長短を比較する必要が無くなる。
【００８０】
１２．再探索処理の他の例
図１９は再探索処理（ステップ７２）の他の例のフローチャートを示す。なお、図１９において、図１４と同じ符号のステップは、それらのステップと同一の処理を実行するものとする。図１４に示した再探索処理では、目的地までの経路を設定する手段として、現在位置が案内経路から外れた場合に、現在位置または現在位置の近傍における案内対象道路上の地点から最終案内地点までの全経路が探索される処理（ステップ１６８、１８０、１８４）を示した。これに対して、図１９に示す再探索処理では、現在位置または現在位置の近傍における案内対象道路上の地点から、再探索処理が開始される前の案内経路へ戻る経路を探索する。
【００８１】
現在位置が案内対象道路上である場合（ステップ１６２がＹＥＳ）には、現在位置から案内経路に到達するための経路が探索される（ステップ２１０）。ここで、案内経路とはＲＡＭ４に記憶されている案内経路データＭＷで表される経路である。このステップ２１０では、現在位置から最終案内地点ＥＰに至る道路データを順次探索して接続して行き、案内経路データＭＷに含まれる道路データが現れるまでの経路を求める処理が行われる。そして、ＲＡＭ４に記憶されている案内経路データＭＷが消去され、ステップ２１０で検索された新たな案内経路データＭＷがＲＡＭ４に記憶される（ステップ１７８）。
【００８２】
また、現在位置が非案内対象道路上である場合（ステップ１６４がＹＥＳ）には、現在位置からこの現在位置からある非案内対象道路と案内対象道路との交点に至るまでの経路の長さが求められ（ステップ１６６）、各交点から案内経路へ至るまでの経路が探索される（ステップ２１２）。このステップ２１２では、各交点から最終案内地点ＥＰに至る道路データを順次探索して接続して行き、案内経路データＭＷに含まれる道路データが現れるまでの経路を求める処理が行われる。さらに、求められた各経路の全体の距離Ｌｎが計算される（ステップ１７０）。そして、各距離Ｌｎの中から最短距離のものが求められる（ステップ１７２）。
【００８３】
次に、上記ステップ１７２で求められた最短距離の経路が経由する交点が案内経路上の地点であるか否かが判別される（ステップ２１４）。ここで、経由する交点が案内経路上である場合には、案内経路上の交点へ進めば良いことになるので、案内経路を変更する必要はなく、ＲＡＭ４に記憶されている案内経路データＭＷは保存される（ステップ１７６）。他方、経由する交点が案内経路上の地点ではない場合には、新たに求められた経路の方が、案内経路上の交点へ進むよりも有利であることになるので、ＲＡＭ４に記憶されている案内経路データＭＷが新たに求められた経路データに変更される（ステップ１７８）。
【００８４】
また、現在位置が非道路上である場合（ステップ１６４がＮＯ）には、案内対象道路上にあって、現在位置から最短距離にある地点が求められる（ステップ１８２）。そして、求められた地点から案内経路に至る経路が探索される（ステップ２１６）。このステップ２１６では、ステップ１８２で求められた地点から最終案内地点ＥＰに至る道路データを順次探索して接続して行き、案内経路データＭＷに含まれる道路データが現れるまでの経路を求める処理が行われる。
【００８５】
次に、ステップ１８２で求められた地点が、案内経路上の地点であるか否かが判別される（ステップ２１８）。ここで、ステップ１８２で求められた地点が案内経路上の地点ではない場合には、ステップ２１６で求められた経路データは、ＲＡＭ４に記憶されている案内経路データと交換される（ステップ１７８）。他方、ステップ１８２で求められた地点が案内経路上の地点である場合には、案内経路へ戻る経路が非案内対象道路のみを経由するので、案内経路を変更する必要がない。従って、この場合には、ＲＡＭ４に記憶されている案内経路データＭＷは保存される（ステップ１７６）。なお、図１４の場合と同様に、ステップ１８２において、現座位置から案内対象道路へ垂線を下ろして、この垂線と案内対象道路との交点のうち最短距離にある地点を案内開始地点としても良い。
【００８６】
このように、目的地までの経路を再探索する手段として、現在位置または現在位置の近傍における案内対象道路上の地点から、再探索処理が開始される前の案内経路に到達する経路を探索する処理を行うことにより、最終目的地までの全経路を探索するよりも処理を簡素化でき、再探索動作を迅速に行える。
【００８７】
１３．自車の進行方向を考慮した再探索処理
上記実施例では、現在位置が案内経路から外れ、現在位置が案内対象道路上にない場合に、現在位置の近傍における案内対象道路上の地点を探索して、この地点から最終案内地点ＥＰまたは案内経路へ至る経路を探索する例を示した。ここで、上記案内対象道路上の地点が自車の進行方向とは逆方向にあると、Ｕターンを必要とするので、進行方向に存在する地点を選択することが好ましい。そこで、例えば、図１４または図１９のステップ１６６の代わりに、図２０に示す処理を実行し、ステップ１８２の代わりに、図２１に示す処理を実行する。なお、図２１中で、図２０のステップと同一の符号が付されたステップは同一の処理を行う。
【００８８】
図１４、１９の例では、現在位置が案内経路から外れ、非案内対象道路上にある場合には、現在位置から、この現在位置がある非案内対象道路から案内対象道路に至る経路と案内対象道路との交点が探索される（図１４、１９のステップ１６６）。また、現在位置が非道路上にある場合には、現在位置から最短距離にあって案内対象道路上にある地点が検索される（図１４、１９のステップ１８２）。本実施例では、この交点または地点を探索するときに、自車の進行方向を考慮して探索エリアを設定する。
【００８９】
図２０に示すように、図１４、１９のステップ１６４の判定がＹＥＳとなったときには、次に、自車の進行方向を示す相対方位角データθがＲＡＭ４からＣＰＵ２に読み込まれる（ステップ２２０）。さらに、自車の現在位置データＭＰがＲＡＭ４からＣＰＵ２へ読み込まれる（ステップ２２２）。そして、自車の進行方向を考慮した探索エリアが設定される。この探索エリアは、自車から予め決められた基準距離前方の地点を中心とする所定半径の円内、または自車の前方に予め決められた基準角度の扇形に設定された範囲、または両者の組み合わせによって決められた範囲である。
【００９０】
次に、このステップ２２４で設定された探索エリア内に、現在位置がある非案内対象道路から案内対象道路へ至る経路と案内対象道路との交点が存在するか否かが判別される（ステップ２２８）。ここで、交点が存在すれば、現在位置から交点までの経路の長さが求められる（ステップ２３０）。このステップ２３０の処理は、図１４のステップ１６６で行われる交点までの距離を求める処理と同じである。そして、図１４のステップ１６８、または図１９のステップ２１２へ進む。
【００９１】
他方、上記探索エリアに上記交点がない場合には、探索エリアが変更される（ステップ２３２）。探索エリアの変更は、上記基準距離または基準角度を増加させることにより、探索エリアを拡大させることにより行われる。そして、探索エリアの変更が限界に達しているか否かが判別される（ステップ２３４）。探索エリアを無限に拡大するわけに行かないので、一定の限界を設けてある。ここで、探索エリアが限界に達していなければ、再度、上記交点の探索が行われ（ステップ２２６）、限界に達するまで、探索エリアを変更しながら上記交点の探索が行われる（ステップ２２６、２２８、２３２、２３４）。
【００９２】
他方、探索エリアが限界に達したときには、再探索ができない旨、或いは案内経路へ戻ることを示唆する案内をディスプレイ３３に表示し、または音声によって報知する（ステップ２３６）。この場合には、再探索処理７２は終了され、図６のステップ７４へ進む。これにより、このまま走行することは目的地へ到達するための経路として不適当であることが運転者に知らされる。
【００９３】
また、図２１に示すように、図１４、１９のステップ１６４の判定がＮＯとなったときには、次に、自車の進行方向を示す相対方位角データθと自車の現在位置データＭＰがＲＡＭ４からＣＰＵ２へ読み込まれ（ステップ２２０、２２２）、探索エリアが設定される（ステップ２２４）。
【００９４】
次に、このステップ２２４で設定された探索エリア内で案内対象道路が探索され（ステップ２４０）、探索エリア内に案内対象道路があるか否かが判別される（ステップ２４２）。ここで、探索エリア内に案内対象道路が存在すれば、この案内対象道路上の地点で、現在位置から最短距離の地点が求められる（ステップ２４４）。このステップ２４４の処理は、図１４のステップ１８２の処理と同じである。そして、図１４のステップ１８４、または図１９のステップ２１６へ進む。
【００９５】
他方、上記探索エリアに案内対象道路がない場合には、探索エリアが変更され（ステップ２３２）、探索エリアの変更が限界に達しているか否かが判別される（ステップ２３４）。ここで、探索エリアが限界に達していなければ、再度、上記案内対象道路の探索が行われ（ステップ２４０）、限界に達するまで、探索エリアを変更しながら案内対象道路の探索が行われる（ステップ２４０、２４２、２３２、２３４）。他方、探索エリアが限界に達したときには、再探索ができない旨をディスプレイ３３に表示し、または音声によって報知する（ステップ２３６）。そして、再探索処理７２は終了され、図６のステップ７４へ進む。
【００９６】
１４．探索エリア設定処理及び探索エリア変更処理
図２２は上記探索エリア設定処理（ステップ２２４）の一例を示す。この処理では、自車から予め決められた基準距離前方の地点を中心とする所定半径の円内が探索エリアに設定される。なお、ＲＡＭ４には予め基準距離Ｒａが記憶されている。この基準距離データＲａがＣＰＵ２に読み込まれる（ステップ２５０）。そして、自車からこの基準距離Ｒａだけ前方の位置の座標が求められ、この座標を中心として半径Ｒａの円の探索エリアが設定される（ステップ２５２）。そして、ステップ２２６またはステップ２４０へ進む。
【００９７】
例えば、図２４に示すように、現在位置ＭＰａが案内経路ＭＷから外れて、非案内対象道路ＮＡａ上にあり、自車の進行方向が図中上方であるとする。この場合、現在位置ＭＰａから自車の進行方向の直線前方へ基準距離Ｒａの地点Ｅｃが求められる（ステップ２５０）。そして、この地点Ｅｃを中心として半径Ｒａの円ＣＬが設定され、この円ＣＬの内部が探索エリアＳＥａとされる（ステップ２５２）。そして、非案内対象道路ＮＡａと案内対象道路ＡＤａとの交点ＮＤｅが探索エリアＳＥａ内にあるので、現在位置からこの交点ＮＤｅまでの距離が求められる（図２０のステップ２３０）。そして、この交点ＮＤｅから最終案内地点ＥＰまでの経路が求められる（図１４のステップ１６８）。または、この交点ＮＤｅから案内経路ＭＷへ至る経路が求められる（図１９のステップ２１２）。
【００９８】
また、現在位置が非道路上にある場合には、案内対象道路ＡＤａが探索エリアＳＥａを通過しているので、この案内対象道路ＡＤａ上で、現在位置ＭＰａから最短距離の地点ＶＰａが求められる（図２１のステップ２４４）。そして、この地点ＶＰａから最終案内地点ＥＰまでの経路が求められる（図１４のステップ１８４）。または、この地点ＶＰａから案内経路ＭＷへ至る経路が求められる（図１９のステップ２１６）。
【００９９】
なお、現在位置が経路から外れた場合に、新たな経路を再探索する処理が行われるが、まず、移動手段の現在位置が案内の対象道路上か否かが判断される。次に、現在位置に最も近いノードを検索する。この場合、現在位置から案内対象道路に対して垂線を引き、該垂線と道路の交点（ＶＰａ）に最も近いノード（ＮＤｅ）が案内開始地点として決定され、目的地までの経路が探索される。
【０１００】
また、さらに進行方向を考慮して案内開始地点を決定しても良い。この場合、進行方向と反対方向にノードがあっても、進行方向側にあるノードを見つけることができ、面倒なＵターンを避けることができ、より良い経路を案内することができる。
【０１０１】
図２３は上記探索エリア変更処理（ステップ２３２）の一例を示す。この処理では、基準距離Ｒａを予め決められた増加量αずつ増加させる演算が行われる（ステップ２５４）。そして、αだけ増加した基準距離Ｒａ（＝Ｒａ＋α）の半径の探索エリアが設定される（ステップ２５６）。例えば、図２４に示すように、現在位置ＭＰａの直線前方Ｒａ（＝Ｒａ＋α）の地点Ｅｃｎを中心とする半径Ｒａ（＝Ｒａ＋α）の円ＣＬｎが求められ、この円ＣＬｎ内が新たな探索エリアＳＥａとされる。そして、非案内対象道路と案内対象道路との交点、または案内対象道路が、探索エリアＳＥａ内に存在しない場合には、さらに探索エリアＳＥａの半径がαずつ大きくなる（ステップ２５４）。
【０１０２】
なお、増加量αの大きさは限定されない。例えば、増加量αを小さな値に設定して、少しずつ探索エリアＳＥａを拡大していっても良い。この場合には、探索エリアＳＥａが拡大されていく過程で、最初に探索された案内対象道路上の地点が、新たな経路の開始地点とされる。
【０１０３】
図２５は上記探索エリア設定処理（ステップ２２４）の他の例を示す。この処理では、自車の前方に予め決められた基準角度の扇形をした探索エリアが設定される。なお、ＲＡＭ４には予め基準角度θｓと基準半径Ｒｂが記憶されている。先ず、基準半径データＲｂがＣＰＵ２に読み込まれる（ステップ２６０）。そして、現在位置を中心として半径Ｒｂの円が設定される（ステップ２６２）。次に、上記基準角度θｓが読み込まれ（ステップ２６６）、上記半径Ｒｂの円からこの基準角度θｓを中心角とする扇形を設定し、この扇形の内部を探索エリアとする（ステップ２６６）。
【０１０４】
例えば、図２７に示すように、現在位置ＭＰａが案内経路ＭＷから外れて、非案内対象道路ＮＡａ上にあり、自車の進行方向が図中上方であるとする。この場合、現在位置ＭＰａを中心として半径Ｒｂの円ＣＭが設定され（ステップ２６２）、さらに、中心角θｓの扇形ＦＧが設定される。そして、この扇形ＦＧの内部が探索エリアＳＥｂとされる（ステップ２６６）。図２７の場合には、非案内対象道路ＮＡａと案内対象道路ＡＤａとの交点ＮＤｅが探索エリアＳＥｂ内にあるので、現在位置からこの交点ＮＤｅまでの距離が求められる（図２０のステップ２３０）。そして、この交点ＮＤｅから最終案内地点ＥＰまでの経路が求められる（図１４のステップ１６８）。または、この交点ＮＤｅから案内経路ＭＷへ至る経路が求められる（図１９のステップ２１２）。
【０１０５】
また、現在位置が非道路上にある場合には、案内対象道路ＡＤａが探索エリアＳＥｂを通過しているので、この案内対象道路ＡＤａ上で、現在位置ＭＰａから最短距離の地点ＶＰａが求められる（図２１のステップ２４４）。そして、この地点ＶＰａから最終案内地点ＥＰまでの経路が求められる（図１４のステップ１８４）。または、この地点ＶＰａから案内経路ＭＷへ至る経路が求められる（図１９のステップ２１６）。
【０１０６】
図２６は上記探索エリア変更処理（ステップ２３２）の他の例を示す。この処理は、図２５の探索エリア設定処理と併せて実行される。この処理では、基準半径Ｒｂを予め決められた増加量βずつ増加させる演算が行われる（ステップ２７０）。そして、βだけ増加した基準半径Ｒｂ（＝Ｒｂ＋β）の半径の円が現在位置を中心として設定される（ステップ２７２）。例えば、図２７に示すように、現在位置ＭＰａを中心とする半径Ｒｂ（＝Ｒｂ＋β）の円ＣＭｎが求められ（ステップ２７２）、この円ＣＭｎから中心角θｓの扇形ＦＧｎが求められる。そして、この扇形ＦＧｎの内部が新たな探索エリアＳＥｂとされる（ステップ２７４）。そして、非案内対象道路と案内対象道路との交点、または案内対象道路が、探索エリアＳＥｂ内に存在しない場合には、さらに探索エリアＳＥｂの半径がβずつ大きくなる（ステップ２７０）。
【０１０７】
なお、増加量βの大きさは限定されない。例えば、増加量βを小さな値に設定して、少しずつ探索エリアＳＥｂを拡大していっても良い。この場合には、探索エリアＳＥｂが拡大されていく過程で、最初に探索された案内対象道路上の地点が、新たな経路の開始地点とされる。
【０１０８】
図２８は上記探索エリア変更処理（ステップ２３２）のさらに他の例を示す。この処理も、図２５の探索エリア設定処理と併せて行われる。この処理では、この処理では、基準角度θｓを予め決められた増加量△θずつ増加させる演算が行われる（ステップ２８０）。そして、図２５のステップ２６２で設定された半径Ｒｂの円から、中心角がθ＋△θの扇形が求められ、この扇形の内部が新たな探索エリアＳＥｂとされる（ステップ２８２）。例えば、図２７に示すように、現在位置ＭＰａを中心とする半径Ｒｂの円ＣＭが求められ（図２５のステップ２６２）、この円ＣＭから中心角θｓ（＝θｓ＋△θ）の扇形ＦＧｍが求められる。そして、この扇形ＦＧｍの内部が新たな探索エリアＳＥｂとされる（ステップ２８２）。そして、非案内対象道路と案内対象道路との交点、または案内対象道路が、探索エリアＳＥｂ内に存在しない場合には、さらに探索エリアＳＥｂの中心角θｓが△θずつ大きくなる（ステップ２８０）。
【０１０９】
なお、増加量△θの大きさは限定されない。例えば、増加量△θを小さな値に設定して、少しずつ探索エリアＳＥｂを拡大していっても良い。この場合には、探索エリアＳＥｂが拡大されていく過程で、最初に探索された案内対象道路上の地点が、新たな経路の開始地点とされる。
【０１１０】
図２９は上記探索エリア変更処理（ステップ２３２）のさらに他の例を示す。この処理も、図２５の探索エリア設定処理と併せて行われる。この処理は、図２６の処理と図２８の処理の組み合わせであり、基準半径Ｒｂを増加量βずつ増加させる演算（ステップ２９０）と、基準角度θｓを増加量△θずつ増加させる演算が行われる（ステップ２９４）。そして、βだけ増加した基準半径Ｒｂ（＝Ｒｂ＋β）の半径の円が現在位置を中心として設定され（ステップ２９２）、この半径Ｒｂ（＝Ｒｂ＋β）の円から、中心角がθ＋△θの扇形が求められ、この扇形の内部が新たな探索エリアＳＥｂとされる（ステップ２９６）。そして、非案内対象道路と案内対象道路との交点、または案内対象道路が、この探索エリアＳＥｂ内に存在しない場合には、さらに探索エリアＳＥｂの半径がβずつ大きくなり（ステップ２９０）、かつ中心角θｓが△θずつ大きくなる（ステップ２９４）。なお、探索エリア変更処理（ステップ２３２）が行われる毎に、基準半径Ｒｂを増加させる処理（ステップ２９０、２９２）と中心角θｓを増加させる処理（ステップ２９４、２９６）との何れか一方を、一回ずつ、または複数回ずつ、交互に行っても良い。
【０１１１】
図３０は上記探索エリア設定処理（ステップ２２４）のさらに他の例を示す。この処理は、上記図２２の処理と図２５の処理との組み合わせであり、自車から基準距離Ｒａだけ前方の地点を中心とする半径Ｒａの円を、自車の前方に基準角度θｓの中心角の扇形によって切り取った範囲が探索エリアに設定される。なお、ＲＡＭ４には予め基準距離Ｒａと基準角度θｓが記憶されている。先ず、基準距離データＲａがＣＰＵ２に読み込まれ（ステップ３００）、自車からこの基準距離Ｒａだけ前方の位置の座標が求められ、この座標を中心として半径Ｒａの円が設定される（ステップ３０２）。そして、基準角度θｓが読み込まれて（ステップ３０４）、この基準角度θｓを中心角とする扇形によって円が切り取られ、この範囲が探索エリアとされる（ステップ３０６）。
【０１１２】
例えば、図３１に示すように、現在位置ＭＰａが案内経路ＭＷから外れて、非案内対象道路ＮＡａ上にあり、自車の進行方向が図中上方であるとする。この場合、現在位置ＭＰａから自車の進行方向の直線前方へ基準距離Ｒａの地点Ｅｃが求められ、この地点Ｅｃを中心として半径Ｒａの円ＣＬが設定される（ステップ３０２）。そして、中心角θｓの扇形ＦＧが設定され、この扇形ＦＧと円ＣＬとの重複範囲が探索エリアＳＥｃとされる（ステップ３０６）。
【０１１３】
ステップ３０６では、図２５のように、基準半径Ｒｂを用いて扇形ＦＧを求めて、円ＣＬとの重複範囲を計算しても良いし、中心角θｓをなす２直線が円ＣＬと交わる点Ｐ１、Ｐ２を求めて、これら２直線とＰ１とＰ２を結ぶ円弧とで囲まれた範囲を求めても良い。また、この場合の探索エリア変更処理（ステップ２３２）は、図２３、２６、２８、２９の何れかの処理、または図２３の処理と図２６、２８、２９の何れかを組み合わせた処理である。
【０１１４】
また、次のような処理も可能である。すなわち、再探索を実行する場合に、まず、現在位置検出手段により検出された現在位置が、経路上を走行しているか否かを判断する。その後、経路を外れていると判断された場合には、図３２に示すように、現在位置ＭＰから案内対象道路ＡＤに対して垂線ＳＵを下ろし、該垂線と道路ＡＤとの交点に最も近いノードＮＯ５を算出し、該ノードＮＯ５を案内開始地点として、目的地までの経路の探索を実行する。探索された経路と現在の経路ＭＷとを比較して、経路として良い方を案内する。図中のＮＯ１〜ＮＯ９は、案内対象道路ＡＤのノードである。
【０１１５】
また、案内開始地点を算出する時に、移動手段の進行方向を条件に、進行方向前方にある案内対象道路上のノードを案内開始地点として算出するように構成しても良い。すなわち、図３２に示すように、現在位置ＭＰが案内経路ＭＷから外れているときに、自車の進行方向ＳＤが案内対象道路と交差する地点Ｃｐを求め、この交差地点Ｃｐに最も近いノードＮＯ８を案内開始地点とする。また、非案内対象道路と案内対象道路との交点であることを条件に付加することにより、交差地点Ｃｐに最も近い交点ＮＯ７を求め、これを案内開始地点とするように構成しても良い。
【０１１６】
なお、現在位置から案内開始地点までの距離を求めて報知するようにしても良い。この場合、現在位置と案内開始地点とを結ぶ直線距離を報知しても良いし、あるいは現在位置から案内開始地点に至る実際の道路を走行したときの実走行距離を報知しても良い。
【０１１７】
なお、本発明は上記実施例に限定されず、本発明の趣旨を逸脱しない範囲で種々変更可能である。例えば、道路データファイルに記憶されている道路データに案内対象道路と非案内対象道路の区別が設けられていない場合、或いは道路データに案内対象道路という概念がない場合には、上記各実施例において、現在位置または登録目的地が非案内対象道路上にある場合の処理を省略する。すなわち、図７のステップ８４、９４〜９８、図９のステップ１０６、１１６〜１２０、図１４のステップ１６４〜１７４を省略する。そして、案内対象道路上か否かの判別（図７のステップ８２、図９のステップ１０４、図１４のステップ１６２）では、現在位置または登録目的地が道路データファイルに記憶されている道路上にあるか否かを判別する。これにより、現在位置が道路データファイルに記憶されている道路上であれば、案内経路は変更されず、現在位置が道路データファイルに記憶されている道路以外の地点にあれば、前述のように新たな案内経路の再探索が行われる。
【０１１８】
また、図１４のステップ１８２〜１８６をステップ１６６〜１７２と同様の処理に置き換えても良い。すなわち、現在位置が非道路上にある場合には、先ず、現在位置から所定距離の範囲にある案内対象道路上の始点、終点、ノードの座標が求められ、それぞれの地点を経由して現在位置から最終案内地点ＥＰに至るまでの経路の全長Ｌｎが計算される。そして、この中から最短距離の経路が求められて、これが再探索処理が開始される前の案内経路でなければ、新たに求められた経路が新たな案内経路とされる。図１４のステップ１８２〜１８６は、現在位置から最短距離にある案内対象道路上の地点から求められた経路であり、これが最終案内地点までの最短経路とは限らない。そこで、経路の全長に基づいて最短距離か否かを判別することにより、最終案内地点までの最短経路が求められる。
【０１１９】
また、再探索処理（ステップ７２）のステップ１６８、１７０、１８４、１８６の処理の代わりに、現在位置から案内対象道路までの直線距離または非案内対象道路を経由した経路の長さが最短の地点を求め、この地点が再探索処理の開始前の案内経路上の地点でなければ、この地点から最終案内地点までの経路を新たな案内経路とするようにしても良い。これにより、現在位置から案内対象道路上の地点を経由して最終案内地点に至るまでの経路の全長を求めて、長短を比較する処理（ステップ１６８〜１７２、１８４〜１９４）が省略できる。
【０１２０】
さらに、再探索処理の開始前の案内経路へ戻る道が、上記経路が最短の地点までの距離のｘ倍以下であれば、再探索処理の開始前の案内経路をそのまま案内経路として表示しても良い。前記「ｘ」は、予め決められた数値である。また、上記再探索処理（ステップ７２）においては、現在位置から最終案内地点ＥＰまたは案内経路へ至る経路の全長が求められるが（ステップ１７０、１８０）、これは、現在位置から案内対象道路と非案内対象道路との交点、または現在位置から最短距離にある案内対象道路上の地点までの距離は含めずに、前記交点または案内対象道路上の地点から最終案内地点ＥＰまたは案内経路へ至る経路の長さを求めても良い。
【０１２１】
また、上記実施例のように、案内対象道路へ至る経路に進行方向による重み付けを行う他に、案内対象道路へ至る経路の、到達の難易等に基づいて重み付けをしても良い。例えば、上記のように、現在位置から案内対象道路までの経路の長さが最短距離の地点であっても、再探索処理の開始前の案内経路に戻る道が自車の進行方向にあり、直線道路を経由して到達できるのであれば、再探索処理の開始前の案内経路をそのまま案内経路として表示する。
【０１２２】
さらに、上記再探索処理（ステップ７２）は、案内・表示処理（ステップ５３）で現在位置が案内経路から外れたときに、自動的に開始されても良いし、所定のスイッチ操作または音声入力によって使用者が再探索処理の開始を指示したときに開始されても良い。また、ディスプレイ３３に表示される地図画面Ｈ１には、上記のように現在位置Ｈ２、案内経路Ｈ３及び方向マークＨ４〜Ｈ６のみを表示しても良いし、その他の道路、建物、施設、地名、方角、縮尺、案内マーク等の地理的情報を表示するようにしても良い。また、上記案内開始地点決定処理（ステップ６４）、最終案内地点決定処理（ステップ６６）、再探索処理（ステップ７２）の何れかまたは２以上が、現在位置または登録目的地が案内対象道路上にない場合には、単に、案内経路設定不可能の旨の案内またはエラー表示を行う処理であっても良い。
【０１２３】
また、図２０、２１に示した処理の中で、探索エリアの変更が限界に達したときに、探索エリアの設定方向を自車の進行方向に限らず、横方向や斜め後方へ拡大したり、さらに全方向に拡大しても良い。また、図２３の処理において、探索エリアＳＥａの半径を固定値とし、中心Ｅｃまでの距離Ｒａを増加させるようにしても良いし、この処理を図２３の処理に組み合わせても良い。また、図２６、２８、２９の処理において、中心角θｓを固定値として、扇形ＦＧを現在位置ＭＰａの直線前方に対して左右に傾けても良いし、この処理を図２６、２８、２９の処理に組み合わせても良い。
【０１２４】
なお、上記説明では、案内対象道路、非案内対象道路などの場合分けがしてあるが、案内対象道路とは単に、経路案内ができるように記憶された道路であっても良い。また、上記のように非案内対象道路として場合分けをして記憶手段に記憶しなくても良いことは言うまでもない。さらに、非案内対象道路は単に、案内対象の道路以外の場所であっても良い。
【０１２５】
また、再探索処理（ステップ７２）で何れが有利な案内経路であるかを判別するときに、最初に設定された案内経路と再探索された経路とを比較しても良い。また、既に再探索処理が行われた後に、再び再探索処理が行われたときには、前回の再探索処理で探索された案内経路と、今回の再探索処理で探索された案内経路とを比較しても良い。
【０１２６】
【発明の効果】
以上のように、本発明によれば、現在位置が案内経路から外れた場合に、現在走行する道路が案内対象の道路外であっても、経路を探索して運転者に新たな経路情報を報知することができる。
【０１２７】
また、現在位置が非案内対象道路上にあると判別された場合に、現在位置から案内対象道路上の地点までの距離及びこの案内対象道路上の地点から目的地までの距離の合計距離を求め、合計距離に基づいて目的地までの経路を設定するので、目的地までの経路全体の距離を比較して経路を設定するので、現在位置から最も近い案内対象道路上の地点ではなく、経路全体の距離によって求められた地点を案内開始地点とする最適な経路を設定することができる。
【図面の簡単な説明】
【図１】ナビゲーション装置の全体回路図である。
【図２】ＲＡＭ４内に記憶されるデータの一部を示す図である。
【図３】全体処理のフローチャートを示す図である。
【図４】全体処理のフローチャートを示す図である。
【図５】情報記憶装置３７に記憶されている道路データファイルの内容を示す図である。
【図６】経路探索処理のフローチャートを示す図である。
【図７】案内開始地点決定処理のフローチャートを示す図である。
【図８】現在位置と案内対象道路及び非案内対象道路の例を示す図である。
【図９】最終案内地点決定処理のフローチャートを示す図である。
【図１０】登録目的地と案内対象道路と非案内対象道路の例を示す図である。
【図１１】案内・表示処理のフローチャートを示す図である。
【図１２】地図画面Ｈ１と現在位置Ｈ２と案内経路Ｈ３及び方向マークＨ４〜Ｈ６の表示例を示す図である。
【図１３】現在位置が案内経路から外れたときのディスプレイの表示例を示す図である。
【図１４】再探索処理のフローチャートを示す図である。
【図１５】現在位置と案内対象道路と非案内対象道路の例を示す図である。
【図１６】再探索処理で案内経路の変更がない場合のディスプレイの表示例を示す図である。
【図１７】再探索処理で案内経路が変更された場合のディスプレイの表示例を示す図である。
【図１８】経路探索処理の他の例のフローチャートを示す図である。
【図１９】再探索処理の他の例のフローチャートを示す図である。
【図２０】現在位置が非案内経路上にある場合における進行方向を考慮した再探索処理のフローチャートを示す図である。
【図２１】現在位置が非道路上にある場合における進行方向を考慮した再探索処理のフローチャートを示す図である。
【図２２】探索エリア設定処理の一例のフローチャートを示す図である。
【図２３】探索エリア変更処理の一例のフローチャートを示す図である。
【図２４】探索エリアの設定及び変更の一例を示す図である。
【図２５】探索エリア設定処理の他の例のフローチャートを示す図である。
【図２６】探索エリア変更処理の他の例のフローチャートを示す図である。
【図２７】探索エリアの設定及び変更の他の例を示す図である。
【図２８】探索エリア変更処理のさらに他の例のフローチャートを示す図である。
【図２９】探索エリア変更処理のさらに他の例のフローチャートを示す図である。
【図３０】探索エリア設定処理のさらに他の例のフローチャートを示す図である。
【図３１】探索エリアの設定のさらに他の例を示す図である。
【図３２】再探索処理の他の例を示す図である。
【符号の説明】
１…中央処理装置、２…ＣＰＵ、３、５…ＲＯＭ、４…ＲＡＭ、９…画像プロセッサ、１０…画像メモリ、１１…音声プロセッサ、１３…スピーカ、２０…現在位置検出装置、２１…絶対方位センサ、２２…相対方位センサ、２３…距離センサ、２５…ＧＰＳ受信装置、２６…ビーコン受信装置、２７…データ送受信装置、３０…入出力装置、３３…ディスプレイ、３４…タッチパネル、３７…情報記憶装置、Ｈ１…地図画面、Ｈ２…現在位置、Ｈ３…案内経路、Ｈ４〜Ｈ６…方向マーク、ＡＤ１、ＡＤ２…案内対象道路、ＮＡ１〜ＮＡ６…非案内対象道路、ＳＥａ、ＳＥｂ、ＳＥｃ…探索エリア。
【図１】
0003622298.tif 000002
【図２】
0003622298.tif 000003
【図３】
0003622298.tif 000004
【図４】
0003622298.tif 000005
【図５】
0003622298.tif 000006
【図６】
0003622298.tif 000007
【図７】
0003622298.tif 000008
【図８】
0003622298.tif 000009
【図９】
0003622298.tif 000010
【図１０】
0003622298.tif 000011
【図１１】
0003622298.tif 000012
【図１２】
0003622298.tif 000013
【図１３】
0003622298.tif 000014
【図１４】
0003622298.tif 000015
【図１５】
0003622298.tif 000016
【図１６】
0003622298.tif 000017
【図１７】
0003622298.tif 000018
【図１８】
0003622298.tif 000019
【図１９】
0003622298.tif 000020
【図２０】
0003622298.tif 000021
【図２１】
0003622298.tif 000022
【図２２】
0003622298.tif 000023
【図２３】
0003622298.tif 000024
【図２４】
0003622298.tif 000025
【図２５】
0003622298.tif 000026
【図２６】
0003622298.tif 000027
【図２７】
0003622298.tif 000028
【図２８】
0003622298.tif 000029
【図２９】
0003622298.tif 000030
【図３０】
0003622298.tif 000031
【図３１】
0003622298.tif 000032
【図３２】
0003622298.tif 000033