JPH07129238A - 障害物回避経路生成方式 - Google Patents

障害物回避経路生成方式

Info

Publication number
JPH07129238A
JPH07129238A JP5273807A JP27380793A JPH07129238A JP H07129238 A JPH07129238 A JP H07129238A JP 5273807 A JP5273807 A JP 5273807A JP 27380793 A JP27380793 A JP 27380793A JP H07129238 A JPH07129238 A JP H07129238A
Authority
JP
Japan
Prior art keywords
point
area
obstacle
path
route
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.)
Withdrawn
Application number
JP5273807A
Other languages
English (en)
Inventor
Naoyuki Sawazaki
直之 沢崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP5273807A priority Critical patent/JPH07129238A/ja
Publication of JPH07129238A publication Critical patent/JPH07129238A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

(57)【要約】 【目的】 移動ロボットが自律的に経路を生成して障害
物を回避する障害物回避経路方式に関し、目的地までの
最適な経路を効率良く探索できるようにする。 【構成】 移動ロボット1は自律走行制御装置2からの
指令に応じてその駆動輪12が制御され所定の移動動作
を行う。この移動ロボット1には、レーザレンジファイ
ンダ11が搭載され、レーザレンジファインダ11は進
路前方の距離計測を行い、その情報を自律走行制御装置
2に送る。自律走行制御装置2の地形図生成手段21
は、受け取った情報を処理して地形データとし地形図を
生成する。経路生成手段22は、その地形図に対して障
害物領域が尾根、走行可能領域が谷となるようなポテン
シャル場を生成しそのポテンシャル値が所定値以上とな
る領域を障害物領域、所定値以下となる領域を走行可能
領域として再定義し、その走行可能領域に移動ロボット
1の経路を生成する。また、障害物回避のための折れ線
経路を生成する。走行制御手段23は、その経路に関す
る情報を基にして走行指令を生成し、移動ロボット1の
駆動輪12にその走行指令を出力する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】移動ロボットが、誘導設備のない
工場内での搬送作業や惑星探査等を行う場合、自身のセ
ンサで周囲の地形を把握し、障害物等を回避する適切な
障害物回避経路を生成する必要がある。本発明はそのよ
うな障害物回避経路生成方式に関する。
【0002】
【従来の技術】現在実用化されている工場内等での無人
搬送システムにおける移動ロボットの誘導方法には、下
記のような方法がある。 (1)走行路の地下に誘導ケーブルを埋設し、移動ロボ
ット自身に取り付けられた左右のアンテナで誘導ケーブ
ルからの漏洩電波を検出し、その強度差に従って進路を
修正しつつ誘導ケーブルの真上を走行させる方法。 (2)走行路に反射テープを貼っておき、複数の反射型
光センサでこれを検出し反射テープが移動ロボットの真
下になるように誘導する方法。 (3)レーザビームで外からコースを照らし移動ロボッ
トがその上を走るように誘導する方法。 (4)環境に光源などの灯台を設置し、移動ロボットが
光源に向かって舵をとる方法。 (5)コース上にランドマークや標識を設置し、移動ロ
ボットがそれを認識して標識に従って指示されたコース
を走行する方法。
【0003】しかし、これらの方法によると、あらかじ
め移動ロボットが走行するコースが規定されていること
が絶対条件であるので、そのコース周辺に適切な設備を
設ける必要がある。このため、走行コースの変更等のた
めに環境側に特別な工事等が必要であり、柔軟性に欠け
るという欠点があった。
【0004】一方、移動ロボットの誘導方法として、移
動ロボット自身が環境の地形図を頼りに、自身のセンサ
で走行路を妨げる障害物を検知し回避経路を計画しなが
ら走行する方法があり、近年その研究が進められてい
る。現状では、屋内の廊下等のようにかなり詳細な地形
図が与えられた状態で、ある程度形状が既知である比較
的小さな障害物が1〜2個存在する程度の環境について
実用レベルの技術が開発されつつある。
【0005】さらに、概略の地形図のみが与えられた状
態で、障害物の個数、形状等が未知の環境下を、移動ロ
ボットが自身に搭載したセンサを用いて障害物を認識
し、適切な回避経路を生成し、自律的に走行する方法に
ついても研究が進められている。この自律移動ロボット
の障害物回避経路生成方法は、大別すると、ルールベー
ス法、ポテンシャル法、探索法の3つに分類される。以
下にこれらの方法の長所と欠点について説明する。
【0006】(1)ルールベース法:この方法は、例え
ばゴール方向に障害物がない状況では直進し、障害物が
ある場合には、障害物にある程度近付くまでは直進し、
それから障害物を左または右に見るように障害物に沿っ
て進行するといったルールに従って走行するものであ
る。経路計画に要する時間は短いが、その経路は必ずし
も最適な経路でないため、図50に示すように環境によ
っては走行効率が極端に低下するという欠点がある。
【0007】(2)ポテンシャル法:ポテンシャル法は
さらに、ローカルな視点で近傍の障害物のみを考慮して
経路を生成する方法と環境全体(センサで計測された地
形データ全体)の障害物を考慮する方法の2種類があ
る。
【0008】前者のローカルな視点で近傍の障害物のみ
を考慮して経路を生成する方法は、障害物からの反発力
とゴール地点からの吸引力の合力方向に進むことで障害
物を回避する方法であり、少ない計算量で実現できる
が、図51に示すように障害物からの反発力とゴール地
点からの吸引力が釣り合う場合には経路を生成できなく
なる欠点がある。
【0009】後者の環境全体(センサで計測された地形
データ全体)の障害物を考慮する方法としては、障害物
領域を発熱源、ゴール地点を吸熱源とした場合での定常
状態での熱分布(ラプラスポテンシャル場)を反復計算
によって求め、スタート地点からこのポテンシャル場を
降下する方向へたどることで経路を生成する方法が開発
されている。この方法はポテンシャル場に局所最小点が
発生しないことが補償されており、経路が存在する場合
には必ずそれを求めることが可能であるが、複雑な地形
ではポテンシャル場の計算に多大な計算時間を要する。
また、数値的に反復計算でポテンシャル場を計算してそ
の勾配に従って経路を生成するため、経路が存在しない
場合と反復回数や計算の桁落ちの影響でポテンシャル場
に十分な勾配が発生しない場合とを判別する手段が存在
しない点に欠点がある。
【0010】(3)探索法:探索法は空間(領域)を分
割して走行可能な経路を探索する方法である。経路が存
在する場合には必ずそれを発見することが可能である
が、領域の分割方法によって計算量や計算時間が大きく
影響される。従来の分割方法で代表的なものは、図52
に示すように、走行可能領域を4分木構造に分割する方
法で、この方法は、環境を図のように長方形領域に4分
割し、分割した長方形領域内に障害物が存在する領域に
対してはさらにその長方形領域を4分割する処理を再帰
的に行ない、環境を図のような4分木構造で表現する方
法である。環境の複雑さに応じて階層的に領域を分割す
るため効率的であるが、4分木構造を作成するための処
理量が多い、ノードの数が多くなるため探索に時間がか
かる、といった欠点がある。
【0011】
【発明が解決しようとする課題】このように、自律移動
ロボットにおける従来の障害物回避経路生成方法は、経
路探索に長時間を要したり、経路長が短く、かつ走行効
率の良い経路を効率良く生成することが困難であるとい
った問題点を有していた。
【0012】本発明はこのような点に鑑みてなされたも
のであり、目的地までの径路長が短く、かつ走行効率の
良い経路を効率良く探索することができる障害物回避経
路生成方式を提供することを目的とする。
【0013】
【課題を解決するための手段】図1は上記目的を達成す
る本発明の原理を説明するブロック図である。図におい
て、本発明の障害物回避経路生成方式は、移動ロボット
1に搭載されたレーザレンジファインダ11(またはカ
メラ)による距離計測の結果得られた地形データを用い
て地形図を生成する地形図生成手段21と、地形図生成
手段21が生成した地形図に対して障害物領域が尾根、
走行可能領域が谷となるようなポテンシャル場を生成し
そのポテンシャル値が所定値以上となる領域を障害物領
域、所定値以下となる領域を走行可能領域として再定義
し、その走行可能領域に移動ロボット1の経路を生成す
る経路生成手段22とから構成される。
【0014】上記経路生成手段22はまた、走行可能領
域が基準方向に関して分岐あるいは接続する点で分割す
ることでその走行可能領域全体を、基準方向の各座標に
一対一対応する前記基準方向とは異なる他方向の区間の
集合で表現される部分領域に分割し、その部分領域をノ
ード、その部分領域間の連結関係をアークとするグラフ
構造として表現する。
【0015】また、経路生成手段22はスタート地点か
らゴール地点に至る経路の途中通過領域列及び通過点列
を、スタート地点とそれまでに選定した通過点及びゴー
ル地点を結ぶ折れ線経路の経路長を距離予測値とし、そ
れが最小となるように、グラフ構造を探索して決定す
る。
【0016】さらに、経路生成手段22は、通過点を結
ぶ折れ線経路と障害物領域との衝突チェックを、グラフ
構造のノードの区間情報を用いて行い、折れ線経路上で
障害物領域と衝突する部分に対応する境界点列またはそ
れに適度のオフセットをつけた点列を折れ線の頂点列に
追加することで障害物領域と衝突しない折れ線経路を生
成する。
【0017】また、経路生成手段22は生成した折れ線
経路の各頂点Pi に対して、その頂点Pi と隣接する2
頂点Pi-1 、Pi+1 を結ぶ線分経路Pi-1 i+1 が通過
領域外を通過しない場合には頂点Pi を削除し、通過領
域内を通過する場合には通過領域外に存在する部分に対
応する領域の境界点列上の点における境界点列の接線と
平行かつその接点から適当なオフセットをもつ直線と線
分経路Pi-1 i 、P i i+1 との交点で頂点Pi を置
き換える処理を行う。
【0018】
【作用】地形図生成手段21は、移動ロボット1に搭載
されたレーザレンジファインダ11(またはカメラ)に
よる距離計測の結果得られた地形データを用いて地形図
を生成する。経路生成手段22は、地形図生成手段21
が生成した地形図に対して障害物領域が尾根、走行可能
領域が谷となるようなポテンシャル場を生成しそのポテ
ンシャル値が所定値以上となる領域を障害物領域、所定
値以下となる領域を走行可能領域として再定義し、その
走行可能領域に移動ロボット1の経路を生成する。
【0019】この経路生成手段22は、走行可能領域を
基準方向の各座標に一対一対応する他方向の区間の集合
で表現される部分領域に分割し、その部分領域をノー
ド、それらの部分領域間の連結関係をアークとするグラ
フ構造として表現し、そのグラフ構造を探索して障害物
回避経路を生成する。
【0020】その障害物回避経路は、スタート地点、通
過点及びゴール地点を結ぶ折れ線経路の経路長を距離予
測値として、それが最小となるように生成される。ま
た、その折れ線経路の衝突チェックをグラフ構造の区間
情報を用いて行い、折れ線経路上で障害物と衝突する部
分に対応する障害物の境界点列またはそれに適当なオフ
セットを付けた点列を折れ線の頂点列に追加する。した
がって、障害物回避経路が高速に生成される。
【0021】さらに、生成した折れ線経路の各頂点に対
して、グラフ構造の区間情報に基づく処理を施し、必要
に応じてその頂点を新たな頂点で置き換えるようにし
た。このため、頂点数が少なく、頂点での曲がり角も小
さくなる障害物回避経路が生成される。
【0022】なお、経路生成手段22が生成した経路に
関する情報は、さらに走行制御手段23に送られ、走行
制御手段23は、その経路に関する情報を基にして走行
指令を生成し、移動ロボット1のロボット本体12にそ
の走行指令を出力する。移動ロボット1は、走行指令に
従って自律的に障害物を回避し、最適な経路を辿って目
的地まで走行する。
【0023】
【実施例】以下、本発明の一実施例を図面に基づいて説
明する。本発明を実行するための全体構成を図1を用い
て説明する。図において、移動ロボット1は自律走行タ
イプのロボットであり、自律走行制御装置(ロボット制
御装置)2からの指令に応じてその駆動輪12が制御さ
れ所定の移動動作を行う。この移動ロボット1には、レ
ーザレンジファインダ11が搭載されている。レーザレ
ンジファインダ11は進路前方の距離計測を行い、その
情報を自律走行制御装置2に送る。
【0024】自律走行制御装置2は、地形図生成手段2
1、経路生成手段22及び走行制御手段23から構成さ
れる。地形図生成手段21は、レーザレンジファインダ
11による距離計測の結果得られた情報を処理して地形
データとし地形図を生成する。経路生成手段22は、地
形図生成手段21が生成した地形図に対して障害物領域
が尾根、走行可能領域が谷となるようなポテンシャル場
を生成しそのポテンシャル値が所定値以上となる領域を
障害物領域、所定値以下となる領域を走行可能領域とし
て再定義し、その走行可能領域に移動ロボット1の経路
を生成する。経路生成の詳細は後述す。経路生成手段2
2が生成した経路に関する情報は、さらに走行制御手段
23に送られる。走行制御手段23は、その経路に関す
る情報を基にして走行指令を生成し、移動ロボット1の
駆動輪12にその走行指令を出力する。移動ロボット1
は、走行指令による経路を自律的に走行し目的地まで達
する。その経路は走行可能領域に生成されるので、移動
ロボット1は、障害物を自律的に回避して目的地まで走
行する。
【0025】図2は上記の地形データについての説明図
である。図において、レーザレンジファインダ11は、
移動ロボット1に搭載されており、距離計測を行う。そ
の距離計測の結果得られる情報(α、β、d)は、上述
したように、自律走行制御装置2の地形図生成手段21
に送られる。地形図生成手段21は、その情報(α、
β、d)を直交座標(x−y−z)系に変換することに
より、進路前方数メートルのグリッド表現の地形データ
(X、Y、Z)を求め、この地形データ(X、Y、Z)
をさらに処理して目的地に到る障害物回避経路の生成を
行う。
【0026】図3は障害物領域と走行可能領域の2値で
表現されたグリッド形式の地形図の例である。図におい
て、斜線で示した部分が障害物領域Aである。その他の
部分を走行可能領域B0とする。従来から、経路計画の
場合には移動ロボット1の大きさを点と見なせるように
障害物領域Aの境界を移動ロボット1の大きさに相当す
る量だけ伸長(膨張)させる処理が行なわれている。本
実施例では、図3のようなグリッド形式の地形図におい
て、障害物領域Aの境界を伸長させる方法として、図4
のようなポテンシャル関数Pを導入する。
【0027】すなわち、先ず、障害物領域Aにおいてあ
る一定のポテンシャル値V0 を持ち、障害物領域Aから
の距離Dに応じて単調に減少するポテンシャル関数Pを
考え、走行可能領域B0の各グリッドに対してポテンシ
ャル関数Pで計算される値の総和をその位置のポテンシ
ャル値とするポテンシャル場を作成する。次に、そのポ
テンシャル場を利用して、ポテンシャル値が所定の閾値
t 以上となる領域(図4の範囲d)を新たな障害物領
域ΔA1として本来の障害物領域Aに加える。また、ポ
テンシャル値が所定の閾値Vt 以下となる領域を新たな
走行可能領域B1とする。これにより、障害物領域Aの
境界が伸長し障害物領域は(A+ΔA1)となる。
【0028】図5は上述したポテンシャル関数Pを用い
た場合の障害物領域を示す図である。ポテンシャル関数
Pを用いた場合の障害物領域は、上述した手順により、
図5に示す(A+ΔA1)となる。このときの走行領域
はB1である。
【0029】図6は従来方法による障害物領域を示す図
である。従来は単純なパターンでの塗りつぶしにより障
害物領域Aの境界を伸長させていた。この方法による
と、図6に示すように、本来の障害物領域Aには、単純
なパターンによる追加分ΔA2が加えられ、障害物領域
は(A+ΔA2)となる。このときの走行領域はB2で
ある。
【0030】図5の本発明による障害物領域(A+ΔA
1)と図6の従来方法による障害物領域(A+ΔA2)
を比較すると分かるように、本発明によれば、本来の障
害物領域Aを伸長させると同時に新たな障害物領域(A
+ΔA1)の境界を滑らかにする効果が得られる。この
場合において、必ず障害物領域(A+ΔA1)の境界が
伸長する方向にその境界を滑らかにすることが保証され
ている。
【0031】次に、上記のポテンシャル関数Pを用いた
ときの障害物領域の伸長について、上記の図3及び図
7、図8を基にしてより詳細に説明する。先ず、図3に
示した地形図の各グリッドを順に走査して、障害物領域
Aにあるグリッドの座標Q0,1,・・・, Qn を図7に
示すデータ構造(リスト)に登録する。以下では図7の
データ構造を(Q0,1,・・・, Qn )のように表記す
る。続いて、Qi ( a i, i ) ,(i=O,・・・,
n)を上記のリストに登録した障害物領域Aの各グリッ
ドの座標として、これらのグリッドに対してはある大き
な正の値Aを設定する。そして、Pj (xj , yj ) を
走行可能領域B0上の各グリッドの座標とすると、走行
可能領域B0のグリッドPj と障害物領域Aのグリッド
i との距離dj,i は、次式(1)で表される。
【0032】
【数1】
【0033】ここで、走行可能領域B0のグリッドPj
の持つポテンシャル値Vj0を次式(2)を用いて表す。
【0034】
【数2】
【0035】すなわち、走行可能領域B0のグリッドP
j のポテンシャル値Vj0は、障害物領域Aの各グリッド
との距離で決まるポテンシャル値の総和として求まる。
このポテンシャル値設定を走行可能領域B0のすべての
グリッドに対して順に行う。上記の処理を図8に示すダ
ミー地形図に対しても実行し、図8のダミー地形図にお
いて、障害物領域Aの境界から伸長させたい量だけy方
向に離れたグリッドのポテンシャル値を閾値Vt とし
て、その閾値Vt より小さい値をもつグリッドを走行可
能領域B1とし、その閾値Vt 以上の値をもつグリッド
を障害物領域(A+ΔA1)とする地形図を新たに作成
する。
【0036】図9はポテンシャル値設定範囲を制限する
場合の説明図である。上記のポテンシャル値設定はすべ
てのグリッドに対して行われるが、障害物領域Aからあ
る程度以上離れた距離にあるグリッドのポテンシャル値
は非常に小さく、障害物領域Aの境界を伸長させるとい
う目的に与える影響が小さいことを考慮して、図9に示
すように、走行可能領域B0内のグリッドPのポテンシ
ャル値を求める場合に、障害物領域Aの境界を伸長させ
ようとする量(距離)より大きいある一定の距離R以内
にある障害物領域Aのグリッドに対してのみ計算を行う
ようにする。
【0037】すなわち、走行可能領域B0 の各グリッド
のポテンシャル値の計算において、dj,i が伸長させよ
うとする量より大きいある設定値Rより小さくなるよう
なd j,i に対してのみ上記式(2)の計算を行ない、そ
の結果をそのグリッドのポテンシャル値として設定する
処理を走行可能領域B0 の各グリッドに対して行う。
【0038】このようにすることによって、すべてのグ
リッドに対してポテンシャル値を求める場合よりも、効
率よく障害物領域Aの境界伸長とスムージングを行うこ
とができる。
【0039】図10は上記のポテンシャル関数に調和関
数を利用した場合の説明図である。調和関数は、次式
(3)のラプラスの微分方程式
【0040】
【数3】
【0041】の解φで計算される。ポテンシャル場は、
初期状態で障害物領域Aのグリッドにある正の値、走行
可能領域B0 のグリッドに0を設定し、上記調和関数を
利用して定常状態における分布を計算することにより得
られる。その際に、走行可能領域B0 の各グリッドPの
値を順番に、図10に示すように、隣接する4つのグリ
ッド(図のNo.1,2,3,4のグリッド)の値の平
均で置き換える処理を繰り返すことで計算できる。
【0042】すなわち、先ず、図3の地形図と図11に
示すダミー地形図(1点Pのみ障害物領域A)に対し
て、障害物領域Aの点Pにある正の値、走行可能領域B
0 に0を設定する。次に、地形図とダミー地形図のグリ
ッドを順に走査し、すべての走行可能領域B0 のグリッ
ドに対して、その設定値を、図10に示すように、x方
向、y方向に隣接する4つのグリッドの設定値の平均値
で置き換える。続いて、ダミー地図上で障害物領域Aの
グリッドPから、目的とする伸長量dだけ離れたグリッ
ドQの値が0より大きくなくなるまで、上記処理を繰り
返す。そして、ダミー地図上のグリッドQの値を閾値と
して地形図の各グリッド順に走査し、その閾値より小さ
い値をもつグリッドを走行可能領域B1 、その閾値以上
の値をもつグリッドを障害物領域(A+ΔA1 )とする
地形図を新たに作成する。
【0043】このように、4近傍の平均計算という単純
な計算の繰り返しによってのみポテンシャル場を作成す
るため、高速に障害物境界の伸長とスムージングを行う
ことができる。
【0044】次に、走行可能領域B1 の表現方法につい
て図12〜図17を用いて説明する。本発明による走行
可能領域B1 の表現方法は、図12に示すように、走行
可能領域B1 を任意の一方向(図の例ではy方向)にの
み分割し、その各分割領域(図12の1〜12)を、図
13に示すような分割した方向の各座標に一対一対応す
る他方向(図ではx方向)の区間の集合で表し、それら
をノードとすると共に、それらの連結関係をアークと
し、図14に示すようなグラフ構造として表現する方法
である。この表現方法によると、走行可能領域B1 が従
来の4分木による方法と比べて少ないノード数のグラフ
構造で表現され、かつ走行可能領域B1 の境界座標の情
報が各ノードに重複することなく保持されるため、グラ
フ探査による経路決定や軌道計画を効率よく行うことが
可能になる。
【0045】図15は上記表現方法におけるノードのデ
ータ構造を示す図である。図において、ノードのデータ
構造は、ID、FP、BP及びRLによって形成され
る。IDはノード番号、FPはy増加方向に連結してい
る領域に対応するノードのリスト、BPはy減少方向に
連結している領域に対応するノードのリスト、RLは各
分割領域内のy座標に対するxの区間のリストである。
【0046】このデータ構造を用いることにより、地形
図の走行可能領域B1 を図14に示した各分割領域のグ
ラフ構造の形式で表現できるようになる。より具体的に
は次のようにしてグラフ構造が形成される。
【0047】図16に示すように、分割する方向の座標
(図の例ではy座標)について順番に他方向(図の例で
はx方向)に地形図を走査し、走行可能領域B1 をそれ
ぞれ一次元の区間(図の例ではxの区間)で表し、それ
ぞれの区間について、前回の処理で得た区間との接続関
係を調べ、1対1の接続関係を持つ区間以外をすべて、
新たな分割領域として登録し、すでに登録されている分
割領域との接続関係を登録する処理を行なう。この処理
方法によれば、地形図全体に対して1回の走査のみでグ
ラフ構造を作成することができ、グリッド表現の地形図
から高速にグラフ構造を作成することが可能になる。
【0048】この処理方法の例を図17を用いて説明す
る。先ず、図の上段に示す地形図のy座標が0のグリッ
ドに対して、x方向に走査して走行可能領域に存在する
グリッド(以下「走行可能グリッド」という。)の区間
列のリストQ(q0,1,・・・,qn )を作成する。こ
の集合の各区間(要素)qj は、(xmin j , xmax j )
の形式のリストであり、また、xmax j <xmin j+1
を満足する順に各要素を並べておく。次に、上記区間列
のそれぞれの区間に対して図15のノードのデータ構造
を作成し、順にノード番号(分割領域の符号A,B,・
・・に対応)をつけ、ノードのRLスロットのリストに
区間を登録する。さらに、区間列のリストQの先頭から
順に番号を付したインデックスとノード番号との組を
((index0 , node0),・・・)の形式のN0 リストに登
録する。
【0049】次に、y座標が1以上の各y座標(これを
iとする)に移り、そのグリッドに対して順に以下の処
理を繰り返す。 (1)y座標が0の場合と同様に、x方向に走査して走
行可能グリッドの区間列のリストQ(図中、yi におけ
る区間リスト)(q0,1,・・・,qn )を作成する。
この集合の各要素qj は、(xmin j , xmax j ) の形
式のリストであり、また、xmax j <xmin j+1 を満足
する順に各要素を並べておく。そして、前回の処理での
区間列のリストP(図中、yi-1 における区間リスト)
(p0, 1,・・・, m ), pj =(xmin j , xmax
j ) と、その要素のインデックス(図中、yi-1 におけ
るインデックス)とその要素(区間)が登録されている
ノードのノード番号とのNi-1 リスト(図中、yi-1
おけるNi-1 リスト)を用いて以下の(1−1)から
(1−4)の処理を行なう。
【0050】(1−1)区間列のリストQの各要素qs
=(xmin s , xmax s ) に対して、区間列のリストP
の各要素pt =(xmin t , xmax t ) のうち、xmax
t ≦xmin s かつxmin t ≦xmax s を満足するものの
インデックス(t) のリスト(存在しない場合には空リス
ト)を作成し、以下のような形式のリストAを作成す
る。 リストA:((s1, (t1,t2,..)),(s2,(t3)),(s3,()),...) (1−2)区間列のリストPの各要素pt =(xmin
t , xmax t ) に対して、区間列のリストQの各要素
s =(xmin s , xmax s ) のうち、xmax s ≦xmi
n t かつxmin s ≦xmax t を満足するもののインデッ
クス(s) のリスト(存在しない場合は空リスト) を作成
し、以下のような形式のリストBを作成する。 リストB:((t1,(s1,s2,..)),(t2,(s3)),...) (1−3)リストAの要素を順に調べて、sとtが一対
一対応する組(例えば(si , (tj ))のt(tj ) がリス
トBにおいても同じs(sj ) と一対一対応している場
合)に対して、そのtに対するノード番号をNi-1 リス
トから検索し、そのノードのRLスロットにs(sj )
に対応する区間リストを登録し、s(s j ) とそのノー
ドのノード番号の組をNi リスト(最初は空リスト)に
追加する。また、一対一対応しない場合には、s
(sj ) に対して新たにノードを作成し、そのノードの
RLスロットにs(sj ) に対応する区間リストを登録
し、さらに、s(sj ) と新たに作成したノードのノー
ド番号の組をNi リストに追加する。
【0051】(1−4)再度リストAの要素を順に調べ
て、sとtが一対一対応する組(例えば(si , (tj ))の
t(tj ) がリストBにおいても同じs(sj ) と一対
一対応している場合)以外のときについて、s(sj )
に対応する区間を登録したノードのノード番号をNi
ストから検索し、そのノードのBPスロットに、リスト
Aにおいてs(sj ) に対応するすべてのtのそれぞれ
に対応する区間が登録されているノードのノード番号を
i-1 リストから検索し登録する。また、この時それぞ
れのtに対応する区間が登録されているノードのFPス
ロットに、s(sj ) に対応する区間が登録されている
ノードのノード番号を追加する。
【0052】このように、地形図全体に対して1回の走
査のみで高速にグラフ構造を作成することができ、グラ
フ探索による経路決定や軌道計画を効率よく行うことが
可能になる。
【0053】次に、上記のグラフ探索を用いて経路を生
成する手法について説明する。この経路生成手法は、ス
タート地点Sからゴール地点Gに至る経路の途中通過領
域列及び通過点列を、探索時に順次、図18に示すよう
に、前通過点pi を含む部分領域(分割領域)に接続す
る部分領域Q0,1,・・・,Qm のそれぞれに対して、
領域内に通過点pi からの距離とゴール地点Gからの距
離の和が最小になる1点を次通過点候補q0,1,・・
・, qm として選定し、スタート地点Sとそれまでに選
択した通過点及びゴール地点Gを結ぶ折れ線経路の経路
長を距離予測値として、それが最小となる通過領域列及
び通過点列を、上記グラフ探索を用いて決定する。この
経路生成手法によって、経路長の短かい経路の探索にお
いて参照するノードについてのみ参照時にコスト計算を
行なうことが可能になるため、効率のよいグラフ探索が
可能になる。
【0054】上記経路生成手法を順に説明する。ここで
は、経路の途中通過点Pi ,Pi+1を図19に示すよう
に、分割した走行可能領域の接続線上の点に限定する。 (1)すでに探索を終了したノードを登録するリスト
T、次探索候補のノードを登録するリストUを定義す
る。
【0055】(2)リストTにスタート地点Sの座標と
スタート地点を含む部分領域のノード番号Ns のリスト
を登録する。(このとき、リストTは( S,Ns ) とな
る。) (3)部分領域Ns に接続するすべての部分領域B0,
1, ..,n について順に、部分領域Bj と部分領域Ns
との接続線上の点(グリッドの格子点q0,
1, . .,n ) のそれぞれについて点Sからその点までの
距離(線分Sqk の長さ)とその点からゴール地点(座
標をGとする)までの距離(線分qk Gの長さ)の和を
計算し、その値(これをVとする)が最小になる点(複
数存在する場合には最初に見つかった点、または、x座
標がSあるいはGに近い点を選ぶ)を次通過点候補
j 、またその時のVの最小値をVmin j B として、
U:(( bj,j,Vmin j B , s ),・・・)の形式でリ
ストUに登録していく。
【0056】(4)リストUの要素の中で、Vmin が最
小であるもの(これを(bm , Bm, Vmin m B ,
s )とする)を選択しその要素をリストUから削除
し、リストTの先頭に追加する。
【0057】(5)以下の処理(5.1)〜(5.3)
をゴール地点を含む部分領域が登録されるまで繰り返し
実行する。 (5.1)リストTの先頭要素(これを(pi,i,Vmin
i P , i ) とする)について、リストUの各要素
(rj,j,Vmin j R , j )の中で部分領域R j と部
分領域Pi が接続している場合には、部分領域Pi と部
分領域Rj との接続線上の点(グリッドの格子点q0,
1, ..,n ) のそれぞれについて点pi からその点まで
の距離(線分pi k の長さ) とその点からゴール地点
までの距離(線分qk Gの長さ)を計算し、その値が最
小になる点(これをql とする。また複数存在する場合
には、最初に見つかった点、または、x座標がpi ある
いはGに近い点を選ぶ)を見つける。そしてV1=Vmi
n i P −pi G+pi l +ql Gを計算し(pi Gは
2点pi , Gの距離を、pi l は2点pi ,ql の距
離を、ql Gは2点ql ,Gの距離を表す)、もし、V
min j R >V1である場合には、その要素(rj,j,
min j R , j )を (ql,j,V',Pi )に修正する
処理を行なう。
【0058】(5.2)リストTの先頭要素(これを
(pi,i,Vmin i P , Ni ) とする)について、部分
領域Pi に接続する部分領域Q0,1,, n の中でリ
ストUに登録されていないものすべてについて、部分領
域Qj と部分領域Pi との接続線上の点(グリッドの格
子点q0,1, ..,n )のそれぞれについて点pi から
その点までの距離(線分pi k の長さ)とその点から
ゴール地点までの距離(線分qk Gの長さ)を計算し、
その値が最小になる点(複数存在する場合には、最初に
見つかった点、または、x座標がpi あるいはGに近い
点を選ぶ)を次通過点候補qj 、またその時のVの最小
値をVmin j Q として、(qj,j,Vmin j Q , i )
をリストUに追加する。 (5.3)リストUの要素の中で、Vmin が最小である
もの(これを(bm , B m , Vmin m B , Ns )とす
る)を選択しその要素をリストUから削除し、リストT
の先頭に追加する。
【0059】(6)リストTの先頭要素(例えば(pi,
i,Vmin i P , Ni ))を取りだし、その要素の1番目
の項(pi ) 、2番目の項(Pi ) をそれぞれリスト
A、Bに登録する。次にその要素の最後の項(Ni )を
2番目の項に持つ要素をリストTから取りだし、同様に
その1番目、2番目の項をリストA、Bの先頭に付け加
える。以下、スタート地点Sを1番目の項に、スタート
地点Sを含む部分領域のノード番号を2番目の項に持つ
要素が取り出されるまで、取り出した要素の最後の項
(Ni )を2番目の項に持つ要素をリストTから取りだ
し、その1番目、2番目の項をリストA、Bの先頭に登
録する処理を繰り返す。最後にスタート地点Sをリスト
Aの先頭に、スタート地点Sを含む部分領域のノード番
号をリストBの先頭に付け加え、さらにゴール地点Gを
リストA最後に付け加えることで、スタート地点Sから
ゴール地点Gに到る経路の途中通過点のリスト(リスト
A)と途中通過領域のノード番号のリスト(リストB)
が求められる。
【0060】図20は上記経路生成の具体例を示す図で
ある。図においてスタート地点S(2,1), P0(4,3), P
1(34,3),P2(7,5), P3(21,5),P4(8,7), P5 (10,7),
6(12,28), P7(17,7),P8(20,5),P9(33,19), P10(3
5,21),P11(32,21),P12(44,33),ゴール地点G(45,34)
である。以下に上記の処理(5)の繰り返し処理の各回
でのリストT及びリストUの内容を示す。 (1)T:((S,1)) U:((P0,2,54.3,1) ,(P1,3,65.0,1)) (2)T:((P0,2,54.3,1) ,(S,1)) U:((P2,4,54.3,2) ,(P3,5,57.6,2), (P1,3,65.0,
1)) (3)T:((P2,4,54.3,2) ,(P0,2,54.3,1) ,(S,1)) U:((P4,6,54.5,4) ,(P5,7,54.3,4) ,(P3,5,57.6,
2) ,(P1,3,65.0,1)) (4)T:((P5,7,54.3,4) ,(P2,4,54.3,2) ,(P0,2,
54.3,1) ,(S,1)) U:((P7,4,56.0,7) ,(P4,6,54.5,4) ,(P3,5,57.6,
2) ,(P1,3,65.0,1)) (5)T:((P4,6,54.5,4) ,(P5,7,54.3,4) ,(P2,4,
54.3,2) ,(P0,2,54.3,1) ,(S,1)) U:((P6,11,63.6,6),(P7,4,56.0,7) ,(P3,5,57.6,
2) ,(P1,3,65.0,1)) (6)T:((P7,4,56.0,7) ,(P4,6,54.5,4) ,(P5,7,
54.3,4) ,(P2,4,54.3,2) ,(P0,2,54.3,1) ,(S,1)) U:((P8,2,59.0,4) ,(P6,11,63.6,6),(P3,5,57.6,
2) ,(P1,3,65.0,1)) (7)T:((P3,5,57.6,2) ,(P7,4,56.0,7) ,(P4,6,
54.5,4) ,(P5,7,54.3,4) ,(P2,4,54.3,2) ,(P0,2,5
4.3,1) ,(S,1)) U:((P9,8,57.6,5) ,(P8,2,59.0,4) ,(P6,11,63.6,
6),(P1,3,65.0,1)) (8)T:((P9,8,57.6,5) ,(P3,5,57.6,2) ,(P7,4,
56.0,7) ,(P4,6,54.5,4) ,(P5,7,54.3,4) ,(P2,4,5
4.3,2) ,(P0,2,54.3,1) ,(S,1)) U:((P11,9,59.0,8),(P10,10,57.6,8) ,(P8,2,59.
0,4) ,(P6,11,63.6,6),(P1,3,65.0,1)) (9)T:((P10,10,57.6,8) ,(P9,8,57.6,5) ,(P3,
5,57.6,2) ,(P7,4,56.0,7) ,(P4,6,54.5,4) ,(P5,7,
54.3,4) ,(P2,4,54.3,2) ,(P0,2,54.3,1) ,(S,1)) U:((P12,12,57.6,8) ,(P11,9,59.0,8),(P8,2,59.
0,4) ,(P6,11,63.6,6),(P1,3,65.0,1)) (10)T:((P12,12,57.6,8) ,(P10,10,57.6,8) ,
(P9,8,57.6,5) ,(P3,5,57.6,2) ,(P7,4,56.0,7) ,
(P4,6,54.5,4) ,(P5,7,54.3,4) ,(P2,4,54.3,2) ,
(P0,2,54.3,1) ,(S,1)) U:((P11,9,59.0,8),(P8,2,59.0,4) ,(P6,11,63.6,
6),(P1,3,65.0,1)) リストTから上記手法で説明したの処理(6)の方法を
実行することで、スタート地点Sからゴール地点Gに到
る経路の途中通過点のリストとして、 (S,P0,P3,P9,P10, P12, G) が得られ、また、途中通過領域のノード番号のリストと
して、 (1,2,5,8,10,12) が得られる。
【0061】このように、スタート地点Sとそれまでに
選択した通過点及びゴール地点Gを結ぶ折れ線経路の経
路長を距離予測値として、それが最小となる通過領域列
及び通過点列をグラフ探索を用いて決定するようにし
た。したがって、経路長の短かい経路の探索において参
照するノードについてのみ参照時にコスト計算を行えば
よく、効率良くグラフ探索を行うことができる。
【0062】上記の通過点決定方法において、条件を満
足する通過点は、図21に示すように、前通過点Pi
ゴール地点Gを結ぶ線分Pi Gの中点を中心とする円上
の複数点が該当する可能性がある。そこで、図21にお
いて、前通過点Pi と次通過点Pi+1 を結ぶ直線Pi
i+1 と、前通過点Pi とゴール地点Gを結ぶ直線Pi
との偏角φを最小にするという条件を加えることで、通
過点をゴール方向に最も近い高々2点に限定することが
できる。この通過点決定方法によって、図22に示すよ
うにスタート地点Sとゴール地点Gを結ぶ直線に最も近
く、総経路長を短くする通過点を決定することが可能に
なる。
【0063】上述した経路生成手法における処理
(3)、(5.1)、(5.2)において予測距離コス
トが最小になる点が複数存在する場合に、それぞれの点
に対して前通過点とその点を結ぶ直線と、前通過点とゴ
ール地点を結ぶ直線との偏角を計算し、その値が最小に
なる点を候補点とすれば良く、より効率良く通過点を決
めることができる。
【0064】次に、上記の折れ線概略経路と障害物領域
間での衝突回避について説明する。図23は折れ線概略
経路と障害物領域との間での障害物回避経路生成の説明
図である。上述した通過点を結ぶ折れ線概略経路は、な
お障害物領域と衝突する場合がある。この場合は、折れ
線概略経路と障害物との衝突チェックを上記グラフのノ
ードの区間情報を用いて行ない、図に示すように折れ線
経路Pi i+1 上で障害物領域A3と衝突する部分L3
に対応する障害物領域A3の境界点列またはそれに適当
なオフセットをつけた点列L3ioを、折れ線の頂点Pi
と頂点Pi+1との間に追加する。この方法により、障害
物領域A3と衝突しない折れ線経路を高速に生成するこ
とができる。
【0065】例えば、図24に示すように、折れ線の頂
点(通過点)Pi 、Pi+1 を結ぶ線分Pi i+1 とそれ
に対応する障害物領域A4とが衝突する部分L4では、
その衝突の回避を、各y座標における線分上の点とその
y座標でのx方向の走行可能領域B4の区間とのx方向
についての重なり部分によって行なう。すなわち、衝突
する部分L4については、図に示すように、そのy座標
における走行可能領域B4との境界点列L4i から、そ
のy座標における走行可能領域B4の区間の長さの1割
程度x方向に離れた点列L4ioを途中通過点として追加
する。この点列L4ioによって障害物領域A4との衝突
を回避することができる。
【0066】図25は障害物回避経路生成の第2の例で
ある。図に示すように、スタート地点Sとゴール地点G
間の走行可能領域B5が区間列として与えられている場
合に、頂点から隣接する次頂点へ向かう折れ線の線分経
路のうち、障害物領域A51、A52に衝突する部分を
区間情報から判定しそれに対応する境界点列から数点を
選択し、その点に対して走行可能領域B5内方向に適当
なオフセットをつけた点を線分経路の端点間に追加する
手続きをゴール地点Gに到るまで新たな通過点を含めて
順次行なう処理を繰り返す。
【0067】図25を用いて順に説明する。(1)線分
SGが障害物領域A51、A52と衝突する部分を判定
し、その部分に対する境界上の点に適当なオフセットを
加えた新たな通過点P1,2,3, 4 を定める。この新
たな通過点P1,2,3,4 の決定方法については、そ
のいくつかの例を後述する。
【0068】(2)(1)で定めた点から数点を選択し
点列(S,G)のSとGの間に挿入し、新たな点列を作
成する(図のようにすべて挿入した場合では、点列
(S,P 1,2,3,4 ,G)が作成される)。
【0069】(3)点列の点を順番に線分で結ぶ折れ線
経路が再度障害物領域A51、A52に衝突するとき、
その線分経路に対して、(1)と同様に通過点を定めて
新たな点列を作成する。
【0070】(4)すべての折れ線が障害物領域A5
1、A52と衝突しなくなるまで繰り返す。図の例で
は、点列(S,P1,2,Q,P3,4 ,G)が作成され
て処理が終了する。なお、オフセットとしては、区間の
長さの1割程度等と設定する方法でも十分である。
【0071】この障害物回避経路生成によると、上記第
1の例の場合に比べて頂点数の少ない折れ線経路を生成
することができる。図26は新たな通過点の決定方法の
説明図である。図に示すように、折れ線経路上の線分P
i i+1 が障害物領域B6を通過する場合に、最初に障
害物領域B6に進入する点P61に対して境界から適当な
オフセットをつけた通過点P62を点列のPi , Pi+1
に挿入し、次に新たに追加した通過点P62と点Pi+1
結ぶ線分経路P62i+1 に対して同じ処理を行なう。こ
の場合、再度点P63において障害物領域B6に進入する
ので、適当なオフセットをつけた通過点P64を挿入しす
る。この処理を、スタート地点Sからゴール地点Gに到
るまで順次行なう。スタート地点Sからゴール地点Gに
到るまでのすべての線分が障害物領域B6を通過しなく
なるまで繰り返すことで、頂点数の少ない折れ線経路を
生成することができる。この方法によると、単純な処理
で通過点を決定することができ、高速に目的の経路を生
成できる。
【0072】図27は新たな通過点決定方法の第2の例
である。図に示すように、折れ線経路上の線分Pi
i+1 が障害物領域A71、A72を通過する部分に対応
する境界点列Q1,Q2,Q3上の各点の中で、その区
間方向の座標が衝突する方向(図のx方向)に極大とな
る点に対して適当なオフセットをつけ、その点を新たな
通過点として追加する。なお、Q0 は折れ線経路の線分
i i+1 が障害物領域A71を通過する部分に対応す
る境界点列の最初の点、Qn は障害物領域A72を通過
する部分に対応する境界点列の最後の点である。この処
理を折れ線経路上で障害物領域を通過する部分がなくな
るまで繰り返すことで、頂点数の少ない折れ線経路が生
成される。
【0073】図27を用いて順に説明する。 (1)各y座標に対する折れ線(線分)Pi i+1 上の
点のx座標をX、そのy座標に対する走行可能領域B7
の区間を(Xmin,Xmax)とするとき、X≦Xmin となる
場合に対する点(y, Xmin)と、Xmax ≦Xとなる場合
に対する点(y,-Xmax)を順に求め、図28に示すグラ
フを作成する。図28において、点列Q11は、図27
の境界点列Q1に対応する。同様に、点列Q22は境界
点列Q2に、点列Q33は境界点列Q3にそれぞれ対応
する。
【0074】(2)(1)で求めた図28の点列Q1
1、Q22及びQ33に対して正及び負の極大値に対応
する点(X* , Y* )(図28の黒点)を求め、それら
に対してオフセットをつけた点(X* +OFFSET,
* )を点列の点Pi , Pi+1間に挿入する。このオフ
セットをつけた点(X* +OFFSET,Y* )は、図
27のP71,P72,P73である。この各点P71, 72
73を新たな通過点として折れ線経路を生成する。
【0075】このようにして、スタート地点Sからゴー
ル地点Gに到る障害物回避経路が生成される。この方法
によると、上記の第1の例に比べて繰り返し処理回数が
少なくなるため、より高速に目的の経路を生成すること
ができる。
【0076】図29は新たな通過点決定方法の第3の例
である。図に示すように、折れ線経路上の線分Pi
i+1 が障害物領域A81、A82を通過する部分に対応
する境界点列Q4,Q5,Q6、Q7上の各点の中で、
その区間方向の座標が衝突する方向(図のx方向)の極
大点が、線分路に対して同方向に複数ある場合、それぞ
れの極大点列について進行方向に対してもっとも始点に
近い1点を選択し、その点に対して境界から適当なオフ
セットをつけ、その点を新たな通過点として追加する。
この処理を折れ線経路上で障害物領域を通過する部分が
なくなるまで繰り返すことで、折れ線経路が生成され
る。
【0077】図29を用いて順に説明する。 (1)各y座標に対する折れ線(線分)Pi i+1 上の
点のx座標をX、そのy座標に対する走行可能領域B8
の区間を(Xmin,Xmax)とするとき、X≦Xmin となる
場合に対する点(y, Xmin)と、Xmax ≦Xとなる場合
に対する点(y,-Xmax)を順に求め、図30に示すグラ
フを作成する。図30において、点列Q44は図29の
境界点列Q4に対応する。同様に、点列Q55は境界点
列Q5に、点列Q66は境界点列Q6に、点列Q77は
境界点列Q7にそれぞれ対応する。
【0078】(2)(1)で求めた図30の点列Q4
4、Q55、Q66及びQ77に対して正及び負の極大
値に対応する点(X* , Y* )を求め、それらの点を符
号が同じで連続する点の組に分類し、それぞれの組の中
で最もy座標の小さいもの(図30の黒点)に対してオ
フセットをつけた点(X* +OFFSET,Y* )を点
列の点Pi , Pi+1 間に挿入する。このオフセットをつ
けた点(X* +OFFSET,Y* )は、図29の
81,P82である。この各点P81, 82を新たな通過点
として折れ線経路を生成する。
【0079】このようにして、スタート地点Sからゴー
ル地点Gに到る障害物回避経路が生成される。この方法
によると、上記の第2の例に比べてより頂点の数の少な
い障害物回避経路を生成することができる。
【0080】図31は新たな通過点決定方法の第4の例
である。この図で用いる地形図は図29と同一であるた
め、同一の符号を付して説明する。図に示すように、折
れ線経路上の線分Pi i+1 が障害物領域A81、A8
2を通過する部分に対応する境界点列Q4,Q5,Q
6、Q7上の各点の中で、その区間方向の座標が衝突す
る方向(図のx方向)の極大点が、線分Pi i+1 に対
して同方向に1点のみ存在する場合はその点に対して、
2点以上存在する場合にはその極大点列の両端の2点に
対して境界から適当なオフセットをつけ、その各点を新
たな通過点として追加する。この処理を折れ線経路上で
障害物領域を通過する部分がなくなるまで繰り返すこと
で、折れ線経路が生成される。
【0081】図31を用いて順に説明する。 (1)各y座標に対する折れ線(線分)Pi i+1 上の
点のx座標をX、そのy座標に対する走行可能領域B8
の区間を(Xmin,Xmax)とするとき、X≦Xmin となる
場合に対する点(y, Xmin)と、Xmax ≦Xとなる場合
に対する点(y,-Xmax)を順に求め、図32に示すグラ
フを作成する。図32において、点列Q44は図31の
境界点列Q4に対応する。同様に、点列Q55は境界点
列Q5に、点列Q66は境界点列Q6に、点列Q77は
境界点列Q7にそれぞれ対応する。
【0082】(2)(1)で求めた図32の点列Q4
4、Q55、Q66及びQ77に対して正及び負の極大
値に対応する点(X* , Y* )を求め、それらの点を符
号が同じで連続する点の組に分類し、それぞれの組の中
で極大値に対応する点が1点の場合にはその1点(図3
2の点列Q77の黒点)を、2点以上ある場合には、最
もy座標の小さいものと最もy座標の大きいものの2点
(図32の点列Q44とQ66の黒点)に対してオフセ
ットをつけた点(X* +OFFSET,Y* )を点
i 、Pi+1 間に挿入する。このオフセットをつけた点
(X* +OFFSET,Y* )は、図31のP81
83,P82である。この各点P81, 83,P82を新たな
通過点として折れ線経路を生成する。
【0083】このようにして、スタート地点Sからゴー
ル地点Gに到る障害物回避経路が生成される。この方法
によると、上記の第3の例に比べてより少ない繰り返し
回数で頂点の数の少ない折れ線経路を生成することがで
きる。
【0084】図33は新たな通過点決定方法の第5の例
である。図に示すように、折れ線経路上の線分Pi
i+1 が障害物領域A81、A82を通過する部分に対応
する境界点列Q4,Q5,Q6、Q7上の各点の中で、
その区間方向の座標が衝突する方向(図のx方向)の極
大点を求め、その極大点のうち、線分路の始点Pi に最
も近い極大点に対して境界から適当なオフセットをつ
け、その点を新たな通過点として追加する。次に新たな
通過点と点Pi+1 を結ぶ線分路に対して同じ処理を行な
う。この処理を折れ線経路上で障害物領域を通過する部
分がなくなるまで繰り返すことで、折れ線経路が生成さ
れる。
【0085】図33を用いて順に説明する。 (1)各y座標に対する折れ線(線分)Pi i+1 上の
点のx座標をX、そのy座標に対する走行可能領域B8
の区間を(Xmin,Xmax)とするとき、最初にX≦Xmin
または、Xmax ≦Xとなる点を発見する。
【0086】(2)(1)で発見した点が、X≦Xmin
である場合には最初にXmin の値が減少する直前の点
を、またXmax ≦Xである場合には最初にXmin の値が
増加する直前の点に対してオフセットをつけた点を点列
の点Pi , Pi+1 間に挿入する。このオフセットをつけ
た点は、図33のP81である。この点P81を新たな通過
点とする。
【0087】(3)追加点(新たな通過点)P81を始
点、点Pi+1 を終点とする線分経路に対して上記
(1)、(2)の処理を繰り返す。追加点が存在しなく
なった場合には、線分Pi+1 i+2 に対して(1)から
の処理を繰り返す。
【0088】このようにして、スタート地点Sからゴー
ル地点Gに到る障害物回避経路が生成される。この方法
によると、繰り返し回数は増えるが、障害物領域B8を
通過する部分に対応する領域の境界点列Q4〜Q7をす
べて抽出する必要がなく、追加点の決定を高速に行うこ
とができる。また、点の追加による折れ線経路の変化に
応じて追加点が決定されるため、不要な頂点の発生を回
避することができる。
【0089】図34は新たな通過点決定方法の第6の例
である。この図で用いる地形図は図27と同一であるた
め、同一の符号を付して説明する。図に示すように、折
れ線経路上の線分Pi i+1 が障害物領域A71、A7
2を通過する部分に対応する境界点列Q1,Q2,Q3
上の各点の中で、線分Pi i+1 からの距離が極大とな
る各点に対して適当なオフセットをつけ、その各点を新
たな通過点として追加する。この処理を折れ線経路上で
障害物領域を通過する部分がなくなるまで繰り返すこと
で、頂点数の少ない折れ線経路が生成される。
【0090】図34を用いて順に説明する。 (1)Pi i+1 ベクトルの成分を(a,b)とし、各
y座標に対するPi i+1 上の点のx座標をX、そのy
座標に対する走行可能領域B7の区間を(Xmin,Xmax)
とする。X≦Xmin となる場合には、点Pi から点A
(y,Xmin)へ向かうベクトルの成分(c,d)を求
め、これに対してV=b・c−a・dを計算する。ま
た、Xmax ≦Xとなる場合には、点Pi から点(y,X
max)へ向かうベクトルの成分(c,d)を求め、これに
対してV=b・c−a・dを計算する。そのときのyに
対するVをプロットして図35のグラフを作成する。こ
のVは、その絶対値が三角形APi i+1 の面積の2倍
に相当し、この場合には、底辺P i i+1 が一定である
ことから、線分Pi i+1 と頂点Aとの距離の評価に直
接利用できる量である。
【0091】(2)(1)で求めた図35の点列Q10
1、Q202及びQ303に対して正及び負の極大値に
対応する点(X* , Y* )(図35の黒点)を求め、そ
れらに対してオフセットをつけた点(X* +OFFSE
T,Y* )を点列の点Pi ,Pi+1 間に挿入する。この
オフセットをつけた点(X* +OFFSET,Y*
は、図34のP91,P92,P93である。この各点P91,
92,P93を新たな通過点として折れ線経路を生成す
る。
【0092】このようにして、スタート地点Sからゴー
ル地点Gに到る障害物回避経路が生成される。上記の第
2の例に比べて計算量が若干増えるが、線分の方向によ
る影響が緩和されるため、第2の例よりも不要な頂点の
発生を抑制することができる。
【0093】図36は新たな通過点決定方法の第7の例
である。この図で用いる地形図は図29と同一であるた
め、同一の符号を付して説明する。図に示すように、折
れ線経路上の線分Pi i+1 が障害物領域A81、A8
2を通過する部分に対応する境界点列Q4,Q5,Q
6、Q7上の各点の中で、線分Pi i+1 からの距離が
極大となる点が複数ある場合に、それぞれの極大点列に
ついて進行方向に対してもっとも始点に近い1点を選択
し、その点に対して境界から適当なオフセットをつけ、
その点を新たな通過点として追加する。この処理を折れ
線経路上で障害物領域を通過する部分がなくなるまで繰
り返すことで、折れ線経路が生成される。
【0094】図36を用いて順に説明する。 (1)Pi i+1 ベクトルの成分を(a,b)とし、各
y座標に対するPi i+1 上の点のx座標をX、そのy
座標に対する走行可能領域B7の区間を(Xmin,Xmax)
とする。X≦Xmin となる場合には、点Pi から点A
(y,Xmin)へ向かうベクトルの成分(c,d)を求
め、これに対してV=b・c−a・dを計算する。ま
た、Xmax ≦Xとなる場合には、点Pi から点(y,X
max)へ向かうベクトルの成分(c,d)を求め、これに
対してV=b・c−a・dを計算する。そのときのyに
対するVをプロットして図37のグラフを作成する。こ
のVは、その絶対値が三角形APi i+1 の面積の2倍
に相当し、この場合には、底辺P i i+1 が一定である
ことから、線分Pi i+1 と頂点Aとの距離の評価に直
接利用できる量である。
【0095】(2)(1)で求めた図37の点列Q40
4、Q505、Q606及びQ707に対して正及び負
の極大値に対応する点(X* , Y* )を求め、それらの
点を符号が同じで連続する点の組に分類し、それぞれの
組の中で最もy座標の小さいもの(図37の黒点)に対
してオフセットをつけた点(X* +OFFSET,
* )を点列の点Pi , Pi+1 間に挿入する。このオフ
セットをつけた点(X* +OFFSET,Y* )は、図
36のP91,P92である。この各点P91, 92を新たな
通過点として折れ線経路を生成する。
【0096】このようにして、スタート地点Sからゴー
ル地点Gに到る障害物回避経路が生成される。上記の第
3の例に比べて計算量が若干増えるが、線分の方向によ
る影響が緩和されるため、第3の例よりも不要な頂点の
発生を抑制することができる。
【0097】図38は新たな通過点決定方法の第8の例
である。この図で用いる地形図も図29と同一であるた
め、同一の符号を付して説明する。図に示すように、折
れ線経路上の線分Pi i+1 が障害物領域A81、A8
2を通過する部分に対応する境界点列Q4,Q5,Q
6、Q7上の各点の中で、線分Pi i+1 からの距離が
極大となる極大点が、線分Pi i+1 に対して同方向に
1点のみ存在する場合はその点に対して、また連続して
2点以上存在する場合にはその極大点列の両端の2点に
対して境界から適当なオフセットをつけ、その各点を新
たな通過点として追加する。この処理を折れ線経路上で
障害物領域を通過する部分がなくなるまで繰り返すこと
で、折れ線経路が生成される。
【0098】図38を用いて順に説明する。 (1)Pi i+1 ベクトルの成分を(a,b)とし、各
y座標に対するPi i+1 上の点のx座標をX、そのy
座標に対する走行可能領域B7の区間を(Xmin,Xmax)
とする。X≦Xmin となる場合には、点Pi から点A
(y,Xmin)へ向かうベクトルの成分(c,d)を求
め、これに対してV=b・c−a・dを計算する。ま
た、Xmax ≦Xとなる場合には、点Pi から点(y,X
max)へ向かうベクトルの成分(c,d)を求め、これに
対してV=b・c−a・dを計算する。そのときのyに
対するVをプロットして図39のグラフを作成する。
【0099】(2)(1)で求めた図39の点列Q40
4、Q505、Q606及びQ707に対して正及び負
の極大値に対応する点(X* , Y* )を求め、それらの
点を符号が同じで連続する点の組に分類し、それぞれの
組の中で極大値に対応する点が1点の場合にはその1点
(図39の点列Q707の黒点)に対して、2点以上あ
る場合には最もy座標の小さいのものと最もy座標の大
きいものの2点(図39の点列Q404とQ606の黒
点)に対してオフセットをつけた点(X* +OFFSE
T,Y* ) を点列の点Pi ,Pi+1 間に挿入する。この
オフセットをつけた点(X* +OFFSET,Y* )
は、図38のP101 ,P102 ,P103 である。この各点
101 ,P102 ,P103 を新たな通過点として折れ線経
路を生成する。
【0100】このようにして、スタート地点Sからゴー
ル地点Gに到る障害物回避経路が生成される。上記の第
4の例に比べて計算量が若干増えるが、線分の方向によ
る影響が緩和されるため、第4の例よりも不要な頂点の
発生を抑制することができる。
【0101】図40は新たな通過点決定方法の第9の例
である。この図で用いる地形図も図29と同一であるた
め、同一の符号を付して説明する。図に示すように、折
れ線経路上の線分Pi i+1 が障害物領域A81、A8
2を通過する部分に対応する境界点列Q4,Q5,Q
6、Q7上の各点から、線分Pi i+1 からの距離が極
大となる極大点を求め、その極大点の中で線分Pi
i+1 の始点Pi に最も近い点に対して境界から適当なオ
フセットをつけ、その点を新たな通過点として追加す
る。次にその新たな通過点と点Pi+1 を結ぶ線分路に対
して同じ処理を行なう。この処理を折れ線経路上で障害
物領域を通過する部分がなくなるまで繰り返すことで、
折れ線経路が生成される。
【0102】図40を用いて順に説明する。 (1)Pi i+1 ベクトルの成分を(a,b)とし、各
y座標に対するPi i+1 上の点のx座標をX、そのy
座標に対する走行可能領域B7の区間を(Xmin,Xmax)
とする。X≦Xmin となる場合には、点Pi から点A
(y,Xmin)へ向かうベクトルの成分(c,d)を求
め、これに対してV=b・c−a・dを計算する。ま
た、Xmax ≦Xとなる場合には、点Pi から点(y,X
max)へ向かうベクトルの成分(c,d)を求め、これに
対してV=b・c−a・dを計算する。そのときのyに
対するVをプロットしてグラフを作成する。
【0103】(2)(1)で発見した点が、X≦Xmin
である場合には最初にXmin の値が減少する直前の点
を、またXmax ≦Xである場合には最初にXmin の値が
増加する直前の点に対してオフセットをつけた点を点列
の点Pi , Pi+1 間に挿入する。このオフセットをつけ
た点は、図40のP111 である。この点P111 を新たな
通過点とする。
【0104】(3)追加点(新たな通過点)P111 を始
点、点Pi+1 を終点とする線分経路に対して上記
(1)、(2)の処理を繰り返す。追加点が存在しなく
なった場合には、線分Pi+1 i+2 に対して(1)から
の処理を繰り返す。以上の処理をスタート点からゴール
地点Gに到るまで順次行なう。さらに、スタート地点S
からゴール地点Gに到るまでの一連の処理を、すべての
線分が障害物領域A81、A82を通過しなくなるまで
繰り返す。
【0105】このようにして、スタート地点Sからゴー
ル地点Gに到る障害物回避経路が生成される。上記の第
5の例に比べて計算量が若干増えるが、線分の方向によ
る影響が緩和されるため、第5の例よりも不要な頂点の
発生を抑制することができる。
【0106】図41は新たな通過点決定方法の第10の
例である。この図で用いる地形図は図26と同一である
ため、同一の符号を付して説明する。図に示すように、
折れ線経路上の線分Pi i+1 が障害物領域A6を通過
する部分に対応する境界点列上の点Qj (j=0,1,
・・・,n)のうちで、角Pi+1 j i が最大である
点に対して境界から適当なオフセットをつけた点P121
を点列のPi , Pi+1間に挿入し、次にその新たに追加
した点P121 と点Pi+1 を結ぶ線分経路P121i+1
対して同じ処理を行なう。この処理をスタート地点Sか
らゴール地点Gに到るまで順次行なう。さらに、スター
ト地点Sからゴール地点Gに到るまでの一連の処理を、
すべての線分が領域外を通過しなくなるまで繰り返すこ
とで、頂点数の少ない折れ線経路を生成することができ
る。角度の計算に若干の時間を要するが、繰り返し回数
を抑制することができる。
【0107】図42は曲がり角の小さい折れ線経路の生
成方法の説明図である。図に示す走行可能領域B10の
頂点Pi に対して、その頂点Pi と隣接する2頂点P
i-1 、Pi+1 を結ぶ線分経路Pi-1 i+1 が障害物領域
A10、A11を通過しない場合には頂点Pi を削除
し、障害物領域A10、A11(図ではA10)を通過
する場合には、障害物領域A10、A11に存在する部
分に対応する境界点列上の点(図の点Qi ) における境
界点列の接線LO と平行で、その接点から適当なオフセ
ットをもつ点Ui を通る直線Li と線分経路P
i-1 i 、Pi i+1 との交点(図の点Ri,i ) で頂
点Pi を置き換える処理を行なう。そして、頂点Pi
削除した場合には、頂点Pi+1 とそれに隣接する2点
(頂点)Pi-1 、Pi+2に対して、また、頂点Pi を図
のように置き換えた場合には、頂点Pi+1 とそれに隣接
する2点(頂点)Si 、Pi+2 に対して同様の処理を行
なう。この処理をスタート地点Sからゴール地点Gに到
るまで順次行なう。
【0108】この方法によって、頂点における曲がり角
の小さい折れ線経路を効率よく生成することができる。
具体的な実施方法としては、点Qi を境界点列上の中央
の点とし、その点で接する直線の傾きを、境界上で点Q
i に隣接する2点を通る直線の傾きで近似すればよい。
【0109】点Qi の位置が未定で接線の傾きが指定さ
れている場合には、図43に示すように境界点列上の点
の中で、点Pi-1 を通る指定された傾きを持つ直線Mか
らの距離が最大となる点をQi として定める方法もあ
る。またオフセットについては、点Qi を通りx軸に平
行な直線と線分Pi-1 i またはPi i+1 との交点T
i のx座標と点Qi のx座標の差の絶対値の1割程度と
小さめに設定することで、より曲がり角の小さい折れ線
経路を生成することができる。
【0110】図44は曲がり角の小さい折れ線経路の生
成方法の第2の例である。図に示す走行可能領域B10
の頂点Pi に対して、その頂点Pi と隣接する2頂点P
i-1、Pi+1 を結ぶ線分経路Pi-1 i+1 が障害物領域
A10、A11を通過しない場合には頂点Pi を削除
し、障害物領域A10、A11(図ではA10)を通過
する場合には、障害物領域A10、A11に存在する部
分に対応する領域の境界点列上の点で、線分経路Pi-1
i+1 からの距離が最大となる点(図のQi ) から適当
なオフセットをもつ点Ui を通過し線分経路Pi-1
i+1 に平行な直線と線分経路Pi-1 i 、Pi i+1
の交点(図の点Ri,i ) で頂点Pi を置き換える処理
を行なう。そして、頂点Pi を削除した場合には、頂点
i+1 とそれに隣接する2点(頂点)Pi-1 、Pi+2
対して、また、頂点Pi を図のように置き換えた場合に
は、頂点Pi+1 とそれに隣接する2点(頂点)Si 、P
i+2 に対して同様の処理を行なう。この処理をスタート
地点Sからゴール地点Gに到るまで順次行なう。
【0111】この方法によって、上記第1の例と同様
に、頂点における曲がり角の小さい折れ線経路を効率よ
く生成することができる。実施においては、オフセット
を、点Qi を通りx軸に平行な直線と線分Pi-1 i
たはPi i+1 との交点Ti のx座標と点Qi のx座標
の差の絶対値の1割程度と小さめに設定することで、よ
り曲がり角の小さい折れ線経路を効率よく生成すること
が可能になる。
【0112】図45は曲がり角の小さい折れ線経路の生
成方法の第3の例である。図に示す走行可能領域B10
の頂点Pi に対して、その頂点Pi と隣接する2頂点P
i-1、Pi+1 を結ぶ線分経路Pi-1 i+1 が障害物領域
A10、A11を通過しない場合には頂点Pi を削除
し、障害物領域A10、A11(図ではA10)を通過
する場合には、障害物領域A10、A11に存在する部
分に対応する領域の境界点列に対する頂点Pi-1 、P
i+1 からの接線L1 、L2 の交点Ni から適当なオフセ
ットをもつ点Ui で頂点Pi を置き換える処理を行な
う。そして、頂点Piを削除した場合には、頂点Pi+1
とそれに隣接する2点(頂点)Pi-1 、Pi+2に対し
て、また、頂点Pi を図のように置き換えた場合には、
頂点Pi+1 とそれに隣接する2点(頂点)Ui 、Pi+2
に対して同様の処理を行なう。この処理をスタート地点
Sからゴール地点Gに到るまで順次行なう。
【0113】この方法によって、頂点の数を増やすこと
なく、頂点における曲がり角の小さい線経路を効率よく
生成することが可能となる。具体的な実施方法として
は、境界点列上の点をAi-1 とし、境界点列に対する頂
点Pi-1 からの接線L1 を、先ず線分Pi-1 i-1 と線
分Pi-1 i+1 のなす角Ai-1 i-1 i+1 が最大とな
る点Di-1 を求め、次に頂点Pi-1 と点Di-1とを結ぶ
ことで求める。同様に、境界点列上の点をAi+1 とし、
境界点列に対する頂点Pi+1 からの接線L2 を、先ず線
分Pi+1 i+1 と線分Pi-1 i+1 のなす角Ai+1
i+1 i-1 が最大となる点Di+1 を求め、次に頂点P
i+1 と点Di+ 1 とを結ぶことで求める。
【0114】また、オフセットについては、点Ui を通
りx軸に平行な直線と線分Pi-1 i またはPi i+1
との交点Ti のx座標と点Ui のx座標の差の絶対値の
1割程度と小さめに設定することで、より曲がり角の小
さい折れ線経路を効率よく生成することが可能になる。
【0115】図46は上記の第2の例と第3の例とのい
ずれを選択するかの判別基準説明図である。図の走行可
能領域B10の頂点Pi に対して、 (1)頂点Pi に対して、その頂点と隣接する2点(頂
点)Pi-1 、Pi+1 を結ぶ線分経路Pi-1 i+1 が障害
物領域A10、A11を通過しない場合には、頂点Pi
を削除する。
【0116】(2)障害物領域A10、A11(図では
A10)を通過する場合には、障害物領域A10、A1
1に存在する部分に対応する境界点列に対する頂点P
i-1 、Pi+1 からの接線の交点Ni と線分経路Pi-1
i+1 との距離LN と、境界点列上の点で線分経路Pi-1
i+1 からの距離が最大となる点Qi と線分経路Pi-1
i+1 との距離LT 、頂点Pi と線分経路Pi-1 i+1
との距離LP 、及び角P i-1 i i+1 を評価しそれに
応じて以下の2種類の処理を選択実行する。
【0117】(2.1)頂点Pi を点Ni から適当なオ
フセットをもつ点Ui で置き換える。すなわち、上記の
第3の例を選択実行する。 (2.2)頂点Pi を点Qi から適当なオフセットをも
つ点を通過し線分経路Pi-1 i+1 に平行な直線Li
線分経路Pi-1 i 、Pi i+1 との交点Ri、Si
置き換える。すなわち、上記の第2の例を選択実行す
る。
【0118】第2の例か第3の例かのいずれかを選択す
るかは、例えば、(LP −LN )と(LN −LT )との
大小関係で判別すればよい。すなわち、LP −LN >L
N −LT が成立する場合には第3の例を、それ以外の場
合には第2の例を実行する。
【0119】図47は曲がり角の小さい折れ線経路の生
成方法の第4の例である。図に示す走行可能領域B10
の頂点Pi に対して、その頂点Pi と隣接する2頂点P
i-1、Pi+1 を結ぶ線分経路Pi-1 i+1 が障害物領域
A10、A11を通過しない場合には頂点Pi を削除
し、障害物領域A10、A11(図ではA10)を通過
する場合には、点Pi における経路の曲がり角αを評価
し、それが指定値よりも大きい場合にのみ、障害物領域
A10、A11に存在する部分に対応する境界点列上の
点(例えば図の点Qi )における境界点列の接線と平行
で、その接点から適当なオフセットをもつ点Ui を通る
直線と線分経路Pi-1 i 、Pi i+1 との交点(図の
i , Si )で頂点Pi を置き換える処理を行なう。頂
点Pi を削除した場合には、頂点Pi+1 とそれに隣接す
る2点(頂点)Pi-1 、Pi+2 に対して、また、頂点P
i を図のように置き換えた場合には、頂点Pi+1 とそれ
に隣接する2点(頂点)Si 、Pi+2 に対して同様の処
理を行なう。
【0120】この方法によって、頂点における曲がり角
がすべて指定された値以下となるような折れ線経路を効
率よく生成することが可能になる。上記の境界点列上の
点Qi とそのオフセット点Ui の具体的な決め方として
は、上述した第2の例に従えばよい。
【0121】図48及び図49は曲がり角の小さい折れ
線経路の生成方法の第5の例である。図48に示すよう
に、スタート地点Sとゴール地点G間の走行可能領域B
100が区間列として与えられている状況において、障
害物領域A100の境界点列上の点Q0 、障害物領域A
110の境界点列上の点Q1 、Q2 に対して先ずオフセ
ットを区間幅内でできるだけ大きく設定し、新たな通過
点P0 、P1 、P2 を決め、折れ線SP0 、P0 1
1 2 、P2 Gを生成する。この処理は、例えば図2
5に示した方法で実行することができる。
【0122】次に、例えば図45に示した方法に従っ
て、図49に示すように、障害物領域A100の境界点
列上の点R0 、障害物領域A110の境界点列上の点R
1 、R 2 に対してオフセットを領域境界に接近可能な最
小値に設定し、頂点の削除及び曲がり角の緩和を行な
い、折れ線SP210 、P210 211 、P211 11、P11
12の最終折れ線経路を生成する。
【0123】この方法によれば、走行可能領域B100
内に頂点の数が少なく、かつ頂点における曲がり角の小
さい折れ線経路を効率よく自動生成することができる。
【0124】
【発明の効果】以上説明したように本発明では、地形図
に対して生成したポテンシャル場を用いて走行可能領域
を再定義するようにしたので、障害物領域との境界の伸
長とスムージングを効率良く行うことができる。
【0125】また、走行可能領域を基準方向の各座標に
一対一対応する他方向の区間の集合で表現される部分領
域に分割し、その部分領域をノード、それらの部分領域
間の連結関係をアークとするグラフ構造として表現する
ようにした。したがって、少ないノード数のグラフ構造
で表現され、かつ走行可能領域の境界座標の情報が各ノ
ードに重複することなく保持されるため、グラフ探索に
よる障害物回避経路の生成を効率よく行えるようにな
る。
【0126】さらに、その障害物回避経路は、スタート
地点、通過点及びゴール地点を結ぶ折れ線経路の経路長
を距離予測値として、それが最小となるように生成す
る。したがって、経路長の短かい経路の探索において参
照するノードについてのみ参照時にコスト計算を行えば
よく、効率良くグラフ探索を行うことができる。
【0127】また、その折れ線経路の衝突チェックをグ
ラフ構造の区間情報を用いて行い、折れ線経路上で障害
物と衝突する部分に対応する障害物の境界点列またはそ
れに適当なオフセットを付けた点列を折れ線の頂点列に
追加する。したがって、障害物回避経路を高速に生成す
ることができる。
【0128】さらに、折れ線経路をグラフ構造の区間情
報を用いて走行可能領域内に生成するようにしたので、
頂点数が少なく、頂点での曲がり角も小さい障害物回避
経路を生成することができる。
【図面の簡単な説明】
【図1】本発明の原理を説明するブロック図である。
【図2】地形データについての説明図である。
【図3】障害物領域と走行可能領域の2値で表現された
グリッド形式の地図の例である。
【図4】ポテンシャル関数Pの説明図である。
【図5】ポテンシャルPを用いた場合の障害物領域を示
す図である。
【図6】従来方法による障害物領域を示す図である。
【図7】リストのデータ構造を示す図である。
【図8】ダミー地形図である。
【図9】ポテンシャル値設定範囲を制限する場合の説明
図である。
【図10】ポテンシャル関数に調和関数を利用した場合
の説明図である。
【図11】ダミー地形図である。
【図12】走行可能領域の表現方法の説明図である。
【図13】走行可能領域の区間の説明図である。
【図14】グラフ構造を示す図である。
【図15】ノードのデータ構造を示す図である。
【図16】グラフ構造作成処理の説明図である。
【図17】グラフ構造作成処理例を示す図である。
【図18】経路生成手法の説明図である。
【図19】経路生成手法の説明図である。
【図20】経路生成の具体例を示す図である。
【図21】通過点決定方法の説明図である。
【図22】通過点決定方法の説明図である。
【図23】折れ線概略経路と障害物領域間での衝突回避
経路生成の説明図である。
【図24】衝突回避経路生成の説明図である。
【図25】衝突回避経路生成の第2の例を示す図であ
る。
【図26】新たな通過点の決定方法の説明図である。
【図27】新たな通過点の決定方法の第2の例を示す図
である。
【図28】極大値に対応する点を示す図である。
【図29】新たな通過点の決定方法の第3の例を示す図
である。
【図30】極大値に対応する点を示す図である。
【図31】新たな通過点の決定方法の第4の例を示す図
である。
【図32】極大値に対応する点を示す図である。
【図33】新たな通過点の決定方法の第5の例を示す図
である。
【図34】新たな通過点の決定方法の第6の例を示す図
である。
【図35】極大値に対応する点を示す図である。
【図36】新たな通過点の決定方法の第7の例を示す図
である。
【図37】極大値に対応する点を示す図である。
【図38】新たな通過点の決定方法の第8の例を示す図
である。
【図39】極大値に対応する点を示す図である。
【図40】新たな通過点の決定方法の第9の例を示す図
である。
【図41】新たな通過点決定方法の第10の例である。
【図42】曲がり角の小さい折れ線経路の生成方法の説
明図である。
【図43】境界点列上の点Qi を定める方法の説明図で
ある。
【図44】曲がり角の小さい折れ線経路の生成方法の第
2の例である。
【図45】曲がり角の小さい折れ線経路の生成方法の第
3の例である。
【図46】第2の例と第3の例とのいずれを選択するか
の判別基準説明図である。
【図47】曲がり角の小さい折れ線経路の生成方法の第
4の例である。
【図48】曲がり角の小さい折れ線経路の生成方法の第
5の例である。
【図49】曲がり角の小さい折れ線経路の生成方法の第
5の例である。
【図50】ルールベース法の説明図である。
【図51】ポテンシャル法の説明図である。
【図52】探索法の説明図である。
【符号の説明】
1 ロボット 2 自律走行制御装置 11 レーザレンジファインダ 12 駆動輪 21 地形図生成手段 22 経路生成手段 23 走行制御手段 A,ΔA1,ΔA2,A3,A4,A51,A52,A
6.A71,A72,A81,A82,A10,A1
1,A100,A110 障害物領域 B0 ,B1 ,B2 ,B4,B5,B6,B7,B8,B
10,B100 走行可能領域

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 移動ロボット(1)が自律的に障害物を
    回避し目的地まで走行するように最適な経路を生成する
    障害物回避経路生成方式において、 前記移動ロボット(1)に搭載されたカメラやレーザレ
    ンジファインダ(11)による距離計測の結果得られた
    地形データを用いて地形図を生成する地形図生成手段
    (21)と、 前記地形図に対して障害物領域が尾根、走行可能領域が
    谷となるようなポテンシャル場を生成しそのポテンシャ
    ル値が所定値以上となる領域を障害物領域、前記所定値
    以下となる領域を走行可能領域として再定義し前記走行
    可能領域に前記移動ロボットの経路を生成する経路生成
    手段(22)と、 を有することを特徴とする障害物回避経路生成方式。
  2. 【請求項2】 前記経路生成手段(22)は前記障害物
    からの距離に応じて単調にポテンシャル値が減少するポ
    テンシャル関数を用いて前記ポテンシャル場を生成する
    ことを特徴とする請求項1記載の障害物回避経路生成方
    式。
  3. 【請求項3】 前記経路生成手段(22)は障害物領域
    を発熱源、その他の領域を初期温度0の状態とみなした
    場合の定常状態での熱分布を調和関数を用いて求めるこ
    とにより前記ポテンシャル場を生成することを特徴とす
    る請求項1記載の障害物回避経路生成方式。
  4. 【請求項4】 前記経路生成手段(22)は前記走行可
    能領域が基準方向に関して分岐あるいは接続する点で分
    割することで前記走行可能領域全体を、前記基準方向の
    各座標に一対一対応する前記基準方向とは異なる他方向
    の区間の集合で表現される部分領域に分割し、前記部分
    領域をノード、前記部分領域間の連結関係をアークとす
    るグラフ構造として表現することを特徴とする請求項1
    記載の障害物回避経路生成方式。
  5. 【請求項5】 前記グラフ構造はグリッド形式の地形図
    に対して基準方向(y方向)の各座標値yi について前
    記基準方向とは異なる他方向(x方向)に前記地形図の
    各グリッドを走査し、yi おける走行可能領域の区間の
    集合{q0, 1, ..,n }とyi-1 における走行可能領
    域の区間の集合{q0,1, ..,m }の要素(区間)間
    の接続関係(重なり)を調査し、yi における区間集合
    の要素qi で、yi-1 における区間集合の要素と一対一
    対応するものに対してはその対応する要素pj が登録さ
    れているノードに登録し、一対一対応しない要素につい
    てはそのそれぞれに対して新たにノードを生成しその要
    素を登録する処理を順次行うことにより作成されること
    を特徴とする請求項4記載の障害物回避経路生成方式。
  6. 【請求項6】 前記経路生成手段(22)はスタート地
    点からゴール地点に至る経路の途中通過領域列及び通過
    点列を、前記スタート地点とそれまでに選定した通過点
    及び前記ゴール地点を結ぶ折れ線経路の経路長の距離コ
    ストが最小となるように前記グラフ構造を探索して決定
    することを特徴とする請求項4記載の障害物回避経路生
    成方式。
  7. 【請求項7】 前記経路生成手段(22)は前記通過点
    を結ぶ折れ線経路と前記障害物領域との衝突チェックを
    前記グラフ構造のノードの区間情報を用いて行い、前記
    折れ線経路上で前記障害物領域と衝突する部分に対応す
    る境界点列またはそれに適度のオフセットをつけた点列
    を折れ線の頂点列に追加することで前記障害物領域と衝
    突しない折れ線経路を生成することを特徴とする請求項
    6記載の障害物回避経路生成方式。
  8. 【請求項8】 前記経路生成手段(22)はスタート地
    点−ゴール地点間の通過領域(走行可能領域)が区間列
    として与えられている状況において頂点Piから次頂点
    i+1 へ向かう線分経路Pi i+1 上の前記通過領域外
    (障害物領域)に存在する部分を区間情報から判定し、
    前記通過領域外に存在する部分に対応する領域境界点列
    から1点を選択し、その1点に対して前記通過領域内方
    向に適当なオフセットをつけた点を前記頂点のPi ,P
    i+1 に追加する手続きをゴール地点に到るまで順次行な
    い、前記スタート地点−ゴール地点間の折れ線経路上で
    前記通過領域外を通過する部分がなくなるまで繰り返す
    ことにより折れ線経路を生成することを特徴をする請求
    項7記載の障害物回避経路生成方式。
  9. 【請求項9】 前記経路生成手段(22)は生成した折
    れ線経路の各頂点P i に対して、その頂点Pi と隣接す
    る2頂点Pi-1 、Pi+1 を結ぶ線分経路Pi- 1 i+1
    前記通過領域外を通過しない場合には前記頂点Pi を削
    除し、前記通過領域内を通過する場合には前記通過領域
    外に存在する部分に対応する領域の境界点列上の点にお
    ける境界点列の接線と平行かつその接点から適当なオフ
    セットをもつ直線と線分経路Pi-1 i 、Pi i+1
    の交点で頂点Pi を置き換える処理を行うことを特徴と
    する請求項7記載の障害物回避経路生成方式。
  10. 【請求項10】 前記経路生成手段(22)は生成した
    折れ線経路の各頂点Pi に対して、その頂点Pi と隣接
    する2頂点Pi-1 、Pi+1 を結ぶ線分経路P i-1 i+1
    が前記通過領域外を通過しない場合には前記頂点Pi
    削除し、前記通過領域外を通過する場合には前記通過領
    域外に存在する部分に対応する領域の境界点列に対する
    前記頂点Pi-1 、Pi+1 からの接線の交点から適当なオ
    フセットをもつ点で前記頂点Pi を置き換える処理を行
    うことを特徴とする請求項7記載の障害物回避経路生成
    方式。
  11. 【請求項11】 前記経路生成手段(22)は生成した
    折れ線経路の各頂点Pi に対して、その頂点Pi と隣接
    する2頂点Pi-1 、Pi+1 を結ぶ線分経路P i-1 i+1
    が前記通過領域外を通過しない場合には前記頂点Pi
    削除し、前記通過領域外を通過する場合には前記通過領
    域外に存在する部分に対応する領域の境界点列に対する
    頂点Pi-1 、Pi+1 からの接線の交点Nと線分経路P
    i-1 i+ 1 との距離LN 、前記通過領域外に存在する部
    分に対応する領域の境界点列上の点の中で前記線分経路
    i-1 i+1 からの距離が最大となる点Qと前記線分経
    路Pi-1 i+1 との距離LT 、前記頂点Pi と前記線分
    経路Pi-1 i+1 との距離LP 、及び角Pi-1 NPi+1
    を評価し、それに応じて頂点Pi を点Nから適当なオフ
    セットをもつ点で置き換える処理と、頂点Pi を点Qか
    ら適当なオフセットをもつ点を通過し線分経路Pi-1
    i+1 に平行な直線と線分経路Pi-1 i 、P i i+1
    の交点で置き換える処理とを選択実行するようにしたこ
    とを特徴とする請求項7記載の障害物回避経路生成方
    式。
  12. 【請求項12】 前記経路生成手段(22)は生成した
    折れ線経路の各頂点Pi に対して、その頂点Pi と隣接
    する2頂点Pi-1 、Pi+1 を結ぶ線分経路P i-1 i+1
    が前記通過領域外を通過しない場合には前記頂点Pi
    削除し、前記通過領域外を通過する場合でかつ頂点Pi
    における曲がり角が指定された値よりも大きい場合(角
    i-1 i i+1 が指定された値より小さい場合)にの
    み前記通過領域外に存在する部分に対応する領域の境界
    点列上の点における境界点列の接線と平行かつその接点
    から適当なオフセットをもつ直線と線分経路P
    i-1 i、Pi i+1 との交点で頂点Pi を置き換える
    処理を行うことを特徴とする請求項7記載の障害物回避
    経路生成方式。
  13. 【請求項13】 前記経路生成手段(22)はスタート
    地点−ゴール地点間の通過領域(走行可能領域)が区間
    列として与えられている状況において先ず前記オフセッ
    トを区間幅内でできるだけ大きく設定して折れ線経路を
    生成し、次にその折れ線経路に対して前記オフセットを
    領域境界に接近可能な最小値に設定して再度前記折れ線
    の生成を行うことを特徴とする請求項7記載の障害物回
    避経路生成方式。
JP5273807A 1993-11-01 1993-11-01 障害物回避経路生成方式 Withdrawn JPH07129238A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5273807A JPH07129238A (ja) 1993-11-01 1993-11-01 障害物回避経路生成方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5273807A JPH07129238A (ja) 1993-11-01 1993-11-01 障害物回避経路生成方式

Publications (1)

Publication Number Publication Date
JPH07129238A true JPH07129238A (ja) 1995-05-19

Family

ID=17532846

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5273807A Withdrawn JPH07129238A (ja) 1993-11-01 1993-11-01 障害物回避経路生成方式

Country Status (1)

Country Link
JP (1) JPH07129238A (ja)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11242520A (ja) * 1997-12-08 1999-09-07 Caterpillar Inc 障害物検出応答式代替通路決定方法及びその装置
JP2000076581A (ja) * 1998-09-01 2000-03-14 Toyota Motor Corp 経路決定方法及び移動体交通制御システム
JP2006504192A (ja) * 2002-10-23 2006-02-02 シーメンス アクチエンゲゼルシヤフト 自由面および占有面を有する面を記述するグラフ構造を形成するための方法および装置ならびにプログラムコード手段を有するコンピュータプログラムおよびコンピュータプログラム製品
JP2007122304A (ja) * 2005-10-27 2007-05-17 Hitachi Ltd 移動ロボット
JP2007249631A (ja) * 2006-03-16 2007-09-27 Fujitsu Ltd 折線追従移動ロボットおよび折線追従移動ロボットの制御方法
JP2007310866A (ja) * 2006-05-16 2007-11-29 Samsung Electronics Co Ltd 絶対方位角を利用したロボット及びこれを利用したマップ作成方法
JP2009217330A (ja) * 2008-03-07 2009-09-24 Toyota Motor Corp 移動ロボットシステム及びその制御方法
WO2010026710A1 (ja) 2008-09-03 2010-03-11 村田機械株式会社 経路計画方法、経路計画装置、及び自律移動装置
JP2010066932A (ja) * 2008-09-09 2010-03-25 Murata Machinery Ltd 経路計画装置及び自律移動装置
WO2010032381A1 (ja) 2008-09-16 2010-03-25 村田機械株式会社 環境地図修正装置及び自律移動装置
WO2010038353A1 (ja) 2008-10-01 2010-04-08 村田機械株式会社 自律移動装置
JP2017097402A (ja) * 2015-11-18 2017-06-01 株式会社明電舎 周辺地図作成方法、自己位置推定方法および自己位置推定装置
US10496093B2 (en) 2017-03-17 2019-12-03 Kabushiki Kaisha Toshiba Movement control system, movement control device, and computer-implemented program for movement control
EP3594623A1 (en) 2018-07-10 2020-01-15 Furuno Electric Company Limited Graph generating device
JP2020042726A (ja) * 2018-09-13 2020-03-19 株式会社東芝 Ogm圧縮回路、ogm圧縮伸長システム、および移動体システム
KR102115294B1 (ko) * 2020-02-28 2020-06-02 주식회사 파블로항공 무인항공기 충돌 회피 방법
CN111214179A (zh) * 2018-11-23 2020-06-02 北京奇虎科技有限公司 确定可清扫区域的方法、装置、电子设备及可读存储介质
CN111443733A (zh) * 2020-05-25 2020-07-24 深圳市道通智能航空技术有限公司 一种无人机飞行控制方法、装置及无人机
CN111507652A (zh) * 2019-01-30 2020-08-07 顺丰科技有限公司 任务路径确定方法及装置
CN111566581A (zh) * 2018-01-03 2020-08-21 高通股份有限公司 基于检测到的对象的分类的可调整的对象避开接近度门限
CN111708365A (zh) * 2020-06-24 2020-09-25 宝武集团环境资源科技有限公司 一种自动路径规划方法
CN114035572A (zh) * 2021-10-09 2022-02-11 中电海康慧联科技(杭州)有限公司 一种割草机器人的避障巡回方法及***
CN114442642A (zh) * 2022-04-02 2022-05-06 深圳市普渡科技有限公司 路径规划方法、装置、计算机设备和存储介质
CN115935714A (zh) * 2023-02-09 2023-04-07 大连海事大学 一种基于多边形等距离外扩的环境势场模型构建方法
KR20230056225A (ko) * 2021-10-20 2023-04-27 금오공과대학교 산학협력단 차동 구동형 이동로봇의 운동역학을 고려한 장애물 회피 및 경로 추종방법
CN117451057A (zh) * 2023-12-25 2024-01-26 长春理工大学 基于改进a*算法无人机三维路径规划方法、设备和介质

Cited By (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11242520A (ja) * 1997-12-08 1999-09-07 Caterpillar Inc 障害物検出応答式代替通路決定方法及びその装置
JP2000076581A (ja) * 1998-09-01 2000-03-14 Toyota Motor Corp 経路決定方法及び移動体交通制御システム
JP2006504192A (ja) * 2002-10-23 2006-02-02 シーメンス アクチエンゲゼルシヤフト 自由面および占有面を有する面を記述するグラフ構造を形成するための方法および装置ならびにプログラムコード手段を有するコンピュータプログラムおよびコンピュータプログラム製品
JP2007122304A (ja) * 2005-10-27 2007-05-17 Hitachi Ltd 移動ロボット
US8036775B2 (en) 2005-10-27 2011-10-11 Hitachi, Ltd. Obstacle avoidance system for a user guided mobile robot
JP2007249631A (ja) * 2006-03-16 2007-09-27 Fujitsu Ltd 折線追従移動ロボットおよび折線追従移動ロボットの制御方法
JP2007310866A (ja) * 2006-05-16 2007-11-29 Samsung Electronics Co Ltd 絶対方位角を利用したロボット及びこれを利用したマップ作成方法
JP2009217330A (ja) * 2008-03-07 2009-09-24 Toyota Motor Corp 移動ロボットシステム及びその制御方法
EP2821876A2 (en) 2008-09-03 2015-01-07 Murata Machinery, Ltd. Route planning method, route planning unit, and autonomous mobile device
EP2821875A2 (en) 2008-09-03 2015-01-07 Murata Machinery, Ltd. Route planning method, route planning unit, and autonomous mobile device
WO2010026710A1 (ja) 2008-09-03 2010-03-11 村田機械株式会社 経路計画方法、経路計画装置、及び自律移動装置
US8515612B2 (en) 2008-09-03 2013-08-20 Murata Machinery, Ltd. Route planning method, route planning device and autonomous mobile device
EP2821875A3 (en) * 2008-09-03 2015-05-20 Murata Machinery, Ltd. Route planning method, route planning unit, and autonomous mobile device
JP2010066932A (ja) * 2008-09-09 2010-03-25 Murata Machinery Ltd 経路計画装置及び自律移動装置
US8515613B2 (en) 2008-09-16 2013-08-20 Murata Machinery, Ltd. Environmental map correction device and autonomous mobile device
KR101228487B1 (ko) * 2008-09-16 2013-01-31 무라다기카이가부시끼가이샤 환경 지도 수정 장치 및 자율 이동 장치
WO2010032381A1 (ja) 2008-09-16 2010-03-25 村田機械株式会社 環境地図修正装置及び自律移動装置
EP3358434A1 (en) 2008-10-01 2018-08-08 Murata Machinery, Ltd. Autonomous mobile device
WO2010038353A1 (ja) 2008-10-01 2010-04-08 村田機械株式会社 自律移動装置
US8897917B2 (en) 2008-10-01 2014-11-25 Murata Machinery, Ltd. Autonomous mobile device
JP2017097402A (ja) * 2015-11-18 2017-06-01 株式会社明電舎 周辺地図作成方法、自己位置推定方法および自己位置推定装置
US10496093B2 (en) 2017-03-17 2019-12-03 Kabushiki Kaisha Toshiba Movement control system, movement control device, and computer-implemented program for movement control
CN111566581A (zh) * 2018-01-03 2020-08-21 高通股份有限公司 基于检测到的对象的分类的可调整的对象避开接近度门限
EP3594623A1 (en) 2018-07-10 2020-01-15 Furuno Electric Company Limited Graph generating device
US11193787B2 (en) 2018-07-10 2021-12-07 Furuno Electric Co., Ltd. Graph generating device
JP2020042726A (ja) * 2018-09-13 2020-03-19 株式会社東芝 Ogm圧縮回路、ogm圧縮伸長システム、および移動体システム
CN111214179A (zh) * 2018-11-23 2020-06-02 北京奇虎科技有限公司 确定可清扫区域的方法、装置、电子设备及可读存储介质
CN111507652A (zh) * 2019-01-30 2020-08-07 顺丰科技有限公司 任务路径确定方法及装置
KR102115294B1 (ko) * 2020-02-28 2020-06-02 주식회사 파블로항공 무인항공기 충돌 회피 방법
CN111443733B (zh) * 2020-05-25 2023-09-15 深圳市道通智能航空技术股份有限公司 一种无人机飞行控制方法、装置及无人机
WO2021238743A1 (zh) * 2020-05-25 2021-12-02 深圳市道通智能航空技术股份有限公司 一种无人机飞行控制方法、装置及无人机
CN111443733A (zh) * 2020-05-25 2020-07-24 深圳市道通智能航空技术有限公司 一种无人机飞行控制方法、装置及无人机
CN111708365A (zh) * 2020-06-24 2020-09-25 宝武集团环境资源科技有限公司 一种自动路径规划方法
CN114035572A (zh) * 2021-10-09 2022-02-11 中电海康慧联科技(杭州)有限公司 一种割草机器人的避障巡回方法及***
CN114035572B (zh) * 2021-10-09 2023-08-01 凤凰智能电子(杭州)有限公司 一种割草机器人的避障巡回方法及***
KR20230056225A (ko) * 2021-10-20 2023-04-27 금오공과대학교 산학협력단 차동 구동형 이동로봇의 운동역학을 고려한 장애물 회피 및 경로 추종방법
CN114442642A (zh) * 2022-04-02 2022-05-06 深圳市普渡科技有限公司 路径规划方法、装置、计算机设备和存储介质
CN115935714A (zh) * 2023-02-09 2023-04-07 大连海事大学 一种基于多边形等距离外扩的环境势场模型构建方法
CN115935714B (zh) * 2023-02-09 2023-09-15 大连海事大学 一种基于多边形等距离外扩的环境势场模型构建方法
CN117451057A (zh) * 2023-12-25 2024-01-26 长春理工大学 基于改进a*算法无人机三维路径规划方法、设备和介质
CN117451057B (zh) * 2023-12-25 2024-03-12 长春理工大学 基于改进a*算法无人机三维路径规划方法、设备和介质

Similar Documents

Publication Publication Date Title
JPH07129238A (ja) 障害物回避経路生成方式
CN106647769B (zh) 基于a*提取引导点的agv路径跟踪与避障协调方法
CN110823240B (zh) 一种具有航向约束的跟随机器人路径规划方法及***
Konolige A gradient method for realtime robot control
Lau et al. Kinodynamic motion planning for mobile robots using splines
CN113710431B (zh) 使用基于采样的最优树的路径规划方法以及记录介质
WO2022083292A1 (zh) 一种智能移动机器人全局路径规划方法和***
Goto et al. Mobile robot navigation: The CMU system
CN115373399B (zh) 一种基于空地协同的地面机器人路径规划方法
Kim et al. Path planning for a tethered robot using Multi-Heuristic A* with topology-based heuristics
Klančar et al. Drivable path planning using hybrid search algorithm based on E* and Bernstein–Bézier motion primitives
CN115079702B (zh) 一种混合道路场景下的智能车辆规划方法和***
Fermin-Leon et al. TIGRE: Topological graph based robotic exploration
Al-Dahhan et al. Voronoi boundary visibility for efficient path planning
JP2007328486A (ja) 移動ロボット
Diéguez et al. Deliberative on-line local path planning for autonomous mobile robots
KR102552719B1 (ko) 주행경로 자동생성방법 및 장치
CN114879660A (zh) 一种基于目标驱动的机器人环境感知方法
Yan et al. Mui-tare: Cooperative multi-agent exploration with unknown initial position
Tang et al. Real-time trajectory generation for quadrotors using b-spline based non-uniform kinodynamic search
Pereira et al. Optimal perception planning with informed heuristics constructed from visibility maps
Zhang et al. P-CAL: Pre-computed alternative lanes for aggressive aerial collision avoidance
He et al. Real-time decentralized navigation of nonholonomic agents using shifted yielding areas
Karakaya et al. A novel local motion planner: Navibug
Li et al. An efficient sampling-based hybrid a* algorithm for intelligent vehicles

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010130