JP2017037468A - Route search system, route search method and program - Google Patents

Route search system, route search method and program Download PDF

Info

Publication number
JP2017037468A
JP2017037468A JP2015158256A JP2015158256A JP2017037468A JP 2017037468 A JP2017037468 A JP 2017037468A JP 2015158256 A JP2015158256 A JP 2015158256A JP 2015158256 A JP2015158256 A JP 2015158256A JP 2017037468 A JP2017037468 A JP 2017037468A
Authority
JP
Japan
Prior art keywords
node
directions
expansion
adjacent
cost
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
JP2015158256A
Other languages
Japanese (ja)
Inventor
英典 藪下
Hidenori Yabushita
英典 藪下
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2015158256A priority Critical patent/JP2017037468A/en
Publication of JP2017037468A publication Critical patent/JP2017037468A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To search for a route by eliminating an extraneous route candidate.SOLUTION: A route search system includes: a node spread part for repeating processing of calculating a cost for each of plural grids corresponding to plural directions of spreading from a minimum-cost node, moving by selecting a minimum-cost node, and setting and spreading the post-move node as a minimum-cost node; and a setup part for setting the number of directions of spreading of each node of spreading destination from the minimum-cost node. In a case where a node of a spreading destination is determined to be on an extension line from an adjacent node of a movement origin in a movement direction toward a minimum-cost node for which the number of spreading directions is set at "3", the setup part sets the number of spreading directions at "3" for the node of the spreading destination, whereas in a case where the node of the spreading destination is determined to be not on the extension line from the adjacent node of the movement origin in a movement direction toward the minimum-cost node for which the number of spreading directions is set at "3", the setup part sets the number of spreading directions at "2" for the node of the spreading destination.SELECTED DRAWING: Figure 3

Description

本発明は、グリッドで表された領域に含まれる始点から終点までの経路のうち、そのコストが最小のものを選択する経路探索システム、経路探索方法及びプログラムに関するものである。   The present invention relates to a route search system, a route search method, and a program for selecting a route having the lowest cost among routes from a start point to an end point included in an area represented by a grid.

例えば、最小コストのノードを展開し、展開された最小コストのノードに対する移動方向に応じて最小コストのノードからの展開方向の数を設定する経路探索システムが知られている(特許文献1参照)。この経路探索システムにおいては、移動方向が斜め方向の場合に、展開方向の数を5に設定し、移動方向が縦方向、又は横方向の場合に、展開方向の数を3に設定している。   For example, there is known a route search system that expands a minimum cost node and sets the number of expansion directions from the minimum cost node in accordance with the movement direction with respect to the expanded minimum cost node (see Patent Document 1). . In this route search system, the number of development directions is set to 5 when the movement direction is oblique, and the number of development directions is set to 3 when the movement direction is vertical or horizontal. .

特開2011−128758号公報JP 2011-128758 A

上記経路探索システムにおいては、探索枝を常に5分岐(展開方向の数を5)あるいは3分岐(展開方向の数を3)させて全進行方向を経路探索している。この場合、明らかに最短経路の候補となり得ない無駄な経路候補を含めて経路探索を行うこととなるため、経路探索時間の短時間化に改善の余地が見込まれる。
本発明は、上記の問題点に鑑みてなされたものであり、無駄な経路候補を除いて経路探索を行うことで経路探索時間の短時間化を行うことができる経路探索システム、経路探索方法及びプログラムを提供することを目的とする。
In the route search system, the search branch is always searched for routes in all traveling directions with five branches (the number of development directions is five) or three branches (the number of development directions is three). In this case, since the route search is performed including a useless route candidate that cannot clearly become the shortest route candidate, there is room for improvement in shortening the route search time.
The present invention has been made in view of the above problems, and a route search system, a route search method, and a route search method that can shorten the route search time by performing route search by removing useless route candidates. The purpose is to provide a program.

上記目的を達成するための本発明の一態様は、グリッドで表された領域に含まれる始点から終点までの経路のうち、そのコストが最小のものを選択する経路探索システムであって、最小コストのノードからの複数の展開方向に応じた複数のグリッドに対してコストを計算して、最小コストのノードを選択して移動し、さらに該移動後のノードを最小コストのノードとして設定して展開していく処理を繰り返すノード展開部と、前記最小コストのノードからの展開先の各ノードの展開方向の数を設定する設定部と、を備え、前記設定部は、前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定し、前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定した場合に、該展開先のノードの展開方向の数を2に設定する、
ことを特徴とする経路探索システムである。
この一態様において、障害物が存在するグリッドに隣接するノードで前記展開方向の数を増加させてもよい。
この一態様において、前記設定部は、前記障害物のグリッドに隣接する前記最小コストのノードに対して、前記障害物のグリッドの縦又は横方向に隣接する移動元の隣接ノードから移動したと判定した場合に、該最小コストのノードの展開方向の数を5に設定し、 前記障害物のグリッドに隣接する前記最小コストのノードに対して、前記障害物のグリッドの斜め方向に隣接する移動元の隣接ノード、又は、障害物のグリッドに隣接しない移動元の隣接ノードから移動したと判定した場合に、前記最小コストのノードの展開方向の数を4に設定し、前記展開方向の数が4あるいは5に設定された最小コストのノードからの展開先のノードの展開方向の数を3に設定してもよい。
この一態様において、前記ノード展開部は、前記設定部により展開方向の数を2と設定された最小コストのノードを、該最小コストのノードに対する隣接ノードからの移動方向、および、前記延長線と平行方向、の2方向に展開してもよい。
上記目的を達成するための本発明の一態様は、グリッドで表された領域に含まれる始点から終点までの経路のうち、そのコストが最小のものを選択する経路探索方法であって、 最小コストのノードからの複数の展開方向に応じた複数のグリッドに対してコストを計算して、最小コストのノードを選択して移動し、さらに該移動後のノードを最小コストのノードとして設定して展開していく処理を繰り返すステップと、前記最小コストのノードからの展開先の各ノードの展開方向の数を設定するステップと、を含み、前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定し、前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定した場合に、該展開先のノードの展開方向の数を2に設定する、ことを特徴とする経路探索方法であってもよい。
上記目的を達成するための本発明の一態様は、グリッドで表された領域に含まれる始点から終点までの経路のうち、そのコストが最小のものを選択するプログラムであって、 最小コストのノードからの複数の展開方向に応じた複数のグリッドに対してコストを計算して、最小コストのノードを選択して移動し、さらに該移動後のノードを最小コストのノードとして設定して展開していく処理を繰り返す処理と、前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定する処理と、前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定した場合に、該展開先のノードの展開方向の数を2に設定する処理と、をコンピュータに実行させる、ことを特徴とするプログラムであってもよい。
One aspect of the present invention for achieving the above object is a route search system that selects a route from the start point to the end point included in an area represented by a grid and that has the lowest cost, and the minimum cost. Calculate the cost for multiple grids according to multiple deployment directions from the selected node, select and move the node with the least cost, and set the node after the move as the least cost node for deployment A node expansion unit that repeats the processing to be performed, and a setting unit that sets the number of expansion directions of each node of the expansion destination from the node of the minimum cost, the setting unit, the node of the expansion destination, When it is determined that the node of the minimum cost with the number of expansion directions set to 3 is on the extension line of the movement direction from the adjacent node of the movement source, the number of expansion directions of the node of the expansion destination is determined. And when it is determined that the node of the deployment destination is not on the extension line in the movement direction from the adjacent node of the movement source with respect to the node of the minimum cost in which the number of deployment directions is set to 3, Set the number of deployment directions of the deployment destination node to 2,
This is a route search system characterized by that.
In this aspect, the number of the deployment directions may be increased at a node adjacent to the grid where the obstacle exists.
In this aspect, the setting unit determines that the minimum cost node adjacent to the obstacle grid has moved from the adjacent node of the movement source adjacent in the vertical or horizontal direction of the obstacle grid. In this case, the number of deployment directions of the minimum cost node is set to 5, and the movement source adjacent in the diagonal direction of the obstacle grid to the minimum cost node adjacent to the obstacle grid. The number of deployment directions of the minimum cost node is set to 4 and the number of deployment directions is 4 when it is determined that the node has moved from the adjacent node of the movement source that is not adjacent to the grid of obstacles. Alternatively, the number in the deployment direction of the deployment destination node from the minimum cost node set to 5 may be set to 3.
In this aspect, the node expansion unit includes a minimum cost node whose number of expansion directions is set to 2 by the setting unit, a movement direction from an adjacent node to the minimum cost node, and the extension line. You may expand | deploy in two directions, a parallel direction.
One aspect of the present invention for achieving the above object is a route search method for selecting a route having the lowest cost among routes from a start point to an end point included in an area represented by a grid. Calculate the cost for multiple grids according to multiple deployment directions from the selected node, select and move the node with the least cost, and set the node after the move as the least cost node for deployment And a step of setting the number of expansion directions of each node of the expansion destination from the node with the lowest cost, wherein the number of expansion directions is 3 in the expansion destination node. When it is determined that the node of the minimum cost set is on the extension line of the movement direction from the movement source adjacent node, the number of expansion directions of the expansion destination node is set to 3, and the expansion When it is determined that the previous node is not on the extension line in the movement direction from the adjacent node of the movement source with respect to the node of the minimum cost in which the number of expansion directions is set to 3, the expansion of the expansion destination node The route search method may be characterized in that the number of directions is set to two.
One aspect of the present invention for achieving the above object is a program that selects a route having the lowest cost from a start point to an end point included in an area represented by a grid, the node having the lowest cost. Calculate the cost for multiple grids according to multiple deployment directions, select and move the node with the lowest cost, and set the expanded node as the node with the lowest cost and deploy When it is determined that the expansion destination node is on the extension line of the movement direction from the adjacent node of the movement source with respect to the node of the minimum cost in which the number of expansion directions is set to 3 In addition, the process of setting the number of deployment directions of the deployment destination node to 3 and the deployment destination node of the migration source with respect to the node of the minimum cost for which the number of deployment directions is set to 3 A program for causing a computer to execute a process of setting the number of deployment directions of a deployment destination node to 2 when it is determined that it is not on an extension line of a movement direction from an adjacent node. Also good.

本発明によれば、無駄な経路候補を除いて経路探索を行うことで経路探索時間の短時間化を行うことができる経路探索システム、経路探索方法及びプログラムを提供することができる。   According to the present invention, it is possible to provide a route search system, a route search method, and a program that can shorten the route search time by performing route search by removing useless route candidates.

ロボットの構成を模式的に示す外観図である。It is an external view which shows the structure of a robot typically. ロボットの制御部を示すブロック図である。It is a block diagram which shows the control part of a robot. (a)乃至(d)ノード展開部により展開された最小コストノードの一例を示す図である。It is a figure which shows an example of the minimum cost node expand | deployed by the (a) thru | or (d) node expansion | deployment part. 実施形態1に係る経路探索方法のフローの一例を示すフローチャートである。3 is a flowchart illustrating an example of a flow of a route search method according to the first embodiment. (a)乃至(k)障害物が存在する進入禁止グリッドに隣接するノードで展開方向の数を増加させた状態を示す図である。(A) thru | or (k) It is a figure which shows the state which increased the number of the unfolding directions in the node adjacent to the entry prohibition grid where an obstacle exists. 実施形態2に係る経路探索方法のフローの一例を示すフローチャートである。10 is a flowchart illustrating an example of a flow of a route search method according to the second embodiment. 3次元座標において探索枝をXYZ軸方向に分岐させた図である。It is the figure which branched the search branch to the XYZ-axis direction in the three-dimensional coordinate.

実施形態1
以下、図面を参照して本発明の実施形態について説明する。但し、本発明が以下の実施形態に限定される訳ではない。また、説明を明確にするため、以下の記載及び図面は、適宜、簡略化されている。
Embodiment 1
Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the present invention is not limited to the following embodiments. In addition, for clarity of explanation, the following description and drawings are simplified as appropriate.

まず、本発明に係る移動体の一例であるロボットの構成について、図1を用いて説明する。図1はロボット100の構成を模式的に示す外観図である。本実施形態1では、ロボット100が、自律移動する移動ロボットとして説明する。ロボット100は、車輪2と、筐体3と、センサ5と、を備えている。そして、筐体3の内部には、車輪2と接続されたモータ、及びモータを駆動するためのバッテリなどが設けられている。このモータがロボット100を駆動するための駆動機構となる。モータを駆動することによって、車輪2が回転して、ロボット100が移動する。ロボット100は、例えば、人間の歩行速度と同程度の速度で移動する。さらに、頭部1には、CCDカメラやレーザセンサなどを有するセンサ5が設けられている。センサ5はロボット100に周囲に存在する障害物や人間などを検知する。   First, a configuration of a robot which is an example of a moving body according to the present invention will be described with reference to FIG. FIG. 1 is an external view schematically showing the configuration of the robot 100. In the first embodiment, the robot 100 will be described as a mobile robot that moves autonomously. The robot 100 includes a wheel 2, a housing 3, and a sensor 5. Inside the housing 3 are provided a motor connected to the wheels 2, a battery for driving the motor, and the like. This motor serves as a drive mechanism for driving the robot 100. By driving the motor, the wheel 2 rotates and the robot 100 moves. For example, the robot 100 moves at a speed similar to a human walking speed. Further, the head 1 is provided with a sensor 5 having a CCD camera, a laser sensor, or the like. The sensor 5 detects obstacles or humans existing around the robot 100.

ロボット100には、制御部110が設けられている。制御部110は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、通信用のインタフェイスなどを有する演算処理装置である。また、制御部110は、着脱可能なHDD、光ディスク、光磁気ディスク等を有し、各種プログラムや制御パラメータなどを記憶し、そのプログラムやデータを必要に応じてメモリ(不図示)等に供給する。もちろん、制御部110は、物理的に一つの構成に限られるものではない。制御部110は、ロボット100が移動する移動経路を生成する。そして、その移動経路に沿ってロボット100が移動するよう、車輪2を駆動するためのモータ等を制御する。もちろん、ロボット100は車輪型の移動ロボットに限らず、歩行型やその他の移動ロボットでもよい。ロボット100は自己位置推定を行なって移動する移動体であってもよい。   The robot 100 is provided with a control unit 110. The control unit 110 is an arithmetic processing unit having a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), a communication interface, and the like. The control unit 110 includes a detachable HDD, an optical disk, a magneto-optical disk, and the like, stores various programs and control parameters, and supplies the programs and data to a memory (not shown) or the like as necessary. . Of course, the controller 110 is not limited to one physical configuration physically. The control unit 110 generates a movement path along which the robot 100 moves. Then, a motor or the like for driving the wheels 2 is controlled so that the robot 100 moves along the movement path. Of course, the robot 100 is not limited to a wheel-type mobile robot, and may be a walking type or other mobile robot. The robot 100 may be a moving body that moves by performing self-position estimation.

制御部110は、移動環境中にある移動始点から移動終点までの移動経路を決定する。ロボット100は、移動始点から移動を開始する。そして、移動経路に沿って移動していき、移動終点まで移動したら停止する。すなわち、制御部110は、移動始点から移動終点までの移動経路を探索する経路探索システムとして機能する。本実施形態1では、制御部110は、ダイクストラ法を用いて、経路探索を行っているが、これに限定されない。制御部110は、例えば、A*、Theta*などの任意の最短経路探索アルゴリズムを用いることができる。   The control unit 110 determines a movement route from the movement start point to the movement end point in the movement environment. The robot 100 starts moving from the movement start point. And it moves along a movement route and stops when it moves to the movement end point. That is, the control unit 110 functions as a route search system that searches for a movement route from the movement start point to the movement end point. In the first embodiment, the control unit 110 performs a route search using the Dijkstra method, but is not limited thereto. The control unit 110 can use any shortest path search algorithm such as A * and Theta *, for example.

次に、ロボット100の制御系について図2を用いて説明する。図2は、ロボット100の制御部110を示すブロック図である。制御部110は、ロボット100が移動する経路を決定するための演算処理を実行する。図2に示すように、制御部110は、地図情報記憶部111と、ノード展開部112と、設定部113と、を備えている。   Next, the control system of the robot 100 will be described with reference to FIG. FIG. 2 is a block diagram showing the control unit 110 of the robot 100. The control unit 110 executes a calculation process for determining a route along which the robot 100 moves. As shown in FIG. 2, the control unit 110 includes a map information storage unit 111, a node expansion unit 112, and a setting unit 113.

地図情報記憶部111は、ロボット100が移動する移動領域中の地図情報を記憶している。例えば、移動する環境中に存在する壁、机などの障害物の座標を記憶している。そして、地図情報記憶部111は、移動領域を2次元のグリッドによって表現している。すなわち、地図情報記憶部111は、移動領域を縦横のグリッド線で分割して、格子状のグリッドによって表している。さらに、地図情報には、障害物などの情報に基づいて、進入禁止グリッドが設定されている。すなわち、障害物がある位置には、ロボット100が移動することができない。このため、その障害物の位置に対応するグリッドは、進入禁止グリッドとなる。   The map information storage unit 111 stores map information in a moving area where the robot 100 moves. For example, the coordinates of obstacles such as walls and desks existing in the moving environment are stored. The map information storage unit 111 expresses the moving area by a two-dimensional grid. That is, the map information storage unit 111 divides the moving area by vertical and horizontal grid lines and represents the grid by a grid-like grid. Further, an entry prohibition grid is set in the map information based on information such as obstacles. That is, the robot 100 cannot move to a position where there is an obstacle. For this reason, the grid corresponding to the position of the obstacle becomes an entry prohibition grid.

従って、地図情報記憶部111には、進入禁止グリッドと進入可能グリッドとから構成されるグリッドマップが記憶される。グリッドサイズは、移動領域の大きさやコンピュータの処理速度に応じて決定される。経路探索では、ロボット100の移動始点に対応するグリッドから移動終点に対応するグリッドまでの最適経路が探索される。すなわち、グリッドで表された領域に含まれる始点から終点までの経路のうち、そのコストが最小のものを選択する。   Therefore, the map information storage unit 111 stores a grid map including the entry prohibition grid and the entry enable grid. The grid size is determined according to the size of the moving area and the processing speed of the computer. In the route search, the optimum route from the grid corresponding to the movement start point of the robot 100 to the grid corresponding to the movement end point is searched. That is, the route with the minimum cost is selected from the routes from the start point to the end point included in the area represented by the grid.

グリッドは、図3(a)乃至(d)に示すように、縦横に区切られている。このため、ある任意の一つのグリッド(たとえば、9つのグリッドの中央のグリッド)は、上下(縦方向)左右(横方向)の4つのグリッドと、それらの間の斜め方向の4つのグリッドと隣接する。すなわち、移動領域の端以外のグリッドでは、上方向、下方向、左方向、右方向、右斜め上方向、右斜め下方向、左斜め下方向、左斜め上方向の8近傍のグリッドが隣接していることになる。   As shown in FIGS. 3A to 3D, the grid is divided vertically and horizontally. For this reason, one arbitrary grid (for example, the center grid of nine grids) is adjacent to four grids in the vertical (vertical direction), left and right (horizontal direction), and four diagonal grids therebetween. To do. That is, in the grids other than the edge of the moving region, there are adjacent eight grids in the upward direction, the downward direction, the left direction, the right direction, the right diagonally upward direction, the right diagonally downward direction, the left diagonally downward direction and the left diagonally upward direction. Will be.

ノード展開部112は、コスト計算を行って、最小コストのノード(以下、最小コストノード)を展開していく。ここで、ノードとは、グリッドに対応するものである。従って、1つのグリッドが1つのノードとなる。ノード展開部112は、コスト計算の結果、最小コストノードを順番に展開していく。ノード展開部112は、最小コストのノードからの複数の展開方向に応じた複数のグリッドに対してコストを計算して、最小コストのノードを選択して移動し、さらに該移動後のノードを最小コストのノードとして設定して展開していく処理を繰り返す。   The node expansion unit 112 performs cost calculation and expands a node with the lowest cost (hereinafter referred to as a minimum cost node). Here, the node corresponds to the grid. Therefore, one grid becomes one node. The node expansion unit 112 expands the minimum cost nodes in order as a result of the cost calculation. The node expansion unit 112 calculates a cost for a plurality of grids corresponding to a plurality of expansion directions from the node with the lowest cost, selects and moves the node with the lowest cost, and further minimizes the node after the movement. The process of setting and expanding as a cost node is repeated.

このように、ノード展開部112は、コストが最小となるパスが決定したノードを最小コストノードとして、順番に展開していく。コストが最小となるパスが決定していないノードの中で、コスト計算の結果によってコストが最小となったノードが、最小コストノードとしてデータベースなどに順次追加されていく。そして、最小コストノードを追加していくことで、最小コストノードが展開されていく。
ノード展開部112は、例えば、最小コストノードからの展開方向を3方向とする枝刈り探索を用いて、コスト計算を行っている。
In this way, the node expansion unit 112 sequentially expands the node for which the path with the lowest cost is determined as the minimum cost node. Among the nodes for which the path with the lowest cost has not been determined, the node with the lowest cost as a result of the cost calculation is sequentially added to the database or the like as the lowest cost node. Then, by adding the minimum cost node, the minimum cost node is expanded.
The node expansion unit 112 performs cost calculation using, for example, a pruning search with three expansion directions from the minimum cost node.

図3(a)乃至(d)は、ノード展開部により展開された最小コストノードの一例を示す図である。図3(a)乃至(d)において、各ノードに記載された数値は、各ノードでノード展開部112により展開された展開方向の数(探索枝の分岐数)である。例えば、図3(a)に示す如く、D1からD2に移動し、D2で3分岐してD2→C3、D2→D3、及びD2→E3に移動する。   3A to 3D are diagrams illustrating an example of the minimum cost node expanded by the node expansion unit. 3A to 3D, the numerical value described in each node is the number of expansion directions (the number of branches of the search branch) expanded by the node expansion unit 112 at each node. For example, as shown in FIG. 3 (a), the robot moves from D1 to D2, and branches into three at D2, and moves from D2 to C3, D2 to D3, and D2 to E3.

ところで、従来の経路探索システムにおいては、最小コストノードの探索枝を常に5分岐(展開方向の数を5)あるいは3分岐(展開方向の数を3)させて全進行方向を経路探索している。この場合、明らかに最短経路の候補となり得ない無駄な経路候補を含めて経路探索を行うこととなるため、経路探索時間の短時間化に改善の余地が見込まれる。   By the way, in the conventional route search system, the search branch of the minimum cost node is always searched for routes in all traveling directions by always branching 5 branches (the number of expansion directions is 5) or 3 branches (the number of expansion directions is 3). . In this case, since the route search is performed including a useless route candidate that cannot clearly become the shortest route candidate, there is room for improvement in shortening the route search time.

例えば、図3(a)において、D1からB3へ到達する経路では、D1→C2→B3の経路の方が、D1→D2→C3→B3の経路よりも短くなる。このため、D1→D2→C3→B3の経路、すなわちC3→B3の経路は、最短経路の候補となり得ない無駄な経路候補となる。
同様に、D1からA4へ到達する経路では、D1→C2→B3→A4の経路の方が、D1→D2→C3→B4→A4の経路よりも短くなる。このため、D1→D2→C3→B4→A4の経路、すなわちB4→A4の経路は、最短経路の候補となり得ない無駄な経路候補となる。
For example, in FIG. 3A, in the route from D1 to B3, the route D1 → C2 → B3 is shorter than the route D1 → D2 → C3 → B3. Therefore, the route D1 → D2 → C3 → B3, that is, the route C3 → B3 is a useless route candidate that cannot be a candidate for the shortest route.
Similarly, in the route from D1 to A4, the route D1->C2->B3-> A4 is shorter than the route D1->D2->C3->B4-> A4. Therefore, the route D1 → D2 → C3 → B4 → A4, that is, the route B4 → A4 is a useless route candidate that cannot be a candidate for the shortest route.

以上により、例えば、図3(a)乃至(d)に示す如く、展開方向の数が3に設定された最小コストノードに対する、隣接ノードからの移動方向の延長線(中央の探索枝)上では、展開先のノードの展開方向の数を3に設定する。この場合、最小コストノードから、左斜め前方、前方(延長線の方向)、及び右斜め前方の3方向(3分岐)に展開する。   As described above, for example, as shown in FIGS. 3A to 3D, on the extension line (central search branch) in the movement direction from the adjacent node with respect to the minimum cost node in which the number of development directions is set to 3. Then, the number of expansion directions of the expansion destination node is set to 3. In this case, the minimum cost node is developed in three directions (three branches) diagonally left forward, forward (in the direction of the extension line), and diagonally forward right.

一方、展開方向の数が3に設定された最小コストノードに対する、隣接ノードからの移動方向の延長線(中央の探索枝)上以外(中央の探索枝の両側枝上)では、展開先のノードの展開方向の数を2に設定する。この場合、最小コストノードから、前方(最小コストノードに対する隣接ノードからの移動方向)及び中央の探索枝(延長線)と平行方向の2方向(2分岐)にのみ展開する。一旦中央の探索枝から分岐するとその先で、元の中央の探索枝に戻る方向に分岐することは最短経路としてあり得ない分岐であるため、この前方及び中央の探索枝と平行方向の2方向としている。すなわち、展開方向の数が2に設定されたノードから分岐したノードには、展開方向の数2が設定される。このように、探索枝を3分岐から2分岐に減少させることで、その経路探索の計算量を略2/3に減少させることができる。   On the other hand, with respect to the minimum cost node whose number of expansion directions is set to 3, the expansion destination node is not on the extension line (central search branch) of the movement direction from the adjacent node (on both side branches of the central search branch). Is set to 2 in the direction of expansion. In this case, only the two directions (two branches) parallel to the front (the movement direction from the adjacent node with respect to the minimum cost node) and the central search branch (extension line) are expanded from the minimum cost node. Once branching from the central search branch, branching in the direction to return to the original central search branch is a branch that cannot be the shortest path, so two directions parallel to the forward and central search branches It is said. That is, the expansion direction number 2 is set to a node branched from the node where the expansion direction number is set to 2. Thus, by reducing the number of search branches from 3 branches to 2 branches, the amount of calculation for the route search can be reduced to approximately 2/3.

本実施形態1に係る経路探索システムにおいては、展開先のノードが、展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線(中央の探索枝)上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定する。また、展開先のノードが、展開方向の数が3に設定された最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にない(両側の探索枝上を移動している)と判定した場合に、該展開先のノードの展開方向の数を2に設定する。
これにより、無駄な経路候補を除いて経路探索を行うことで経路探索時間の短時間化を行うことができる。
In the route search system according to the first exemplary embodiment, the expansion destination node is an extension line (middle of the center) from the movement source adjacent node to the minimum cost node in which the number of expansion directions is set to 3. If it is determined that the node is on the search branch), the number of expansion directions of the expansion destination node is set to 3. Further, the deployment destination node is not on the extension line in the movement direction from the adjacent node of the movement source with respect to the node of the minimum cost in which the number of deployment directions is set to 3 (moving on the search branches on both sides). Is determined, the number of expansion directions of the expansion destination node is set to 2.
As a result, the route search time can be shortened by performing route search excluding useless route candidates.

設定部113は、展開先のノードが、展開方向の数が3に設定された最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあるか否かを判定することで、該展開先のノードの展開方向の数を設定する。   The setting unit 113 determines whether or not the deployment destination node is on the extension line in the movement direction from the adjacent node of the movement source with respect to the node with the minimum cost in which the number of deployment directions is set to 3. The number of deployment directions of the deployment destination node is set.

設定部113は、展開先のノードが、展開方向の数が3に設定された最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定する。   When the setting unit 113 determines that the expansion destination node is on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node in which the number of expansion directions is set to 3, the expansion destination node The number of nodes in the expansion direction is set to 3.

例えば、図3(b)に示す如く、設定部113は、展開先のノードC2、C3、C4が、展開方向の数が3に設定された最小コストのノードC2に対する、移動元の隣接ノードC1からの移動方向の延長線上にあると判定した場合に、該展開先のノードC2、C3、C4の展開方向の数を3に設定する。このように、中央の探索枝(展開方向の数が3に設定された最小コストノードに対する、隣接ノードからの移動方向の延長線)上のノードには、展開方向の数3が設定される。   For example, as illustrated in FIG. 3B, the setting unit 113 determines that the deployment destination nodes C2, C3, and C4 are the movement source adjacent nodes C1 with respect to the minimum cost node C2 in which the number of deployment directions is set to 3. When it is determined that the position is on the extension line in the moving direction from, the number of development directions of the deployment destination nodes C2, C3, C4 is set to 3. In this way, the number 3 in the expansion direction is set to the node on the central search branch (the extension line in the movement direction from the adjacent node with respect to the minimum cost node in which the number in the expansion direction is set to 3).

一方、設定部113は、展開先のノードが、展開方向の数が3に設定された最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定した場合に、該展開先のノードの展開方向の数を2に設定する。   On the other hand, when the setting unit 113 determines that the expansion destination node is not on the extension line in the movement direction from the movement source adjacent node with respect to the node of the minimum cost in which the number of expansion directions is set to 3, the setting unit 113 The number of expansion directions of the expansion destination node is set to 2.

例えば、図3(b)に示す如く、設定部113は、展開先のノードA4〜A5、B3〜B5、D3〜D4が、展開方向の数が3に設定された最小コストのノードC2に対する、移動元の隣接ノードC1からの移動方向の延長線上にないと判定した場合に、該展開先のノードA4〜A5、B3〜B5、D3〜D4の展開方向の数を2に設定する。このように、両側の探索枝(展開方向の数が3に設定された最小コストのノードに対する、隣接ノードからの移動方向の延長線)上にないノードには、展開方向の数2が設定される。   For example, as illustrated in FIG. 3B, the setting unit 113 determines that the deployment destination nodes A4 to A5, B3 to B5, and D3 to D4 correspond to the node C2 with the minimum cost in which the number of deployment directions is set to 3. When it is determined that it is not on the extension line in the movement direction from the movement source adjacent node C1, the number of expansion directions of the expansion destination nodes A4 to A5, B3 to B5, and D3 to D4 is set to 2. Thus, the number of expansion directions is set to 2 for nodes that are not on the search branches on both sides (the extension line in the movement direction from the adjacent node with respect to the node of the minimum cost where the number of expansion directions is set to 3). The

上述したように本実施形態1では、最小コストノードからの展開方向を8方向から3方向に制限した枝刈り探索を用いて、コスト計算を行っている。さらに、本実施形態1では、上記最短経路の特性を考慮して、最小コストノードからの展開方向を3方向から2方向に減少させている。展開方向によって、コストを新たに算出する展開ノードの数が決まる。これにより、コスト計算を行うノード数をより小さくすることができ、計算時間をより短縮することができる。   As described above, in the first embodiment, cost calculation is performed using a pruning search in which the expansion direction from the minimum cost node is limited from eight directions to three directions. Further, in the first embodiment, in consideration of the characteristics of the shortest path, the expansion direction from the minimum cost node is decreased from three directions to two directions. The number of expansion nodes for newly calculating costs is determined by the expansion direction. As a result, the number of nodes for cost calculation can be reduced, and the calculation time can be further shortened.

ノード展開部112は、上記設定された3つの展開方向に応じた3つのノード、あるいは2つの展開方向に応じた2つのノードに対して、コストを算出する。そして、算出したコストに応じて、地図情報のコストマップを更新していく。すなわち、3つ、又は2つのグリッドにおいて、コストが小さいパスが発見された場合、そのグリッドのコストを更新する。このようにしてコストマップを更新する。コストマップを参照して、コストが最小となるパスが決定していないノードの中から、コストが最小のノードを選択する。このノードが新たに、最小コストノードとして追加される。このようにして、最小コストノードを展開していく。   The node expansion unit 112 calculates the cost for the three nodes corresponding to the three expansion directions set as described above or the two nodes corresponding to the two expansion directions. Then, the cost map of the map information is updated according to the calculated cost. That is, when a path with a low cost is found in three or two grids, the cost of the grid is updated. In this way, the cost map is updated. With reference to the cost map, the node with the lowest cost is selected from the nodes for which the path with the lowest cost has not been determined. This node is newly added as a minimum cost node. In this way, the minimum cost node is expanded.

