JPH11184837A - 最短経路探索システム - Google Patents
最短経路探索システムInfo
- Publication number
- JPH11184837A JPH11184837A JP34124597A JP34124597A JPH11184837A JP H11184837 A JPH11184837 A JP H11184837A JP 34124597 A JP34124597 A JP 34124597A JP 34124597 A JP34124597 A JP 34124597A JP H11184837 A JPH11184837 A JP H11184837A
- Authority
- JP
- Japan
- Prior art keywords
- point
- points
- order queue
- function
- evaluation function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 66
- 238000011156 evaluation Methods 0.000 claims description 52
- 238000004364 calculation method Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3446—Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/18—Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99934—Query formulation, input preparation, or translation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99935—Query augmenting and refining, e.g. inexact access
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99936—Pattern matching access
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Geometry (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computational Mathematics (AREA)
- Automation & Control Theory (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Navigation (AREA)
Abstract
点複数終点間での最短経路を求める効率的な方法及びそ
のシステムを提供することである。 【解決手段】上記課題を解決するために、本発明では、
従来の計算方法であるダイクストラ法を基本として、グ
ラフ上の点と終点集合との関係情報を用いて、それの高
速化を行う。ここにおける関係情報とは、ある一つの点
v と終点集合 T に関する評価関数 h(v) である。この
評価値を用いることにより、ダイクストラ法を高速化す
ることができる。
Description
し、特に多数点間での最短経路を求める方法及びそのシ
ステムに関する。
点の集合と複数の終点の集合を与えられて、すべての始
点と集合の組に対して、その始点終点間の最短経路を求
める問題である。従って、始点が n 点、 終点が m 点
ある場合、求める最短経路は n×m 組の始点終点に対し
て求めなければならない。なお、始点集合と終点集合の
両方に含まれるような点が存在してもよい。枝長が非負
の有向枝グラフ上で単一始点複数終点の最短経路問題の
ほぼ唯一の計算方法として、ダイクストラ法と呼ばれる
計算方法が知られている。以下に参考としてこのダイク
ストラ法の疑似コードを記載する。
計算には、ダイクストラ法を始点数に等しい回数だけ繰
り返し、計算を行う方法が用いられる。またこの方法は
各種ナビゲーション・システムにも使用されている。こ
れまで、この計算方法を高速化するような計算方法は知
られていない。
しようとする課題は、単一始点複数終点間での最短経路
を求める、効率のよい方法及びそのシステムを提供する
ことである。また別の課題は、複数始点複数終点間での
最短経路を求める方法及びそのシステムを提供すること
である。また別の課題は、複数点間での最短経路を探索
する際、少ない処理時間でその解を求めることである。
また別の課題は、複数点間での最短経路を探索する際、
最適性を失わない探索方法および探索システムを提供す
ることである。
に、本発明では、従来の計算方法であるダイクストラ法
を基本として、グラフ上の点と終点集合との関係情報を
用いて、それの高速化を行う。ここにおける関係情報と
は、ある一つの点 v と終点集合 T に関する次のような
評価関数 h(v) である。 ・ h(v) : v より終点集合 T の全ての点への全ての最
短経路長の下限値 本発明では、このような条件を満たす評価関数 h(v) が
計算され、値を有する時、最短路長の評価をしている、
という観点から評価値と呼ぶこととする。この評価値を
用いることにより、ダイクストラ法を高速化することが
できる。なお下限値とは、最小値以下の特定値のことで
ある。
経路を求めるためのブロック図を示す。まず探索の対象
となる点を記憶する順序キューをブロック210で作成
する。次にブロック220において、順序キュー内に記
憶された点v であって、始点から点v までの経路長 p
(v) と、点v に隣接する全ての点の中で最短経路長の下
限値 h(v) との和が、最小となる点v を特定する。この
ように点vを特定することにより、探索方向の広がり
に、ある指向特性を与えることができる。そしてブロッ
ク230で点v を前記順序キューから削除し、ブロック
240でこれを最短経路の確定集合Sに記憶する。確定
集合Sとはいわば最短経路の解を記憶した集合である。
この確定集合Sに終点の全てが記憶されたかどうかを判
断する(ブロック250)。もし記憶されている場合は
最短経路探索は終了する。次にブロック260におい
て、点v に隣接する点w であって、始点から点v の経路
長 p(v)と、点v から点w の経路長の和が p(w)より小さ
くなるような点w をすべて特定する。そして最後にブロ
ック270で点w を前記順序キューに記憶し、処理を再
びブロック220へ戻す。
施例を説明する。図1には、本発明において使用される
最短経路探索システムのハードウェア構成の一実施例を
示す概観図が示されている。システム100は、中央処
理装置(CPU)1とメモリ4とを含んでいる。CPU
1とメモリ4は、バス2を介して、補助記憶装置として
のハードディスク装置13(またはMO、CD−ROM
23、DVD等の記憶媒体駆動装置)とIDEコントロ
ーラ25を介して接続してある。同様にCPU1とメモ
リ4は、バス2を介して、補助記憶装置としてのハード
ディスク装置30(またはMO28、CD−ROM2
3、DVD等の記憶媒体駆動装置)とSCSIコントロ
ーラ27を介して接続してある。フロッピーディスク装
置20はフロッピーディスクコントローラ19を介して
バス2へ接続されている。なおこれら外部記憶装置に
は、ナビーゲションシステムであれば地図情報等を記憶
できる。
ピーディスクが挿入され、このフロッピーディスク等や
ハードディスク装置13(またはMO、CD−ROM、
DVD等の記憶媒体)、ROM14には、オペレーティ
ングシステムと協働してCPU等に命令を与え、本発明
を実施するためのコンピュータ・プログラムのコード若
しくはデータを記録することができ、メモリ4にロード
されることによって実行される。このコンピュータ・プ
ログラムのコードは圧縮し、または、複数に分割して、
複数の媒体に記録することもできる。
フェース・ハードウェアを備え、入力をするためのポイ
ンティング・デバイス(マウス、ジョイスティック等)
7またはキーボード6や、視覚データをユーザに提示す
るためのディスプレイ12を有することができる。ま
た、パラレルポート16を介してプリンタを接続するこ
とや、シリアルポート15を介してモデムを接続するこ
とが可能である。このシステム100は、シリアルポー
ト15およびモデムまたは通信アダプタ18(イーサネ
ットやトークンリング・カード)等を介してネットワー
クに接続し、他のコンピュータ等と通信を行うことが可
能である。またシリアルポート15若しくはパラレルポ
ート16に、遠隔送受信機器を接続して、赤外線若しく
は電波によりデータの送受信を行うことも可能である。
また該ユーザ・インターフェース・ハードウェアはディ
スプレイおよびポインティングデバイスが一つとなった
タッチパネル形式であって全く構わない。
ラ21によってD/A(デジタル/アナログ変換)変換
された音声信号を、アンプ22を介して受領し、音声と
して出力する。また、オーディオ・コントローラ21
は、マイクロフォン24から受領した音声情報をA/D
(アナログ/デジタル)変換し、システム外部の音声情
報をシステムにとり込むことを可能にしている。
ム、ナビゲーションシステムは、通常のパーソナルコン
ピュータ(PC)やワークステーション、ノートブック
PC、パームトップPC、ネットワークコンピュータ、
コンピュータを内蔵したテレビ等の各種家電製品、通信
機能を有するゲーム機、電話、FAX、携帯電話、PH
S、電子手帳、等を含む通信機能有する通信端末、また
は、これらの組合せによって実施可能であることを容易
に理解できるであろう。ただし、これらの構成要素は例
示であり、その全ての構成要素が本発明の必須の構成要
素となるわけではない。
路を求める方法をより詳細に図示する。ステップ300に
おいて、最短経路確定集合Sを初期化し、順序キュー(P
riorityQueue)に、最初の始点sを記憶する。また予め
すべての経路の対象となるノードvに対して、道のり配
列 p(v) に最大値を記憶しておく。但し最初の道のり p
(s) は 0 である。次にステップ310 で順序キューに何
もないかを判断する。もし順序キューが空であれば処理
はステップ320で終了する。これは探索が失敗したこと
を示す。つまり一部又は全ての終点までの経路が存在し
ないことを意味する。もしステップ310の判断がNoであ
れば、ステップ330で順序キューに含まれる点の内で、p
(v)+h(v)が最小となる点vを求める。
であるダイクストラ法を基本とした計算方法と異なる点
である。すなわちグラフ上の点と終点集合との関係情報
を用いて、それの高速化を行う部分に相当する。ここに
おける関係情報が、ある一つの点 v と終点集合 T に関
する値 h(v)、すなわち評価関数であり、以下のように
定義される。 ・ h(v) : v より終点集合 T の全ての点への全ての最
短経路長の下限値 この評価値を用いることにより、ダイクストラ法を高速
化することができる。なお、下限値とは、最小値以下の
特定値(最短の長さより短い値)という意味である。な
お、この評価関数よりも常に定数だけ大きい値を、評価
関数 h(v) としても構わない。
ューから、p(v)+h(v)が最小となる点vが削除される。こ
れは最短経路確定集合の1つが見つかったことを意味す
る。ステプ350で確定集合S にこの点v を加える。次に
ステップ360で終点集合T がSに含まれるかを判断する。
ステップ360の判断結果がNoであれば、ステップ370で点
vを始点とするすべての枝eの各終点wについて機能<b>を
行う。
るように、まずステップ392で点vまでの道のりp(v)と枝
長(e)を足したものが、点wまでの道のりp(w)より小さい
かどうかを判断する。その結果がNoであれば処理をステ
ップ398で終了し、その結果がYesであればp(w)にp(v)+
枝長(e)を代入し、順序キューにwを加える。要するに始
点からの点w への最短経路の候補を必要に応じて更新し
ていることに他ならない。ステップ370で新しい順序キ
ューを追加した後、処理は再びステップ310へ戻る。
載したものが以下である。
らすことができ、計算量の減少を図ることができる。ま
たこの計算方法によって最適性が失われることはない。
なお、始点が複数の場合、ダイクストラ法と同じように
始点数と等しい回数この手続きを行えばよい。
ような制約をすべての枝 e = (v, w) に対して与える
と、 h(v) < h(w) + 枝長 (v, w) 同じ点を2度以上確定集合 S にいれることを防ぐこと
ができ、この計算量をさらに減らし効率的なものとする
ことができる。
評価関数 h(v) の最も基本的な値として特に次の評価関
数 h*(v) がある。 ・ h*(v): v より終点集合 T の全ての点への全ての最
短経路長のうち最短の長さ 評価関数 h*(v) は終点集合Tから、逆方向探索によって
求めることができる。以下に、参考として、この h*(v)
を求めたい点集合 U の点に対して求める最も基本的な
疑似コードを示す。
ず、最初の h(v) の条件を満たすものであれば何でもよ
い。つまり h(v) の計算方法に関わらず、そのようなグ
ラフ各点と終点集合との関係情報を使用する方法であれ
ば同様に実施可能である。また上記とは逆に、グラフの
有向枝の向きを逆にすることにより、探索を逆側から
(終点側から)行うことも全く等価であり、そのような
始点と終点を逆にしたような計算方法も全く同様に実施
可能である。また同様の方法で経路長だけを列挙するよ
うしてもよい。
グラフ上全ての点に対して求めることが無駄であること
が多い。そこで、評価値を必要に応じて求めるように仕
組むことが可能である。図4に、評価値として、構成で
述べた h*(v) を使ったフローチャートを示す。
集合Wを初期化し、順序キュー2(PriorityQueue2)に、
終点集合Tを記憶する。また予めすべての経路の対象と
なるノードvに対して、h*(v) に最大値を記憶してお
く。但しTに含まれるすべてのtに関して、h*(v)に0を記
憶しておく。次にステップ410 で始点集合Sが空である
かを判断する。もし始点集合Sが空であれば処理はステ
ップ420で終了する。これはすべての組み合わせの始点
終点間の最短経路の計算が終了したことを示す。もしス
テップ410の判断がNoであれば、ステップ430でSから適
当な始点sを選択し、始点集合Sからsを削除する。次に
ステップ440で、確定集合 U を空にして、順序キューに
sを代入し、すべての点vに対して、道のり配列 p(v) に
最大値を記憶しておく。但し最初の道のり p(s) は 0
である。次に処理はステップ450へ移り、順序キューが
空であるか判断する。その結果がYesであれば処理は再
びステップ410へ戻る。その結果がNoであれば処理はス
テップ460へ進む。ステップ460で順序キューに含まれる
点の内で、p(v)+h*(v)が最小となる点vを求める。これ
は最短経路確定集合の1つが見つかったことを意味す
る。
(v)+h*(v)が最小となる点vが削除される。ステップ480
で確定集合U にこの点v を加える。次にステップ490で
終点集合T がUに含まれるかを判断する。ステップ490で
は、Uに関する判断を行っているが、点vが見つかった時
点で点vが終点集合Tに含まれるどうかを判断しても構わ
ない。もし含まれていれば処理はステップ410に戻る。
ステップ490の判断結果がNoであれば、ステップ495で点
vを始点とするすべての枝eの各終点wについて機能<c>を
行う。
ク500で示されるように、まずステップ510で点vまでの
道のりp(v)と枝長(e)を足したものが、点wまでの道のり
p(w)より小さいかどうかを判断する。その結果がNoであ
れば処理をステップ570で順序キューにwを加えて、ステ
ップ580で機能を終了する。その結果がYesであればステ
ップ520でp(w)にp(v)+枝長(e)を代入する。
ー2が空かまたは確定集合Wがwを含むかが判断される。
もし含んでれば処理はステップ570へ進み、含んでいな
ければ処理はステップ540へ進む。ステップ540ではuに
順序キュー2の中で最もh*(v)の値が小さい点が代入され
る。次にステップ550で順序キュー2からuを削除し、確
定集合Wにwを加える。そしてステップ560で点uを終点と
するすべての枝fの各始点xについて機能<d>を行う。
ク590で示されるように、まずステップ592で点vまでの
道のりp(v)と枝長(e)を足したものが、点wまでの道のり
p(w)より小さいかどうかを判断する。その結果がNoであ
れば処理をステップ598で終了し、その結果がYesであれ
ばh*(x)にh*(u)+枝長(e)を代入し、ステップ596におい
て順序キュー2にwを加える。そして処理はステップ598
へ進み機能を終了する。以下に、上記の必要のない評価
値を最小限しか求めないようにした図4および図5のフ
ローチャートの疑似コードを記載する。
の探索手法の実施例を示す。上記必要のない評価値を最
小限しか求めないようにする方法でも、終点への経路が
存在しないような点が道路上に存在した場合、グラフ全
体を計算してしまうことがある。たとえば、行き止まり
が存在するようなケースがそれにあたる。そのようなケ
ースで、かつグラフ全体を探索するのが時間がかかりす
ぎるようなケースでは、次のように評価関数を変えて、
実施するとよい。 ・ h'(v): h*(v) と適当な定数 c のうちで小さいもの 評価関数 h'(v)は h*(v)と同様、終点集合Tから、逆方
向探索によって求めることができる。以下に参考とし
て、この h'(v)を求める最も基本的な疑似コードを示
す。
経路の対象となるノードvに対して、h'(v) に最大値を
記憶するのではなく定数cを記憶しておくわけである。
このようにしておけば、評価値計算のためにグラフすべ
てを探索することを避けることができる。しかしなが
ら、この定数 c を妥当に設定するのは難しい。従っ
て、実際には、始点集合に含まれる点の評価値を求めた
のち、初めて、この c をそれまで求めた評価値の最大
値を超える適当な値に設定するのが妥当である。
法であるが、この方法は逆方向の探索をする必要がある
ため、逆方向の枝の隣接情報がもてないようなメモリの
少ない状況では使えない。そのような場合、直線距離を
用いることも可能である。次のような評価関数、 ・ d(v): v から終点集合の各点への直線距離の中で一
番小さいもの を考えると、これは、評価関数の制限を満たす。これを
求めることに対しては、k-d 木などのデータ構造が知ら
れており、高速に計算することが可能である。さらに、
この評価値の場合、ひとつひとつ必要に応じて計算で
き、無駄な計算は最小限に抑えることが可能である。
の最適化ツール、巡回商人問題や車両配送問題、倉庫配
置問題などの計算システムに組み込むことのできる、高
速な経路探索システムが提供される。またその探索方法
は複数始点複数終点に対応し、最適性が失われることの
ない計算方法を提供する。本発明の効率的なアルゴリズ
ムにより、従来の手法に比較して最短経路計算部分の処
理時間を3〜7割短縮することが可能となる。
実施例を示す。
テムのブロック図である。
フローチャートである。
るフローチャートである。
るフローチャートである。
Claims (19)
- 【請求項1】1つの始点から複数の終点への最短経路を
探索するシステムであって、(1)探索の対象となる点
を記憶するための、順序キューを作成する手段と、
(2)前記順序キュー内に記憶された点v であって、始
点から点v までの経路長p(v) と、点v に隣接する点と
終点集合との関係から得られる評価関数 h(v) との和
が、最小となる点v を特定する手段と、(3)前記点v
を前記順序キューから削除する手段と、(4)前記点v
を最短経路の確定集合Sに記憶する手段と、(5)前記
確定集合Sに前記複数の終点の全てが記憶された場合、
処理を終了する手段と、(6)前記点v に隣接する点w
であって、始点から点v の経路長 p(v)と、点vから点w
の経路長の和が、p(w)より小さくなるような点w をすべ
て特定する手段と、(7)前記点w をすべて前記順序キ
ューに記憶する手段と、 を具備することを特徴とする、最短経路探索システム。 - 【請求項2】複数の始点から複数の終点への最短経路を
探索するシステムであって、複数の始点の各々に対し
て、(1)探索の対象となる点を記憶するための、順序
キューを作成する手段と、(2)前記順序キュー内に記
憶された点v であって、始点から点v までの経路長p(v)
と、点v に隣接する点と終点集合との関係から得られ
る評価関数 h(v) との和が、最小となる点v を特定する
手段と、(3)前記点v を前記順序キューから削除する
手段と、(4)前記点v を最短経路の確定集合Sに記憶
する手段と、(5)前記確定集合Sに前記複数の終点の
全てが記憶された場合、処理を終了する手段と、(6)
前記点v に隣接する点w であって、始点から点v の経路
長 p(v)と、点vから点w の経路長の和が、p(w)より小さ
くなるような点w をすべて特定する手段と、(7)前記
点w をすべて前記順序キューに記憶する手段と、 を具備することを特徴とする、最短経路探索システム。 - 【請求項3】1つの始点から複数の終点への最短経路を
探索するナビーゲション・システムであって、(1)探
索の対象となる点を記憶するための、順序キューを作成
する手段と、(2)前記順序キュー内に記憶された点v
であって、始点から点v までの経路長p(v) と、点v に
隣接する点と終点集合との関係から得られる評価関数 h
(v) との和が、最小となる点v を特定する手段と、
(3)前記点v を前記順序キューから削除する手段と、
(4)前記点v を最短経路の確定集合Sに記憶する手段
と、(5)前記確定集合Sに前記複数の終点の全てが記
憶された場合、処理を終了する手段と、(6)前記点v
に隣接する点w であって、始点から点v の経路長 p(v)
と、点vから点w の経路長の和が、p(w)より小さくなる
ような点w をすべて特定する手段と、(7)前記点w を
すべて前記順序キューに記憶する手段と、 を具備することを特徴とする、ナビゲーション・システ
ム。 - 【請求項4】複数の始点から複数の終点への最短経路を
探索するナビゲーション・システムであって、前記複数
の始点の各々に対して、(1)探索の対象となる点を記
憶するための、順序キューを作成する手段と、(2)前
記順序キュー内に記憶された点v であって、始点から点
v までの経路長p(v) と、点v に隣接する点と終点集合
との関係から得られる評価関数 h(v) との和が、最小と
なる点v を特定する手段と、(3)前記点v を前記順序
キューから削除する手段と、(4)前記点v を最短経路
の確定集合Sに記憶する手段と、(5)前記確定集合S
に前記複数の終点の全てが記憶された場合、処理を終了
する手段と、(6)前記点v に隣接する点w であって、
始点から点v の経路長 p(v)と、点vから点w の経路長の
和が、p(w)より小さくなるような点w をすべて特定する
手段と、(7)前記点w をすべて前記順序キューに記憶
する手段と、 を具備することを特徴とする、ナビゲーション・システ
ム。 - 【請求項5】前記手段(6)において、前記評価関数 h
(v) が h(v) の値よりも h(w)の値と点v から点w への
経路長の和が大きくなるような条件を常に満たしている
評価関数 h(v) である、請求項1乃至4の何れかに記
載のシステム。 - 【請求項6】前記手段(2)において、前記評価関数 h
(v) が、点v に隣接する全ての点の中で最短経路長のう
ち最短の長さより、短い値である、請求項1乃至4の何
れかに記載のシステム。 - 【請求項7】前記評価関数 h(v) よりも、常に定数だけ
大きい値をとるようにした評価関数を、評価関数 h(v)
とする、請求項6記載のシステム。 - 【請求項8】前記手段(2)において、前記評価関数 h
(v) が、点v に隣接する全ての点の中で最短経路長のう
ち最短の長さに等しい値である、請求項1乃至4の何れ
かに記載のシステム。 - 【請求項9】前記手段(2)において、前記評価関数 h
(v) が、点v に隣接する全ての点の中で最短経路長のう
ち最短の長さに等しい値と、適当な定数 c とのうち、
小さい方の値を取る、請求項1乃至4の何れかに記載の
システム。 - 【請求項10】前記手段(2)において、前記評価関数
h(v) が、点v に隣接する全ての点の中で、終点集合の
各点への直線距離の中で一番小さい値である、請求項1
乃至4の何れかに記載のシステム。 - 【請求項11】1つの始点から複数の終点への最短経路
を探索する方法であって、(1)探索の対象となる点を
記憶するための、順序キューを作成する段階と、(2)
前記順序キュー内に記憶された点v であって、始点から
点v までの経路長p(v) と、点v に隣接する点と終点集
合との関係から得られる評価関数 h(v) との和が、最小
となる点v を特定する段階と、(3)前記点v を前記順
序キューから削除する段階と、(4)前記点v を最短経
路の確定集合Sに記憶する段階と、(5)前記点v に隣
接する点w であって、始点から点v の経路長 p(v)と、
点vから点w の経路長の和が、p(w)より小さくなるよう
な点w をすべて特定する段階と、(6)前記点w をすべ
て前記順序キューに記憶する段階と、(7)前記手段
(2)乃至(6)を確定集合Sに前記複数の終点の全て
が記憶されるまで繰り返す段階と、 を具備することを特徴とする、最短経路探索方法。 - 【請求項12】1つの始点から複数の終点への最短経路
を探索するためのプログラムを含む媒体であって、該プ
ログラムが、(1)探索の対象となる点を記憶するため
の、順序キューを作成する機能と、(2)前記順序キュ
ー内に記憶された点v であって、始点から点v までの経
路長p(v) と、点v に隣接する点と終点集合との関係か
ら得られる評価関数 h(v) との和が、最小となる点v を
特定する機能と、(3)前記点v を前記順序キューから
削除する機能と、(4)前記点v を最短経路の確定集合
Sに記憶する機能と、(5)前記点v に隣接する点w で
あって、始点から点v の経路長 p(v)と、点vから点w の
経路長の和が、p(w)より小さくなるような点w をすべて
特定する機能と、(6)前記点w をすべて前記順序キュ
ーに記憶する機能と、(7)前記手段(2)乃至(6)
を確定集合Sに前記複数の終点の全てが記憶されるまで
繰り返す機能と、 を有することを特徴とする、プログラムを含む媒体。 - 【請求項13】複数の始点から複数の終点への最短経路
を探索するためのプログラムを含む媒体であって、該プ
ログラムが、(1)探索の対象となる点を記憶するため
の、順序キューを作成する機能と、(2)前記順序キュ
ー内に記憶された点v であって、始点から点v までの経
路長p(v) と、点v に隣接する点と終点集合との関係か
ら得られる評価関数 h(v) との和が、最小となる点v を
特定する機能と、(3)前記点v を前記順序キューから
削除する機能と、(4)前記点v を最短経路の確定集合
Sに記憶する機能と、(5)前記点v に隣接する点w で
あって、始点から点v の経路長 p(v)と、点vから点w の
経路長の和が、p(w)より小さくなるような点w をすべて
特定する機能と、(6)前記点w をすべて前記順序キュ
ーに記憶する機能と、(7)前記手段(2)乃至(6)
を確定集合Sに前記複数の終点の全てが記憶されるまで
繰り返す機能と、 を具備し、前記複数の始点の各々に対して、上記(1)
乃至(7)の機能を適用することを特徴とする、プログ
ラムを含む媒体。 - 【請求項14】前記機能(5)において、前記評価関数
h(v) が h(v) の値よりも h(w)の値と点v から点w へ
の経路長の和が大きくなるような条件を常に満たしてい
る評価関数 h(v) である、請求項12乃至13の何れ
かに記載の媒体。 - 【請求項15】前記機能(2)において、前記評価関数
h(v) が、点v に隣接する全ての点の中で最短経路長の
うち最短の長さより、短い値である、請求項12乃至1
3の何れかに記載の媒体。 - 【請求項16】前記評価関数 h(v) よりも、常に定数だ
け大きい値をとるようにした評価関数を、評価関数 h
(v) とする、請求項15記載の媒体。 - 【請求項17】前記機能(2)において、前記評価関数
h(v) が、点v に隣接する全ての点の中で最短経路長の
うち最短の長さに等しい値である、請求項12乃至13
の何れかに記載の媒体。 - 【請求項18】前記機能(2)において、前記評価関数
h(v) が、点v に隣接する全ての点の中で最短経路長の
うち最短の長さに等しい値と、適当な定数 c とのう
ち、小さい方の値を取る、請求項12乃至13の何れか
に記載の媒体。 - 【請求項19】前記機能(2)において、前記評価関数
h(v) が、点v に隣接する全ての点の中で、終点集合の
各点への直線距離の中で一番小さい値である、請求項1
2乃至13の何れかに記載の媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34124597A JPH11184837A (ja) | 1997-12-11 | 1997-12-11 | 最短経路探索システム |
US09/210,325 US6356911B1 (en) | 1997-12-11 | 1998-12-11 | Shortest path search system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34124597A JPH11184837A (ja) | 1997-12-11 | 1997-12-11 | 最短経路探索システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11184837A true JPH11184837A (ja) | 1999-07-09 |
Family
ID=18344535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34124597A Pending JPH11184837A (ja) | 1997-12-11 | 1997-12-11 | 最短経路探索システム |
Country Status (2)
Country | Link |
---|---|
US (1) | US6356911B1 (ja) |
JP (1) | JPH11184837A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109029475A (zh) * | 2018-05-23 | 2018-12-18 | 广西中烟工业有限责任公司 | 基于云计算的烟草零售户走访路径规划可视分析系统 |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2415099A1 (en) * | 2000-06-29 | 2002-01-10 | Corvis Corporation | Improved shortest path first restoration routing in a fiberoptic network |
US7010622B1 (en) * | 2001-06-08 | 2006-03-07 | Emc Corporation | Scalable communication within a distributed system using dynamic communication trees |
US7289668B2 (en) * | 2002-08-09 | 2007-10-30 | Xerox Corporation | Document image decoding systems and methods using modified stack algorithm |
US7167588B2 (en) * | 2002-08-09 | 2007-01-23 | Xerox Corporation | Document image decoding systems and methods using modified stack algorithm |
US7039240B2 (en) * | 2002-08-09 | 2006-05-02 | Xerox Corporation | Document image decoding systems and methods using modified stack algorithm |
WO2004015873A1 (en) * | 2002-08-13 | 2004-02-19 | Vanu, Inc. | Convolutional decoding |
US7353170B2 (en) | 2002-08-13 | 2008-04-01 | Vanu, Inc. | Noise-adaptive decoding |
US7133771B1 (en) | 2002-08-29 | 2006-11-07 | America Online, Inc. | Automated route determination to avoid a particular maneuver |
US20040044465A1 (en) * | 2002-08-29 | 2004-03-04 | Nesbitt David W. | Automated route determination based on day of route traversal |
US20040052239A1 (en) | 2002-08-29 | 2004-03-18 | Nesbitt David W. | Automated route determination |
CN1711695A (zh) * | 2002-11-15 | 2005-12-21 | 瓦努股份有限公司 | 通信系统 |
US7818116B1 (en) | 2002-12-30 | 2010-10-19 | Mapquest, Inc. | Presenting a travel route in a ground-based vehicle |
US7474960B1 (en) | 2002-12-30 | 2009-01-06 | Mapquest, Inc. | Presenting a travel route |
US7321824B1 (en) | 2002-12-30 | 2008-01-22 | Aol Llc | Presenting a travel route using more than one presentation style |
SG119169A1 (en) * | 2003-01-20 | 2006-02-28 | Nanyang Polytechnic | Path searching system using multiple groups of cooperating agents and method thereof |
US7457286B2 (en) | 2003-03-31 | 2008-11-25 | Applied Micro Circuits Corporation | Accelerating the shortest path problem |
FR2855287A1 (fr) * | 2003-05-19 | 2004-11-26 | Kode | Procede de calcul du plus court chemin dans un graphe |
US7076363B1 (en) * | 2003-07-17 | 2006-07-11 | America Online, Inc. | Using route narrative symbols |
US7620494B1 (en) | 2003-07-17 | 2009-11-17 | Mapquest, Inc. | Using routing symbols to describe a driving maneuver |
WO2005015453A1 (en) * | 2003-07-31 | 2005-02-17 | Sap Aktiengesellschaft | Determining distances in a warehouse |
US7324896B1 (en) | 2003-08-04 | 2008-01-29 | Aol Llc | Using a corridor search to identify locations of interest along a travel route |
US6954697B1 (en) | 2003-08-04 | 2005-10-11 | America Online, Inc. | Using a corridor search to identify locations of interest along a route |
US7065448B1 (en) | 2003-10-01 | 2006-06-20 | America Online, Inc. | Presenting driving directions |
WO2005086709A2 (en) * | 2004-03-05 | 2005-09-22 | Vanu, Inc. | Controlling jitter effects |
US20050286536A1 (en) * | 2004-06-09 | 2005-12-29 | Jeffrey Steinheider | Reducing backhaul bandwidth |
EP1754386A4 (en) * | 2004-06-09 | 2010-03-03 | Vanu Inc | REDUCING THE COST OF THE CELLULAR TERRESTRIAL BOND |
US20060009236A1 (en) * | 2004-06-09 | 2006-01-12 | Vanu Bose | Determining a location |
US7966003B2 (en) * | 2004-07-09 | 2011-06-21 | Tegic Communications, Inc. | Disambiguating ambiguous characters |
DE102004039465A1 (de) * | 2004-08-14 | 2006-02-23 | Robert Bosch Gmbh | Verfahren zur Navigation |
US7953577B2 (en) * | 2004-08-25 | 2011-05-31 | Siemens Corporation | Method and apparatus for improved fault detection in power generation equipment |
KR20060064711A (ko) * | 2004-12-09 | 2006-06-14 | 엘지전자 주식회사 | 복수 경유지를 탐색하는 네비게이션 시스템 |
US7689349B1 (en) | 2004-12-23 | 2010-03-30 | Aol Llc | Automatic determination of a surrogate origin for personalized routing |
US7395153B1 (en) | 2004-12-23 | 2008-07-01 | Aol Llc | Reducing driving directions |
WO2006069602A1 (en) * | 2004-12-29 | 2006-07-06 | Sap Aktiengesellschaft | Path planning in a warehouse |
FR2881862B1 (fr) * | 2005-02-07 | 2007-04-13 | Michelin Soc Tech | Procede et dispositif de determination d'itineraire avec points d'interet |
US7580451B2 (en) * | 2005-10-07 | 2009-08-25 | Vanu, Inc. | Decoding of Walsh codes |
US20080076406A1 (en) * | 2006-09-22 | 2008-03-27 | Vanu, Inc. | Wireless Backhaul |
US20080076435A1 (en) * | 2006-09-22 | 2008-03-27 | Vanu, Inc. | Wireless Backhaul |
US20080177654A1 (en) * | 2007-01-19 | 2008-07-24 | Edmund Hon Wah Hor | Non-Deterministic Trading Systems and Methods |
US9409230B2 (en) * | 2009-05-13 | 2016-08-09 | International Business Machines Corporation | Process scheduling system, method, and program |
JP2011007713A (ja) * | 2009-06-29 | 2011-01-13 | Internatl Business Mach Corp <Ibm> | 多点対間最短経路探索方法およびシステム |
CN101956647B (zh) * | 2009-07-15 | 2012-12-19 | 鸿富锦精密工业(深圳)有限公司 | 潮汐能发电装置 |
US8417618B2 (en) * | 2009-09-03 | 2013-04-09 | Chicago Mercantile Exchange Inc. | Utilizing a trigger order with multiple counterparties in implied market trading |
US8255305B2 (en) * | 2009-09-15 | 2012-08-28 | Chicago Mercantile Exchange Inc. | Ratio spreads for contracts of different sizes in implied market trading |
US8266030B2 (en) | 2009-09-15 | 2012-09-11 | Chicago Mercantile Exchange Inc. | Transformation of a multi-leg security definition for calculation of implied orders in an electronic trading system |
US20110066537A1 (en) * | 2009-09-15 | 2011-03-17 | Andrew Milne | Implied volume analyzer |
US8229838B2 (en) | 2009-10-14 | 2012-07-24 | Chicago Mercantile Exchange, Inc. | Leg pricer |
US9065743B2 (en) * | 2009-12-24 | 2015-06-23 | At&T Intellectual Property I, L.P. | Determining connectivity in a failed network |
US20150197154A1 (en) * | 2010-12-24 | 2015-07-16 | Martin Kelly Jones | Selection of battery remediation type and/or battery remediation station based upon available time period at location |
US20150191095A1 (en) * | 2010-12-24 | 2015-07-09 | Martin Kelly Jones | Authentication Methods for Battery Remediation in Connection with Electric Powered Mobile Thing (EPMT) |
US8700638B2 (en) * | 2011-03-08 | 2014-04-15 | Libera, Inc. | Computer-implemented weighted tree search to resolve variable name ambiguity |
US8818712B2 (en) | 2011-03-28 | 2014-08-26 | Raytheon Company | Maritime path determination |
US9467365B2 (en) | 2013-02-14 | 2016-10-11 | Cisco Technology, Inc. | Mechanism and framework for finding optimal multicast tree roots without the knowledge of traffic sources and receivers for fabricpath and TRILL |
US20150179080A1 (en) * | 2013-12-22 | 2015-06-25 | Lumos Labs, Inc. | Systems and methods for a physically intuitive resource-constrained route planning task for enhanced cognition |
US9703830B2 (en) * | 2014-10-09 | 2017-07-11 | International Business Machines Corporation | Translation of a SPARQL query to a SQL query |
US20170039658A1 (en) * | 2015-08-03 | 2017-02-09 | Aquilon Energy Services, Inc. | Energy collaboration platform with multiple information level matching |
US10762564B2 (en) * | 2016-11-10 | 2020-09-01 | International Business Machines Corporation | Autonomous peer-to-peer energy networks operating on a blockchain |
CN106705982A (zh) * | 2017-01-25 | 2017-05-24 | 上海蔚来汽车有限公司 | 多地点依存的路径规划方法和系统 |
US11302447B1 (en) * | 2019-06-21 | 2022-04-12 | Medpros, Llc | Systems and methods for simulating mechanisms of injury utilizing an objective impairment injury score risk model |
DE102019005116A1 (de) * | 2019-07-23 | 2021-01-28 | Daimler Ag | Verfahren zum Handeln von Kryptowährungen |
US20210042737A1 (en) * | 2019-08-07 | 2021-02-11 | Seatig Inc. | Distributed computing architecture with settlement mechanism to enable traceability of credit tokenization, disbursement and repayment |
CN116457773A (zh) * | 2020-10-30 | 2023-07-18 | 株式会社半导体能源研究所 | 阅读支援系统及阅读支援方法 |
CN112681744B (zh) * | 2020-11-11 | 2022-04-22 | 重庆恢恢信息技术有限公司 | 一种通过智慧云端用于建筑工地的物料钢筋获取方法和系统 |
US11966974B2 (en) * | 2021-02-12 | 2024-04-23 | Blackstar Enterprises Group, Inc. | System and method for preparing for a SEC financial statement audit by recording corporate governance information on an immutable blockchain |
KR102489494B1 (ko) * | 2021-04-26 | 2023-01-18 | 정내권 | 블록체인 기반의 탄소배출 부담금의 지불, 기여, 투자, 수익상환 산정플랫폼 및 산정방법 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4987536A (en) * | 1988-05-12 | 1991-01-22 | Codex Corporation | Communication system for sending an identical routing tree to all connected nodes to establish a shortest route and transmitting messages thereafter |
EP0736237B1 (en) * | 1993-12-24 | 1999-06-16 | International Business Machines Corporation | Routing bandwidth-reserved connections in information networks |
US6269363B1 (en) * | 1994-01-24 | 2001-07-31 | Yossi Matias | Method of accessing data using approximate data structures by relaxing the operations that define same |
US5872773A (en) * | 1996-05-17 | 1999-02-16 | Lucent Technologies Inc. | Virtual trees routing protocol for an ATM-based mobile network |
KR100198813B1 (ko) * | 1996-06-12 | 1999-06-15 | 정선종 | 우편경로 시스템 및 그 시스템에 따른 최단 경로 생성방법 |
JPH109884A (ja) * | 1996-06-24 | 1998-01-16 | Mitsubishi Electric Corp | 車両用経路案内装置および経路探索方法 |
US6098107A (en) * | 1997-10-31 | 2000-08-01 | Lucent Technologies Inc. | Dynamic algorithms for shortest path tree computation |
-
1997
- 1997-12-11 JP JP34124597A patent/JPH11184837A/ja active Pending
-
1998
- 1998-12-11 US US09/210,325 patent/US6356911B1/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109029475A (zh) * | 2018-05-23 | 2018-12-18 | 广西中烟工业有限责任公司 | 基于云计算的烟草零售户走访路径规划可视分析系统 |
CN109029475B (zh) * | 2018-05-23 | 2022-02-18 | 广西中烟工业有限责任公司 | 基于云计算的烟草零售户走访路径规划可视分析方法 |
Also Published As
Publication number | Publication date |
---|---|
US6356911B1 (en) | 2002-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH11184837A (ja) | 最短経路探索システム | |
US6789012B1 (en) | PDA systems, functional data, and methods for generating a route | |
US6477515B1 (en) | Efficient computation of least cost paths with hard constraints | |
US9436702B2 (en) | Navigation system data base system | |
KR20040103495A (ko) | b-트리를 사용한 위치 액세스 | |
US20070156330A1 (en) | Point-to-point shortest path algorithm | |
US20120310523A1 (en) | Customizable route planning | |
US20180012403A1 (en) | Method and device for computing a path in a game scene | |
US8214527B2 (en) | Fast algorithm for peer-to-peer shortest path problem | |
US20080122848A1 (en) | Better landmarks within reach | |
US6885937B1 (en) | Shortcut generator | |
US6735600B1 (en) | Editing protocol for flexible search engines | |
CN109471838B (zh) | 目录文档的操作方法、装置、电子设备、可读存储介质 | |
JP2002532693A5 (ja) | ||
US6975940B1 (en) | Systems, functional data, and methods for generating a route | |
US6182008B1 (en) | Ordering destinations along a route using a shortest line approximation | |
WO2010058785A1 (ja) | 経路計算順決定方法、プログラムおよび計算装置 | |
KR101480670B1 (ko) | 대용량 그래프 데이터베이스에서 최단 경로를 탐색하는 방법 | |
US20030236783A1 (en) | Method and system for a pattern matching engine | |
US7836047B2 (en) | Method for assignment of point level address geocodes to street networks | |
CN106034266B (zh) | 光路由的生成方法及装置 | |
Gold | Three approaches to automated topology, and how computational geometry helps | |
JP2000112925A (ja) | 経路数を最少化する配送経路の生成方法およびそのシステム | |
US7159019B2 (en) | Information collection apparatus and method | |
JP2801208B2 (ja) | 位相数学的なネットワークをメモリに記憶させる方法、並びに該ネットワーク内の2−セルを見出す方法及びデバイス |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040423 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061107 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20070122 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20070125 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070507 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070731 |