JP4421052B2 - Map data management method, route search device, and recording medium - Google Patents

Map data management method, route search device, and recording medium Download PDF

Info

Publication number
JP4421052B2
JP4421052B2 JP2000041238A JP2000041238A JP4421052B2 JP 4421052 B2 JP4421052 B2 JP 4421052B2 JP 2000041238 A JP2000041238 A JP 2000041238A JP 2000041238 A JP2000041238 A JP 2000041238A JP 4421052 B2 JP4421052 B2 JP 4421052B2
Authority
JP
Japan
Prior art keywords
point
route
points
destination
evaluation value
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.)
Expired - Fee Related
Application number
JP2000041238A
Other languages
Japanese (ja)
Other versions
JP2001091284A (en
Inventor
真 伏見
芳樹 上山
岳志 柳生
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2000041238A priority Critical patent/JP4421052B2/en
Publication of JP2001091284A publication Critical patent/JP2001091284A/en
Application granted granted Critical
Publication of JP4421052B2 publication Critical patent/JP4421052B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、巡回経路選出方法に関し、より特定的には、複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法に関する。
【0002】
【従来の技術】
周知のごとく、近年、交通管制技術やITS関連技術への社会的関心が高まっている。かかる社会的関心により、目的地までの実用的な経路を自動的に選出する経路探索方法が盛んに研究開発され、既にいろいろな分野で応用されている。その応用例には、車載カーナビゲーションシステム、またはATIS等の交通情報提供システムのセンター側装置がある。これらは、「特開平4−204881号」公報に開示された技術等を使って、ある地点(出発地)から別の地点(目的地)への最適経路を求めている。
【0003】
また、配送管理システム等への応用のため、選択された複数の地点を全て通過する最適経路を求める巡回経路探索技術への要望も高まっている。巡回経路探索技術は、数学的には「巡回セールスマン問題」と呼ばれており、古くから計算量の多い計算困難な問題として知られている。巡回セールスマン問題の完全解を求める方法は確立されておらず、実用的な近似解を求める方法が存在するだけである。近似解を求める方法は、「特開平3−191464号」公報、および「特開平4−57147号」公報に開示されている。
「特開平3−191464号」公報は、各地点の重心からの角度順により初期経路を構成して、一定地点数の範囲で最適化を繰り返す方法を開示している。また、「特開平4−57147号」公報は、順次増加コストの一番小さい地点を追加して初期経路を構成し、地点の並べ替えを行って最適化する方法を開示している。
【0004】
まず、「特開平3−191464号」公報に開示された従来の巡回経路探索方法(以下、第1の巡回経路探索方法と称す)の概略を説明する。第1の巡回経路探索方法では、まず、選択された各地点の重心と、各地点とがなす角度を求めた後に、求められた各角度に基づいて初期経路が構成される。次に、構成された初期経路が一定地点数毎に分割される。次に、分割された領域毎に「深さ優先探索方法」が適用され、当該領域に含まれる地点が、より短い経路を構成するように並び替えられる。これによって、第1の巡回経路探索方法は、選択された各地点の最短コスト経路を求めている。さらに、分割した領域間で、それぞれに含まれる地点が交換された後に、上記の一連の処理が繰り返される。最終的に、コストが小さくならなくなれば、第1の巡回経路探索方法の処理は終了する。以下、第1の巡回経路探索方法の詳細を、図37のフローチャートを参照して説明する。特に、図37(a)は、第1の巡回経路探索方法の処理手順を示すメインフローチャートである。
【0005】
図37(a)において、設定された地点群の中心座標が決定された後(ステップS37a1)、中心座標と各地点座標とを結んだ角度順に、各地点がつながれ(ステップS37a2)、これによって、巡回順序の初期経路が構成される。次に、初期経路を基に、最適化ループ処理が行われ(ステップS37a3)、最小コスト経路に近づける補正処理が行われる。ここで、図37(b)は、図37(a)のステップS37a3またはS37a6の詳細な処理手順を示すサブフローチャートである。
図37(b)において、分割のためのスタート地点が決められ(ステップS37b1)、設定された地点群が、初期経路の順序に従いつつ、決定されたスタート地点を基準として一定地点数毎の領域に分割される。次に、分割された領域毎に、総当たり方法によって最小コスト経路が求められる(ステップS37b2)。次に、各分割領域を合成して、1周の経路(巡回経路)が構成される(ステップS37b3)。最後に、ステップS37b3で得られた巡回経路コストが、前回のものより小さくなっていれば(ステップS37b4)、巡回経路コストがより小さくなる可能性があるとして、ステップS37b1に戻る。そして、次回は、ステップS37b3で得られた巡回経路コストを基に、ステップS37b1〜S37b4の処理が繰り返される。
一方、ステップS37b4で、今回得られた巡回経路コストが、前回のものよりも小さくなっていなければ、ほぼ最小コストの巡回経路となったと判断する。そして、前回の巡回経路が最適のものとして、最適化ループ処理(ステップS37a3)が終了する。
【0006】
次に、図37(a)に戻り、各地点や各辺が交換された後、効率順にm組のつなぎ替え方が調べられる(ステップS37a4)。次に、1番目(m=1)のつなぎ替えが行われる(ステップS37a5)。さらに、ステップS37a3と同様の最適化ループ処理が行われる(ステップS37a6)。次に、ステップS37a6で得られた巡回経路のコストが今までで最小であるかが判断され(ステップS37a7)、最小であれば、巡回経路コストがより小さくなる可能性があるとして、ステップS37a6で得られた巡回経路コストを基準として、ステップS37a4〜S37a7の処理が繰り返される。
一方、ステップS37a7で、ステップS37a6で得られた巡回経路のコストが今までで最小でなければ、ステップS37a8が行われる。次に、m組全てについて巡回経路のコストが確認したかが判断され(ステップS37a8)、確認済みであれば、第1の巡回経路探索方法が終了する。
一方、ステップS37a8で、m組全てについて確認が終わっていなければ、今回選択された巡回経路(つまり、つなぎ替えが行われた後の巡回経路)は最小コストにならないことから、巡回経路は、つなぎ替えが行われる前のものに戻される(ステップS37a9)。さらに、次の組合せ(m=m+1)のつなぎ替えが行われた後(ステップS37a10)、ステップS37a6が再度実行され、S37a6〜S37a7の処理が繰り返される。
【0007】
次に、「特開平4−57147号」公報に開示された従来の巡回経路探索方法(以下、第2の巡回経路探索方法と称す)の概略を説明する。第2の巡回経路探索方法では、まず、巡回する地点群の中から、コストの小さい三角形を構成する地点を順次追加して初期経路が構成される。その後、ランダムに地点を切り離して、巡回経路の再構成を行う処理が繰り返され、これによって、最小のコストを有する巡回経路が探索される。以下、第2の巡回経路探索方法の詳細を、図38のフローチャートを参照して説明する。
図38において、地点データが入力されると、入力された各地点間の距離を記録した行列が作成される(ステップS3801)。次に、入力された地点群の中から3地点が選択された後に、選択された3地点を用いて、最初の3角形が作成される(ステップS3802)。次に、未選択の地点群から最適三角形を構成する1地点が選択され、選択された地点を巡回経路に加える処理が行われる。この処理は、未選択の地点群が無くなるまで繰り返され、これによって、巡回経路が構成される(ステップS3803)。次に、構成された巡回経路の全距離が計算され、今回算出された全距離が、今までに求められた巡回経路の中で最短か否かが判断される。全距離が最短であれば、今回の巡回経路が最適なものとして採用される(ステップS3804)。次に、処理回数・時間により処理を打ちきるか否かが判断される(ステップS3805)。所定処理回数・所定時間を超えていれば処理が終了し、所定処理回数・所定時間を超えていなければステップS3806が行われる。構成された巡回経路から、ランダムに地点が切り離され、地点が未選択の状態に戻された後(ステップS3806)、ステップS3803の処理に戻り、以降の処理が繰り返される。
【0008】
また、上記方法とは別に、遺伝アルゴリズムやニューラルネットを応用した各種方法も学会等で報告されている。
【0009】
【発明が解決しようとする課題】
しかしながら、後者の遺伝アルゴリズムやニューラルネットを応用した方式では、極小解に陥る可能性があり、最悪の場合を考えると経路品質面で問題がある。
また、第1の巡回経路探索方法は、巡回経路のコストが最小かどうかに基づいて、巡回経路の修正を続けるかどうか判断している。そのため、巡回経路のコストが極小解に陥る可能性があり、最適な巡回経路を求めることができない場合が生じる。さらに、巡回経路のコストが最終的に収束するまでの処理時間が長くなる可能性がある。
【0010】
さらに、第2の巡回経路探索方法は、ランダムに地点を切り離して再構成する処理を、回数・時間等で制限し打ちきっているため、最終的に巡回経路コスト(距離)がどこまで最適なものに収束するかは一定しないという問題点があった。
【0011】
それ故に、本発明の目的は、実用時間でより実用的な巡回経路を選出することができる巡回経路選出方法を提供することである。
【0012】
【課題を解決するための手段および発明の効果】
第1の発明は、複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、出発地、目的地および複数の巡回地点を選択する第1のステップと、前記出発地、前記目的地および各前記巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、前記第2のステップで得られた各評価値を利用して、前記複数の巡回地点を巡回する順序を、深さ優先探索方法に基づいて決定する第3のステップと、前記第3のステップで決定された巡回順序に従って、前記出発地、前記複数の巡回地点および前記目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含み、前記第3のステップは、現在調査対象となっている巡回順序の途中までの合計評価値(以下、第1の合計評価値と称す)を、前記第2のステップで得られた各評価値に基づいて計算する、第5のステップと、現在調査対象となっている巡回順序が一通り構成されると、構成された巡回順序の合計評価値(以下、第2の合計評価値と称す)を、前記第2のステップで得られた各評価値に基づいて計算する、第6のステップと、前記第6のステップで計算された第2の合計評価値の最小値を記録する第7のステップとを含み、前記第5のステップで計算された第1の合計評価値が、前記第7のステップで記録された第2の合計評価値の最小値を超えた場合、前記巡回経路に関してはそこから派生するそれ以降の調査処理が打ち切られる。
【0013】
第1の発明によれば、巡回する順序を決定する処理において、深さ優先探索方法に基づく巡回経路の調査処理中に、第1の合計評価値が、第2の合計評価値の最小値(つまり、過去最小であった第2の合計評価値)を超えた場合、その巡回経路に関しては、そこから派生するそれ以降の調査処理が打ち切られる。これによって、最適な巡回経路となり得ない巡回地点の組合せに関する調査を省略することができるので、最適な巡回経路の選出時間を短縮する事ができる。
【0014】
発明は、複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、出発地、目的地および複数の巡回地点を選択する第1のステップと、
出発地、目的地および各巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、第2のステップで得られた各評価値を利用して、複数の巡回地点を巡回する順序を決定する第3のステップと、第3のステップで決定された巡回順序に従って、出発地、複数の巡回地点および目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を決定する第4のステップとを含み、第3のステップは、複数の巡回地点を管理するために、当該各巡回地点が連鎖的につなげられた管理情報を作成する第5のステップと、第5のステップで作成された管理情報に基づいて、巡回順序を構成していく第6のステップとを含む。
【0015】
発明によれば、巡回する順序を決定する処理において、調査対象としての未選択の巡回地点が連鎖的につながっている管理情報が適用される。これによって、未選択の巡回地点を効率的に選出できるので、最小コスト巡回経路の選出時間を短縮することができる。
【0016】
発明は、複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、出発地、目的地および複数の巡回地点を選択する第1のステップと、
出発地、目的地および各巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、第2のステップで得られた各評価値を利用して、複数の巡回地点を巡回する順序を決定する第3のステップと、第3のステップで決定された巡回順序に従って、出発地、複数の巡回地点および目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含み、第2のステップは、少なくとも、出発地または目的地と、各巡回地点とを含む範囲の地図データを読み込む第5のステップと、出発地または目的地と、各巡回地点とを探索開始点として順次設定する第6のステップと、第5のステップで読み込まれた地図データを利用して、第6のステップで設定された探索開始点と、当該探索開始点以外の地点との間の経路を、ダイクストラ法を基本とした手法により導出して、各評価値を計算する第7のステップを含む。
【0017】
発明によれば、各地点間の評価値を求める処理において、当該各地点を探索開始地点として順に選択し、ダイクストラ法に基づく単方向探索処理が行われる。これによって、m個の地点に含まれる各2地点間の探索処理をm×(m−1)回からm回に削減することができるので、最適な巡回経路の選出時間を削減することができる。
【0018】
発明は、選択された複数の巡回地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、複数の巡回地点として選択可能な候補地点が予め決定されており、当該各候補地点間の経路が求められており、さらに、少なくとも当該各候補地点間の評価値を含む経路情報が記録されており、出発地および目的地、ならびに複数の候補地点の中から複数の巡回地点を選択する第1のステップと、出発地、目的地および各巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、第2のステップで得られた各評価値を利用して、複数の巡回地点を巡回する順序を決定する第3のステップと、第3のステップで決定された巡回順序に従って、出発地、複数の巡回地点および目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含み、第2のステップは、第1のステップで選択された複数の巡回地点に含まれる各2地点間の各評価値を、予め記録されている経路情報の中から読み込むことにより得る。
【0019】
発明によれば、予め巡回地点として選択可能な地点を決定し、各地点間経路を求めておいて経路情報を記録しておくことにより、各巡回地点間の経路を計算する必要がないので、最適な巡回経路の選出時間を短縮することができる。
【0020】
本発明の第2のステップは、出発地および/または目的地が、候補地点に含まれていない場合、当該出発地および/または当該目的地ならびに各巡回地点を含む範囲の地図データを読み込む第5のステップと、第1のステップで選択された出発地および目的地を探索開始点として順次設定する第6のステップと、第5のステップで読み込まれた地図データを利用して、第6のステップで設定された探索開始点と、各巡回地点との間の経路を、ダイクストラ法を基本とした手法により導出して、各評価値を得る第7のステップを含む。
【0021】
発明によれば、任意の出発地または目的地を探索開始点として、ダイクストラ法に基づく探索処理が行われる。これによって、出発地から各巡回地点、または各巡回地点から目的地への経路が1回の探索処理で求められるので、任意の出発地からの最適な巡回経路、または任意の目的地への最適な巡回経路の選出時間を短縮することができる。
【0022】
発明は、候補地点が含まれる区域にアクセスする複数の道路上の地点が出入口地点として予め決定されており、当該出入口地点と当該各候補地点との間の経路が予め求められており、さらに、少なくとも当該出入口地点と各候補地点との間の経路の評価値を含む経路情報が予め記録されており、第2のステップは、出発地または目的地が、候補地点を含む区域外だった場合、出入口地点の中から、仮の出発地または仮の目的地を選択する。
【0023】
発明によれば、巡回区域へアクセス可能な道路上の地点が、予め出入口地点として決定されている。また、各出入口地点と各巡回地点(候補地点)との間、および各巡回地点(候補地点)と各出入口地点との間の経路もまた予め求められている。これらは、経路情報として予め記録されている。そして、巡回区域への入口地点を仮の出発地、または巡回区域からの出口地点を仮の目的地として選択することにより、仮の出発地からの巡回経路、または仮の目的地までの巡回経路を求めることができる。これによって、例えば、車載機のようにRAM容量が少ない環境において、出発地から各巡回地点への経路または各巡回地点から目的地までの経路が求められなかった場合でも、選択された地点を巡回する巡回経路を求めることができる。
【0024】
発明は、出入口地点には、候補地点が含まれる区域の境界を横切る主要な道路上の地点が予め選択されており、第2のステップは、出入口地点を探索開始点または探索終了点として、出発地または目的地に対して、双方向の階層別探索処理を行うことにより、仮の出発地または仮の目的地を選択する。
発明によれば、上記出入口地点として、上記巡回区域の境界を横切る主要な道路上の地点を選択することにより、最低限必要な出入口地点を機械的に設定することができる。これによって、出入口地点の選択を簡略化することができ、さらに、探索処理を用いて自動的に適切な仮の出発地、または仮の目的地を選択することができる。
【0025】
発明は、出入口地点には、候補地点が含まれる区域の境界を横切る主要な道路上の地点と、当該候補地点が含まれる区域の周辺を通過するより主要な道路上の地点とが予め選択されており、第2のステップは、出入口地点を探索終了点として、さらに第1のステップで選択された出発地または目的地を探索開始点として、一方向の階層別探索処理を行うことにより、仮の出発地または仮の目的地を選択する。
【0026】
発明によれば、上記出入口地点として、上記巡回区域には含まれないが、周辺を通過するより主要な道路上の地点が選択される。これによって、出発地または目的地からの一方向の階層別探索方法で最小コストで到達する出入口地点を選択できるので、巡回経路選出処理を簡略化でき、選出時間を短縮できる。
【0027】
発明第2のステップは、ユーザーの選択に基づいて、出入口地点の中から、仮の出発地および/または仮の目的地を選択する。
【0028】
発明によれば、上記仮の出発地、または仮の目的地は、出入口地点の中から、ユーザーにより選択される。これによって、ユーザーが好きな方向から巡回区域に進入または脱出できるので、ユーザーの好みで巡回区域までの進入道路または巡回区域からの脱出道路を選択することができる。
【0029】
発明は、選択された複数の巡回地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、複数の巡回地点として選択可能な候補地点が予め決定されており、さらに、少なくとも当該各候補地点間の評価値を含む経路情報が記録されており、出発地および目的地、ならびに複数の候補地点の中から、複数の巡回地点を選択する第1のステップと、出発地、目的地および各巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、第2のステップで得られた各評価値を利用して、複数の巡回地点を巡回する順序を決定する第3のステップと、第3のステップで決定された巡回順序に従って、第1のステップで選択された出発地から目的地へ至る1本の巡回経路を構成する第4のステップとを含み、第4のステップは、第3のステップで決定された巡回順序に従って、第1のステップで選択された出発地から目的地までの部分的な経路を繰り返し求める第5のステップと、第5のステップで求められた部分的な経路をつなぎ合わせて、1本の巡回経路を構成する第6のステップとを含む。
【0030】
発明によれば、予め巡回地点として選択可能な地点(候補地点)が予め決定されている。また、各地点間経路に基づいて得られた地点間経路コストのみが予め記録されている。この状態で、巡回経路の部分経路を2地点間探索処理を繰り返して求めることにより、経路データを記録する必要がないので、記憶領域に記憶されるデータ量を削減することができる。
【0031】
発明は、複数の巡回地点として選択可能な候補地点が予め決定されており、当該候補地点が含まれる区域にアクセスする複数の道路上の地点が出入口地点として予め決定されており、さらに、少なくとも、当該各候補地点間の評価値、および当該出入口地点と各候補地点との間の評価値を含む経路情報が記録されており、第2のステップは、第1のステップで選択された出発地または目的地が、候補地点を含む区域外だった場合、出入口地点の中から仮の出発地または仮の目的地を選択し、第5のステップは、第1のステップで選択された出発地から最初の巡回地点までの部分的な経路、または、最後の巡回地点から当該第1のステップで選択された目的地までの部分的な経路を求める時に、第2のステップで選択された仮の出発地または仮の目的地を省いて求める。
【0032】
発明によれば、第2のステップで選択された仮の出発地または仮の目的地を飛ばして、出発地から目的地までの巡回経路の部分経路が求められる。これによって、ユーザーが真に立ち寄りたい巡回地点から最適な巡回経路が選出されるので、自動的に選択された仮の出発地または仮の目的地を不自然に通過する巡回経路の選出を防ぐことができる。
【0033】
発明は、複数の巡回地点として選択可能な候補地点が予め決定されており、当該候補地点を含む区域にアクセスする複数の道路上の地点が出入口地点として予め決定されており、さらに、少なくとも、当該各候補地点間の評価値、および当該出入口地点と各候補地点との間の評価値を含む経路情報が記録されており、第2のステップは、第1のステップで選択された出発地または目的地が、候補地点を含む区域外だった場合、ユーザーの選択に基づいて、出入口地点の中から仮の出発地または仮の目的地を選択し、第5のステップは、第1のステップで選択された出発地から、第2のステップで選択された仮の出発地を経由して最初の巡回地点に至る部分的な経路、または、最後の巡回地点から、当該第2のステップで選択された仮の目的地を経由して当該第1のステップで選択された目的地に至る部分的な経路を求める。
【0034】
発明によれば、ユーザー自身が設定した仮の出発地または仮の目的地は飛ばさずに、出発地から目的地までの巡回経路の部分経路が求められる。これによって、ユーザーが設定した仮の出発地または仮の目的地を通過する巡回経路が選出されるので、必ずユーザーが意図したアクセス道路を通って巡回区域に進入、または巡回区域から脱出する巡回経路を求めることができる。
【0035】
発明は、複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、出発地、目的地および複数の巡回地点を選択する第1のステップと、 出発地、目的地および各巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、第2のステップで得られた各評価値を利用して、複数の巡回地点を巡回する順序を決定する第3のステップと、第3のステップで決定された巡回順序に従って、出発地、複数の巡回地点および目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含み、第3のステップは、複数の巡回地点の内、近接するもの同士を階層的なグループにまとめる第5のステップと、 第5のステップでまとめられたグループの巡回順序を階層毎に決定し、最終的に、複数の巡回地点を巡回する順序を決定する第6のステップとを含む。
【0036】
発明によれば、近隣の巡回地点が階層的にグループ化される。階層的なグループに基づいて巡回経路が求められる。これによって、調査対象となる組合せの数が減少するので、特に巡回対象となる地点数が多い場合に、巡回経路選出時間を短縮することができる。
【0037】
発明第5のステップは、2地点間の空間距離に基づいて、複数の巡回地点をまとめる。第14の発明によれば、2地点間の空間距離が近いものから優先的に1グループにまとめることができる。これによって、近接する巡回地点をグループ化できるので、比較的簡単な処理で経路品質を向上することができる。
【0038】
発明第5のステップは、2地点間の経路距離に基づいて、複数の巡回地点をまとめる。第15の発明によれば、2地点間の経路の距離が近いものから優先的に1グループにまとめることができる。これによって、空間距離的には近くても2地点間の道路は迂回しているような巡回地点がグループ化されることを避けることができるので、より経路品質を向上することができる。
【0039】
発明第5のステップは、他のグループと比較して、過度に広範囲なグループを形成しない。第16の発明によれば、他のグループと比較して広い範囲がグループが形成されない。これによって、各グループの大きさを平均化でき、いびつな巡回経路の選出を防ぐことができるので、より経路品質を向上することができる。
【0040】
発明第6のステップは、階層的な各グループの内、上位階層のグループから巡回順序を決定する。第17の発明によれば、階層化されたグループにおいて、上位階層のグループから巡回順序を決定することにより、まず上位階層で大まかな巡回順序を決定し、全体の計算量を削減することができる。これによって、最適な巡回経路の選出時間を短縮することができる。
【0041】
発明は、複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、出発地、目的地および複数の巡回地点を選択する第1のステップと、 出発地、目的地および各巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、第2のステップで得られた各評価値を利用して、複数の巡回地点を巡回する順序を、深さ優先探索方法に基づいて決定する第3のステップと、第3のステップで決定された巡回順序に従って、出発地、複数の巡回地点および目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含む。
【0042】
発明によれば、第2のステップで得られる評価値は、各2地点間に対するものである。したがって、かかる評価値を基に決定される巡回順序は、実際に車両が走行する道路を想定したものとなる。これによって、ユーザーにとって違和感のない効率的な巡回順序を求めることができる。
【0043】
本発明の第2のステップは、出発地と各巡回地点または目的地との間、複数の巡回地点に含まれる各2地点間、および当該各巡回地点と目的地との間の経路を求め、求めた各経路の評価値に基づいて、出発地と各巡回地点または目的地との間の評価値、複数の巡回地点に含まれる各2地点間の各評価値、および当該各巡回地点と目的地との間の評価値を取得する。
【0044】
発明によれば、第2のステップでは、評価値が、各2地点間の経路を実際に求めることにより得られる。そのため、より好ましい巡回順序を決定することが可能となる。
【0045】
本発明の第2のステップは、出発地、目的地および各巡回地点のそれぞれを探索開始点として、予め記憶される地図情報を用いて、出発地側探索処理および/または目的地側探索処理を行って、当該出発地と各当該巡回地点または当該目的地との間、当該複数の巡回地点に含まれる各2地点間、および当該各巡回地点と当該目的地との間の経路を求め、 求めた各経路の評価値に基づいて、出発地と各巡回地点または目的地との間の評価値、複数の巡回地点に含まれる各2地点間の各評価値、および当該各巡回地点と目的地との間の評価値を取得する。
【0046】
発明によれば、第2のステップで、各地点を探索開始点とした出発地側探索処理および/または目的地側探索処理により、2地点間の経路が求められるので、探索処理の回数を最小限に抑えることができる。これによって、必要な組み合わせすべてについて、経路を短時間で求めることができる。
【0047】
本発明の地図情報は階層構造を有しており、下位階層の地図情報は、相対的に狭い範囲を詳細に記録した地図を表しており、上位階層の地図情報は、相対的に広い範囲を粗く記録した地図を表しており、第2のステップは、使用すべき地図情報の階層を選択し、 選択された階層の地図情報を用いて、出発地、目的地および各巡回地点のそれぞれを探索開始点として、出発地側探索処理および/または目的地側探索処理を行って、当該出発地と各当該巡回地点または当該目的地との間、当該複数の巡回地点に含まれる各2地点間、および当該各巡回地点と当該目的地との間の経路を探索し、選択された階層の地図情報では、経路を求めることができない場合、上位階層の地図情報を用いて、当該経路を求める。
【0048】
発明によれば、第2のステップでは、まず、下位階層の地図情報を用いて、各探索開始点からの探索処理を開始する。そして、下位階層の地図情報では求めることができない経路があった場合に、上位階層の地図情報を用いて探索処理を続ける。これによって、各階層に記録された道路網に適した探索範囲を設定することができるので、距離がある2地点間の経路を短時間で求めることができる。
【0049】
本発明は、複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、出発地、目的地および複数の巡回地点を選択する第1のステップと、前記出発地、前記目的地および各前記巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、前記第2のステップで得られた各評価値を利用して、前記複数の巡回地点を巡回する順序を、深さ優先探索方法に基づいて決定する第3のステップと、前記第3のステップで決定された巡回順序に従って、前記出発地、前記複数の巡回地点および前記目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含み、前記第2のステップは、前記出発地と各前記巡回地点または前記目的地との間、前記複数の巡回地点に含まれる各2地点間、および当該各巡回地点と前記目的地との間の経路を求め、求めた各経路の評価値に基づいて、前記出発地と各前記巡回地点または前記目的地との間の評価値、前記複数の巡回地点に含まれる各2地点間の各評価値、および当該各巡回地点と前記目的地との間の評価値を取得し、前記第4のステップは、前記第3のステップで決定された巡回経路に従って、前記出発地、前記目的地および各前記巡回地点から選択可能な2地点の組み合わせ数分だけ、2地点間探索を繰り返すことにより、1本の巡回経路を構成する。
【0050】
発明によれば、第2のステップで得られる評価値は、各2地点間に対するものである。したがって、かかる評価値を基に決定される巡回順序は、実際に車両が走行する道路を想定したものとなる。これによって、ユーザーにとって違和感のない効率的な巡回順序を求めることができる。また、第2のステップでは、評価値が、各2地点間の経路を実際に求めることにより得られる。そのため、より好ましい巡回順序を決定することが可能となる。また、第4のステップで、再度2地点間探索を行うことにより、第2のステップでは求めた経路を残しておかなくとも、巡回経路を構成することが可能となる。これによって、巡回経路選出のために必要となるRAMの容量を抑えることが可能となる。
【0051】
本発明は、複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、出発地、目的地および複数の巡回地点を選択する第1のステップと、前記出発地、前記目的地および各前記巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、前記第2のステップで得られた各評価値を利用して、前記複数の巡回地点を巡回する順序を、深さ優先探索方法に基づいて決定する第3のステップと、前記第3のステップで決定された巡回順序に従って、前記出発地、前記複数の巡回地点および前記目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含み、前記第2のステップは、前記出発地と各前記巡回地点または前記目的地との間、前記複数の巡回地点に含まれる各2地点間、および当該各巡回地点と前記目的地との間の経路を求め、求めた各経路の評価値に基づいて、前記出発地と各前記巡回地点または前記目的地との間の評価値、前記複数の巡回地点に含まれる各2地点間の各評価値、および当該各巡回地点と前記目的地との間の評価値を取得し、前記第2のステップはさらに、必要な2地点間毎に、最小の評価値を有する経路データを記録し、前記第4のステップは、前記第3のステップで決定された巡回経路に従って、前記第2のステップで記録された経路データに基づいて、1本の巡回経路を構成する。
【0052】
発明によれば、第2のステップで得られる評価値は、各2地点間に対するものである。したがって、かかる評価値を基に決定される巡回順序は、実際に車両が走行する道路を想定したものとなる。これによって、ユーザーにとって違和感のない効率的な巡回順序を求めることができる。また、第2のステップでは、評価値が、各2地点間の経路を実際に求めることにより得られる。そのため、より好ましい巡回順序を決定することが可能となる。また、第2のステップで記録された最小評価値の経路データに基づいて巡回経路が構成されるので、第4のステップでは、探索処理を改めて行う必要がなくなる。これによって、巡回経路選出に必要となる時間を抑えることができる。
【0053】
【発明の実施の形態】
図1は、本巡回経路選出方法が採用されるカーナビゲーションシステムの構成を示すブロック図である。図1において、カーナビゲーションシステムは、ロケーター101と、データ記憶部102と、操作部103と、ナビゲーション装置104と、情報提示部105とを備えている。
【0054】
ロケーター101は、GPS、車速センサ、角速度センサ、絶対方位センサ等を含み、車両の現在位置を計算するためのデータを収集する。
データ記憶部102は、通常CDやDVDが使用され、交差点や道路の接続状況や座標・形状・属性・規制情報など、道路ネットワークに関する地図情報、地点設定を行うための索引情報等、ナビゲーションに必要となる各種情報を記憶している。
操作部103は、リモートコントローラ、タッチセンサ、キーボード、マウス等を含み、ユーザの操作に従って地点情報等を入力したり、ユーザーの選択したい項目を指定したりする。
ナビゲーション装置104は、CPUやメモリ(プログラムメモリ、ワーキングメモリ)等を含む。ナビゲーション装置104は、基本的には、ロケーター101から入手した車両の移動情報を基に現在位置を特定するロケーション機能、目的地までの経路を自動的に選出し案内する経路誘導機能、索引情報を検索したり任意の場所の地図を表示したりする情報検索機能とを有している。
情報提示部105は、表示装置(液晶ディスプレイ、CRTディスプレイ等)やスピーカ等を含み、ユーザーに対して、現在車両位置の提示、誘導経路の案内、検索情報の提示を行う。
【0055】
次に、図1のように構成されたカーナビゲーションシステムの各機能について説明する。
まず、ロケーション機能について概説する。ロケーター101は、刻々と変化する車両位置に関する情報(車両向きの変化角、車両の走行距離、絶対位置等)を収集する。ナビゲーション装置104は、ロケーター101により得られた車両位置に関する情報から、車両の移動軌跡を計算する。ナビゲーション装置104はさらに、マップマッチング技術等を利用しつつ、算出された車両の移動軌跡と、データ記憶部102から得られた周辺地図上の道路ネットワークとを比較して、地図上における車両の現在位置を特定する。情報提供部105は、ナビゲーション装置104により特定された、車両の現在位置を地図上に表示する。
【0056】
次に、情報検索機能について概説する。操作部103は、情報提示部105のディスプレイ上に表示された各種項目の中から、検索したい内容を選択する。選択された項目の中から指定のものを、データ記憶部102の記録情報の中から検索し、情報提示部105のディスプレイ上に表示する。必要であれば、情報提示部105のスピーカーから音声等を出力する。
【0057】
さらに、本発明に関わる経路誘導機能について概説する。まず、ユーザーは、操作部103を操作して、出発地および目的地を設定する。すなわち、ユーザーは、操作部103を操作することにより、情報提示部105に表示された地図の画像をスクロールさせ、希望する地点を出発地および目的地として入力する。なお、出発地は、上述のロケーション機能で検出した車両の現在位置を使用してもよい。次に、ナビゲーション装置104は、上記のように設定された出発地および目的地の位置に対して、データ記憶部102に記憶された地図上のノードまたはリンク上の一番近い点を、探索開始点および探索終了点として採用する。さらに、ナビゲーション装置104は、周知のダイクストラ法などを用いて最短コスト経路を計算し、求められた経路を、リンク列、ード列または座標列に変換し、誘導経路とする。本実施形態では、請求項における「評価値」の一例としてコストを採用する。以下の第1〜第4の巡回経路選出方法では、コストを旅行時間とみなし、旅行時間が短い経路を選出するものとする。最後に、情報提示部105は、ナビゲーション装置104で求められた誘導経路と現在車両位置と、データ記憶部102に記憶された地図データとに基づいて、誘導経路上を進むにはどの方向へ進めば良いかを、音声や表示を行なってユーザーに案内する。
【0058】
また、ナビゲーションシステムでは、出発地・目的地の間に複数の巡回地点が設定できる。ユーザーは、目的地の設定と同様に、操作部103を操作して、複数の巡回地点を設定する。この時に、巡回する地点を設定する前に、巡回する地域を選択するようにしても良い。さらに、ナビゲーション装置104は、出発地・目的地・巡回地点間等の経路コストを参照し、設定された各巡回地点を通過し、しかもより小さな経路コストで出発地から目的地へ至る最適巡回経路を選出する。本巡回経路選出方法に関しては、後でフローチャートを用いて詳述する。
【0059】
また、図2は、本巡回経路選出方法を適用可能な配送車両管理システムの一般的な構成を示すブロック図である。図2において、配送車両管理システムは、無線装置201と、データ記憶部202と、操作部203と、コンピュータ204と、情報提示部205とを備えている。
無線装置201は、携帯電話、専用無線等を含み、各配送車両に搭載されたロケーションシステムから、各配送車両の現在位置を収集する。
データ記憶部202には、大容量ハードディスクが通常使用される。データ記憶部202は、交差点および/または道路の接続状況、座標、形状、属性ならびに規制情報など、道路ネットワークに関する地図情報、地点設定を行うための索引情報、もしくは配送先管理情報等、配送管理業務に必要となる各種情報を記憶する。
操作部203は、リモートコントローラ、タッチセンサ、キーボード、マウス等を含み、ユーザの操作に従って地点情報等を入力したり、ユーザーの選択したい項目を指定したりする。
コンピュータ204は、CPUやメモリ(プログラムメモリ、ワーキングメモリ)等を含む。コンピュータ204は、基本的には、無線装置201から入手した各配送車両の現在位置を管理する位置管理機能、各車両に対し複数の配送先を指定して最適な配送経路を自動的に選出する経路選出機能、配送先情報を検索・入力する配送先情報管理機能とを有している。
情報提示部205は、表示装置(液晶ディスプレイ、CRTディスプレイ等)やスピーカ等を含み、ユーザーに対して、各配送車両の現在位置の提示、配送経路の案内、配送先情報の提示を行う。
【0060】
次に、図2のように構成された配送車両管理システムの各機能について説明する。
まず、位置管理機能について概説する。無線装置201は、刻々と変化する各配送車両の位置情報を収集する。コンピュータ204は、無線装置201から各配送車両の位置に関する情報を入手し、データ記憶部202に記憶された地図データから得られた配送エリアの道路ネットワークを、情報提示部205のディスプレイ上に表示する。さらに、情報提示部205は、表示された道路ネットワークには、各配送車両の現在位置を重ねて表示する。
【0061】
次に、配送先情報管理機能について概説する。操作部203は、情報提示部205のディスプレイ上に表示された配送エリアの地図上に重ねて表示されたカーソルを、マウスで希望する位置に移動することにより任意の位置を指定できる。配送先に関する付属情報(ID、配送先名称、連絡先、補足情報)は、操作部203のキーボードから入力される。また、過去に入力された配送先に関する付属情報は、データ記憶部202に記憶されており、それらの情報は、操作部203のマウス操作により呼び出され選択される。そして、操作部203のキーボード操作により、配送先に関する付属情報の修正、削除等を行う。
【0062】
さらに、本発明に関わる経路選出機能について概説する。まず、ユーザーは、操作部203を操作して、配送地点を設定する。すなわち、ユーザーは、操作部203のマウスを操作することにより、情報提示部205のディスプレイ上に表示された配送エリアの地図上を参照して、実際に配送する配送先を選択する。なお、出発地および目的地は配送センターまたは上述の位置管理機能により把握された配送車両の現在位置を使うことができる。次に、コンピュータ204は、配送先がどの区域に属するか判定し、どの配送車両に割り振るか判断する。特定の配送車両に配送先が集中するようであれば、周辺区域受け持ちであり配送先が少ない他の配送車両に振り分けるようにしても良い。さらに、コンピュータ204は、各配送車両毎に出発地から出発し、割り振られた全配送先を通過して目的地に到達する最適巡回経路を選出する。本巡回経路選出方法に関しては、以降にフローチャートを用いて詳述する。
【0063】
(1)第1の巡回経路選出方法
図3は、第1の巡回経路選出方法の処理手順を示すメインフローチャートである。図3のメインフローチャートに従う処理は、図1のナビゲーション装置104または図2のコンピュータ204により行われる。
図3において、ユーザーは、上述したようにして、出発地・目的地と、各巡回地点(各配送地)とを選択する(ステップS301,S302)。次に、各巡回地点間の最小コスト経路を求める地点間経路計算処理が行われる(ステップS303)。
ここで、図4は、図3のステップS303の詳細な処理手順を示すフローチャートである。図4において、まず、出発地・目的地・各巡回地点を含む範囲の地図データが一括して読み込まれる(ステップS401)。次に、出発地と各巡回地点の中から未選択の地点が1つ選択される(ステップS402)。選択された地点は、探索開始点として、以降の処理で用いられる。次に、読み込まれた地図データ全域に対して、探索開始点を起点として、公知のダイクストラ法に基づく探索処理が広げられる(ステップS403)。これによって、探索開始点から、終点としての他の地点(各巡回地点、目的地)への経路が構成され、構成された経路コストがコストマトリクスに記録され、さらに、経路の道順を示す経路データが記録される(ステップS404)。ここで、コストマトリクスとは、起点から終点への経路コストを、起点を行とし終点を列とする行列に記録したものである。図5はコストマトリクスの一構成例である。図5の例では、出発地および目的地以外の巡回地点数はn個としている。なお、目的地を起点とする経路コスト、出発地を終点とする経路コスト、および出発地から目的地への経路コストは、後で行われる巡回順序決定処理(ステップS304)には必要ないので、「−」マークで記載されている。
【0064】
図4のステップS404の次に、探索開始点としての未選択の地点が残っているか否かが判断される(ステップS405)。未選択の地点があれば、ステップS402に戻り、未選択地点の1つが、次の探索開始点として選択される。その後、上記一連の処理(ステップS403〜S405)が繰り返される。一方、ステップS405において、未選択の地点がなければ、地点間経路計算処理(図3のステップS303)は終了する。地点間経路計算処理の終了時点で、図5のコストマトリクスが完成し、各欄が埋め尽くされる。
なお、上述したステップS402では、出発地と各巡回地点とから探索開始点が選択されていたが、目的地と各巡回地点とから探索開始点が選択されてもよい。この場合、ステップS403では、目的地と各巡回地点とから選択された探索開始点を基に探索処理が広げられる。このように、探索開始点として方向性を考慮した上で探索処理を行っても良い。
【0065】
次に、図3のステップS304に進み、各巡回地点をどのような順序で通過するのが最適かを決定する巡回順序決定処理が実行される(ステップS304)。
ここで、図6は、図3のステップS304の詳細な処理手順を示すフローチャートである。図6において、全巡回地点が未選択状態にされた後、巡回地点が1個ずつ選択される。この時、同じ巡回地点は重複して選択されてはならない。巡回地点は、選択された順に、未選択巡回地点の管理情報に登録される(ステップS601)。この管理情報は、図7に例示するリスト構造を有している。リスト構造とは、先頭の地点から次の地点を連鎖的に次々と指し示したものである。図7では、n個の巡回地点(N1〜Nn)が添え字の小さいものから連続的に並べられている。「先頭」には先頭の地点として<N1>が記録されており、「1番目」には、「先頭」の次の地点として<N2>が記録されている。以降、同様にして、選択された順番通りに、各巡回地点がつなげられていく。さらに、「(n−1)番目」には、最後に選択された地点として<Nn>が記録されており、「n番目」には巡回経路の終了を示すID情報として<終了>マークが記録されている。以上のリスト構造が採用されることにより、「先頭」から順番に次の地点を調べていくことが可能になる。これによって、後で行われる巡回再帰処理(ステップS604)において、未選択状態の巡回地点Ni(i=1,2…,n)を効率よく見つけだすことができる。
【0066】
再度図6を参照する。ステップS601の次に、出発地が、巡回コストXの算出に必要となる前の巡回先PPとして選択される(ステップS602)。さらに、巡回コストXが初期化される(ステップS603)。すなわち、X=0に設定される。この後、巡回再帰処理が行われる(ステップS604)。
ここで、図8は、図6のステップS604の詳細な処理手順を示すフローチャートである。まず、図8の処理手順で使用される、総巡回コストY、最小の総巡回コストYminおよび途中段階の巡回コストXについて説明する。今、n個(nは自然数)の巡回地点N1〜Nnが選択されていると仮定する。本実施形態において、巡回経路とは、図9(a)〜(c)に例示するように、同じ巡回地点を重複して通過することなく、全ての巡回地点N1〜Nnを通過しつつ、出発地から目的地まで至る経路を意味する。
まず、総巡回コストYは、1本の巡回経路のコストである。出発地から各巡回地点Ni(iはi≦nを満たす自然数)までのコスト、2個の巡回地点NiおよびNj(jは、i≠jかつj≦nを満たす自然数)の間のコスト、各巡回地点Njから目的地までのコストは、図5のコストマトリクスに記載されている。したがって、巡回地点N1〜Nnを巡回する順序が決まれば、1本の巡回経路を構成するために必要となる各コストは特定される。特定された各コストを合計すれば、総巡回コストYを算出することができる。
【0067】
深さ優先探索方法では、ある巡回経路の総巡回コストYを得た後、別の総巡回コストYを算出するという処理が繰り返される。最小の総巡回コストYminは、既に算出されている総巡回コストYの内、最小の値を有するものである。
さらに、深さ優先探索方法では、1本の巡回経路を構成する際、互いに異なる巡回地点Niが1つずつ選択されていく。途中段階の巡回コストXとは、出発地から、現在選択された巡回地点Niまでの経路(途中までの巡回経路)のコストである。この途中段階の巡回コストXも、総巡回コストYと同様に、図5のコストマトリクスを参照して算出される。
【0068】
図8のステップS801では、途中段階の巡回コストXと、最小の総巡回コストYminとが比較され、X≧Yminを満たすか否かが判定される(ステップS801)。
X≧Yminと判定された場合、現在調査対象の巡回経路は最小の総巡回コストYminをとる可能性が全くない。そのため、以降の処理を行っても無駄であるから、巡回再帰処理は打ち切られる。
また、X<Yminと判定された場合、現在調査対象の巡回経路は最小の総巡回コストYminをとる可能性があるので、以降の処理を行うべく、ステップS802が行われる。なお、ステップS801の時点で、巡回経路が1本も得られていなければ、最小の巡回コストYminは無限大とみなされる。したがって、この場合もX<Yminと判定される。
【0069】
次に、図7の管理情報の「先頭」に設定された巡回地点Niが、現在の巡回先CPとして選択される(ステップS802)。これによって、出発地NSPの次に巡回すべき巡回地点Niが選択される。次に、前の巡回先PPが起点として選択され、現在の巡回先CPが終点として選択される。その後、起点と終点との間のコストがコストマトリクス(図5参照)から読み出される。読み出されたコストは、巡回コストXに加算される(ステップS803)。これによって、現在調査対象の巡回経路の途中段階の巡回コストXが得られる。
【0070】
次に、図7の管理情報を参照して、「先頭」の巡回地点Niが最後の巡回先LPか否かが判定される(ステップS804)。この巡回地点Niの直後に<終了>マークが有れば、現在の巡回先CPが最後の巡回先LPとなる。つまり、調査対象の巡回経路が一通り構成されたことになるので、ステップS811が行われる。
本ステップでは、現在の巡回先CP(つまり、最後の巡回先LP)が起点として選択され、目的地NDが終点として選択される。その後、起点と終点との間のコストがコストマトリクスから読み出される。読み出されたコストは、巡回コストXに加算される(ステップS811)。これによって、現在調査対象である巡回経路の総巡回コストY(合計)が算出される。
【0071】
次に、今回得られた総巡回コストYと、最小の総巡回コストYminとが比較され、Y<Yminを満たすか否かが判定される(ステップS812)。
Y<Yminと判定された場合、今回得られた総巡回コストYが最小の総巡回コストYminとして新たに記録される(ステップS813)。さらに、今回調査対象となった巡回地点N1、N2、…Nnの巡回順序も新たに記録される。なお、ステップS812の時点で、最小の総巡回コストYminが求められていない場合、最小の巡回コストYminは無限大とみなされる。したがって、この場合も、Y<Yminと判定される。このステップS812の後、巡回再帰処理が終了する。
一方、Y≧Yminと判定された場合、今回得られた総巡回コストYが記録されることなく、そのまま巡回再帰処理は終了する。
【0072】
ステップS804で、「先頭」の巡回地点Niが最後の巡回先LPでなければ、調査対象の巡回経路は完全に構成されていないので、次の巡回地点Nj(j≠i)を選択して巡回コストXを算出するために、ステップS805が行われる。
ステップS805では、現在の巡回先CPが前の巡回先PPとして選択される。さらに、現在の巡回先CPとして選択されていた巡回地点Niは図7の管理情報から削除される(ステップS805)、これによって、未選択の巡回地点Nj(j≠i)のみが図7の管理情報に残る。さらに、未選択の巡回地点Nj(j≠i)のいずれかが「先頭」となる。
【0073】
次のステップS806では、図8の巡回再帰処理が再度呼び出される。本ステップに移行した時点(つまり、初期状態)で、現在調査対象の巡回経路の途中までの巡回コストXが算出されている。今回の巡回再帰処理では、まず、この途中段階の巡回コストX≧最小の総巡回コストYminか否かが判断される(ステップS801)。X≧Yminの場合、上述したように、巡回再帰処理が終了する。X<Yminの場合、上述したように、ステップS802が行われる。
次に、管理情報(図7参照)の「先頭」に現在設定されている巡回地点Njが、現在の巡回先CPとして選択される(ステップS802)。これによって、次に巡回すべき巡回地点Njが選択される。その後、上述したように、起点(=前の巡回先PP)と終点(=現在の巡回先CP)との間のコストが巡回コストXに加算される(ステップS803)。これによって、出発地NSPから今回選択された巡回地点Njまでの巡回コストXが得られる。
【0074】
図7の管理情報において、「先頭」の巡回地点Njが最後の巡回先LPでなければ(ステップS804)、当該現在の巡回先CPが前の巡回先PPとして選択される。さらに、現在の巡回先CPとして選択されていた巡回地点Njは図7の管理情報から削除される(ステップS805)、これによって、未選択の巡回地点Nk(k≠i,k≠j)のみが図7の管理情報に残る。さらに、未選択の巡回地点Nkのいずれかが「先頭」となる。
【0075】
その後、図8の巡回再帰処理が再度呼び出される(ステップS806)。このように、巡回再帰処理は、ステップS801で打ち切られない限り、巡回地点Niが管理情報からなくなるまで(つまり、巡回経路が一通り構成されるまで)、繰り返し呼び出される。各巡回再帰処理では、管理情報に残っている未選択の巡回地点Niから現在の巡回先CPが選択され(ステップS802)、その後、当該現在の巡回先CPが前の巡回先PPとして設定されるとともに、当該現在の巡回先CPが管理情報から削除される。設定された前の巡回先PPおよび現在の巡回先CPが削除された管理情報が、次回の巡回再帰処理に引き継がれる。このような状況で、次回の巡回再帰処理は再帰される。
【0076】
以上のステップ806が終了すると、ステップS805で削除された現在の巡回先CPが図7の管理情報に戻される(ステップS807)。さらに、途中段階の巡回コストXが、ステップS803での加算前の状態に戻される(ステップS808)。次のステップS809では、新しい巡回経路を調査対象とするために、前の巡回先PPをステップS805で変更する前の状態に戻す。さらに、図7の管理情報において、ステップS807で戻された現在の巡回先CPの直後につながっている巡回地点Niが、新たな現在の巡回先CPとして選択される(ステップS809)。
【0077】
次に、新たな現在の巡回先CPとして、<終了>マークが選択されたか否かが判定される(ステップS810)。これが<終了>マークであれば、弥山宅の巡回地点を全て調査したとして、巡回再帰処理が終了する。一方、これが<終了>マークでなければ、未選択の巡回地点を全て調査していないとして、ステップS803に戻り、上述と同様に繰り返される。
以上の図8の巡回再帰処理は、最初に呼び出されたものが終了した時点で、全通りの巡回経路が調査され、最小の巡回コストYminが記録されている。そのため、図6のステップS604の巡回再帰処理が終了し、巡回順序決定処理が終了する。
【0078】
ここで、巡回順序決定処理(ステップS304)の一具体例として、n=5の場合、つまり巡回地点N1〜N5の巡回順序を決定する場合について説明する。この場合、コストマトリクスは図10のように作成される。
まず、ステップS304が開始されると、図11(a)のような管理情報が作成される(ステップS601)。図11において、管理情報は、5個の巡回地点(N1〜N5)が、添え字の小さいものから順番に並べられる。最後の「5番目」には<終了>マークが記録される。これによって、選択対象となる5個の巡回地点N1〜N5が保持される。
【0079】
次に、出発地NSPが、前の巡回先PPとして選択され(ステップS602)、巡回コストXが「0」に初期化される(ステップS603)。その後、最初の巡回再帰処理が呼び出され、1つ目の巡回経路TR1の総巡回コストY1が算出され始める。ここで、図12(a)は、ステップS304において得られる巡回経路TR1および総巡回コストY1を示している。まず、現在の巡回コストXは最小の総巡回コストYmin(=∞)よりも小さいので(ステップS801)、「先頭」の巡回地点N1(図11(a)参照)が、現在の巡回先CPとして選択され(ステップS802)、これによって、出発地NSPの次に巡回すべき地点が選ばれる。次に、前の巡回先PP(=出発地NSP)と現在の巡回先(巡回地点N1)との間のコスト(その値はC01とする)が、図10のコストマトリクスから読み出され、巡回コストX(=0)に加算される(ステップS803)。その結果、現在の巡回コストXは、X=C01となる。
【0080】
巡回地点N1は、図11(a)に示すように最後の巡回先LPでないので(ステップS804)、現在の巡回先CPとしての巡回地点N1は前の巡回先PPとして設定された後に、管理情報から削除される(ステップS805)。削除された巡回地点N1は、次回以降の巡回再帰処理では管理情報から除外されているので、現在の巡回先CPとして選択されない。これによって、同じ巡回地点Nを重複選択することなく、巡回経路TRが構成されていく。また、管理情報は、図11(b)のように、巡回地点N1が抜かれた分、他の巡回地点N2〜N5および<終了>マークが順番を詰める。
【0081】
ステップS805の後、巡回地点N1の次の巡回先を選択して、そこまでの巡回コストXを算出すべく、2番目の巡回再帰処理が呼び出され実行される(ステップS806)。現在の巡回コストXはC01である。また、巡回経路TR1は、出発地NSP→巡回地点N1まで構成されている。また、巡回地点N1が前の巡回先PPとして選ばれている。さらに、管理情報の「先頭」は、図11(b)のように巡回地点N2である。この時点の状態(初期状態)で、2番目の巡回再帰処理が再帰される。
2番目の巡回再帰処理(ステップS807)でも、巡回経路TRは1本も得られていないので、巡回コストX(=C01)は最小の総巡回コストYmin(=∞)よりも小さい(ステップS801)。そのため、現在「先頭」にある巡回地点N2(図11(b)参照)が、現在の巡回先CPとして、つまり巡回地点N1の次の巡回先が選択される(ステップS802)。次に、前の巡回先PP(=巡回地点N1)と現在の巡回先CP(巡回地点N2)との間のコスト(その値はC12とする)が巡回コストX(=C01)に加算される。その結果、現在の巡回コストXは、X=C01+C12となる。
【0082】
巡回地点N2は、図11(b)の管理情報に示すように、最後の巡回先LPではないので(ステップS804)、巡回地点N2(現在の巡回先CP)は前の巡回先PPとして設定された後に、管理情報から削除される(ステップS805)。その結果、管理情報は、図11(c)の状態に遷移し、巡回地点N2が抜かれた分、他の巡回地点N3〜N5および<終了>マークが順番を詰める。
【0083】
ステップS805の後、3番目の巡回再帰処理が呼び出される(ステップS806)。この時点で、巡回コストXはC01+C12である。また、巡回経路TR1は、出発地NSP→巡回地点N1→巡回地点N2まで構成されている。また、巡回地点N2が前の巡回先PPとして設定されている。さらに、「先頭」は、図11(c)のように巡回地点N3である。この時点の状態(初期状態)で、3番目の巡回再帰処理が実行されると、ステップS801およびS802が実行された後、前の巡回先PP(=巡回地点N2)と現在の巡回先(=巡回地点N3)との間のコスト(その値はC23とする)が巡回コストX(=C01+C12)に加算される(ステップS803)。その結果、現在の巡回コストXは、X=C01+C12+C23となる。
さらに、ステップS804の実行後、巡回地点N3(現在の巡回地点CP)は前の巡回先PPとして設定された後に、図11(d)に示すように管理情報から削除される(ステップS805)。
【0084】
以降、4番目および5番目の巡回再帰処理(ステップS806)が呼び出される。便宜上、4番目の巡回再帰処理の説明を省略する。その後、5番目の巡回再帰処理が呼び出された時点で、巡回コストXはC01+C12+C23+C34である。また、巡回経路TR1は、出発地NSP→巡回地点N1→巡回地点N2→巡回地点N3→巡回地点N4まで構成されている。また、巡回地点N4が前の巡回先PPとして設定されている。さらに、管理情報は図11(e)のような状態にあり、「先頭」には巡回地点N5が設定されている。この時点の状態(初期状態)で、5番目の巡回再帰処理が実行されると、ステップS803において、前の巡回先PP(巡回地点N4)と現在の巡回先CP(巡回地点N5)との間のコスト(その値はC45とする)が巡回コストXに加算され(ステップS803)、巡回コストXは、C01+C12+C23+C34からC01+C12+C23+C34+C45に更新される。
【0085】
次に、管理情報は現在、図11(e)の状態にあるので、「先頭」の巡回地点N5は、最後の巡回先LPと判定される(ステップS804)。そして、最後の巡回先LP(巡回地点N5)と目的地NDとの間のコスト(その値はC56とする)が、現在の巡回コストXに加算される(ステップS811)。これによって、巡回経路TR1が一通り構成されたことになる。巡回経路TR1は、巡回地点N1→巡回地点N2→巡回地点N3→巡回地点N4→巡回地点N5の順番で、出発地NSPから目的地NDへと至る経路である。また、巡回順序TR1が完全に構成されたことから、現在の巡回コストX(=C01+C12+C23+C34+C45+C56)は、総巡回コストY1として保持される。
【0086】
次に、総巡回コストY1は、最小の総巡回コストYmin(=∞)よりも小さいので(ステップS812)、今回構成された巡回経路TR1および総巡回コストY1は、最適な巡回経路および最小の総巡回コストYminとして記録される(ステップS813)。その結果、5番目の巡回再帰処理(ステップS807)が終了し、巡回経路TR1について実行された巡回再帰処理が終了する。5番目の巡回再帰処理が閉じられると、4番目の巡回再帰処理のステップS807以降が行われ、2番目の巡回経路TR2に関する巡回再帰処理の準備が行われる。
まず、4番目の巡回再帰処理のステップS805で削除された現在の巡回先CP(巡回地点N4)が、管理情報に戻される(ステップS807)。その結果、管理情報は、図11(e)の状態から、図13(a)の状態へと遷移する。
また、現在の巡回コストXが、4番目の巡回再帰処理のステップS803が実行される前の状態に戻される。つまり、現在の巡回コストは、ステップS803でC34が加算される直前の状態に戻される。その結果、現在の巡回コストXは、X=C01+C12+C23に戻される。
また、ステップS809において、前の巡回先PPが、第4回目の巡回再帰処理が呼び出された時のものに戻される。したがって、前の巡回先PPは、巡回地点N3に戻される。さらに、現在の巡回先CPは、4番目の巡回再帰処理で設定されていたものから、新しいものに更新される(ステップS809)。より具体的には、現在の管理情報(図13(a)参照)において、4番目の巡回再帰処理で使用された巡回地点N4の直後につながっている巡回地点N5が、新たな現在の巡回先CPとして設定される。
【0087】
ステップS807〜S809の実行により、2番目の巡回経路TR2は、図12(b)に示すように、出発地NSP→巡回地点N1→巡回地点N2→巡回地点N3→巡回地点N5まで構成されたことになる。なお、出発地NSP→巡回地点N1→巡回地点N2→巡回地点N3の巡回コストXは既に得られている。この巡回コストXは、2番目の巡回経路TR2の総巡回コストYを求める際にも利用される。そして、この途中までの巡回経路TR2の巡回コストXを算出すべく、ステップS803が実行される。つまり、図12(b)に示すように、前の巡回先PP(=巡回地点N3)と現在の巡回先(巡回地点N5)との間のコスト(その値はC35とする)が、現在の巡回コストX(=C01+C12+C23)に加算され、その結果、現在の巡回コストXはC01+C12+C23+C35となる。
【0088】
「先頭」の巡回地点N4は、図13(a)の管理情報に示すように、最後の巡回先LPではないので(ステップS804)、巡回地点N5(現在の巡回先CP)は前の巡回先PPとして設定された後に、管理情報から削除される(ステップS805)。その結果、管理情報は、図13(a)の状態から図13(b)の状態に遷移し、巡回地点N5が抜かれた分、<終了>マークが順番を詰める。
【0089】
ステップS805の後、6番目の巡回再帰処理が呼び出される(ステップS806)。この時点で、巡回コストXはC01+C12+C23+C35である。また、巡回経路TR2は、出発地NSP→巡回地点N1→巡回地点N2→巡回地点N3→巡回地点N5まで構成されている。また、巡回地点N5が前の巡回先PPとして設定されている。さらに、「先頭」は、図13(b)のように巡回地点N4である。この時点の状態(初期状態)で、6番目の巡回再帰処理が実行される。
まず、現在の巡回コストX(=C01+C12+C23+C35)は最小の総巡回コストYmin(=Y1)以上か否かが判断される(ステップS801)。今、X≧Ymin(=Y1)であると仮定する。この仮定下では、巡回経路TR2は最適であり得ない。したがって、以降の処理(ステップS802〜S813)を行う必要がなく、6番目の巡回再帰処理は打ち切られ、終了する。これによって、無駄な処理が行われなくなるので、演算回数が減ることとなる。
【0090】
以降、1番目の巡回再帰処理が閉じられるまで、図8のフローチャートに示された処理が行われる。1番目の巡回再帰処理が閉じられた時点で、最小の総巡回コストYminを有する最適な巡回経路が記録されていることになる。これによって、図3のステップS304(巡回順序決定処理)が終了する。
次のステップS305では、現在記録されている最適な巡回順序に従って、出発地NSPから目的地NDに至る一本の巡回経路を構成する。ステップS306では、求められた巡回経路がユーザーに提示されたり、車両の移動に伴う現在位置が巡回経路上に表示されたりする。
【0091】
以上のように、本実施形態のステップS304(巡回順序決定処理)では、深さ優先探索方法を基本方法とした処理が行われ、最適な巡回順序が調査される。この巡回順序決定処理では、現在得られている途中段階の巡回コストXが、今まで最小の総巡回コストYminを超えた時点で、現在の巡回先CPから派生する調査処理を打ち切る。つまり、最小の総巡回コストYminとなりえない組合せの調査処理を省略することができる。これによって、最適な巡回順序の選出に必要となる時間を短縮する事ができる。
【0092】
また、本ステップS304(巡回順序決定処理)では、選択対象としての巡回地点Niは、選択された時点で、図7の管理情報(リスト構造)から削除される。したがって、各巡回再帰処理が開始された時点で、図7の管理情報には、未選択の巡回地点Nj(j≠i)のみが管理されている。さらに、各巡回再帰処理では、現在の巡回先CPは、図7の管理情報の「先頭」から選択するだけである。これによって、効率的に未選択の巡回地点Niが選択される。その結果、最適な巡回順序の選出に必要となる時間を短縮する事ができる。
【0093】
また、本ステップS303(地点間経路計算処理)において、出発地NSP、目的地NDおよびn個の巡回地点N1〜Nnに含まれる2地点間の最小コスト経路を求める際に、各地点が探索開始地点として順に選択され(ステップS402)、その後、ダイクストラ法を用いて単方向探索処理(ステップS403およびS404)が行われる。これによって、m地点(mは、出発地NSP、目的地NDおよびn個の巡回地点N1〜Nnを合計した地点数)の各2地点間の探索処理をm×(m−1)回からm回に削減することができる。これによっても、最適な巡回順序の選出に必要となる時間を短縮する事ができる。
【0094】
(2)第2の巡回経路選出方法
第2の巡回経路選出方法では、第1の実施形態におけるデータ記憶部102(図1)、および第2の実施形態におけるデータ記憶部202(図2)に、予め決められた地点間の最小コスト経路結果(地点間コストおよび経路データ)が追加記録されている。さらに、予め決められた地点には、その地点周辺にアクセスするための主要道路上の地点も含むこととする。この地点を出入口地点と呼ぶ。
ここで、図14は、予め決められた地点の一例である。図14において、網掛けされた観光区域α内に、丸印で表された観光地点SPが予め決められた地点として選択されている。また、この観光区域αにアクセスする道路として、二重丸の国道上の地点(C1〜C3)と三重丸の高速IC上の地点(S1)が、出入口地点として予め決められた地点に追加されている。第2の巡回経路選出方法は、車載ナビゲーションシステム上で、観光区域α内の複数の観光地SPを巡回する最適な巡回順序を求める場合を想定している。第2の巡回経路選出方法の概略は、第1のそれと異なり、巡回地点N1〜Nnは、予め決められた地点の中から選択された後に、データ記憶部102(または202)に記憶された各地点間の経路コストが読み出される。その後に、図5のようなコストマトリクスが作成され、第1の巡回経路選出方法と同様に最適な巡回順序が決定される。以下、本発明の第2の巡回経路選出方法をより詳細に説明する。
【0095】
図15は、第2の巡回経路選出方法の処理手順を示すメインフローチャートである。図15において、まず、第1の巡回経路選出方法と同様に、出発地NSPおよび目的地NDがユーザーにより選択される(ステップS1001)。次に、予め決められた地点群の中から、n個の巡回地点(配送地点)N1〜Nnが選択される(ステップS1002)。つまり、この予め決められた地点は、巡回地点N1〜Nnを選択するための候補地点である。次に、予め記憶された各地点間の最小コスト経路結果から、ステップS1002で選択された各巡回地点Niに含まれる地点間コストと経路データとが読み出される(ステップS1003)。読み出された地点間コストと経路データとは、地点間経路情報としてRAM上に記憶される。
【0096】
次に、予め定められた地点ではない出発地NSPと目的地NDとを含む巡回経路TRを求めるために、端地点追加処理が行われる(ステップS1004)。端地点追加処理は、簡単に述べると、出発地NSPから各巡回地点N1〜Nnまで、および各巡回地点N1〜Nnから目的地NDまでの地点間コストおよび経路データを求めるための処理である。
図16は、端地点追加処理の処理手順を示すフローチャートである。図16において、まず、出発地NSPは予め決められた地点に含まれるか否かが判断される(ステップS1101)。
予め決められた地点に含まれるのであれば、出発地NSPから各巡回地点N1〜Nnへの最小コスト経路結果はデータ記憶部102(または202)に記録されているので、無処理でステップS1104に進む。
一方、出発地NSPが予め決められた地点に含まれていなければ、ステップS1102およびS1103を行って、出発地NSPから選択された各巡回地点N1〜Nnへの最小コスト経路を求める。ステップS1102では、まず、出発地NSP、および選択された巡回地点N1〜Nnを含む領域の地図データがRAM(図示せず)上に読み込まれる。さらに、出発地NSPを探索開始点としてダイクストラ法を用い、出発地側探索処理(車両の進む方向に対して順方向に探索を広げる探索処理)が行われる(ステップS1102)。次に、選択された各巡回地点N1〜Nnから経路構成が行われた後、出発地NSPから当該各巡回地点N1〜Nnまでの最小コスト経路が求められる。そして、最小コスト経路としての地点間コストと経路データが地点間経路情報に追加される(ステップS1103)。その後、ステップS1104が行われる。
【0097】
次に、目的地NDは予め決められた地点に含まれるか否かが判断される(ステップS1104)。
予め決められた地点に含まれるのであれば、各巡回地点N1〜Nnから目的地NDへの最小コスト経路結果はデータ記憶部102(または202)に記録されているので、端地点追加処理は終了する。
一方、目的地NDが予め決められた地点に含まれていなければ、ステップS1105およびS1106が行われ、選択された各巡回地点N1〜Nnから目的地NDへの最小コスト経路が求められる。ステップS1105では、まず、目的地ND、および選択された巡回地点N1〜Nnを含む領域の地図データがRAM上に読み込まれる。さらに、目的地NDを探索開始点としてダイクストラ法を用い、目的地側探索処理(車両の進む方向に対して逆方向に探索を広げる探索処理)を行う(ステップS1105)。次に、ステップS1106で、選択された各巡回地点N1〜Nnから経路構成が行われた後、選択された各巡回地点N1〜Nnから目的地NDまでの最小コスト経路が求められる。そして、最小コスト経路としての地点間コストと経路データとが地点間経路情報に追加される。
以上で端地点追加処理(ステップS1004)が終了し、これによって、出発地NSP、目的地NDおよび各巡回地点N1〜Nnに含まれる2地点間の地点間情報が得られたことになる。
【0098】
再度図15を参照する。ステップS1004(端地点追加処理)が終了すると、端地点(出発地NSPおよび目的地ND)と、各巡回地点N1〜Nnとの間の最小コスト経路が求められたかどうかが判定される(ステップS1005)。ステップS1005の判定は、ステップS1004の端地点追加処理において、RAMに読み込んだ地図データの範囲内で、出発地NSPから各巡回地点N1〜Nn、または各巡回地点N1〜Nnから目的地NDまでの経路が求められなかった場合のために行われる。
ステップS1005で、経路が求められていたならば、ステップS1007に直接進み、巡回順序決定処理に進む。
一方、ステップS1005で、経路が求められていなければ、出発地NSPの代わりに仮の出発地DNSP、または目的地NDの代わりに仮の目的地DNDを設定するための出入口地点選択処理が行われる。
【0099】
図17は、出入口地点選択処理(ステップS1006)の詳細な処理手順を示すフローチャートである。図17において、まず、出発地NSPから各巡回地点N1〜Nnまでの経路が求められたか否かが判定される(ステップS1201)。ステップS1201で経路が求められていると判定されれば、無処理でステップS1205に進む。一方、ステップS1201で経路が求められていないと判定されれば、ステップS1202が行われる。
ステップS1202では、出発地NSPを探索開始点として、一方向の階層別探索処理を広げる。つまり、ダイクストラ法等を使用して、最下位階層の地図データで出発地NSPから探索処理を広げて、一定の範囲が探索終了すれば、より粗い道路網で、より広い範囲を記録した1階層上の地図データを用いて探索を行う処理が最上位階層まで繰り返される。本探索処理中に、一階層の探索処理が終了した後で、出入口地点(例えば、図14のC1〜C3、S1)が探索終了状態になったか否かがチェックされた後に、接続コストが記録される。
次に、出発地NSPから最小経路コストで到達可能な出入口地点が、仮の出発地DNSPと設定される(ステップS1203)。この時、観光区域αの境界上の地点(C1〜C3)が探索終了状態になっていれば、観光区域αから離れた主要道路上の地点(S1)よりも優先させてもよい。次に、出発地NSPから仮の出発地DNSPへの経路コストと経路データとが記録され(ステップS1204)、出発地側の処理が終了する。
【0100】
次に、各巡回地点N1〜Nnから目的地NDまでの経路が求められたかどうかが判定される(ステップS1205)。ステップS1205で経路が求められていると判定されれば、出入口地点選択処理(ステップS1006)を終了する。一方、ステップS1205で経路が求められていないと判断されれば、ステップS1206が行われる。
ステップS1206では、目的地NDを探索開始点として、上述した一方向の階層別探索処理を広げる。本探索処理中に、一階層の探索処理が終了した後で、出入口地点(例えば、図14のC1〜C3、S1)が探索終了状態になったかどうかがチェックされた後に、接続コストが記録される。次に、ステップS1207では、目的地NDまで最小経路コストで到達可能な出入口地点が、仮の目的地DNDと設定される。この時、観光区域αの境界上の地点(C1〜C3)が探索終了状態になっていれば、観光区域から離れた主要道路上の地点(S1)よりも優先させてもよい。次に、仮の目的地DNDから目的地NDへの経路コストと経路データとが記録され(ステップS1208)、目的地側の処理を終了する。以上で、図15のステップS1006(出入口地点選択処理)は終了する。
【0101】
なお、以上の説明では、一方向探索の階層別探索方法を採用したが、観光区域αの境界上の地点(C1〜C3)が属する道路が記録されている地図の階層以上においては、観光区域αの境界上の地点(C1〜C3)の初期コストを0として逆方向の探索を実施し、双方向の階層別探索方法が採用されても良い。この場合には、観光区域αから離れた主要道路上の地点(S1)は、出入口地点として、予め決められた地点に含めなくとも良い。
また、以上の説明では、出発地NSP(または目的地ND)からの最小経路コストで到達可能な出入口地点を自動的に仮の出発地DNSP(または仮の目的地DND)として採用したが、ユーザーにどのアクセス道路を選びたいか選択させても良い。
【0102】
再度図15を参照する。ステップS1006が行われた後、各巡回地点N1〜Nnを巡回する順序を決定する巡回順序決定処理が行われる(ステップS1007)。ステップS1007の処理は、前述の図3のステップS304の処理と同様なので、詳細は省略する。ただし、ステップS1007では、ステップS1006の出入口地点選択処理で、仮の出発地DNSPまたは仮の目的地DNDが選択されていれば、これらは出発地NSPまたは目的地NDと同等に扱われる事とする。次に、ステップS1007で得られた最適な巡回順序に従って、ステップS1003、ステップS1004、ステップS1006で求められた経路データがつなぎ合わされ、出発地NSP(仮の出発地DNSPを含む)から目的地ND(仮の目的地DNDを含む)までの一本の巡回経路TRが構成される(ステップS1008)。最後に、求められた巡回経路TRをユーザーに提示したり、車両の移動に伴う現在位置を巡回経路上に表示し、進むべき方向を案内したりする(ステップS1009)。
【0103】
以上のように、第2の巡回経路選出方法によれば、前提条件として、巡回地点N1〜Nnとして選択可能な地点が予め決定されている。さらに、これらの地点に関する地点間情報(地点間コストおよび経路データ)が予め求められている。これによって、各巡回地点間の経路を計算する必要がなくなる場合があり、最小の総巡回コストYminを有する巡回順序を選出するために必要な時間を短縮することができる。
【0104】
また、第2の巡回経路選出方法によれば、任意の出発地NSPまたは目的地NDを探索開始点としてダイクストラ法を基本とした探索処理を行うことにより、出発地NSPから各巡回地点N1〜Nn、または各巡回地点N1〜Nnから目的地NDへの経路が1回の探索処理で求められる。これによって、任意の出発地NSPからの最小コスト巡回経路、または任意の目的地NDまでの最小コスト巡回経路の選出時間を短縮することができる。
【0105】
また、第2の巡回経路選出方法によれば、巡回区域(図14における観光区域αに相当)へアクセスする道路上の地点が、出入口地点として予め決定されている。そして、上記予め決められた巡回用の地点と同様に、各出入口地点と各巡回地点N1〜Nnとして選択可能な地点との間、および各巡回地点N1〜Nnとして選択可能な地点と、各出入口地点との間の経路は、予め求められ経路情報として記録されている。そのため、巡回区域への入口地点を仮の出発地DNSP、または当該巡回区域からの出口地点を仮の目的地DNDとして選択することにより、仮の出発地DNSPからの巡回経路TR、または仮の目的地DNDまでの巡回経路TRを求めることができる。これによって、車載機のようにRAMの容量が少ない環境において、出発地NSPから各巡回地点N1〜Nnへの経路、または各巡回地点N1〜Nnから目的地NDまでの経路が求められない場合でも、選択された巡回地点N1〜Nnの巡回経路TRを求めることができる。
【0106】
また、第2の巡回経路選出方法によれば、上記出入口地点として、上記巡回区域の境界を横切る主要道路上の複数の地点が選択される。これによって、最低限必要な出入口地点を機械的に簡単に設定することができるので、出入口地点の選択を簡略化することができ、さらに、探索処理を用いて自動的に適切な仮の出発地DNSP、または仮の目的地DNDを選択することができる。
【0107】
また、第2の実施形態によれば、上記出入口地点として、上記巡回区域には含まれないが、その周辺を通過するより主要な道路上の地点が選択される。これによって、出発地NSPまたは目的地NDからの一方向の階層別探索方法で、当該出発地NSPまたは目的地NDへ最小コストで到達可能な出入口地点を選択することができる。その結果、巡回経路選出処理を簡略化でき、最適な巡回順序の選出までに必要な時間を短縮できる。
【0108】
さらに、第2の実施形態によれば、上記仮の出発地DNSP、または仮の目的地DNDは、出入口地点の中からユーザーにより選択可能にされることにより、好きな方向から巡回区域に進入または脱出できるので、ユーザーの好みで巡回区域までの進入道路または巡回区域からの脱出道路を選択することができる。
【0109】
(3)第3の巡回経路選出方法
第3の巡回経路選出方法では、第1の実施形態におけるデータ記憶部102(図1)、および第2の実施形態におけるデータ記憶部202(図2)に、予め決められた地点間の最小コスト経路結果(地点間コストのみ)を追加記録しておく。予め決められた地点には、その地点周辺にアクセスするための主要道路上の地点も含むこととする。この主要道路上の地点を、以下、出入口地点と呼ぶ。第3の巡回経路選出方法と第2のそれとが異なる点は、予め決められた地点間の経路データが予め記録されていない点にある。
その上で、巡回地点選出時に、予め決められた地点の中から巡回する地点が選択される。その後、データ記憶部102(または202)に記憶された各地点間の経路コストが読み出され、コストマトリクスが作成される。その後、第2の巡回経路選出方法と同様に、選択された巡回地点N1〜Nnを巡回する順序が決定される。以下、第3の巡回経路選出方法について説明する。
【0110】
図18は、第3の巡回経路選出方法の処理手順を示すメインフローチャートである。図18のフローチャートは、第2の巡回経路選出方法を示すメインフローチャート(図15)とほぼ同一である。以下、異なる点について説明する。第3の巡回経路選出方法(図18)と第2のそれ(図15)との相違点は、以下の2点である。
第1の相違点は、図18のフローチャートでは、図15のステップS1003の代わりに、ステップS1303が実行されることである。第2の巡回経路選出方法では、図15のステップS1003において、選択した各巡回地点N1〜Nn間の経路コストと経路データとは、予め求められているため、RAM上に読み込まれてきた。しかし、第3の巡回経路選出手方法では、上記の通りデータ記憶部102(または202)には、予め定められた地点間の経路コストしか記録されていないので、図18のステップS1303において、選択した各巡回地点N1〜Nnに含まれる2地点間の経路コストのみがRAM上に読み込まれる。
【0111】
第2の相違点は、図18のステップS1307(図15のステップS1007に相当)とステップS1309(図15のステップS1008に相当)の間に、ステップS1308の地点間経路選出処理が行われる事である。第3の巡回経路選出方法では、上記の通りデータ記憶部102(または202)には、各地点間の経路データが記録されていない。そのため、ステップS1307の巡回順序決定処理で各巡回地点N1〜Nnの巡回順序が決定された後、ステップS1309で出発地NSPから目的地NDまでの巡回経路TRをつなぎ合わせることができない。そこで、ステップS1308の地点間経路選出処理で、出発地NSPから最初の巡回地点Niまで、最初の巡回地点Niから2番目の巡回地点Nj、…、最後の巡回地点Nkから目的地NDまでの部分経路を、周知の2地点間探索方法を繰り返すことにより求める。
【0112】
ここで、図19は、ステップS1308(地点間経路選出処理)の詳細な処理手順を示すフローチャートである。図19において、まず、出発地NSPが起点として選択される(ステップS1401)。次に、ステップS1307(図18)の巡回順序決定処理で決定された巡回順序に従って、起点の次の巡回地点Niを終点とする(ステップS1402)。ここで、ステップS1306(図18)の出入口地点選択処理で、仮の出発地DNSPまたは仮の目的地DNDが機械的に設定されている場合には、これらを終点として設定しない方が好ましい。ただし、仮の出発地DNSPおよび仮の目的地DNDがユーザー自身により設定された場合等には、これらを終点として設定する。
【0113】
次に、ダイクストラ法に代表される従来の2地点間探索方法を用いて、起点から終点までの最小コスト経路が算出された後、経路データがRAM上に記録される(ステップS1403)。次に、終点は目的地NDかどうかが判定される(ステップS1404)。ステップS1404で目的地NDと判定されれば、出発地NSPから目的地NDまでの巡回経路TRの部分経路が全て求められたとして、地点間経路選出処理は終了する。
一方、ステップS1404で目的地NDでないと判定されれば、ステップS1405が行われ、今回の終点が次回の起点として選択された上で、ステップS1402の処理に戻り、上記の処理を繰り返す。
【0114】
以上の地点間経路選出処理で求められた部分経路データを、図18のステップS1309でつなぎ合わせることにより、各巡回地点N1〜Nnを通過して出発地NSPから目的地NDまでに至る巡回経路TRが構成される。
【0115】
以上のように、第3の巡回経路選出方法によれば、巡回地点N1〜Nnとして選択可能な地点が予め決定されている。また、各選択可能な地点間の経路コストのみが予め記録されている。巡回経路TRの部分経路は2地点間探索処理を繰り返して求められる。これによって、第2の巡回経路選出方法のように、経路データが予め記録される必要がないので、データ記憶部102または202の記憶領域を有効利用することができる。
【0116】
また、第3の巡回経路選出方法によれば、出入口地点選択処理(ステップS1306)で決定された仮の出発地DNSPまたは仮の目的地DNDを飛ばして、出発地NSPから目的地NDまでの巡回経路TRの部分経路が求められる。これによって、ユーザが真に立ち寄りたい巡回地点N1〜Nnに関する、最小の総巡回コストYminを有する巡回経路TRのみを選出することができる。これによって、自動的に選択された仮の出発地DNSPまたは仮の目的地DNDを不自然に通過する巡回経路TRの選出を防ぐことができる。
【0117】
また、第3の巡回経路選出方法によれば、ユーザー自身が設定した仮の出発地DNSPまたは仮の目的地DNDを飛ばさずに、出発地NSPから目的地NDまでの巡回経路TRの部分経路が求められる。これによって、ユーザーが設定した仮の出発地DNSPまたは仮の目的地DNDを通過する巡回経路TRを選出することができる。その結果、ユーザーが意図したアクセス道路を必ず通って巡回区域に進入、または巡回区域から脱出する巡回経路TRを求めることができる。
【0118】
(4)第4の巡回経路選出方法
本巡回経路選出方法のメインフローチャートは、上記第1〜第3の巡回経路選出方法のメインフローチャート(図3、図15、図18)と同様とする。ここで、上記第1〜第3の巡回経路選出方法では、同一の巡回順序決定処理(図6)を用いていた。この巡回順序決定処理は、巡回すべき地点数が十数地点以上になると処理時間が増大し、実用的な時間で最適な巡回順序を求めることは難しいという問題点がある。そこで、この問題を解決するため、図6の巡回順序決定処理の代わりに、下記のような巡回順序決定処理を採用する。
【0119】
図20は、第4の巡回経路選出方法に係る巡回順序決定処理を示すフローチャートである。図20において、選択された全ての巡回地点N1〜Nnが対象地点群として選択される(ステップS1501)。次に、多数の全巡回地点N1〜Nnを一定数以下のグループに分割する再帰グループ化処理が行われる(ステップS1502)。
ここで、図21は、再帰グループ化処理の詳細な手順を示すフローチャートである。図21において、まず、対象地点群には、一定数以上の巡回地点N1〜Nnが含まれるか否かが判定される(ステップS1601)。この一定数の値は、使用する装置のハード性能に依存するものが、ここでは10個としておく。ただし、十分短時間で巡回経路が求められる時間であれば、上記一定数の値はいくつでもかまわない。ステップS1601で一定数未満と判断されたならば、グループ化する必要はないとして、再帰グループ化処理を終了する。
【0120】
一方、ステップS1601で一定数以上と判断されたならば、ステップSS1602が実行される。ステップS1602では、まず、対象地点群の内、2地点間コストが最も小さい2個の巡回地点Niが選択される。選択された2地点は同一グループとしてまとめられる(ステップS1602)。次に、グループ数が一定数以上であるか否かが判定される(ステップS1603)。ここで、グループ化されていない巡回地点Nj(j≠i)については、1地点が1グループとして換算される。ここで、一定数の値は、ステップS1601での一定数の値と同一とし、10個を採用する。ステップS1603において、グループ数が一定数以上であれば、さらにグループ化する必要があると判断し、ステップS1602の処理に戻る。一方、ステップS1603において、グループ数が一定数未満であれば、これ以上グループ化を行う必要はないと判断し、ステップS1604に進む。以降のステップS1604〜S1608は、ステップS1602およびS1603で構成されたグループに対して、下記のような調査が行われる。
【0121】
まず、未調査のグループの中の1つが調査対象として選択される(ステップS1604)。次に、調査対象のグループに含まれる巡回地点Niの数が一定数以上かどうかが判定される(ステップS1605)。ここで、一定数の値は、ステップS1601での一定数の値と同一とし、10個を採用する。ステップS1605で、巡回地点Niの数が一定数未満であれば、調査対象のグループをさらにグループ化する必要(つまり、下位層のグループを作成する必要)はないと判断され、無処理でステップS1608が行われる。
【0122】
一方、ステップS1605で、地点数が一定数以上であれば、処理時間が増大するとみなして、さらに下層グループを作って、調査対象のグループを分割する必要があると判断され、ステップS1606およびS1607が行われる。まず、調査対象のグループに含まれる全ての巡回地点Niが処理対象として設定される(ステップS1606)。次に、処理対象となる巡回地点Niを下位層グループに分割するために、図21の再帰グループ化処理が再帰的に実行される。この再帰グループ化処理により、グループが階層的に構成されていく。再帰グループ化処理は、各下位層グループに含まれる巡回地点Nj(j⊂i)の数が一定数未満になるまで繰り返される。
【0123】
次に、ステップS1608に進み、全グループがステップS1604において調査対象となったか否かが判定される(ステップS1608)。ステップS1608で、全グループの調査が終了していなければ、ステップS1604に戻り、次の調査対象グループを選択し、以降の処理を繰り返す。一方、ステップS1608で、全グループの調査が終了していれば、再帰グループ化処理が終了する。
なお、本実施形態では、グループ化する際(ステップS1602)に2地点間コストが小さい地点同士からグループ化を行ったが、空間距離で近い地点同士からグループ化を行っても良い。また、別々のグループに属する2地点をグループ化した結果、大きなグループができる場合がある。このグループが他のグループよりもはるかに大きい場合には、グループ化を行わないようにしても良い。
【0124】
ここで、上記再帰グループ化処理によりグループ分けされた地点の例を、図22に示す。図22において、巡回地点Nが17地点(白丸参照)あるが、図21の再帰グループ化処理により、8個のグループG1〜G8(網掛け部)が形成されている。また、出発地NSPを☆印、目的地NDを★印で表している。
再度図20を参照する。ステップS1502の再帰グループ化処理が終了すると、当該グループ分けした結果に従って、ステップS1503の階層的巡回順序決定処理が行われる。このステップS1503では、上位層のグループの巡回順序が決定された後、下位層のグループの巡回順序が決定されるという処理が繰り返し実行される。その結果、最終的には、近似的に最小の総巡回コストYminを有する巡回順序が求められる。以下、階層的巡回順序決定処理(ステップS1503)の詳細な手順を、図23を参照して説明する。なお、この階層的巡回順序決定処理もまた再帰的な処理である。
【0125】
最初の階層的巡回再帰処理が呼び出されると、まず、図23のステップS1801において、先頭の巡回地点Ntを含むグループが先頭巡回グループとして選択される。さらに、最終の巡回地点Neを含むグループが最終巡回グループとして選択される(ステップS1801)。ただし、最初の階層的巡回処理では、出発地NSPから最小経路コストで到達できる巡回地点を含むグループが先頭巡回グループとして、目的地NDへ最小経路コストで到達できる巡回地点を含むグループが最終巡回グループとして選択される。
ステップS1801の次に、先頭巡回グループおよび最終巡回グループ以外のグループが未選択状態に設定される。さらに、未選択状態のグループについて、初期の管理情報(リスト構造)が作成される(ステップS1802)。今回作成される管理情報の説明は、第1の巡回経路選出方法で詳述したので割愛する。ただし、第1の巡回経路選出方法では巡回地点Niについて管理情報が作成されたが、最初の階層的巡回順序決定処理では、最上位層のグループGiについて管理情報が作成される点には注意を要する。つまり、最初の階層的巡回順序決定処理では、最上位のグループGiがひとまとまりになって巡回地点としてみなされる。
【0126】
次に、先頭巡回グループが、前の巡回先PPとして選択される。さらに、最終巡回グループが、便宜上、目的地NDとして選択される(ステップS1803)。さらに、現在の巡回コストXが初期化される(ステップS1804)。次に、最上位層のグループGiを、同じグループを重複通過することなく、効率的に巡回する巡回経路TRを求めるために、巡回再帰処理が行われる。本巡回再帰処理の説明は、第1の巡回経路選出方法で詳述した巡回再帰処理(図8)と同様なので省略する。ただし、本巡回再帰処理においては、最上位のグループGiを第1の巡回経路選出方法で説明した巡回地点Niと同様に扱う。また、あるグループGaと他のグループGbとの間のグループ間コスト(第1の巡回経路選出方法における地点間コストに相当)は、あるグループGaに属するいずれかの巡回地点Naと、他のグループGbに属するいずれかの巡回地点Nbとの組合せの中で、地点間コストが最小コストであるものとする。この時、あるグループGa内で選択された巡回地点Nj(j∈a)が、当該グループGa内で最終の巡回地点Neとなる。また、他のグループGb内で選択された巡回地点Nk(k∈b)が、当該グループGb内での先頭の巡回地点となる。
【0127】
以上、ステップS1801〜ステップS1805の処理で、最上位層のグループGiを最も効率的に巡回できる巡回順序を求めることができる。参考までに、この一連の処理で得られた最上位層のグループGiの巡回経路TRの一例を、図24に示す。図24において、まず、出発地NSPから、全ての最上位層のグループG1〜G8を通過し、目的地NDに至る巡回経路TRの概要(太い矢印の経路)を決定することができる。
ステップS1806以降の処理では、各グループ内に含まれる巡回地点Niの最適な巡回順序が決定される。まず、未調査のグループGiの中の1つが、調査対象として選択される(ステップS1806)。次に、調査対象のグループGx(x∈i)の中に、2個以上の巡回地点Nx(x∈i)が含まれるか否かが判定される(ステップS1807)。ステップS1806で巡回地点Nxが1つであれば、無処理でステップS1810に進む。一方、ステップS1806で巡回地点Nxが2個以上含まれていれば、ステップS1808が行われる。
【0128】
ステップS1808において、調査対象のグループGxに含まれる全ての巡回地点Nxが処理対象として選択される(ステップS1808)。次に、調査対象のグループGxに含まれる巡回地点Nxの最適な巡回順序を決定するために、図23の階層的巡回順序決定処理が再帰的に実行される(ステップS1809)。この階層的巡回順序決定処理が再帰されることにより、最終的には、全ての巡回地点Niが一本の巡回経路TRでつながることになる。
次に、全てのグループGiを調査したかどうかが判定される(ステップS1810)。ステップS1810で、未調査のグループGiが存在すれば、ステップS1806に戻り、次のグループを調査対象とし、以上の処理が繰り返される。一方、ステップS1810で、全てのグループが調査済みであれば、階層的巡回順序決定処理は終了する。これによって、図20に示された巡回順序決定処理が終了する。参考までに、以上の処理により得られた巡回経路TRの一例を、図25に示す。このように、各階層のグループ間経路を合成することにより、全ての巡回地点Niがつながった全体の巡回経路TRを求めることができる。
【0129】
なお、第4の巡回経路選出方法では、上位階層のグループから下位層のグループへと処理を進めることにより巡回経路TRを求めていったが、下位階層のグループから上位層のグループへと処理を進めることにより巡回経路TRを求めるようにしても良い。つまり、下位層から各地点(グループ)が始点および終点となる最小経路コストの部分巡回経路が求められ記録される。部分巡回経路は、同じ階層に含まれる2地点(または2グループ)の全ての組み合わせについて記録される。そして、全体として最小経路コストとなる巡回経路TRが選出されればよい。
【0130】
以上のように、第4の巡回経路選出方法によれば、近接する巡回地点Niが1グループにまとめられた上で、巡回経路が求められるので、調査対象となる組合せの数が減少するので、特に巡回地点Niの個数が多い場合には、巡回経路TRを選出するまでに要する時間を短縮することができる。
また、第4の巡回経路選出方法では、2地点間の空間距離が近いものが優先的に1グループにまとめられるので、比較的簡単な処理で選出された巡回経路TRの品質を向上することができる。
また、第4の巡回経路選出方法によれば、2地点間の距離(または旅行時間)に関する評価値(経路コストに相当)の小さいものが優先的に1グループにまとめられる。したがって、空間距離的には近くても、2地点間の道路が迂回しているような2個の巡回地点Niのグループ化を避けることができる。これによって、選出された巡回経路TRの品質を向上することができる。
【0131】
また、第4の巡回経路選出方法によれば、グループ化された結果、他のグループと比較して非常に広範囲な一つのグループができあがる場合がある。そのグループ化が無効とされるので、各グループの大きさを平均化することができる。その結果、いびつな巡回経路TRの選出を防ぐことができる。これによって、選出された巡回経路TRの品質を向上することができる。
また、第4の巡回経路選出方法によれば、最適な巡回順序が決定されるとき、上位層のグループから巡回順序を決定することにより、まず上位層で大まかな巡回順序が決定される。これによって、全体の計算量を削減することができるので、最適な巡回順序を選出するために必要な処理時間を短縮することができる。
【0132】
(5)第5の巡回経路選出方法
図1に示すカーナビゲーションシステムは車載されるという性質上、当該システム内のRAMの容量に制限があったり、プロセッサが非力だったりする。かかる事情から、処理負荷が軽く、かつ使用するRAMの容量が少ない巡回経路選出方法が要望されている。かかる要望は、以下の第5の巡回経路選出方法により実現される。
【0133】
図26は、第5の巡回経路選出方法の処理手順を示すフローチャートである。図26のメインフローチャートに従う処理は、主として、図1のナビゲーション装置104により行われる。
図26において、ユーザーは、前述と同様にして、出発地および目的地と、複数の巡回地点とを指定する(ステップS2601,S2602)。
【0134】
次に、選択された出発地、目的地および複数の巡回地点に基づいて、地点間経路計算処理が行われる(ステップS2603)。地点間経路計算処理を概説すると、指定された出発地、目的地、複数の巡回地点から選択可能な2地点が選択され、選択された2地点間の最小コストと、最小コスト経路とが求められる。ここで、最小コストは、好ましくは、選択された2地点間を車両で移動する際の旅行時間の内、最小の値を意味する。また、最小コスト経路とは、旅行時間が最小となる経路を意味する。求められた最小コストは、最適な巡回経路を求める際の評価値として、コストマトリクスに記述される。
【0135】
ここで、コストマトリクスは、図5を参照して既に説明したように、選択された2地点の内の起点から終点までの評価値(最小コスト)を、起点を行とし終点を列とする行列に記録したものである。図5には、出発地および目的地の他に、巡回地点数をn地点として場合の例が示されている。例えば、出発地を起点とし、巡回地点N1を終点とする際の最小コストは50分である。ここで注意を要するのは、目的地を起点とするコスト、出発地を終点とするコスト、および出発地から目的地へのコストは必要ないので、コストマトリクスには「−」マークが予め記述される。
なお、上記コストは起点から終点へと到達するまでの評価値を表していれば良く、2地点間の移動距離または直線距離でも良いし、通過料金を考慮したものでもよい。
【0136】
図27は、図26のステップS2603の詳細な処理手順を示すフローチャートである。図27において、まず、経路探索を開始する地図情報の階層が設定される(ステップS2701)。ここで、第5の巡回経路選出方法に係るデータ記憶部102には、階層構造を有する地図情報が記録されている。つまり、最下位層の地図情報は、最も大きな縮尺で表された詳細な地図をデータ化したものである。また、最階層の地図情報は、予め定められた範囲(例えば、約1.5km四方)を、細街路まで詳細に表す。かかる最階層の地図情報がいくつも集まって、広い範囲の地図を構成することとなる。そして、より上位階層の地図情報になるほど、より小さな縮尺の地図となり、より広い範囲を粗く表す(つまり、より主要な道路が記録される)地図となる。そのため、ステップS2701では、各2地点間の評価値を計算する際に、どの階層から計算するか決定する。通常は、最下位階層から計算することが望ましいが、処理に必要となるRAM容量や、処理負荷を削減するため、中間階層以上から探索を開始しても良い。また、出発地、目的地および各巡回地点が主要な道路上の地点であれば、当該主要な道路が記録されている階層から探索を開始しても良い。
【0137】
ステップS2701の次に、設定された階層の地図情報を用いて探索処理が行われる(ステップS2702)。図28は、ステップS2702の詳細な処理手順を示すフローチャートである。まず、出発地、目的地および各巡回地点が探索開始点候補として設定される(ステップS2801)。次に、探索開始点候補の中から、未選択の地点がひとつ選択され、選択された地点が探索開始点として設定される。次に、設定された探索開始点およびその周辺の地図情報が、データ記憶部102からRAMへと読み込まれる(ステップS2803)。読み込まれる地図情報が表す範囲は、予め定められている。
【0138】
ステップS2803の次に、探索開始点または後述する上位移行地点から、出発地側探索処理および目的地側探索処理が行われる(ステップS2804)。これらの探索手法としては、周知技術であるダイクストラ手法を用いることができる。ただし、探索開始点または上位移行地点から、出発地に対しては出発地側探索処理、当該探索開始点等から目的地に対しては目的地側探索処理のみでよい。各探索処理実行中には探索結果として、探索開始点から他の地点への到達コストと、当該2地点間での通過リンク(または、ひとつ前の通過ノード)の情報を記録しておく。
次に、探索範囲の端点であり、上位階層に記録されている道路上の地点が上位移行地点として記録され、探索開始点から当該上位移行地点への到達コストが記録される。また、探索開始点から上位移行地点までの経路データを候補経路として記録する(ステップS2805)。なお、ステップS2805では、経路データの記録を行わない場合もあり得る。その場合は、後述のステップS2605(図26)において、ステップS2604で決定された巡回順序に従って、従来の2地点間探索を繰り返すことにより、経路データを作成する。
【0139】
ステップS2805の次に、未選択の地点があるかどうかが判定され、あればステップS2802に戻り、次の探索開始点が選択された後、以降の処理が繰り返される。未選択の地点がなければ、階層内探索処理を終了する。
【0140】
ここで、図27を再度参照する。ステップS2702が終了すると、現在設定されている階層において、2地点間経路が求められたかどうかを判定する接続判定処理が行われる(ステップS2703)。図29は、この接続判定処理の詳細な手順を示すフローチャートである。最初に、未接続の2地点間が判定対象候補として設定される(ステップS2901)。
【0141】
次に、設定された判定対象候補のうち、未判定のものがひとつ選択され、判定対象として設定される(ステップS2902)。
次に、上記階層内探索処理において、判定対象の2地点間経路が求められたかどうかが判断される(ステップS2903)。例えば、地点Aから地点Bへの2地点間経路が求められたかどうか判断するためには、地点Aからの出発地側探索結果と、地点Bからの目的地側探索結果とを参照し、共通する探索済み地点が存在するかどうか調査する。もし、共通する探索済み地点が存在すれば、地点A側から共通の探索済み地点への到達コストと、地点B側から当該探索済み地点への到達コストとを基に、地点Aから地点Bまでの総コストが計算され、総コストが最小となる地点を通過する経路が当該地点間の経路とみなされる。
【0142】
もし、ステップS2903で、共通する探索済み地点が存在しなければ、2地点間経路が求められなかったものとして、無処理でステップS2906に進む。一方、ステップS2903で、共通する探索済み地点が存在すれば、当該ステップで求められた2地点間経路の総コストが、2地点間コストとしてコストマトリクスに記録される(ステップS2904)。
【0143】
さらに、ステップS2903で求められた地点間経路の経路データが構成される(ステップS2905)。その際に、現在設定されている階層における探索経路の端点が、下位階層からの上位移行地点であれば、ステップS2805で記録された下位階層の候補経路データから該当するものを選択して端点に追加することで、地点Aから地点Bまでの全ての経路が構成され、その経路が地点間経路情報として記録される。
なお、ステップS2905が行われない場合もあり得る。その場合は、後述のステップS2605(図26)において、ステップS2604で決定された巡回順序に従って、従来の2地点間探索を繰り返すことにより、経路データを作成する。当然ながら、ステップS2805(図28)での経路データの記録も必要ではなくなる。
【0144】
次に、判定対象候補のうち、未判定の地点間が存在するかどうかが判断され(ステップS2906)、存在すればステップS2902に戻り、別の判定対象が選択された後、以降の処理が繰り返される。一方、ステップS2906で未判定の地点間が存在しなければ接続判定処理を終了する。
【0145】
再度図27を参照する。ステップS2703が終了すると、必要な全地点間の経路(例えば、図5の数値が書かれている欄の起点・終点間の経路)が求められたかどうかが判断される(ステップS2704)。求められていない地点間の経路が存在すれば、探索対象の階層を上位階層へ移し(ステップS2705)、ステップS2702に戻って、当該階層において階層内探索処理から繰り返す。一方、ステップS2704で、必要な地点間の経路が全て求められていれば、地点間経路計算処理を終了する。以上で、コストマトリクスの空欄が埋められた事になる。
【0146】
再度図26を参照する。ステップS2603の次に、巡回地点の巡回順序が決定される(ステップS2604)。カーナビゲーションシステムで巡回順序を決定する場合、巡回地点数は数地点程度(例えば、5地点)であるので、通常の深さ優先探索手法を用いれば良い。
次に、決定された巡回順序に従って、出発地から目的地までの経路データが作成される(ステップS2605)。本実施形態では、図29のステップS2905において、各2地点間の経路データを記録しているので、ステップS2604で決定された巡回順序に従って、各2地点間の経路データを順次読み出してくればよい。
【0147】
なお、図28のステップS2805での候補経路の経路データの記録、および/または、図29のステップS2906での地点間経路の経路情報の記録が行われていない場合には、ステップS2604で決定された巡回順序に従って、通常の2地点間探索処理を各区間分だけ繰り返す事により、経路データを作成することも可能である。
ステップS2605の次に、求められた巡回経路をユーザーに提示したり、現在地の移動に伴い巡回経路上を誘導したりする。
【0148】
以上説明した、図26の地点間経路計算処理(ステップS2603)により、各地点間の経路算出処理の負荷が次のように軽減される。例えば、巡回地点が3地点(N1、N2、N3)の場合、巡回地点同士の各2地点間の組合せは6通りである。この6通りの経路を2地点間探索を6回繰り返して探索すると図30から図35のようになる。ここで、図30〜図35は、2地点間探索の繰り返しで各地点間経路を求める処理の説明図である。本説明図においては、使用する地図情報は2階層と仮定している。この場合、下位階層の出発地側および目的地側探索回数は12回、上位階層の出発地側および目的地側探索回数は同じく12回となる。
【0149】
それに対して、本実施形態に係る地点間経路計算処理では、図36のような処理となる。図36は、本実施形態で各地点間経路を求める処理の説明図である。本実施形態においては、図36に示すように、下位階層で各巡回地点から出発地側および目的地側探索処理を広げ、その後上位階層へ移行して続きの探索処理を続行する動きとなる。そのため、下位階層の出発地側および目的地側探索回数は6回、上位階層の出発地側および目的地側探索回数も同じく6回で済む。このように、比較的軽い負荷で各地点間経路を求めることができる。
【0150】
ここで、上記実施形態では、データ記憶部102に記録されている地図情報は階層構造としたが、1階層でも良い。その場合、図27のステップS2701、ステップS2704およびステップS2705の処理は不要となるが、図28のステップS2804の探索処理は、各地点間経路が求められるように十分広い範囲で探索処理を実施する必要がある。
なお、図28のステップS2804で実施される探索処理で使われる評価値と、コストマトリクスに記録される評価値は必ずしも同一である必要はない。例えば、得られた地点間経路を基に、コストマトリクスに記録する評価値を計算し直しても良い。
【0151】
以上のように、本実施形態によれば、各地点間の最小評価値経路を求めた上で、経路上の評価値を2地点間評価値として採用することにより、実際に走行する道路を想定した評価値にすることができるので、違和感のない効率的な巡回経路を求めることができる。
また、本実施形態によれば、各地点(出発地、目的地および各巡回地点)を探索開始点とし、少なくとも出発地側探索処理または目的地側探索処理のどちらか一方を全地点に対して行って、各地点間経路を求めることにより、探索処理回数を最小限に押さえることができるので、全地点間の経路を短時間で選出することができる。
【0152】
また、本実施形態によれば、階層化された地図情報を使用し、下位階層において各地点を探索開始点とした探索処理を全地点に対して実施後、接続判断を行い、接続していない経路があれば上位階層に移行して関連する地点の探索処理を続行することにより、その階層に記録された道路網に適した探索範囲を設定することができるので、遠い地点であっても全地点間の経路を短時間で選出することができる。
【0153】
また、本実施形態によれば、最後に必要な区間経路を探索し直す事により、各地点間の最小評価値経路を計算する際に経路データを残しておかなくても巡回経路を構成することができるので、車載機上で使用するRAM容量を削減することができる。
また、本実施形態によれば、各地点間の最小評価値経路を計算する際に経路データを残しておくことにより、この経路データを参照することで巡回経路を構成することができるので、経路構成のために探索処理を実施しなくてすむため、巡回経路選出時間を短縮することができる。
【0154】
また、上記第1〜第5の巡回経路選出方法の説明では、深さ優先探索方法を例に採り上げて、最適な巡回経路を求めるようにしていた。しかし、深さ優先探索方法だけでなく、シュミレーテッドアニーリング法(いわゆるSA法)、遺伝アルゴリズム(いわゆるGA法)またはニューラルネット法等、従来から知られている方法に、上記各巡回経路選出方法を適用しても良い。
【0155】
なお、第1および第2の実施形態において、各機能ブロックは、ハードウェアによって構成されても良いし、マイクロコンピュータのマルチタスクなどのプログラム処理の結果として構成されても良い。
また、本発明は、プログラムによって実現し、これをフロッピーディスク等の記録媒体に記録して移送することにより、独立した他のコンピュータ・システムで容易に実施することができる。この場合、記録媒体は、フロッピーディスクに限らず、光ディスク、ICカード、ROMカセット等、プログラムを記録できるものであれば、同様に実施することができる。
【図面の簡単な説明】
【図1】 本発明の第1の実施形態に係るカーナビゲーションシステムの構成を示すブロック図である。
【図2】 本発明の第2の実施形態に係る配送車両管理システムの構成を示すブロック図である。
【図3】 第1の巡回経路選出方法の処理手順を示すメインフローチャートである。
【図4】 図3の地点間経路計算処理(ステップS303)の詳細な手順を示すフローチャートである。
【図5】 コストマトリクスの一例を示している。
【図6】 図3の巡回順序決定処理(ステップS304)の詳細な手順を示すフローチャートである。
【図7】 リスト構造を有する管理情報の一例を示している。
【図8】 図6の巡回再帰処理(ステップS604)の詳細な手順を示すフローチャートである。
【図9】 巡回経路の3つの例を示している。
【図10】 巡回地点N1〜N5が選択された場合に構成されるコストマトリクスを示している。
【図11】 図8の巡回再帰処理の過程における管理情報の状態遷移を示している。
【図12】 図8の巡回再帰処理の過程において算出される総巡回コストY1および巡回経路TR2について処理が打ち切られる様子を示している。
【図13】 図8の巡回再帰処理の過程における管理情報の状態遷移を示している。
【図14】 網掛けされた観光区域α内に、丸印で表された観光地点SPが予め決められた地点の一例として示されている。
【図15】 第2の巡回経路選出方法の処理手順を示すメインフローチャートである。
【図16】 図15の端地点追加処理(ステップS1004)の詳細な手順を示すフローチャートである。
【図17】 図15の出入口地点選択処理(ステップS1006)の詳細な手順を示すフローチャートである。
【図18】 第3の巡回経路選出方法の処理手順を示すメインフローチャートである。
【図19】図18の地点間経路選出処理(ステップS1308)の詳細な手順を示すフローチャートである。
【図20】 第4の巡回経路選出方法に係る巡回順序決定処理の詳細な手順を示すフローチャートである。
【図21】図20の再帰グループ化処理(ステップS1502)の詳細な手順を示すフローチャートである。
【図22】 図20の再帰グループ化処理によりグループ化された巡回地点Nの1例を示している。
【図23】 図20の階層的巡回順序決定処理(ステップS1503)の詳細な手順を示すフローチャートである。
【図24】 図23の階層的巡回順序決定処理により求められた最上位階層のグループ間の巡回経路の1例を示している。
【図25】 図23の階層的巡回順序決定処理により求められた巡回経路の1例を示している。
【図26】 第4の巡回経路選出方法の処理手順を示すメインフローチャートである。
【図27】 図26の地点間経路計算処理(ステップS2603)の詳細な手順を示すフローチャートである。
【図28】 図27の階層内探索処理(ステップS2702)の詳細な手順を示すフローチャートである。
【図29】 図27の接続判定処理(ステップS2703)の詳細な手順を示すフローチャートである。
【図30】 2地点間探索の繰り返しにおいて、巡回地点N1→N2の経路を求める処理を説明するための図である。
【図31】 2地点間探索の繰り返しにおいて、巡回地点N1→N3の経路を求める処理を説明するための図である。
【図32】 2地点間探索の繰り返しにおいて、巡回地点N2→N3の経路を求める処理を説明するための図である。
【図33】 2地点間探索の繰り返しにおいて、巡回地点N2→N1の経路を求める処理を説明するための図である。
【図34】 2地点間探索の繰り返しにおいて、巡回地点N3→N1の経路を求める処理を説明するための図である。
【図35】 2地点間探索の繰り返しにおいて、巡回地点N3→N2の経路を求める処理を説明するための図である。
【図36】 第4の巡回経路選出方法で、巡回地点N1〜N3の2地点間の経路を求める処理を説明するための図である。
【図37】 従来の巡回経路探索方法の処理手順を示すフローチャートである。
【図38】 従来の他の巡回経路探索方法の処理手順を示すフローチャートである。
【符号の説明】
101 ロケーター
102 データ記憶部
103 操作部
104 ナビゲーション装置
105 情報提示部
201 無線装置
202 データ記憶部
203 操作部
204 コンピュータ
205 情報提示部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a patrol route selection method, and more particularly, to a method for efficiently patroling a plurality of points and selecting a patrol route from a departure point to a destination.
[0002]
[Prior art]
As is well known, social interest in traffic control technology and ITS-related technology has increased in recent years. Due to such social interests, a route search method for automatically selecting a practical route to a destination has been actively researched and developed, and has already been applied in various fields. As an application example thereof, there is an in-vehicle car navigation system or a center side device of a traffic information providing system such as ATIS. In these methods, the optimum route from one point (departure point) to another point (destination) is obtained using the technique disclosed in Japanese Patent Laid-Open No. 4-204881.
[0003]
In addition, for application to a delivery management system or the like, there is an increasing demand for a patrol route search technique for obtaining an optimum route that passes through all of a plurality of selected points. The traveling route search technique is mathematically called the “traveling salesman problem” and has been known as a difficult calculation problem with a large amount of calculation since ancient times. A method for obtaining a complete solution of the traveling salesman problem has not been established, and only a method for obtaining a practical approximate solution exists. Methods for obtaining an approximate solution are disclosed in "JP-A-3-191464" and "JP-A-4-57147".
Japanese Patent Laid-Open No. 3-191464 discloses a method in which an initial route is configured in the order of angles from the center of gravity of each point, and optimization is repeated within a certain number of points. Japanese Patent Application Laid-Open No. 4-57147 discloses a method in which an initial route is configured by sequentially adding points with the smallest increase cost, and the points are rearranged for optimization.
[0004]
First, an outline of a conventional cyclic route search method (hereinafter referred to as a first cyclic route search method) disclosed in “JP-A-3-191464” will be described. In the first patrol route search method, first, an angle formed between the center of gravity of each selected point and each point is obtained, and then an initial route is configured based on each obtained angle. Next, the configured initial route is divided for each fixed number of points. Next, a “depth-first search method” is applied to each divided area, and the points included in the area are rearranged so as to form a shorter route. Accordingly, the first cyclic route search method obtains the shortest cost route at each selected point. Furthermore, after the points included in each of the divided areas are exchanged, the above-described series of processing is repeated. Eventually, when the cost does not decrease, the processing of the first cyclic route search method ends. Details of the first cyclic route search method will be described below with reference to the flowchart of FIG. In particular, FIG. 37A is a main flowchart showing a processing procedure of the first cyclic route search method.
[0005]
In FIG. 37A, after the center coordinates of the set point group are determined (step S37a1), the points are connected in the order of angles connecting the center coordinates and the point coordinates (step S37a2). An initial route in the cyclic order is constructed. Next, an optimization loop process is performed based on the initial path (step S37a3), and a correction process to approximate the minimum cost path is performed. Here, FIG. 37B is a sub-flowchart showing a detailed processing procedure of step S37a3 or S37a6 of FIG.
In FIG. 37 (b), a start point for division is determined (step S37b1), and the set point group is set in an area for each fixed number of points based on the determined start point while following the order of the initial route. Divided. Next, for each divided area, a minimum cost route is obtained by a brute force method (step S37b2). Next, the divided areas are combined to form a one-round route (circular route) (step S37b3). Finally, if the cyclic route cost obtained in step S37b3 is smaller than the previous one (step S37b4), it is determined that the cyclic route cost may be smaller, and the process returns to step S37b1. Next time, the processing of steps S37b1 to S37b4 is repeated based on the cyclic route cost obtained in step S37b3.
On the other hand, in step S37b4, if the cyclic route cost obtained this time is not smaller than the previous one, it is determined that the cyclic route has almost the lowest cost. Then, the optimization loop process (step S37a3) is terminated assuming that the previous round route is optimal.
[0006]
Next, returning to FIG. 37 (a), after each point and each side are exchanged, m groups are switched in order of efficiency (step S37a4). Next, the first (m = 1) reconnection is performed (step S37a5). Furthermore, the same optimization loop process as step S37a3 is performed (step S37a6). Next, it is determined whether or not the cost of the cyclic route obtained in step S37a6 is the smallest so far (step S37a7). If the cost is the smallest, the cyclic route cost may be further reduced, and in step S37a6. The processes in steps S37a4 to S37a7 are repeated using the obtained traveling route cost as a reference.
On the other hand, if the cost of the cyclic route obtained in step S37a6 is not the smallest in step S37a7, step S37a8 is performed. Next, it is determined whether the cost of the cyclic route has been confirmed for all m groups (step S37a8). If the cost has been confirmed, the first cyclic route search method ends.
On the other hand, if all the m sets have not been confirmed in step S37a8, the cyclic route selected this time (that is, the cyclic route after reconnection has not been performed) does not have the minimum cost. It is returned to the one before the replacement (step S37a9). Further, after the next combination (m = m + 1) is switched (step S37a10), step S37a6 is executed again, and the processing of S37a6 to S37a7 is repeated.
[0007]
Next, an outline of a conventional cyclic route search method (hereinafter referred to as a second cyclic route search method) disclosed in Japanese Patent Laid-Open No. 4-57147 will be described. In the second cyclic route search method, first, an initial route is configured by sequentially adding points that form a low-cost triangle from among points to be visited. Thereafter, the process of reconfiguring the cyclic route by separating the points at random is repeated, whereby a cyclic route having the minimum cost is searched. Details of the second cyclic route search method will be described below with reference to the flowchart of FIG.
In FIG. 38, when the point data is input, a matrix in which the distance between the input points is recorded is created (step S3801). Next, after three points are selected from the input point group, the first triangle is created using the selected three points (step S3802). Next, one point constituting the optimum triangle is selected from the unselected point group, and a process of adding the selected point to the circulation route is performed. This process is repeated until there are no unselected point groups, thereby forming a circular route (step S3803). Next, the total distance of the configured cyclic route is calculated, and it is determined whether or not the total distance calculated this time is the shortest of the cyclic routes obtained so far. If the total distance is the shortest, the current tour route is adopted as the optimum one (step S3804). Next, it is determined whether or not the processing is completed based on the number of processing times and time (step S3805). If the predetermined number of processing times / predetermined time has been exceeded, the process ends. If the predetermined number of processing times / predetermined time has not been exceeded, step S3806 is performed. After the point is randomly separated from the configured tour route and the point is returned to the unselected state (step S3806), the process returns to step S3803 and the subsequent processes are repeated.
[0008]
In addition to the above methods, various methods using genetic algorithms and neural networks have been reported at academic societies and the like.
[0009]
[Problems to be solved by the invention]
However, the method using the latter genetic algorithm or neural network may fall into a minimal solution, and there is a problem in terms of path quality in the worst case.
Further, in the first cyclic route search method, it is determined whether to continue the correction of the cyclic route based on whether the cost of the cyclic route is the minimum. Therefore, there is a possibility that the cost of the circular route may fall into a minimum solution, and an optimal circular route may not be obtained. Furthermore, there is a possibility that the processing time until the cost of the cyclic route finally converges becomes long.
[0010]
Furthermore, the second route search method limits the process of randomly separating and reconfiguring the points by limiting the number of times, time, etc., so that the route cost (distance) is ultimately optimal. There is a problem that it is not constant whether it converges.
[0011]
Therefore, an object of the present invention is to provide a cyclic route selection method capable of selecting a more practical cyclic route in practical time.
[0012]
[Means for Solving the Problems and Effects of the Invention]
A first invention is a method for efficiently patroling a plurality of points and selecting a patrol route from the starting point to the destination, wherein the first point of selecting the starting point, the destination and the plurality of patrol points is selected. Obtained in the step, the second step of obtaining an evaluation value between two necessary points among the two points selectable from the starting point, the destination and the respective traveling points, and the second step. In addition, using each evaluation value, the third step of determining the order of visiting the plurality of tour points based on the depth-first search method, and the tour order determined in the third step, A fourth step of connecting a starting point, the plurality of patrol points, and the destination to form one patrol route from the starting point to the destination, and the third step includes: Survey order to be investigated A fifth step of calculating a total evaluation value until the middle (hereinafter referred to as a first total evaluation value) based on each evaluation value obtained in the second step, and a current investigation target When a certain cyclic order is configured, a total evaluation value of the configured cyclic order (hereinafter referred to as a second total evaluation value) is calculated based on each evaluation value obtained in the second step. And a seventh step of recording a minimum value of the second total evaluation value calculated in the sixth step, and the first sum calculated in the fifth step. If the evaluation value exceeds the minimum value of the second total evaluation value recorded in the seventh step, Subsequent investigation processing derived from the above-mentioned patrol route Will be terminated.
[0013]
According to the first invention, in the process of determining the order of patrol, during the cyclic route investigation process based on the depth-first search method, the first total evaluation value is the minimum value of the second total evaluation value ( That is, when the second total evaluation value, which has been the minimum in the past, is exceeded, the subsequent investigation process derived from the cyclic route is terminated. As a result, it is possible to omit the investigation regarding the combination of the tour points that cannot be the optimum tour route, and the selection time of the optimum tour route can be shortened.
[0014]
Book The invention is a method for efficiently patroling a plurality of points and selecting a patrol route from the starting point to the destination, wherein the first step of selecting the starting point, the destination and the plurality of patrol points;
Of the two points that can be selected from the starting point, the destination, and each patrol point, use the second step to obtain the necessary evaluation value between the two points and the evaluation values obtained in the second step. In accordance with the third step of determining the order in which the plurality of tour points are to be visited and the tour order determined in the third step, the departure place, the plurality of visit points and the destination are joined together, A fourth step of determining a single round trip route to the destination, and the third step is management information in which the round trip points are connected in a chain in order to manage a plurality of round trip points. And a sixth step of constructing a cyclic order based on the management information created in the fifth step.
[0015]
Book According to the invention, in the process of determining the order of patrol, management information in which unselected patrol points to be investigated are connected in a chain is applied. As a result, since an unselected patrol point can be efficiently selected, it is possible to shorten the selection time of the minimum cost patrol route.
[0016]
Book The invention is a method for efficiently patroling a plurality of points and selecting a patrol route from the starting point to the destination, wherein the first step of selecting the starting point, the destination and the plurality of patrol points;
Of the two points that can be selected from the starting point, the destination, and each patrol point, use the second step to obtain the necessary evaluation value between the two points and the evaluation values obtained in the second step. In accordance with the third step of determining the order in which the plurality of tour points are to be visited and the tour order determined in the third step, the departure place, the plurality of visit points and the destination are joined together, And a fourth step that constitutes one patrol route to the destination. The second step is a fifth step of reading map data in a range including at least a starting point or a destination and each patrol point. Step 6 is set in the sixth step by using the map data read in the fifth step and the sixth step for sequentially setting the starting point or destination and each patrol point as the search start point. Search start point The path between the point other than the search start point, and derived by Method a basic Dijkstra's algorithm, including a seventh step of calculating the respective evaluation values.
[0017]
Book According to the invention, in the process of obtaining the evaluation value between the points, the points are sequentially selected as the search start points, and the unidirectional search process based on the Dijkstra method is performed. As a result, the search process between each two points included in the m points can be reduced from m × (m−1) times to m times, so that it is possible to reduce the time required for selecting the optimum route. .
[0018]
Book The present invention is a method for efficiently patroling a plurality of selected patrol points and selecting a patrol route from a departure point to a destination, and candidate points that can be selected as the plural patrol points are determined in advance. In addition, a route between the candidate points is obtained, and route information including at least an evaluation value between the candidate points is recorded. From the starting point and the destination, and a plurality of candidate points. A first step of selecting a plurality of patrol points, a second step of acquiring an evaluation value between two necessary points among two points selectable from the starting point, the destination, and each patrol point; Using the evaluation values obtained in step 2, a third step for determining the order in which a plurality of patrol points are to be visited, and a departure place and a plurality of trips in accordance with the order in which the third step is determined. Point and destination And a fourth step that forms one circuit route from the starting point to the destination, and the second step is included in the plurality of circuit points selected in the first step. Each evaluation value between each two points is obtained by reading from pre-recorded route information.
[0019]
Book According to the invention, it is not necessary to calculate a route between each traveling point by determining a point that can be selected as a traveling point in advance, and obtaining a route between each point and recording the route information. It is possible to shorten the selection time of the optimum patrol route.
[0020]
Of the present invention The second step is a fifth step of reading map data in a range including the starting point and / or the destination and each traveling point when the starting point and / or the destination are not included in the candidate points. The sixth step for sequentially setting the starting point and the destination selected in the first step as the search start point and the map data read in the fifth step are set in the sixth step. A seventh step of obtaining each evaluation value by deriving a route between the search start point and each traveling point by a method based on the Dijkstra method.
[0021]
Book According to the invention, a search process based on the Dijkstra method is performed using an arbitrary starting point or destination as a search start point. As a result, the route from the departure point to each round trip point, or the route from each round trip point to the destination can be obtained in one search process, so the optimum round trip route from any departure point, or the optimum to any destination It is possible to shorten the time required for selecting a round route.
[0022]
Book invention Is Points on a plurality of roads that access the area including the candidate point are determined in advance as entry / exit points, and a route between the entry / exit point and each candidate point is obtained in advance, and at least the entry / exit point The route information including the evaluation value of the route between the point and each candidate point is recorded in advance, and the second step is that if the starting point or destination is outside the area including the candidate point, Select a temporary departure point or temporary destination from the list.
[0023]
Book According to the invention, a point on the road that can access the patrol area is determined in advance as an entrance / exit point. Further, routes between each entrance / exit point and each traveling point (candidate point) and between each traveling point (candidate point) and each entrance / exit point are also obtained in advance. These are recorded in advance as route information. Then, by selecting the entrance point to the patrol area as the temporary departure point, or the exit point from the patrol area as the temporary destination, the patrol route from the temporary departure point or the patrol route to the temporary destination Can be requested. Thus, for example, in an environment with a small amount of RAM such as an in-vehicle device, even if a route from the starting point to each patrol point or a route from each patrol point to the destination is not obtained, the selected point is patroled. It is possible to obtain a traveling route to be performed.
[0024]
Book invention Is As the entrance / exit point, a point on the main road that crosses the boundary of the area including the candidate point is selected in advance, and the second step is to use the entrance / exit point as the search start point or the search end point, and to set the departure point or destination. A temporary departure place or a temporary destination is selected by performing a bidirectional hierarchical search process on the place.
Book According to the invention, the minimum necessary entrance / exit point can be mechanically set by selecting a point on the main road that crosses the boundary of the circuit area as the entrance / exit point. As a result, the selection of entry / exit points can be simplified, and an appropriate temporary departure point or temporary destination can be automatically selected using the search process.
[0025]
Book invention Is As the entrance / exit points, points on the main road crossing the boundary of the area including the candidate point and points on the more main road passing through the area including the candidate point are selected in advance. In the second step, the temporary departure point is obtained by performing one-way hierarchical search processing with the entry / exit point as the search end point and the departure point or destination selected in the first step as the search start point. Or select a temporary destination.
[0026]
Book According to the invention, as the entrance / exit point, a point on the main road that is not included in the circuit area but passes through the periphery is selected. This makes it possible to select an entry / exit point that arrives at the lowest cost by a one-way hierarchical search method from the departure point or destination, so that the route selection process can be simplified and the selection time can be shortened.
[0027]
Book invention of The second step selects a temporary departure point and / or a temporary destination from the entry / exit points based on the user's selection.
[0028]
Book According to the invention, the temporary departure point or temporary destination is selected by the user from the entrance / exit points. As a result, the user can enter or exit the patrol area from any direction, so that the user can select an approach road to the patrol area or an escape road from the patrol area according to the user's preference.
[0029]
Book The present invention is a method for efficiently patroling a plurality of selected patrol points and selecting a patrol route from a departure point to a destination, and candidate points that can be selected as the plural patrol points are determined in advance. In addition, route information including at least an evaluation value between the candidate points is recorded, and a first step of selecting a plurality of traveling points from the starting point and the destination and the plurality of candidate points; The second step of obtaining the evaluation value between the two required points among the two points that can be selected from the departure point, the destination, and each patrol point, and the evaluation values obtained in the second step are used. Then, in accordance with the third step for determining the order in which the plurality of patrol points are to be visited, and one order from the departure point selected in the first step to the destination in accordance with the order of visits determined in the third step. The number that constitutes the patrol route And the fourth step is a fifth step of repeatedly obtaining a partial route from the starting point selected in the first step to the destination in accordance with the cyclic order determined in the third step. And a sixth step of connecting the partial routes obtained in the fifth step to form one cyclic route.
[0030]
Book According to the invention, the points (candidate points) that can be selected as the traveling points are determined in advance. Further, only the point-to-point route cost obtained based on the point-to-point route is recorded in advance. In this state, by finding the partial route of the cyclic route by repeatedly performing the point-to-point search process, it is not necessary to record the route data, so that the amount of data stored in the storage area can be reduced.
[0031]
Book invention Is Candidate points that can be selected as a plurality of traveling points are determined in advance, points on a plurality of roads that access an area including the candidate points are determined in advance as entry / exit points, and at least each of the candidates Route information including an evaluation value between points and an evaluation value between the entrance / exit point and each candidate point is recorded. In the second step, the departure point or destination selected in the first step is If it is outside the area including the candidate point, the temporary departure point or temporary destination is selected from the entrance / exit points, and the fifth step is the first patrol point from the departure point selected in the first step. When obtaining a partial route to the destination selected in the first step from the last patrol point to the destination selected in the first step. Destination It omitted to seek.
[0032]
Book According to the invention, the temporary departure point or temporary destination selected in the second step is skipped, and the partial route of the cyclic route from the departure point to the destination is obtained. As a result, the optimal tour route is selected from the tour point where the user really wants to stop, so the selection of the tour route that automatically passes through the temporary departure point or temporary destination selected automatically is prevented. Can do.
[0033]
Book invention Is Candidate points that can be selected as a plurality of patrol points are determined in advance, points on a plurality of roads that access an area including the candidate points are determined in advance as entry / exit points, and at least each of the candidate points The route information including the evaluation value between and the evaluation value between the entrance / exit point and each candidate point is recorded. In the second step, the starting point or destination selected in the first step is If it is outside the area including the candidate point, a temporary departure point or a temporary destination is selected from the entry / exit points based on the user's selection, and the fifth step is the departure selected in the first step. A partial route from the ground to the first patrol point via the temporary departure point selected in the second step, or the temporary purpose selected in the second step from the last patrol point Via the ground Determining a partial route to the destination selected in the first step.
[0034]
Book According to the invention, a partial route of a patrol route from the departure point to the destination is obtained without skipping the temporary departure point or temporary destination set by the user. As a result, a patrol route that passes through the temporary departure point or temporary destination set by the user is selected, so that the patrol route always enters or exits the patrol area through the access road intended by the user. Can be requested.
[0035]
Book The invention is a method for efficiently patroling a plurality of points and selecting a patrol route from the starting point to the destination, wherein the first step of selecting the starting point, the destination and the plurality of patrol points; Of the two points that can be selected from the starting point, the destination, and each patrol point, use the second step to obtain the necessary evaluation value between the two points and the evaluation values obtained in the second step. In accordance with the third step of determining the order in which the plurality of tour points are to be visited and the tour order determined in the third step, the departure place, the plurality of visit points and the destination are joined together, And a fourth step that constitutes one patrol route to the destination, and the third step is a fifth step of grouping adjacent ones of a plurality of patrol points into a hierarchical group; Summary in the fifth step Determine the cyclic order of groups in each layer, and finally, and a sixth step of determining the order of patrol multiple cyclic point.
[0036]
Book According to the invention, neighboring tour points are hierarchically grouped. A cyclic route is determined based on the hierarchical group. As a result, the number of combinations to be investigated decreases, so that the route selection time can be shortened especially when the number of points to be visited is large.
[0037]
Book invention of The fifth step collects a plurality of patrol points based on the spatial distance between the two points. According to the fourteenth aspect, it is possible to preferentially group into one group from those having a short spatial distance between two points. As a result, it is possible to group the neighboring tour points, so that the route quality can be improved with a relatively simple process.
[0038]
Book invention of The fifth step collects a plurality of tour points based on the route distance between the two points. According to the fifteenth aspect, it is possible to preferentially group into one group from a route whose distance between two points is short. As a result, it is possible to avoid a group of traveling points where a road between two points is detoured even though it is close in terms of spatial distance, and the route quality can be further improved.
[0039]
Book invention of The fifth step does not form an overly broad group compared to other groups. According to the sixteenth aspect, a group is not formed in a wider range than other groups. As a result, the size of each group can be averaged, and the selection of distorted cyclic routes can be prevented, so that the route quality can be further improved.
[0040]
Book invention of In the sixth step, the cyclic order is determined from the upper hierarchical group among the hierarchical groups. According to the seventeenth aspect, in the hierarchized group, by determining the cyclic order from the upper hierarchy group, the rough cyclic order is first determined in the upper hierarchy, and the overall calculation amount can be reduced. . As a result, it is possible to shorten the time for selecting the optimum route.
[0041]
Book The invention is a method for efficiently patroling a plurality of points and selecting a patrol route from the starting point to the destination, wherein the first step of selecting the starting point, the destination and the plurality of patrol points; Of the two points that can be selected from the starting point, the destination, and each patrol point, use the second step to obtain the necessary evaluation value between the two points and the evaluation values obtained in the second step. Then, according to the third step of determining the order of visiting the plurality of tour points based on the depth-first search method, and the tour order determined in the third step, the departure place, the plurality of visit points, and the destination And a fourth step of constructing one circular route from the departure place to the destination.
[0042]
Book According to the invention, the evaluation value obtained in the second step is for each two points. Therefore, the traveling order determined based on the evaluation value assumes a road on which the vehicle actually travels. As a result, it is possible to obtain an efficient patrol order that does not make the user feel uncomfortable.
[0043]
Of the present invention The second step is to obtain a route between the starting point and each patrol point or destination, between each two points included in a plurality of patrol points, and between each patrol point and the destination. Based on the evaluation value of the route, the evaluation value between the departure point and each patrol point or destination, each evaluation value between each of the two points included in the plurality of patrol points, and between each of the patrol points and the destination Get evaluation value between.
[0044]
Book According to the invention, in the second step, the evaluation value is obtained by actually obtaining a route between each two points. For this reason, it is possible to determine a more preferable circulation order.
[0045]
Of the present invention The second step uses the map information stored in advance as a search start point for each of the departure point, the destination, and each patrol point, and performs a departure side search process and / or a destination side search process. Find the route between the departure point and each of the circuit points or the destination, between each of the two points included in the plurality of circuit points, and between each of the circuit points and the destination. Based on the evaluation value, the evaluation value between the departure point and each patrol point or destination, each evaluation value between each of the two points included in the plurality of patrol points, and between each of the patrol points and the destination Get the evaluation value of.
[0046]
Book According to the invention, in the second step, the route between the two points is obtained by the start side search process and / or the destination side search process with each point as the search start point, so the number of search processes is minimized. To the limit. As a result, routes can be obtained for all necessary combinations in a short time.
[0047]
Of the present invention Map information , It has a hierarchical structure, and the lower layer map information represents a map in which a relatively narrow range is recorded in detail, and the upper layer map information represents a map in which a relatively wide range is recorded roughly. The second step selects the hierarchy of map information to be used, and uses the map information of the selected hierarchy as the starting point for each of the starting point, destination, and each patrol point. Perform side search processing and / or destination side search processing, between the departure point and each of the traveling points or the destination, between each of the two points included in the plurality of traveling points, and each of the traveling points A route to the destination is searched, and when the route information cannot be obtained with the map information of the selected hierarchy, the route is obtained using the map information of the upper hierarchy.
[0048]
Book According to the invention, in the second step, first, search processing from each search start point is started using the map information of the lower hierarchy. Then, when there is a route that cannot be obtained with the lower layer map information, the search process is continued using the upper layer map information. As a result, a search range suitable for the road network recorded in each hierarchy can be set, so that a route between two points with a distance can be obtained in a short time.
[0049]
The present invention Is A method for efficiently patroling a plurality of points and selecting a patrol route from the departure point to the destination, the first step of selecting the departure point, the destination, and the plurality of patrol points, and the departure point A second step of obtaining an evaluation value between two necessary points out of two points selectable from the destination and each of the patrol points, and using each evaluation value obtained in the second step Then, according to the third step of determining the order of visiting the plurality of tour points based on the depth-first search method, and the tour order determined in the third step, And a fourth step of connecting the patrol point and the destination to form one patrol route from the starting point to the destination, wherein the second step includes the starting point and each of the patrols. Point or with the destination The route between each two points included in the plurality of tour points and between the visit point and the destination is obtained, and the departure point and each visit point are determined based on the evaluation value of each found route. Or an evaluation value between the destination, each evaluation value between each two points included in the plurality of patrol points, and an evaluation value between each of the patrol points and the destination, In the fourth step, the point-to-point search is repeated by the number of combinations of two points selectable from the starting point, the destination, and each of the patrol points according to the patrol route determined in the third step. Thus, one cyclic route is configured.
[0050]
Book According to the invention, The evaluation value obtained in the second step is for each two points. Therefore, the traveling order determined based on the evaluation value assumes a road on which the vehicle actually travels. As a result, it is possible to obtain an efficient patrol order that does not make the user feel uncomfortable. In the second step, the evaluation value is obtained by actually obtaining a route between each two points. For this reason, it is possible to determine a more preferable circulation order. Also, By performing the point-to-point search again in the fourth step, it is possible to configure a cyclic route without leaving the route obtained in the second step. As a result, it is possible to reduce the RAM capacity required for selecting a circular route.
[0051]
The present invention Is A method for efficiently patroling a plurality of points and selecting a patrol route from the departure point to the destination, the first step of selecting the departure point, the destination, and the plurality of patrol points, and the departure point A second step of obtaining an evaluation value between two necessary points out of two points selectable from the destination and each of the patrol points, and using each evaluation value obtained in the second step Then, according to the third step of determining the order of visiting the plurality of tour points based on the depth-first search method, and the tour order determined in the third step, And a fourth step of connecting the patrol point and the destination to form one patrol route from the starting point to the destination, wherein the second step includes the starting point and each of the patrols. Point or with the destination The route between each two points included in the plurality of tour points and between the visit point and the destination is obtained, and the departure point and each visit point are determined based on the evaluation value of each found route. Or an evaluation value between the destination, each evaluation value between each two points included in the plurality of patrol points, and an evaluation value between each of the patrol points and the destination, The second step further records route data having a minimum evaluation value for every two required points, and the fourth step follows the second route according to the cyclic route determined in the third step. Based on the route data recorded in this step, one cyclic route is constructed.
[0052]
Book According to the invention, The evaluation value obtained in the second step is for each two points. Therefore, the traveling order determined based on the evaluation value assumes a road on which the vehicle actually travels. As a result, it is possible to obtain an efficient patrol order that does not make the user feel uncomfortable. In the second step, the evaluation value is obtained by actually obtaining a route between each two points. For this reason, it is possible to determine a more preferable circulation order. Also, Since the cyclic route is configured based on the route data of the minimum evaluation value recorded in the second step, it is not necessary to perform the search process again in the fourth step. As a result, it is possible to reduce the time required for selecting a circular route.
[0053]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a block diagram showing a configuration of a car navigation system in which the present route selection method is adopted. In FIG. 1, the car navigation system includes a locator 101, a data storage unit 102, an operation unit 103, a navigation device 104, and an information presentation unit 105.
[0054]
Locator 101 includes a GPS, a vehicle speed sensor, an angular velocity sensor, an absolute direction sensor, and the like, and collects data for calculating the current position of the vehicle.
The data storage unit 102 is usually a CD or DVD, and is necessary for navigation, such as intersection information, road connection status, coordinates / shape / attributes / regulation information, map information about road networks, index information for setting points, etc. Various types of information are stored.
The operation unit 103 includes a remote controller, a touch sensor, a keyboard, a mouse, and the like, and inputs point information and the like according to a user's operation, and specifies an item that the user wants to select.
The navigation device 104 includes a CPU, memory (program memory, working memory), and the like. The navigation device 104 basically includes a location function for identifying the current position based on vehicle movement information obtained from the locator 101, a route guidance function for automatically selecting and guiding a route to the destination, and index information. It has an information search function for searching and displaying a map of an arbitrary place.
The information presentation unit 105 includes a display device (liquid crystal display, CRT display, etc.), a speaker, etc., and presents the current vehicle position, guidance route guidance, and search information to the user.
[0055]
Next, each function of the car navigation system configured as shown in FIG. 1 will be described.
First, the location function will be outlined. The locator 101 collects information on the vehicle position that changes every moment (change angle of the vehicle direction, travel distance of the vehicle, absolute position, etc.). The navigation device 104 calculates the movement locus of the vehicle from the information regarding the vehicle position obtained by the locator 101. The navigation device 104 further compares the calculated vehicle movement trajectory with the road network on the surrounding map obtained from the data storage unit 102 using the map matching technique or the like, Identify the location. The information providing unit 105 displays the current position of the vehicle specified by the navigation device 104 on a map.
[0056]
Next, the information search function will be outlined. The operation unit 103 selects contents to be searched from various items displayed on the display of the information presentation unit 105. The selected item is searched from the recorded information in the data storage unit 102 and displayed on the display of the information presenting unit 105. If necessary, sound or the like is output from the speaker of the information presentation unit 105.
[0057]
Furthermore, the route guidance function according to the present invention will be outlined. First, the user operates the operation unit 103 to set a departure point and a destination. That is, the user operates the operation unit 103 to scroll the map image displayed on the information presenting unit 105, and inputs a desired point as a departure point and a destination. In addition, you may use the present position of the vehicle detected by the above-mentioned location function as a departure place. Next, the navigation device 104 starts searching for the closest point on the node or link on the map stored in the data storage unit 102 with respect to the position of the departure point and the destination set as described above. Adopt as point and search end point. Further, the navigation device 104 calculates the shortest cost route using a known Dijkstra method, etc., and converts the obtained route into a link row, a node row, or a coordinate row to obtain a guidance route. In the present embodiment, cost is adopted as an example of the “evaluation value” in the claims. In the following first to fourth cyclic route selection methods, the cost is regarded as travel time, and a route with a short travel time is selected. Finally, the information presenting unit 105 proceeds in which direction to proceed on the guidance route based on the guidance route obtained by the navigation device 104, the current vehicle position, and the map data stored in the data storage unit 102. The user is informed of whether it should be done by voice or display.
[0058]
In the navigation system, a plurality of patrol points can be set between the departure point and the destination. The user operates the operation unit 103 to set a plurality of patrol points in the same manner as the destination setting. At this time, the area to be visited may be selected before setting the place to be visited. Further, the navigation device 104 refers to the route cost between the departure point, the destination, and the patrol point, passes through each set patrol point, and further reaches the optimum patrol route from the departure point to the destination with a smaller route cost. Is elected. This patrol route selection method will be described in detail later using a flowchart.
[0059]
FIG. 2 is a block diagram showing a general configuration of a delivery vehicle management system to which the present route selection method can be applied. In FIG. 2, the delivery vehicle management system includes a wireless device 201, a data storage unit 202, an operation unit 203, a computer 204, and an information presentation unit 205.
The wireless device 201 includes a mobile phone, a dedicated radio, and the like, and collects the current position of each delivery vehicle from a location system mounted on each delivery vehicle.
A large capacity hard disk is usually used for the data storage unit 202. The data storage unit 202 is a delivery management service such as intersection information and / or road connection status, coordinates, shape, attributes and regulatory information, map information related to the road network, index information for setting points, delivery destination management information, etc. Various information necessary for the storage is stored.
The operation unit 203 includes a remote controller, a touch sensor, a keyboard, a mouse, and the like, and inputs point information and the like according to a user's operation and specifies an item that the user wants to select.
The computer 204 includes a CPU, memory (program memory, working memory), and the like. Basically, the computer 204 automatically selects an optimal delivery route by specifying a plurality of delivery destinations for each vehicle, a location management function for managing the current location of each delivery vehicle obtained from the wireless device 201. It has a route selection function and a delivery destination information management function for retrieving and inputting delivery destination information.
The information presentation unit 205 includes a display device (liquid crystal display, CRT display, etc.), a speaker, and the like, and presents the current position of each delivery vehicle, guidance of delivery routes, and delivery destination information to the user.
[0060]
Next, each function of the delivery vehicle management system configured as shown in FIG. 2 will be described.
First, the location management function will be outlined. The wireless device 201 collects position information of each delivery vehicle that changes every moment. The computer 204 obtains information regarding the position of each delivery vehicle from the wireless device 201 and displays the road network of the delivery area obtained from the map data stored in the data storage unit 202 on the display of the information presentation unit 205. . Further, the information presenting unit 205 displays the current position of each delivery vehicle in a superimposed manner on the displayed road network.
[0061]
Next, the delivery information management function will be outlined. The operation unit 203 can designate an arbitrary position by moving the cursor displayed on the map of the delivery area displayed on the display of the information presentation unit 205 to a desired position with a mouse. Attached information (ID, delivery destination name, contact information, supplementary information) regarding the delivery destination is input from the keyboard of the operation unit 203. In addition, the attached information regarding the delivery destination input in the past is stored in the data storage unit 202, and the information is called and selected by the mouse operation of the operation unit 203. Then, the attached information related to the delivery destination is corrected and deleted by operating the keyboard of the operation unit 203.
[0062]
Furthermore, the route selection function according to the present invention will be outlined. First, the user operates the operation unit 203 to set a delivery point. That is, by operating the mouse of the operation unit 203, the user refers to the map of the delivery area displayed on the display of the information presentation unit 205 and selects a delivery destination for actual delivery. In addition, the present location of the delivery vehicle grasped | ascertained by the delivery center or the above-mentioned position management function can be used for a departure place and a destination. Next, the computer 204 determines which area the delivery destination belongs to, and determines which delivery vehicle to allocate. If the delivery destinations are concentrated in a specific delivery vehicle, the delivery destinations may be assigned to other delivery vehicles that are in charge of the surrounding area and have few delivery destinations. Further, the computer 204 selects an optimum patrol route that starts from the departure point for each delivery vehicle, passes through all assigned delivery destinations, and reaches the destination. This patrol route selection method will be described in detail later using a flowchart.
[0063]
(1) First patrol route selection method
FIG. 3 is a main flowchart showing a processing procedure of the first cyclic route selection method. 3 is performed by the navigation device 104 of FIG. 1 or the computer 204 of FIG.
In FIG. 3, as described above, the user selects a departure point / destination and each traveling point (each delivery point) (steps S301 and S302). Next, a point-to-point route calculation process for obtaining a minimum cost route between the traveling points is performed (step S303).
Here, FIG. 4 is a flowchart showing a detailed processing procedure of step S303 in FIG. In FIG. 4, first, map data in a range including a departure point, a destination, and each patrol point is read in a batch (step S401). Next, one unselected point is selected from the departure point and each traveling point (step S402). The selected point is used in the subsequent processing as a search start point. Next, the search processing based on the known Dijkstra method is expanded over the entire area of the read map data, starting from the search start point (step S403). As a result, a route from the search start point to another point (each patrol point or destination) as the end point is configured, the configured route cost is recorded in the cost matrix, and further, route data indicating the route of the route Is recorded (step S404). Here, the cost matrix is a path cost from the start point to the end point recorded in a matrix having the start point as a row and the end point as a column. FIG. 5 shows an example of the configuration of the cost matrix. In the example of FIG. 5, the number of patrol points other than the starting point and the destination is n. Note that the route cost starting from the destination, the route cost starting from the departure point, and the route cost from the departure point to the destination are not necessary for the cyclic order determination process (step S304) performed later. It is described with a “−” mark.
[0064]
Next to step S404 in FIG. 4, it is determined whether or not an unselected point remains as a search start point (step S405). If there is an unselected point, the process returns to step S402, and one of the unselected points is selected as the next search start point. Thereafter, the series of processes (steps S403 to S405) are repeated. On the other hand, if there is no unselected point in step S405, the point-to-point route calculation process (step S303 in FIG. 3) ends. At the end of the point-to-point route calculation process, the cost matrix of FIG. 5 is completed and each column is filled.
In step S402 described above, the search start point is selected from the departure point and each traveling point, but the search start point may be selected from the destination and each traveling point. In this case, in step S403, the search process is expanded based on the search start point selected from the destination and each patrol point. As described above, the search process may be performed in consideration of the directionality as the search start point.
[0065]
Next, the process proceeds to step S304 in FIG. 3, and a traveling order determination process is performed to determine in what order it is optimal to pass each traveling point (step S304).
Here, FIG. 6 is a flowchart showing a detailed processing procedure of step S304 of FIG. In FIG. 6, after all the tour points are unselected, the tour points are selected one by one. At this time, the same patrol point must not be selected twice. The patrol points are registered in the management information of unselected patrol points in the selected order (step S601). This management information has a list structure illustrated in FIG. The list structure is a chain structure that points to the next point in sequence from the first point. In FIG. 7, n patrol points (N1 to Nn) are continuously arranged in ascending order of subscripts. <N1> is recorded as the first point in “Top”, and <N2> is recorded as the next point after “Top” in “First”. Thereafter, in the same manner, each traveling point is connected in the selected order. Furthermore, <Nn> is recorded as the last selected point in “(n−1) th”, and <End> mark is recorded as ID information indicating the end of the tour route in “nth”. Has been. By adopting the above list structure, it becomes possible to examine the next point in order from the “top”. As a result, in the cyclic recursion process (step S604) to be performed later, it is possible to efficiently find an unselected cyclic point Ni (i = 1, 2,..., N).
[0066]
Refer to FIG. 6 again. After step S601, the departure place is selected as the previous traveling destination PP that is required to calculate the traveling cost X (step S602). Further, the traveling cost X is initialized (step S603). That is, X = 0 is set. Thereafter, a cyclic recursion process is performed (step S604).
Here, FIG. 8 is a flowchart showing a detailed processing procedure of step S604 of FIG. First, the total traveling cost Y, the minimum total traveling cost Ymin, and the intermediate traveling cost X used in the processing procedure of FIG. 8 will be described. Now, it is assumed that n (n is a natural number) patrol points N1 to Nn are selected. In the present embodiment, as illustrated in FIGS. 9 (a) to 9 (c), the traveling route refers to a departure while passing through all the traveling points N1 to Nn without overlapping the same traveling point. It means the route from the ground to the destination.
First, the total traveling cost Y is the cost of one traveling route. Cost from starting point to each traveling point Ni (i is a natural number satisfying i ≦ n), cost between two traveling points Ni and Nj (j is a natural number satisfying i ≦ j and j ≦ n), each The cost from the traveling point Nj to the destination is described in the cost matrix of FIG. Therefore, if the order of patrol around the patrol points N1 to Nn is determined, each cost required for configuring one patrol route is specified. If the identified costs are totaled, the total traveling cost Y can be calculated.
[0067]
In the depth-first search method, after obtaining the total cyclic cost Y of a certain cyclic route, the process of calculating another total cyclic cost Y is repeated. The minimum total cyclic cost Ymin has the smallest value among the total cyclic costs Y that have already been calculated.
Furthermore, in the depth-first search method, when configuring one tour route, different tour points Ni are selected one by one. The traveling cost X in the middle is the cost of the route from the departure point to the currently selected traveling point Ni (the traveling route up to the middle). Similarly to the total traveling cost Y, the intermediate traveling cost X is also calculated with reference to the cost matrix of FIG.
[0068]
In step S801 in FIG. 8, the intermediate traveling cost X and the minimum total traveling cost Ymin are compared to determine whether or not X ≧ Ymin is satisfied (step S801).
When it is determined that X ≧ Ymin, there is no possibility that the currently-visited cyclic route has the minimum total cyclic cost Ymin. Therefore, the cyclic recursion process is aborted because the subsequent processes are useless.
If it is determined that X <Ymin, the current route to be investigated may have the minimum total cost Ymin, so step S802 is performed to perform the subsequent processing. It should be noted that if no cyclic route is obtained at the time of step S801, the minimum cyclic cost Ymin is regarded as infinite. Therefore, in this case as well, it is determined that X <Ymin.
[0069]
Next, the traveling point Ni set at the “top” of the management information in FIG. 7 is selected as the current traveling destination CP (step S802). As a result, the tour point Ni to be visited next to the departure point NSP is selected. Next, the previous circulation destination PP is selected as the starting point, and the current circulation destination CP is selected as the end point. Thereafter, the cost between the start point and the end point is read from the cost matrix (see FIG. 5). The read cost is added to the cyclic cost X (step S803). As a result, a traveling cost X in the middle of the traveling route currently being investigated is obtained.
[0070]
Next, with reference to the management information of FIG. 7, it is determined whether or not the “first” tour point Ni is the last visit destination LP (step S804). If there is an <end> mark immediately after this tour point Ni, the current visit destination CP becomes the last visit destination LP. In other words, since the route to be investigated is one route, step S811 is performed.
In this step, the current circulation destination CP (that is, the last circulation destination LP) is selected as the starting point, and the destination ND is selected as the ending point. Thereafter, the cost between the start point and the end point is read from the cost matrix. The read cost is added to the cyclic cost X (step S811). As a result, the total traveling cost Y (total) of the traveling route currently being investigated is calculated.
[0071]
Next, the total cyclic cost Y obtained this time is compared with the minimum total cyclic cost Ymin, and it is determined whether or not Y <Ymin is satisfied (step S812).
When it is determined that Y <Ymin, the total cyclic cost Y obtained this time is newly recorded as the minimum total cyclic cost Ymin (step S813). Furthermore, the traveling order of the traveling points N1, N2,. Note that if the minimum total cyclic cost Ymin is not obtained at the time of step S812, the minimum cyclic cost Ymin is regarded as infinite. Therefore, in this case as well, it is determined that Y <Ymin. After this step S812, the cyclic recursion process ends.
On the other hand, if it is determined that Y ≧ Ymin, the total recurring cost Y obtained this time is not recorded, and the recursive recursive process ends as it is.
[0072]
In step S804, if the “leading” tour point Ni is not the last tour destination LP, the survey target tour route is not completely configured, so the next tour point Nj (j ≠ i) is selected to go to the tour. In order to calculate the cost X, step S805 is performed.
In step S805, the current circulation destination CP is selected as the previous circulation destination PP. Further, the traveling point Ni selected as the current traveling destination CP is deleted from the management information of FIG. 7 (step S805), whereby only the unselected traveling point Nj (j ≠ i) is managed in FIG. It remains in the information. Furthermore, any of the unselected patrol points Nj (j ≠ i) is “the top”.
[0073]
In the next step S806, the cyclic recursion process of FIG. 8 is called again. At the time of shifting to this step (that is, in the initial state), the traveling cost X up to the middle of the traveling route currently being investigated is calculated. In the current cyclic recursion process, it is first determined whether or not the intermediate stage cyclic cost X ≧ minimum total cyclic cost Ymin (step S801). When X ≧ Ymin, the cyclic recursion process ends as described above. If X <Ymin, step S802 is performed as described above.
Next, the tour point Nj currently set at the “head” of the management information (see FIG. 7) is selected as the current visit destination CP (step S802). As a result, the tour point Nj to be visited next is selected. Thereafter, as described above, the cost between the starting point (= previous traveling destination PP) and the end point (= current traveling destination CP) is added to the traveling cost X (step S803). As a result, the traveling cost X from the departure point NSP to the currently selected traveling point Nj is obtained.
[0074]
In the management information of FIG. 7, if the “leading” tour point Nj is not the last visit destination LP (step S804), the current visit destination CP is selected as the previous visit destination PP. Further, the traveling point Nj selected as the current traveling destination CP is deleted from the management information of FIG. 7 (step S805), whereby only the unselected traveling point Nk (k ≠ i, k ≠ j) is stored. It remains in the management information of FIG. Furthermore, any one of the unselected patrol points Nk becomes “the top”.
[0075]
Thereafter, the cyclic recursion process of FIG. 8 is called again (step S806). As described above, the cyclic recursion process is repeatedly called until the cyclic point Ni disappears from the management information (that is, until one cyclic path is configured) unless it is terminated in step S801. In each cyclic recursion process, the current circulation destination CP is selected from the unselected circulation points Ni remaining in the management information (step S802), and then the current circulation destination CP is set as the previous circulation destination PP. At the same time, the current circulation destination CP is deleted from the management information. The management information from which the previous circulation destination PP and the current circulation destination CP are set is taken over by the next cyclic recursion process. In such a situation, the next cyclic recursion process is recursed.
[0076]
When the above step 806 is completed, the current circulation destination CP deleted in step S805 is returned to the management information of FIG. 7 (step S807). Further, the intermediate cost X is returned to the state before the addition in step S803 (step S808). In the next step S809, the previous tour destination PP is returned to the state before the change in step S805 in order to make the new tour route the subject of investigation. Further, in the management information of FIG. 7, the tour point Ni connected immediately after the current visit destination CP returned in step S807 is selected as the new current visit destination CP (step S809).
[0077]
Next, it is determined whether or not the <end> mark has been selected as the new current circulation destination CP (step S810). If this is the <End> mark, the recursive recursion process ends, assuming that all of the visiting locations of the Yayama residence have been investigated. On the other hand, if this is not the <end> mark, it is determined that all unselected patrol points have not been investigated, and the process returns to step S803 and is repeated in the same manner as described above.
In the cyclic recursion process of FIG. 8 described above, when the first called process is completed, all the cyclic paths are investigated, and the minimum cyclic cost Ymin is recorded. Therefore, the cyclic recursion process in step S604 in FIG. 6 ends, and the cyclic order determination process ends.
[0078]
Here, as a specific example of the cyclic order determination process (step S304), the case where n = 5, that is, the case where the cyclic order of the cyclic points N1 to N5 is determined will be described. In this case, the cost matrix is created as shown in FIG.
First, when step S304 is started, management information as shown in FIG. 11A is created (step S601). In FIG. 11, in the management information, five traveling points (N1 to N5) are arranged in order from the smallest subscript. The <end> mark is recorded at the last "fifth". As a result, the five tour points N1 to N5 to be selected are held.
[0079]
Next, the departure point NSP is selected as the previous traveling destination PP (step S602), and the traveling cost X is initialized to “0” (step S603). Thereafter, the first cyclic recursion process is called, and the total cyclic cost Y1 of the first cyclic route TR1 starts to be calculated. Here, FIG. 12A shows the cyclic route TR1 and the total cyclic cost Y1 obtained in step S304. First, since the current traveling cost X is smaller than the minimum total traveling cost Ymin (= ∞) (step S801), the “leading” traveling point N1 (see FIG. 11A) is set as the current traveling destination CP. This is selected (step S802), whereby a point to be visited next to the departure point NSP is selected. Next, the cost (its value is C01) between the previous destination PP (= departure point NSP) and the current destination (tour point N1) is read from the cost matrix of FIG. It is added to the cost X (= 0) (step S803). As a result, the current cyclic cost X is X = C01.
[0080]
Since the traveling point N1 is not the last traveling destination LP as shown in FIG. 11A (step S804), the traveling point N1 as the current traveling destination CP is set as the previous traveling destination PP, and then the management information (Step S805). The deleted tour point N1 is not selected as the current visit destination CP because it is excluded from the management information in the next and subsequent tour recursion processes. As a result, the traveling route TR is constructed without selecting the same traveling point N redundantly. In addition, as shown in FIG. 11B, the management information is arranged in the order of the other tour points N2 to N5 and the <end> mark as much as the tour point N1 is removed.
[0081]
After step S805, the second cyclic recursion process is called and executed to select the next cyclic destination of the cyclic point N1 and calculate the cyclic cost X up to that point (step S806). The current traveling cost X is C01. The traveling route TR1 is configured from the departure point NSP to the traveling point N1. Further, the traveling point N1 is selected as the previous traveling destination PP. Furthermore, the “head” of the management information is the traveling point N2 as shown in FIG. In this state (initial state), the second cyclic recursion process is recursed.
Even in the second cyclic recursion process (step S807), no cyclic route TR is obtained, so the cyclic cost X (= C01) is smaller than the minimum total cyclic cost Ymin (= ∞) (step S801). . Therefore, the tour point N2 (see FIG. 11B) currently at the “top” is selected as the current tour destination CP, that is, the next tour destination of the tour point N1 (step S802). Next, the cost (its value is C12) between the previous destination PP (= tour point N1) and the current destination CP (tour point N2) is added to the tour cost X (= C01). . As a result, the current cyclic cost X is X = C01 + C12.
[0082]
As shown in the management information of FIG. 11B, the tour point N2 is not the last visit destination LP (step S804), so the visit point N2 (current visit destination CP) is set as the previous visit destination PP. Is deleted from the management information (step S805). As a result, the management information transitions to the state shown in FIG. 11C, and the other tour points N3 to N5 and the <end> mark are arranged in order as the tour point N2 is removed.
[0083]
After step S805, the third cyclic recursion process is called (step S806). At this point, the cyclic cost X is C01 + C12. The traveling route TR1 is configured from the departure point NSP → the traveling point N1 → the traveling point N2. Further, the traveling point N2 is set as the previous traveling destination PP. Furthermore, the “head” is the traveling point N3 as shown in FIG. When the third cyclic recursion process is executed in this state (initial state), after steps S801 and S802 are executed, the previous circulation destination PP (= circulation point N2) and the current circulation destination (= The cost to the traveling point N3) (the value is C23) is added to the traveling cost X (= C01 + C12) (step S803). As a result, the current cyclic cost X is X = C01 + C12 + C23.
Further, after the execution of step S804, the traveling point N3 (current traveling point CP) is set as the previous traveling destination PP and then deleted from the management information as shown in FIG. 11 (d) (step S805).
[0084]
Thereafter, the fourth and fifth cyclic recursion processes (step S806) are called. For convenience, the description of the fourth cyclic recursion process is omitted. Thereafter, when the fifth cyclic recursion process is called, the cyclic cost X is C01 + C12 + C23 + C34. Further, the traveling route TR1 is configured from the departure place NSP → the traveling point N1 → the traveling point N2 → the traveling point N3 → the traveling point N4. Further, the traveling point N4 is set as the previous traveling destination PP. Furthermore, the management information is in a state as shown in FIG. 11E, and the traveling point N5 is set at the “top”. When the fifth cyclic recursion process is executed in this state (initial state), in step S803, between the previous circulation destination PP (circulation point N4) and the current circulation destination CP (circulation point N5). (The value is C45) is added to the cyclic cost X (step S803), and the cyclic cost X is updated from C01 + C12 + C23 + C34 to C01 + C12 + C23 + C34 + C45.
[0085]
Next, since the management information is currently in the state of FIG. 11E, the “leading” tour point N5 is determined as the last visit destination LP (step S804). Then, the cost (the value is C56) between the last circulation destination LP (circulation point N5) and the destination ND is added to the current circulation cost X (step S811). Thus, a cyclic route TR1 is formed. The traveling route TR1 is a route from the departure point NSP to the destination ND in the order of the traveling point N1, the traveling point N2, the traveling point N3, the traveling point N4, and the traveling point N5. In addition, since the cyclic order TR1 is completely configured, the current cyclic cost X (= C01 + C12 + C23 + C34 + C45 + C56) is held as the total cyclic cost Y1.
[0086]
Next, since the total cyclic cost Y1 is smaller than the minimum total cyclic cost Ymin (= ∞) (step S812), the cyclic route TR1 and the total cyclic cost Y1 configured this time are the optimum cyclic route and the minimum total cost. It is recorded as the traveling cost Ymin (step S813). As a result, the fifth cyclic recursion process (step S807) ends, and the cyclic recursion process executed for the cyclic path TR1 ends. When the fifth cyclic recursion process is closed, step S807 and subsequent steps of the fourth cyclic recursion process are performed, and preparation for the cyclic recursion process related to the second cyclic path TR2 is performed.
First, the current circulation destination CP (circulation point N4) deleted in step S805 of the fourth cyclic recursion process is returned to the management information (step S807). As a result, the management information transitions from the state shown in FIG. 11E to the state shown in FIG.
Also, the current cyclic cost X is returned to the state before step S803 of the fourth cyclic recursion process is executed. That is, the current traveling cost is returned to the state immediately before C34 is added in step S803. As a result, the current traveling cost X is returned to X = C01 + C12 + C23.
In step S809, the previous cyclic PP is returned to the one when the fourth cyclic recursion process is called. Therefore, the previous tour destination PP is returned to the tour point N3. Furthermore, the current circulation destination CP is updated from the one set in the fourth cyclic recursion process to a new one (step S809). More specifically, in the current management information (see FIG. 13A), the traveling point N5 connected immediately after the traveling point N4 used in the fourth cyclic recursion process is the new current traveling destination. Set as CP.
[0087]
By executing Steps S807 to S809, as shown in FIG. 12B, the second circuit route TR2 is configured from the departure point NSP → the circuit point N1 → the circuit point N2 → the circuit point N3 → the circuit point N5. become. Note that the traveling cost X of the departure point NSP → the traveling point N1 → the traveling point N2 → the traveling point N3 has already been obtained. This cyclic cost X is also used when obtaining the total cyclic cost Y of the second cyclic route TR2. Then, step S803 is executed to calculate the traveling cost X of the traveling route TR2 up to this middle. That is, as shown in FIG. 12B, the cost (its value is C35) between the previous circulation destination PP (= circulation point N3) and the current circulation destination (circulation point N5) is the current value. It is added to the cyclic cost X (= C01 + C12 + C23), and as a result, the current cyclic cost X becomes C01 + C12 + C23 + C35.
[0088]
As shown in the management information in FIG. 13A, the “first” tour point N4 is not the last tour destination LP (step S804), so the tour point N5 (current visit destination CP) is the previous visit destination. After being set as PP, it is deleted from the management information (step S805). As a result, the management information transitions from the state of FIG. 13A to the state of FIG. 13B, and the <end> mark is reduced in order by the amount of the round trip point N5 being removed.
[0089]
After step S805, the sixth cyclic recursion process is called (step S806). At this time, the cyclic cost X is C01 + C12 + C23 + C35. Further, the traveling route TR2 is configured from the departure point NSP → the traveling point N1 → the traveling point N2 → the traveling point N3 → the traveling point N5. Further, the traveling point N5 is set as the previous traveling destination PP. Furthermore, the “head” is the traveling point N4 as shown in FIG. In this state (initial state), the sixth cyclic recursion process is executed.
First, it is determined whether or not the current cyclic cost X (= C01 + C12 + C23 + C35) is equal to or greater than the minimum total cyclic cost Ymin (= Y1) (step S801). Now assume that X ≧ Ymin (= Y1). Under this assumption, the cyclic route TR2 cannot be optimal. Therefore, it is not necessary to perform the subsequent processing (steps S802 to S813), and the sixth cyclic recursion processing is terminated and ends. As a result, useless processing is not performed, and the number of calculations is reduced.
[0090]
Thereafter, the processing shown in the flowchart of FIG. 8 is performed until the first cyclic recursion processing is closed. When the first cyclic recursion process is closed, an optimal cyclic route having the minimum total cyclic cost Ymin is recorded. As a result, step S304 (cyclic order determination processing) in FIG. 3 ends.
In the next step S305, one traveling route from the departure point NSP to the destination ND is configured according to the optimum traveling order currently recorded. In step S306, the obtained tour route is presented to the user, or the current position accompanying the movement of the vehicle is displayed on the tour route.
[0091]
As described above, in step S304 (cyclic order determination processing) of the present embodiment, processing using the depth-first search method as a basic method is performed, and the optimal cyclic order is investigated. In this cyclic order determination process, the investigation process derived from the current circulation destination CP is terminated when the currently obtained cyclic cost X exceeds the minimum total cyclic cost Ymin. That is, it is possible to omit the investigation process of the combination that cannot be the minimum total traveling cost Ymin. As a result, the time required for selecting the optimum tour order can be shortened.
[0092]
Further, in this step S304 (touring order determination process), the tour point Ni as a selection target is deleted from the management information (list structure) in FIG. 7 when selected. Therefore, at the time when each cyclic recursion process is started, only unselected cyclic points Nj (j ≠ i) are managed in the management information of FIG. Further, in each cyclic recursion process, the current cyclic destination CP is simply selected from the “top” of the management information in FIG. Thereby, an unselected patrol point Ni is efficiently selected. As a result, it is possible to shorten the time required for selecting the optimum tour order.
[0093]
Further, in this step S303 (inter-point route calculation process), each point starts searching when obtaining the minimum cost route between two points included in the departure point NSP, the destination ND, and the n traveling points N1 to Nn. The points are sequentially selected (step S402), and then a unidirectional search process (steps S403 and S404) is performed using the Dijkstra method. As a result, the search process between each of two points at m points (m is the total number of the starting point NSP, the destination ND, and the n traveling points N1 to Nn) from m × (m−1) times to m. Can be reduced to times. This also shortens the time required to select the optimal tour order.
[0094]
(2) Second route selection method
In the second route selection method, the minimum cost between points determined in advance in the data storage unit 102 (FIG. 1) in the first embodiment and the data storage unit 202 (FIG. 2) in the second embodiment. Route results (cost between points and route data) are additionally recorded. Further, the predetermined points include points on the main road for accessing the vicinity of the points. This point is called the entrance / exit point.
Here, FIG. 14 is an example of a predetermined point. In FIG. 14, a sightseeing spot SP indicated by a circle is selected as a predetermined spot within the shaded sightseeing area α. In addition, as roads to access this sightseeing area α, points on the national highway (C1 to C3) and the point (S1) on the high-speed IC of Miemaru are added to the predetermined points as the entrance / exit points. Yes. The second patrol route selection method assumes a case where an optimal patrol order for patroling a plurality of sightseeing spots SP in the sightseeing area α is obtained on the in-vehicle navigation system. The outline of the second patrol route selection method is different from that of the first, and the tour points N1 to Nn are selected from predetermined points and then stored in the data storage unit 102 (or 202). The path cost between points is read out. After that, a cost matrix as shown in FIG. 5 is created, and an optimal tour order is determined in the same manner as in the first tour route selection method. Hereinafter, the second cyclic route selection method of the present invention will be described in more detail.
[0095]
FIG. 15 is a main flowchart showing a processing procedure of the second cyclic route selection method. In FIG. 15, first, the starting point NSP and the destination ND are selected by the user in the same manner as in the first patrol route selection method (step S1001). Next, n traveling points (delivery points) N1 to Nn are selected from a predetermined point group (step S1002). That is, this predetermined point is a candidate point for selecting the tour points N1 to Nn. Next, the point-to-point cost and the route data included in each traveling point Ni selected in step S1002 are read from the previously stored minimum cost route result between the points (step S1003). The read point-to-point cost and route data are stored on the RAM as point-to-point route information.
[0096]
Next, end point addition processing is performed in order to obtain a tour route TR including the departure point NSP and the destination ND that are not predetermined points (step S1004). In short, the end point addition process is a process for obtaining inter-point cost and route data from the departure point NSP to each of the traveling points N1 to Nn and from each of the traveling points N1 to Nn to the destination ND.
FIG. 16 is a flowchart illustrating a processing procedure of end point addition processing. In FIG. 16, first, it is determined whether or not the departure point NSP is included in a predetermined point (step S1101).
If it is included in a predetermined point, the minimum cost route result from the departure point NSP to each of the traveling points N1 to Nn is recorded in the data storage unit 102 (or 202). move on.
On the other hand, if the departure point NSP is not included in the predetermined points, steps S1102 and S1103 are performed to obtain the minimum cost route from the departure point NSP to each of the selected traveling points N1 to Nn. In step S1102, first, map data of an area including the departure place NSP and the selected patrol points N1 to Nn is read onto a RAM (not shown). Further, using the Dijkstra method with the departure point NSP as the search start point, departure point side search processing (search processing for expanding the search in the forward direction with respect to the vehicle traveling direction) is performed (step S1102). Next, after the route configuration is performed from each of the selected tour points N1 to Nn, the minimum cost route from the departure point NSP to each of the tour points N1 to Nn is obtained. Then, the point-to-point cost and route data as the minimum cost route are added to the point-to-point route information (step S1103). Thereafter, step S1104 is performed.
[0097]
Next, it is determined whether or not the destination ND is included in a predetermined point (step S1104).
If included in a predetermined point, since the minimum cost route result from each of the traveling points N1 to Nn to the destination ND is recorded in the data storage unit 102 (or 202), the end point addition process ends. To do.
On the other hand, if the destination ND is not included in a predetermined point, steps S1105 and S1106 are performed, and the minimum cost route from each selected traveling point N1 to Nn to the destination ND is obtained. In step S1105, first, map data of an area including the destination ND and the selected tour points N1 to Nn is read onto the RAM. Furthermore, the destination side search process (search process for expanding the search in the direction opposite to the vehicle traveling direction) is performed using the Dijkstra method with the destination ND as the search start point (step S1105). Next, in step S1106, after the route configuration is performed from each selected tour point N1 to Nn, the minimum cost route from each selected tour point N1 to Nn to the destination ND is obtained. The point-to-point cost and route data as the minimum cost route are added to the point-to-point route information.
Thus, the end point addition process (step S1004) is completed, and thereby, the inter-point information between the two points included in the departure point NSP, the destination ND, and each of the traveling points N1 to Nn is obtained.
[0098]
Refer to FIG. 15 again. When step S1004 (endpoint addition processing) ends, it is determined whether or not the minimum cost route between the endpoint (starting point NSP and destination ND) and each of the traveling points N1 to Nn has been obtained (step S1005). ). In step S1005, in the end point addition process in step S1004, within the range of the map data read into the RAM, from the departure point NSP to each of the tour points N1 to Nn, or from each of the tour points N1 to Nn to the destination ND. This is done in case the route is not found.
If a route has been obtained in step S1005, the process proceeds directly to step S1007 and proceeds to a cyclic order determination process.
On the other hand, if a route is not obtained in step S1005, entry / exit point selection processing is performed to set a temporary departure point DNSP instead of the departure point NSP or a temporary destination point DND instead of the destination ND. .
[0099]
FIG. 17 is a flowchart showing a detailed processing procedure of the entrance / exit point selection processing (step S1006). In FIG. 17, first, it is determined whether or not a route from the departure point NSP to each of the traveling points N1 to Nn has been obtained (step S1201). If it is determined in step S1201 that the route is obtained, the process proceeds to step S1205 without processing. On the other hand, if it is determined in step S1201 that a route has not been obtained, step S1202 is performed.
In step S1202, the one-way hierarchical search process is expanded using the departure point NSP as a search start point. In other words, using the Dijkstra method or the like, the search process is expanded from the starting point NSP with the map data of the lowest hierarchy, and if a certain range is searched, a higher level is recorded with a coarser road network. The search process using the upper map data is repeated up to the highest level. During the search process, after the search process for one layer is completed, it is checked whether or not the entry / exit points (for example, C1 to C3 and S1 in FIG. 14) are in the search end state, and then the connection cost is recorded. Is done.
Next, an entrance / exit point that can be reached from the departure point NSP with the minimum route cost is set as a temporary departure point DNSP (step S1203). At this time, if the points (C1 to C3) on the boundary of the tourist area α are in the search end state, priority may be given to the point (S1) on the main road away from the tourist area α. Next, the route cost and route data from the departure point NSP to the temporary departure point DNSP are recorded (step S1204), and the process on the departure point side ends.
[0100]
Next, it is determined whether or not a route from each of the traveling points N1 to Nn to the destination ND has been obtained (step S1205). If it is determined in step S1205 that a route has been obtained, the entry / exit point selection processing (step S1006) is terminated. On the other hand, if it is determined in step S1205 that a route has not been obtained, step S1206 is performed.
In step S1206, the above-described one-way hierarchical search process is expanded using the destination ND as a search start point. During the search process, after the search process for one layer is completed, it is checked whether the entry / exit points (for example, C1 to C3 and S1 in FIG. 14) are in the search end state, and then the connection cost is recorded. The Next, in step S1207, an entry / exit point that can reach the destination ND with the minimum route cost is set as the temporary destination DND. At this time, if the points (C1 to C3) on the boundary of the tourist area α are in the search end state, priority may be given to the point (S1) on the main road away from the tourist area. Next, the route cost and route data from the temporary destination DND to the destination ND are recorded (step S1208), and the processing on the destination side ends. Above, step S1006 (entrance / entrance point selection process) of FIG. 15 is complete | finished.
[0101]
In the above description, the one-way search method according to hierarchy is adopted. However, in the area above the map where the roads to which the points (C1 to C3) on the boundary of the tourism area α belong are recorded, A bidirectional search method may be employed in which a reverse search is performed with the initial cost of points (C1 to C3) on the boundary of α being 0. In this case, the point (S1) on the main road away from the tourist area α may not be included in a predetermined point as an entrance / exit point.
In the above description, the entrance / exit point that can be reached with the minimum route cost from the departure point NSP (or the destination ND) is automatically adopted as the temporary departure point DNSP (or the temporary destination DND). You may choose which access road you want to choose.
[0102]
Refer to FIG. 15 again. After step S1006 is performed, a tour order determination process for determining the order in which the tour points N1 to Nn are visited is performed (step S1007). The processing in step S1007 is the same as the processing in step S304 in FIG. However, in step S1007, if a temporary departure point DNSP or temporary destination DND is selected in the entry / exit point selection process in step S1006, these are treated as equivalent to the departure point NSP or the destination ND. . Next, the route data obtained in step S1003, step S1004, and step S1006 are connected in accordance with the optimum circulation order obtained in step S1007, and the destination ND (including the temporary departure place DNSP) is connected to the destination ND ( A single traveling route TR (including a temporary destination DND) is configured (step S1008). Finally, the obtained tour route TR is presented to the user, or the current position accompanying the movement of the vehicle is displayed on the tour route, and the direction to be followed is guided (step S1009).
[0103]
As described above, according to the second route selection method, as preconditions, points that can be selected as the tour points N1 to Nn are determined in advance. Further, point-to-point information (point-to-point cost and route data) regarding these points is obtained in advance. As a result, there is a case where it is not necessary to calculate a route between the respective tour points, and the time required for selecting a tour order having the minimum total tour cost Ymin can be shortened.
[0104]
Further, according to the second tour route selection method, the search process based on the Dijkstra method is performed using an arbitrary departure point NSP or destination ND as a search start point, so that each of the tour points N1 to Nn from the departure point NSP. Alternatively, the route from each of the traveling points N1 to Nn to the destination ND is obtained by one search process. As a result, it is possible to shorten the selection time of the minimum cost cyclic route from an arbitrary departure point NSP or the minimum cost cyclic route to an arbitrary destination ND.
[0105]
Further, according to the second patrol route selection method, a point on the road that accesses the patrol area (corresponding to the tourist area α in FIG. 14) is determined in advance as an entrance / exit point. Similarly to the predetermined traveling points, the points between the entrance points and the points that can be selected as the traveling points N1 to Nn, the points that can be selected as the traveling points N1 to Nn, and the doorways The route between the points is obtained in advance and recorded as route information. Therefore, by selecting the entrance point to the patrol area as the temporary departure point DNSP, or the exit point from the patrol area as the temporary destination DND, the cyclic route TR from the temporary departure point DNSP or the temporary destination A traveling route TR to the ground DND can be obtained. As a result, in an environment with a small amount of RAM, such as an in-vehicle device, even when a route from the departure point NSP to each of the traveling points N1 to Nn or a route from each of the traveling points N1 to Nn to the destination ND is not required. The traveling route TR of the selected traveling points N1 to Nn can be obtained.
[0106]
Further, according to the second patrol route selection method, a plurality of points on the main road crossing the border of the patrol area are selected as the entrance / exit points. This makes it possible to mechanically easily set the minimum necessary entry / exit points, simplifying the selection of entry / exit points, and using the search process to automatically set the appropriate temporary departure point. A DNSP or a temporary destination DND can be selected.
[0107]
Further, according to the second embodiment, as the entrance / exit point, a point on the main road that is not included in the circulation area but passes through the vicinity thereof is selected. Thus, an entrance / exit point that can reach the departure point NSP or the destination ND at a minimum cost can be selected by a one-way hierarchical search method from the departure point NSP or the destination ND. As a result, the cyclic route selection process can be simplified, and the time required to select the optimal cyclic order can be shortened.
[0108]
Furthermore, according to the second embodiment, the temporary departure point DNSP or the temporary destination DND can be selected by the user from the entrance / exit points to enter the patrol area from a desired direction or Since it is possible to escape, it is possible to select an approach road to the tour area or an exit road from the tour area according to the user's preference.
[0109]
(3) Third route selection method
In the third route selection method, the minimum cost between points determined in advance in the data storage unit 102 (FIG. 1) in the first embodiment and the data storage unit 202 (FIG. 2) in the second embodiment. Record the route result (only the cost between points). The predetermined point includes a point on the main road for accessing the vicinity of the point. This point on the main road is hereinafter referred to as an entrance / exit point. The difference between the third cyclic route selection method and the second one is that route data between predetermined points is not recorded in advance.
In addition, when selecting a tour location, a tour location is selected from predetermined locations. Thereafter, the route cost between the points stored in the data storage unit 102 (or 202) is read, and a cost matrix is created. Thereafter, as in the second route selection method, the order in which the selected tour points N1 to Nn are visited is determined. Hereinafter, the third method for selecting a tour route will be described.
[0110]
FIG. 18 is a main flowchart showing the processing procedure of the third cyclic route selection method. The flowchart of FIG. 18 is almost the same as the main flowchart (FIG. 15) showing the second cyclic route selection method. Hereinafter, different points will be described. The difference between the third route selection method (FIG. 18) and the second one (FIG. 15) is the following two points.
The first difference is that step S1303 is executed instead of step S1003 of FIG. 15 in the flowchart of FIG. In the second tour route selection method, the route cost and route data between the selected tour points N1 to Nn are obtained in advance in step S1003 in FIG. However, in the third route selection method, since only the route cost between predetermined points is recorded in the data storage unit 102 (or 202) as described above, the selection is made in step S1303 in FIG. Only the route cost between two points included in each of the round points N1 to Nn is read into the RAM.
[0111]
The second difference is that the point-to-point route selection process in step S1308 is performed between step S1307 in FIG. 18 (corresponding to step S1007 in FIG. 15) and step S1309 (corresponding to step S1008 in FIG. 15). is there. In the third cyclic route selection method, route data between points is not recorded in the data storage unit 102 (or 202) as described above. For this reason, after the tour order of the tour points N1 to Nn is determined in the tour order determination process in step S1307, the tour route TR from the departure point NSP to the destination ND cannot be connected in step S1309. Therefore, in the point-to-point route selection process in step S1308, the part from the departure point NSP to the first rounding point Ni, the first rounding point Ni to the second rounding point Nj,..., The last rounding point Nk to the destination ND The route is obtained by repeating a known point-to-point search method.
[0112]
Here, FIG. 19 is a flowchart showing a detailed processing procedure of step S1308 (point-to-point route selection processing). In FIG. 19, first, a departure point NSP is selected as a starting point (step S1401). Next, according to the tour order determined in the tour order determination process in step S1307 (FIG. 18), the next tour point Ni that is the starting point is set as the end point (step S1402). Here, in the entrance / exit point selection process in step S1306 (FIG. 18), when the temporary departure point DNSP or the temporary destination DND is mechanically set, it is preferable not to set these as the end points. However, when the temporary departure point DNSP and the temporary destination DND are set by the user, these are set as the end points.
[0113]
Next, the minimum cost route from the start point to the end point is calculated using a conventional point-to-point search method represented by the Dijkstra method, and then the route data is recorded on the RAM (step S1403). Next, it is determined whether or not the end point is the destination ND (step S1404). If it is determined in step S1404 that the destination is ND, the point-to-point route selection process ends, assuming that all partial routes of the cyclic route TR from the departure point NSP to the destination ND have been obtained.
On the other hand, if it is determined in step S1404 that it is not the destination ND, step S1405 is performed, the current end point is selected as the next start point, the process returns to step S1402, and the above process is repeated.
[0114]
By connecting the partial route data obtained by the above-described point-to-point route selection process in step S1309 in FIG. 18, the route TR that passes from the departure point NSP to the destination ND through each of the circulation points N1 to Nn. Is configured.
[0115]
As described above, according to the third tour route selection method, points that can be selected as the tour points N1 to Nn are determined in advance. In addition, only the route cost between each selectable point is recorded in advance. The partial route of the cyclic route TR is obtained by repeating the point-to-point search process. As a result, unlike the second cyclic route selection method, route data need not be recorded in advance, so that the storage area of the data storage unit 102 or 202 can be used effectively.
[0116]
Further, according to the third route selection method, the temporary departure point DNSP or the temporary destination DND determined in the entry / exit point selection process (step S1306) is skipped, and the route from the departure point NSP to the destination ND is performed. A partial route of the route TR is obtained. Thereby, it is possible to select only the traveling route TR having the minimum total traveling cost Ymin regarding the traveling points N1 to Nn that the user really wants to drop in. As a result, it is possible to prevent the selection of the cyclic route TR that unnaturally passes through the temporarily selected temporary departure point DNSP or temporary destination DNS.
[0117]
Further, according to the third route selection method, the partial route of the route TR from the departure point NSP to the destination ND can be obtained without skipping the temporary departure point DNSP or temporary destination DND set by the user himself / herself. Desired. As a result, it is possible to select a traveling route TR that passes through the provisional departure point DNSP or provisional destination DNS set by the user. As a result, it is possible to obtain a traveling route TR that always enters the traveling area through the access road intended by the user or exits the traveling area.
[0118]
(4) Fourth route selection method
The main flowchart of the present route selection method is the same as the main flowchart (FIGS. 3, 15, and 18) of the first to third route selection methods. Here, in the first to third cyclic route selection methods, the same cyclic order determination process (FIG. 6) is used. This cyclic order determination process has a problem that the processing time increases when the number of points to be visited becomes more than ten, and it is difficult to obtain an optimal cyclic order in a practical time. Therefore, in order to solve this problem, the following cyclic order determination process is adopted instead of the cyclic order determination process of FIG.
[0119]
FIG. 20 is a flowchart showing a cyclic order determination process according to the fourth cyclic route selection method. In FIG. 20, all selected tour points N1 to Nn are selected as target point groups (step S1501). Next, a recursive grouping process is performed for dividing a large number of all round points N1 to Nn into groups of a certain number or less (step S1502).
FIG. 21 is a flowchart showing a detailed procedure of the recursive grouping process. In FIG. 21, first, it is determined whether or not the target point group includes a certain number or more of traveling points N1 to Nn (step S1601). The certain number of values depends on the hardware performance of the device to be used, but is assumed here to be ten. However, the fixed number may be any number as long as the traveling route can be obtained in a sufficiently short time. If it is determined in step S1601 that the number is less than the predetermined number, the recursive grouping process is terminated because it is not necessary to perform grouping.
[0120]
On the other hand, if it is determined in step S1601 that the number is equal to or greater than a certain number, step SS1602 is executed. In step S1602, first, two traveling points Ni with the lowest cost between two points in the target point group are selected. The two selected points are collected as the same group (step S1602). Next, it is determined whether or not the number of groups is a certain number or more (step S1603). Here, with respect to the traveling points Nj (j ≠ i) that are not grouped, one point is converted as one group. Here, the fixed number of values is the same as the constant value in step S1601, and 10 values are adopted. In step S1603, if the number of groups is equal to or greater than a certain number, it is determined that further grouping is necessary, and the process returns to step S1602. On the other hand, in step S1603, if the number of groups is less than a certain number, it is determined that further grouping is not necessary, and the process proceeds to step S1604. In subsequent steps S1604 to S1608, the following investigation is performed on the group configured in steps S1602 and S1603.
[0121]
First, one of unexamined groups is selected as an investigation target (step S1604). Next, it is determined whether or not the number of patrol points Ni included in the group to be investigated is a certain number or more (step S1605). Here, the fixed number of values is the same as the constant value in step S1601, and 10 values are adopted. If it is determined in step S1605 that the number of traveling points Ni is less than a certain number, it is determined that there is no need to further group the groups to be investigated (that is, it is not necessary to create a lower layer group). Is done.
[0122]
On the other hand, in step S1605, if the number of points is a certain number or more, it is determined that the processing time is increased, and it is determined that it is necessary to further create a lower layer group and divide the group to be investigated, and steps S1606 and S1607 Done. First, all the traveling points Ni included in the investigation target group are set as processing targets (step S1606). Next, the recursive grouping process of FIG. 21 is recursively executed in order to divide the traveling point Ni to be processed into lower layer groups. By this recursive grouping process, groups are hierarchically configured. The recursive grouping process is repeated until the number of traveling points Nj (j⊂i) included in each lower layer group becomes less than a certain number.
[0123]
Next, proceeding to step S1608, it is determined whether or not all groups have been investigated in step S1604 (step S1608). If all the groups have not been checked in step S1608, the process returns to step S1604, the next group to be checked is selected, and the subsequent processing is repeated. On the other hand, if all the groups have been checked in step S1608, the recursive grouping process ends.
In the present embodiment, when grouping is performed (step S1602), grouping is performed from points with low cost between two points, but grouping may be performed from points that are close in spatial distance. Moreover, as a result of grouping two points belonging to different groups, a large group may be formed. If this group is much larger than the other groups, the grouping may not be performed.
[0124]
Here, an example of the points grouped by the recursive grouping process is shown in FIG. In FIG. 22, there are 17 traveling points N (see white circles), but eight groups G1 to G8 (shaded portions) are formed by the recursive grouping process of FIG. Further, the departure point NSP is indicated by ☆ and the destination ND is indicated by ★.
Reference is again made to FIG. When the recursive grouping process in step S1502 ends, the hierarchical cyclic order determination process in step S1503 is performed according to the grouped result. In step S1503, after the cyclic order of the upper layer group is determined, the process of determining the cyclic order of the lower layer group is repeatedly executed. As a result, finally, a cyclic order having a minimum total cyclic cost Ymin is obtained. The detailed procedure of the hierarchical cyclic order determination process (step S1503) will be described below with reference to FIG. Note that this hierarchical cyclic order determination process is also a recursive process.
[0125]
When the first hierarchical cyclic recursion process is called, first, in step S1801 in FIG. 23, a group including the first cyclic point Nt is selected as the first cyclic group. Further, the group including the final tour point Ne is selected as the final tour group (step S1801). However, in the first hierarchical traveling process, the group including the traveling point that can be reached from the departure point NSP with the minimum route cost is the first traveling group, and the group including the traveling point that can reach the destination ND with the minimum route cost is the final traveling group. Selected as.
After step S1801, groups other than the first and last tour groups are set to an unselected state. Further, initial management information (list structure) is created for the unselected group (step S1802). The description of the management information created this time is omitted because it has been described in detail in the first patrol route selection method. However, although the management information is created for the traveling point Ni in the first traveling route selection method, it should be noted that the management information is created for the uppermost group Gi in the first hierarchical traveling order determination process. Cost. That is, in the first hierarchical cyclic order determination process, the highest group Gi is collected and regarded as a cyclic point.
[0126]
Next, the head tour group is selected as the previous tour destination PP. Further, the final tour group is selected as the destination ND for convenience (step S1803). Further, the current traveling cost X is initialized (step S1804). Next, cyclic recursion processing is performed in order to obtain a cyclic route TR that efficiently circulates through the uppermost group Gi without passing through the same group repeatedly. The description of this cyclic recursion process is the same as the cyclic recursion process (FIG. 8) detailed in the first cyclic route selection method, and will not be repeated. However, in this cyclic recursion process, the highest group Gi is handled in the same manner as the cyclic point Ni described in the first cyclic route selection method. In addition, the inter-group cost between one group Ga and another group Gb (corresponding to the point-to-point cost in the first cyclic route selection method) is one of the cyclic points Na belonging to the certain group Ga and the other group. It is assumed that the point-to-point cost is the minimum cost among the combinations with any one of the traveling points Nb belonging to Gb. At this time, the traveling point Nj (jεa) selected in a certain group Ga becomes the final traveling point Ne in the group Ga. Further, the tour point Nk (kεb) selected in the other group Gb is the head tour point in the group Gb.
[0127]
As described above, the processing order of steps S1801 to S1805 can be used to determine the order in which the uppermost group Gi can be visited most efficiently. For reference, an example of the cyclic route TR of the uppermost layer group Gi obtained by this series of processing is shown in FIG. In FIG. 24, first, an outline (route with a thick arrow) of the cyclic route TR that passes through all the highest-level groups G1 to G8 from the departure point NSP to the destination ND can be determined.
In the processing after step S1806, the optimal tour order of the tour points Ni included in each group is determined. First, one of the uninvestigated groups Gi is selected as an investigation target (step S1806). Next, it is determined whether or not two or more tour points Nx (xεi) are included in the investigation target group Gx (xεi) (step S1807). If there is one patrol point Nx in step S1806, the process proceeds to step S1810 without processing. On the other hand, if two or more patrol points Nx are included in step S1806, step S1808 is performed.
[0128]
In step S1808, all the traveling points Nx included in the investigation target group Gx are selected as processing targets (step S1808). Next, in order to determine the optimal tour order of the tour points Nx included in the group Gx to be investigated, the hierarchical tour order determination process of FIG. 23 is recursively executed (step S1809). By recursively performing this hierarchical tour order determination process, finally, all tour points Ni are connected by a single tour route TR.
Next, it is determined whether or not all groups Gi have been examined (step S1810). If there is an uninvestigated group Gi in step S1810, the process returns to step S1806, the next group is set as the subject of investigation, and the above processing is repeated. On the other hand, if all the groups have been investigated in step S1810, the hierarchical cyclic order determination process ends. Thereby, the cyclic order determination process shown in FIG. 20 is completed. For reference, an example of the cyclic route TR obtained by the above processing is shown in FIG. In this way, by combining the routes between groups in each layer, it is possible to obtain the entire traveling route TR in which all the traveling points Ni are connected.
[0129]
In the fourth cyclic route selection method, the cyclic route TR is obtained by advancing the processing from the upper layer group to the lower layer group. However, the processing is performed from the lower layer group to the upper layer group. The traveling route TR may be obtained by proceeding. That is, a partial cyclic route having a minimum route cost with each point (group) as a start point and an end point is obtained and recorded from the lower layer. The partial patrol route is recorded for all combinations of two points (or two groups) included in the same hierarchy. Then, it suffices if a cyclic route TR having a minimum route cost as a whole is selected.
[0130]
As described above, according to the fourth tour route selection method, since the tour routes Ni are obtained after the neighboring tour points Ni are grouped into one group, the number of combinations to be investigated is reduced. In particular, when the number of traveling points Ni is large, the time required to select the traveling route TR can be shortened.
Further, in the fourth cyclic route selection method, those having a short spatial distance between two points are preferentially collected into one group, so that the quality of the cyclic route TR selected by a relatively simple process can be improved. it can.
In addition, according to the fourth route selection method, items with small evaluation values (corresponding to route costs) regarding the distance (or travel time) between two points are preferentially collected into one group. Therefore, it is possible to avoid the grouping of the two traveling points Ni such that the road between the two points is detoured even though the spatial distance is close. As a result, the quality of the selected cyclic route TR can be improved.
[0131]
In addition, according to the fourth cyclic route selection method, as a result of grouping, there is a case where one group having a very wide range as compared with other groups is formed. Since the grouping is invalidated, the size of each group can be averaged. As a result, it is possible to prevent the selection of an irregular traveling route TR. As a result, the quality of the selected cyclic route TR can be improved.
Further, according to the fourth tour route selection method, when the optimum tour order is determined, the rough tour order is first determined in the upper layer by determining the tour order from the upper layer group. As a result, the total amount of calculation can be reduced, so that the processing time required to select the optimum cyclic order can be shortened.
[0132]
(5) Fifth patrol route selection method
Since the car navigation system shown in FIG. 1 is mounted on the vehicle, the capacity of the RAM in the system is limited or the processor is ineffective. Under such circumstances, there is a demand for a cyclic route selection method with a light processing load and a small amount of RAM to be used. Such a demand is realized by the following fifth route selection method.
[0133]
FIG. 26 is a flowchart illustrating a processing procedure of the fifth cyclic route selection method. The processing according to the main flowchart of FIG. 26 is mainly performed by the navigation device 104 of FIG.
In FIG. 26, the user designates a starting point and a destination, and a plurality of patrol points in the same manner as described above (steps S2601, S2602).
[0134]
Next, a point-to-point route calculation process is performed based on the selected departure point, destination, and a plurality of patrol points (step S2603). To outline the point-to-point route calculation process, two points that can be selected are selected from a designated starting point, destination, and a plurality of patrol points, and a minimum cost and a minimum cost route between the two selected points are obtained. . Here, the minimum cost preferably means the minimum value of travel time when the vehicle travels between two selected points. The minimum cost route means a route that minimizes travel time. The obtained minimum cost is described in the cost matrix as an evaluation value when obtaining an optimum patrol route.
[0135]
Here, as already described with reference to FIG. 5, the cost matrix is a matrix in which the evaluation value (minimum cost) from the starting point to the ending point of the two selected points is the starting point and the ending point is the column. Is recorded. FIG. 5 shows an example in which the number of patrol points is n in addition to the departure point and the destination. For example, the minimum cost when starting from the departure point and ending at the traveling point N1 is 50 minutes. Note that there is no need for a cost starting from the destination, a cost starting from the departure point, and a cost from the departure point to the destination, so a “-” mark is described in advance in the cost matrix. The
In addition, the said cost should just represent the evaluation value until it reaches | attains from an origin to an end point, and the movement distance or linear distance between two points may be sufficient, and the thing which considered the passage charge may be considered.
[0136]
FIG. 27 is a flowchart showing a detailed processing procedure of step S2603 of FIG. In FIG. 27, first, a hierarchy of map information for starting a route search is set (step S2701). Here, map information having a hierarchical structure is recorded in the data storage unit 102 according to the fifth tour route selection method. That is, the map information of the lowest layer is data obtained by converting a detailed map expressed in the largest scale. Further, the map information at the highest level represents a predetermined range (for example, about 1.5 km square) in detail up to a narrow street. A number of such top-level map information gathers to form a wide range of maps. As the map information becomes higher, the map becomes a smaller scale and becomes a map that roughly represents a wider range (that is, a more main road is recorded). Therefore, in step S2701, when calculating the evaluation value between each two points, it is determined from which hierarchy. Normally, it is desirable to calculate from the lowest hierarchy, but the search may be started from the middle hierarchy or higher in order to reduce the RAM capacity required for processing and the processing load. If the departure point, the destination, and each patrol point are points on a main road, the search may be started from the level where the main road is recorded.
[0137]
Following step S2701, search processing is performed using the map information of the set hierarchy (step S2702). FIG. 28 is a flowchart showing a detailed processing procedure of step S2702. First, the departure point, the destination, and each patrol point are set as search start point candidates (step S2801). Next, one unselected point is selected from the search start point candidates, and the selected point is set as the search start point. Next, the set search start point and map information around the search start point are read from the data storage unit 102 into the RAM (step S2803). The range represented by the read map information is determined in advance.
[0138]
Subsequent to step S2803, a departure side search process and a destination side search process are performed from a search start point or an upper transition point described later (step S2804). As these search methods, the Dijkstra method which is a well-known technique can be used. However, from the search start point or the upper transition point, the departure side search process for the departure point and the destination side search process for the destination from the search start point or the like may be performed. During the execution of each search process, information on the arrival cost from the search start point to another point and the passing link (or the previous passing node) between the two points is recorded as the search result.
Next, a point on the road that is the end point of the search range and recorded in the upper hierarchy is recorded as an upper transition point, and the arrival cost from the search start point to the upper transition point is recorded. In addition, route data from the search start point to the upper transition point is recorded as a candidate route (step S2805). In step S2805, route data may not be recorded. In that case, in step S2605 (FIG. 26) to be described later, route data is created by repeating the conventional point-to-point search according to the cyclic order determined in step S2604.
[0139]
After step S2805, it is determined whether there is an unselected point, and if there is, the process returns to step S2802, and after the next search start point is selected, the subsequent processing is repeated. If there is no unselected point, the search process within the hierarchy is terminated.
[0140]
Reference is now made to FIG. 27 again. When step S2702 ends, connection determination processing is performed to determine whether a point-to-point route has been obtained in the currently set hierarchy (step S2703). FIG. 29 is a flowchart showing a detailed procedure of the connection determination process. First, an unconnected two points are set as candidates for determination (step S2901).
[0141]
Next, one of the set determination target candidates that has not been determined is selected and set as a determination target (step S2902).
Next, in the intra-hierarchy search process, it is determined whether or not a determination point-to-point route has been obtained (step S2903). For example, in order to determine whether a route between two points from point A to point B has been obtained, refer to the search result on the departure side from point A and the search result on the destination side from point B. Investigate whether there is a searched point to be searched. If a common searched point exists, from point A to point B based on the arrival cost from the point A side to the common searched point and the arrival cost from the point B side to the searched point The total cost is calculated, and the route passing through the point where the total cost is minimum is regarded as the route between the points.
[0142]
If there is no common searched point in step S2903, it is determined that a route between two points has not been obtained, and the process proceeds to step S2906 without processing. On the other hand, if there is a common searched point in step S2903, the total cost of the point-to-point route determined in this step is recorded in the cost matrix as the point-to-point cost (step S2904).
[0143]
Further, route data of the point-to-point route obtained in step S2903 is configured (step S2905). At this time, if the end point of the searched route in the currently set layer is an upper transition point from the lower layer, the corresponding one is selected from the lower layer candidate route data recorded in step S2805 as the end point. By adding, all routes from the point A to the point B are configured, and the route is recorded as the point-to-point route information.
Note that step S2905 may not be performed. In that case, in step S2605 (FIG. 26) to be described later, route data is created by repeating the conventional point-to-point search according to the cyclic order determined in step S2604. Of course, it is not necessary to record route data in step S2805 (FIG. 28).
[0144]
Next, it is determined whether there is an undetermined point among the determination target candidates (step S2906), and if there is, the process returns to step S2902, and after another determination target is selected, the subsequent processing is repeated. It is. On the other hand, if there is no undetermined point in step S2906, the connection determination process ends.
[0145]
Refer to FIG. 27 again. When step S2703 is completed, it is determined whether a necessary route between all points (for example, a route between the start point and the end point in the column in which the numerical values in FIG. 5 are written) has been obtained (step S2704). If there is a route between points that have not been obtained, the hierarchy to be searched is moved to the upper hierarchy (step S2705), the process returns to step S2702, and the search process within the hierarchy is repeated in the hierarchy. On the other hand, if all the necessary routes between points have been obtained in step S2704, the route calculation process between points is terminated. Thus, the blank of the cost matrix is filled.
[0146]
Refer to FIG. 26 again. Following step S2603, the tour order of the tour points is determined (step S2604). When the order of patrol is determined by the car navigation system, the number of patrol points is about several (for example, five points), and therefore a normal depth-first search method may be used.
Next, route data from the departure place to the destination is created in accordance with the determined order of travel (step S2605). In this embodiment, the route data between each two points is recorded in step S2905 in FIG. 29. Therefore, the route data between each two points may be sequentially read in accordance with the circulation order determined in step S2604. .
[0147]
In addition, when recording of route data of the candidate route in step S2805 of FIG. 28 and / or recording of route information of the route between points in step S2906 of FIG. 29 is not performed, it is determined in step S2604. It is also possible to create route data by repeating the normal point-to-point search process for each section in accordance with the circulation order.
Subsequent to step S2605, the obtained tour route is presented to the user, or the tour route is guided as the current location moves.
[0148]
The above-described route calculation process between points in FIG. 26 (step S2603) reduces the load of the route calculation process between points as follows. For example, when there are three tour points (N1, N2, N3), there are six combinations between the two tour points. When these six routes are searched by repeating the point-to-point search six times, the results are as shown in FIGS. Here, FIG. 30 to FIG. 35 are explanatory diagrams of processing for obtaining the route between points by repeating the search between two points. In this explanatory diagram, the map information to be used is assumed to be two layers. In this case, the number of searches for the departure side and destination side in the lower hierarchy is 12 times, and the number of searches for the departure side and destination side in the upper hierarchy is also 12 times.
[0149]
In contrast, the point-to-point route calculation process according to the present embodiment is a process as shown in FIG. FIG. 36 is an explanatory diagram of processing for obtaining a route between points in the present embodiment. In the present embodiment, as shown in FIG. 36, the search process on the departure side and the destination side is expanded from each patrol point in the lower hierarchy, and then the process moves to the upper hierarchy to continue the subsequent search process. Therefore, the number of searches for the departure side and destination side in the lower hierarchy is six times, and the number of searches for the departure side and destination side in the upper hierarchy is also six. In this way, the route between points can be obtained with a relatively light load.
[0150]
Here, in the above-described embodiment, the map information recorded in the data storage unit 102 has a hierarchical structure, but may have a single hierarchy. In that case, the processing of step S2701, step S2704, and step S2705 of FIG. 27 is not necessary, but the search processing of step S2804 of FIG. 28 performs the search processing in a sufficiently wide range so as to obtain the path between points. There is a need.
Note that the evaluation value used in the search process performed in step S2804 in FIG. 28 and the evaluation value recorded in the cost matrix are not necessarily the same. For example, the evaluation value recorded in the cost matrix may be recalculated based on the obtained point-to-point route.
[0151]
As described above, according to the present embodiment, after obtaining the minimum evaluation value route between the points, the evaluation value on the route is adopted as the evaluation value between the two points, thereby assuming the road that actually travels. Therefore, it is possible to obtain an efficient patrol route without a sense of incongruity.
Further, according to this embodiment, each point (departure point, destination, and each patrol point) is set as a search start point, and at least one of the departure point side search process and the destination side search process is performed for all points. Since the number of search processing times can be minimized by going and obtaining the route between the points, the route between all the points can be selected in a short time.
[0152]
In addition, according to the present embodiment, the hierarchical map information is used, and after performing the search process with each point as the search start point in the lower hierarchy for all points, the connection determination is performed and the connection is not established. If there is a route, it is possible to set the search range suitable for the road network recorded in the hierarchy by moving to the upper hierarchy and continuing the search process of related points. A route between points can be selected in a short time.
[0153]
In addition, according to the present embodiment, by re-searching the last required section route, it is possible to configure a cyclic route even if the route data is not left when calculating the minimum evaluation value route between the points. Therefore, the RAM capacity used on the vehicle-mounted device can be reduced.
In addition, according to the present embodiment, it is possible to configure a cyclic route by referring to this route data by leaving the route data when calculating the minimum evaluation value route between the points. Since it is not necessary to perform a search process for the configuration, it is possible to shorten the traveling route selection time.
[0154]
Further, in the description of the first to fifth cyclic route selection methods, the depth-first search method is taken as an example to obtain an optimal cyclic route. However, not only the depth-first search method, but also each of the above-mentioned cyclic route selection methods is added to a conventionally known method such as a simulated annealing method (so-called SA method), a genetic algorithm (so-called GA method) or a neural network method. It may be applied.
[0155]
In the first and second embodiments, each functional block may be configured by hardware, or may be configured as a result of program processing such as multitasking of a microcomputer.
Further, the present invention is realized by a program, and can be easily implemented by another independent computer system by recording it on a recording medium such as a floppy disk and transferring it. In this case, the recording medium is not limited to the floppy disk, and any recording medium such as an optical disk, an IC card, and a ROM cassette that can record the program can be similarly implemented.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a car navigation system according to a first embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of a delivery vehicle management system according to a second embodiment of the present invention.
FIG. 3 is a main flowchart showing a processing procedure of a first cyclic route selection method.
4 is a flowchart showing a detailed procedure of a point-to-point route calculation process (step S303) in FIG. 3;
FIG. 5 shows an example of a cost matrix.
6 is a flowchart showing a detailed procedure of a cyclic order determination process (step S304) in FIG. 3;
FIG. 7 shows an example of management information having a list structure.
FIG. 8 is a flowchart showing a detailed procedure of the cyclic recursion process (step S604) in FIG. 6;
FIG. 9 shows three examples of cyclic routes.
FIG. 10 shows a cost matrix configured when tour points N1 to N5 are selected.
11 shows state transition of management information in the process of cyclic recursion processing of FIG.
12 shows how processing is terminated for the total cyclic cost Y1 and the cyclic route TR2 calculated in the course of the cyclic recursion process of FIG.
13 shows state transition of management information in the process of cyclic recursion processing of FIG.
FIG. 14 shows a sightseeing spot SP indicated by a circle in the shaded sightseeing area α as an example of a predetermined spot.
FIG. 15 is a main flowchart showing a processing procedure of a second cyclic route selection method.
FIG. 16 is a flowchart showing a detailed procedure of end point addition processing (step S1004) in FIG. 15;
FIG. 17 is a flowchart showing a detailed procedure of the entrance / exit point selection process (step S1006) in FIG. 15;
FIG. 18 is a main flowchart showing a processing procedure of a third cyclic route selection method.
FIG. 19 is a flowchart showing a detailed procedure of the point-to-point route selection process (step S1308) in FIG. 18;
FIG. 20 is a flowchart showing a detailed procedure of a cyclic order determination process according to a fourth cyclic route selection method.
FIG. 21 is a flowchart showing a detailed procedure of the recursive grouping process (step S1502) in FIG. 20;
FIG. 22 shows an example of a tour point N grouped by the recursive grouping process of FIG.
FIG. 23 is a flowchart showing a detailed procedure of the hierarchical cyclic order determination process (step S1503) in FIG. 20;
24 shows an example of a cyclic route between groups of the highest hierarchy obtained by the hierarchical cyclic order determination process of FIG. 23. FIG.
FIG. 25 shows an example of a cyclic route obtained by the hierarchical cyclic order determination process of FIG.
FIG. 26 is a main flowchart showing a processing procedure of a fourth cyclic route selection method.
27 is a flowchart showing a detailed procedure of the point-to-point route calculation process (step S2603) of FIG.
28 is a flowchart showing a detailed procedure of search processing within a hierarchy (step S2702) of FIG.
FIG. 29 is a flowchart showing a detailed procedure of connection determination processing (step S2703) in FIG. 27;
FIG. 30 is a diagram for explaining a process for obtaining a route from the traveling point N1 to N2 in the repetition of the search between two points.
FIG. 31 is a diagram for explaining a process for obtaining a route from the traveling point N1 to N3 in the repetition of the search between two points.
FIG. 32 is a diagram for explaining a process for obtaining a route from the traveling point N2 to N3 in the repetition of the search between two points.
FIG. 33 is a diagram for explaining a process for obtaining a route from a traveling point N2 to N1 in the repetition of the search between two points.
FIG. 34 is a diagram for explaining a process for obtaining a route from a traveling point N3 → N1 in the repetition of the search between two points.
FIG. 35 is a diagram for explaining a process for obtaining a route from a traveling point N3 → N2 in the repetition of the search between two points.
FIG. 36 is a diagram for describing processing for obtaining a route between two points of the tour points N1 to N3 in the fourth tour route selection method;
FIG. 37 is a flowchart showing a processing procedure of a conventional cyclic route search method.
FIG. 38 is a flowchart showing a processing procedure of another conventional cyclic route search method.
[Explanation of symbols]
101 Locator
102 Data storage unit
103 Operation unit
104 Navigation device
105 Information presentation section
201 wireless device
202 Data storage unit
203 Operation unit
204 Computer
205 Information presentation section

Claims (3)

複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための方法であって、
出発地、目的地および複数の巡回地点を選択する第1のステップと、
前記出発地、前記目的地および各前記巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、
前記第2のステップで得られた各評価値を利用して、前記複数の巡回地点を巡回する順序を、深さ優先探索方法に基づいて決定する第3のステップと、
前記第3のステップで決定された巡回順序に従って、前記出発地、前記複数の巡回地点および前記目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含み、
前記第3のステップは、
現在調査対象となっている巡回順序の途中までの合計評価値(以下、第1の合計評価値と称す)を、前記第2のステップで得られた各評価値に基づいて計算する、第5のステップと、
現在調査対象となっている巡回順序が一通り構成されると、構成された巡回順序の合計評価値(以下、第2の合計評価値と称す)を、前記第2のステップで得られた各評価値に基づいて計算する、第6のステップと、
前記第6のステップで計算された第2の合計評価値の最小値を記録する第7のステップとを含み、
前記第5のステップで計算された第1の合計評価値が、前記第7のステップで記録された第2の合計評価値の最小値を超えた場合、前記巡回経路に関してはそこから派生するそれ以降の調査処理が打ち切られる、巡回経路選出方法。
A method for efficiently patroling multiple points and selecting a patrol route from the starting point to the destination,
A first step of selecting a starting point, a destination and a plurality of patrol points;
A second step of obtaining an evaluation value between two necessary points out of two points selectable from the starting point, the destination and each of the patrol points;
A third step of determining an order of patrol the plurality of patrol points based on the depth-first search method using each evaluation value obtained in the second step;
According to the tour order determined in the third step, the starting point, the plurality of tour points, and the destination are connected to form a single route from the starting point to the destination. Including the steps of
The third step includes
A total evaluation value (hereinafter referred to as a first total evaluation value) up to the middle of the cyclic order currently being investigated is calculated based on each evaluation value obtained in the second step; And the steps
When the cyclic order that is currently the subject of the survey is configured, a total evaluation value of the configured cyclic order (hereinafter referred to as a second total evaluation value) is obtained in each of the second steps. A sixth step of calculating based on the evaluation value;
A seventh step of recording a minimum value of the second total evaluation value calculated in the sixth step,
If the first total evaluation value calculated in the fifth step exceeds the minimum value of the second total evaluation value recorded in the seventh step, that derived from it for the cyclic route A patrol route selection method in which the subsequent investigation process is terminated.
複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための装置であって、
出発地、目的地および複数の巡回地点を選択する地点選択部と、
前記出発地、前記目的地および各前記巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する評価値取得部と、
前記評価値取得部で得られた各評価値を利用して、前記複数の巡回地点を巡回する順序を、深さ優先探索方法に基づいて決定する巡回順序決定部と、
前記巡回順序決定部で決定された巡回順序に従って、前記出発地、前記複数の巡回地点および前記目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する巡回経路構成部とを含み、
前記巡回順序決定部は、
現在調査対象となっている巡回順序の途中までの合計評価値(以下、第1の合計評価値と称す)を、前記第2のステップで得られた各評価値に基づいて計算する、第1の合計評価値計算部と、
現在調査対象となっている巡回順序が一通り構成されると、構成された巡回順序の合計評価値(以下、第2の合計評価値と称す)を、前記評価値取得部で得られた各評価値に基づいて計算する、第2の合計評価値計算部と、
前記第2の合計評価値計算部で計算された第2の合計評価値の最小値を記録する最小値記録部とを含み、
前記第1の合計評価値計算部は、現在計算中の第1の合計評価値が、前記記録部で記録された第2の合計評価値の最小値を超えた場合、前記巡回経路に関してはそこから派生するそれ以降の調査処理を打ち切る、巡回経路選出装置。
A device for efficiently patroling a plurality of points and selecting a patrol route from the starting point to the destination,
A point selection unit for selecting a starting point, a destination, and a plurality of patrol points;
An evaluation value acquisition unit that acquires an evaluation value between two necessary points among the two points selectable from the starting point, the destination, and each of the traveling points;
Using each evaluation value obtained by the evaluation value acquisition unit, a traveling order determination unit that determines the order of circulating the plurality of traveling points based on a depth-first search method;
In accordance with the tour order determined by the tour order determination unit, the tour route, the plurality of tour points, and the destination are connected to form a tour route from the departure location to the destination. Including components,
The patrol order determining unit
A total evaluation value (hereinafter referred to as a first total evaluation value) up to the middle of the cyclic order currently being investigated is calculated based on each evaluation value obtained in the second step. A total evaluation value calculator of
When the cyclic order that is currently the subject of the survey is configured, the total evaluation value of the configured cyclic order (hereinafter referred to as the second total evaluation value) is obtained by the evaluation value acquisition unit. A second total evaluation value calculation unit for calculating based on the evaluation value;
A minimum value recording unit that records a minimum value of the second total evaluation value calculated by the second total evaluation value calculation unit,
When the first total evaluation value being currently calculated exceeds the minimum value of the second total evaluation value recorded by the recording unit, the first total evaluation value calculation unit determines whether the first total evaluation value is being calculated. A patrol route selection device that terminates the subsequent investigation process derived from.
複数の地点を効率よく巡回し、出発地から目的地へ至る巡回経路を選出するための環境をコンピュータ装置上で実現するためのプログラムを記録した記録媒体であって、
出発地、目的地および複数の巡回地点を選択する第1のステップと、
前記出発地、前記目的地および各前記巡回地点から選択可能な2地点間のうち、必要な2地点間の評価値を取得する第2のステップと、
前記第2のステップで得られた各評価値を利用して、前記複数の巡回地点を巡回する順序を、深さ優先探索方法に基づいて決定する第3のステップと、
前記第3のステップで決定された巡回順序に従って、前記出発地、前記複数の巡回地点および前記目的地をつなぎ合わせて、当該出発地から当該目的地へ至る1本の巡回経路を構成する第4のステップとを含み、
前記第3のステップは、
現在調査対象となっている巡回順序の途中までの合計評価値(以下、第1の合計評価値と称す)を、前記第2のステップで得られた各評価値に基づいて計算する、第5のステップと、
現在調査対象となっている巡回順序が一通り構成されると、構成された巡回順序の合計評価値(以下、第2の合計評価値と称す)を、前記第2のステップで得られた各評価値に基づいて計算する、第6のステップと、
前記第6のステップで計算された第2の合計評価値の最小値を記録する第7のステップとを含み、
前記第5のステップで計算された第1の合計評価値が、前記第7のステップで記録された第2の合計評価値の最小値を超えた場合、前記巡回経路に関してはそこから派生するそれ以降の調査処理が打ち切られる、プログラムを記録した記録媒体。
A recording medium on which a program for realizing an environment for efficiently traveling around a plurality of points and selecting a patrol route from a departure place to a destination on a computer device is recorded,
A first step of selecting a starting point, a destination and a plurality of patrol points;
A second step of obtaining an evaluation value between two necessary points out of two points selectable from the starting point, the destination and each of the patrol points;
A third step of determining an order of patrol the plurality of patrol points based on the depth-first search method using each evaluation value obtained in the second step;
According to the tour order determined in the third step, the starting point, the plurality of tour points, and the destination are connected to form a single route from the starting point to the destination. Including the steps of
The third step includes
A total evaluation value (hereinafter referred to as a first total evaluation value) up to the middle of the cyclic order currently being investigated is calculated based on each evaluation value obtained in the second step; And the steps
When the cyclic order that is currently the subject of the survey is configured, a total evaluation value of the configured cyclic order (hereinafter referred to as a second total evaluation value) is obtained in each of the second steps. A sixth step of calculating based on the evaluation value;
A seventh step of recording a minimum value of the second total evaluation value calculated in the sixth step,
If the first total evaluation value calculated in the fifth step exceeds the minimum value of the second total evaluation value recorded in the seventh step, that derived from it for the cyclic route A recording medium on which the program is recorded, from which the subsequent investigation process is terminated.
JP2000041238A 1999-07-19 2000-02-18 Map data management method, route search device, and recording medium Expired - Fee Related JP4421052B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000041238A JP4421052B2 (en) 1999-07-19 2000-02-18 Map data management method, route search device, and recording medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP11-205186 1999-07-19
JP20518699 1999-07-19
JP2000041238A JP4421052B2 (en) 1999-07-19 2000-02-18 Map data management method, route search device, and recording medium

Publications (2)

Publication Number Publication Date
JP2001091284A JP2001091284A (en) 2001-04-06
JP4421052B2 true JP4421052B2 (en) 2010-02-24

Family

ID=26514901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000041238A Expired - Fee Related JP4421052B2 (en) 1999-07-19 2000-02-18 Map data management method, route search device, and recording medium

Country Status (1)

Country Link
JP (1) JP4421052B2 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4719998B2 (en) * 2001-04-09 2011-07-06 ソニー株式会社 Navigation route information distribution system, intra-area route data generation device and navigation device for navigation route information distribution system
JP4615789B2 (en) * 2001-09-25 2011-01-19 住友ゴム工業株式会社 Tire pressure drop detection method and apparatus, and air pressure drop tendency judgment program
US7657372B2 (en) 2002-03-29 2010-02-02 Panasonic Corporation Map matching method, map matching device, database for shape matching, and shape matching device
US7454715B2 (en) * 2003-02-04 2008-11-18 Microsoft Corporation Open grid navigational system
JP4672383B2 (en) * 2005-01-28 2011-04-20 三菱電機株式会社 3D map distribution database construction device and 3D map distribution system
JP2012184965A (en) * 2011-03-03 2012-09-27 Toshiba Tec Corp Information processing system, information processor, and program
JP6312003B2 (en) * 2016-04-15 2018-04-18 裕之 本地川 Picking work management system and program
JP6795801B2 (en) * 2017-09-22 2020-12-02 裕之 本地川 Picking work management system and program
CN109961162B (en) * 2017-12-22 2023-04-07 株式会社日立制作所 Path planning method and path planning device
CN111724090B (en) * 2019-03-21 2024-02-27 顺丰科技有限公司 Method, device, equipment and storage medium for processing receiving and dispatching task
KR102232372B1 (en) * 2020-11-17 2021-03-26 (주)해양에너지 Situation Control System Regulating Smart Navigation With General Circulation By Learning Path
KR102443592B1 (en) * 2020-12-29 2022-09-16 포티투닷 주식회사 Method for Generating Traveling Route of Vehicle, Device for Generating Traveling Route of Vehicle, and Medium Being Recorded with Program for Executing the Method
CN113034719B (en) * 2021-03-16 2023-02-24 中国工商银行股份有限公司 Method, device and system for determining sequence of inspection points of inspection robot

Also Published As

Publication number Publication date
JP2001091284A (en) 2001-04-06

Similar Documents

Publication Publication Date Title
JP4421052B2 (en) Map data management method, route search device, and recording medium
JP3223782B2 (en) Vehicle route calculation device
KR100316461B1 (en) Method and apparatus for searching a route
US6014607A (en) Method and apparatus for searching a route
US6016485A (en) System for pathfinding
KR960016255B1 (en) Route selection method and apparatus therefor
JP3908425B2 (en) Navigation device
US6038509A (en) System for recalculating a path
JP3675891B2 (en) Highway access ramp identification method for route calculation in vehicle navigation system
US20090125229A1 (en) Corridor mapping with alternative routes
JP2002156232A (en) Method and system for compact representation of route
JPH09184734A (en) Path selection method and system
JP2006209106A (en) Map information updating apparatus and method
JPH0875491A (en) Method and system for selecting route
KR100535748B1 (en) Vitrual driving system and method using moving picture
JP3789306B2 (en) Route search method
JP3085054B2 (en) Route calculation device
KR0159922B1 (en) Bucket-oriented route planning method and navigation system comprising planner for carrying out such a method
JP3710087B2 (en) Navigation device
JP3171574B2 (en) Route selection method
JP7064463B2 (en) Route-related information acquisition device and route-related information acquisition method
JP4038045B2 (en) Route search using hierarchical data
JP3984135B2 (en) Moving locus data search information generation apparatus and method, movement locus data search apparatus and method, movement locus data search information generation program and recording medium recording the program, movement locus data search program and program thereof Recorded recording medium
JP2902209B2 (en) Route search method
JP4677767B2 (en) Navigation device and information presentation method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090623

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090825

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091020

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091110

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091202

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121211

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121211

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131211

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees