JP2013190218A - 経路探索方法、経路探索装置、及びプログラム - Google Patents

経路探索方法、経路探索装置、及びプログラム Download PDF

Info

Publication number
JP2013190218A
JP2013190218A JP2012054604A JP2012054604A JP2013190218A JP 2013190218 A JP2013190218 A JP 2013190218A JP 2012054604 A JP2012054604 A JP 2012054604A JP 2012054604 A JP2012054604 A JP 2012054604A JP 2013190218 A JP2013190218 A JP 2013190218A
Authority
JP
Japan
Prior art keywords
node
search
searched
nodes
distance
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.)
Granted
Application number
JP2012054604A
Other languages
English (en)
Other versions
JP5906837B2 (ja
Inventor
Kyohei Tamai
恭平 玉井
Akio Shinagawa
明雄 品川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012054604A priority Critical patent/JP5906837B2/ja
Priority to CA2806739A priority patent/CA2806739C/en
Priority to US13/771,579 priority patent/US8898015B2/en
Priority to EP13155893.4A priority patent/EP2639750A1/en
Priority to TW102106952A priority patent/TWI500297B/zh
Priority to CN201310069021.4A priority patent/CN103309917B/zh
Publication of JP2013190218A publication Critical patent/JP2013190218A/ja
Application granted granted Critical
Publication of JP5906837B2 publication Critical patent/JP5906837B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Navigation (AREA)

Abstract

【課題】出発地から目的地までの実際の経路上の距離が出発地と目的地との距離と著しく異なる場合に、経路探索に要する処理時間の長期化を抑止する。
【解決手段】コンピュータは、複数のノードと、2つのノードを結び、コストが設定されたリンクの複数とを利用し、第1のノードから第2のノードに向かう経路探索を行う。このとき、探索済みのノードに隣接する、探索済みではないノードを探索対象ノードとして、第1の探索方法により1のノードを探索する。そして、探索されたノードと第2のノードとの距離を記録し、探索されたノードを探索済みとして記録する。次に、探索と記録とを2回以上実行することで得られる、探索済みの2以上のノードのそれぞれと第2のノードとの距離に基づいて、第1の探索方法を、探索対象ノードの増加が抑制される第2の探索方法に変更する。そして、第2の探索方法により探索されたノードに基づく経路情報を生成する。
【選択図】図7

Description

本発明は、経路探索方法、経路探索装置、及びプログラムに関する。
出発地ノードから目的地ノードまでの経路を探索する経路探索アルゴリズムとしては、ダイクストラ(Dijkstra)法及びA*アルゴリズムを含む様々なものが知られている。
ダイクストラ法では、ノード間をつなぐリンクにより表現された地図上で、あらかじめ各リンクに設定されたコストの情報を基に、コストの総和が最小となる経路(リンク列)が探索される。道路地図の場合、例えば、ノードとして出発地ノード、目的地ノード、交差点等が用いられ、リンクとして2つの交差点をつなぐ道路が用いられ、各リンクのコストとして、リンク長、走行時間等が用いられる。
ダイクストラ法では、まず、出発地ノードに隣接するノードを探索対象ノード群とし、その中から最小コストで到達できるノードを決定し、探索済みノードとする。次に、探索済みノードは探索対象ノード群から除外され、探索済みノードを経由して到達可能なノード群が、新たに探索対象ノード群に加えられる。このとき、探索済みノードに到達する前に経由したノードは、直前経由ノードとして記録される。そしてこの時点では、出発地ノードが直前経由ノードになる。探索済みノードが目的地ノードでない場合、引き続き探索対象ノード群内で、出発地ノードから最小コストで到達可能なノードを決定する。このような探索を目的地ノードが探索済みノードとして決定されるまで繰り返す。そして、目的地ノードが探索済みノードとして決定されると探索を終了し、目的地ノードから直前経由ノードを順に遡ることで、出発地ノードと目的地ノードをつなぐ最小コストの経路を求める。
図1は、ダイクストラ法を用いた経路探索処理においてノードの探索が進行する様子を示す説明の図である。図1中、白のドットは探索対象ノードを表し、黒のドットは探索済みノードを表す。図1(a)では、出発地ノードSに隣接する4つのノードが探索対象ノードとして登録され、図1(b)及び図1(c)では、探索済みノードに隣接する複数のノードが探索対象ノードとして追加されている。そして、図1(d)において次に登録される探索済みノードが目的地ノードGに一致すると、経路探索処理が終了する。
*アルゴリズムでは、探索対象ノードまでのコストを算出する際に、そのノードから目的地ノードまでの直線距離等のコストを付加することで、探索を高速化することができる。
ダイクストラ法では、出発地ノードと目的地ノードが遠く離れている場合、目的地ノードに到達するまでに探索するノードの数が大量になり、しばしば処理時間が膨大になることがある。このような問題に対して、各道路を道路種別に応じて複数のレベルに分類し、出発地点と目的地点との直線距離に基づいて1つのレベルを選択し、経路探索を行う技術が知られている。
この技術では、例えば、高速道路及び国道から成る道路網が最上位レベルに分類され、高速道路、国道、及び都道府県道から成る道路網がその下位のレベルに分類され、高速道路、国道、及び県道を含む市町村道路以上の道路網がさらに下位のレベルに分類され、すべての道路が最下位のレベルに分類される。そして、出発地点と目的地点との直線距離が短い場合は、詳細な道路網である最下位レベルを用いて、すべての道路を走行対象として経路探索を実施する。
一方、直線距離が長い場合は、まず、最下位レベルの道路網を利用して、出発地点からより上位のレベルの道路網上の仮の出発地点までの経路を探索し、同様にして、目的地点からより上位のレベルの道路網上の仮の目的地点までの経路を探索する。その上で、仮の出発地点と仮の目的地点をつなぐ経路を該上位のレベルの道路網上で探索する。このように、出発地点と目的地点との距離に応じたレベルの道路網を探索することで、探索対象ノードの数を削減し、探索に要する処理時間を短縮することができる。また、遠距離の走行において、細街路ではなく、国道のような広い道路を優先した経路を探索して、一般的な利用者の要求に適合した経路を求めることができる。
特開平6−52237号公報
E. W. Dijkstra, " HYPERLINK "http://www-m3.ma.tum.de/twiki/pub/MN0506/WebHome/dijkstra.pdf" A Note on Two Problems In Connexion with Graphs", Numerische Mathematik 1, pp. 269-271, 1959. P. E. Hart, N. J. Nilsson, B. Raphael, "A Formal Basis for the Heuristic Determination of Minimum Cost Paths", IEEE Transactions of Systems Science and Cybernetics, Vol. SSC-4, No. 2, pp. 100-107, 1968.
上述した従来の経路探索技術には、以下のような問題がある。
出発地点と目的地点の位置関係によっては、直線距離は近いものの、出発地点と目的地点との間に湾、湖、山等の障害物があるため直線的な経路が存在せず、障害物を迂回する経路を探索する必要がある場合がある。この場合、実際に走行することができる迂回経路の走行距離は、出発地点と目的地点との直線距離とはかけ離れた距離になることに、発明者らは気づいた。
しかしながら、上述の従来技術による道路を複数のレベルに分類して経路探索を行う方法では、出発地点と目的地点との直線距離に基づいて道路網が選択される。このため、実際には長距離の迂回経路を探索する必要があるにもかかわらず、短距離用の詳細な道路網を用いた探索が行われ、処理時間を長期化させる原因となる。
1つの側面において、本発明の課題は、出発地から目的地までの実際の経路上の距離が出発地と目的地との距離と著しく異なる場合に、経路探索に要する処理時間の長期化を抑止することである。
1つの側面において、コンピュータによって実行される経路探索方法は、複数のノードと、複数のノードのうちの2つのノードを結び、コストが設定されたリンクの複数とにより表現された情報を利用する。そして、上記複数のノードのうちの第1のノードから第2のノードに向かう経路探索を行う。
このとき、上記複数のノードのうちの探索済みとして記録されたノードに隣接するノードであって、まだ探索済みではないノードを探索対象ノードとし、複数の探索対象ノードの中から第1の探索方法により1のノードを探索する。そして、探索する処理により探索されたノードと第2のノードとの距離を記録するとともに、探索されたノードを探索済みとして記録する。
次に、探索する処理と記録する処理とを2回以上実行した結果として得られる、探索済みとして記録された2以上のノードのそれぞれと第2のノードとの距離に基づいて、第1の探索方法を、探索対象ノードの増加が抑制される第2の探索方法に変更する。そして、第2の探索方法により探索されたノードに基づく経路情報を生成する。
上述した側面における経路探索方法によれば、出発地から目的地までの実際の経路上の距離が出発地と目的地との距離と著しく異なる場合に、経路探索に要する処理時間の長期化を抑止することができる。
ダイクストラ法を用いた経路探索処理を示す図である。 経路探索システムの構成図である。 地図情報データベースのノード情報を示す図である。 地図情報データベースのリンク情報を示す図である。 交通情報データベースの情報を示す図である。 経路探索装置の機能的構成図である。 第1の経路探索処理のフローチャートである。 探索部の機能的構成図である。 格納部に格納されるデータを示す図である。 道路網グループを示す図である。 距離平均値の閾値を示す図である。 第2の経路探索処理のフローチャートである。 探索済みノード情報を示す図である。 迂回経路を探索する経路探索処理を示す図(その1)である。 迂回経路を探索する経路探索処理を示す図(その2)である。 迂回経路を探索する経路探索処理を示す図(その3)である。 探索回数と距離平均値の関係を示す図(その1)である。 探索回数と距離平均値の関係を示す図(その2)である。 第3の経路探索処理のフローチャートである。 距離最小値の閾値を示す図である。 第4の経路探索処理のフローチャートである。 第5の経路探索処理のフローチャートである。 情報処理装置の構成図である。
以下、図面を参照しながら、実施形態を詳細に説明する。
図2は、複数の経路探索装置を含む経路探索システムの構成例を示している。図2の経路探索システムは、インタフェース103、ロードバランサ104、経路探索装置105−1〜105−4、地図情報データベース106、及び交通情報データベース107を含む。
端末101は、ユーザのサーバ、パーソナルコンピュータ、携帯端末、車載用ナビゲーション装置等の情報処理装置であり、有線又は無線の通信ネットワーク102を介して、インタフェース103にアクセスする。端末101は、経路探索の対象とする範囲を設定するための2地点に関する情報を含む経路探索要求をインタフェース103へ送信する。ここで、2地点として、例えば、出発地点及び目的地点が考えられる。また、2地点に関する情報としては例えば、それぞれの地点の緯度経度の情報を利用することができる。
インタフェース103は、経路探索要求を受け付ける情報処理装置であり、受信した経路探索要求をロードバランサ104に転送する。必要であれば、インタフェース103において端末101を操作するユーザの認証処理等を行ってもよい。
ロードバランサ104は、複数の経路探索要求を分散させる処理を行う情報処理装置であり、インタフェース103から転送された経路探索要求を、所定の負荷分散アルゴリズムに基づいて経路探索装置105−1〜105−4のいずれかへ送信する。
地図情報データベース106は、複数の道路の道路情報を含む地図情報を格納する記憶装置である。各道路の道路情報は、その道路に含まれる複数のノードの位置情報と、ノード間のリンクの情報とを含む。ノードに関する情報としては、図3に示すように、ノードを一意に識別する情報、ノードの位置情報、リンクを介してノードに隣接する他ノードの識別情報が、対応付けられて格納されている。リンクに関する情報としては、図4に示すように、リンクを一意に識別する情報、該リンクが相当する道路の種別、リンクの長さの情報が、対応付けられて格納されている。リンクを一意に識別する情報は、リンクの両端点を示すノードの情報として記憶することが考えられる。地図情報データベース106に格納される情報は、本実施例のシステムが動作する前に予め格納されているものとする。また、システムの動作中において、隣接ノードの情報が変化した場合に、更新されても構わない。
交通情報データベース107は、各リンクにおける旅行時間情報を格納する記憶装置である。旅行時間は、リンク長が同じであっても、リンクが属する道路の種別、リンクの位置、リンク上を移動する日時等の条件に応じて変化させた状態でコストとして設定してもよい。図5の例では、各リンクを識別するための情報である、リンクの両端点のノードの情報と対応付けて、リンクに設定されたコストに関する値が、日時の情報と対応付けて記憶されている。なお、日時の情報は、どのような時間区切りを単位としたものであっても構わない。図5の例では、年月日と時刻とが含まれた情報として格納されている例を示しているが、日付だけでもよいし、曜日や時間帯などであってもよい。交通情報データベース107に格納される情報は、本実施例のシステムが動作する前に予め格納されているものとする。また、システムの動作中において、旅行時間に関する値が変化した場合に、更新されても構わない。
地図情報データベース106、交通情報データベース107に含まれる各リンクのリンク長、旅行時間情報は、コスト情報として経路探索で利用される。また、地図情報データベース106、交通情報データベース107に格納される情報は、まとめて一つのテーブルに格納されていてもよいし、互いに関連付けられた複数のテーブルに分散して格納されていても構わない。
経路探索装置105−1〜105−4のそれぞれは、経路探索処理を行う情報処理装置であり、受信した経路探索要求、地図情報データベース106の地図情報、及び交通情報データベース107の交通情報に基づいて出発地ノードから目的地ノードへの経路を求める。そして、その経路を示す経路情報を生成し、ロードバランサ104へ送信する。経路情報は、インタフェース103及び通信ネットワーク102を介して端末101へ送信される。
端末101は、受信した経路情報が示す経路を表示するための情報を他の情報処理装置へ送信したり、その経路を画面上に表示したりする。
図6は、図2の経路探索装置105−1〜105−4の機能的構成例を示している。図2の経路探索装置105−1〜105−4のそれぞれは同様の機能的構成を有しており、それぞれが、図6の経路探索装置105に対応する。以降、経路探索装置105−1〜105−4のいずれか1台を指して、経路探索装置105と表現する場合がある。図6の経路探索装置105は、探索部201、格納部202、変更部203、及び生成部204を含む。
図7は、図6の経路探索装置105の各処理部が協同することにより実行される経路探索処理の第1の例を示すフローチャートである。
まず、探索部201は、端末101から受信した経路探索要求に基づいて特定した第1のノードから第2のノードに向かう経路探索において、複数の探索対象ノードの中から第1の探索方法により1個のノードを探索する(ステップ301)。例えば、出発地に相当するノードを第1のノード、目的地に相当するノードを第2のノードとすることができる。なお、以降の説明において、第1のノードを指して出発地ノード、第2のノードを指して目的地ノードと記載する場合がある。本実施形態における経路探索の処理においては、2地点間の経路を探索する処理であれば、該2地点は、端末101のユーザが実際に出発する地点や実際に到着する地点でなくても構わないことは言うまでもない。
またここで、第1の探索方法でノードを探索する際には、最小コストのノードを探索することが考えられる。
そして、探索されたノードと目的地ノードとの距離を格納部202に記録する(ステップ302)。距離としては、直線距離を用いることが考えられる。
探索部201は、ステップ301の複数の探索対象ノードの中から1個のノードを探索する処理、及び、ステップ302の処理を、探索処理が所定の状態になるまで繰り返す。もし、探索処理が所定の状態になる前に、ステップ301において探索されたノードが目的地ノードと等しくなった場合には、ステップ304へ処理を移行する。
変更部203は、ステップ302において探索処理が所定の状態になると、複数の探索されたノードと目的地ノードとの距離に基づいて、第1の探索方法を、探索対象ノードの増加が抑制される第2の探索方法に変更する(ステップ303)。例えば、複数の探索されたノードと目的地ノードとの距離の平均値と、予め定められた閾値とを比較し、距離の平均値が閾値より大きい場合に第2の探索方法に変更することが考えられる。
探索方法が変更されると、探索部201は、変更された後の探索方法を用いて、ステップ301における複数の探索対象ノードの中から1個のノードを探索する処理、及び、ステップ302の処理を繰り返す。
そして、生成部204は、探索されたノードが目的地ノードと等しくなった場合に、探索されたノードに基づく経路情報を生成する(ステップ304)。生成された経路情報は、出発地ノードから目的地ノードへの経路を示すノード及びリンクの情報を含む。
このような経路探索システムによれば、出発地から目的地までの実際の経路上の距離が出発地と目的地との距離と著しく異なる場合に、経路探索に要する処理時間の長期化を抑止することができる。
図2の経路探索システムは、1つの端末101を含んでいるが、実施形態の経路探索システムに含まれる端末の数は2つ以上の場合もある。また、図2の経路探索システムは4台の経路探索装置105−1〜105−4を含んでいるが、実施形態の経路探索システムに含まれる経路探索装置の数は3台以下の場合もあり、5台以上の場合もある。実際には、システムへの負荷に合わせて経路探索装置の台数が決定される。経路探索装置105が1台の場合には、ロードバランサ104をシステムに含めなくてもよい。また、インタフェース103をシステムに含めずに、端末101からのデータを経路探索装置105が直接受信してもよい。
経路探索装置105−1〜105−4をそれぞれ個別の情報処理装置として実装する代わりに、1台の情報処理装置上で動作する複数の仮想マシンとして実装しても構わない。あるいは、経路探索装置105−1〜105−4を、複数台の異なる情報処理装置上に分散配置された複数の仮想マシンとして実装しても構わない。また、複数の経路探索要求を各々リアルタイムで処理する代わりに、バッチ処理で処理しても構わない。
図8は、図6の探索部201の機能的構成例を示している。図8の探索部201は、入力受付部401、道路網選択部402、閾値設定部403、閾値更新部404、探索処理部405、及び出力部406を含む。
図9は、図6の格納部202に格納されるデータの例を示している。図9の格納部202は、探索対象ノード情報501、探索済みノード情報502、及び探索パラメータ503を格納する。
探索対象ノード情報501は、地図情報データベース106に格納されている道路情報から読み込まれた、探索部201による探索の対象となる1つ以上のノードの情報を含む。探索済みノード情報502は、探索されたノードとそのノードに到達するまでに要した総コストと、そのノードに到達する前に経由した直前経由ノードの情報とを含む。また、探索パラメータ503は、距離平均値の閾値、その閾値の減少量を規定するパラメータ、探索回数を示す探索カウンタ、及び探索回数の閾値を含む。
距離平均値の閾値は、経路探索処理の途中で探索対象の道路網を変更するか否かを判定する際に用いられ、経路探索処理において動的に変更される。その閾値の初期値は、出発地ノードと目的地ノードとの直線距離よりも大きな値であればよい。
経路探索装置105では、詳細度の異なる複数の道路網に対応する複数のグループが設定された道路情報を用いて、経路探索処理が行われる。どの道路種別が、どのグループに対応付けられているかについての情報、すなわち道路網グループについての情報は、探索パラメータの一種として、探索パラメータ503に格納されている。図10は、道路網グループについて、グループと道路種別とを対応付けて格納するデータテーブルの例である。
例えば、グループ1は、高速道路、国道、都道府県道、及びその他の一般道を含むすべての道路から成る道路網に対応し、グループ2は、高速道路、国道、及び都道府県道から成る道路網に対応する。そして、グループ3は、高速道路及び国道から成る道路網に対応する。例えばグループ1を最下位としグループ3を最上位とすると、探索済みノードと目的地ノードとの距離の平均値が閾値より大きい場合、より上位の道路網に基づいて経路探索を行う探索方法に変更することで、探索対象ノードの増加が抑制される。
図11は、探索パラメータ503のうち、距離平均値の閾値として設定される初期値の例を示している。図11のような閾値設定用のテーブルも、格納部202の中に記憶されている。この例では、出発地ノードと目的地ノードとの距離Dが属する距離範囲に応じて、上述のグループ1〜3の3つの道路網が定義され、グループ1及び2について閾値T1及びT2がそれぞれ設定されている。
グループ2や3の道路網はグループ1の道路網よりも、ノード数、リンク数共に少ないので、「粗い」と表現できる。またさらに、グループ3の道路網はグループ2の道路網よりも、ノード数、リンク数共に少ないので、「粗い」と表現できる。グループ3については、それより粗い道路網のグループが存在しないため、閾値は設定されない。それぞれの距離範囲に対応する道路の道路種別は、以下の通りである。
(1)近距離
・距離範囲:DがD1以下。
・グループ1:すべての道路。
・距離平均値の閾値:T1
(2)中距離
・距離範囲:DがD1より大きくD2以下。
・グループ2:高速道路、国道、及び都道府県道。
・距離平均値の閾値:T2
(3)遠距離
・距離範囲:DがD2より大きい。
・グループ3:高速道路及び国道。
距離範囲を区切る値のうちD1としては、例えば、3000m〜10kmの範囲の値が用いられ、D2としては、例えば、30km〜100kmの範囲の値が用いられる。図11の例では、距離範囲が3つに分割されているが、距離範囲を2つに分割してもよく、4つ以上に分割してもよい。閾値T1及びT2は、例えば、それぞれD1及びD2以上の値に設定される。
なお、閾値の初期値は、必ずしも道路網のグループ毎に設定する必要はなく、出発地ノードと目的地ノードとの距離に所定の係数を乗算して決定してもよい。
探索済みノードと目的地ノードとの距離平均値が閾値以下の場合、その閾値から、探索パラメータ503のうち閾値の減少量を規定するパラメータとして格納されている所定の減少量を差し引くことで、閾値が更新される。閾値の減少量としては、固定された一定値でもよいし、閾値の初期値又は現在の閾値に一定の割合を乗算した結果を用いてもよい。後者の場合、その乗算結果又は一定の割合が、閾値の減少量を規定するパラメータとして設定される。一定の割合とは、例えば、10%、20%等である。
図12は、図6の経路探索装置105による経路探索処理の第2の例を示すフローチャートである。まず、探索部201の入力受付部401は、端末101から経路探索要求を受信する。そして、端末101から受信した経路探索要求に基づき、地図情報データベース106に記憶されている道路情報のノードに追加して、出発地の緯度経度に対応する出発地ノード、目的地の緯度経度に対応する目的地ノードを生成する。(ステップ701)。
次に、道路網選択部402は、出発地ノード及び目的地ノードの情報に基づいて、出発地ノードと目的地ノードとの距離を算出し(ステップ702)、得られた距離に基づいて探索対象とする道路網を決定する(ステップ703)。なお、図7の説明箇所で記載したとおり、距離としては、直線距離を用いることが考えられる。
閾値設定部403は、ステップ702において得られた距離に基づいて、格納部202から図11に例示した閾値設定用のテーブルを参照する。そして、距離平均値の閾値の初期値を決定し、格納部202の探索パラメータ503に格納する(ステップ704)。ステップ703と704とは、どちらが先に実行されても構わない。
次に、探索処理部405は、探索パラメータ503に含まれる探索カウンタを0に設定する(ステップ705)。そして、図3及び図4に例示された地図情報データベース106の道路情報に格納されている複数のノードの中から、出発地ノードに隣接する1つ以上のノードを、探索対象ノード情報501に登録する(ステップ706)。次に、登録された探索対象ノードのうち、図5に例示された交通情報データベース107の情報を参照し、出発地ノードから最小コストで到達できるノードを探索し(ステップ707)、探索カウンタを1だけインクリメントし(ステップ708)、探索されたノードを探索済みノード情報502に登録する(ステップ709)。なお、ステップ707では、ダイクストラ法又はA*アルゴリズムを用いてノードが探索される。出発地ノードからのコストは、探索済みノードと対応付けて記録されている総コストに、探索済みノードから隣接ノードまでのリンクと対応付けられたコストを加算することで求めることができる。
次に、探索処理部405は、ステップ707で探索されたノード、すなわちステップ709において探索済みノード情報502に登録されたノードを探索対象ノード情報501から除外するとともに、該探索されたノードに隣接する1つ以上のノードを、探索対象ノード情報501に加える(ステップ710)。そして、探索されたノードの直前に経由したノードを直前経由ノードとして、該探索されたノードと対応付けて探索済みノード情報502に登録する。また、出発地ノードからステップ707で探索されたノードに到るまでに掛かった総コストを、該探索されたノードと対応付けて探索済みノード情報502に登録する。(ステップ711)。そして、探索されたノードが目的地ノードであるか否かをチェックする(ステップ712)。
探索されたノードが目的地ノードである場合(ステップ712,Yes)、出力部406は、探索済みノード情報502を探索結果として生成部204に出力する(ステップ713)。そして、生成部204は、探索済みノード情報502に含まれる直前経由ノードを目的地ノードから出発地ノードに向けて順に遡ることで、出発地ノードから目的地ノードへの経路を表す経路情報を生成し、その経路情報を出力する。なお、生成部204は、経路情報を出力する際に、経路情報に含まれる各ノードの位置を、緯度経度の情報に変換して出力する。
一方、ステップ707で探索されたノードが目的地ノードでない場合(ステップ712,No)、探索処理部405は、該探索されたノードから目的地ノードまでの距離を算出し、格納部202に格納する(ステップ714)。格納部202内の探索済みノード情報502に格納されるデータ例を図13に示す。ステップ709において、新たなレコードが生成され、ステップ707で探索されたノード、即ち探索済みノードの識別子が、該レコードの探索済みノードの欄に登録される。そして、ステップ711において、直前に経由したノードの識別子が、該レコードの直前に経由したノードの欄に、総コストの情報が総コストの欄に、それぞれ登録される。そして、ステップ714において、算出された距離が、該レコードの距離の欄に登録される。
次に、変更部203は、探索カウンタと探索回数の閾値とを比較する(ステップ715)。探索カウンタが閾値に達していない場合(ステップ715,No)、探索処理部405は、ステップ707以降の処理を繰り返す。そして、探索カウンタが閾値に達すると(ステップ715,Yes)、変更部203は、直近の探索済みノードの各々から目的地ノードまでの距離の平均値を算出し、算出された平均値を、現在、探索対象としている道路網のグループに対応して探索パラメータ503に記憶されている、距離平均値の閾値と比較する(ステップ716)。
ここで直近の探索済みノードとは、例えば、最新の探索済みノードを含む、直近の所定回数分の探索により探索された複数のノードを表す。直近の所定回数としては、探索回数の閾値以下の回数が用いられる。例えば、探索回数の閾値が500回である場合に、直近の所定回数として100回、即ち、401回目の探索から500回目の探索で探索されたノードについての、目的地ノードまでの距離の平均値を用いることができる。
算出された平均値が閾値以下の場合(ステップ716,No)、探索部201の閾値更新部404は、その閾値をパラメータにより規定された減少量だけ減少させる(ステップ719)。そして、探索処理部405は、探索カウンタを0に設定し(ステップ720)、ステップ707以降の処理を繰り返す。これにより、ステップ710で更新された探索対象ノード情報501を用いて経路探索が続行される。
一方、算出された平均値が閾値より大きい場合(ステップ716,Yes)、変更部203は、探索対象の道路網を1段階粗いグループに変更する(ステップ717)。そして、閾値更新部404は、距離平均値の閾値を探索対象の道路網に対応する初期値に変更し(ステップ718)、探索処理部405は、探索済みノード情報502に格納した情報を初期化して、ステップ705以降の処理を繰り返す。これにより、変更後の道路網を対象として、再び出発地ノードから経路探索が開始される。
例えば、ステップ703においてグループ1の道路網が選択された場合、ステップ716において閾値T1が用いられる。そして、ステップ717において探索対象の道路網がグループ2に変更されると、ステップ718において閾値がT2に変更される。
その後、ステップ716において算出された平均値が閾値T2を超えると、ステップ717において探索対象の道路網がグループ3に変更される。ただし、グループ3には閾値が設定されていないため、ステップ718において閾値は変更されない。グループ3の道路網を対象とする経路探索では、問題にならない処理時間で目的地ノードに到達できるように、予めグループ3に対応させるべき道路網が設定されているものとする。
図14〜図16は、出発地ノードから目的地ノードまでの実際の経路上の距離が出発地ノードと目的地ノードとの距離と著しく異なる場合の例として、湾を挟んで目的地ノードが出発地ノードの対岸に位置する場合の経路探索処理を示している。図17及び図18は、この経路探索処理における探索回数と距離平均値の関係を、縦軸を距離平均値の値、横軸を探索回数としたグラフ状で示している。この場合、図14の出発地ノードSと目的地ノードGをつなぐ直線的な経路が存在しないため、湾を迂回する経路が探索される。
図17及び図18において、実線1501及び1502、1601〜1606は、距離平均値の閾値を表し、破線は、距離平均値の変化を表している。また、探索回数N1は探索回数の閾値に一致し、探索回数N1〜N6の間隔も探索回数の閾値に一致する。
例えば、最初の探索対象としてグループ1の道路網が選択された場合、図15に示すように、出発地ノードSからすべての道路を対象としてノードが探索されることになる。そして、ステップ707からステップ715の処理が繰り返され、図17に示すように、ステップ715において探索カウンタが閾値N1に達すると、ステップ716において距離平均値が閾値1501(T1)と比較される。このとき、距離平均値が閾値1501より小さければ、ステップ719において閾値1501がT1より小さい閾値1502に変更される。
そして、探索回数がN2に達すると、探索カウンタの値が再び閾値N1を示し、距離平均値が変更後の閾値1502と比較される。今度は距離平均値が閾値1502より大きいとすると、ステップ717において探索対象の道路網がグループ2に変更される。
次に、図16に示すように、グループ2の高速道路、国道、及び都道府県道を対象としてノードが探索される。そして、図18に示すように、ステップ715において探索カウンタが閾値N1に達すると、ステップ716において距離平均値が閾値1601(すなわちT2)と比較される。このとき、距離平均値が閾値1601より小さければ、ステップ719において閾値1601がT2より小さい閾値1602に変更される。
そして、探索の一番最初から数えて探索回数がN2に達すると、即ち、閾値1602に変更した後に行った探索回数がN1に達すると、探索カウンタが再び閾値N1を示し、距離平均値が変更後の閾値1602と比較される。このとき、距離平均値が閾値1602より小さければ、ステップ719において閾値1602がより小さい閾値1603に変更される。
同様にして、探索回数がN3〜N5に達した時点で、距離平均値の閾値がより小さい閾値1604〜1606にそれぞれ変更され、探索済みノードが目的地ノードGに一致すると、経路探索処理が終了する。
なおここで、探索対象とする道路グループを切り替えた後も含め、グループ1以外の道路に相当するノードを探索対象とする場合には、上記した従来技術の探索の仕方を利用することができる。すなわち、出発地ノードから目的地ノードにむけて、探索対象とするグループの道路に相当するノードに行き当たるまでは、探索対象とするグループよりも詳細の道路に相当するノードを対象として探索処理を実行する。探索処理を繰り返した結果、探索対象とするグループの道路のノードに行き当たると、今度は、目的地ノードから出発地ノードにむけて、探索対象とするグループよりも詳細の道路のノードを対象として探索処理を実行する。
目的地ノードからの探索処理を繰り返した結果、探索対象とするグループの道路のノードに行き当たった場合、それ以降は、出発地ノードからの探索で見つけた、探索対象とするグループの道路上のノードと、目的地ノードからの探索で見つけた、探索対象とするグループの道路上のノードとを結ぶ経路を、探索対象とするグループの道路に相当するノードに限定して探索する。そして、経路が探索されると、経路探索処理が終了する。
以上説明したように、経路探索装置105は、ノードの探索が複数回繰り返されたタイミングで、探索されたノードが存在する方向が、出発地ノードから見て目的地ノードへ近づく方向へ進んでいない状態かをチェックする。もし、出発地ノードから目的地ノードまでの実際の経路上の距離が出発地ノードと目的地ノードとの距離と著しく異ならない場合であれば、探索されたノードから目的地ノードまでの距離は、出発地ノードから目的地ノードまでの距離よりも短くなっているはずである。すなわち、出発地ノードから目的地ノードの方向へ向けて探索が行われているはずである。
そして、探索されたノードから目的地ノードまでの距離が、出発地ノードから目的地ノードまでの距離よりも短くなっていないということは、目的地ノードの方向へ向けた探索が行えていない状況を示していると考えることができる。これは例えば、出発地ノードと目的地ノードの間に湾、湖、山等の障害物が存在し、障害物が存在する領域にはリンクやノードが存在しない場合が相当する。経路探索装置105は、探索処理がこのような状態になっていることをステップ716で検出すると、探索対象とするノードの数がより少なくなる探索の仕方に変更する。
経路探索装置105は、距離平均値が閾値を超えた時点でより粗い道路網を用いた探索方法に変更する。探索対象を粗い道路網に変更するということは、探索対象とするノードやリンクの数が少なくなることに相当する。そのため、出発地ノードと目的地ノードの間にある湾、湖、山等の障害物を迂回する経路を探索する場合であっても、探索対象ノードの増加を抑制することができる。したがって、処理時間の長期化を抑止することができる。また、遠距離走行において、細街路ではなく、国道のような広い道路を優先して走行する経路を探索することができる。
さらに、経路探索装置105は、距離平均値が閾値以下の場合により小さい閾値に変更することで、探索回数の増加とともに距離平均値が上昇する傾向を迅速に検知して、早い段階で探索対象の道路網を変更することが可能になる。
図12のステップ717では、探索対象の道路網を1段階粗いグループに変更しているが、算出された距離平均値に対応するグループに変更してもよい。例えば、距離平均値がD1より大きくD2以下の場合、グループ2が探索対象の道路網として選択され、距離平均値がD2より大きい場合、グループ3が探索対象の道路網として選択される。これにより、直近の距離平均値に基づいて最適な道路網を選択することができ、道路網を1段階ずつ切り替える場合より処理時間を短縮することができる。
図19は、経路探索装置105により実行される経路探索処理の第3の例を示すフローチャートである。図19のステップ1701、1703〜1714、及び1716〜1722の処理は、図12のステップ701〜720の処理と同様である。この処理では、図9の探索パラメータ503は、処理時間の閾値を含む。
端末101から経路探索要求を受信すると、探索部201の探索処理部405は、処理時間の計測を開始する(ステップ1702)。そして、ステップ1713において探索されたノードが目的地ノードでない場合(ステップ1713,No)、変更部203は、その時点までの処理時間を処理時間の閾値と比較する(ステップ1715)。この比較は必ずしも探索済みノードが決まるたびに実施せず、一定数の探索済みノードが決定するたびに実施してもよい。
処理時間が閾値以下の場合(ステップ1715,No)、変更部203は、ステップ1716以降の処理を行う。処理時間が閾値より大きい場合(ステップ1715,Yes)、直ちに探索対象の道路網を変更する(ステップ1719)。
このように、経路探索装置105は図19のフローチャートに示す処理を実行することで、処理開始から一定時間が経過した時点で、強制的に探索対象の道路網を変更する。したがって、経路探索装置105は、距離平均値が閾値を超えていなくても、より高速な探索方法に切り替えることができる。例えば、細街路を対象とする経路探索が長期化している場合に、強制的に、より粗い道路網を対象とする探索方法に切り替えることが可能になる。
ところで、直近の探索済みノードが、出発地ノードから目的地ノードの方向へ接近しているにもかかわらず、探索対象の道路網を変更して出発地ノードから再度探索を行うのは効率が悪い。そこで、直近の探索済みノードの各々から目的地ノードまでの距離の最小値を求め、その最小値が所定値以下の場合には、距離平均値が閾値より大きくても、探索対象の道路網を変更しない方法が考えられる。
図20は、距離最小値の閾値の例を示している。距離最小値の閾値は、距離平均値の閾値と同様に、格納部202の中に探索パラメータ503の一種として記憶されることができる。この例では、出発地ノードと目的地ノードとの距離Dが属する距離範囲に応じて、グループ1〜3の3つの道路網が定義され、グループ1〜3について閾値M1〜M3がそれぞれ設定されている。例えば、閾値M1は、距離平均値の閾値T1より小さな値に設定され、閾値M2は、距離平均値の閾値T2より小さな値に設定される。
図21は、このような経路探索処理の第4の例を示すフローチャートである。図21のステップ1901〜1916及び1918〜1921の処理は、図12のステップ701〜720の処理と同様である。この処理では、図9の探索パラメータ503は、距離最小値の閾値を含む。
ステップ1916において距離平均値が閾値より大きい場合(ステップ1916,Yes)、変更部203は、直近の探索済みノードの各々から目的地ノードまでの距離の最小値を求める。そして、その最小値を距離最小値の閾値と比較する(ステップ1917)。最小値が閾値以下の場合(ステップ1917,No)、変更部203は探索対象の道路網を変更せず、探索部201はステップ1920以降の処理を行う。一方、最小値が閾値より大きい場合(ステップ1917,Yes)、変更部203は、探索対象の道路網を変更する(ステップ1918)。
このように、距離平均値が閾値より大きくても距離最小値が閾値以下の場合は、探索対象の道路網を変更しないことで、出発地ノードから再度探索する処理を回避して、処理時間の長期化を抑止することができる。
図22は、経路探索処理の第5の例を示すフローチャートである。経路探索装置105は、上述のような方法により探索対象とするノードを切り替える以外の方法として、各道路リンクに対して付与するコストの値を変更することで、結果的に探索対象とするノードがより少なくなるようにさせることもできる。図22のステップ2001〜2002、2004〜2016、及び2018〜2020の処理は、図12のステップ701〜702、704〜716、及び718〜720の処理と同様である。この処理では、図9の探索パラメータ503は、各道路のリンクのコストに乗算される重みを含む。また、常にすべての道路が探索対象となるため、図8の道路網選択部402は不要である。
探索部201の探索処理部405は、経路探索要求に含まれる出発地ノード及び目的地ノードの情報に基づいて、出発地ノードと目的地ノードとの距離を算出する(ステップ2002)。そして、得られた距離に基づいて、各道路のリンクのコストに乗算される重みを決定する(ステップ2003)。
例えば、距離が近距離に属する場合は、すべての道路に同じ重みが設定され、中距離に属する場合は、高速道路、国道、及び都道府県道以外の一般道に対して、高速道路、国道、及び都道府県道より大きな重みが設定される。また、遠距離に属する場合は、都道府県道及び一般道に対して、高速道路及び国道より大きな重みが設定される。より大きな重みが設定された道路リンクは、相対的にコストが増加するため、最小コストのノードを探索する際に移動経路として選択される可能性が低下する。
ステップ2016において距離平均値が閾値より大きい場合(ステップ2016,Yes)、変更部203は、各道路の重みを変更する(ステップ2017)。例えば、出発地ノードと目的地ノードとの距離が近距離に属する場合は、高速道路、国道、及び都道府県道以外の一般道の重みが、高速道路、国道、及び都道府県道より大きな値に変更される。また、距離が中距離に属する場合は、都道府県道及び一般道の重みがより大きな値に変更される。
このように、狭い道路の重みを増加させた探索方法に変更することで、より広い道路を走行する経路が優先的に選択されるようになり、探索対象ノードの増加が抑制される。したがって、処理時間の長期化を抑止することができる。
図12、図19、図21、及び図22に示した各フローチャートは一例に過ぎず、経路探索システムの構成や条件に応じて一部の処理を省略又は変更してもよい。例えば、図19のステップ1715における処理時間と閾値の比較を、ステップ1717の後で行ってもよい。図21及び図22の経路探索処理においても、図19の経路探索処理と同様に、処理時間が閾値を超えた場合に強制的に探索方法を変更することが可能である。
また、図12のステップ717において、探索対象の道路網を変更する代わりに、経路探索アルゴリズムを変更しても構わない。例えば、ダイクストラ法からA*アルゴリズムへ変更することで、探索対象ノードの増加を抑制することができる。経路探索アルゴリズムとして、ダイクストラ法又はA*アルゴリズム以外のものを用いることも可能である。例えば、分岐限定法、山登り法、最良優先探索等のアルゴリズムを用いてもよい。そして、探索対象の道路網を変更する必要があると判断された場合に、それまで実行していた探索方法よりも、探索対象となるノード数が少なくなる探索方法に変更すればよい。
また、道路種別に基づいて道路を分類する代わりに、道路の長さ、幅、上限走行速度等の属性に基づいて道路を分類しても構わない。出発地ノードと目的地ノードとの距離に応じて設定される道路網のグループの数は、2つでもよく、4つ以上でもよい。
図2の端末101、インタフェース103、ロードバランサ104、経路探索装置105−1〜105−4、地図情報データベース106、及び交通情報データベース107は、例えば、図23に示すような情報処理装置(コンピュータ)を用いて実現可能である。
図23の情報処理装置は、Central Processing Unit (CPU)2101、メモリ2102、入力装置2103、出力装置2104、外部記憶装置2105、媒体駆動装置2106、及びネットワーク接続装置2107を備える。これらはバス2108により互いに接続されている。
メモリ2102は、例えば、Read Only Memory(ROM)、Random Access Memory(RAM)、フラッシュメモリ等の半導体メモリであり、処理に用いられるプログラム及びデータを格納する。例えば、CPU2101は、メモリ2102を利用してプログラムを実行することにより、端末101、インタフェース103、ロードバランサ104、又は経路探索装置105−1〜105−4の処理を行う。経路探索装置105−1〜105−4の処理を行う場合は、CPU2101は、プログラムを実行することにより、仮想的に各処理部(探索部201、変更部203、生成部204、及び探索部201内の各部401〜406)として動作する。
情報処理装置が経路探索装置105−1〜105−4として使用される場合は、メモリ2102は、図6の格納部202としても使用でき、地図情報及び交通情報を格納することもできる。
入力装置2103は、例えば、キーボード、ポインティングデバイス等であり、ユーザ又はオペレータからの指示や情報の入力に用いられる。出力装置2104は、例えば、表示装置、プリンタ、スピーカ等であり、ユーザ又はオペレータへの問い合わせや処理結果の出力に用いられる。端末101の処理結果には、経路情報が示す経路を表示する画面も含まれる。
外部記憶装置2105は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。この外部記憶装置2105には、ハードディスクドライブも含まれる。情報処理装置は、外部記憶装置2105にプログラム及びデータを格納しておき、それらをメモリ2102にロードして使用することができる。
情報処理装置が地図情報データベース106又は交通情報データベース107として使用される場合は、外部記憶装置2105は、地図情報又は交通情報を格納する。
媒体駆動装置2106は、可搬型記録媒体2109を駆動し、その記録内容にアクセスする。可搬型記録媒体2109は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。この可搬型記録媒体2109には、Compact Disk Read Only Memory (CD−ROM)、Digital Versatile Disk(DVD)、Universal Serial Bus(USB)メモリ等も含まれる。ユーザ又はオペレータは、この可搬型記録媒体2109にプログラム及びデータを格納しておき、それらをメモリ2102にロードして使用することができる。
このように、各種処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体には、メモリ2102、外部記憶装置2105、及び可搬型記録媒体2109のような、物理的な(非一時的な)記録媒体が含まれる。
ネットワーク接続装置2107は、Local Area Network(LAN)、インターネット等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置2107を介して受け取り、それらをメモリ2102にロードして使用することもできる。
なお、情報処理装置が図23のすべての構成要素を含む必要はなく、用途や条件に応じて一部の構成要素を省略することも可能である。例えば、情報処理装置がインタフェース103、ロードバランサ104、経路探索装置105−1〜105−4、地図情報データベース106、又は交通情報データベース107として使用される場合は、入力装置2103及び出力装置2104を省略してもよい。
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
101 端末
102 通信ネットワーク
103 インタフェース
104 ロードバランサ
105−1〜105−4 経路探索装置
106 地図情報データベース
107 交通情報データベース
201 探索部
202 格納部
203 変更部
204 生成部
401 入力受付部
402 道路網選択部
403 閾値設定部
404 閾値更新部
405 探索処理部
406 出力部
501 探索対象ノード情報
502 探索済みノード情報
503 探索パラメータ
1501、1502、1601〜1606 閾値
2101 CPU
2102 メモリ
2103 入力装置
2104 出力装置
2105 外部記憶装置
2106 媒体駆動装置
2107 ネットワーク接続装置
2108 バス
2109 可搬型記録媒体

Claims (11)

  1. コンピュータによって実行される経路探索方法であって、
    複数のノードと、該複数のノードのうちの2つのノードを結び、コストが設定されたリンクの複数とにより表現された情報を利用し、該複数のノードのうちの第1のノードから第2のノードに向かう経路探索において、該複数のノードのうちの探索済みとして記録されたノードに隣接するノードであって、まだ探索済みではないノードを探索対象ノードとし、複数の該探索対象ノードの中から第1の探索方法により1のノードを探索し、
    前記探索する処理により探索されたノードと前記第2のノードとの距離を記録するとともに、該探索されたノードを探索済みとして記録し、
    前記探索する処理と前記記録する処理とを2回以上実行した結果として得られる、探索済みとして記録された2以上のノードのそれぞれと前記第2のノードとの距離に基づいて、前記第1の探索方法を、探索対象ノードの増加が抑制される第2の探索方法に変更し、
    前記第2の探索方法により探索されたノードに基づく経路情報を生成する
    ことを特徴とする経路探索方法。
  2. 前記変更する処理は、探索済みとして記録された2以上のノードのそれぞれと前記第2のノードとの距離の平均と閾値とを比較し、該平均が閾値より大きい場合に、前記第1の探索方法を、探索対象ノードの増加が抑制される第2の探索方法に変更することを特徴とする請求項1記載の経路探索方法。
  3. 前記2以上の探索済みとして記録されたノードと前記第2のノードとの距離の平均値が前記閾値より小さい場合、該閾値をより小さい値に変更して、複数の探索対象ノードの中から前記第1の探索方法により1のノードを探索し、探索されたノードと前記第2のノードとの距離を記録するとともに、該探索されたノードを探索済みとして記録し、
    前記閾値を変更した後に、前記探索する処理と前記記録する処理とを2回以上実行した結果として得られる、探索済みとして記録された2以上のノードのそれぞれと前記第2のノードとの距離の平均値が変更後の閾値より大きい場合、前記第1の探索方法を前記第2の探索方法に変更することを特徴とする請求項2記載の経路探索方法。
  4. 前記第1の探索方法は、距離に基づいて道路の種類を複数に分類したグループのうち、前記第1のノードと前記第2のノードとの距離に対応する第1グループの道路に対応する複数のノードと複数のリンクとに基づいて経路探索を行い、前記第2の探索方法は、前記第1のノードと前記第2のノードとの距離より長い距離に対応する第2グループの道路に対応する複数のノードと複数のリンクとに基づいて経路探索を行うことを特徴とする請求項2又は3記載の経路探索方法。
  5. 前記第2グループの道路として、前記第1の探索方法により探索された前記探索済みとして記録された2以上のノードのそれぞれと前記第2のノードとの距離の平均値により示される距離と対応するグループを選択することを特徴とする請求項4記載の経路探索方法。
  6. 前記第1のノードから前記第2のノードに向かう経路探索の開始時刻から経過した時間が所定時間を超えた場合には、前記複数の探索済みとして記録されたノードと前記第2のノードとの距離にかかわらずに、前記第1の探索方法を前記第2の探索方法に変更することを特徴とする請求項1乃至5のいずれか1項に記載の経路探索方法。
  7. 前記複数の探索済みとして記録されたノードと前記第2のノードとの距離の平均値が前記閾値より大きく、該複数の探索済みとして記録されたノードと前記第2のノードとの距離の最小値が所定値より大きい場合に、前記第1の探索方法を前記第2の探索方法に変更することを特徴とする請求項2乃至6のいずれか1項に記載の経路探索方法。
  8. 前記第1の探索方法は、前記複数の探索対象ノードの第1の重み付けコストに基づいて経路探索を行い、前記第2の探索方法は、前記第1の重み付けコストとは異なる第2の重み付けコストに基づいて経路探索を行うことを特徴とする請求項1又は3記載の経路探索方法。
  9. 前記第1の探索方法は、ダイクストラ法に基づいて経路探索を行い、前記第2の探索方法は、A*アルゴリズムに基づいて経路探索を行うことを特徴とする請求項1又は3記載の経路探索方法。
  10. 複数のノードと、該複数のノードのうちの2つのノードを結び、コストが設定されたリンクの複数とにより表現された情報を利用し、該複数のノードのうちの第1のノードから第2のノードに向かう経路探索において、該複数のノードのうちの探索済みとして記録されたノードに隣接するノードであって、まだ探索済みではないノードを探索対象ノードとし、複数の該探索対象ノードの中から第1の探索方法により1のノードを探索する探索手段と、
    前記探索する処理により探索されたノードと前記第2のノードとの距離を格納するとともに、該探索されたノードを探索済みとして格納する格納手段と、
    前記探索する処理と前記記録する処理とを2回以上実行した結果として得られる、探索済みとして記録された2以上のノードのそれぞれと前記第2のノードとの距離に基づいて、前記第1の探索方法を、探索対象ノードの増加が抑制される第2の探索方法に変更する変更手段と、
    前記第2の探索方法により探索されたノードに基づく経路情報を生成する生成手段と
    を備えることを特徴とする経路探索装置。
  11. 複数のノードと、該複数のノードのうちの2つのノードを結び、コストが設定されたリンクの複数とにより表現された情報を利用し、該複数のノードのうちの第1のノードから第2のノードに向かう経路探索において、該複数のノードのうちの探索済みとして記録されたノードに隣接するノードであって、まだ探索済みではないノードを探索対象ノードとし、複数の該探索対象ノードの中から第1の探索方法により1のノードを探索し、
    前記探索する処理により探索されたノードと前記第2のノードとの距離を記録するとともに、該探索されたノードを探索済みとして記録し、
    前記探索する処理と前記記録する処理とを2回以上実行した結果として得られる、探索済みとして記録された2以上のノードのそれぞれと前記第2のノードとの距離に基づいて、前記第1の探索方法を、探索対象ノードの増加が抑制される第2の探索方法に変更し、
    前記第2の探索方法により探索されたノードに基づく経路情報を生成する
    処理をコンピュータに実行させるプログラム。
JP2012054604A 2012-03-12 2012-03-12 経路探索方法、経路探索装置、及びプログラム Expired - Fee Related JP5906837B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2012054604A JP5906837B2 (ja) 2012-03-12 2012-03-12 経路探索方法、経路探索装置、及びプログラム
CA2806739A CA2806739C (en) 2012-03-12 2013-02-19 Path searching method and path search device
US13/771,579 US8898015B2 (en) 2012-03-12 2013-02-20 Path searching method and path search device
EP13155893.4A EP2639750A1 (en) 2012-03-12 2013-02-20 Path searching method and path search device
TW102106952A TWI500297B (zh) 2012-03-12 2013-02-27 路徑搜尋方法及路徑搜尋裝置
CN201310069021.4A CN103309917B (zh) 2012-03-12 2013-03-05 路径搜索方法和路径搜索装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012054604A JP5906837B2 (ja) 2012-03-12 2012-03-12 経路探索方法、経路探索装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2013190218A true JP2013190218A (ja) 2013-09-26
JP5906837B2 JP5906837B2 (ja) 2016-04-20

Family

ID=47826890

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012054604A Expired - Fee Related JP5906837B2 (ja) 2012-03-12 2012-03-12 経路探索方法、経路探索装置、及びプログラム

Country Status (6)

Country Link
US (1) US8898015B2 (ja)
EP (1) EP2639750A1 (ja)
JP (1) JP5906837B2 (ja)
CN (1) CN103309917B (ja)
CA (1) CA2806739C (ja)
TW (1) TWI500297B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020502481A (ja) * 2016-11-16 2020-01-23 エーアイモーティブ ケーエフティー. マップ上の道路ネットワークにおける電子ルートナビゲーション方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6207298B2 (ja) * 2013-08-19 2017-10-04 キヤノン株式会社 通信装置及びその制御方法、並びにプログラム
WO2015064683A1 (ja) * 2013-10-30 2015-05-07 日本電気株式会社 経路計算装置、経路計算方法およびプログラム
US20150302063A1 (en) * 2014-04-21 2015-10-22 Linkedln Corporation System and method for searching a distributed node-sharded graph
TWI530126B (zh) * 2014-06-04 2016-04-11 動聯國際股份有限公司 位基型網路系統
CN107210962B (zh) * 2015-02-12 2020-04-14 华为技术有限公司 路径选择方法、装置及系统
US9523583B2 (en) * 2015-02-27 2016-12-20 Here Global B.V. Generating routes using navigation meshes
EP3318845B1 (en) * 2016-11-04 2020-03-18 Ordnance Survey Limited Circular routing
CN108062592A (zh) * 2016-11-08 2018-05-22 上海宝通汎球电子有限公司 结合Dijkstra算法和A*算法求取最佳路径的优化算法
CN106964156B (zh) * 2017-03-24 2020-10-27 腾讯科技(深圳)有限公司 一种寻路方法以及装置
CN110198813B (zh) * 2017-01-31 2023-02-28 株式会社安川电机 机器人路径生成装置和机器人系统
US11361361B2 (en) * 2018-02-20 2022-06-14 Grzegorz Malewicz Method and an apparatus for searching or comparing sites using routes or route lengths between sites and places within a transportation system
US11346681B2 (en) * 2019-02-13 2022-05-31 Grzegorz Malewicz Method and an apparatus for searching or comparing sites using routes or route lengths between sites and places within a transportation system
CN111325502B (zh) * 2020-02-07 2022-02-15 北京三快在线科技有限公司 线路计算方法、装置、电子设备及可读存储介质
CN111203766B (zh) * 2020-04-20 2020-08-14 广东博智林机器人有限公司 一种墙面打磨路径规划方法、装置、设备和介质
CN115046557B (zh) * 2022-08-11 2022-11-01 合肥井松智能科技股份有限公司 一种结合b样条曲线和a星算法的agv路径规划方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519619A (en) * 1994-03-14 1996-05-21 Motorola, Inc. Route planning method for hierarchical map routing and apparatus therefor
JPH1137780A (ja) * 1997-07-23 1999-02-12 Mitsubishi Electric Corp 経路探索方法
JP2000136939A (ja) * 1998-11-02 2000-05-16 Fumio Mizoguchi 時間制限付き経路探索方法
JP2001324343A (ja) * 2000-05-17 2001-11-22 Alpine Electronics Inc 経路探索方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0652237A (ja) 1992-06-26 1994-02-25 Matsushita Electric Ind Co Ltd 経路探索装置
JP3322246B2 (ja) * 1999-07-21 2002-09-09 日本電気株式会社 パスサーチ装置および方法
TWI240514B (en) * 2002-12-23 2005-09-21 Inst Information Industry Link route search and maintenance method of bluetooth scatternet
TWI221995B (en) * 2003-05-28 2004-10-11 Taiwan Semiconductor Mfg Method and system for building navigation path and search device using the same
JP2007003251A (ja) * 2005-06-22 2007-01-11 Hitachi Ltd 経路誘導ナビゲーション装置及び経路誘導ナビゲーション方法
CN100442018C (zh) * 2005-08-05 2008-12-10 北京工业大学 延误风险规避的车载导航系统准动态路线优化方法
JP4834509B2 (ja) 2006-10-13 2011-12-14 アルパイン株式会社 車載用ナビゲーション装置
CN101261136B (zh) * 2008-04-25 2012-11-28 浙江大学 一种基于移动导航系统的路径搜索方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519619A (en) * 1994-03-14 1996-05-21 Motorola, Inc. Route planning method for hierarchical map routing and apparatus therefor
JPH1137780A (ja) * 1997-07-23 1999-02-12 Mitsubishi Electric Corp 経路探索方法
JP2000136939A (ja) * 1998-11-02 2000-05-16 Fumio Mizoguchi 時間制限付き経路探索方法
JP2001324343A (ja) * 2000-05-17 2001-11-22 Alpine Electronics Inc 経路探索方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020502481A (ja) * 2016-11-16 2020-01-23 エーアイモーティブ ケーエフティー. マップ上の道路ネットワークにおける電子ルートナビゲーション方法
JP7054848B2 (ja) 2016-11-16 2022-04-15 エーアイモーティブ ケーエフティー. マップ上の道路ネットワークにおける電子ルートナビゲーション方法

Also Published As

Publication number Publication date
TWI500297B (zh) 2015-09-11
US8898015B2 (en) 2014-11-25
TW201342850A (zh) 2013-10-16
US20130238240A1 (en) 2013-09-12
EP2639750A1 (en) 2013-09-18
JP5906837B2 (ja) 2016-04-20
CN103309917A (zh) 2013-09-18
CA2806739C (en) 2015-12-15
CA2806739A1 (en) 2013-09-12
CN103309917B (zh) 2017-04-26

Similar Documents

Publication Publication Date Title
JP5906837B2 (ja) 経路探索方法、経路探索装置、及びプログラム
JP5919950B2 (ja) 経路探索方法、経路探索装置、及びプログラム
US9146118B2 (en) Navigation system with point of interest detour mechanism and method of operation thereof
JP5608185B2 (ja) ナビゲーション装置、方法及びシステム
JP5448367B2 (ja) ルート決定方法およびデバイス
JP5895630B2 (ja) 経路探索方法、経路探索装置、及びプログラム
Sever et al. Dynamic shortest path problems: Hybrid routing policies considering network disruptions
US10018476B2 (en) Live traffic routing
RU2664034C1 (ru) Способ и система создания информации о трафике, которая будет использована в картографическом приложении, выполняемом на электронном устройстве
Hedderich et al. Adapting the A* algorithm for park spot routing
JP6912859B2 (ja) 地図更新装置、地図更新方法、コンピュータプログラム及びコンピュータプログラムを記録した記録媒体
US20160153787A1 (en) Method and system for division of road network
US20130060463A1 (en) Method, apparatus and computer program for selecting and displaying route favorable to driver
CN114383617A (zh) 基于地图神经网络导航算路方法、装置、设备及存储介质
CN114267176A (zh) 导航方法、装置、电子设备及计算机可读存储介质
JP6859925B2 (ja) 情報処理装置、情報提供システム、情報提供方法、及びプログラム
JP6307270B2 (ja) 経路探索装置
Mainali et al. Hierarchical efficient route planning in road networks
JP4342369B2 (ja) ナビゲーション装置および経路探索方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151001

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: 20160223

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160307

R150 Certificate of patent or registration of utility model

Ref document number: 5906837

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees