JPH09229704A - Route seeking device - Google Patents

Route seeking device

Info

Publication number
JPH09229704A
JPH09229704A JP6210696A JP6210696A JPH09229704A JP H09229704 A JPH09229704 A JP H09229704A JP 6210696 A JP6210696 A JP 6210696A JP 6210696 A JP6210696 A JP 6210696A JP H09229704 A JPH09229704 A JP H09229704A
Authority
JP
Japan
Prior art keywords
intersection
data
cost
register
unit
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
Application number
JP6210696A
Other languages
Japanese (ja)
Inventor
Yasuo Ito
泰雄 伊藤
Yasuhiro Hama
安浩 浜
Takashi Sugawara
隆 菅原
Naoki Ushiki
直樹 牛来
Satoshi Kitano
聡 北野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Equos Research Co Ltd
Original Assignee
Equos Research Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Equos Research Co Ltd filed Critical Equos Research Co Ltd
Priority to JP6210696A priority Critical patent/JPH09229704A/en
Publication of JPH09229704A publication Critical patent/JPH09229704A/en
Pending legal-status Critical Current

Links

Landscapes

  • Navigation (AREA)
  • Traffic Control Systems (AREA)
  • Instructional Devices (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a route seeking device in which route seeking up to a destination can be performed in a short time. SOLUTION: A distance calculation unit 33, a junction data management unit 34 and a junction data storage unit 35 independent of CPU 31 are added and operated in parallel, pipeline processing is realized by operating distance calculation for finding an expectation cost out of route retrieval processing using A algorithm and rearrangement of the expectation costs for carrying out for searching a promising route out of the expectation costs on halfway of retrieval in parallel. And a processing time is shortened as the whole seeking.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は経路探索装置に係
り、例えば、出発地から目的地までの経路誘導を行なう
ナビゲーションシステムにおいて、案内すべき経路を高
速探索する経路探索装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a route search device, and more particularly, to a route search device which searches a route to be guided at high speed in a navigation system for guiding a route from a departure place to a destination.

【0002】[0002]

【従来の技術】従来のナビゲーションシステムにおける
経路探索では、一般に、A* アルゴリズムに代表される
発見的手法を用いた探索が行なわれている。このA*
ルゴリズムでは、A)ある地点での接続する道路を抽出
するステップ、B)道路の移動コストと道路を辿った先
での目的地までの予想コストを計算するステップ、C)
いままで辿った道路の移動に費やしたコストと目的地ま
での予想コストを合計した総予想コストをもとに次に探
索する方向を決定するステップ、の3つのステップで処
理をすすめている。
2. Description of the Related Art In a conventional route search in a navigation system, a search is generally performed using a heuristic method represented by the A * algorithm. In this A * algorithm, A) a step of extracting a road to be connected at a certain point, B) a step of calculating a traveling cost of the road and an estimated cost of reaching a destination after following the road, C).
The processing is carried out in three steps: a step of deciding a direction to be searched next based on the total estimated cost obtained by adding up the cost spent for moving the road that has been traced so far and the estimated cost to reach the destination.

【0003】[0003]

【発明が解決しようとする課題】このようなA* アルゴ
リズムにおける各ステップの処理時間は、図8に示され
るように、予想コストを求める部分(以下、距離計算パ
ートという。)と、探索順序を決定するための探索途中
での総予想コスト順にデータを並べ替える部分(以下、
中間データ管理パートという。)が必要な計算処理の中
で多くの部分を占めている。ここで使用している予想コ
ストは、探索途中のある注目点(交差点)から目的地ま
での直線距離や、その距離に一定の係数を掛けたものを
使用するのが一般的であるが、それらの計算は通常、自
乗和と平方根計算を含むため多大な計算時間を必要とす
る。また、中間データ管理パートにおいても、道路ネッ
トワークが複雑な場合や探索する区間が広くなると、処
理待ちの中間データが増え、並べ替えるために必要とす
る手数が増大する性質があり、やはり多大な計算時間を
必要とする。しかし、従来の経路探索装置では、このよ
うに多くの時間を必要とするA* アルゴリズムの各ステ
ップを単一のCPUによって順次繰り返し処理するよう
になっているため、目的地までの経路探索時間が長くな
っていた。
As shown in FIG. 8, the processing time of each step in such an A * algorithm consists of a portion for obtaining an estimated cost (hereinafter referred to as a distance calculation part) and a search order. A part that rearranges the data in the order of the total expected cost during the search for determining (hereinafter,
It is called an intermediate data management part. ) Is a large part of the necessary calculation processing. The estimated cost used here is generally the straight line distance from the point of interest (intersection) during the search to the destination, or the distance multiplied by a constant coefficient. The calculation of is usually a lot of calculation time because it includes the sum of squares and the square root calculation. Also, in the intermediate data management part, if the road network is complicated or the section to be searched becomes wide, there is a property that the number of intermediate data waiting to be processed increases and the number of steps required for rearrangement increases, which is also a huge calculation. Need time. However, in the conventional route search device, each step of the A * algorithm that requires a lot of time is sequentially and repeatedly processed by a single CPU, so that the route search time to the destination is reduced. It was getting longer.

【0004】そこで、本発明は、目的地までの経路探索
を短時間で終了することが可能な経路探索装置を提供す
ることを目的とする。
Therefore, an object of the present invention is to provide a route search device capable of completing a route search to a destination in a short time.

【0005】[0005]

【課題を解決するための手段】請求項1記載の発明で
は、A* アルゴリズムを用いて目的地までの最適経路を
探索する経路探索装置において、最適経路探索処理のう
ち、独立して所定の処理を行うサブユニットと、このサ
ブユニットによる処理以外の処理を行う制御手段とを備
え、前記サブユニットは、予想コストを算出する予想コ
スト算出手段で構成される。請求項2に記載の発明で
は、請求項1に記載の経路探索装置において、前記サブ
ユニットは更に、前記予想コスト算出手段による算出結
果を用いて得られる総予想コストを記憶保持する総予想
コスト保持手段と、この総予想コスト保持手段に記憶さ
れた総予想コストの中で最も有望な探索候補を抽出する
最適候補抽出手段と、を具備する。請求項3に記載の発
明では、請求項1または請求項2に記載の経路探索装置
において、前記予想コスト算出手段は、所定の角度分解
能を有するテーブル、例えば、数百程度の低精度のテー
ブルにより、三角関数の正接を用いて距離計算を行な
う。請求項4に記載の発明では、請求項2に記載の経路
探索装置において、前記最適候補抽出手段は、ハードウ
ェア比較器を用いて最も有望な探索候補を抽出する。
According to a first aspect of the present invention, in a route search device for searching an optimal route to a destination using an A * algorithm, a predetermined process is independently performed in the optimal route search process. And a control unit that performs a process other than the process performed by this subunit, and the subunit is composed of an estimated cost calculation unit that calculates an estimated cost. According to the invention described in claim 2, in the route search device according to claim 1, the sub-unit further stores a total estimated cost obtained by using a calculation result by the estimated cost calculation means, and holds the total estimated cost. Means, and optimal candidate extraction means for extracting the most promising search candidate from the total expected costs stored in the total estimated cost holding means. In the invention according to claim 3, in the route search device according to claim 1 or 2, the estimated cost calculation means is a table having a predetermined angular resolution, for example, a low-precision table of about several hundreds. , The distance is calculated using the tangent of the trigonometric function. According to a fourth aspect of the present invention, in the route search device according to the second aspect, the optimum candidate extracting means extracts the most promising search candidate by using a hardware comparator.

【0006】[0006]

【発明の実施の形態】以下、本発明の経路探索装置にお
ける一実施形態を図1ないし図7を参照して詳細に説明
する。図1は、経路探索装置の構成を表したものであ
る。経路探索装置は、ナビゲーションシステム全体の制
御を行うと共に、経路探索において接続する道路の抽出
(対象交差点の抽出)等の制御を行うCPU31と、経
路探索高速化装置32、RAM36、および記憶装置3
7を備えている。CPU31は、図示しないROMに格
納された各種のプログラムに従って経路探索やナビゲー
ション処理等の処理を行う用になっている。RAM36
は、CPU31のワーキングメモリとして使用されると
共に、経路探索における最適コスト等の各種のデータが
格納されるようになっている。記憶装置37は、例え
ば、CDROM等の大容量記憶装置で構成されており、
経路探索に使用される道路データが格納されている。道
路データとしては、交差点番号、その交差点の座標値
(緯度、経度)、信号の有無、その交差点に接続する道
路の道路番号、その道路の道路長、一方通行や右左折に
関する情報等が含まれている。
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of a route search device of the present invention will be described in detail below with reference to FIGS. FIG. 1 shows the configuration of a route search device. The route search device controls the entire navigation system, and at the same time, controls the extraction of roads connected in route search (extraction of target intersections), the CPU 31, the route search speed-up device 32, the RAM 36, and the storage device 3.
7 is provided. The CPU 31 is for performing processing such as route search and navigation processing according to various programs stored in a ROM (not shown). RAM 36
Is used as a working memory of the CPU 31 and stores various data such as an optimum cost in route search. The storage device 37 is composed of, for example, a mass storage device such as a CDROM,
Stores road data used for route search. The road data includes the intersection number, the coordinate value (latitude, longitude) of the intersection, the presence or absence of a signal, the road number of the road connected to the intersection, the road length of the road, information about one-way traffic and right / left turn. ing.