次に、本実施形態1に係る経路探索方法について詳細に説明する。図4は、本実施形態1に係る経路探索方法のフローの一例を示すフローチャートである。
経路探索が開始されると、移動始点のノードから隣接する8方向(上方向、下方向、左方向、右方向、右斜め上方向、右斜め下方向、左斜め下方向、左斜め上方向)のノードに探索枝を分岐させる(ステップS101)。
Next, the route search method according to the first embodiment will be described in detail. FIG. 4 is a flowchart illustrating an example of a flow of the route search method according to the first embodiment.
When the route search is started, the eight directions (upward, downward, leftward, rightward, diagonally upward right, diagonally downward right, diagonally downward left, diagonally upward left) from the node at the movement start point The search branch is branched to the node (step S101).

ノードから分岐された探索枝の先のノードが、移動終点であるか否かが判定される(ステップS102)。ノードから分岐された探索枝の先のノードが移動終点であると判定されると(ステップS102のYES)、本経路探索処理は終了する。
一方、ノードから分岐された探索枝の先のノードが移動終点でないと判定されると(ステップS102のNO)、探索枝の先のノードの中から、最小コストノードが選択される(ステップS103)。なお、初回に選択された最小コストノードには、展開方向の数3が設定されている。
It is determined whether or not the node ahead of the search branch branched from the node is the movement end point (step S102). If it is determined that the node ahead of the search branch branched from the node is the movement end point (YES in step S102), the route search process ends.
On the other hand, if it is determined that the node ahead of the search branch branched from the node is not the movement end point (NO in step S102), the minimum cost node is selected from the nodes ahead of the search branch (step S103). . The minimum cost node selected for the first time is set to the number 3 in the deployment direction.

選択された最小コストノードから展開する際に、展開先のノードが、展開方向の数が3に設定された最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあるか否かが判定される(ステップS104)。
展開方向の数が3に設定された最小コストノードに対する、隣接ノードからの移動方向の延長線上にあると判定されたとき(ステップS104のYES)、展開先のノードの展開方向の数は3に設定され(ステップS105)、上記(ステップS102)に戻る。
When expanding from the selected minimum cost node, whether or not the expansion destination node is on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node whose number of expansion directions is set to 3. Is determined (step S104).
When it is determined that the minimum cost node with the number of expansion directions set to 3 is on the extension line of the moving direction from the adjacent node (YES in step S104), the number of expansion directions of the expansion destination node is 3. It is set (step S105), and the process returns to the above (step S102).

一方、展開方向の数が3に設定された最小コストノードに対する、隣接ノードからの移動方向の延長線上にないと判定されたとき(ステップS104のNO)、展開先のノードの展開方向の数は2に設定され(ステップS106)、上記(ステップS102)に戻る。   On the other hand, when it is determined that the minimum cost node for which the number of expansion directions is set to 3 is not on the extension line of the moving direction from the adjacent node (NO in step S104), the number of expansion directions of the expansion destination node is 2 is set (step S106), and the process returns to the above (step S102).

以上、本実施形態において、展開先のノードが、展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定する。また、展開先のノードが、展開方向の数が3に設定された最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定した場合に、該展開先のノードの展開方向の数を2に設定する。
これにより、無駄な経路候補を除いて経路探索を行うことで経路探索時間の短時間化を行うことができる。
As described above, in this embodiment, when it is determined that the deployment destination node is on the extension line in the movement direction from the movement source adjacent node with respect to the minimum cost node in which the number of deployment directions is set to 3, The number of deployment directions of the deployment destination node is set to 3. Further, when it is determined that the deployment destination node is not on the extension line in the movement direction from the adjacent node of the movement source with respect to the node of the minimum cost with the number of deployment directions set to 3, the deployment destination node Set the number of deployment directions to 2.
As a result, the route search time can be shortened by performing route search excluding useless route candidates.

実施形態2
本発明の実施形態2において、障害物が存在する進入禁止グリッドに隣接するノードで展開方向の数を増加させる。上述の如く、障害物が存在しない領域のおける最短経路は、基本的に直線的に移動するものであるため、探索枝の先を2分岐に減少させればよい。しかし、障害物が近傍に存在する場合、その障害物を回避するように、例えば、光が散乱、回折するが如く、探索枝の分岐数(展開方向の数)も増加(探索枝の枝増し)させるのが好ましい。
Embodiment 2
In Embodiment 2 of the present invention, the number of deployment directions is increased at a node adjacent to the entry prohibition grid where an obstacle exists. As described above, since the shortest path in the area where no obstacle exists basically moves linearly, it is only necessary to reduce the tip of the search branch to two branches. However, if an obstacle is present in the vicinity, the number of branches in the search branch (the number in the development direction) is also increased (the number of branches in the search branch is increased, for example, light is scattered and diffracted to avoid the obstacle). ).

これに対し、本実施形態2において、例えば、設定部113は、ノード展開部112により最小コストノードから展開される際、障害物の進入禁止グリッドに隣接する最小コストノードに対して、障害物の進入禁止グリッドの縦又は横方向に隣接する移動元の隣接ノードから移動したと判定した場合に、その最小コストノートの展開方向の数を5に設定する。一方、設定部113は、ノード展開部112により最小コストノードから展開される際、障害物の進入禁止グリッドに隣接する最小コストノードに対して、障害物の進入禁止グリッドの斜め方向に隣接する移動元の隣接ノード、又は、障害物の進入禁止グリッドに隣接しない隣接ノードから移動したと判定した場合に、その最小コストノードの展開方向の数を4に設定する。また、ノード展開部112は、上記展開方向の数が4あるいは5に設定された最小コストノードから、この最小コストノードに対する隣接ノードからの移動方向に対し前方に位置し、進入禁止グリッド以外の隣接するノードに展開する。なお、本実施形態2において、上記実施形態1と同一部分に同一符号を付して詳細な説明は省略する。   On the other hand, in the second embodiment, for example, when the setting unit 113 is deployed from the minimum cost node by the node deployment unit 112, the setting unit 113 detects the obstacle with respect to the minimum cost node adjacent to the obstacle entry prohibition grid. When it is determined that the node has moved from the adjacent node of the movement source adjacent in the vertical or horizontal direction of the entry prohibition grid, the number of development directions of the minimum cost note is set to 5. On the other hand, when the setting unit 113 expands from the minimum cost node by the node expansion unit 112, the setting unit 113 moves adjacent to the obstacle entry prohibition grid in an oblique direction with respect to the minimum cost node adjacent to the obstacle entry prohibition grid. When it is determined that the node has moved from the original adjacent node or an adjacent node not adjacent to the obstacle entry prohibition grid, the number of deployment directions of the minimum cost node is set to 4. Further, the node expansion unit 112 is located in front of the moving direction from the adjacent node to the minimum cost node from the minimum cost node in which the number of expansion directions is set to 4 or 5, and is adjacent to other than the entry prohibition grid. Expand to the node you want. In the second embodiment, the same parts as those in the first embodiment are denoted by the same reference numerals, and detailed description thereof is omitted.

図5(a)乃至(k)は、障害物が存在する進入禁止グリッドに隣接するノードで展開方向の数を増加させた状態を示す図である。なお、図5(a)乃至(d)、(g)乃至(j)は、展開先のノードの展開方向の数を4に設定した一例である。図5(e)、(f)、及び(k)は、展開先のノードの展開方向の数を5に設定した一例である。   FIGS. 5A to 5K are diagrams illustrating a state in which the number of deployment directions is increased at a node adjacent to the entry prohibition grid where an obstacle exists. 5A to 5D and 5G to 5J are examples in which the number of deployment directions of the deployment destination node is set to 4. FIG. FIGS. 5E, 5F, and 5K are an example in which the number of deployment directions of the deployment destination node is set to 5. FIG.

図5(e)に示す如く、例えば、設定部113は、ノード展開部112により最小コストノードから展開される際、障害物の進入禁止グリッドC3に隣接する最小コストノードB2に対して、障害物の進入禁止グリッドC3の縦又は横方向に隣接する移動元の隣接ノードB3から移動したと判定した場合に、最小コストノードB2の展開方向の数を、5に設定する。この場合、ノード展開部112は、上記展開方向の数が5に設定された最小コストノードB2から、この最小コストノードB2に対する隣接ノードB3からの移動方向に対し前方に位置し、進入禁止グリッド以外の隣接するノードA1、A2、B1、C1、C2に展開する。   As shown in FIG. 5E, for example, when the setting unit 113 is expanded from the minimum cost node by the node expansion unit 112, the setting unit 113 performs an obstacle against the minimum cost node B2 adjacent to the obstacle entry prohibition grid C3. When it is determined that the node has moved from the adjacent node B3 of the movement source adjacent to the entry prohibition grid C3 in the vertical or horizontal direction, the number in the deployment direction of the minimum cost node B2 is set to five. In this case, the node expansion unit 112 is positioned forward from the minimum cost node B2 in which the number of expansion directions is set to 5 with respect to the movement direction from the adjacent node B3 with respect to the minimum cost node B2, and other than the entry prohibition grid. To adjacent nodes A1, A2, B1, C1, and C2.

一方、図5(a)に示す如く、例えば、設定部113は、ノード展開部112により最小コストノードから展開される際、障害物の進入禁止グリッドC3に隣接する最小コストノードB2に対して、障害物の進入禁止グリッドに隣接しない隣接ノードB1から移動したと判定した場合に、最小コストノードB2の展開方向の数を、4に設定する。同様に、図5(j)に示す如く、設定部113は、ノード展開部112により最小コストノードから展開される際、障害物の進入禁止グリッドC3に隣接する最小コストノードC2に対して、障害物の進入禁止グリッドC3の斜め方向に隣接する移動元の隣接ノードB2から移動したと判定した場合に、最小コストノードC2の展開方向の数を、4に設定する。この場合、ノード展開部112は、上記展開方向の数が4に設定された最小コストノードB2から、この最小コストノードB2に対する隣接ノードB1からの移動方向に対し前方に位置し、進入禁止グリッド以外の隣接するノードA2、A3、B3、C2に展開する。   On the other hand, as illustrated in FIG. 5A, for example, when the setting unit 113 is expanded from the minimum cost node by the node expansion unit 112, the setting unit 113 performs the following operation on the minimum cost node B2 adjacent to the obstacle entry prohibition grid C3. When it is determined that the node has moved from the adjacent node B1 that is not adjacent to the obstacle entry prohibition grid, the number of deployment directions of the minimum cost node B2 is set to four. Similarly, as shown in FIG. 5 (j), the setting unit 113, when deployed from the minimum cost node by the node deployment unit 112, provides an obstacle to the minimum cost node C2 adjacent to the obstacle entry prohibition grid C3. When it is determined that the object has moved from the adjacent node B2 of the movement source adjacent in the diagonal direction of the object entry prohibition grid C3, the number of development directions of the minimum cost node C2 is set to four. In this case, the node expansion unit 112 is located forward from the minimum cost node B2 in which the number of expansion directions is set to 4 with respect to the movement direction from the adjacent node B1 to the minimum cost node B2, and other than the entry prohibition grid. To adjacent nodes A2, A3, B3, and C2.

上記のように展開方向の数が4あるいは5に設定された最小コストノードから展開された先のノードの展開方向の数は、3に設定される。例えば、図5(a)では、展開先のノードC2、B3、A3、A2の展開方向の数は、3に設定される。   As described above, the number of expansion directions of the previous node expanded from the minimum cost node in which the number of expansion directions is set to 4 or 5 is set to 3. For example, in FIG. 5A, the number of deployment directions of the deployment destination nodes C2, B3, A3, and A2 is set to 3.

図6は、本実施形態2に係る経路探索方法のフローの一例を示すフローチャートである。
経路探索が開示されると、移動始点のグリッドから8方向に探索枝を分岐させる(ステップS201)。
FIG. 6 is a flowchart illustrating an example of a flow of the route search method according to the second embodiment.
When the route search is disclosed, the search branch is branched in 8 directions from the grid of the movement start point (step S201).

ノードから分岐された探索枝の先のノードが移動終点であるか否かが判定される(ステップS202)。ノードから分岐された探索枝の先のノードが移動終点であると判定されると(ステップS202のYES)、本経路探索処理は終了する。
一方、ノードから分岐された探索枝の先のノードが移動終点でないと判定されると(ステップS202のNO)、探索枝の先のノードの中から、最小コストノードが選択される(ステップS203)。
It is determined whether or not the node ahead of the search branch branched from the node is the movement end point (step S202). If it is determined that the node ahead of the search branch branched from the node is the movement end point (YES in step S202), the route search process ends.
On the other hand, if it is determined that the node ahead of the search branch branched from the node is not the movement end point (NO in step S202), the minimum cost node is selected from the nodes ahead of the search branch (step S203). .

選択された最小コストノードから展開する際に、障害物の進入禁止グリッドに隣接する最小コストノードに対して、障害物の進入禁止グリッドの縦又は横方向に隣接する隣接ノードから移動したか否かが判定される(ステップS204)。   Whether or not the minimum cost node adjacent to the obstacle entry prohibition grid has moved from the adjacent node in the vertical or horizontal direction of the obstacle entry prohibition grid when deploying from the selected minimum cost node Is determined (step S204).

障害物の進入禁止グリッドに隣接する最小コストノードに対して、障害物の進入禁止グリッドの縦又は横方向に隣接する隣接ノードから移動したと判定されると(ステップS204のYES)、その最小コストノードの展開方向の数は5に設定され(ステップS205)、下記(ステップS211)に移行する。   If it is determined that the minimum cost node adjacent to the obstacle entry prohibition grid moves from the adjacent node adjacent to the obstacle entry prohibition grid in the vertical or horizontal direction (YES in step S204), the minimum cost node is determined. The number of expansion directions of the node is set to 5 (step S205), and the process proceeds to the following (step S211).

障害物の進入禁止グリッドに隣接する最小コストノードに対して、障害物の進入禁止グリッドの縦又は横方向に隣接する隣接ノードから移動しないと判定されると(ステップS204のNO)、選択された最小コストノードから展開する際に、障害物の進入禁止グリッドに隣接する最小コストノードに対して、障害物の進入禁止グリッドの斜め方向に隣接する隣接ノード、又は、障害物の進入禁止グリッドに隣接しない隣接ノードから移動したか否かが判定される(ステップS106)。   When it is determined that the minimum cost node adjacent to the obstacle entry prohibition grid does not move from the adjacent node adjacent to the obstacle entry prohibition grid in the vertical or horizontal direction (NO in step S204), the selected node is selected. When deploying from the minimum cost node, adjacent to the adjacent node in the diagonal direction of the obstacle entry prohibition grid or adjacent to the obstacle entry prohibition grid with respect to the minimum cost node adjacent to the obstacle entry prohibition grid It is determined whether or not it has moved from an adjacent node that does not (step S106).

障害物の進入禁止グリッドに隣接する最小コストノードに対して、障害物の進入禁止グリッドの斜め方向に隣接する隣接ノード、又は、障害物の進入禁止グリッドに隣接しない隣接ノードから移動したと判定されると(ステップS206のYES)、最小コストノードの展開方向の数は4に設定され(ステップS207)、下記(ステップS211)に移行する。   It is determined that the minimum cost node adjacent to the obstacle entry prohibition grid has moved from an adjacent node diagonally adjacent to the obstacle entry prohibition grid or an adjacent node not adjacent to the obstacle entry prohibition grid. Then (YES in step S206), the number of minimum cost nodes in the expansion direction is set to 4 (step S207), and the process proceeds to the following (step S211).

障害物の進入禁止グリッドに隣接する最小コストノードに対して、障害物の進入禁止グリッドの斜め方向に隣接する隣接ノード、又は、障害物の進入禁止グリッドに隣接しない隣接ノードから移動していないと判定されると(ステップS206のNO)、選択された最小コストノードから展開する際に、展開方向の数が3に設定された最小コストノードに対する、移動元の隣接ノードからの移動方向の延長線上にあるか否かが判定される(ステップS208)。   If the minimum cost node adjacent to the obstacle entry prohibition grid is not moved from an adjacent node obliquely adjacent to the obstacle entry prohibition grid or an adjacent node not adjacent to the obstacle entry prohibition grid If determined (NO in step S206), when expanding from the selected minimum cost node, on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node whose number of expansion directions is set to 3. It is determined whether or not (step S208).

展開方向の数が3に設定された最小コストノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定されたとき(ステップS208のYES)、展開先のノードの展開方向の数は3に設定され(ステップS209)、上記(ステップS202)に戻る。   When it is determined that the minimum cost node whose number of expansion directions is set to 3 is on the extension line of the movement direction from the adjacent node of the movement source (YES in step S208), the number of expansion directions of the expansion destination node Is set to 3 (step S209), and the process returns to the above (step S202).

一方、展開方向の数が3に設定された最小コストノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定されたとき(ステップS208のNO)、展開先のノードの展開方向の数は2に設定され(ステップ210)、上記(ステップS202)に戻る。   On the other hand, when it is determined that the minimum cost node with the number of expansion directions set to 3 is not on the extension line of the movement direction from the movement source adjacent node (NO in step S208), the expansion direction of the expansion destination node Is set to 2 (step 210), and the process returns to the above (step S202).

上記展開方向の数が4あるいは5に設定された最小コストノードから展開された先のノードの展開方向の数は3に設定され(ステップS211)、上記(ステップS202)に戻る。
以上、本実施形態2によれば、経路探索時間の短時間化を行いつつ、さらに、障害物が存在する場合でも、その障害物を回避するように経路探索を行うことができる。
The number of expansion directions of the previous node expanded from the minimum cost node where the number of expansion directions is set to 4 or 5 is set to 3 (step S211), and the processing returns to the above (step S202).
As described above, according to the second embodiment, it is possible to perform a route search so as to avoid an obstacle even when an obstacle is present while shortening the route search time.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
上記実施形態において、経路探索システムは、室内自律移動のように、障害物が多く、複雑な環境下における経路探索に好適である。もちろん、経路探索システムを搭載する移動体は、特に限定されるものではない。例えば、倒立2輪を有するロボット車椅子、歩行ロボット、自律移動型のアシスタントロボットに搭載することもできる。さらに、最小コストでの解の可解性が保護される。また、障害物や人をよけることなども可能になるため、安全な自律移動が可能となる。
Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.
In the above embodiment, the route search system is suitable for route search in a complicated environment with many obstacles, such as indoor autonomous movement. Of course, the mobile body equipped with the route search system is not particularly limited. For example, it can be mounted on a robot wheelchair having two inverted wheels, a walking robot, or an autonomously moving assistant robot. Furthermore, the solvability of the solution at the lowest cost is protected. Moreover, since it becomes possible to avoid an obstacle and a person, safe autonomous movement is attained.

上記実施形態において、3次元の経路探索についても適用可能である。3次元の経路探索を行う場合、例えば、移動領域をボクセルで表現できる。すなわち、移動領域を3次元のそれぞれの方向にグリッドで仕切る。これにより、移動領域が3次元グリッドで表現される。そして、ボクセルを平面に分解する。3×3×3のボクセルでは、各平面に9マスのボクセルが含まれる。   In the said embodiment, it is applicable also to a three-dimensional route search. When performing a three-dimensional route search, for example, the moving area can be represented by voxels. That is, the moving area is partitioned by a grid in each of the three-dimensional directions. As a result, the moving area is represented by a three-dimensional grid. Then, the voxel is decomposed into a plane. In a 3x3x3 voxel, each plane contains 9 squares of voxels.

3次元座標において、X軸方向及び/又はY軸方向のみに(XY平面上を)移動した場合、分解したボクセルの各平面に対して、上記2次元座標の場合と同様に経路探索を行えばよい。
さらに、3次元座標において、例えば、図7に示す如くノード(3、0、2)からノード(3、1、2)への探索枝からさらに分岐する(XYZ軸方向に移動した)場合を想定する。この場合、ノード(3、1、2)から、ノード(2、2、4)、(3、2、4)、(4、2、4)、(2、2、3)、(3、2、3)、(4、2、3)、(2、2、2)、(3、2、2)、(4、2、2)に分岐する。ここで、上記2次元座標系のときと同様に、最短経路の候補となり得ない無駄な経路候補を除外できる。例えば、ノード(3、1、2)からノード(4、2、3)への探索枝からさらに分岐する場合、ノード(5、2、4)、(5、2、3)、(5、2、2)への3分岐は最短経路の候補となり得ない無駄な経路候補であり、除外できる。したがって、ノード(4、2、3)から、次の6つのノード(4、3、4)、(5、3、4)、(4、3、3)、(5、3、3)、(4、3、2)、(5、3、2)に分岐することになる。これは、3次元座標の分岐枝をXY平面に投影して考えると、上記2次元座標と同様に適用できる。
When the three-dimensional coordinates are moved only in the X-axis direction and / or the Y-axis direction (on the XY plane), the path search is performed on each plane of the decomposed voxel in the same manner as in the above-described two-dimensional coordinates. Good.
Further, in the three-dimensional coordinates, for example, as shown in FIG. 7, a case is assumed where the search branch from the node (3, 0, 2) to the node (3, 1, 2) further branches (moves in the XYZ axis direction). To do. In this case, from the node (3, 1, 2) to the nodes (2, 2, 4), (3, 2, 4), (4, 2, 4), (2, 2, 3), (3, 2 3), (4, 2, 3), (2, 2, 2), (3, 2, 2), (4, 2, 2). Here, as in the case of the two-dimensional coordinate system, useless route candidates that cannot be candidates for the shortest route can be excluded. For example, when further branching from the search branch from the node (3, 1, 2) to the node (4, 2, 3), the nodes (5, 2, 4), (5, 2, 3), (5, 2 The three branches to 2) are useless route candidates that cannot be candidates for the shortest route, and can be excluded. Therefore, from the node (4, 2, 3), the following six nodes (4, 3, 4), (5, 3, 4), (4, 3, 3), (5, 3, 3), ( 4, 3, 2) and (5, 3, 2). This can be applied in the same manner as the above-described two-dimensional coordinates when a branch branch of three-dimensional coordinates is projected onto the XY plane.

また、本発明は、例えば、図4又は図6に示す処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
Further, the present invention can be realized, for example, by causing the CPU to execute a computer program for the processing shown in FIG. 4 or FIG.
The program may be stored using various types of non-transitory computer readable media and supplied to a computer. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (for example, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (for example, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / W and semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (random access memory)) are included.

また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。   The program may also be supplied to the computer by various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.

1 頭部、 2 車輪、 3 筐体、 5 センサ、 100 ロボット、 110 制御部、 111 地図情報記憶部、 112 ノード展開部、 113 設定部   1 head, 2 wheels, 3 housing, 5 sensor, 100 robot, 110 control unit, 111 map information storage unit, 112 node development unit, 113 setting unit

Claims (6)

グリッドで表された領域に含まれる始点から終点までの経路のうち、そのコストが最小のものを選択する経路探索システムであって、
最小コストのノードからの複数の展開方向に応じた複数のグリッドに対してコストを計算して、最小コストのノードを選択して移動し、さらに該移動後のノードを最小コストのノードとして設定して展開していく処理を繰り返すノード展開部と、
前記最小コストのノードからの展開先の各ノードの展開方向の数を設定する設定部と、を備え、
前記設定部は、
前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定し、
前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定した場合に、該展開先のノードの展開方向の数を2に設定する、
ことを特徴とする経路探索システム。
A route search system that selects a route from the start point to the end point included in the area represented by the grid and that has the lowest cost,
Calculate the cost for multiple grids according to multiple deployment directions from the lowest cost node, select and move the lowest cost node, and set the moved node as the lowest cost node Node expansion unit that repeats the process of expanding
A setting unit configured to set the number of deployment directions of each node of the deployment destination from the node of the minimum cost,
The setting unit
When it is determined that the expansion destination node is on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node in which the number of expansion directions is set to 3, the expansion destination node Set the number of deployment directions to 3
When it is determined that the expansion destination node is not on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node in which the number of expansion directions is set to 3, the expansion destination node Set the number of deployment directions to 2
A route search system characterized by that.
請求項1記載の経路探索システムであって、
障害物が存在するグリッドに隣接するノードで前記展開方向の数を増加させる、ことを特徴とする経路探索システム。
The route search system according to claim 1,
A route search system, characterized in that the number of expansion directions is increased at a node adjacent to a grid where an obstacle exists.
請求項2記載の経路探索システムであって、
前記設定部は、
前記障害物のグリッドに隣接する前記最小コストのノードに対して、前記障害物のグリッドの縦又は横方向に隣接する移動元の隣接ノードから移動したと判定した場合に、該最小コストのノードの展開方向の数を5に設定し、
前記障害物のグリッドに隣接する前記最小コストのノードに対して、前記障害物のグリッドの斜め方向に隣接する移動元の隣接ノード、又は、障害物のグリッドに隣接しない移動元の隣接ノードから移動したと判定した場合に、前記最小コストのノードの展開方向の数を4に設定し、
前記展開方向の数が4あるいは5に設定された最小コストのノードからの展開先のノードの展開方向の数を3に設定する、
ことを特徴とする経路探索システム。
The route search system according to claim 2,
The setting unit
When it is determined that the node of the minimum cost adjacent to the obstacle grid moves from the adjacent node of the movement source adjacent in the vertical or horizontal direction of the obstacle grid, the node of the minimum cost of Set the number of deployment directions to 5,
Move from the adjacent node of the moving source adjacent to the obstacle grid diagonally or from the moving adjacent node adjacent to the obstacle grid to the least cost node adjacent to the obstacle grid If it is determined that the minimum cost node deployment direction is set to 4,
Setting the number of deployment directions of the deployment destination node from the node of the lowest cost set to 4 or 5 as the number of deployment directions;
A route search system characterized by that.
請求項1乃至3のうちいずれか1項記載の経路探索システムであって、
前記ノード展開部は、前記設定部により展開方向の数を2と設定された最小コストのノードを、該最小コストのノードに対する隣接ノードからの移動方向、および、前記延長線と平行方向、の2方向に展開する、ことを特徴とする経路探索システム。
A route search system according to any one of claims 1 to 3,
The node expansion unit sets a minimum cost node, the number of expansion directions of which is set to 2 by the setting unit, as a moving direction from an adjacent node to the minimum cost node, and a direction parallel to the extension line. A route search system that develops in a direction.
グリッドで表された領域に含まれる始点から終点までの経路のうち、そのコストが最小のものを選択する経路探索方法であって、
最小コストのノードからの複数の展開方向に応じた複数のグリッドに対してコストを計算して、最小コストのノードを選択して移動し、さらに該移動後のノードを最小コストのノードとして設定して展開していく処理を繰り返すステップと、
前記最小コストのノードからの展開先の各ノードの展開方向の数を設定するステップと、を含み、
前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定し、
前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定した場合に、該展開先のノードの展開方向の数を2に設定する、
ことを特徴とする経路探索方法。
A route search method that selects a route with the lowest cost from a start point to an end point included in an area represented by a grid,
Calculate the cost for multiple grids according to multiple deployment directions from the lowest cost node, select and move the lowest cost node, and set the moved node as the lowest cost node Steps to repeat the process of developing and
Setting the number of deployment directions of each node to be deployed from the node with the lowest cost,
When it is determined that the expansion destination node is on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node in which the number of expansion directions is set to 3, the expansion destination node Set the number of deployment directions to 3
When it is determined that the expansion destination node is not on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node in which the number of expansion directions is set to 3, the expansion destination node Set the number of deployment directions to 2
A route search method characterized by that.
グリッドで表された領域に含まれる始点から終点までの経路のうち、そのコストが最小のものを選択するプログラムであって、
最小コストのノードからの複数の展開方向に応じた複数のグリッドに対してコストを計算して、最小コストのノードを選択して移動し、さらに該移動後のノードを最小コストのノードとして設定して展開していく処理を繰り返す処理と、
前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にあると判定した場合に、該展開先のノードの展開方向の数を3に設定する処理と、
前記展開先のノードが、前記展開方向の数が3に設定された前記最小コストのノードに対する、移動元の隣接ノードからの移動方向の延長線上にないと判定した場合に、該展開先のノードの展開方向の数を2に設定する処理と、
をコンピュータに実行させる、ことを特徴とするプログラム。
A program that selects a route from the start point to the end point included in the area represented by the grid with the lowest cost,
Calculate the cost for multiple grids according to multiple deployment directions from the lowest cost node, select and move the lowest cost node, and set the moved node as the lowest cost node Process to repeat the process of expanding and
When it is determined that the expansion destination node is on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node in which the number of expansion directions is set to 3, the expansion destination node Processing to set the number of deployment directions of 3 to,
When it is determined that the expansion destination node is not on the extension line in the movement direction from the adjacent node of the movement source with respect to the minimum cost node in which the number of expansion directions is set to 3, the expansion destination node Processing to set the number of deployment directions of 2 to
A program characterized by causing a computer to execute.
JP2015158256A 2015-08-10 2015-08-10 Route search system, route search method and program Pending JP2017037468A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015158256A JP2017037468A (en) 2015-08-10 2015-08-10 Route search system, route search method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015158256A JP2017037468A (en) 2015-08-10 2015-08-10 Route search system, route search method and program

Publications (1)

Publication Number Publication Date
JP2017037468A true JP2017037468A (en) 2017-02-16

Family

ID=58048596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015158256A Pending JP2017037468A (en) 2015-08-10 2015-08-10 Route search system, route search method and program

Country Status (1)

Country Link
JP (1) JP2017037468A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020512644A (en) * 2017-03-30 2020-04-23 ブレーン コーポレーションBrain Corporation System and method for robot path planning
WO2020144970A1 (en) * 2019-01-11 2020-07-16 ソニー株式会社 Action planning device, action planning method, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020512644A (en) * 2017-03-30 2020-04-23 ブレーン コーポレーションBrain Corporation System and method for robot path planning
WO2020144970A1 (en) * 2019-01-11 2020-07-16 ソニー株式会社 Action planning device, action planning method, and program

Similar Documents

Publication Publication Date Title
JP5381679B2 (en) Route search system, method, program, and moving object
JP5886502B2 (en) MOBILE BODY CONTROL DEVICE, MOBILE BODY CONTROL METHOD, AND CONTROL PROGRAM
JP5998816B2 (en) Route search method, route search device, robot control device, robot, and program
US9207678B2 (en) Method and apparatus for constructing map for mobile robot
CN106774347A (en) Robot path planning method, device and robot under indoor dynamic environment
JP2010191502A (en) Mobile robot control system, method and program for searching path
JP4985163B2 (en) Route search system, route search method, and autonomous mobile body
JP2006504192A (en) Method and apparatus for forming a graph structure describing a surface having a free surface and an occupied surface, and a computer program and computer program product having program code means
JP2016149090A (en) Autonomous mobile device, autonomous mobile system, autonomous mobile method and program
JP2001154706A (en) Method for generating route of mobile object
US11953879B2 (en) Agent-based slicing for 3D object models
JP2017037468A (en) Route search system, route search method and program
JP6312949B2 (en) Pressure loss determination device, pressure loss determination program, and pressure loss determination method
JP2003029833A (en) Method for generating autonomic traveling path of traveling object
KR102265622B1 (en) Method, computer readable storage medium and system for calculating shortest path
JP2003280710A (en) Generation and control method of working track of robot hand
JP5435729B2 (en) Walking landing position planning method for legged robot
Cupec et al. Step sequence planning for a biped robot by means of a cylindrical shape model and a high-resolution 2.5 D map
JP5403086B2 (en) Movement path generation method, movement path generation apparatus, movement path generation program, robot arm control apparatus, and robot arm control program
US20230273621A1 (en) Information processing apparatus, information processing method, and program
CN115562356A (en) Flight vehicle graph search path planning method, terminal device and medium
CN113110530B (en) Underwater robot path planning method for three-dimensional environment
CN113885531A (en) Method for moving robot, circuit, medium, and program
CN114397893A (en) Path planning method, robot cleaning method and related equipment
JP5310236B2 (en) Legged robot and its control method