• 沒有找到結果。

第一章 緒論

1.1 研究背景與動機

近年來機器人的研究以及應用相當的廣泛,例如:負責清理家裡地板環境的 清潔機器人[1]、實行校園及公寓巡邏的保全機器人[2]、在博物館中負責講解的導 覽機器人[3]、將廚房餐點送給顧客的送餐機器人[4],或是在危險災區執行救災任 務的救災機器人[5]等…,這些機器人我們可以統稱為「任務型機器人」。所有任 務型機器人在完成任務之前都有一個共同的研究議題,而這議題就是機器人如何 移動至目的地(目標物)?我們將這議題稱之為「機器人導航(Robot navigation)」。在 機器人導航中,大致可以分為三個部分,第一部分為機器人定位(Localization),

顧名思義就是找出機器人目前的所在位置。第二部分為機器人建圖(Map building),

主要是針對機器人在未知環境的探索並建立環境地圖。第三部分為機器人路徑規 劃(Path planning),這也是本篇論文主要研究的項目。

在機器人路徑規劃中,主要可以分為三個議題來探討,分別為避障、最短路 徑及計算的處理時間。如何在這三者之間做取捨?如果在已知的地圖環境中,規 劃出一條最短路徑,而在這條路徑規劃在計算時間一定也會有相當的付出。如果 在已知的地圖環境中,演算法能夠快速的規劃出一條路徑,此時這條路徑不一定 是條最短路徑。最後,路徑規劃完成後,接著就是機器人的行走(移動),機器 人在行走的同時,勢必會遇到一些障礙物,如果在這時候做避障處理也會造成很 多次重新路徑規劃(Replanning),在整體操作流程的觀點上相當費時。故本篇綜

2

合了以上三個議題,提出一種混合型的演算法,不但可以減少不必要的重新規劃,

同時也可以降低路徑規劃的計算時間。

1.2 相關研究方法回顧

近年來也有許多人研究探討路徑演算法,如 A* algorithm [6], D* algorithm [7], Potential Field [8], Genetic Algorithm [9], Generalized Voronoi Graph(GVG) [10]

等...。

在眾多路徑規劃演算法中,最廣泛使用的莫屬於 1968 年由 Hart 等三人所提 出之 A* algorithm [11],其演算法主要係使用啟發式的成本運算方式來搜尋節點,

使得搜尋具有方向性,主要原因為 A* algorithm 的優點是演算法實作上簡單且計 算時間具有相當不錯的表現,但缺點是遇到凹型障礙物(concave obstacles)時有 可能在凹型區域內做過多的不必要搜尋,以及規劃路徑遇見轉彎有障礙物時,所 規劃出來的路徑會沿著障礙物,容易造成機器人移動上的碰撞。

Dijkstra's algorithm 是 1959 年由 Dijkstra 所提出的演算法[12],主要係建立在 圖論中每個相鄰節點(node)的距離作為評估的成本資訊做貪婪(greedy)搜尋,

此演算法的好處是規劃出來的路徑一定是最短路徑,而將 Dijkstra's 演算法實作在 機器人移動時,規劃後的路徑遇到轉彎有障礙物的時候,所規劃的路徑會沿著障 礙物行走,容易造成機器人移動上的碰撞。所以在 1994 年 Anthony Stentz 所提出 的 D* algorithm [13],其主要的貢獻是具有區域修復的特性(Locally repairing)[14],

即可以利用感應器檢測環境中之動態障礙物,行進中如果檢測出障礙物在原先規 劃的路徑上時,就會針對區域的範圍重新規劃一次路徑。以上兩演算法 Dijkstra's

3

algorithm 和 D* algorithm 的共同的缺點是當地圖節點過多時會造成計算效率降 低。

另外,場勢法(Potential Field Algorithm)[8]也是一個熱門的路徑規劃演算 法,場勢法的優點是可以預先處理地圖上向量場的資訊,接著,處理終點的向量 場資訊再做向量相加,即可快速得知目的地的方向資訊,不過當地圖有凹型障礙 物時,會有 Local minima 的問題[15],而且向量場有可能互相抵消,使得機器人 不知道下一個路徑方向而造成路徑規劃錯誤,如圖 1 - 1 所示。

圖 1 - 1 場勢法之 Local minima 問題

近期也有人將基因演算法(Genetic Algorithm)應用在路徑規劃的研究上[9],

基因演算法的好處是可以規劃出一條最佳的路徑,不過其缺點是運算過程很耗時,

因為基因演算法在運算過程中每一代染色體需要經過不斷的交配(Crossover)及突 變(Mutation)等演化過程,較不利於即時機器人導航系統的運作。

4

後來也有人將 Voronoi 圖[10][16][17][18]應用在路徑規劃的研究上,原先 Voronoi 圖是用在行動通訊領域的方法,主要是用來得知使用者是屬於哪個訊號 接收器的範圍內。當應用在機器人導航時,則可以建立地圖的骨幹圖,以確保機 器人行走時與障礙物之間可以保持著最大的安全距離[16],此方法可避免機器人 行走時容易沿著障礙物的問題,但缺點是在進行路徑規劃時,會選擇 Voronoi 圖 上與起點(Start)較近的 Voronoi Node,作為起點的下一個位置 sub-goal,及 Voronoi 圖上距離終點(Stop)較近的位置 sub-start,故容易產生多走一些不該走的路徑[17],

如圖 1 - 2 所示,其主要原因為 Voronoi 圖算是形態學中的中軸法(medial axis),容 易產生一些多餘的線段,故容易造成規劃路徑會有繞路的問題。

圖 1 - 2 GVG 繞路問題[17]

Sub-goal

.

Sub-start

.

5

1.3 論文架構

本篇論文可以分為六大章節。第一章主要介紹本篇論文的研究背景與動機與 其他相關的研究討論。第二章介紹本篇論文會應用到的文獻探討,例如路徑規劃、

影像形態學與粒子濾波器定位。第三章為本篇論文所提出混合型路徑規劃的演算 法。第四章將介紹實作本篇論文所應用到的環境設備及架構。第五章則是基於第 四章的實驗結果展示。最後第六章為結論。

6

相關文件