【0007】経路探索高速化装置32は、A* アルゴリ
ズムにおける距離計算パートと中間データ管理パート
が、独立して動作するユニットで構成されている。すな
わち、距離計算を専門に行なう距離計算ユニット33
と、並べ替えユニット38とから構成されている。並べ
替えユニット38は、各交差点でのコストを一時的にメ
モリに保存し、瞬時に最小コストの交差点をCPU31
に返す交差点データ管理ユニット34、およびデータの
保存と交差点データ管理ユニット34で返す最小コスト
交差点を探す交差点データ保存ユニット35から構成さ
れている。A* アルゴリズムにおける距離計算パートと
中間データ管理パートの処理を専用に行なうユニットを
CPUと独立して動作するユニットとして配置し、CP
Uと各ユニットが協調して探索処理に当たることでパイ
プラインを構成して最小コストルートを得る。このよう
に、本経路探索装置では、A* アルゴリズムが各パート
毎に独立性が高いことに着目し、CPU31とは独立し
て動作し、距離計算パートと中間データ管理パートの処
理を専用に行う3つのユニット33、34、35を配置
し、CPU31と各ユニット33、34、35とが互い
に協調しデータを交換しながら探索処理を行うことでパ
イプライン処理を可能にし、探索時間を短縮するように
したものである。
In the route search speed-up device 32, the distance calculation part and the intermediate data management part in the A * algorithm are composed of units that operate independently. That is, the distance calculation unit 33 that specializes in distance calculation
And a rearrangement unit 38. The rearrangement unit 38 temporarily stores the cost at each intersection in the memory and instantly finds the intersection with the minimum cost in the CPU 31.
And an intersection data storage unit 35 for storing data and searching for a minimum cost intersection returned by the intersection data management unit 34. A unit dedicated to the processing of the distance calculation part and the intermediate data management part in the A * algorithm is arranged as a unit that operates independently of the CPU.
U and each unit cooperate with each other in search processing to form a pipeline and obtain a minimum cost route. As described above, in the route search device, paying attention to the high independence of the A * algorithm for each part, the A * algorithm operates independently of the CPU 31 and exclusively performs the processing of the distance calculation part and the intermediate data management part. By arranging the three units 33, 34, 35, the CPU 31 and the respective units 33, 34, 35 cooperate with each other to perform the search process while exchanging data, thereby enabling pipeline processing and shortening the search time. It is the one.

【0008】ここで、各ユニット33、34、35の具
体的構成を説明する前に、A* アルゴリズムの内容につ
いて説明し、次いで各ユニット33、34、35の構成
とその処理動作について説明する。A* アルゴリズム
は、対象交差点における評価基準として、「総予想コス
ト」を使用する。この総予想コストは、出発地から各交
差点を経由して対象交差点に至るまでの実際の距離を
「実コスト」とし、対象交差点から目的地交差点(目的
地に最も近い交差点)までの直線距離を「予想コスト」
とした場合次のように表される。 「総予想コスト」=「実コスト」+「予想コスト」
Before explaining the concrete constitution of each unit 33, 34, 35, the contents of the A * algorithm will be explained, and then the constitution of each unit 33, 34, 35 and its processing operation will be explained. The A * algorithm uses "total expected cost" as the evaluation criterion at the target intersection. This total estimated cost is the actual distance from the departure point to the target intersection via each intersection, and the straight line distance from the target intersection to the destination intersection (the closest intersection to the destination) "Estimated cost"
Then, it is expressed as follows. "Total expected cost" = "Actual cost" + "Estimated cost"

【0009】ここで、「予想コスト」≦「対象交差点か
ら目的地交差点までの実コスト」の関係にあることか
ら、出発交差点における総予想コストが最も小さく、探
索位置が目的地に近づくに従って実コストの加算回数が
増えるので総予想コストの値も増加していくことにな
る。A* アルゴリズムは、その処理を示すフローチャー
トの一例として図6に示すように、探索開始位置(出発
交差点)から探索を開始し、出発交差点に接続する全て
の道路を選択し、そこに繋がる交差点(以下、対象交差
点という)を取得し、各対象交差点に対する総予想コス
トを算出する。そして、総予想コストが最も小さい交差
点(最小総予想コスト交差点)を選択し、はじめの処理
と同様に、そこに接続する対象交差点を取得して、目的
地交差点(目的地にもっとも近い交差点)に一致するま
で処理を繰り返す探索方法である。
[0009] Here, because of the relation of "predicted cost" ≤ "actual cost from target intersection to destination intersection", the total estimated cost at the departure intersection is the smallest and the actual cost as the search position approaches the destination. Since the number of times of addition of is increased, the value of the total expected cost is also increased. As shown in FIG. 6 as an example of a flowchart showing the processing, the A * algorithm starts the search from the search start position (departure intersection), selects all the roads connected to the start intersection, and connects the intersections ( (Hereinafter referred to as target intersection), and the total expected cost for each target intersection is calculated. Then, select the intersection with the smallest total expected cost (minimum total expected cost intersection), obtain the target intersection connected to it, and set it as the destination intersection (the closest intersection to the destination), as in the first process. This is a search method in which processing is repeated until they match.

【0010】図2は、経路探索のための道路ネットワー
クを表したものである。この図2において、交差点は丸
で表し、探索済みの道路は太い矢印で表し、未探索の道
路は破線矢印で表し、各交差点から目的地交差点までの
直線距離(予想コスト)は細矢印で表している。各道路
には、矢印に併記した道路番号が付されており、道路番
号の後ろのカッコ内にはその道路の通過コスト(距離)
が記載されている。また各交差点には、交差点番号が付
けられており、その後ろのカッコ内には、出発交差点か
らその交差点までの実コストと、その交差点から目的地
交差点までの予想コストとが記載されている。
FIG. 2 shows a road network for route search. In FIG. 2, intersections are represented by circles, searched roads are represented by thick arrows, unsearched roads are represented by dashed arrows, and the straight line distance (estimated cost) from each intersection to the destination intersection is represented by a thin arrow. ing. Each road is marked with a road number along with an arrow, and the passing cost (distance) of the road is shown in parentheses after the road number.
Is described. An intersection number is attached to each intersection, and the actual cost from the departure intersection to the intersection and the expected cost from the intersection to the destination intersection are described in parentheses behind it.

【0011】いま、この道路ネットワークの出発点から
探索を始め、交差点1に到達した状態を例に取ってA*
アルゴリズムを説明する。探索の途中に交差点0から道
路01を辿って、交差点1を見つけたとする。交差点1
が目的地と異なるとすると、それに接続する交差点を探
してさらに探索を進めて行く。ここでの探索処理は以下
のステップで進められる。
Now, the search is started from the starting point of this road network, and when the intersection 1 is reached, A * is taken as an example .
The algorithm is explained. It is assumed that an intersection 1 is found by following the road 01 from the intersection 0 during the search. Intersection 1
If is different from the destination, search for an intersection connecting to it and proceed further. The search process here proceeds in the following steps.

【0012】ステップA;交差点1において、道路01
に接続する道路の先頭(例えば、道路11とする)を取
り出し、その道路が進入可能なら以下のステップB〜D
の処理を行なう。 ステップB;交差点1における出発地からの実コスト
(S1)に、道路11の移動コストC1を加え、出発地
から対象とした道路11で結ばれる対象交差点2までの
実コスト(S1+C1)を求める。 ステップC;対象交差点2から目的地交差点までの直線
距離(L2)を求め、目的地までの予想コストとする。
その対象交差点2における予想コストが既に求められて
いる場合はその値を使用する。 ステップD;ステップAとBで求めた実コストと予想コ
ストを合計したもの(S1+C1+L2)を対象交差点
2での総予想コストとし、この総予想コストが小さい順
に並ぶように探索待ち行列に挿入する。 ステップE;交差点1に接続する他の道路を取り出し、
ステップA〜Dの処理を繰り返す。全ての道路11、1
2、13について処理したなら次のステップへ。
Step A: Road 01 at intersection 1
The head of the road connected to (for example, the road 11) is taken out, and if the road is accessible, the following steps B to D are performed.
Is performed. Step B: The moving cost C1 of the road 11 is added to the actual cost (S1) from the starting point at the intersection 1 to obtain the actual cost (S1 + C1) from the starting point to the target intersection 2 connected by the target road 11. Step C: The straight line distance (L2) from the target intersection 2 to the destination intersection is obtained and used as the estimated cost to reach the destination.
If the expected cost at the target intersection 2 has already been calculated, that value is used. Step D: The sum (S1 + C1 + L2) of the actual cost and the estimated cost obtained in Steps A and B is set as the total estimated cost at the target intersection 2, and the total estimated cost is inserted in the search queue so as to be arranged in ascending order. Step E: Take out another road connected to the intersection 1,
The processes of steps A to D are repeated. All roads 11, 1
After processing 2 and 13, go to the next step.

【0013】ステップF;待ち行列の中から総予想コス
トが最も小さい交差点を、最小総予想コスト交差点とし
て取り出す。 ステップG;取り出した最小総予想コスト交差点が目的
地交差点でなく、目的地交差点までの最適コスト(実コ
スト)がまだ求められていない場合には、ステップAに
戻る。一方、目的地までの最適コストが求められている
場合、その最適コストの値と、最小総予想コスト交差点
での総予想コストとを比較する。前記したように、総予
想コストの値は目的地交差点に近づくに従って大きくな
るため、総予想コストの方が最適コストよりも大きい場
合には、更に小さい最適コストが求まることがないので
処理を終了する。最適コストが求められており、総予想
コストの方が小さい場合には、現在の最適コストよりも
小さい最適コスト(これをZとした場合、Zは、現在の
最適コスト≧Z≧最小総予想コスト交差点での総予想コ
ストの範囲である。)が求まる可能性があるので、ステ
ップA以降の処理を繰り返す。 ステップH;ステップfで取り出した最小総予想コスト
交差点が目的地交差点である場合、その総予想コスト
(=実コスト)と既に求められている目的地までの最適
コストとを比較し、小さい方を最適コストとして保存
し、ステップFに移行する。なお、最適予想コストがま
だ求められていないときには、最小総予想コスト交差点
での総予想コストを最適コストとして保存する。
Step F: The intersection with the smallest total expected cost is extracted from the queue as the minimum total estimated cost intersection. Step G: If the extracted minimum total expected cost intersection is not the destination intersection and the optimum cost (actual cost) to reach the destination intersection has not yet been obtained, the process returns to step A. On the other hand, when the optimum cost to the destination is required, the value of the optimum cost is compared with the total estimated cost at the minimum total estimated cost intersection. As described above, the value of the total expected cost increases as the destination intersection is approached. Therefore, if the total estimated cost is larger than the optimum cost, a smaller optimum cost cannot be obtained, so the processing ends. . If the optimum cost is required and the total expected cost is smaller, the optimum cost smaller than the current optimum cost (where Z is Z, the current optimum cost ≧ Z ≧ minimum total predicted cost). Since it is possible to obtain the total expected cost range at the intersection.), The processing from step A onward is repeated. Step H: When the minimum total expected cost intersection extracted in step f is the destination intersection, the total expected cost (= actual cost) is compared with the optimal cost to the destination already obtained, and the smaller one is selected. Save as the optimum cost and move to step F. When the optimum predicted cost is not yet obtained, the total predicted cost at the minimum total predicted cost intersection is stored as the optimum cost.

【0014】以上のA* アルゴリズムにおいて各処理に
要する時間は、ステップCの距離計算とステップDの待
ち行列の並び替えが大きな割合を占め、ステップBの実
コストと総予想コストの計算、ステップAまたはEの接
続道路の抽出は比較的小ない時間で終了する。便宜上ス
テップAとE負荷は無視できるほど小さいとすると、各
々の処理時間の割合は、図8のようになる。従来のA*
アルゴリズムでは、図3(a)に示されるように各ステ
ップの処理を単一のCPUによって順次処理している。
In the above-mentioned A * algorithm, the time required for each processing is largely calculated by the distance calculation in step C and the rearrangement of the queue in step D, and the actual cost and total expected cost calculation in step B, step A Alternatively, the extraction of the connecting road of E ends in a relatively small time. Assuming that the loads of steps A and E are so small that they can be ignored for convenience, the respective processing time ratios are as shown in FIG. Conventional A *
In the algorithm, as shown in FIG. 3A, each step is sequentially processed by a single CPU.

【0015】これに対して、本実施形態では、各ステッ
プの処理の独立性が高いことに着目し、各ステップの処
理を、CPU31や専門の処理回路(経路探索高速化装
置32)に分担させることで処理の高速化を実現してい
る 例えば、距離計算を専門に行い、CPU31と独立
に動作する距離計算ユニット33を導入すると、図3
(b)のようなパイプライン構成が可能となり、全体の
処理時間を少なくする事ができる(Bの部分が距離計算
処理を示す)。同様に、各交差点での総予想コストをも
とに、待ち行列内の順番を並べ替える処理を受け持つユ
ニット(交差データ管理ユニット34と交差点データ保
存ユニット35)を導入することで、図3(c)に示す
ように、一層高速化することが可能になる。記号Cで表
される部分が並べ替え処理に相当し、図中A′は距離計
算の結果を総予想コストに加えて並べ替え処理に渡すオ
ーバーヘッドである。データの追加時はデータ受信した
時点でCPU31を解放し、CPU31側が他の処理を
行なっているうちに保存データ内での並べ替えを行う。
CPU31によるデータ読み出し時は、最小総予想コス
ト交差点のデータを瞬時に返し、次の読み出しまでの間
に最小予想コスト交差点を探索するようになっている。
On the other hand, in the present embodiment, paying attention to the fact that the processing of each step is highly independent, the processing of each step is shared by the CPU 31 and a specialized processing circuit (path search speed-up device 32). By doing so, for example, if a distance calculation unit 33 specialized in distance calculation is introduced and a distance calculation unit 33 that operates independently of the CPU 31 is introduced,
A pipeline configuration as shown in (b) is possible, and the entire processing time can be shortened (the portion B shows the distance calculation processing). Similarly, by introducing a unit (intersection data management unit 34 and intersection data storage unit 35) which is in charge of processing for rearranging the order in the queue based on the total expected cost at each intersection, FIG. ), The speed can be further increased. The portion represented by the symbol C corresponds to the rearrangement processing, and A'in the figure is an overhead of passing the result of the distance calculation to the rearrangement processing in addition to the total estimated cost. When data is added, the CPU 31 is released when the data is received, and the CPU 31 side rearranges the stored data while performing other processing.
At the time of reading data by the CPU 31, the data of the minimum total expected cost intersection is instantly returned, and the minimum expected cost intersection is searched until the next reading.

【0016】次に、図3に示される経路探索装置を構成
する距離計算ユニット33、交差点データ管理ユニット
34および、交差点データ保存ユニット35の具体的構
成について説明する。図4は、距離計算ユニット33の
構成を表したものである。A* アルゴリズムに於いては
厳密に計算する必要は無く、実際の距離(実コスト)を
越えない範囲であれば最適解が保証され、距離値に誤差
が含まれている場合は探索手数を増大させるが、探索結
果には影響が無い事が知られているので、本ユニットで
は計算誤差を数%程度にすることで、数百程度の少ない
テーブル数で距離を求めることが可能なテーブル参照方
式を採用する。
Next, the specific configurations of the distance calculation unit 33, the intersection data management unit 34, and the intersection data storage unit 35, which constitute the route search device shown in FIG. 3, will be described. FIG. 4 shows the configuration of the distance calculation unit 33. In the A * algorithm, it is not necessary to calculate exactly, the optimum solution is guaranteed within the range that does not exceed the actual distance (actual cost), and the number of search steps is increased if the distance value includes an error. However, since it is known that the search result is not affected, this unit makes it possible to calculate the distance with a small number of tables, such as several hundreds, by setting the calculation error to about several percent. To adopt.

【0017】距離計算ユニット33は、CPU31から
のデータを受けるX座標レジスタ61、Y座標レジスタ
62と、CPU31にデータを供給する距離値レジスタ
63を備えている。X座標レジスタ61は比較器64お
よびシフトレジスタ66aと、Y座標レジスタ62は比
較器64およびシフトレジスタ66bと、それぞれデー
タバスを介して接続されている。また、シフトレジスタ
66a、bは、それぞれセレクタ65a、65bの両者
とデータバスを介して接続されている。比較器64は、
シフトレジスタ66a、b、およびセレクタ65a、b
と制御バスを介して接続されているされている。セレク
タ65bは整数徐算器67とバスラインを介して接続さ
れ、整数徐算器67は制御バスを介して定数テーブル6
9と接続され、定数テーブル69はデータバスを介して
乗算器68と接続されている。セレクタ65aは、整数
徐算器67および乗算器68とバスラインを介して接続
され、乗算器68はバスラインを介して距離値レジスタ
63と接続されている。
The distance calculation unit 33 comprises an X coordinate register 61 and a Y coordinate register 62 which receive data from the CPU 31, and a distance value register 63 which supplies data to the CPU 31. The X coordinate register 61 is connected to the comparator 64 and the shift register 66a, and the Y coordinate register 62 is connected to the comparator 64 and the shift register 66b via a data bus, respectively. The shift registers 66a and 66b are connected to both the selectors 65a and 65b via a data bus. The comparator 64 is
Shift registers 66a, b and selectors 65a, b
And is connected via a control bus. The selector 65b is connected to the integer divider 67 via the bus line, and the integer divider 67 is connected to the constant table 6 via the control bus.
9 and the constant table 69 is connected to the multiplier 68 via the data bus. The selector 65a is connected to the integer divider 67 and the multiplier 68 via a bus line, and the multiplier 68 is connected to the distance value register 63 via a bus line.

【0018】X座標レジスタ61およびY座標レジスタ
62は、求めるべき2点間の水平成分と垂直成分(相対
座標)が入力されるレジスタで、対象交差点と目的地交
差点の両座標のX成分の差ΔXと、Y成分の差ΔYがC
PU1から供給されるようになっている。距離値レジス
タ63は、距離計算ユニット33内で計算された2点間
(対象交差点と目的地交差点間)の距離を、CPU31
に供給するためのレジスタである。比較器64は、X座
標レジスタ61とY座標レジスタ62から供給されるΔ
X、ΔYの大小を比較し、ΔYの方が大きければ制御信
号”1”を出力し、ΔXの方が大きければ制御信号”
0”を出力する。比較器64から出力される制御信号
は、シフトレジスタ66a、bとセレクタ65a、bの
それぞれに供給されるようになっている。シフトレジス
タ66a、66bは、比較器64から制御信号が供給さ
れると、予め与えられたビット分だけ入力データをシフ
トするようになっている。
The X coordinate register 61 and the Y coordinate register 62 are registers to which the horizontal and vertical components (relative coordinates) between the two points to be obtained are input, and the difference between the X components of both coordinates of the target intersection and the destination intersection. The difference ΔY between ΔX and the Y component is C
It is supplied from PU1. The distance value register 63 calculates the distance between the two points (between the target intersection and the destination intersection) calculated in the distance calculation unit 33 as the CPU 31.
Is a register for supplying to. The comparator 64 is supplied with Δ from the X coordinate register 61 and the Y coordinate register 62.
The magnitudes of X and ΔY are compared. If ΔY is larger, the control signal “1” is output, and if ΔX is larger, the control signal is “”.
The control signal output from the comparator 64 is supplied to each of the shift registers 66a and b and the selectors 65a and 65b. The shift registers 66a and 66b are output from the comparator 64. When the control signal is supplied, the input data is shifted by a predetermined bit.

【0019】セレクタ65aは、比較器64から制御信
号”1”が供給された場合(ΔY>ΔXの場合)にシフ
トレジスタ66bから供給されるデータを出力し、制御
信号”0”が供給された場合(ΔY<ΔXの場合)にシ
フトレジスタ66aから供給されたデータを出力する。
逆に、セレクタ65bは、比較器64から制御信号”
1”が供給された場合にシフトレジスタ66aから供給
されたデータを出力し、制御信号”0”が供給された場
合にシフトレジスタ66bから供給されるデータを出力
するようになっている。すなわち、X座標レジスタ6
1、Y座標レジスタ62に供給されたΔX、ΔYのう
ち、大きい方のデータがセレクタ65aから出力され、
小さい方のデータがセレクタ65bから出力されるよう
になっている。
The selector 65a outputs the data supplied from the shift register 66b when the control signal "1" is supplied from the comparator 64 (when ΔY> ΔX), and the control signal "0" is supplied. In this case (when ΔY <ΔX), the data supplied from the shift register 66a is output.
On the contrary, the selector 65b outputs the control signal "from the comparator 64".
The data supplied from the shift register 66a is output when 1 "is supplied, and the data supplied from the shift register 66b is output when the control signal" 0 "is supplied. X coordinate register 6
1, the larger data of ΔX and ΔY supplied to the Y coordinate register 62 is output from the selector 65a,
The smaller data is output from the selector 65b.

【0020】整数徐算器67は、セレクタ65bの出力
値をセレクタ65aの出力値で割り、tanθを求める
ようになっている。ここでtanθは、0<tanθ≦
1である。なお、整数徐算器67では、小数点以下第4
位以下の値を切り捨てた結果を出力するようにしてもよ
い。定数テーブル69は、不揮発性メモリで、tanθ
の値をアドレスとし、そのアドレスに予め計算した1/
cosθの値が書き込まれており、整数徐算器67の出
力(tanθ)で指定されるアドレスの内容を出力する
ようになっている。乗算器68は、セレクタ65aの出
力(ΔXとΔYの大きい方の値)と、定数テーブル69
の出力とを掛けた結果を出力するようになっている。こ
の出力は、対象交差点と目的地交差点間の予想コストと
して、距離値レジスタ63に供給される。
The integer divider 67 divides the output value of the selector 65b by the output value of the selector 65a to obtain tan θ. Here, tan θ is 0 <tan θ ≦
It is one. In the integer divider 67, the fourth decimal
You may make it output the result which rounded down the value below the place. The constant table 69 is a non-volatile memory and has a tan θ
The value of is used as the address, and 1 /
The value of cos θ is written, and the content of the address specified by the output (tan θ) of the integer grading unit 67 is output. The multiplier 68 outputs the output of the selector 65a (the larger value of ΔX and ΔY) and the constant table 69.
The result of multiplying with the output of is output. This output is supplied to the distance value register 63 as an estimated cost between the target intersection and the destination intersection.

【0021】つぎに、このように構成された距離計算ユ
ニット33において、CPU31からX座標レジスタ6
1とY座標レジスタ62に対象交差点の相対座標(Δ
X、ΔY)が供給されてから、距離値レジスタ63から
CPU31に対象交差点での予想コストが供給されるま
での動作について説明する。なお、対象交差点での相対
座標は、ΔX<ΔYであるものとする。X座標レジスタ
61、Y座標レジスタ62に入力された相対座標は、距
離値レジスタ63a、bおよび比較器64に供給され
る。比較器64では、供給されたΔXとΔYの大小を比
較しΔYの方が大きいので、制御信号”1”を出力す
る。その結果、セレクタ65aからはΔYが出力され、
セレクタ65bからはΔXが出力される。そして、整数
徐算器67においてtanθ=ΔX/ΔYが算出され、
定数テーブル69のインデックスとなる。定数テーブル
69では、供給されたtanθをアドレスとして、対応
するアドレスに格納されているデータ(1/cosθ=
予想コストL/Y)を乗算器68に供給する。乗算器6
8では、定数テーブル69の出力と、セレクタ65aと
を乗算することで、対象交差点と目的地交差点間の距離
である予想コストが求まり、この値が距離値レジスタ6
3に供給される。
Next, in the distance calculation unit 33 thus constructed, the CPU 31 operates the X coordinate register 6
1 and the Y coordinate register 62 stores the relative coordinates (Δ
The operation from the supply of (X, ΔY) to the supply of the expected cost at the target intersection from the distance value register 63 to the CPU 31 will be described. The relative coordinates at the target intersection are ΔX <ΔY. The relative coordinates input to the X coordinate register 61 and the Y coordinate register 62 are supplied to the distance value registers 63a and 63b and the comparator 64. The comparator 64 compares the supplied ΔX and ΔY in magnitude and outputs the control signal “1” because ΔY is larger. As a result, ΔY is output from the selector 65a,
ΔX is output from the selector 65b. Then, tan θ = ΔX / ΔY is calculated in the integer divider 67,
It becomes an index of the constant table 69. In the constant table 69, using the supplied tan θ as an address, the data (1 / cos θ =
The expected cost L / Y) is supplied to the multiplier 68. Multiplier 6
In 8, the output of the constant table 69 is multiplied by the selector 65a to obtain the expected cost, which is the distance between the target intersection and the destination intersection, and this value is calculated as the distance value register 6
3 is supplied.

【0022】次に、並べ替えユニット38の具体的構成
について、図5を参照して説明する。並べ替えユニット
38は、A* アルゴリズムにおける最小コスト交差点を
選択する部分に相当し、交差点データ管理ユニット34
と交差点データ保存ユニット35から構成され、データ
の保存、最小コスト交差点の出力を高速に行うようにな
っている。A* アルゴリズムにとっては、最小コストデ
ータが出力される事が重要であって、内部のデータ表現
は重要ではない。そこで、並べ替えユニット38は、C
PU31と直接データの授受を行う交差点データ管理ユ
ニット34において、ハードウェアによる比較回路を用
いて最小値を選択し、それをCPU1に返す形態をとっ
ている。
Next, a specific structure of the rearrangement unit 38 will be described with reference to FIG. The rearrangement unit 38 corresponds to a portion for selecting the minimum cost intersection in the A * algorithm, and corresponds to the intersection data management unit 34.
And an intersection data storage unit 35, which is configured to store data and output a minimum cost intersection at high speed. For the A * algorithm, it is important that the minimum cost data is output, and the internal data representation is not important. Therefore, the sorting unit 38 is
In the intersection data management unit 34 that directly exchanges data with the PU 31, a minimum value is selected using a hardware comparison circuit and the minimum value is returned to the CPU 1.

【0023】交差点データ管理ユニット34は、CPU
31との間でデータの授受を行うデータレジスタ71を
備えている。データレジスタ71は、データバスを介し
て比較器64cおよびセレクタ65cと接続され、制御
バスを介して比較器64cと接続されている。セレクタ
65cは、更に比較器64cと制御バスを介して接続さ
れ、インタフェイスレジスタ74とデータバスを介して
接続されている。比較器64cは、更に最大/最小値検
出回路73と制御バスを介して接続されている。交差点
データ管理ユニット34は、更に、データ管理レジスタ
72とメモリ79cを備えており、この両者72、79
cは、データレジスタ71、比較器64、セレクタ65
c、最大/最小値検出回路73、およびインタフェイス
レジスタ74とデータバスを介して接続されている。交
差点データ管理ユニット34は、CPU31との通信時
に一時的なバッファの役割を果たすようになっている。
The intersection data management unit 34 is a CPU
A data register 71 for exchanging data with 31 is provided. The data register 71 is connected to the comparator 64c and the selector 65c via a data bus, and is connected to the comparator 64c via a control bus. The selector 65c is further connected to the comparator 64c via a control bus and is connected to the interface register 74 via a data bus. The comparator 64c is further connected to the maximum / minimum value detection circuit 73 via a control bus. The intersection data management unit 34 further includes a data management register 72 and a memory 79c.
c is a data register 71, a comparator 64, a selector 65
c, the maximum / minimum value detection circuit 73, and the interface register 74 are connected via a data bus. The intersection data management unit 34 plays a role of a temporary buffer when communicating with the CPU 31.

【0024】データレジスタ71は、交差点データ(そ
の交差点の交差点番号、その交差点に到るまでに通過す
る各交差点の交差点番号、その交差点に到るまでの実コ
スト、予想コスト、総予想コスト)を設定するためのレ
ジスタで、CPU31から交差点データを書き込む場合
には、書き込み対象となる交差点データがセットされ
る。この場合、データレジスタ71は、比較器64cか
ら制御信号”1”が供給されると、セットされた交差点
データをメモリ79cに格納するようになっている。一
方、並べ替えユニット38からCPU31がデータを読
み出す場合、データ管理レジスタ72で指定された最小
値側のアドレスに格納されている交差点データがメモリ
79cからデータレジスタ71にセットされる。データ
管理レジスタ72は、メモリ79cの中に格納されてい
るデータのうち、総予想コストの最大値、最小値が格納
されているアドレスを保持するためのレジスタである。
The data register 71 stores the intersection data (the intersection number of the intersection, the intersection number of each intersection through which the intersection is reached, the actual cost to reach the intersection, the estimated cost, and the total estimated cost). When writing intersection data from the CPU 31, this is a register for setting the intersection data to be written. In this case, when the control signal "1" is supplied from the comparator 64c, the data register 71 stores the set intersection data in the memory 79c. On the other hand, when the CPU 31 reads the data from the rearrangement unit 38, the intersection data stored in the address on the minimum value side designated by the data management register 72 is set in the data register 71 from the memory 79c. The data management register 72 is a register for holding an address in which the maximum value and the minimum value of the total expected cost are stored among the data stored in the memory 79c.

【0025】比較器64cは、データレジスタ71とメ
モリ79cから供給される総予想コストを比較し、デー
タレジスタ71側が大きい場合には制御信号”1”を出
力し、メモリ79c側が大きい場合には”0”を出力す
るようになっている。なお、メモリ79cから供給され
る総予想コストは、データ管理レジスタ72で指定され
た最大値側のアドレスから読み出される。セレクタ65
cは、比較器64cから制御信号”1”が供給された場
合にはデータレジスタ71からの交差点データを、制御
信号”0”が供給された場合にはメモリ79cからの交
差点データを、インタフェイスレジスタ74に供給する
ようになっている。
The comparator 64c compares the total expected costs supplied from the data register 71 and the memory 79c, outputs a control signal "1" when the data register 71 side is large, and outputs "1" when the memory 79c side is large. It outputs 0 ". The total estimated cost supplied from the memory 79c is read from the maximum value side address specified by the data management register 72. Selector 65
The interface c receives the intersection data from the data register 71 when the control signal "1" is supplied from the comparator 64c and the intersection data from the memory 79c when the control signal "0" is supplied. It is adapted to be supplied to the register 74.

【0026】最大/最小値検出回路73は、メモリ79
cに格納されている交差点データを調べ、その総予想コ
ストの最大値、最小値のデータが格納されているアドレ
スをデータ管理レジスタ72に設定する回路である。最
大/最小値検出回路73は、CPU31からの交差点デ
ータの読み出し後、および、比較器64から制御信号”
0”が供給され、データレジスタ71からの交差点デー
タがメモリ79cに格納された後に起動するようになっ
ている。インタフェイスレジスタ74は、交差点データ
管理ユニット34と交差点データ保存ユニット35との
間でデータを授受するためのレジスタである。交差点デ
ータ保存ユニット35へのデータ書き込み時は、セレク
タ65cで選択されたデータがセットされる。一方、デ
ータ読み出し時には、交差点データ保存ユニット35に
保存されている総予想コストが最小値である交差点デー
タがセットされ、メモリ79cに格納される。
The maximum / minimum value detection circuit 73 has a memory 79.
This is a circuit that examines the intersection data stored in c and sets the address, in which the maximum and minimum values of the total expected cost are stored, in the data management register 72. The maximum / minimum value detection circuit 73 reads the intersection data from the CPU 31, and outputs the control signal from the comparator 64.
0 "is supplied and the intersection data from the data register 71 is activated after being stored in the memory 79c. The interface register 74 is provided between the intersection data management unit 34 and the intersection data storage unit 35. This is a register for transmitting and receiving data.When writing data to the intersection data storage unit 35, the data selected by the selector 65c is set, while it is stored in the intersection data storage unit 35 when reading data. The intersection data having the minimum total expected cost is set and stored in the memory 79c.

【0027】メモリ79cは、交差点データが格納され
るランダムアクセスメモリである。このメモリ79cに
は、並べ替えユニット38内に格納される全交差点デー
タのうち、A* アルゴリズムにおける次のステップで取
り出す候補になりそうな交差点データとして、総予想コ
ストが最も小さいものから順にN個格納されるようにな
っている。なお、メモリ79cに格納される交差点デー
タの数N個は、任意の数を選択することが可能であり、
例えば、10個、5個、3個、15個、20個等が選択
される。
The memory 79c is a random access memory for storing intersection data. In this memory 79c, among all the intersection data stored in the rearrangement unit 38, N pieces of intersection data having a smallest total expected cost are selected as the intersection data which are likely to be candidates to be extracted in the next step in the A * algorithm. It is supposed to be stored. The number N of intersection data stored in the memory 79c can be selected arbitrarily.
For example, 10, 5, 3, 15, 20, etc. are selected.

【0028】一方、交差点データ保存ユニット35は、
直接CPU31とのデータ交換は行わず、交差点データ
管理ユニット34のサブユニットとして機能するように
なっている。交差点データ保存ユニット35は、インタ
フェイスレジスタ75を備えており、交差点データ管理
ユニット34のインタフェイスレジスタ74とデータバ
スを介して接続されている。インタフェイスレジスタ7
5はデータバスを介して最小値レジスタ76およびデー
タ書込回路77と接続されており、この両者76、77
は、制御バスを介して最小値検出回路78と接続されて
いる。交差点データ保存ユニット35は、更に、メモリ
79dを備えておりこの、メモリ79dは、データバス
を介して最小値レジスタ76および最小値検出回路78
と接続されている。
On the other hand, the intersection data storage unit 35 is
It does not directly exchange data with the CPU 31, but functions as a sub-unit of the intersection data management unit 34. The intersection data storage unit 35 includes an interface register 75, and is connected to the interface register 74 of the intersection data management unit 34 via a data bus. Interface register 7
Reference numeral 5 is connected to a minimum value register 76 and a data writing circuit 77 via a data bus.
Is connected to the minimum value detection circuit 78 via the control bus. The intersection data storage unit 35 further includes a memory 79d, which has a minimum value register 76 and a minimum value detection circuit 78 via a data bus.
Is connected to

【0029】インタフェイスレジスタ75は、交差点デ
ータ管理ユニット34と交差点データ保存ユニット35
との間で交差点データの授受を行うためのレジスタであ
る。書き込み時は交差点管理ユニット34から保存すべ
き交差点データがセットされ、読み出し時には最小値レ
ジスタ76で指定されるメモリ79d中の交差点データ
がセットされるようになっている。最小値レジスタ76
は、総予想コストが最も小さい交差点データが格納され
ている、メモリ79dのアドレスを保持するレジスタで
ある。データ書き込み回路77は、インタフェイスレジ
スタ75から供給された交差点データ中の交差点番号と
同一番号の交差点データがメモリ79d中に存在するか
否かを調査し、存在する場合は、両交差点データ中の総
予想コスト同士を比較し、値の小さい方の交差点データ
をメモリ79d中の同一アドレスに保存する。同一交差
点番号の交差点データが存在しない場合は、メモリ79
dの空いている領域にインタフェイスレジスタ75から
供給された交差点データを書き込むようになっている。
The interface register 75 includes an intersection data management unit 34 and an intersection data storage unit 35.
This is a register for exchanging intersection data with and from. At the time of writing, the intersection data to be stored is set from the intersection management unit 34, and at the time of reading, the intersection data in the memory 79d designated by the minimum value register 76 is set. Minimum value register 76
Is a register that holds the address of the memory 79d in which the intersection data with the smallest total expected cost is stored. The data writing circuit 77 investigates whether or not the intersection data having the same number as the intersection number in the intersection data supplied from the interface register 75 exists in the memory 79d. The total estimated costs are compared with each other, and the intersection data having the smaller value is stored at the same address in the memory 79d. If there is no intersection data with the same intersection number, the memory 79
The intersection data supplied from the interface register 75 is written in the empty area of d.

【0030】最小値検出回路78は、総予想コストが最
小値である交差点データをメモリ79dから調査し、そ
のアドレスを最小値レジスタ76にセットする。最小値
検出回路78は、交差点データの読み出し後インタフェ
イスレジスタ75によって起動され、および、メモリ7
9dへの交差点データの書き込みの後にデータ書込回路
77によって起動されるようになっている。メモリ79
dは、交差点データが格納されるランダムアクセスメモ
リである。このメモリ79dには、並べ替えユニット3
8内に格納される全交差点データのうち、交差点データ
管理ユニット34のメモリ79cに格納されているN個
の交差点データを除いた残りの交差点データが格納され
るようになっている。従って、並べ替えユニット38の
中で総予想コストがN−1番目に小さい交差点データ
が、交差点データ保存ユニット35の中で最も総予想コ
ストが小さい交差点データとなる。
The minimum value detection circuit 78 examines the intersection data having the minimum total estimated cost from the memory 79d and sets the address in the minimum value register 76. The minimum value detection circuit 78 is activated by the interface register 75 after reading the intersection data, and the memory 7
The data writing circuit 77 is activated after the intersection data is written in 9d. Memory 79
d is a random access memory in which intersection data is stored. The sorting unit 3 is included in the memory 79d.
Among all the intersection data stored in 8, the remaining intersection data excluding the N intersection data stored in the memory 79c of the intersection data management unit 34 is stored. Therefore, the intersection data with the smallest total expected cost in the rearrangement unit 38 is the intersection data with the smallest total estimated cost in the intersection data storage unit 35.

【0031】次に、このように構成された並べ替えユニ
ット38の動作について説明する。CPU31から最小
総予想コスト交差点の読み出し要求があると、交差点デ
ータ管理ユニット34は、データ管理レジスタ72に格
納されている最小値側のアドレスで指定される交差点デ
ータをメモリ79cから読み出し、データレジスタ71
にセットし、これを、最小総予想コスト交差点の交差点
データとしてCPU31に供給する。このように、デー
タ読み出し時には、まず最小総予想コスト交差点の交差
点データを瞬時にCPU31に返し、その後次の読み出
しまでの間に次の最小予想コスト交差点を探索する。す
なわち、データ読み出し後、交差点データ管理ユニット
34は、最大/最小値検出回路73を起動してデータ管
理レジスタ72に最大値、最小値をセットする。その
際、交差点データ保存ユニット35に交差点データが存
在する場合(並べ替えユニット38全体でN+1個以上
の交差点データを有している場合)は、交差点データ保
存ユニット35に対してデータの読み出しを要求する。
Next, the operation of the rearrangement unit 38 thus configured will be described. When the CPU 31 issues a read request for the minimum total expected cost intersection, the intersection data management unit 34 reads the intersection data specified by the address on the minimum value side stored in the data management register 72 from the memory 79c, and the data register 71
And supplies it to the CPU 31 as intersection data of the minimum total expected cost intersection. Thus, at the time of reading data, first, the intersection data of the minimum total expected cost intersection is instantly returned to the CPU 31, and then the next minimum expected cost intersection is searched until the next reading. That is, after reading the data, the intersection data management unit 34 activates the maximum / minimum value detection circuit 73 and sets the maximum value and the minimum value in the data management register 72. At this time, if the intersection data storage unit 35 has intersection data (when the sorting unit 38 as a whole has N + 1 or more intersection data), the intersection data storage unit 35 is requested to read the data. To do.

【0032】交差点データ保存ユニット35では、デー
タ読み出し要求があると、最小値レジスタ76で示され
るアドレスの交差点データをメモリ79dから読み取
り、インタフェイスレジスタ75にセットし、交差点デ
ータ管理ユニット34のインタフェイスレジスタ74に
供給する。インタフェイスレジスタ74に交差点データ
が供給されると、交差点データ管理ユニット34では、
供給された交差点データをメモリ79cに格納すると共
に、格納したアドレスをデータ管理レジスタ72の最大
値側に設定する。
When there is a data read request, the intersection data storage unit 35 reads the intersection data of the address indicated by the minimum value register 76 from the memory 79d, sets it in the interface register 75, and sets the interface of the intersection data management unit 34. It is supplied to the register 74. When the intersection data is supplied to the interface register 74, the intersection data management unit 34
The supplied intersection data is stored in the memory 79c, and the stored address is set on the maximum value side of the data management register 72.

【0033】一方、交差点データ保存ユニット35で
は、交差点データをインタフェイスレジスタ75からイ
ンタフェイスレジスタ74に供給した後、最小値検出回
路78を起動する。これにより最小値検出回路78で
は、メモリ79dの中から総予想コストの最小値を探
し、その交差点データが格納されているアドレスを最小
値レジスタ76に設定する。
On the other hand, the intersection data storage unit 35 supplies the intersection data from the interface register 75 to the interface register 74 and then activates the minimum value detection circuit 78. As a result, the minimum value detection circuit 78 searches the memory 79d for the minimum value of the total expected cost, and sets the address at which the intersection data is stored in the minimum value register 76.

【0034】次に、並べ替えユニット38への交差点デ
ータの書き込みについて説明する。並べ替えユニット3
8に格納されている全交差点データの内、総予想コスト
の最小値からN番目までのN個の交差点データが交差点
データ管理ユニット34に格納され、総予想コストがN
+1番目より大きい交差点データが交差点データ保存ユ
ニット35に格納されている。従って、CPU31から
の交差点データを並べ替えユニット38に書き込む場
合、データレジスタ71にセットされた交差点データの
総予想コストが、N番目の総予想コストよりも大きけれ
ば交差点データ保存ユニット35に格納し、小さければ
交差点データ管理ユニット34に格納すると共にメモリ
79cから総予想コストが最大の(N+1番目に小さ
い)交差点データを交差点データ保存ユニット35に転
送する。
Next, writing of intersection data into the rearrangement unit 38 will be described. Sorting unit 3
Among all the intersection data stored in No. 8, N pieces of intersection data from the minimum value of the total estimated cost to the Nth are stored in the intersection data management unit 34, and the total estimated cost is N.
The intersection data larger than + 1st is stored in the intersection data storage unit 35. Therefore, when the intersection data from the CPU 31 is written to the rearrangement unit 38, if the total expected cost of the intersection data set in the data register 71 is larger than the Nth total estimated cost, it is stored in the intersection data storage unit 35, If it is smaller, it is stored in the intersection data management unit 34 and the intersection data having the maximum total estimated cost (N + 1th smallest) is transferred from the memory 79c to the intersection data storage unit 35.

【0035】CPU31によってデータレジスタ71に
交差点データがセットされると、セットされた交差点デ
ータおよび、メモリ79cからデータ管理レジスタ72
の最大値側で指定されるアドレスの交差点データが、そ
れぞれセレクタ65cに供給される。また、セレクタ6
5cに供給される両交差点データの内、総予想コストの
値がそれぞれ比較器64cで比較される。比較器64c
における比較の結果、データレジスタ71側の総予想コ
ストが大きければメモリ79c中の交差点データと入れ
替える必要がないので、データ管理レジスタ72の設定
を変えることなく、交差点データ保存ユニット35に供
給する。すなわち、比較器64からは制御信号”1”が
出力され、セレクタ65cはこの制御信号”1”によ
り、データレジスタ71から供給された交差点データを
インタフェイスレジスタ74を介して交差点データ保存
ユニット35に供給して、交差点データ管理ユニット3
4における交差点データの書き込み処理を終了する。
When the intersection data is set in the data register 71 by the CPU 31, the set intersection data and the data management register 72 from the memory 79c are set.
The intersection data of the address designated on the maximum value side of is respectively supplied to the selector 65c. Also, the selector 6
Of the two intersection data supplied to 5c, the value of the total expected cost is compared by the comparator 64c. Comparator 64c
If the total estimated cost on the side of the data register 71 is large as a result of the comparison in (1), it is not necessary to replace it with the intersection data in the memory 79c. That is, the control signal "1" is output from the comparator 64, and the selector 65c receives the intersection data supplied from the data register 71 to the intersection data storage unit 35 via the interface register 74 by the control signal "1". Supply and intersection data management unit 3
The writing process of the intersection data in 4 is ended.

【0036】一方、メモリ79c側の総予想コストが大
きければ、CPU31から供給された交差点データとメ
モリ79c中の総予想コストが最大である交差点データ
とを入れ替える必要がある。すなわち、比較器64から
は制御信号”0”が出力され、セレクタ65cは、メモ
リ79cから供給された交差点データをインタフェイス
レジスタ74を介して交差点データ保存ユニット35に
供給する。更に、データレジスタ71は、CPU31に
よってセットされた交差点データをメモリ79cに格納
する。その後、最大/最小値検出回路73は、メモリ7
9cに格納されているN個の交差点データから、総予想
コストの最大値と最小値を検出し、その交差点データが
格納されているアドレスをデータ管理レジスタ72に保
存して、交差点データ管理ユニット34による書き込み
処理を終了する。
On the other hand, if the total estimated cost on the memory 79c side is large, it is necessary to replace the intersection data supplied from the CPU 31 with the intersection data having the maximum total estimated cost in the memory 79c. That is, the control signal "0" is output from the comparator 64, and the selector 65c supplies the intersection data supplied from the memory 79c to the intersection data storage unit 35 via the interface register 74. Further, the data register 71 stores the intersection data set by the CPU 31 in the memory 79c. After that, the maximum / minimum value detection circuit 73 causes the memory 7
The maximum value and the minimum value of the total expected cost are detected from the N number of intersection data stored in 9c, the address where the intersection data is stored is stored in the data management register 72, and the intersection data management unit 34 Ends the writing process.

【0037】一方、交差点データ管理ユニット34から
交差点データ保存ユニット35のインタフェイスレジス
タ75に交差点データが供給されると、データ書込回路
77は、供給された交差点番号と同一番号の交差点デー
タがメモリ79d中に存在するか否かを調査すること
で、その交差点までの別の経路が探索されているか否か
を調べる。同一の交差点番号が存在する場合、データ書
込回路77は、両交差点データ中の総予想コスト同士を
比較し、値の小さい方の交差点データをメモリ79d中
の同一アドレスに保存する。同一交差点番号の交差点デ
ータが存在しない場合は、メモリ79dの空いている領
域にインタフェイスレジスタ75から供給された交差点
データを書き込んで保存する。交差点データをメモリ7
9dに保存した後、データ書込回路77は最小値検出回
路78を起動する。最小値検出回路78は、総予想コス
トが最小値である(並べ替えユニット38全体ではN+
1番目に小さい)交差点データをメモリ79dから調査
し、そのアドレスを最小値レジスタ76にセットして、
交差点データ保存ユニット35による交差点データ書き
込み時の処理を終了する。
On the other hand, when the intersection data management unit 34 supplies the intersection data to the interface register 75 of the intersection data storage unit 35, the data writing circuit 77 stores the intersection data having the same number as the supplied intersection data in the memory. By investigating whether it exists in 79d, it is examined whether another route to the intersection is searched. If the same intersection number exists, the data writing circuit 77 compares the total expected costs in the two intersection data with each other and stores the intersection data with the smaller value in the same address in the memory 79d. If there is no intersection data with the same intersection number, the intersection data supplied from the interface register 75 is written and saved in an empty area of the memory 79d. Memory for intersection data 7
After saving in 9d, the data write circuit 77 activates the minimum value detection circuit 78. The minimum value detection circuit 78 has the minimum total estimated cost (N + in the rearrangement unit 38 as a whole).
The first (smallest) intersection data is examined from the memory 79d, and its address is set in the minimum value register 76,
The process of writing the intersection data by the intersection data storage unit 35 ends.

【0038】次に、CPU31による経路探索処理の動
作について、図7のフローチャートを参照して説明す
る。CPU31は、経路探索処理の最初に、入力された
出発地を最小総予想コスト交差点とし(ステップ1
1)、この最小総予想コスト交差点から進入可能な隣接
する交差点を記憶装置37の道路データから調べ、これ
らを対象交差点とする(ステップ12)。そして、これ
ら対象交差点の数Pと、各対象交差点についての必要な
道路データをRAM36の所定領域に格納する。ここで
必要な道路データとしては、各対象交差点の交差点番
号、道路長(交差点間の距離)、および座標値(緯度、
経度)等が格納される。次に、P個の対象交差点に対
し、主として実コストの算出処理と、総予想コストの算
出処理とをカウントするためにQおよびRを“1”に設
定する(ステップ14)。
Next, the operation of the route search processing by the CPU 31 will be described with reference to the flowchart of FIG. At the beginning of the route search process, the CPU 31 sets the input departure place as the minimum total expected cost intersection (step 1
1) From the road data in the storage device 37, check the adjacent intersections that can enter from this minimum total expected cost intersection, and set these as the target intersections (step 12). Then, the number P of these target intersections and necessary road data for each target intersection are stored in a predetermined area of the RAM 36. The road data required here is the intersection number of each target intersection, the road length (distance between intersections), and the coordinate values (latitude, latitude,
(Longitude) etc. are stored. Next, for the P target intersections, Q and R are set to "1" mainly for counting the actual cost calculation process and the total expected cost calculation process (step 14).

【0039】次に、CPU31は、出発地からQ番目対
象交差点(交差点番号がQ番目に小さい対象交差点を表
す。以下同様に表す。)までの実コストを算出する。す
なわち、最小総予想コスト交差点における実コストに、
Q番目対象交差点までの道路長を加算する(ステップ1
5)。例えば、図2おいて、交差点1が最小総予想コス
ト交差点で交差点2がQ番目対象交差点とした場合に、
交差点2での実コスト=S1+C1を算出する。
Next, the CPU 31 calculates the actual cost from the departure point to the Qth target intersection (representing the target intersection having the Qth smallest intersection number. The same applies hereinafter). That is, the minimum total expected cost is the actual cost at the intersection,
Add the road length to the Qth target intersection (step 1
5). For example, in FIG. 2, when the intersection 1 is the minimum total expected cost intersection and the intersection 2 is the Qth target intersection,
The actual cost at intersection 2 = S1 + C1 is calculated.

【0040】そしてCPU31は、Q番目対象交差点か
ら目的地交差点までの予想コスト(両交差点間の直線距
離)を、距離計算ユニット33で計算させるために、Δ
XとΔYを算出する。すなわち、Q番目対象交差点と目
的地交差点の両座標をRAM36から読み出し、両座標
のX成分の差ΔXとY成分の差ΔYを算出し、その値を
Q番目対象交差点に対する相対座標としてRAM36に
格納する(ステップ16)。そしてR=1である場合
(ステップ17;Y)、R番目対象交差点のΔXとΔY
を距離計算ユニット33にセットする(ステップ1
8)。すなわち、ΔXをX座標レジスタ61に、ΔYを
Y座標レジスタ62にセットする。
Then, the CPU 31 calculates the estimated cost from the Q-th target intersection to the destination intersection (the straight line distance between the two intersections) by the distance calculation unit 33 by Δ.
Calculate X and ΔY. That is, both the coordinates of the Qth target intersection and the destination intersection are read from the RAM 36, the difference ΔX of the X component and the difference ΔY of the Y component of both coordinates are calculated, and the calculated values are stored in the RAM 36 as relative coordinates to the Qth target intersection. (Step 16). When R = 1 (step 17; Y), ΔX and ΔY of the Rth target intersection
Is set in the distance calculation unit 33 (step 1
8). That is, ΔX is set in the X coordinate register 61 and ΔY is set in the Y coordinate register 62.

【0041】次に、CPU31は、距離計算ユニット3
3が予想コストの計算を終了したか否かを判断する(ス
テップ19)。距離計算ユニット33が予想コストの計
算中である場合(ステップ19;N)、Q=Pか否か、
すなわちステップ12で調べた全ての対象交差点につい
て実コストの算出とRAM36への格納が終了したか否
かを判断する(ステップ20)。Q≠Pである場合(ス
テップ20;N)、まだ実コストを算出していない対象
交差点があるので、Qに1を加えた後(ステップ2
1)、ステップ15に移行する。一方、Q=Pである場
合(ステップ20;Y)、全ての対象交差点についての
実コストの算出が終了したので、ステップ16に移行す
る。
Next, the CPU 31 controls the distance calculation unit 3
3 determines whether or not the calculation of the estimated cost has been completed (step 19). If the distance calculation unit 33 is calculating the expected cost (step 19; N), whether Q = P,
That is, it is determined whether or not the calculation of the actual costs and the storage in the RAM 36 have been completed for all the target intersections checked in step 12 (step 20). If Q ≠ P (step 20; N), there is a target intersection for which the actual cost has not been calculated yet, so after adding 1 to Q (step 2).
1), shift to step 15. On the other hand, when Q = P (step 20; Y), the calculation of the actual costs for all the target intersections is completed, so the process proceeds to step 16.

【0042】ステップ19において、距離計算ユニット
33が予想コストの計算が終了した場合、すなわち、距
離値レジスタ63に予想コストがセットされている場合
(Y)、CPU31は、(R+1)番目対象交差点の相
対座標(ΔX、ΔY)を距離計算ユニット33にセット
する(ステップ22)。そして、R番目対象交差点の総
予想コストを算出する(ステップ23)。すなわちCP
U31は、距離値レジスタ63から予想コストを読み出
すと共に、ステップ16で格納したR番目対象交差点の
実コストをRAM36から読み出し、両者を加算するこ
とで総予想コスト(=実コスト+予想コスト)を算出す
る。CPU31は、算出した総予想コストを含め、R番
目対象交差点の交差点データを並べ替えユニット38の
データレジスタ71にセットする(ステップ24)。こ
れにより、並べ替えユニット38では、前記したデータ
の書込み処理がCPU31の処理と並行して行われる。
In step 19, when the distance calculation unit 33 finishes the calculation of the estimated cost, that is, when the estimated cost is set in the distance value register 63 (Y), the CPU 31 determines the (R + 1) th target intersection. The relative coordinates (ΔX, ΔY) are set in the distance calculation unit 33 (step 22). Then, the total expected cost of the Rth target intersection is calculated (step 23). That is, CP
The U31 reads out the estimated cost from the distance value register 63, reads out the actual cost of the Rth target intersection stored in step 16 from the RAM 36, and adds both of them to calculate the total estimated cost (= actual cost + estimated cost). To do. The CPU 31 sets the intersection data of the Rth target intersection in the data register 71 of the rearrangement unit 38, including the calculated total estimated cost (step 24). As a result, in the rearrangement unit 38, the above-described data writing process is performed in parallel with the process of the CPU 31.

【0043】次にCPU31は、R番目対象交差点が目
的地交差点であるか否か判断し目的地交差点である場合
には(ステップ25;Y)、更にRAM36に最適コス
トが既に格納されているか否かを判断する(ステップ2
6)。最適コストが格納されてない(すなわち、目的地
交差点までの経路が未だ発見されていない)場合(ステ
ップ26;N)、および、最適コストが格納されており
(ステップ26;Y)、R番目対象交差点での総予想コ
ストの方が最適コストよりも小さい場合(ステップ2
7;Y)、CPU31は、RAM36の最適コストの値
を、ステップ23で算出したR番目対象交差点での総予
想コストに更新する(ステップ28)。
Next, the CPU 31 judges whether the Rth target intersection is the destination intersection or not, and if it is the destination intersection (step 25; Y), further determines whether or not the optimum cost is already stored in the RAM 36. Judge whether or not (Step 2
6). If the optimum cost is not stored (that is, the route to the destination intersection is not yet found) (step 26; N), and the optimum cost is stored (step 26; Y), the R-th target If the total expected cost at the intersection is less than the optimal cost (step 2
7; Y), the CPU 31 updates the value of the optimum cost in the RAM 36 to the total expected cost at the Rth target intersection calculated in step 23 (step 28).

【0044】R番目対象交差点が目的値交差点でない場
合(ステップ25;N)とR番目対象交差点での総予想
コストが最適コストよりも大きい場合には、最適コスト
の更新を行うことなく、または、総予想コストの更新
(ステップ28)の後ステップ29に移行し、R=Pで
あるか否かを判断する。R≠Pである場合(ステップ2
9;N)、総予想コストの算出が終了していない対象交
差点があるので、Rに“1”を加えた後(ステップ3
0)、ステップ20に移行する。
If the Rth target intersection is not the target value intersection (step 25; N) and the total expected cost at the Rth target intersection is larger than the optimum cost, the optimum cost is not updated, or After updating the total expected cost (step 28), the process proceeds to step 29, and it is determined whether R = P. If R ≠ P (step 2
9; N), there is a target intersection for which calculation of the total expected cost has not been completed, so after adding “1” to R (step 3)
0), shift to step 20.

