JPH0546590A - Graph minimum length-path searching method and device for obtaining plurality of optimum solution - Google Patents
Graph minimum length-path searching method and device for obtaining plurality of optimum solutionInfo
- Publication number
- JPH0546590A JPH0546590A JP21129391A JP21129391A JPH0546590A JP H0546590 A JPH0546590 A JP H0546590A JP 21129391 A JP21129391 A JP 21129391A JP 21129391 A JP21129391 A JP 21129391A JP H0546590 A JPH0546590 A JP H0546590A
- Authority
- JP
- Japan
- Prior art keywords
- graph
- cost
- route
- shortest
- routes
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004458 analytical method Methods 0.000 claims abstract description 23
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000013138 pruning Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000009825 accumulation Methods 0.000 claims 3
- 238000011161 development Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000000877 morphologic effect Effects 0.000 description 6
- 230000000717 retained effect Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Landscapes
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
【0001】[0001]
【0002】本発明は、グラフの最短経路を求めるグラ
フ探索方法に関わり、特に複数の最短経路を求めるのに
有効なグラフ探索方法に関する。The present invention relates to a graph search method for finding the shortest path of a graph, and more particularly to a graph search method effective for finding a plurality of shortest paths.
【0003】[0003]
【従来の技術】2点間の、距離的、時間的、価格的な最
短経路を求める問題はグラフ探索方法の一つである。例
えば通信回線の利用者が、A地点からB地点までの最も
コストの安い通信経路に加えて、2番目に安い通信経
路、3番目に安い通信経路、...を即座に見出すことが
できれば、通信回線を利用するに際しての選択の自由度
が高まる。また、ナビゲーション・システムにおいて、
現在地から目的地までの所要時間について例えば上位の
複数のルートが即座に得られれば、運転者は他の条件も
加味しながらそれらのルートのいずれかを選択すること
ができる。あるいはまた、機械翻訳の分野において、日
本語の形態素解析はグラフの最短経路問題として定式化
することがでる。その場合、与えられた文について形式
上複数の解釈が成り立つとき、最もありえそうな解釈、
2番目にありそうな解釈、...を求めることが重要であ
る。2. Description of the Related Art The problem of finding the shortest route in terms of distance, time, and price between two points is one of graph search methods. For example, if the user of the communication line can immediately find the cheapest communication path from the point A to the point B, the second cheapest communication path, the third cheapest communication path, ... The degree of freedom in selection when using the communication line is increased. In the navigation system,
If, for example, a plurality of high-order routes regarding the required time from the current position to the destination are immediately obtained, the driver can select one of those routes while taking other conditions into consideration. Alternatively, in the field of machine translation, Japanese morphological analysis can be formulated as a shortest path problem for graphs. In that case, when there are multiple formal interpretations of a given sentence, the most likely interpretation,
It is important to seek the second most likely interpretation, ...
【0004】このような、グラフの最短経路アルゴリズ
ムとして最も良く知られたものはダイクストラ(Dijkst
ra)のアルゴリズムである。このアルゴリズムは非負の
コストをもつ有効グラフの最短経路を、O(elogn)の時間
で計算する。但し、eはグラフの辺の数、nは頂点の数で
ある。このアルゴリズムは高速であるが、同時に複数す
なわち、第2位、第3位、...の最短経路も求めること
はできない。なお、このダイクストラのアルゴリズムの
詳細は、例えば、Aho,A.V.他著、"Data
Structures and Algorithm
s",pp204−208,Addison−Wesl
ey,1983 に開示されている。The best known shortest path algorithm for such a graph is Dijkst.
ra) algorithm. This algorithm computes the shortest path of an effective graph with nonnegative cost in O (elogn) time. Here, e is the number of edges of the graph, and n is the number of vertices. This algorithm is fast, but it cannot simultaneously find multiple shortest paths, that is, second, third, ... Details of the Dijkstra algorithm are described in, for example, Aho, A .; V. Other work, "Data
Structures and Algorithm
s ", pp204-208, Addison-Wesl.
ey, 1983.
【0005】一方、複数の解を高速に求める手法として
ビームサーチがあるが、ビームサーチでは部分経路のコ
ストをもとにして枝刈りをするため、求まった解が最適
である保証が失われてしまう。なお、このビームサーチ
の詳細は、Winston,P.H.他著、"Arti
ficial Intelligence−Secon
d Edition",pp−96−97,Addis
on−Wesley,1984 に開示されている。On the other hand, there is a beam search as a method for obtaining a plurality of solutions at high speed. In the beam search, pruning is performed based on the cost of a partial path, so that the obtained solution is not guaranteed to be optimal. I will end up. The details of this beam search are described in Winston, P. et al. H. Other work, "Arti
financial Intelligence-Secon
d Edition ", pp-96-97, Addis
on-Wesley, 1984.
【0006】縦型探索、横型探索、あるいは最良優先探
索などの手法を用いれば、最適性の保証された複数の解
を求めることができるが、一般に、これらのアルゴリズ
ムの処理にはグラフのサイズの指数関数のオーダーの時
間がかかるので、実用可能な分野が狭く、望ましくな
い。なお、最良優先探索の詳細は、Bar,A.他
著、"The Handbook of Artifi
cial Intelligence", Willi
am Kaufman,1981に開示されている。[0006] A vertical search, a horizontal search, or a best-first search can be used to find a plurality of solutions with guaranteed optimality. Since it takes time of the order of exponential function, the field of practical use is narrow, which is not desirable. The details of the best priority search are described in Bar, A. et al. Others, "The Handbook of Artifi
cial Intelligence ", Willi
Am Kaufman, 1981.
【0007】同様な効果を狙った発明として、特開昭64
-48127公報や特開昭63-170776公報に記載の発明がある
が、どちらも探索の順序を発見的な予測値を用いて制御
するものであり、解の最適性または計算量のいずれかが
損なわれる。一方、特開昭62-32516の発明は各頂点に予
め終点までの距離を記憶しておくものであるが、その値
の最小性が保証されないこと、及び複数解を求める手法
が無いこと等の問題がある。An invention aiming at a similar effect is disclosed in Japanese Patent Laid-Open No.
-48127 and Japanese Patent Laid-Open No. 63-170776, both of which control the search order using a heuristic predicted value, and either the optimality of the solution or the computational complexity Be damaged. On the other hand, in the invention of Japanese Patent Laid-Open No. 62-32516, the distance to the end point is stored in advance at each vertex. However, the minimum value is not guaranteed, and there is no method for obtaining multiple solutions. There's a problem.
【0008】このように、従来、解の複数性、最適性、
処理の高速性を同時に満足するグラフ探索手法は存在し
ない。本発明は、最適性の保証された複数個の解を高速
に発見するグラフ探索手法を提供することを目的とす
る。Thus, conventionally, the multiplicity of solutions, the optimality,
There is no graph search method that satisfies the processing speed at the same time. It is an object of the present invention to provide a graph search method for quickly finding a plurality of solutions with guaranteed optimality.
【0009】本発明は、グラフの最短経路を求める効率
的な手法として、頂点間の辺に実数値のコストが付いた
有向グラフ の任意の頂点と終点tとの最短コストを算出
し、前記有向グラフGの始点sからの部分経路を、始点s
からのコストの累積と、残りの経路の前記最短コストと
の和に基づき、設定された解析条件に従って下位を枝刈
りしながら、逐次的に経路展開し、探索が終了した時点
で前記保持されている複数の最適な経路を出力する、こ
とを特徴とする。本発明によれば、予め残りの経路の最
短コストを算出し、これに始点からのコストの累積を加
えつつ、解析条件に従って複数の経路について展開する
ため、解の複数性と最適性が同時に確保され、しかも下
位のコスト値の経路を枝刈りしながら逐次的に展開する
ため、処理の高速性も確保される。As an efficient method of finding the shortest path of a graph, the present invention calculates the shortest cost between an arbitrary vertex and an end point t of a directed graph with a real-valued cost on the edge between vertices, and calculates the directed graph G The partial path from the starting point s of
Based on the sum of the accumulated cost from the above and the shortest cost of the remaining route, while pruning the lower order according to the set analysis condition, the route is expanded sequentially, and is retained at the time when the search is completed. It is characterized by outputting a plurality of optimum routes. According to the present invention, the shortest cost of the remaining route is calculated in advance, the cost is accumulated from the starting point, and the route is developed for a plurality of routes according to the analysis conditions, so that the multiplicity and optimality of the solution are secured at the same time. In addition, since the paths of lower cost values are pruned and sequentially expanded, high speed processing can be ensured.
【0010】以下、本発明の実施例を説明する。まず、
最初に最短経路に関する用語を以下のように定義する。
グラフGを、辺が非負の実数値のコストを持つ有向グラ
フとする。グラフGは図1に示すように、n個の頂点s,
t, u, v,...と、これら頂点間を繋ぐ辺とを持つ。頂点u
から頂点vまでの辺<u,v>のコストをc[u ,v ]で表す。経
路pのコストcost(p)は、p上の辺のコストの合計であ
る。頂点sから頂点tまでの最短経路とは、sからtまでの
経路の中でコストが最小のものである。次に、上位N位
の最短経路を示すために、N-最短という概念を定義す
る。経路p0が、頂点sから頂点tまでの経路で、cost(p)<
cost(p0)となるようなsからtまでの他の経路pが高々N-1
個しか存在しなかったとする(但しN>0)。このとき、p0
は、N-最短であるという。An embodiment of the present invention will be described below. First,
First, the terms related to the shortest path are defined as follows.
Let G be a directed graph with real-valued costs with nonnegative edges. Graph G has n vertices s,
It has t, u, v, ... and edges connecting these vertices. Vertex u
The cost of the edge <u, v> from the vertex to the vertex v is represented by c [u, v]. The cost cost (p) of the route p is the total cost of the edges on p. The shortest path from vertices s to t is the one with the lowest cost among the paths from s to t. Next, we define the concept of N-shortest in order to show the top N shortest routes. The path p0 is the path from vertex s to vertex t, and cost (p) <
At most N-1 other routes p from s to t that result in cost (p0)
It is assumed that there are only individual pieces (however, N> 0). At this time, p0
Is N-shortest.
【0011】例えばsからtまで4つの経路が存在してそ
れぞれのコストが4, 5, 8, 5であるならば、コスト5の
二つの経路はどちらも2-最短である。通常の意味の最短
経路は1-最短な経路と等しい。For example, if there are four routes from s to t and their costs are 4, 5, 8 and 5, then the two routes with cost 5 are both 2-shortest. The shortest path in the usual sense is equal to 1-the shortest path.
【0012】最短な経路が巡回経路を含むことはあり得
ない。しかし、N>1なるNについて、N-最短な経路が巡回
路を含むことはあり得る。The shortest route cannot include a patrol route. However, for N> 1 N, it is possible that the N-shortest path contains a tour.
【0013】本発明のアルゴリズムは、n個の頂点を持
つグラフGと始点s、終点t、及び欲しい経路の数Nが与え
られた時に、O(n2N2logN)の時間計算量で、N個のN-最短
な経路を出力する。Given the graph G having n vertices, the starting point s, the ending point t, and the number N of desired routes, the algorithm of the present invention has a time complexity of O (n 2 N 2 log N), Output N N-shortest paths.
【0014】ここで、ある頂点uから終点としての頂点t
までの最短経路のコストh(u)が分かっていたとしよう。
そして、ビームサーチの部分経路Xiの評価をいままでた
どった経路のコストg(Xi)と、今後にかかる最低のコス
トh(xi)の和f(Xi)=g(Xi)+h(xi)で行なう(図2)。以下、
このような経路展開を頂点tまで、コストが上位N位ま
での最短経路について逐次的に進めて行く(図3)。こ
こで、子文字の1〜nは部分経路Xが現在位置a、次の位
置a+1における頂点である。f(X1)が最小であるよう
な部分経路X1は、全体の最短経路の部分経路になってい
る。なぜなら、他の部分経路Xを通る経路は少なくともf
(X)(>=f(X1))のコストを持つことが保証されているから
である。Here, from a certain vertex u to a vertex t as an end point
Suppose we knew the cost h (u) of the shortest path to.
Then, f (Xi) = g (Xi) + h (xi), which is the sum of the cost g (Xi) of the path that has hitherto evaluated the partial path Xi of the beam search and the lowest cost h (xi) in the future. (Figure 2). Less than,
Such route development is sequentially advanced to the vertex t and the shortest route with the highest cost to the top N (FIG. 3). Here, the child characters 1 to n are vertices at the current position a and the next position a + 1 of the partial path X. The partial path X1 for which f (X1) is the minimum is a partial path of the shortest path of the whole. Because the path through the other partial path X is at least f
This is because it is guaranteed to have a cost of (X) (> = f (X1)).
【0015】グラフGの各頂点に、ゴール頂点tまでの最
短コストを与えるには、例えば、ゴール頂点tを始点と
してダイクストラ法を逆方向に適用すれば良い。つま
り、本発明の全体の処理は大きく分けて、各頂点にゴー
ル頂点tまでの最短コストを割り当てる、始点sからゴー
ル頂点tに向けて、評価関数fを使ってビームサーチす
る、の2ステップからなる。In order to give the shortest cost to the goal vertex t to each vertex of the graph G, for example, the Dijkstra method may be applied in the reverse direction starting from the goal vertex t. That is, the overall processing of the present invention is roughly divided into two steps: assigning the shortest cost to the goal vertex t to each vertex and performing beam search using the evaluation function f from the starting point s to the goal vertex t. Become.
【0016】次に、本発明の具体的な実施例を、図4〜
図11及び表1により説明する。まず、図4は、本発明
のグラフ最短経路探索装置の全体的な機能構成を示すも
のである。1は、解析対象となるグラフや解析の条件な
どを入力する入力手段、2は、入力されたグラフを記
憶、保持するグラフ保持手段、3は、グラフの経路中の
各頂点と終点との最短コストを算出する最短コスト算出
手段、4は、入力されたグラフの最短経路を探索する経
路展開手段、5は、経路展開結果を保持する解析路保持
手段、6は、展開結果を出力する解析路出力手段であ
る。本発明のグラフ探索装置は、最短コスト算出手段や
経路展開手段等のの各機能を処理する専用のマイクロ・
プロセッサや、メモリ等によって構成してもよいが、汎
用のコンピュータと、その記憶装置に保持(save)
されたプログラムとを用いて構成してもよい。Next, a concrete embodiment of the present invention will be described with reference to FIGS.
This will be described with reference to FIG. 11 and Table 1. First, FIG. 4 shows the overall functional configuration of the graph shortest path search device of the present invention. 1 is input means for inputting a graph to be analyzed and analysis conditions, 2 is graph holding means for storing and holding the input graph, and 3 is the shortest distance between each vertex and end point in the path of the graph. Shortest cost calculating means for calculating the cost, 4 is a route expanding means for searching the shortest route of the input graph, 5 is an analyzing path holding means for holding the path expanding result, and 6 is an analyzing path for outputting the expanding result. It is an output means. The graph search device of the present invention is a dedicated micro-processor that processes each function such as the shortest cost calculation means and the route expansion means.
Although it may be configured by a processor, memory, etc., it is stored in a general-purpose computer and its storage device (save).
It may be configured by using the created program.
【0017】図5は、汎用のコンピュータを用いて本発
明を実現した例を示す。図において、コンピュータ11
は、プロセッサ12、記憶装置13及び入出力チャネル
14を備えており、バス15を介して命令、指令あるい
はデータが相互に転送される。プロセッサ12は、演算
論理機構16及び制御機構17を有している。また、記
憶装置13は、データ・メモリ部18とプログラム・メ
モリ部19を有しており、データ・メモリ部18には、
グラフ保持手段2としてのグラフ記憶エリア20と、解
析路保持手段5としての経路記録エリア21とがある。
プログラム・メモリ部19に格納されたプログラムに
は、プロセッサ12と共に最短コスト算出手段3を構成
する最短コスト算出部22及び、プロセッサ12と共に
経路展開手段4を構成する経路展開部23とがある。2
4は、入出力制御装置であり、入力手段1としての入力
装置25、解析路出力手段6としての表示装置26や外
部記憶装置27と入出力チャネル14とを接続してい
る。プログラム・メモリ部19に格納されたプログラム
のアルゴリズムは表1に示すとおりである。FIG. 5 shows an example in which the present invention is realized by using a general-purpose computer. In the figure, a computer 11
Is provided with a processor 12, a storage device 13 and an input / output channel 14, and instructions, commands or data are mutually transferred via a bus 15. The processor 12 has an arithmetic logic unit 16 and a control unit 17. Further, the storage device 13 has a data memory unit 18 and a program memory unit 19, and the data memory unit 18 includes:
There is a graph storage area 20 as the graph holding means 2 and a route recording area 21 as the analysis path holding means 5.
The programs stored in the program memory unit 19 include a shortest cost calculation unit 22 that constitutes the shortest cost calculation unit 3 together with the processor 12 and a route expansion unit 23 that constitutes the route expansion unit 4 together with the processor 12. Two
An input / output control device 4 connects the input device 25 as the input means 1, the display device 26 as the analysis path output means 6 and the external storage device 27 to the input / output channel 14. The algorithm of the program stored in the program memory unit 19 is as shown in Table 1.
【0018】 表1 経路探索アルゴリズム グラフG、始点s、終点t、求める解の個数Nを入力する。 (1) Dijkstra法によって、 各頂点uにゴールまでの最短コストh[u]を与える。 (2) F ← {<s,0,h[s], null>} (3) while true (4) F' ←φ (5) Fの各要素X=<u,g,f,p>について (6) if u=ver(p)=t then F' ← F' ∪{X} (7) else v ∈ out[u]について (8) g' ← g + c[u,v] (9) f' ← g' + h[v] (10) p' ← X (11) F' ← minN(F' ∪ {<v,g',f',p'>}) (12) if F = F' then break (13) F ← F' (14) Fの各要素を逆にたどって、解経路を出力する (15)Table 1 Path Search Algorithm Graph G, start point s, end point t, and number N of solutions to be obtained are input. (1) The shortest cost h [u] to the goal is given to each vertex u by the Dijkstra method. (2) F ← {<s, 0, h [s], null>} (3) while true (4) F '← φ (5) Regarding each element of F X = <u, g, f, p> (6) if u = ver (p) = t then F '← F'∪ {X} (7) About else v ∈ out [u] (8) g' ← g + c [u, v] (9) f '← g' + h [v] (10) p '← X (11) F' ← minN (F '∪ {<v, g', f ', p'>}) (12) if F = F 'then break (13) F ← F' (14) Trace each element of F in reverse and output the solution path (15)
【0019】次に、この表1のアルゴリズムを図8のフ
ロー・チャートによって詳細に説明する。まず、ステッ
プ802において、グラフG、始点s、終点t、求める解
の個数Nを入力する(アルゴリズムの1行)。これらの
入力値は、データ・メモリ部18のグラフ記憶エリア2
0に保持される。図6にこのデータ構造の様子を示し、
そのグラフ記憶エリアには、各頂点の相対アドレス30
とともに、グラフの内容32すなわち、 out[u] ... 頂点uからでる辺の行き先の頂点集合 c[u,v] ... 頂点uから頂点vへの辺のコスト が記憶される。また、各頂点には、 h[u] ... 頂点uから終点tへの最短コスト を記憶する領域が付与される。さらに対応する辺のリス
トへのポインタが示される。Next, the algorithm of Table 1 will be described in detail with reference to the flow chart of FIG. First, in step 802, the graph G, the starting point s, the ending point t, and the number N of solutions to be obtained are input (one line of the algorithm). These input values are stored in the graph storage area 2 of the data memory unit 18.
It is held at 0. Figure 6 shows how this data structure looks like.
The graph storage area has a relative address of 30 for each vertex.
At the same time, the contents 32 of the graph, that is, out [u] ... The vertex set c [u, v] of the destination of the edge coming out of the vertex u ... The cost of the edge from the vertex u to the vertex v is stored. In addition, an area for storing the shortest cost from h [u] ... vertex u to end point t is given to each vertex. Furthermore, a pointer to the list of corresponding edges is shown.
【0020】次のステップ804で、各頂点uから終点t
までの最短コストh[u]を計算し、それをデータ・メモリ
部18の径路記憶エリア21に格納する(表1のアルゴ
リズムの(2)行)。径路記録エリアの構造は図7のとお
りであり、各頂点の相対アドレス30とともに、部分経
路の集合Fの内容34が記録される。その詳細について
は、後で述べる。At the next step 804, from each vertex u to the end point t.
The shortest cost h [u] up to is stored in the path memory area 21 of the data memory unit 18 (row (2) of the algorithm in Table 1). The structure of the path recording area is as shown in FIG. 7, and the relative address 30 of each vertex and the content 34 of the set F of partial paths are recorded. The details will be described later.
【0021】最短コストh[u]の計算は、例えば図9に示
すようなダイクストラ法によって行う。Sは、既にh[u]
が確定した頂点の集合である。終点tについては、常にh
[u]=0なのでtをSの初期値とする(ステップ90
2)。最短コストh[u]の計算は、まず、各頂点iのh[i]
を各頂点iから終点tへの辺のコストc[i,t]で初期化する
(ステップ904)。次に、各頂点iについて、頂点V
−Sの中でh[i]が最も小さい要素をwとし(ステップ9
08)、それをh[i]が確定した頂点の集合Sに加え(ス
テップ910)、頂点V−Sの各要素 vについて、min
(h[i],h[w]+c[v,w]を最短コストh[v]とする(ステッ
プ912)。なお、求める解の個数Nを入力するステッ
プ(図8のステップ802)は、最短コストを計算する
ステップ804の後であってもさしつかえない。The shortest cost h [u] is calculated by the Dijkstra method as shown in FIG. 9, for example. S is already h [u]
Is a set of confirmed vertices. For the end point t, always h
Since [u] = 0, t is the initial value of S (step 90).
2). The shortest cost h [u] is calculated by first calculating h [i] of each vertex i.
Is initialized with the cost c [i, t] of the edge from each vertex i to the end point t (step 904). Next, for each vertex i, the vertex V
Let w be the element with the smallest h [i] in S (step 9
08), add it to the set S of vertices for which h [i] has been determined (step 910), and for each element v of the vertex VS, min
(H [i], h [w] + c [v, w] is set as the shortest cost h [v] (step 912). Note that the step of inputting the number N of solutions to be obtained (step 802 of FIG. 8) is It can be after step 804 of calculating the shortest cost.
【0022】図8にもどって、ステップ806〜828
で経路展開を実行している。これは、表1のアルゴリズ
ムの(3)行から(14)行までに相当する。最初にFの内
容を初期化する(ステップ806)。Fは探索中にN個の
部分経路を記憶するする順序つきの集合である。Fの要
素は、<u,g,f,p>という4つ組みであり、 u ... 現在の頂点 g ... 今までの経路のコスト f ... g+h(u)(この部分経路を通る最短の経路のコ
スト) p ... 直前の経路 を表す4つ組みである。この4つ組みは、データ・メモ
リ部18の経路記録エリア21に格納される。従って、
Fの初期値は、uが始点s、gがゼロ、fがh(s)、pが無、す
なわち、<s、0、h(s)、null>となる。次のステップ8
08で新たに求められるFをF'と定義し、Fの各要素X=
<u,g,f,p>について、ステップ812以下の処理を展開
する。Returning to FIG. 8, steps 806 to 828.
The route expansion is being executed at. This corresponds to lines (3) to (14) of the algorithm in Table 1. First, the contents of F are initialized (step 806). F is an ordered set that stores N subpaths during the search. The elements of F are a quartet of <u, g, f, p>, where u ... current vertex g ... cost of the route so far f ... g + h (u) (this The cost of the shortest route that passes through a partial route) p ... is a set of four that represents the immediately preceding route. This quadruplet is stored in the route recording area 21 of the data memory unit 18. Therefore,
The initial value of F is such that u is the starting point s, g is zero, f is h (s), and p is nothing, that is, <s, 0, h (s), null>. Next step 8
The newly obtained F in 08 is defined as F ′, and each element of F is X =
With respect to <u, g, f, p>, the processing of step 812 and thereafter is expanded.
【0023】ステップ812におけるver(p)はその経路
における直前の頂点である。便宜上、終点tについて、c
[t,t]=0なる辺があると仮定する。終点tに行きつくまで
は、v ∈ out[u]について以下の処理を実行する。今ま
での経路のコストを更新する。 g' ← g + c[u,v] (ステップ816) この径路を通る最短径路のコストを計算する。 f' ← g' + h[v] (ステップ818) 後で解析路を出力するのに備えて、直前の径路へのポ
インタを張る。 p' ← X (ステップ820) fに基づいて枝刈りをする。 F' ← min_N(F' ∪ {<v,g',f',p'>}) (ステップ822) ここで、min_N(F)は、Fの要素の内、コストの低いものN
個を返す関数である。ステップ828で、Fの更新を行
い、以下u=tすなわち、終点tに行きつくまで、同様の処
理を繰り返す。ステップ812において、終点tに行き
ついたとき、この辺を一度通った経路(つまりu=ver(p)=
tなる経路)は、もうそれ以上展開されることはない。ア
ルゴリズム終了時には、FにはN-最短な最高N個の解が入
っている。Fは、始点sから終点tまでの経路が存在しな
ければ空集合であるし、経路の数がNより少なければ要
素数が、Nより少ないこともある。しかし、sからtへの
経路の数がNより大きければ、Fの要素数は必ずNであ
る。Ver (p) in step 812 is the previous vertex in the path. For convenience, for the end point t, c
Suppose there is an edge such that [t, t] = 0. The following processing is executed for v ∈ out [u] until the end point t is reached. Update the cost of the route so far. g ′ ← g + c [u, v] (step 816) The cost of the shortest path passing through this path is calculated. f '← g' + h [v] (step 818) A pointer to the previous path is set in preparation for outputting the analysis path later. p ′ ← X (step 820) Pruning is performed based on f. F '← min_N (F' ∪ {<v, g ', f', p '>}) (step 822) where min_N (F) is the element of F with the lowest cost N
This is a function that returns a number. In step 828, F is updated, and u = t, that is, the same processing is repeated until the end point t is reached. In step 812, when the end point t is reached, a route that passes through this side once (that is, u = ver (p) =
The route t) will not be expanded anymore. At the end of the algorithm, F contains N-the shortest maximum N solutions. F is an empty set if there is no route from the start point s to the end point t, and the number of elements may be less than N if the number of routes is less than N. However, if the number of paths from s to t is greater than N, then the number of elements in F is always N.
【0024】なお、ステップ822において、 min_N
を、min_Eすなわち、コストが、最小コストのE倍以内
のものを返す関数に置き換えれば、コスト最小の径路の
E倍以内の複数のコスト最短径路を求めることができ
る。In step 822, min_N
Is replaced with min_E, that is, a function that returns a cost within E times the minimum cost, a plurality of cost shortest paths within E times the minimum cost path can be obtained.
【0025】ステップ830(表1のアルゴリズムの
(15)行)で、Fの各要素<t,g,f,p>から直前の径路を
次々に逆に辿って、できあがった解経路を出力する。Step 830 (of the algorithm of Table 1
In line (15), the immediately preceding paths are sequentially reversed from each element <t, g, f, p> of F to output the completed solution path.
【0026】求める解の数NをN=3として、図10を使っ
てアルゴリズムの実行を追ってみよう。頂点1が始点で
あり、頂点5が終点であるとする。表1のアルゴリズム
の前半では、頂点5から始まってダイクストラ法を適用
し、各頂点uにh[u]の値を割り当てる。この結果の一例
が、図6にグラフ記憶エリア20の内容として示されて
いる。また、紙面の都合で、Fの要素の第4コンポーネ
ントpの値はver(p)で代用してある。Let us assume that the number N of solutions to be obtained is N = 3 and follow the execution of the algorithm with reference to FIG. It is assumed that vertex 1 is the starting point and vertex 5 is the ending point. In the first half of the algorithm of Table 1, starting from vertex 5, the Dijkstra method is applied and each vertex u is assigned a value of h [u]. An example of this result is shown in FIG. 6 as the contents of the graph storage area 20. Also, due to space limitations, the value of the fourth component p of the F element is substituted by ver (p).
【0027】この状態で、表1のアルゴリズムの後半、
すなわちビームサーチを実行する。このサーチは、頂点
1から始まる。したがって、部分経路の集合Fの初期値
は、図11にIter1として示すとおり、 {<1,0,60,
null>}である。次のループでは、頂点1からの辺がすべ
て展開される。ここで、頂点1からでる辺の行き先の頂
点集合out[1]は、{2,4,5}であり、頂点1から
頂点2への辺のコストc[1,2]は10、頂点1から頂点
4への辺のコストc[1,4]は30、頂点1から頂点5へ
の辺のコストc[1,5]は100である。また、頂点2,
4,5を経由するものについて、頂点1から終点5への
最短コストfは、それぞれ、70、60 、100であ
る。よって、展開の結果は、最短コストfの小さい順
に、 {<4,30,60,1>,<2,10,70,1>,<5,100,100,1>}(Iter2) となる。さらにこれらを展開すると、 {<3,50,60,4>,<3,60,70,2>,<5,90,90,4>,<5,100,100,5>} (Iter3) が得られる。このIter1〜3の状態は図7に示す
ようにグラフ記憶エリア20に記録される。このIte
r3の状態は求める解の数N=3を越えているので、 下位
の<5,100,100,5>が捨てられ、コストの小さい上位の3
つが残される。次のループで、 {<5,60,60,3>,<5,70,70,3>,<5,90,90,5>} (Iter3) が得られるが、これらはすべて終点に達した経路なの
で、アルゴリズムが終了する。実際の解は、ここから直
前の頂点pを逆にたどっていくことによって得られ、そ
れらは、 1位 1 → 4 → 3 → 5 (cost=60) 2位 1 → 2 → 3 → 5 (cost=70) 3位 1 → 4 → 5 (cost=90) である。In this state, the latter half of the algorithm of Table 1,
That is, the beam search is executed. This search starts at vertex 1. Therefore, the initial value of the set F of partial routes is {<1,0,60,
null>}. In the next loop, all edges from vertex 1 are expanded. Here, the destination vertex set out [1] from the vertex 1 is {2,4,5], and the edge cost c [1,2] from the vertex 1 to the vertex 2 is 10 and the vertex 1 is The cost c [1,4] of the edge from the vertex 1 to the vertex 4 is 30, and the cost c [1,5] of the edge from the vertex 1 to the vertex 5 is 100. Also, vertex 2,
The shortest cost f from the vertex 1 to the end point 5 is 70, 60, and 100, respectively, through the routes 4 and 5. Therefore, the result of the expansion is {<4,30,60,1>, <2,10,70,1>, <5,100,100,1>} (Iter2) in ascending order of the shortest cost f. Further expanding these, we obtain {<3,50,60,4>, <3,60,70,2>, <5,90,90,4>, <5,100,100,5>} (Iter3). The states of Iter 1-3 are recorded in the graph storage area 20 as shown in FIG. This Ite
Since the state of r3 exceeds the number of solutions to be sought N = 3, the lower <5,100,100,5> is discarded, and the higher 3
One is left. In the next loop, we get {<5,60,60,3>, <5,70,70,3>, <5,90,90,5>} (Iter3), but they all reach the end point Since it is the route that was done, the algorithm ends. The actual solution is obtained by tracing the previous vertex p in reverse from here, and they are 1st place 1 → 4 → 3 → 5 (cost = 60) 2nd place 1 → 2 → 3 → 5 (cost = 70) 3rd place 1 → 4 → 5 (cost = 90).
【0028】このように、本発明によれば、ダイクスト
ラ法とビームサーチの組み合わせにより、最短なN個の
経路を得ることが出来る。ダイクストラ法のみであれ
ば、前にも述べたとおり、第1位の経路は得られるが、
複数の最適な経路を得ることはできない。一方、ビーム
サーチだけでも最適解を得ることはできない。これを図
12で説明する。図はビームサーチがkステップ進んだ
状態を示している。部分経路Xiは、初期状態からたどっ
た辺のコストの和g(Xi)でソートされていて、そのうち
上位N位のものが保持されている。ここでの最良の部分
経路X1を伸ばしていったものはしかし、全体として最短
になることは保証されない。X1から終点tまでのコスト
が急速に悪化して、他の経路がより良い解として浮上し
てくるかもしれないからである。As described above, according to the present invention, the shortest N paths can be obtained by the combination of the Dijkstra method and the beam search. If only Dijkstra's method is used, as mentioned earlier, the first route can be obtained,
It is not possible to obtain multiple optimal routes. On the other hand, the beam search alone cannot obtain the optimum solution. This will be described with reference to FIG. The figure shows a state in which the beam search has advanced k steps. The partial route Xi is sorted by the sum g (Xi) of the costs of the sides traced from the initial state, and the top N of them are retained. However, it is not guaranteed that the best partial path X1 here is the shortest as a whole. This is because the cost from X1 to the end point t may deteriorate rapidly and other routes may emerge as better solutions.
【0029】以上述べた本発明と従来例の比較を整理す
ると表2のようになる。 Table 2 shows a summary of the comparison between the present invention described above and the conventional example.
【0030】つぎに、本発明を日本語の形態素解析に応
用した例について述べる。べた書きの日本語文から文節
や語の境界を切り出す、いわゆる形態素解析は、正規文
法(タイプ3文法)の範囲で非常によく記述できること
が知られている。ここで、解析の適格性は、語の出現頻
度に応じたコスト関数の和によって与えられるものと仮
定する。コストの小さな解析結果がより適格な解析結果
である。この仮定によって、形態素解析の最適解を求め
る問題は、グラフの最短経路問題に帰着することができ
る。例えば、「北大西洋」という複合名詞を解析する
と、「北」「大」「西」「洋」「北大」「大西」「西
洋」「大西洋」がいずれも正しい名詞あるいは固有名詞
あるいは接辞であるので(例えば、「北大」は、北海道
大学、「大西」は、人名等)、 北・大・西・洋 北・大・西洋 北・大西・洋 北大・西・洋 北大・西洋 北・大西洋 という、6つの解釈が文法的には可能である。入力スト
リングに対して正規文法の適用結果をトレリスに展開
し、これを図13に示すように、グラフで表し、それぞ
れの辺に図のように語の頻度情報に基づいたコストを与
えると、上位N位の解釈を得るのに本発明の手法を使う
ことができる。Next, an example in which the present invention is applied to Japanese morphological analysis will be described. It is known that so-called morphological analysis, which cuts out clauses and word boundaries from a solid Japanese sentence, can be described very well in the range of regular grammar (type 3 grammar). Here, it is assumed that the eligibility of analysis is given by the sum of cost functions according to the frequency of occurrence of words. An analysis result with a small cost is a more qualified analysis result. With this assumption, the problem of finding the optimum solution for morphological analysis can be reduced to the shortest path problem of the graph. For example, if you analyze the compound noun "North Atlantic", "North""Great""West""West""Hokkaido""Onishi""West""Atlantic" are all correct nouns or proper nouns or affixes. (For example, "Hokkaido" means Hokkaido University, "Onishi" means a person's name, etc.), North / Large / West / West North / Large / West North / Large West / West Hokkaido University / West / West Hokkaido Univ./West North / Atlantic, Six interpretations are possible grammatically. When the result of applying the regular grammar to the input string is expanded into a trellis, and this is represented by a graph as shown in FIG. 13, and each side is given a cost based on the word frequency information as shown in the figure, the higher rank is obtained. The technique of the present invention can be used to obtain an N-position interpretation.
【0031】日本語形態素解析の場合、グラフが閉路を
含まない非巡回グラフなので、グラフの頂点の位相的な
順序を用いれば、終点との最短コスト算出と経路展開を
より高速に実行することができる。非巡回グラフの位相
的な順序とは、u → v という辺があった時に、 u <
v とする順序付けのことであり、図13における、s<
v1 < v2 < v3< t は、このグラフの位相的順序であ
る。従って、最短コスト算出(図8のステップ804)
については、図14に示すようなアルゴリズムを用いる
ことができる。すなわち、グラフGを位相的順序で整列
し(1402)、各頂点iから終点tへの辺のコストc[i,
t]を、頂点iから終点tへの最短コストh[i]の初期値とし
(ステップ1404)、各頂点uを位相的順序の逆順で
とりながら、v ∈out[u]について、min(h[v],h[u]+c
[v,u]を最短コストh[u]とする(ステップ1408)。
この例では、上位3位は、 北・大西洋 (コスト0.5) 北大・西洋 (コスト0.6) 北・大・西洋(コスト0.7) が得られる。In the case of Japanese morphological analysis, since the graph is an acyclic graph that does not include a closed cycle, if the topological order of the vertices of the graph is used, the shortest cost calculation with the end point and the route expansion can be executed at higher speed. it can. The topological order of an acyclic graph means that if there is an edge u → v, u <
v is the ordering, and s <in FIG.
v1 <v2 <v3 <t is the topological order of this graph. Therefore, the shortest cost calculation (step 804 in FIG. 8)
For, the algorithm as shown in FIG. 14 can be used. That is, the graph G is arranged in a topological order (1402), and the cost c [i, of the edge from each vertex i to the end point t is
Let t] be the initial value of the shortest cost h [i] from the vertex i to the end point t (step 1404), and take each vertex u in the reverse topological order, and for v ∈ out [u], min (h [v], h [u] + c
Let [v, u] be the shortest cost h [u] (step 1408).
In this example, the top three are North / Atlantic (cost 0.5) North Atlantic / West (cost 0.6) North / Atlantic (cost 0.7).
【0032】なお、枝刈りの条件を上位N位ではなく、
最短経路からの誤差が一定値以内、あるいは、最短経路
から一定の倍率以内、のように解析条件を適宜設定する
ことによって、最良解とのコストの差が一定の条件以内
のすべての解を見つけることもできる。Note that the pruning condition is not the top N but
Find all the solutions whose cost difference from the best solution is within a certain condition by appropriately setting the analysis conditions such that the error from the shortest route is within a certain value or within a certain scale factor from the shortest route. You can also
【0033】本発明はまた、同じグラフについてグラフ
の始点sや終点tあるいは求める解の個数Nを変えて繰り
返し解析出力するような応用も考えられる。このような
ときは、予めグラフG及びそのコストについてデータべ
ースを作成し、後のステップで始点s、終点tあるいは解
析条件Nの変更値を入力することにより、同じグラフGの
データを繰り返し利用する事も出来る。The present invention can also be applied to the same graph in which the starting point s and the ending point t of the graph or the number N of solutions to be obtained are changed and repeatedly analyzed and output. In such a case, create a database for the graph G and its cost in advance, and repeat the same graph G data by inputting the start point s, the end point t, or the changed value of the analysis condition N in a later step. You can also use it.
【0034】このような観点で本発明を、自動車の現在
位置から目的位置に至る最短ルートを探索し表示する、
車載ナビゲーション・システムに適用した例について、
図15〜図18により説明する。図15において、ま
ず、グラフとしての、道路網情報を入力する(1502
〜1504)。この道路網情報には、図16に示すよう
に、ある特定の地域、例えば日本全国の、都市名A1〜
An、各都市間の距離もしくは所要時間等のコストc[v,
u]が付加されているものとする。コストは、厳密には、
対称性が無い、例えば一方通行、坂道等のため都市間の
所要時間が方向によって差を生じることが考えられる。
方向による差が小さい、すなわち、実質的に対称性があ
るときは、コスト、c[v,u]=c[u,v]として後の計算を簡
略化することもできる。次に、ある都市Aiをs頂点、
他の各都市をゴール頂点tとし、ゴール頂点tを始点とし
てダイクストラ法を逆方向に適用し、都市Aiと他の各
都市間の最短コストhi[u]の算出を行う。なお、ダイク
ストラ法の逆方向適用は、s頂点(都市Ai)から頂点t
(他の各都市)に向かう方向のコストc[v,u]について、
逆方向にコスト計算するものである事は言うまでもな
い。以下、全ての都市をs頂点として同様な処理を行う
(1506〜1508)。From this point of view, the present invention searches and displays the shortest route from the current position of the automobile to the destination position.
Regarding an example applied to an in-vehicle navigation system,
This will be described with reference to FIGS. In FIG. 15, first, road network information as a graph is input (1502).
~ 1504). As shown in FIG. 16, the road network information includes city names A1 to A1 in a specific area, for example, all over Japan.
Costs such as An and the distance between cities or required time c [v,
u] is added. The cost is strictly
Since there is no symmetry, for example, one-way traffic, slopes, etc., the required time between cities may differ depending on the direction.
When the difference due to the direction is small, that is, when there is substantially symmetry, the cost, c [v, u] = c [u, v] can be set to simplify the subsequent calculation. Next, a certain city Ai is the s vertex,
The other cities are set as goal vertices t, and the Dijkstra method is applied in the reverse direction starting from the goal vertices t to calculate the shortest cost hi [u] between the city Ai and each of the other cities. Note that the Dijkstra method is applied in the backward direction from s vertex (city Ai) to vertex t
For the cost c [v, u] in the direction toward (other cities),
It goes without saying that the cost is calculated in the opposite direction. Hereinafter, similar processing is performed with all cities as s vertices (1506 to 1508).
【0035】最短コストの計算には、先に述べたタイク
ストラの方法に代えて、Floyd−Marshall
法や、Jhonson法等のAll−pair Sho
rtest Algorithm を使ってもよい。予
め、最短コストの計算を行って、入力された全ての都市
の間の最短コストhi[u]を求め、グラフ記憶エリア20
に保持し、上記ステップ(1502〜1508)を省略
してもよく、これによって、経路探索の処理時間を大幅
に短縮できる。図17に各都市間の最短コスト表の一例
を示し、全ての都市A1〜An間の最短コストhi[u]が
テーブル化さてれいる。もしこの最短コストに対称性が
あるときは、テーブルの上側半分の三角行列だけを記憶
すればよい。また、テーブルは、時間、距離等異なる観
点のコストのものを複数種類用意しておき、ユーザに選
択の自由度を与えるようにしてもよい。これらの最短コ
ストのテーブルは道路網情報とともに、記憶装置13の
データ・メモリ18(図5)に保持される。For the calculation of the shortest cost, instead of the above-mentioned Tykstra method, Floyd-Marshall is used.
Method and All-pair Sho such as Jhonson method
The rtest Algorithm may be used. The shortest cost is calculated in advance to find the shortest cost hi [u] between all input cities, and the graph storage area 20
, And the above steps (1502 to 1508) may be omitted, whereby the processing time for route search can be greatly reduced. FIG. 17 shows an example of the shortest cost table between cities, and the shortest cost hi [u] among all the cities A1 to An is tabulated. If this shortest cost is symmetric, then only the triangular matrix in the upper half of the table need be stored. In addition, a plurality of types of tables having different costs such as time and distance may be prepared to give the user a degree of freedom in selection. These shortest cost tables are stored in the data memory 18 (FIG. 5) of the storage device 13 together with the road network information.
【0036】次に、ユーザから、任意の二つの都市、ス
タート地点とゴール地点、の入力を受ける(ステップ1
510〜1512)。また、探索条件、例えば上位N位
までの最短ルート、の入力を受ける(ステップ1514
〜1516)。いすれの場合も、入力に変更がないとき
はそのまま次のステップに進む。その後ビームサーチを
行って(ステップ1518)、解径路を出力する(ステ
ップ1520)。図18に解析結果の出力例を示す。Next, the user inputs the two arbitrary cities, the start point and the finish point (step 1).
510-1512). Also, the search condition, for example, the shortest route to the top N is received (step 1514).
~ 1516). In either case, if there is no change in the input, proceed directly to the next step. After that, a beam search is performed (step 1518) and the solution path is output (step 1520). FIG. 18 shows an output example of the analysis result.
【0037】本発明はこの外にも、文字認識、通信径路
やロボット移動径路の探索等、複数の最適解を求める必
要のある分野に広く応用出来る。In addition to the above, the present invention can be widely applied to fields in which it is necessary to obtain a plurality of optimum solutions, such as character recognition, search for communication paths and robot movement paths.
【0038】[0038]
【発明の効果】以上のように、本発明は非負のコストを
もつ任意の有向グラフについて、その始点から終点に至
る経路のうち、最適性の保証された複数の解を高速に求
めることが出来る。最短経路問題はネットワーク問題の
うちの最も基本的なものの一つであるので、広い応用分
野をもち、その産業的なメリットは大きい。As described above, according to the present invention, with respect to an arbitrary directed graph having a non-negative cost, it is possible to quickly obtain a plurality of solutions of which optimality is guaranteed among the paths from the start point to the end point. Since the shortest path problem is one of the most basic network problems, it has a wide range of applications and its industrial advantages are great.
【図1】本発明におけるグラフの最短経路に関する用語
の定義を説明する図である。FIG. 1 is a diagram illustrating definitions of terms related to a shortest path of a graph according to the present invention.
【図2】本発明の原理を示すもので、現在位置aにおけ
る、グラフの経路展開の状況を示す。FIG. 2 shows the principle of the present invention and shows the state of route expansion of a graph at the current position a.
【図3】図2の次のステップ、現在位置a+1におけ
る、グラフの経路展開の状況を示す。FIG. 3 shows the state of route expansion of the graph at the next step of FIG. 2, the current position a + 1.
【図4】本発明のグラフ最短経路探索装置の全体的な機
能構成を示すものである。FIG. 4 shows an overall functional configuration of the graph shortest path search device of the present invention.
【図5】汎用のコンピュータを用いて本発明のグラフ最
短経路探索装置を構成した例を示す。FIG. 5 shows an example in which the graph shortest path search device of the present invention is configured using a general-purpose computer.
【図6】図5のグラフ記憶エリアのデータ構造の一例を
示す。6 shows an example of the data structure of the graph storage area of FIG.
【図7】図5の経路記録エリア21のデータ構造一例を
示す。7 shows an example of a data structure of a route recording area 21 of FIG.
【図8】経路探索アルゴリズムの詳細を示すフロー・チ
ャートである。FIG. 8 is a flow chart showing details of a route search algorithm.
【図9】図8における、最短コストh[u]の計算をダイク
ストラ法によって行う場合のフロー・チャートである。FIG. 9 is a flow chart when the shortest cost h [u] in FIG. 8 is calculated by the Dijkstra method.
【図10】図8のアルゴリズムの実行例を説明する図で
ある。FIG. 10 is a diagram illustrating an example of executing the algorithm of FIG.
【図11】図10の経路展開の状況を示す図である。11 is a diagram showing a situation of route expansion of FIG.
【図12】従来例のビームサーチの問題点を説明する図
である。FIG. 12 is a diagram illustrating a problem of a beam search of a conventional example.
【図13】本発明を日本語の形態素解析に応用した例を
説明する図である。FIG. 13 is a diagram illustrating an example in which the present invention is applied to Japanese morphological analysis.
【図14】図14の最短コスト算出のステップの一例を
示す図である。FIG. 14 is a diagram showing an example of steps of calculating the shortest cost in FIG.
【図15】本発明を車載ナビゲーション・システムに適
用した例のフロー・チャートである。FIG. 15 is a flow chart of an example in which the present invention is applied to a vehicle-mounted navigation system.
【図16】図15における、グラフとしての道路網情報
の例を示す図である。16 is a diagram showing an example of road network information as a graph in FIG.
【図17】図15における、全ての都市1〜n間の最短
コストhi[u]のテーブルの例を示す図である。17 is a diagram showing an example of a table of the shortest costs hi [u] among all the cities 1 to n in FIG.
【図18】図15の例による、解径路を出力例を示す図
である。FIG. 18 is a diagram showing an output example of the unraveling path according to the example of FIG. 15;
1 ... 入力手段 2 ... グラフ保持手段 3 ... 最短コスト算出手段 4 ... 経路展開手段 5 ... 解析路保持手段 6 ... 解析路出力手段 out[u] ... 頂点uからでる辺の行き先の頂点集合 c[u,v] ... 頂点uから頂点vへの辺のコスト h[u] ... 頂点uから終点tへの最短コスト 1 ... Input means 2 ... Graph holding means 3 ... Shortest cost calculation means 4 ... Route expansion means 5 ... Analysis path holding means 6 ... Analysis path output means out [u] .. . The set of destination vertices of the edge that comes from vertex u c [u, v] ... the cost of the edge from vertex u to vertex v h [u] ... the shortest cost from vertex u to endpoint t
Claims (17)
力手段を備えたグラフ探索装置によって、与えられたグ
ラフについて経路を探索し、出力するグラフ探索方法に
おいて、 前記入力手段によって、頂点間の辺に実数値のコストが
付いた有向グラフGと、その中の特定の2頂点を始点s及
び終点tとして与えるグラフ入力ステップと、 複数の経路を解析するための条件を入力する条件設定ス
テップと、 前記有向グラフGを前記記憶手段に記憶するグラフ保持
ステップと、 前記演算処理手段により、前記有向グラフGの任意のノ
ードと終点tとの最短コストを算出する最短コスト算出
ステップと、 前記演算処理手段により、前記有向グラフGの始点sから
の部分経路を、始点sからのコストの累積と、残りの経
路の前記最短コストとの和に基づき、前記設定条件にし
たがって下位の経路を枝刈りしながら、逐次的に展開す
る経路展開ステップと、 展開された複数の前記部分経路を前記記憶手段に保持す
るための部分経路保持ステップと、 探索が終了した時点で前記記憶手段に保持されている前
記複数の部分経路を前記出力手段に出力する解経路出力
ステップを有する、 ことを特徴とするグラフ探索方法。1. A graph search method for searching and outputting a path for a given graph by a graph search device comprising an input means, an arithmetic processing means, a storage means and an output means, wherein the input means is used to connect between vertices. A directed graph G with real-valued costs on the edges, a graph input step that gives two specific vertices as the start point s and end point t, and a condition setting step that inputs conditions for analyzing multiple routes, A graph holding step of storing the digraph G in the storage means, a shortest cost calculation step of calculating the shortest cost of any node and the end point t of the digraph G by the arithmetic processing means, and the arithmetic processing means, The partial path from the starting point s of the directed graph G, based on the sum of the accumulated cost from the starting point s and the shortest cost of the remaining paths, A route expansion step of sequentially expanding the lower routes according to the setting conditions, a partial route holding step of holding the plurality of expanded partial routes in the storage means, and a search ending A graph search method comprising: a solution path output step of outputting the plurality of partial paths held in the storage means at the time point to the output means.
終点tまでの最短コストを算出する,ことを特徴とする請
求項1記載のグラフ探索方法。2. The graph search method according to claim 1, wherein in the shortest cost calculating step, the Dijkstra method is applied in a reverse direction to calculate the shortest cost to the end point t of each vertex. ..
フ解析法によって、各頂点のゴール頂点までの最短コス
トを求める,ことを特徴とする請求項1記載のグラフ探
索方法。3. The shortest cost calculating step, wherein the directed graph G is arranged in a topological order, and the shortest cost to each goal vertex of each vertex is obtained by an acyclic graph analysis method. 1. The graph search method described in 1.
コストの経路を求めるものであり、 前記経路展開ステップにおいて、前記有向グラフGの始
点sからの部分経路を、前記始点sからのコストの累積
と、残りの経路の前記最短コストとの和に基づき、前記
N位より下位の経路を枝刈りしながら、逐次的に展開す
る、 ことを特徴とする請求項1記載のグラフ探索方法。4. The setting condition is to obtain a route having a cost within N rank of the shortest cost, and in the route expanding step, a partial route from the starting point s of the digraph G is a cost from the starting point s. The graph search method according to claim 1, further comprising: pruning the routes lower than the Nth position based on the sum of the accumulation of the above and the shortest cost of the remaining routes, and sequentially expanding.
の最短コストの最大E倍までのコストを持つ経路を求め
るものであり、 前記経路展開ステップにおいて、前記有向グラフGの始
点sからの複数の部分経路を、始点sからのコストの累積
と残りの経路の前記最短コストとの和が、前記始点sか
ら終点tまでの最短コストのE倍より大きくなるものを
枝刈りしながら、逐次的に展開する、 ことを特徴とする請求項1記載のグラフ探索方法。5. The setting condition is to obtain a route having a cost up to E times the shortest cost from the start point s to the end point t. In the route expanding step, the route from the start point s of the directed graph G is calculated. Sequentially pruning a plurality of partial routes while pruning the sum of the accumulated cost from the starting point s and the shortest cost of the remaining routes being larger than E times the shortest cost from the starting point s to the end point t. The graph search method according to claim 1, wherein the graph search method according to claim 1.
る、 ことを特徴とする請求項1記載のグラフ探索方法。6. The graph search method according to claim 1, wherein, in the graph input step, a starting point s and an ending point t in the directed graph G are variable values.
文のトレリスであり、 前記グラフ入力ステップにおいて、前記トレリスと、そ
の中の特定の2頂点を始点s及び終点tとして与え、 前記最短コスト算出ステップにおいて、前記トレリスの
任意のノードと終点tとの最短コストを算出し、 前記経路展開ステップにおいて、前記始点sからのコス
トの累積と、残りの経路の最短コストとの和を使って前
記トレリスを頭からビームサーチし、与えられた前記文
について複数の最適な形態素の解を求める、 ことを特徴とする請求項1記載のグラフ探索方法。7. The directed graph G is a trellis of a sentence whose morphemes are to be analyzed, and in the graph input step, the trellis and two specific vertices therein are given as a start point s and an end point t, and the shortest cost In the calculating step, the shortest cost between any node of the trellis and the end point t is calculated, and in the route expanding step, the accumulated cost from the starting point s and the sum of the shortest cost of the remaining routes are used. The graph search method according to claim 1, wherein a beam search is performed on the trellis from the head to find a plurality of optimum morpheme solutions for the given sentence.
力手段を備えたグラフ探索装置によって、与えられたグ
ラフについて経路を探索し、出力するグラフ探索方法に
おいて、 前記入力手段によって、頂点間の辺に実数値のコストが
付いた有向グラフGを入力するグラフ入力ステップと、 前記有向グラフGを前記記憶手段に記憶するグラフ保持
ステップと、 前記演算処理手段により、前記有向グラフGの全ての頂
点間の最短コストを算出する最短コスト算出ステップ
と、 前記最短コストを前記記憶手段に記憶する最短コスト保
持ステップと、 前記頂点中の特定の2頂点を始点s及び終点tとして与え
かつ、 複数の経路を解析するための条件を入力する条
件設定ステップと、 前記演算処理手段により、前記有向グラフGの前記始点s
からの部分経路を、始点sからのコストの累積と、残り
の経路の前記最短コストとの和に基づき、前記設定条件
にしたがって下位の経路を枝刈りしながら、逐次的に展
開する経路展開ステップと、 展開された複数の前記部分経路を前記記憶手段に保持す
るための部分経路保持ステップと、 探索が終了した時点で前記記憶手段に保持されている前
記複数の部分経路を前記出力手段に出力する解経路出力
ステップを有する、 ことを特徴とするグラフ探索方法。8. A graph search method for searching and outputting a path for a given graph by a graph search device comprising an input means, an arithmetic processing means, a storage means and an output means, wherein the input means is used to connect between vertices. A graph input step of inputting a directed graph G with a real-valued cost on an edge, a graph holding step of storing the directed graph G in the storage means, and a shortest distance between all vertices of the directed graph G by the arithmetic processing means. A shortest cost calculating step of calculating a cost, a shortest cost holding step of storing the shortest cost in the storage means, and giving two specific vertices among the vertices as a start point s and an end point t, and analyzing a plurality of routes A condition setting step of inputting a condition for, and the start point s of the digraph G by the arithmetic processing means.
Based on the sum of the accumulated cost from the starting point s and the shortest cost of the remaining route, while sequentially pruning the lower route according to the setting conditions, the route expansion step And a partial path holding step for holding the plurality of expanded partial paths in the storage means, and outputting the plurality of partial paths held in the storage means to the output means when the search is completed. A graph search method, comprising:
力手段を備えたグラフ探索装置によって、与えられたグ
ラフについて経路を探索し、出力するグラフ探索方法に
おいて、 頂点間の辺に実数値のコストが付いた有向グラフG及び
前記有向グラフGの全ての頂点間の最短コストを前記記
憶手段に記憶するグラフ保持ステップと、 前記頂点中の特定の2頂点を始点s及び終点tとして与え
かつ、 複数の経路を解析するための条件を入力する条
件設定ステップと、 前記演算処理手段により、前記有向グラフGの前記始点s
からの部分経路を、始点sからのコストの累積と、残り
の経路の前記最短コストとの和に基づき、前記設定条件
にしたがって下位の経路を枝刈りしながら、逐次的に展
開する経路展開ステップと、 展開された複数の前記部分経路を前記記憶手段に保持す
るための部分経路保持ステップと、 探索が終了した時点で前記記憶手段に保持されている前
記複数の部分経路を前記出力手段に出力する解経路出力
ステップを有する、 ことを特徴とするグラフ探索方法。9. A graph search method for searching and outputting a path for a given graph by a graph search device comprising an input means, an arithmetic processing means, a storage means and an output means, wherein a real-valued value is present on edges between vertices. A graph holding step of storing the directed graph G with costs and the shortest cost between all vertices of the directed graph G in the storage means, and giving two specific vertices among the vertices as a start point s and an end point t, and A condition setting step of inputting a condition for analyzing a route, the arithmetic processing means, the starting point s of the directed graph G.
Based on the sum of the accumulated cost from the starting point s and the shortest cost of the remaining route, while sequentially pruning the lower route according to the setting conditions, the route expansion step And a partial path holding step for holding the plurality of expanded partial paths in the storage means, and outputting the plurality of partial paths held in the storage means to the output means when the search is completed. A graph search method, comprising:
・システムであり、 前記有向グラフGが、道路網情報で
あり、 前記経路展開ステップにおいて、前記始点sからのコス
トの累積と、残りの経路の最短コストとの和を使って前
記道路網情報を頭からビームサーチし、複数の最短ルー
トを求める、 ことを特徴とする請求項9記載のグラフ探索方法。10. The graph search device is a navigation system, the directed graph G is road network information, and in the route expanding step, the accumulated cost from the start point s and the shortest cost of the remaining routes are set. The graph search method according to claim 9, wherein a beam search is performed from the head of the road network information using a sum of and to obtain a plurality of shortest routes.
向グラフG及び、経路展開条件を与える入力手段と、 前記有向グラフGを記憶するグラフ保持手段と、 前記有向グラフGの任意のノードと終点tとの最短コスト
を算出する最短コスト算出手段と、 前記入力手段を介して入力された条件に基づき前記有向
グラフGの始点sからの部分経路を、始点sからのコスト
の累積と、前記算出された残りの経路の最短コストとの
和に基づき、前記設定条件にしたがって下位の経路を枝
刈りしながら、逐次的に展開する経路展開手段と、 展開された複数の部分経路を保持するための部分経路保
持手段と、 探索が終了した時点で前記部分経路保持手段に保持され
ている前記部分経路を出力する解経路出力手段を具備し
ている、 ことを特徴とするグラフ探索装置。11. A directed graph G having real-valued costs on edges between vertices, input means for giving a path expansion condition, graph holding means for storing the directed graph G, and arbitrary nodes and end points of the directed graph G. Shortest cost calculating means for calculating the shortest cost with t, the partial path from the starting point s of the directed graph G based on the condition input via the input means, the accumulation of costs from the starting point s, and the calculated Based on the sum of the shortest cost of the remaining routes and pruning the lower routes according to the above-mentioned setting conditions, route expanding means for sequentially expanding, and a part for holding a plurality of expanded partial routes A graph search device comprising: route holding means; and solution route output means for outputting the partial route held in the partial route holding means when the search is completed. ..
の始点sからの最大N個の部分経路を、始点sからのコス
トの累積と、残りの経路の前記最短コストの和に基づ
き、第N位より下位の経路を枝刈りしながら、逐次的に
展開するものである、 ことを特徴とする請求項11記載のグラフ探索装置。12. The directed graph G is provided by the path expanding means.
Based on the sum of the accumulated cost from the starting point s and the shortest cost of the remaining routes, the maximum N number of partial routes from the starting point s are sequentially pruned while pruning the routes lower than the Nth position. The graph search device according to claim 11, wherein the graph search device is developed.
モリを備えたコンピュータであり、前記最短コスト算出
手段及び前記経路展開手段はsaveプログラム形式で前記
メモリに保持され、前記プロセッサによって実行される
ものであり、 前記グラフ保持手段及び前記部分経路保持手段が前記メ
モリの特定領域に形成されている、 ことを特徴とする請求項11記載のグラフ探索装置。13. The graph search device is a computer including a processor and a memory, and the shortest cost calculation means and the route expansion means are held in the memory in a save program format and executed by the processor. The graph search device according to claim 11, wherein the graph holding unit and the partial path holding unit are formed in a specific area of the memory.
有向グラフG及び、経路展開条件を与える入力手段と、 前記有向グラフGを記憶するグラフ保持手段と、 前記有向グラフGの任意の頂点と終端頂点tとの最短コス
トを算出する最短コスト算出手段と、 前記入力手段を介して入力された条件に基づき前記有向
グラフGの開始頂点sからの部分経路を、始点sからのコ
ストの累積と、前記算出された残りの経路の最短コスト
の和に基づき、前記設定条件にしたがって下位の経路を
枝刈りしながら、逐次的に展開する経路展開手段と、 前記経路展開手段により展開された複数の部分経路を保
持するための部分経路保持手段と、 前記部分経路保持手段に保持されている前記複数の部分
経路を出力する解経路出力手段とを具備している、 ことを特徴とするグラフ探索装置。14. A directed graph G having a real-valued cost on an edge between vertices, an input means for giving a path expansion condition, a graph holding means for storing the directed graph G, and an arbitrary vertex of the directed graph G. Shortest cost calculating means for calculating the shortest cost with the terminal vertex t, the partial path from the starting vertex s of the directed graph G based on the condition input via the input means, the accumulation of costs from the starting point s, Based on the calculated sum of the shortest costs of the remaining routes, a route expanding unit that sequentially expands while pruning lower routes according to the setting condition, and a plurality of parts expanded by the route expanding unit A partial path holding means for holding the path, and a solution path output means for outputting the plurality of partial paths held by the partial path holding means. Graph search device.
き文のトレリスであり、 前記入力手段によって前記トレリスと、その中の特定の
2頂点を始点s及び終点tとして与え、 前記最短コスト算出手段によって、前記トレリスの任意
の頂点と終点tとの最短コストを算出し、 前記経路展開手段によって、前記始点sからのコストの
累積と、残りの経路の最短コストとの和を使って前記ト
レリスを頭からビームサーチし、与えられた前記文につ
いて複数の最適な形態素の解を求める、 ことを特徴とする請求項14記載のグラフ探索装置。15. The directed graph G is a trellis of a sentence whose morphemes are to be analyzed, and the input means gives the trellis and two specific vertices thereof as a starting point s and an ending point t, and the shortest cost calculating means. By calculating the shortest cost of any vertex of the trellis and the end point t, the route expansion means, by using the sum of the accumulated cost from the start point s, and the shortest cost of the remaining route, the trellis 15. The graph search device according to claim 14, wherein a beam search is performed from the head to find a plurality of optimum morpheme solutions for the given sentence.
出力手段を備えたグラフ探索装置によって、与えられた
グラフについて経路を探索し、出力するグラフ探索装置
において、 頂点間の辺に実数値のコストが付いた有向グラフG及び
前記有向グラフGの全ての頂点間の最短コストを前記記
憶手段に記憶するグラフ保持手段と、 前記頂点中の特定の2頂点を始点s及び終点tとして与え
かつ、複数の経路を解析するための条件を与える条件設
定手段と、 前記演算処理手段により、前記有向グラフGの前記始点s
からの部分経路を、始点sからのコストの累積と、残り
の経路の前記最短コストとの和に基づき、前記設定条件
にしたがって下位の経路を枝刈りしながら、逐次的に展
開する経路展開手段と、 展開された複数の前記部分経路を前記記憶手段に保持す
るための部分経路保持手段と、 前記記憶手段に保持されている前記複数の部分経路を前
記出力手段に出力する解経路出力手段とを有する、 ことを特徴とするグラフ探索装置。16. A graph search device having input means, arithmetic processing means, storage means, and output means for searching a path for a given graph and outputting the same, wherein a real-valued value is present on an edge between vertices. A graph holding means for storing the directed graph G with costs and the shortest cost between all the vertices of the directed graph G in the storage means, and giving two specific vertices among the vertices as a start point s and an end point t, and By the condition setting means for giving a condition for analyzing the path, the start point s of the directed graph G by the arithmetic processing means.
A route expansion means for sequentially expanding the partial routes from the start route s while pruning lower routes according to the setting condition based on the sum of the accumulated cost from the starting point s and the shortest cost of the remaining routes. A partial path holding means for holding the plurality of expanded partial paths in the storage means, and a solution path output means for outputting the plurality of partial paths held in the storage means to the output means A graph search device comprising:
・システムであり、 前記有向グラフGが、道路網情報であり、 前記経路展開手段によって、前記始点sからのコストの
累積と、残りの経路の最短コストとの和を使って前記道
路網情報を頭からビームサーチし、与えられた前記文に
ついて複数の最短ルートを求め、 解経路出力手段により前記ルートを出力する、 ことを特徴とする請求項16記載のグラフ探索装置。17. The graph search device is a navigation system, the directed graph G is road network information, and the route expansion means accumulates costs from the start point s and the shortest cost of the remaining routes. 17. The beam search is performed from the head of the road network information by using the sum of and to obtain a plurality of shortest routes for the given sentence, and the route is output by a solution route output means. Graph search device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21129391A JP3289240B2 (en) | 1991-07-30 | 1991-07-30 | Graph search method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21129391A JP3289240B2 (en) | 1991-07-30 | 1991-07-30 | Graph search method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0546590A true JPH0546590A (en) | 1993-02-26 |
JP3289240B2 JP3289240B2 (en) | 2002-06-04 |
Family
ID=16603538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21129391A Expired - Fee Related JP3289240B2 (en) | 1991-07-30 | 1991-07-30 | Graph search method and apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3289240B2 (en) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05313572A (en) * | 1992-05-08 | 1993-11-26 | Pioneer Electron Corp | Navigation device |
JP2002181570A (en) * | 2000-12-11 | 2002-06-26 | Matsushita Electric Ind Co Ltd | Navigation device |
JP2006520976A (en) * | 2003-03-17 | 2006-09-14 | ソニー エレクトロニクス インク | Method and apparatus for realizing an eland engine |
US7219159B2 (en) | 2001-07-11 | 2007-05-15 | Fujitsu Limited | Plural-routes search method and network system using the same |
JP2009175876A (en) * | 2008-01-22 | 2009-08-06 | Nippon Signal Co Ltd:The | Device and method for generating network for searching for all minimum-cost routes, and route search device using the network |
EP2257127A1 (en) * | 2009-05-29 | 2010-12-01 | Koninklijke Philips Electronics N.V. | Method for data path creation in a modular lighting system |
US7895065B2 (en) | 2003-02-26 | 2011-02-22 | Sony Corporation | Method and apparatus for an itinerary planner |
US8571903B1 (en) | 1998-07-02 | 2013-10-29 | Google Inc. | Pricing graph representation for sets of pricing solutions for travel planning system |
JP2014149233A (en) * | 2013-02-01 | 2014-08-21 | Zenrin Co Ltd | Route search device and route guidance system |
US9127820B2 (en) | 2009-05-29 | 2015-09-08 | Koninklijke Philips N.V. | Intelligent lighting tile system powered from multiple power sources |
CN113312694A (en) * | 2021-05-25 | 2021-08-27 | 中国科学院计算技术研究所厦门数据智能研究院 | Method for generating dynamic line plan in shelter type building |
CN114239963A (en) * | 2021-12-16 | 2022-03-25 | 南京冰鉴信息科技有限公司 | Method and device for detecting directed graph circulation path |
-
1991
- 1991-07-30 JP JP21129391A patent/JP3289240B2/en not_active Expired - Fee Related
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05313572A (en) * | 1992-05-08 | 1993-11-26 | Pioneer Electron Corp | Navigation device |
US8571903B1 (en) | 1998-07-02 | 2013-10-29 | Google Inc. | Pricing graph representation for sets of pricing solutions for travel planning system |
JP2002181570A (en) * | 2000-12-11 | 2002-06-26 | Matsushita Electric Ind Co Ltd | Navigation device |
US7219159B2 (en) | 2001-07-11 | 2007-05-15 | Fujitsu Limited | Plural-routes search method and network system using the same |
US8050948B2 (en) | 2003-02-26 | 2011-11-01 | Sony Corporation | Method and apparatus for an itinerary planner |
US8050949B2 (en) | 2003-02-26 | 2011-11-01 | Sony Corporation | Method and apparatus for an itinerary planner |
US7895065B2 (en) | 2003-02-26 | 2011-02-22 | Sony Corporation | Method and apparatus for an itinerary planner |
JP2006520976A (en) * | 2003-03-17 | 2006-09-14 | ソニー エレクトロニクス インク | Method and apparatus for realizing an eland engine |
JP2009175876A (en) * | 2008-01-22 | 2009-08-06 | Nippon Signal Co Ltd:The | Device and method for generating network for searching for all minimum-cost routes, and route search device using the network |
WO2010136957A1 (en) * | 2009-05-29 | 2010-12-02 | Koninklijke Philips Electronics N.V. | Method for data path creation in a modular lighting system |
EP2257127A1 (en) * | 2009-05-29 | 2010-12-01 | Koninklijke Philips Electronics N.V. | Method for data path creation in a modular lighting system |
US8669712B2 (en) | 2009-05-29 | 2014-03-11 | Koninklijke Philips N.V. | Method for data path creation in a modular lighting system |
US9127820B2 (en) | 2009-05-29 | 2015-09-08 | Koninklijke Philips N.V. | Intelligent lighting tile system powered from multiple power sources |
JP2014149233A (en) * | 2013-02-01 | 2014-08-21 | Zenrin Co Ltd | Route search device and route guidance system |
CN113312694A (en) * | 2021-05-25 | 2021-08-27 | 中国科学院计算技术研究所厦门数据智能研究院 | Method for generating dynamic line plan in shelter type building |
CN114239963A (en) * | 2021-12-16 | 2022-03-25 | 南京冰鉴信息科技有限公司 | Method and device for detecting directed graph circulation path |
Also Published As
Publication number | Publication date |
---|---|
JP3289240B2 (en) | 2002-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8145588B2 (en) | Determination of graph connectivity metrics using bit-vectors | |
EP3152523B1 (en) | Customizable route planning using graphics processing unit | |
US5561790A (en) | Shortest path determination processes for use in modeling systems and communications networks | |
US20110251789A1 (en) | Method and system for time-dependent routing | |
Boutilier et al. | Computing optimal policies for partially observable decision processes using compact representations | |
US8412660B2 (en) | Multi-pairs shortest path finding method and system with sources selection | |
JP4353658B2 (en) | Route search method and route search device | |
US20130231862A1 (en) | Customizable route planning | |
JPH0546590A (en) | Graph minimum length-path searching method and device for obtaining plurality of optimum solution | |
US9285218B2 (en) | Shortest travel path determination using critical start time points | |
KR101662561B1 (en) | Method and device for generating an rdf database for an rdf database query and a search method and a search device for the rdf database query | |
US20120310523A1 (en) | Customizable route planning | |
Gunturi et al. | A critical-time-point approach to all-start-time lagrangian shortest paths: A summary of results | |
JP2015161557A5 (en) | ||
WO2025118544A1 (en) | Method and apparatus for determining target path, and electronic device, storage medium and vehicle | |
Gunturi et al. | A critical-time-point approach to all-departure-time lagrangian shortest paths | |
JPH1019587A (en) | Method for calculating reachable range within a predetermined time on a vector map | |
CN114383617B (en) | Navigation route calculation method, device and equipment based on map neural network and storage medium | |
Gunturi et al. | Spatio-temporal graph data analytics | |
Arcile et al. | Dynamic exploration of multi-agent systems with periodic timed tasks | |
JP4028362B2 (en) | Navigation device, route search data update method, and route search data update program | |
Bolzoni et al. | Solving Orienteering with Category Constraints Using Prioritized Search | |
Gentile et al. | Fast heuristics for continuous dynamic shortest paths and all-or-nothing assignment | |
Maw | Optimal route-finding system for Myanmar Country | |
Nannicini et al. | Fast paths in dynamic road networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090322 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |