第二章 文獻探討
2.4 導航系統
2.4.2 勢力場
除了路徑規劃之外,在進行地圖建置以及路徑規劃演算法運算時,通常會逐 漸在空間中開發出一個無障礙的安全區域或稱為自由空間 (Free Space)。這種表 示方法引入不同於價值函數的勢力場函數 (Potential Function),而是定義地圖上 不同行為的梯度向量,這些梯度向量可視為能量場或勢力場。這種方法漸漸應用 在車輛行駛或機器人之避障與導航 (Koren et al., 1991; Jia et al, 2007)。
勢力場 (Potential Fields) 的概念是由 Andrews and Hogan (1983) 所提出的,
該篇文章所提出的方法是將障礙物施加一個排斥力於移動中的機器人,而終點目 標則施予一個吸引力。而後,在機器人領域逐漸成為一個廣泛被應用的路徑安全 規劃方法。相較於路徑規劃演算法來說,它並不是一種量化空間的方法,而是一 種利用向量或磁場概念來表示物體靠近時的趨勢,向量可幫助導航中的物體進行 速度變化和定位。Potential fields 根據性質分成兩種行為,如下圖 2-3 (a) 稱為目 標尋找行為 (SeekGoal Behavior),具有吸引力的勢力場,由許多周圍向量集合指 向中心圓圈的目標稱為目標勢力場,一旦進入到其勢力範圍,行駛中的物體便會 朝藍色目標移動。相較於吸引力的勢力場,圖 2-3 (b) 稱作避障行為 (Avoid Obstacle Behavior),具有排斥的勢力場,其向量集合由中心障礙物向外發散,排 除障礙物影響的半徑範圍之外,向量大小隨距離中心障礙物的遠近由零逐漸增加,
一旦進入到此影響範圍則會逐漸遠離中心障礙物直到向量大小為零。在進行導航 時二維環境會同時包含這兩種行為,障礙物可能隨時間地點數量也會不同。
19
(a) (b)
圖 2-3 兩種 Potential fields 行為模式 (a) Seek goal behavior,(b) Avoid obstacle behavior (Goodrich, 2008)
以一個物體在二維地圖進行導航的例子,我們可以想像勢力場是一種將現在 位置向量v[x,y]T映射到下一個位置[x,y]T的梯度向量的表現。首先我們 以分量 x 和 y 來定義圖 2-3 (a) 行為所產生的向量 v,步驟如下
Step 1: 定義(xG,yG)為目標的中心座標位置,r 為半徑。v[x,y]T代表 (x,y) 位置向量
Step 2:
計 算 位 置 與 目 標 中 心 點 的 相 位 角 以 及 距 離 , tan 1( )
G G
x x
y y
2
2 ( )
)
(x xG y yG
d
Step 3: 根據下列條件設定 x 和y 若dr 則xy0
若rdsr 則 x(dr)cos,y(dr)sin
20
21
利應用在各種狀況,以圖 2-4 為例,一個二維地圖上擁有兩種不同行為模式所 結合而成的勢力場。根據上述兩種不同行為進行的向量分析後,我們得知目標 行為模式會產生吸引趨勢的Gx和Gy兩方向的梯度向量,障礙物行為模式對 影響範圍發散式的產生向量梯度Ox和Ox,因此只要經過向量的合成便可進 行運算,如下式 (2.18)
x x x
O
G
, y
Oy
Gy
(2.18)透過式 (2.18) 得到該勢力場的梯度向量x 和y ,如此便可計算出速度
2
2 y
x
v 以及方向 tan 1( )
O O
x x
y y
,若是將物體放在如圖 2-5 的勢力場,
便可看清楚出物體移動時的軌跡。
圖 2-4 二維地圖中同時具有兩種行為的勢力場 (Goodrich, 2008)
22
圖 2-5 具有兩種行為的勢力場以及移動軌跡 (Goodrich, 2008)