【0045】一方、R=Pである場合(ステップ29;
Y)、P固の対象交差点についての総予想コスト算出が
終了したので、CPU31は、並べ替えユニット38に
対し、次の最小総予想コスト交差点の交差点データを要
求する(ステップ31)。並べ替えユニット38のデー
タレジスタ71から、最小総予想コスト交差点の交差点
データを取得したら(ステップ32;Y)、CPU31
は、その交差点データをRAM36に格納する。
On the other hand, when R = P (step 29;
Y), since the total expected cost calculation for the P-specific target intersection is completed, the CPU 31 requests the rearrangement unit 38 for the intersection data of the next minimum total expected cost intersection (step 31). When the intersection data of the minimum total expected cost intersection is acquired from the data register 71 of the rearrangement unit 38 (step 32; Y), the CPU 31
Stores the intersection data in the RAM 36.

【0046】そして、RAM36に最適コストが既に格
納されているか否かを判断し、格納されていなければ
(ステップ34;N)そのままステップ12に移行す
る。一方、最適コストが格納されている場合(ステップ
34;Y)、更に総予想コストとの大小を比較する(ス
テップ35)。総予想コストが最適コスト以下の場合に
は、総予想コスト≦B<最適コストを満たす、他の最適
コストBの経路を探索するために、ステップ12に移行
する。最小総予想コスト交差点の総予想コストが最適コ
ストよりも大きい場合(ステップ35;Y)、現在の最
適コストが最も小さく、これよりも最適コストが小さく
なる他の経路は発見できないので、処理を終了する。
Then, it is judged whether or not the optimum cost is already stored in the RAM 36, and if it is not stored (step 34; N), the process directly proceeds to step 12. On the other hand, when the optimum cost is stored (step 34; Y), the size of the total estimated cost is further compared (step 35). If the total expected cost is less than or equal to the optimum cost, the process proceeds to step 12 to search for a route with another optimum cost B that satisfies the total predicted cost ≦ B <the optimum cost. Minimum total expected cost If the total estimated cost of the intersection is larger than the optimum cost (step 35; Y), the current optimum cost is the smallest, and another route having a smaller optimum cost cannot be found, so the process ends. To do.

【0047】以上説明したように、本実施形態の経路探
索装置によれば、A* アルゴリズムにおける距離計算パ
ートとデータソートパートをCPU31と独立して動作
する距離計算ユニット33、並べ替えユニット38とし
て配置したので、探索処理のパイプライン化が可能とな
り、全体としては短い時間で探索を終了する。
As described above, according to the route search apparatus of this embodiment, the distance calculation part and the data sort part in the A * algorithm are arranged as the distance calculation unit 33 and the rearrangement unit 38 which operate independently of the CPU 31. Therefore, it becomes possible to pipeline the search processing, and the search is completed in a short time as a whole.

【0048】さらに、距離計算ユニット33では、距離
計算に必要なハードウェアが簡単な構成で構築でき、A
* アルゴリズムを適用するに十分な精度と高速な距離計
算が可能となる。この、距離計算ユニット33は、距離
計算を三角関数の正接を用いて計算し、三角形の角度分
解能を数百程度に限定した低精度のテーブルを用いて計
算を行なうので、高速な距離計算が可能になる。
Furthermore, in the distance calculation unit 33, the hardware required for distance calculation can be constructed with a simple configuration, and
* It is possible to calculate the distance with high accuracy and sufficient to apply the algorithm. The distance calculation unit 33 calculates the distance using the tangent of the trigonometric function, and uses a low-precision table that limits the angular resolution of the triangle to about several hundreds, so high-speed distance calculation is possible. become.

【0049】また、データソートパートを担当する並べ
替えユニット38では、簡単な構成で最小値が可能とな
り、多大な計算量を要するソフトウェアによる並べ替え
を不要とし、高速な探索が可能となる。
Further, in the rearrangement unit 38 in charge of the data sort part, the minimum value is possible with a simple structure, the rearrangement by the software which requires a large amount of calculation is not necessary, and the high speed search is possible.

【0050】以上説明した実施形態では、従来CPUが
行っていた距離計算パートとデータソートパートを、距
離計算ユニット33と並べ替えユニット38が行うよう
にしたが、図3(b)に示すように、データソートをC
PUで行い、距離計算のみ距離計算ユニットで独立して
行うようにしてもよい。また、以上説明した実施形態で
は、A* アルゴリズムを具体化した処理として図7に示
すフローチャートに従った動作について説明したが、本
発明では、この動作に限定されるものではなく、CPU
とサブユニットとのパイプライン処理によるものであれ
ば、他の動作によりA* アルゴリズムを実現するもので
あってもよい。
In the embodiment described above, the distance calculation part and the data sort part, which were conventionally performed by the CPU, are performed by the distance calculation unit 33 and the rearrangement unit 38. However, as shown in FIG. , Data sort C
The calculation may be performed by the PU and only the distance calculation may be performed independently by the distance calculation unit. Further, in the embodiment described above, the operation according to the flowchart shown in FIG. 7 has been described as the processing embodying the A * algorithm, but the present invention is not limited to this operation, and the CPU is not limited to this operation.
The A * algorithm may be realized by another operation as long as it is based on the pipeline processing between the sub-unit and the sub-unit.

【0051】また以上説明した実施形態では、目的地か
ら所定の交差点を通過して対象交差点に到るまでの実際
の距離(道路長)を実コストとして説明したが、本発明
では他に、走り安さを考慮した相対距離を実コストの算
出に加味するようにしてもよい。例えば、信号機が設置
された交差点の場合には実際の距離に所定の距離Xmだ
け実コストを加算するようにしてもよい。その他、交差
点間を結ぶ道路幅、信号や踏切の有無、最高速度等の条
件を考慮した距離を加減するようにしてもよい。
In the embodiment described above, the actual distance (road length) from the destination to the target intersection after passing through the predetermined intersection has been described as the actual cost. You may make it consider the relative distance which considered cheapness in calculation of real cost. For example, in the case of an intersection where a traffic light is installed, the actual cost may be added to the actual distance by a predetermined distance Xm. In addition, the distance that considers conditions such as the width of the road connecting the intersections, the presence or absence of traffic lights and crossings, and the maximum speed may be adjusted.

【0052】[0052]

【発明の効果】以上説明したように、本発明の経路探索
装置によれば、A* アルゴリズムの各処理をパイプライ
ン処理することが可能な構成としたので、目的地までの
経路探索を短時間で終了することができる。
As described above, according to the route search apparatus of the present invention, each process of the A * algorithm can be pipelined, so that the route search to the destination can be performed in a short time. You can finish with.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の経路探索装置における一実施形態の構
成図である。
FIG. 1 is a configuration diagram of an embodiment of a route search device of the present invention.

【図2】同上、経路探索のための道路ネットワークを表
した説明図である。
FIG. 2 is an explanatory diagram showing a road network for route search in the same as above.

【図3】同上、A* アルゴリズムにおける処理時間の内
訳を説明するための模式図である。
FIG. 3 is a schematic diagram for explaining a breakdown of processing time in the A * algorithm.

【図4】同上、経路探索装置における距離計算ユニット
の構成図である。
FIG. 4 is a configuration diagram of a distance calculation unit in the route search device.

【図5】同上、経路探索装置における並べ替えユニット
の構成図である。
FIG. 5 is a configuration diagram of a rearrangement unit in the route search device.

【図6】同上、A* アルゴリズムの処理動作を説明する
フローチャートである。
FIG. 6 is a flowchart explaining the processing operation of the A * algorithm.

【図7】同上、経路探索装置におけるCPUの処理動作
を説明するフローチャートである。
FIG. 7 is a flowchart explaining a processing operation of a CPU in the route search device.

【図8】従来の経路探索装置における処理時間の内訳を
説明するための模式図である。
FIG. 8 is a schematic diagram for explaining a breakdown of processing time in a conventional route search device.

【符号の説明】[Explanation of symbols]

31 CPU 32 経路探索高速化装置 33 距離計算ユニット 34 交差点データ管理ユニット 35 交差点データ保存ユニット 36 RAM 37 記憶装置 61 X座標レジスタ 62 Y座標レジスタ 63 距離値レジスタ 64、64c 比較器 65a、65b、65c セレクタ 66a、66b シフトレジスタ 67 整数徐算器 68 乗算器 69 定数テーブル 71 データレジスタ 72 データ管理レジスタ 73 最大/最小値検出回路 74、75 インタフェイスレジスタ 76 最小値レジスタ 77 データ書き込み回路 78 最小値検出回路 79c、79d メモリ 31 CPU 32 Route search speedup device 33 Distance calculation unit 34 Intersection data management unit 35 Intersection data storage unit 36 RAM 37 Storage device 61 X coordinate register 62 Y coordinate register 63 Distance value register 64, 64c Comparator 65a, 65b, 65c Selector 66a, 66b Shift register 67 Integer divider 68 Multiplier 69 Constant table 71 Data register 72 Data management register 73 Maximum / minimum value detection circuit 74, 75 Interface register 76 Minimum value register 77 Data writing circuit 78 Minimum value detection circuit 79c , 79d memory

───────────────────────────────────────────────────── フロントページの続き (72)発明者 牛来 直樹 東京都千代田区外神田2丁目19番12号 株 式会社エクォス・リサーチ内 (72)発明者 北野 聡 東京都千代田区外神田2丁目19番12号 株 式会社エクォス・リサーチ内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Naoki Ushiki 2-19-12 Sotokanda, Chiyoda-ku, Tokyo Equus Research Co., Ltd. (72) Inventor Satoshi Kitano 2-19 Sotokanda, Chiyoda-ku, Tokyo No. 12 Stock Company Equus Research

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 A* アルゴリズムを用いて目的地までの
最適経路を探索する経路探索装置において、 最適経路探索処理のうち、独立して所定の処理を行うサ
ブユニットと、このサブユニットによる処理以外の処理
を行う制御手段とを備え、 前記サブユニットは、予想コストを算出する予想コスト
算出手段で構成されることを特徴とする経路探索装置。
1. A route search device for searching an optimum route to a destination using an A * algorithm, wherein a sub-unit that independently performs a predetermined process in the optimum route search process and a process other than this sub-unit A route search device comprising: a control unit configured to perform the process described above, wherein the subunit includes an estimated cost calculation unit that calculates an estimated cost.
【請求項2】 前記サブユニットは更に、 前記予想コスト算出手段による算出結果を用いて得られ
る総予想コストを記憶保持する総予想コスト保持手段
と、 この総予想コスト保持手段に記憶された総予想コストの
中で最も有望な探索候補を抽出する最適候補抽出手段
と、を具備することを特徴とする請求項1に記載の経路
探索装置。
2. The sub-unit further comprises total estimated cost holding means for storing and holding total estimated cost obtained by using the calculation result by the estimated cost calculating means, and total estimated cost stored in the total estimated cost holding means. The route search device according to claim 1, further comprising: an optimal candidate extraction unit that extracts a most promising search candidate in cost.
【請求項3】 前記予想コスト算出手段は、所定の角度
分解能を有するテーブルにより、三角関数の正接を用い
て距離計算を行なう、ことを特徴とする請求項1または
請求項2に記載の経路探索装置。
3. The route search according to claim 1, wherein the estimated cost calculation means calculates a distance by using a tangent of a trigonometric function with a table having a predetermined angular resolution. apparatus.
【請求項4】 前記最適候補抽出手段は、ハードウェア
比較器を用いて最も有望な探索候補を抽出する、ことを
特徴とする請求項2に記載の経路探索装置。
4. The route search device according to claim 2, wherein the optimum candidate extraction means extracts the most promising search candidate by using a hardware comparator.
JP6210696A 1996-02-23 1996-02-23 Route seeking device Pending JPH09229704A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6210696A JPH09229704A (en) 1996-02-23 1996-02-23 Route seeking device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6210696A JPH09229704A (en) 1996-02-23 1996-02-23 Route seeking device

Publications (1)

Publication Number Publication Date
JPH09229704A true JPH09229704A (en) 1997-09-05

Family

ID=13190478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6210696A Pending JPH09229704A (en) 1996-02-23 1996-02-23 Route seeking device

Country Status (1)

Country Link
JP (1) JPH09229704A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009003772A (en) * 2007-06-22 2009-01-08 Asyst Technologies Japan Inc Path planning system and method, conveyance system, and computer program
JP2009031054A (en) * 2007-07-25 2009-02-12 Toyota Motor Corp Route searching system, route searching method, route searching program, and autonomous moving body

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009003772A (en) * 2007-06-22 2009-01-08 Asyst Technologies Japan Inc Path planning system and method, conveyance system, and computer program
JP2009031054A (en) * 2007-07-25 2009-02-12 Toyota Motor Corp Route searching system, route searching method, route searching program, and autonomous moving body

Similar Documents

Publication Publication Date Title
US6598016B1 (en) System for using speech recognition with map data
US7526492B2 (en) Data structure of map data, map data storage medium, map data updating method and map data processing apparatus
US5499331A (en) Method of document layout process and system
EP1909068B1 (en) Map data distribution system
US8364717B2 (en) Hardware accelerated shortest path computation
US20150356759A1 (en) Customizable route planning using graphics processing unit
US6885937B1 (en) Shortcut generator
EP0955520B1 (en) Route searching device
CN1602485A (en) Hybrid search memory for network processor and computer systems
JP2001116572A (en) On-vehicle navigation system and recording medium recorded with processing program in on-vehicle navigation system
US6029112A (en) Postal route system and method for fast algorithm of the shortest path in the same
CN109582962A (en) Segmenting method and device
JPH09229704A (en) Route seeking device
CN113553175A (en) Optimal sorting algorithm selection method facing traffic data flow
US7836047B2 (en) Method for assignment of point level address geocodes to street networks
JPH08180071A (en) Evaluating system for result of data base retrieval
JP4116681B2 (en) Optimal route search method
JPH07146880A (en) Document retrieval device and method therefor
JP2001264097A (en) Method and device for searching optimum route, and recording medium with program related to the method recorded therein
JPH1019587A (en) Calculating method for reachable range on vector map within specified time
JP2001142914A (en) Route search method and storage medium
KR100461850B1 (en) A searching System for position information and the method for the same
Vanhove Alternative routing algorithms for road networks
CN111366157B (en) Method and device for matching position with road, equipment and storage medium
JP3007444B2 (en) Plotter control method and plotter device