(57)【要約】【課題】第１の地点への走行中に何らかの理由で第２の地点に向かうことになった場合でも、出発地から第２の地点までのルートを従来よりも短くすることを目的とする。【解決手段】第１の地点Ｇ１と、第１の地点よりも優先順位の低い第２の地点Ｇ２とを決定し（ステップ１１０）、出発地Ｓから第１の地点に到達する推奨ルートを探索するため、出発地Ｓを最初の計算対象ノードに設定し（ステップ１２０）、「最新の計算対象ノードにリンクを１本だけ介して接続すると共に最新の計算対象ノードよりも第１の地点Ｇ１に近づくノードを１個以上抽出し、抽出した１個以上のノードのうち、第１の地点Ｇ１までの距離と第２の地点Ｇ２までの距離の差分の絶対値が最も小さいノードを新しい計算対象ノードに設定する」という処理を繰り返し（ステップ１３０〜１７０）、設定された複数の計算対象ノードを繋ぐ両天秤ルートを推奨ルートとする（ステップ１８０）。【選択図】図２
2015224921.tif 000002
【特許請求の範囲】
【請求項１】
第１の地点（Ｇ１）と、前記第１の地点よりも優先順位の低い第２の地点（Ｇ２）とを決定する地点決定手段（１１０）と、
出発地（Ｓ）から前記第１の地点に到達する推奨ルートを探索する両天秤ルート探索手段（１２０〜１９０）と、を備え、
前記両天秤ルート探索手段は、
前記出発地を最初の計算対象ノードに設定する初期設定手段（１２０）と、
「最新の計算対象ノードにリンクを１本だけ介して接続すると共に最新の計算対象ノードよりも前記第１の地点に近づくノードを１個以上抽出し、抽出した前記１個以上のノードのうち、前記第１の地点までの距離と前記第２の地点までの距離の差分の絶対値が最も小さいノードを新しい計算対象ノードに設定する」という処理を繰り返す繰り返し設定手段（１３０〜１７０）と、
前記繰り返し設定手段によって設定された複数の計算対象ノードを繋ぐ両天秤ルート（Ｓ１ａ＋Ｓ１ｂ）を前記第１の地点に到達する推奨ルートとするルート決定手段（１１１〜１１９、１８０、１９０、１９３、１９５）と、を有することを特徴とする推奨ルート探索装置。
【請求項２】
地点のペア（Ｇ１、Ｇ２）および優先順位の入力を受け付けることで、第１の地点（Ｇ１）と前記第１の地点よりも優先順位の低い第２の地点（Ｇ２）とを決定する地点決定手段（１１０）と、
出発地（Ｓ）から、前記第２の地点に到達せず、前記第１の地点に到達する両天秤ルート（Ｓ１ａ＋Ｓ１ｂ）を推奨ルートとする両天秤ルート探索手段（１２０〜１９０）と、
前記第１の地点が入力されて、前記第１の地点よりも先に到達する可能性のある地点として前記第２の地点が入力されない場合に、前記出発地から前記第１の地点に到達する通常ルート（Ｌ１ａ＋Ｌ１ｂ）を推奨ルートとする通常ルート探索手段と、を備え、
前記両天秤ルートは、両端部（Ｓ、Ｇ１）以外が、前記通常ルートに比べて、前記第２の地点寄りに位置していることを特徴とする推奨ルート探索装置。
【請求項３】
前記地点決定手段は、目的地（Ｇ０）を決定すると共に、前記第１の地点および前記第２の地点を２者択一の経由地候補として決定し、
前記ルート決定手段は、前記出発地から前記第１の地点を通って前記目的地に到着すると共に前記第２の地点の位置に影響されないルート（Ｌ０＝Ｌ１＋Ｌ２）の長さと、前記出発地から前記第１の地点および前記第２の地点をこの順に通って前記目的地に到着するルート（ＬＬ＝Ｌ１＋Ｌ３＋Ｌ４）の長さとに基づいて、前記両天秤ルートを前記第１の地点に到達する推奨ルートとするか否か判定することを特徴とする請求項１または２に記載の推奨ルート探索装置。
【請求項４】
前記地点決定手段は、目的地（Ｇ０）を決定すると共に、前記第１の地点および前記第２の地点を２者択一の経由地候補として決定し、
前記ルート決定手段は、前記出発地から前記両天秤ルートに沿った前記両天秤ルート上の所定の中継点（Ｍ）までのルート（Ｓ１ｐ）と、前記中継点から前記第２の地点間までのルート（Ｓ２）と、前記第２の地点から前記目的地までのルート（Ｌ４）とを繋いだルートの長さに基づいて、前記両天秤ルートを前記第１の地点に到達する推奨ルートとするか否か判定することを特徴とする請求項１または２に記載の推奨ルート探索装置。
【請求項５】
第１の地点（Ｇ１）と、前記第１の地点よりも優先順位の低い第２の地点（Ｇ２）とを決定する地点決定手段（１１０）、
出発地（Ｓ）から前記第１の地点に到達する推奨ルートを探索する両天秤ルート探索手段（１２０〜１９０）、として、推奨ルート探索装置の制御回路（１７）を機能させるプログラムであって、
前記両天秤ルート探索手段は、
前記出発地を最初の計算対象ノードに設定する初期設定手段（１２０）と、
「最新の計算対象ノードにリンクを１本だけ介して接続すると共に最新の計算対象ノードよりも前記第１の地点に近づくノードを１個以上抽出し、抽出した前記１個以上のノードのうち、前記第１の地点までの距離と前記第２の地点までの距離の差分の絶対値が最も小さいノードを新しい計算対象ノードに設定する」という処理を繰り返す繰り返し設定手段（１３０〜１７０）と、
前記繰り返し設定手段によって設定された複数の計算対象ノードを繋ぐ両天秤ルート（Ｓ１ａ＋Ｓ１ｂ）を前記第１の地点に到達する推奨ルートとするルート決定手段（１１１〜１１９、１８０、１９０、１９３、１９５）と、を有することを特徴とするプログラム。
【請求項６】
地点のペア（Ｇ１、Ｇ２）および優先順位の入力を受け付けることで、第１の地点（Ｇ１）と前記第１の地点よりも優先順位の低い第２の地点（Ｇ２）とを決定する地点決定手段（１１０）、
出発地（Ｓ）から、前記第２の地点に到達せず、前記第１の地点に到達する両天秤ルート（Ｓ１ａ＋Ｓ１ｂ）を推奨ルートとする両天秤ルート探索手段（１２０〜１９０）、および
前記第１の地点が入力されて、前記第１の地点よりも先に到達する可能性のある地点として前記第２の地点が入力されない場合に、前記出発地から前記第１の地点に到達する通常ルート（Ｌ１ａ＋Ｌ１ｂ）を推奨ルートとする通常ルート探索手段、として、推奨ルート探索装置の制御回路（１７）を機能させるプログラムであって、
前記両天秤ルートは、両端部（Ｓ、Ｇ１）以外が、前記通常ルートに比べて、前記第２の地点寄りに位置していることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推奨ルート探索装置および推奨ルート探索装置用のプログラムに関するものである。
【背景技術】
【０００２】
特許文献１には、ある目的地にある時点までに到着できるかどうかを表示する推奨ルート探索装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１９５２２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上記のような推奨ルート探索装置では、当該時点までに当該目的地まで到着できると判定し、その後車両が当該目的地までのルートを走行している途中で、走行環境の変化等により上述の時点までに車両が目的地に到着できなくなってしまう場合がある。
【０００５】
そのような場合、上記のような推奨ルート探索装置では、上述の時点までに車両が目的地に到着できなくなったと判った後で、ドライバーが車両を代替の目的地に向かわせなければならないことがある。これでは、出発地から代替の目的地に向かうという観点では、場合によっては大きく遠回りのルートを車両が走行しなければならないという問題がある。
【０００６】
例えば、家族と友人で県外の海水浴場に出かけて、夜まで遊んでいた後自宅に戻ろうとするとき、友人を降ろす駅を目的地に設定して推奨ルート探索装置にルート案内を行わせている途中で、渋滞等の道路状況により終電時刻までに目的地にできないことがわかったとする。このような場合、友人を駅ではなく友人の自宅（代替の目的地）に送らなければならないが、既に駅に向かって走行しているので、海水浴場（出発地）から友人の自宅に向かうという観点では、場合によっては大きく遠回りのルートを車両が走行しなければならない。
【０００７】
本発明は上記問題点に鑑み、第１の地点への走行中に何らかの理由で第２の地点に向かうことになった場合でも、出発地から第２の地点までのルートを従来よりも短くすることを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するための請求項１に記載の発明は、第１の地点（Ｇ１）と、前記第１の地点よりも優先順位の低い第２の地点（Ｇ２）とを決定する地点決定手段（１１０）と、出発地（Ｓ）から前記第１の地点に到達する推奨ルートを探索する両天秤ルート探索手段（１２０〜１９０）と、を備え、前記両天秤ルート探索手段は、前記出発地を最初の計算対象ノードに設定する初期設定手段（１２０）と、「最新の計算対象ノードにリンクを１本だけ介して接続すると共に最新の計算対象ノードよりも前記第１の地点に近づくノードを１個以上抽出し、抽出した前記１個以上のノードのうち、前記第１の地点までの距離と前記第２の地点までの距離の差分の絶対値が最も小さいノードを新しい計算対象ノードに設定する」という処理を繰り返す繰り返し設定手段（１３０〜１７０）と、前記繰り返し設定手段によって設定された複数の計算対象ノードを繋ぐ両天秤ルート（Ｓ１ａ＋Ｓ１ｂ）を前記第１の地点に到達する推奨ルートとするルート決定手段（１１１〜１１９、１８０、１９０、１９３、１９５）と、を有することを特徴とする推奨ルート探索装置である。
【０００９】
このようになっていることで、推奨ルートは、第１の地点に近づきながらも、第２の地点からもなるべく遠ざからないようになっている。したがって、推奨ルート上を移動中に何らかの理由で第２の地点に向かうことになったとしても、出発地から第２の地点までのルートが従来よりも短くなる。
【００１０】
また、請求項２に記載の発明は、地点のペア（Ｇ１、Ｇ２）および優先順位の入力を受け付けることで、第１の地点（Ｇ１）と前記第１の地点よりも優先順位の低い第２の地点（Ｇ２）とを決定する地点決定手段（１１０）と、出発地（Ｓ）から、前記第２の地点に到達せず、前記第１の地点に到達する両天秤ルート（Ｓ１ａ＋Ｓ１ｂ）を推奨ルートとする両天秤ルート探索手段（１２０〜１９０）と、前記第１の地点が入力されて、前記第１の地点よりも先に到達する可能性のある地点として前記第２の地点が入力されない場合に、前記出発地から前記第１の地点に到達する通常ルート（Ｌ１ａ＋Ｌ１ｂ）を推奨ルートとする通常ルート探索手段と、を備え、前記両天秤ルートは、両端部（Ｓ、Ｇ１）以外が、前記通常ルートに比べて、前記第２の地点寄りに位置していることを特徴とする推奨ルート探索装置である。
【００１１】
このようになっていることで、推奨ルートは、通常ルートに比べ、第２の地点からなるべく遠ざからないようになっている。したがって、推奨ルート上を移動中に何らかの理由で第２の地点に向かうことになったとしても、出発地から第２の地点までのルートが従来よりも短くなる。
【００１２】
また、請求項５、６に記載の発明は、それぞれ、請求項１、２に記載の発明のカテゴリをプログラムにしたものである。
【００１３】
なお、上記および特許請求の範囲における括弧内の符号は、特許請求の範囲に記載された用語と後述の実施形態に記載される当該用語を例示する具体物等との対応関係を示すものである。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１実施形態に係る車両用ナビゲーション装置１の構成図である。
【図２】両天秤ルート探索処理のフローチャートである。
【図３】出発地、経由地候補Ｇ１、Ｇ２、目的地Ｇ０の位置関係を例示する図である。
【図４】出発地Ｓ、経由地候補Ｇ１、Ｇ２の間にあるノードおよびリンクの接続構造を例示する図である。
【図５】地点Ｍで到着条件が満たされなくなった場合の推奨ルートの変更を例示する図である。
【図６】第２実施形態において地点Ｍで到着条件が満たされなくなった場合の推奨ルートの変更を例示する図である。
【図７】通常ルート等を例示する図である。
【図８】第３実施形態における両天秤ルート探索処理の追加部分を示す図である。
【図９】ルートＬ０、ＬＬを例示する図である。
【図１０】Ｋ≦Ｋ１の場合を例示する図である。
【図１１】Ｋ１＜Ｋ＜Ｋ２の場合を例示する図である。
【図１２】Ｋ２≦Ｋの場合を例示する図である。
【図１３】第４実施形態における両天秤ルート探索処理の追加部分を示す図である。
【図１４】ルートＳ１ｐ、Ｓ１ｑ、Ｓ２等を例示する図である。
【発明を実施するための形態】
【００１５】
（第１実施形態）
以下、本発明の第１実施形態について説明する。図１に示すように、本実施形態の車両用ナビゲーション装置１（推奨ルート探索装置の一例に相当する）は、車両に搭載され、位置検出器１１、表示装置１２、操作部１３、音声出力装置１４、地図データ取得装置１５、交通情報受信器１６、および制御回路１７を有する。
【００１６】
位置検出器１１は、ＧＰＳ受信機、車速センサ、加速度センサ、ジャイロセンサ等、車両の現在位置を特定するための信号を制御回路１７に出力するセンサである。表示装置１２は、制御回路１７の制御に従って文字や画像をドライバーに表示する液晶ディスプレイ等の装置である。操作部１３は、ドライバーの操作を受け付け、受け付けた操作に応じた信号を制御回路１７に出力する装置である。音声出力装置１４は、車内のドライバーに聞かせるための音声を出力する装置である。地図データ取得部１５は、制御回路１７の制御に従って地図データを取得して制御回路１７に出力する装置である。交通情報受信器１６は、無線通信で車外から交通情報を取得する装置であり、例えば、ＶＩＣＳ受信機（ＶＩＣＳは登録商標）を用いて実現可能である。
【００１７】
制御回路１７は、ＣＰＵ、ＲＡＭ、ＲＯＭ、フラッシュメモリ等を備えた装置（例えばマイクロコントローラ）であって、ＲＯＭまたはフラッシュメモリに記録されたプログラムをＣＰＵが実行することで、各種処理を実現するようになっている。
【００１８】
制御回路１７がプログラムを実行することによって行う具体的な処理としては、現在位置特定処理、地図表示処理、ルート探索処理、ルート案内処理等がある。現在位置特定処理は、位置検出器１１からの信号に基づいて、周知のマップマッチング等の技術を用いて車両の現在位置や向きを特定する処理である。
【００１９】
地図表示処理は、車両の現在位置の周辺等の特定の領域の地図を、画像表示装置１２に表示させる処理である。この際、地図表示のために用いる情報は、地図データ取得部１５を用いて地図データから取得する。
【００２０】
ルート探索処理は、操作部１３からドライバーによる目的地および経由地の入力を受け付け、現在地（出発地）から当該目的地までの最適なルートを算出して表示する処理である。本実施形態のルート探索処理には、後述する両天秤ルート探索処理および通常ルート探索処理の２種類がある。
【００２１】
ルート案内処理は、車両の走行中等において、ルート探索処理によって表示された推奨ルートに沿った走行を案内する処理である。制御回路１７は、ルート案内処理において、推奨ルートと自車位置との位置関係を逐次監視する。そして、推奨ルート上の右左折交差点等の案内ポイントの手前に自車両が到着したときに、右左折等を指示する案内音声を音声出力装置１４に出力させ、当該案内ポイントの拡大図を表示装置１２に表示させることで、推奨ルートに沿った車両の運転を案内する。
【００２２】
以下、両天秤ルート探索処理の詳細について説明する。制御回路１７は、ドライバーが操作部１３に対して所定のルート探索開始操作を行ったことに基づいて、制御回路１７のＲＯＭ等に記録されている所定のプログラムを実行することで、図２の両天秤ルート探索処理を実現する。
【００２３】
そしてまずステップ１１０では、目的地Ｇ０、経由地ペア（地点のペアの一例に相当する）、経由地ペアの優先順位、および、到着条件等の情報を決定する。具体的には、ドライバーが操作部１３を操作して上記情報を入力し、制御回路１７が、入力された当該情報を受け付ける。またステップ１１０では、出発地Ｓも決定する。出発地Ｓについては、位置検出器１１を用いて特定した自車両の現在位置を出発地Ｓとして決定してもよいし、ドライバーが操作部１３を用いて入力した出発地を出発地Ｓとしてもよい。
【００２４】
ここで、経由地ペア、経由地ペアの優先順序、および到着条件について説明する。経由地ペアは、２つの経由地候補（地点）である。この経由地ペアには、経由地候補間で優先順位がある。
【００２５】
例えば、あるドライバーが、図３に示すように、自分の家族と友人を連れて車で三重県の海水浴場Ｓに出かけ、夜まで遊んだ後、海水浴場Ｓを出発地として自宅Ｇ０（愛知県刈谷市内）に戻ろうとする。このときドライバーは、友人が電車で友人宅Ｇ２（名古屋市内）に帰る予定なので、自宅の最寄駅Ｇ１（刈谷駅）まで車で友人を送り、その後自宅Ｇ０に車で向かうことを考える。
【００２６】
しかし、走行中に道路状況が変化する等の原因で、刈谷駅Ｇ１の名古屋行きの終電車に間に合うように友人を送れなくなる可能性もあり、そうなった場合、車で友人宅Ｇ２まで友人を送り、その後自宅Ｇ０に車で向かう可能性もある。ドライバーは、このようなことを想定し、現在位置である出発地（海水浴場）Ｓにおいて、目的地として自宅Ｇ０を入力し、経由地ペアに含まれる２つの経由地候補として、刈谷駅Ｇ１と友人宅Ｇ２を入力する。更に、優先順序として、刈谷駅Ｇ１の方が友人宅Ｇ２よりも優先することを入力し、到着条件として、「刈谷駅Ｇ１に名古屋行きの終電車の時刻までに到着する」という条件を入力する。なお、名古屋行きの終電車の時刻は、例えば操作部１３を用いてドライバーが入力する。
【００２７】
このように、経由地ペアに含まれる２つの経由地候補Ｇ１（第１の地点の一例に相当する）および経由地候補Ｇ２（第２の地点の一例に相当する）は、最終的にはどちらか１つのみが経由地となる２者択一の経由地候補である。また、経由地候補Ｇ１、Ｇ２は、入力された時点では、最終的にどちらが経由地になるかは、明確に確定できない。ただし、一方（刈谷駅Ｇ１）が他方（友人宅Ｇ２）に対して条件（到着条件）付きで優先する関係にある。
【００２８】
続いてステップ１２０では、ステップ１１０で決定した出発地Ｓ（現在の自車両の位置）を最初の計算対象ノードに設定する。続いてステップ１３０では、最新の計算対象ノード（この時点では、最初の計算対象ノードである出発地Ｓ）にリンクを一本だけ介して繋がっており且つ経由地候補Ｇ１（優先順位の高い方の経由地候補）に近づく全ノードを、地図データから抽出する。
【００２９】
ここで、あるノードが経由地候補Ｇ１に近づくか否かは、最新の計算対象ノードから経由地候補Ｇ１までの直線距離をＤ１とし、当該ノードから経由地候補Ｇ１までの直線距離をＤ２としたとき、Ｄ１とＤ２の関係がＤ１＞Ｄ２となるか否かで判定する。あるノードが経由地候補Ｇ１に近づくということは、当該ノードが最新の計算対象ノードよりも経由地候補Ｇ１に近づくことをいう。
【００３０】
例えば、簡単のため、出発地Ｓ、経由地候補Ｇ１、経由地候補Ｇ２の間にあるノードＢ０〜Ｂ３、Ａ１、Ａ２およびリンク（ノード間の直線で表す）の接続構造が、図４のようになっていたとする。各リンクの長さは、図に記載した通りである。この場合、本時点においては、最新の計算対象ノードＳにリンクを一本だけ介して繋がっているノードは、Ｂ０、Ｂ１、Ｂ２、Ｂ３である。そして、これらのノードＢ０、Ｂ１、Ｂ２、Ｂ３のうち、経由地候補Ｇ１に近づくノードは、ノードＢ０を除くノードＢ１、Ｂ２、Ｂ３となる。ノードＢ０については、経由地候補Ｇ１から遠ざかるノードである。したがって、本時点のステップ１３０では、ノードＢ１、Ｂ２、Ｂ３が抽出される。
【００３１】
続いてステップ１４０では、直前のステップ１３０で抽出したノードの中に経由地候補Ｇ１が含まれるか否かを判定する。本時点のステップ１４０では、直前に抽出したノードＢ１、Ｂ２、Ｂ３に経由地候補Ｇ１が含まれていないので、含まれていないと判定してステップ１５０に進む。
【００３２】
ステップ１５０では、直前のステップ１３０で抽出したノードの各々から、経由地候補Ｇ１への最短のルートおよび経由地候補Ｇ２への最短のルートを算出し、算出した各ルートの長さを算出する。
【００３３】
本時点のステップ１５０では、ノードＢ１からノードＧ１までの最短のルートの長さが８ｋｍであると計算され、ノードＢ１からノードＧ２までの最短のルートの長さが１１ｋｍであると計算される。また、ノードＢ２からノードＧ１までの最短のルートの長さが１１ｋｍであると計算され、ノードＢ２からノードＧ２までの最短のルートの長さが９ｋｍであると計算される。また、ノードＢ３からノードＧ１までの最短のルートの長さが１４ｋｍであると計算され、ノードＢ３からノードＧ２までの最短のルートの長さが１１ｋｍであると計算される。
【００３４】
続いてステップ１６０では、直前のステップ１５０の計算結果に基づいて、直前のステップ１３０で抽出したノードの各々について、ノードＧ１までの最短ルートの長さとノードＧ２までの最短ルートの長さの差分の絶対値を算出する。更にステップ１６０では、直前のステップ１３０で抽出したノードのうち、上記のように算出した絶対値が最小となるノードを選択する。
【００３５】
本時点のステップ１６０では、ノードＢ１におけるノードＧ１までの最短ルートの長さとノードＧ２までの最短ルートの長さの差分の絶対値は｜８ｋｍ−１１ｋｍ｜＝３ｋｍと計算される。また、ノードＢ２におけるノードＧ１までの最短ルートの長さとノードＧ２までの最短ルートの長さの差分の絶対値は｜１１ｋｍ−９ｋｍ｜＝２ｋｍと計算される。また、ノードＢ３におけるノードＧ１までの最短ルートの長さとノードＧ２までの最短ルートの長さの差分の絶対値は｜１４ｋｍ−１１ｋｍ｜＝３ｋｍと計算される。この結果、制御回路１７は、算出した絶対値が最小となるノードＢ２を選択する。
【００３６】
続いてステップ１７０では、直前のステップ１６０で選択したノードを新しい計算対象ノードに設定する。本時点のステップ１７０では、ノードＢ２を新しい計算対象とする。
【００３７】
ステップ１７０に続いては、ステップ１３０に戻り、既に説明した通り、最新の計算対象ノードにリンクを一本だけ介して繋がっており且つ経由地候補Ｇ１に近づく全ノードを、地図データから抽出する。
【００３８】
本時点では、最新の計算対象ノードは、直前のステップ１７０で新たに設定されたノードＢ２である。このノードＢ２にリンクを一本だけ介して繋がっているノードは、ノードＳ、Ｂ１、Ｂ３、Ａ１、Ａ２であり、それらのうち、経由地候補Ｇ１に近づくノードは、ノードＡ１、Ａ２のみである。したがって、ノードＡ１、Ａ２が抽出される。
【００３９】
続いてステップ１４０では、既に説明した通り、直前のステップ１３０で抽出したノードの中に経由地候補Ｇ１が含まれるか否かを判定する。本時点では、含まれていない（ノードＡ１、Ａ２しかない）と判定し、ステップ１５０に進む。
【００４０】
ステップ１５０では、既に説明した通り、直前のステップ１３０で抽出したノードの各々から、経由地候補Ｇ１への最短のルートおよび経由地候補Ｇ２への最短のルートを算出し、算出した各ルートの長さを算出する。
【００４１】
本時点のステップ１５０では、ノードＡ１からノードＧ１までの最短のルートの長さが４ｋｍであると計算され、ノードＡ１からノードＧ２までの最短のルートの長さが５ｋｍであると計算される。また、ノードＡ２からノードＧ１までの最短のルートの長さが６ｋｍであると計算され、ノードＡ２からノードＧ２までの最短のルートの長さが３ｋｍであると計算される。
【００４２】
続いてステップ１６０では、既に説明した通り、直前のステップ１５０の計算結果に基づいて、直前のステップ１３０で抽出したノードの各々について、ノードＧ１、Ｇ２までの最短ルートの長さの差分の絶対値を算出し、絶対値が最小となるノードを選択する。
【００４３】
本時点のステップ１６０では、ノードＡ１におけるノードＧ１までの最短ルートの長さとノードＧ２までの最短ルートの長さの差分の絶対値は｜４ｋｍ−５ｋｍ｜＝１ｋｍと計算される。また、ノードＡ２におけるノードＧ１までの最短ルートの長さとノードＧ２までの最短ルートの長さの差分の絶対値は｜６ｋｍ−３ｋｍ｜＝３ｋｍと計算される。
【００４４】
続いてステップ１７０では、既に説明した通り、直前のステップ１６０で選択したノードを新しい計算対象ノードに設定する。本時点のステップ１７０では、ノードＡ１を新しい計算対象とする。
【００４５】
ステップ１７０に続いては、ステップ１３０に戻り、既に説明した通り、最新の計算対象ノードにリンクを一本だけ介して繋がっており且つ経由地候補Ｇ１に近づく全ノードを、地図データから抽出する。
【００４６】
本時点では、最新の計算対象ノードは、直前のステップ１７０で新たに設定されたノードＡ１である。このノードＡ１にリンクを一本だけ介して繋がっているノードは、ノードＢ１、Ｂ２、Ａ２、Ｇ１、Ｇ２であり、それらのうち、経由地候補Ｇ１に近づくノードは、ノードＧ１のみである。したがって、ノードＧ１が抽出される。
【００４７】
続いてステップ１４０では、既に説明した通り、直前のステップ１３０で抽出したノードの中に経由地候補Ｇ１が含まれるか否かを判定する。本時点では、含まれていると判定し、ステップ１８０に進む。
【００４８】
ステップ１８０では、ステップ１１０を実行して以降に設定されたすべての計算対象ノードＳ、Ｂ２、Ａ１、および、経由地候補Ｇ１を、この順に、１本のリンクのみを隣り合う２つのノード間に入れて繋ぐルートを作成する。そして、作成したルートを、出発地Ｓから経由地候補Ｇ１までの推奨ルートとする。
【００４９】
続いてステップ１９０では、経由地候補Ｇ１から目的地Ｇ０までの推奨ルートを算出する。経由地候補Ｇ１から目的地Ｇ０までの推奨ルートの算出方法は、例えば、Ｇ１からＧ０までの移動距離が最短となるようなルートを選択してもよいし、Ｇ１からＧ０までの移動時間が最短となるようなルートを選択してもよい。より広く言えば、Ｇ１からＧ０までの経路コストが最小となるようなルートを選択してもよい。
【００５０】
なお、ルートの経路コストは、例えば、ルートに含まれる各リンクの長さ、リンク旅行時間、幅員等に応じてあらかじめ定められている。例えば、ルートの経路コストは、当該ルートの長さに比例してもよいし、当該ルートの移動時間（旅行時間）に比例してもよい。以下で説明する経路コストについても同じである。
【００５１】
なお、Ｇ１からＧ０までの推奨ルートの算出結果は、もう１つの経由地候補Ｇ２の位置に影響されない。
【００５２】
ステップ１８０で得られた出発地Ｓから経由地候補Ｇ１までの推奨ルートと、ステップ１９０で得られた経由地候補Ｇ１から目的地Ｇ０までの推奨ルートと、を繋げたルートが、出発地Ｓから目的地Ｇ０までの推奨ルートとなる。
【００５３】
このように、制御回路１７は、出発地Ｓから経由地候補Ｇ１までの推奨ルートを算出するために、最新の計算対象ノードにリンクを１本だけ介して接続すると共に経由地候補Ｇ１に近づくノードを１つ以上抽出する（ステップ１３０）。そして、抽出したノードから経由地候補Ｇ１までの距離と経由地候補Ｇ２までの距離の差分の絶対値が最も小さいノードＢ２、Ａ１を新しい計算対象ノードに設定する（ステップ１５０〜１７０）。
【００５４】
なお、ステップ１３０では、最新の計算対象ノードにリンクを一本だけ介して繋がっており且つ経由地候補Ｇ１に近づくノードが存在する場合は、上述の通りの作動でよいが、そのようなノードが存在しない場合もあり得る。つまり、最新の計算対象ノードにリンクを一本だけ介して繋がっているノードの中に、経由地候補Ｇ１に近づくノードが存在しない場合があり得る。そのような場合、制御回路１７は、最新の計算対象ノードにリンクを一本だけ介して繋がっているノードのうち、経由地候補Ｇ１までの直線距離が最短の経路のみを抽出するようになっていてもよい。
【００５５】
制御回路１７は、このようなステップ１３０、１５０〜１７０の処理を、抽出したノード中に経由地候補Ｇ１が含まれるまで繰り返す。この繰り返しの回数は、図４のような簡単な例では２回であったが、出発地Ｓ、経由地候補Ｇ１、Ｇ２の間に多数（例えば数十個から数百個）のノードがある場合には、もっと多数回繰り返すことになる。そして、抽出したノード中に経由地候補Ｇ１が含まれた時点で（ステップ１４０）、それまでの計算対象ノードおよび経由地候補Ｇ１を順に繋げたルートを推奨ルートとする（ステップ１８０）。
【００５６】
このようにして算出された出発地Ｓから経由地候補Ｇ１までの推奨ルートの特徴は、経由地候補Ｇ２を通過しないルートであるにもかかわらず、経由地候補Ｇ２の位置に構成が大きく影響されることである。つまり、出発地Ｓから経由地候補Ｇ１までの推奨ルートは、経由地候補Ｇ２を通過しないにもかかわらず、経由地候補Ｇ１に近づく範囲内でできるだけ経由地候補Ｇ１、Ｇ２までの距離差（または時間差）の絶対値が小さくなるように、算出されている。その意味で、出発地Ｓから経由地候補Ｇ１までの推奨ルートは経由地候補Ｇ１、Ｇ２を両天秤にかけた両天秤ルートである。
【００５７】
ステップ１９０に続いては、ステップ２１０で、到着条件を満足するか否かを判定する。この到着条件は、ステップ１１０でドライバーによって入力された到着条件である。したがって、制御回路１７は、現在位置から推奨ルートを通って経由地候補Ｇ１に到達する場合の経由地候補Ｇ１への到達時刻を、推奨ルート中のリンクのリンク旅行時間等を用いた周知の方法で算出する。そして、到着条件として入力された入力された終電時刻から、乗り換えにかかる所定時間（例えば１０分）だけ戻した時刻を、基準時刻とする。そして、上記到達時刻が上記基準時刻よりも前か否かで、到着条件を満足するか否かを判定する。
【００５８】
上記到達時刻が上記基準時刻よりも前である場合は、現在の推奨ルートを維持したままステップ２２０に進み、道路状況等の変化を確認する。ここで、変化を確認する道路状況等は、経由地候補Ｇ１への到着時刻（つまり到着条件を満たすか否か）に影響する情報であり、例えば、リンク旅行時間の変動に影響する渋滞情報、現在時刻、自車両の現在位置等である。なお、渋滞情報は、交通情報受信器１６を用いて最新の情報を取得することができる。ステップ２２０に続いては、ステップ２１０に戻る。このように、制御回路１７は、両天秤ルート探索処理において、到着条件を満足すると判定し続ける限り、ステップ２１０、２２０のループ処理を一定周期で繰り返す。
【００５９】
ここで、上記のように出発地Ｓから目的地Ｇ０までの推奨ルートが決定した後に、ドライバーが車両を発進させると、制御回路１７は、両天秤ルート探索処理を続けながら、ルート案内処理も同時並行的に実行する。このルート案内処理において制御回路１７は、既に説明した通りの方法で、現在の推奨ルートに沿った走行を案内する。これにより、ドライバーは、推奨ルートに沿った案内を受けながら走行することができる。
【００６０】
その後も、制御回路１７が両天秤ルート探索処理のステップ２１０で到着条件を満足すると判定し続けていれば、推奨ルートが変化しないまま、車両が経由地候補Ｇ１に到着し、友人が車両から降りる。そしてその後、推奨ルートに沿って経由地候補Ｇ１から目的地Ｇ０（自宅）まで車両が走行し、目的地Ｇ０に到着した時点で、制御回路１７がルート案内処理を終了する。
【００６１】
しかし、図５に例示するように、車両が出発地Ｓから経由地候補Ｇ１を経て目的地Ｇ０に向かう推奨ルートＳ１＋Ｓ２のうち、ルートＳ１ａの部分までを走行した時点で、上記到達時刻が上記基準時刻以後になったとする。この場合、制御回路１７はその時点で、両天秤ルート探索処理のステップ２１０において、到着条件を満足しないと判定してステップ２３０に進み、推奨ルートを変更する。
【００６２】
具体的には、今までの出発地Ｓから目的地Ｇ０までの推奨ルートが、経由地候補Ｇ１を通る両天秤ルートＳ１ａ＋Ｓ１ｂ＋Ｓ２であったのに対し、変更後の推奨ルートはルートＳｘ＋Ｓｙとする。つまり、変更後の推奨ルートは、現在地Ｍおよび経由地候補Ｇ２を通り、かつ経由地候補Ｇ１を通らず、目的地Ｇ０に至るルートとする。このような新たな推奨ルートＳｘ＋Ｓｙの算出方法は、ＭからＧ２までの移動距離が最短となると共にＧ２からＧ０までの移動距離が最短となるルートを選択してもよい。あるいは、ＭからＧ２までの移動時間が最短となると共にＧ２からＧ０までの移動時間が最短となるルートを選択してもよい。より広く言えば、ＭからＧ２までの経路コストが最小となると共にＧ２からＧ０までの経路コストが最小となるようなルートを選択してもよい。この場合、ルートの経路コストは、例えば、ルートに含まれる各リンクの長さ、リンク旅行時間、幅員等に応じてあらかじめ定められていてもよい。なお、ＭからＧ２を通ってＧ０に至る推奨ルートの算出結果は、もう１つの経由地候補Ｇ１の位置に影響されない。ステップ２３０の後、両天秤ルート探索処理は終了する。
【００６３】
このように推奨ルートが変更されると、制御回路１７は、ルート案内処理において、既に説明した通りの方法で、変更後の推奨ルートに沿った走行を案内する。これにより、ドライバーは、変更後の推奨ルートに沿った案内を受けながら走行することができる。このような場合、車両は、ルートＳ１ａ、Ｓｘ、Ｓｙをこの順に通ることになる。
【００６４】
仮に制御回路１７が上記のような両天秤ルートを算出せず、単に出発地Ｓから経由地候補Ｇ１までの経路コストが最小となると共に経由地候補Ｇ１から目的地Ｇ０までの経路コストが最小となるような通常ルートを推奨ルートにしたとする。なお、この通常ルートの算出結果は、経由地候補Ｇ２の位置に影響されない。このような通常ルートは、図３のＬ１ａ、Ｌ１ｂ、Ｌ２を繋げたルートになる。
【００６５】
実際、本実施形態の制御回路１７も、図２の両天秤ルート探索処理とは別の通常ルート探索処理において、出発地と、経由地Ｇ１と目的地Ｇ０の３つがドライバーによって入力され、経由地候補Ｇ２が入力されない場合は、上述の通常ルートを算出して推奨ルートとする。なお、制御回路１７が、この通常ルート探索処理を実行することで、通常ルート探索手段の一例として機能する。
【００６６】
このような通常ルート中のルートＬ１ａを車両が走行した時点で、ドライバーが経由地を経由地候補Ｇ１から経由地候補Ｇ２に変更して、車両のルートをＬｘとＬｙを繋げたルートに変更したとする。なお、ルートＬ１ａの長さとルートＳ１ａの長さは同じであるとする。この場合、出発地から地点Ｇ２へのルート（Ｌ１ａとＬｘを繋げたルート）の長さは、図５の出発地から地点Ｇ２へのルート（Ｓ１ａとＳｘを繋げたルート）の長さに比べて、長くなってしまう。つまり、大回りなルートとなってしまう。
【００６７】
このようになるのは、図５の両天秤ルートＳ１ａ＋Ｓ１ｂの両端部Ｓ、Ｇ１以外の全体が、経由地候補Ｇ２に到達しないにも関わらず、図３の通常ルートＬ１ａ＋Ｌ１ｂに比べて、経由地候補Ｇ２寄りに位置しているからである。
【００６８】
このようになっていることで、本実施形態の推奨ルートである両天秤ルートＳ１ａ＋Ｓ１ｂ＋Ｓ２は、経由地候補Ｇ１に近づきながらも、経由地候補Ｇ２からもなるべく遠ざからないようになっている。また、通常ルートＬ１ａ＋Ｌ１ｂに比べても、経由地候補Ｇ２からなるべく遠ざからないようになっている。したがって、推奨ルート上を移動中に、到着条件を満たした上で経由地候補Ｇ１に到着することができなくなり、経由地候補Ｇ２に向かうことになったとしても、出発地Ｓから経由地候補Ｇ２までのルートが従来よりも短くなる。
【００６９】
（第２実施形態）
次に、本発明の第２実施形態について説明する。本実施形態は、第１実施形態に対して、以下のような変更を加えたものである。本実施形態に係る車両用ナビゲーション装置１のハードウェア構成は、第１実施形態と同じである。
【００７０】
また、本実施形態の制御回路１７は、第１実施形態と同様、図２に示す両天秤ルート探索処理を行うが、経由地ペアの取り扱いが第１実施形態とは異なっており、推奨ルートは、経由地ペアに含まれる２つの経由地候補の両方を通過するように計算される。このために、ステップ１１０、ステップ１９０、ステップ２１０、ステップ２３０の内容が、第１実施形態とは異なっている。
【００７１】
以下、第１実施形態とは異なる部分を中心に説明する。制御回路１７は、まずステップ１１０で、目的地Ｇ０、経由地ペア（地点のペアの一例に相当する）、経由地ペアの優先順位、および、到着条件等の情報を決定する。具体的には、ドライバーが操作部１３を操作して、経由地ペア、到着条件を入力する。また、経由地ペアの優先順位については、ドライバーが操作部１３を操作して入力してもよいし、入力しなくてもよい。そして、制御回路１７が、入力された情報を受け付ける。またステップ１１０では、制御回路１７は、出発地Ｓも第１実施形態と同様に決定する。
【００７２】
なお、経由地ペアの優先順位については、第１実施形態と同じ方法で、目的地Ｇ０、経由地ペア（地点のペアの一例に相当する）、経由地ペアの優先順位、および、到着条件等の情報を決定する。
【００７３】
本実施形態においては、例えば、あるドライバーが、２人の友人を各々の居宅まで送ろうとするとき、ドライバーは、車で先に着きそうな友人宅Ｇ１にまず行き、その後に友人宅Ｇ２に行き、その後に自宅Ｇ０に向かうことを考える。
【００７４】
しかし、走行中に道路状況が変化する等の原因で、友人宅Ｇ１に向かっている途中で、友人宅Ｇ２に向かった方が先に着く状況になる可能性もある。ドライバーは、このようなことを想定し、現在位置である出発地Ｓにおいて、目的地として自宅Ｇ０を入力し、経由地ペアに含まれる２つの経由地候補として、友人宅Ｇ１と友人宅Ｇ２を入力する。更に、優先順序として、友人宅Ｇ１の方が友人宅Ｇ２よりも優先することを入力し、到着条件として、「友人宅Ｇ１に向かった方が友人宅Ｇ２に向かった場合よりも早く友人宅に着く」という条件を入力する。
【００７５】
このように、経由地ペアに含まれる２つの経由地候補Ｇ１（第１の地点の一例に相当する）および経由地候補Ｇ２（第２の地点の一例に相当する）は、両方とも経由地となるが、到着順序が入れ替わる可能性がある。また、一方（友人宅Ｇ１）が他方（友人宅Ｇ２）に対して条件（到着条件）付きで優先する関係にある。
【００７６】
ステップ１２０、１３０、１４０、１５０、１６０、１７０、１８０の内容については、第１実施形態と同じである。したがって、第１実施形態と同様に、ステップ１２０〜ステップ１８０の処理により、出発地Ｓから経由地候補Ｇ１までの両天秤ルートが、出発地Ｓから経由地候補Ｇ１までの推奨ルートとなる。
【００７７】
続いてステップ１９０では、制御回路１７は、経由地候補Ｇ１から経由地候補Ｇ２を通って目的地Ｇ０に到着する推奨ルートを算出する。経由地候補Ｇ１から経由地候補Ｇ２までの推奨ルートの算出方法は、第１実施形態のステップ１９０における経由地候補Ｇ１から目的地Ｇ０までの推奨ルートの算出方法と同様である。つまり、Ｇ１からＧ２までの経路コスト（例えば移動時間）が最小となるようなルートを選択する。経由地候補Ｇ２から目的地Ｇ０までの推奨ルートの算出方法は、第１実施形態のステップ１９０における経由地候補Ｇ１から目的地Ｇ０までの推奨ルートの算出方法と同様である。つまり、Ｇ２からＧ０までの経路コスト（例えば移動時間）が最小となるようなルートを選択する。
【００７８】
そして、ステップ１８０で得られた出発地Ｓから経由地候補Ｇ１までの推奨ルートと、ステップ１９０で得られた経由地候補Ｇ１から経由地候補Ｇ２を通って目的地Ｇ０に到着する推奨ルートと、を繋げたルートが、出発地Ｓから目的地Ｇ０までの推奨ルートとなる。このようにして算出された出発地Ｓから経由地候補Ｇ１までの推奨ルートの特徴は、第１実施形態と同じである。
【００７９】
続くステップ２１０では、制御回路１７は、到着条件を満足するか否かを判定する。この到着条件は、第１実施形態と同様、ステップ１１０でドライバーによって入力された到着条件であるが、その具体的内容は第１実施形態とは異なり、「友人宅Ｇ１に向かった方が友人宅Ｇ２に向かった場合よりも早く友人宅に着く」である。
【００８０】
したがって、制御回路１７は、ステップ２１０では、現在位置から経由地候補Ｇ１までの移動時間が最低となるルートを算出すると共に当該ルートの移動時間Ｈ１を特定する。また、現在位置から経由地候補Ｇ２までの移動時間が最低となるルートを算出すると共に当該ルートの移動時間Ｈ２を特定する。そして、移動時間Ｈ１と移動時間Ｈ２とが、Ｈ１＜Ｈ２の関係にあるか否かで、到着条件を満足するか否かを判定する。
【００８１】
到着条件を満足すると判定した場合は、ステップ２２０に進み、１実施形態と同様に、道路状況等の変化を確認し、ステップ２１０に戻る。ここで、変化を確認する道路状況等は、上述の移動時間Ｈ１、Ｈ２（つまり到着条件を満たすか否か）に影響する情報であり、例えば、リンク旅行時間の変動に影響する渋滞情報、現在時刻、自車両の現在位置等である。このように、制御回路１７は、両天秤ルート探索処理において、到着条件を満足すると判定し続ける限り、ステップ２１０、２２０のループ処理を一定周期で繰り返す。
【００８２】
その後も、制御回路１７が両天秤ルート探索処理のステップ２１０で到着条件を満足すると判定し続けていれば、推奨ルートが変化しないまま、車両が経由地候補Ｇ１に到着し、友人Ｆ１が車両から降りる。そしてその後、推奨ルートに沿って経由地候補Ｇ１から経由地候補Ｇ２まで車両が走行し、経由地候補Ｇ２に到着すると友人Ｆ２が車両から降りる。更にその後、推奨ルートに沿って経由地候補Ｇ２から目的地Ｇ０（自宅）まで車両が走行し、目的地Ｇ０に到着した時点で、制御回路１７がルート案内処理を終了する。
【００８３】
しかし、図６に例示するように、車両が出発地Ｓから経由地候補Ｇ１、Ｇ２をこの順に経て目的地Ｇ０に向かう推奨ルートＳ１１ａ＋Ｓ１１ｂ＋Ｓ１２＋Ｓ１３のうち、ルートＳ１ａの部分までを走行した時点で、友人宅Ｇ２に向かった方が友人宅Ｇ１に向かった場合よりも早く友人宅に着く状況になったとする。この場合、制御回路１７はその時点で、両天秤ルート探索処理のステップ２１０において、到着条件を満足しないと判定してステップ２３０に進み、推奨ルートを変更する。
【００８４】
具体的には、今までの出発地Ｓから目的地Ｇ０までの推奨ルートが、経由地候補Ｇ１を通る両天秤ルートＳ１１ａ＋Ｓ１１ｂ＋Ｓ１２＋Ｓ１３であったのに対し、変更後の推奨ルートはルートＳ２１＋Ｓ２２＋Ｓ２３とする。つまり、変更後の推奨ルートは、現在地Ｍおよび経由地候補Ｇ２、Ｇ１をこの順に通り、目的地Ｇ０に至るルートとする。
【００８５】
このような新たな推奨ルートＳ２１＋Ｓ２２＋Ｓ２３の算出方法は、ＭからＧ２までの移動距離が最短となり、Ｇ２からＧ１までの移動距離が最短となると共に、Ｇ１からＧ０までの移動距離が最短となるルートを選択してもよい。あるいは、ＭからＧ２までの移動時間が最短となり、Ｇ２からＧ１までの移動時間が最短となると共に、Ｇ１からＧ０までの移動時間が最短となるルートを選択してもよい。より広く言えば、ＭからＧ２までの経路コストが最小となり、Ｇ２からＧ１までの経路コストが最小となると共にＧ１からＧ０までの経路コストが最小となるようなルートを選択してもよい。この場合、ルートの経路コストは、例えば、ルートに含まれる各リンクの長さ、リンク旅行時間、幅員等に応じてあらかじめ定められていてもよい。ステップ２３０の後、両天秤ルート探索処理は終了する。
【００８６】
このように推奨ルートが変更されると、制御回路１７は、ルート案内処理において、既に説明した通りの方法で、変更後の推奨ルートに沿った走行を案内する。これにより、ドライバーは、変更後の推奨ルートに沿った案内を受けながら走行することができる。このような場合、車両は、ルートＳ２１、Ｓ２２、Ｓ２３をこの順に通ることになる。
【００８７】
ここで、仮に制御回路１７が上記のような両天秤ルートＳ１１ａ＋Ｓ１１ｂ＋Ｓ１２＋Ｓ１３を算出しなかったとする。そして単に出発地Ｓから経由地候補Ｇ１までの経路コストが最小となり、経由地候補Ｇ１から経由地候補Ｇ２までの経路コストが最小となると共に共に経由地候補Ｇ１から目的地Ｇ０までの経路コストが最小となるような通常ルートを推奨ルートにしたとする。この通常ルート中の出発地Ｓから経由地候補Ｇ１までの経路は、経由地候補Ｇ２の位置に影響されない。このような通常ルートは、図７のＬ１ａ、Ｌ１ｂ、Ｌ１２、Ｌ１３を繋げたルートになる。
【００８８】
実際、本実施形態の制御回路１７も、本実施形態の両天秤ルート探索処理とは別の通常ルート探索処理において、出発地と、経由地Ｇ１と、経由地Ｇ２と、目的地Ｇ０の４つがドライバーによって入力され、到着条件が入力されず、経由地Ｇ１と経由地Ｇ２の到着順が確定させる入力をドライバーが行っている場合は、上述の通常ルートを算出して推奨ルートとする。なお、制御回路１７が、この通常ルート探索処理を実行することで、通常ルート探索手段の一例として機能する。
【００８９】
このような通常ルート中のルートＬ１ａを車両が走行した時点で、ドライバーが最初の経由地を経由地候補Ｇ１から経由地候補Ｇ２に変更して、車両のルートをＬ２１とＬ２２とＬ２３を繋げたルートに変更したとする。なお、ルートＬ１１ａの長さとルートＳ１１ａの長さは同じであるとする。この場合、出発地から地点Ｇ２へのルート（Ｌ１１ａとＬ２１を繋げたルート）の長さは、図６の出発地から地点Ｇ２へのルート（Ｓ１１ａとＳ２１を繋げたルート）の長さに比べて、長くなってしまう。つまり、大回りなルートとなってしまう。
【００９０】
このようになるのは、図６の両天秤ルートＳ１１ａ＋Ｓ１１ｂの両端部Ｓ、Ｇ１以外の全体が、経由地候補Ｇ２に到達しないにも関わらず、図３の通常ルートＬ１１ａ＋Ｌ１１ｂに比べて、経由地候補Ｇ２寄りに位置しているからである。
【００９１】
このようになっていることで、本実施形態の推奨ルートである両天秤ルートＳ１１ａ＋Ｓ１１ｂは、経由地候補Ｇ１に近づきながらも、経由地候補Ｇ２からもなるべく遠ざからないようになっている。また、通常ルートＬ１１ａ＋Ｌ１１ｂに比べても、経由地候補Ｇ２からなるべく遠ざからないようになっている。したがって、推奨ルート上を移動中に、到着条件を満たした上で経由地候補Ｇ１に到着することができなくなり、経由地候補Ｇ２に向かうことになったとしても、出発地Ｓから経由地候補Ｇ２までのルートが従来よりも短くなる。
【００９２】
（第３実施形態）
次に、本発明の第３実施形態について説明する。本実施形態は、第１実施形態に対して、以下のような変更を加えたものである。本実施形態に係る車両用ナビゲーション装置１のハードウェア構成は、第１実施形態と同じである。
【００９３】
また、本実施形態の制御回路１７は、図２の両天秤ルート探索処理に処理を追加した両天秤ルート探索処理を実行することで、第１実施形態で説明した両天秤ルートを算出するか否かを判定するようになっている。そのため、本実施形態では、制御回路１７は、図２のステップ１１０の後に、図８に示す処理を実行するようになっている。それ以外は、第１実施形態と同じである。
【００９４】
以下、図８の処理内容について説明する。制御回路１７は、図２のステップ１１０で、目的地Ｇ０、経由地ペアＧ１、Ｇ２、経由地ペアＧ１、Ｇ２の優先順位、および、到着条件等の情報を決定した後、図８のステップ１１１に進み、ルートＬ０の長さを算出する。
【００９５】
ルートＬ０は、図９に示すルートＬ１とルートＬ２を繋いだルートである。ここで、ルートＬ１は、第１実施形態のルートＬ１ａ＋Ｌ１ｂと同じであり、ルートＬ２は第１実施形態のルートＬ２と同じである。したがって、ルートＬ０は、出発地Ｓから目的地Ｇ０までの通常ルートである。すなわち、ルートＬ０は、単に出発地Ｓから経由地候補Ｇ１までの経路コストが最小となると共に経由地候補Ｇ１から目的地Ｇ０までの経路コストが最小となるようなルートであり、かつ、経由地候補Ｇ２の位置に影響されない。
【００９６】
続いてステップ１１３では、ルートＬ１、ルートＬ３、ルートＬ４を繋いだルートＬＬの長さを算出する。ルートＬ３は、経由地候補Ｇ１から経由地候補Ｇ２までの経路コストが最小となるルートである。ルートＬ４は、経由地候補Ｇ２から経由地候補Ｇ０までの経路コストが最小となるルートであり、経由地候補Ｇ１の位置に影響されない。
【００９７】
続いてステップ１１５では、ルートＬＬの長さをルートＬ０の長さで除算した値Ｋを算出する。続いてステップ１１７では、直前のステップ１１７で算出した値Ｋが所定の下限値Ｋ１より大きく所定の上限値Ｋ２より小さいか否かを判定する。ここで判定される「値Ｋが下限値Ｋ１より大きく上限値Ｋ２より小さい」という条件は、限定条件の一例であるである。下限値Ｋ１および上限値Ｋ２につきましては、例えば、それぞれ１．５および２とする。
【００９８】
値Ｋが下限値Ｋ１より大きく限値Ｋ２より小さい場合、図２のステップ１２０に進んで第１実施形態と同様に出発地Ｓから経由地候補Ｇ１までの両天秤ルートおよび経由地候補Ｇ１から目的地Ｇ０までのルートを繋いで推奨ルートとする。また、値Ｋが下限値Ｋ１以下または限値Ｋ２以上の場合、ステップ１１９に進んで、通常ルートＬ０を推奨ルートとする。
【００９９】
ここで、値Ｋが下限値Ｋ１以下となる例について、図１０を参照して説明する。図１０の例では、出発地Ｓ（現在位置）、経由地候補Ｇ１、Ｇ２および目的地Ｇ０が、この順で概ね直線状に並んでいる。この場合、仮に経由地候補Ｇ１まで移動した後に経由地候補Ｇ２に向かった場合と、最初から経由地候補Ｇ２に向かった場合とでは、走行距離は大きく変わらない。このような場合、例えば値Ｋは下限値Ｋ１より小さくなる。このような場合、ルートＬ０の長さとルートＬＬの長さの違いが大きくないので、両天秤ルートを推奨ルートとすることの利益が少ないので、両天秤ルートを算出しない。
【０１００】
また、値Ｋが下限値Ｋ１より大きく上限値Ｋ２よりも小さくなる例について、図１１を参照して説明する。図１１の例では、経由地候補Ｇ１と経由地候補Ｇ２がある程度離れており、出発地Ｓから見た経由地候補Ｇ１の方向と経由地候補Ｇ２の方向がある程度ずれている。このような場合は、値Ｋが下限値Ｋ１より大きく上限値Ｋ２よりも小さくなり、その結果、両天秤ルートを算出して推奨ルートの一部とする。
【０１０１】
また、値Ｋが上限値Ｋ２以上となる例について、図１２を参照して説明する。図１２の例では、経由地候補Ｇ２が経由地候補Ｇ１からも目的地Ｇ０からもかなり離れている。このような場合、例えば値Ｋは上限値Ｋ２より大きくなる。このような場合、ルートＬＬの長さが過大になり、その結果、ルートＬ０の長さとの違いが非常に大きい。このような場合、両天秤ルートを推奨ルートの一部とすると、最終的に経由地候補Ｇ１を通って経由地候補Ｇ２を通る必要がない場合には、走行距離が無駄に大きくなってしまうので、両天秤ルートを算出しない。
【０１０２】
（第４実施形態）
次に、本発明の第４実施形態について説明する。本実施形態は、第１、第３実施形態に対して、以下のような変更を加えたものである。本実施形態に係る車両用ナビゲーション装置１のハードウェア構成は、第１実施形態と同じである。
【０１０３】
また、本実施形態の制御回路１７は、図２の両天秤ルート探索処理に処理を追加した両天秤ルート探索処理を実行することで、第１、第３実施形態で説明した両天秤ルートを算出するか否かを判定するようになっている。そのため、本実施形態では、制御回路１７は、図２のステップ１１０の後に、図８に示す処理を実行するようになっている。それ以外は、第１実施形態と同じである。
【０１０４】
以下、図１１の処理内容について説明する。制御回路１７は、図２のステップ１９０の後、図１３のステップ１９３に進み、限定条件を満たすか否かを判定する。限定条件は、車両の累計走行距離を○○ｋｍ以内にしたい、最終目的地点に○○時までに帰りたい等のドライバーの要求に応じた条件であり、例えば、両天秤ルート探索処理の開始時に、ドライバーが操作部１３を用いて入力する。
【０１０５】
ここで、限定条件の第１の例について説明する。例えば、ドライバーが、友人を遠くまでは送りたくないと思っている場合、ドライバーは、操作部１３に対して、限定条件として、（Ｓ１ｐ＋Ｓ２＋Ｌ４）／Ｌ０＜Ｋ３という条件、および、基準値Ｋ３の具体的な値を入力する。
【０１０６】
この場合、制御回路１７は、ステップ１９３では、ルートＳ１ｐ、ルートＳ２、ルートＬ４を繋いだルートの長さを、ルートＬ０の長さで除算した値が、基準値Ｋ３（例えば２）以下であるか否かで、限定条件を満たすか否かを判定する。
【０１０７】
ここで、ルートＬ０は、図１４に示すルートＬ１とルートＬ２を繋いだルートである。ここで、ルートＬ１は、第１実施形態のルートＬ１ａ＋Ｌ１ｂと同じであり、ルートＬ２は第１実施形態のルートＬ２と同じである。したがって、ルートＬ０は、出発地Ｓから目的地Ｇ０までの通常ルートである。また、ルートＬ４は、経由地候補Ｇ２から経由地候補Ｇ０までの経路コストが最小となるルートである。
【０１０８】
また、ルートＳ１ｐは、直前のステップ１８０で出発地Ｓから経由地候補Ｇ１までの推奨ルートとされた両天秤ルートのうち、出発地Ｓから中継点Ｍまでのルートであり、ルートＳ１ｑは、当該両天秤ルートのうち、中継点Ｍから経由地候補Ｇ１までのルートである。また、ルートＳ２は、中継点Ｍから経由地候補Ｇ２までの経路コストが最小となるルートであり、経由地候補Ｇ１の位置には影響しない。
【０１０９】
ここで、両天秤ルートＳ１ｐ＋Ｓ１ｑ上の中継点Ｍの位置については、制御回路１７が自動的に決定する。例えば制御回路１７は、両天秤ルートＳ１ｐ＋Ｓ１ｑに沿って出発地Ｓと経由地候補Ｇ１から等距離にある地点を中継点Ｍとしてもよい。中継点Ｍは、車両が両天秤ルートから外れて経由地候補Ｇ２に向かう可能性がある点である。
【０１１０】
このような関係になっているので、例えば基準値Ｋ３として２が入力された場合は、ドライバーは、自宅Ｇ０までまっすぐ（最もコストの低いルートで）帰ることに比べ、２倍以上の距離は走りたくないと考えていることになる。
【０１１１】
また、限定条件の第２の例について説明する。例えば、ドライバーが、現在時刻からＴ時間以内に自宅Ｇ０に到着したいと思っている場合、ドライバーは、操作部１３に対して、限定条件として、（Ｓ１ｐ＋Ｓ２＋Ｌ４）／Ｖ＜Ｔという条件、および、基準時間Ｔの具体的な値を入力する。
【０１１２】
この場合、制御回路１７は、ステップ１９３では、ルートＳ１ｐ、ルートＳ２、ルートＬ４を繋いだルートの長さを、平均車速Ｖで除算した値が、基準時間Ｔ（例えば２時間）以下であるか否かで、限定条件を満たすか否かを判定する。なお、平均車速は、一定値（例えば時速３０ｋｍ）でもよいし、ドライバーが操作部１３を用いて入力するようになっていてもよい。
【０１１３】
ステップ１９３で限定条件を満たすと判定した場合は、ステップ１８０、１９０で設定された現在の推奨ルート（両天秤ルートを含んでいる）を維持したまま、図２のステップ２１０に進み、それ以降の作動は、第１、第３実施形態と同じである。
【０１１４】
ステップ１９３で限定条件を満たさないと判定した場合は、ステップ１９５に進み、現在の推奨ルートに代えて、通常ルートＬ０を推奨ルートとし、図２のステップ２１０に進む。ステップ２１０以降の制御回路１７の処理内容は、既に第１実施形態で説明した通りである。すなわち、到着条件が満足する限り、通常ルートＬ０が推奨ルートとして案内され、到着条件が満足しなくなると、推奨ルートが、現在地および経由地候補Ｇ２を通り、かつ経由地候補Ｇ１を通らず、目的地Ｇ０に至るルートに変更される。
【０１１５】
なお、上記の第２の例の限定条件のように、限定条件に時間の条件が含まれる場合、制御回路１７は、ステップ１８０で算出した両天秤ルートが限定条件に当てはまるか否かを、すなわち、ステップ１９３で限定条件を満たすと判定したか否かを、表示してもよい。表示方法は、例えば図示しない車載ディスプレイに表示させるようになっていてもよい。
【０１１６】
なお、上記各実施形態において、制御回路１７が、ステップ１１０を実行することで地点決定手段の一例として機能し、ステップ１２０〜１９０を実行することで両天秤ルート探索手段の一例として機能し、ステップ１２０を実行することで初期設定手段の一例として機能し、ステップ１３０〜１７０を実行することで繰り返し設定手段の一例として機能し、ステップ１１１〜１１９、１８０、１９０、１９３、１９５を実行することでルート決定手段の一例として機能する。
【０１１７】
（他の実施形態）
本発明は上記した実施形態に限定されるものではなく、特許請求の範囲に記載した範囲内において適宜変更が可能である。また、上記各実施形態は、互いに無関係なものではなく、組み合わせが明らかに不可な場合を除き、適宜組み合わせが可能である。また、上記各実施形態において、実施形態を構成する要素は、特に必須であると明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。また、上記各実施形態において、実施形態の構成要素の個数、数値、量、範囲等の数値が言及されている場合、特に必須であると明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではない。また、上記各実施形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に特定の形状、位置関係等に限定される場合等を除き、その形状、位置関係等に限定されるものではない。例えば、以下のような変形例も許容される。なお、以下の変形例は、それぞれ独立に、上記実施形態に適用および不適用を選択できる。すなわち、以下の変形例のうち任意の組み合わせを、上記実施形態に適用することができる。
【０１１８】
（変形例１）
例えば、上記各実施形態では、推奨ルート探索装置の一例として、車両に搭載される車両用ナビゲーション装置１が例示されている。しかし、本発明の推奨ルート探索装置は、車両に搭載されていなくともよく、車外のサーバに設置されおり、サーバと通信する端末（例えば車載端末、携帯端末）に対して推奨ルート（両天秤ルート等）を送信するようになっていてもよい。また、本発明の推奨ルート探索装置は、車両用に限らず、例えば、人の歩行用の推奨ルートを算出するものであってもよい。
【０１１９】
（変形例２）
両端部は、端点Ｓ、Ｇ１のみに限られない。端点Ｓに続く１個または複数のリンクおよび１個または複数のノードも両端部に含まれていてもよい。また、端点Ｇ１に続く１個または複数のリンクおよび１個または複数のノードも両端部に含まれていてもよい。
【０１２０】
（変形例３）
また、上記各実施形態の両天秤ルートの算出アルゴリズムは、あくまでも一例であって、他のアルゴリズムを用いて出発地Ｓ０から経由地候補Ｇ１までの両天秤ルートを算出してもよい。例えば、経由地Ｇ１と経由地Ｇ２を繋ぐ直線上にあり、かつ経由地Ｇ１と経由地Ｇ２からの直線距離が同じとなる地点Ｘを選ぶ。そして、出発地Ｓから地点Ｘまで経路コストが最小となるルートＸ１と、地点Ｘから経由地候補Ｇ１まで経路コストが最小となるルートＸ２とを算出する。そして、算出したルートＸ１、Ｘ２を繋いだルートを、両天秤ルートとしてもよい。このような両天秤ルートも、両端部Ｓ、Ｇ１以外は、通常ルートに比べて、経由地候補Ｇ２寄りに位置している。
【符号の説明】
【０１２１】
１                車両用ナビゲーション装置（推奨ルート探索装置）
１７              制御回路
Ｓ                出発地
Ｇ０              目的地
Ｇ１、Ｇ２        経由地候補（第１の地点、第２の地点）
【図１】
2015224921.tif 000003
【図２】
2015224921.tif 000004
【図３】
2015224921.tif 000005
【図４】
2015224921.tif 000006
【図５】
2015224921.tif 000007
【図６】
2015224921.tif 000008
【図７】
2015224921.tif 000009
【図８】
2015224921.tif 000010
【図９】
2015224921.tif 000011
【図１０】
2015224921.tif 000012
【図１１】
2015224921.tif 000013
【図１２】
2015224921.tif 000014
【図１３】
2015224921.tif 000015
【図１４】
2015224921.tif 000016