• 沒有找到結果。

基因演算法實現機動型機器人之同時定位與地圖建立

N/A
N/A
Protected

Academic year: 2021

Share "基因演算法實現機動型機器人之同時定位與地圖建立"

Copied!
66
0
0

加載中.... (立即查看全文)

全文

(1)國立高雄大學電機工程學系 計算機組 碩士論文. 基因演算法實現 機動型機器人之同時定位與地圖建立 A genetic-based SLAM system for mobile robots. 研究生: 陳詣翰 撰 指導教授: 吳志宏. 中華民國一百零二年七月.

(2) 致謝 本論文得以順利完成 , 首先要感謝的是我的指導教授吳志宏老師 , 感謝老師在撰寫 論文與實作實驗時無怨無悔的教導 , 並在我有任何問題的時候 , 從旁給予協助 。 感謝老 師在志工活動的教誨 , 適時地教導我們待人處事的細節與服務他人時該有的態度 。 也感 謝老師在機器人競賽中 , 教導我們中小型專案的程式設計與開發 , 使我們能夠一窺系統 整合的實作與體現 。 也要感謝口試委員李錫智教授 、 潘欣泰教授 、 歐陽振森教授 , 在口 試時的指導與建議 , 使得本篇論文得更加嚴謹 。 感謝瓊輝學長職場上的經驗分享與機器人電源技術上的協助 , 感謝學長姐俐雯 、 瓏 軒在公文 、 核銷 、 營隊上的協助與幫忙 , 感謝宜陞 、 右棟 、 錦源 、 旻良 、 冠文 、 丞儒 、 阿鐵在機器人競賽與研究上的付出與無怨無悔地陪伴 , 感謝立偉 、 建榮 、 與婉伊 、 為實 驗室帶來許多歡笑與趣事 , 感謝學弟 、 偉洲 、 育賢甫進實驗室就要麻煩你們處理繁重的 公文 , 感謝實驗室的大家在我心情低落時的幫助與安慰 , 實驗室有你們真的太好了 。 最後要感謝我的家人 , 感謝父母二十幾年來的養育 , 感謝姐姐大學畢業後馬上就業 分擔家計 , 能夠讓我無後顧之憂的完成此一學位 , 也原諒我沒有經常的回家陪伴 , 寫論 文與做實驗的夜晚 , 也讓你們擔心我身體健康 。 陳詣翰 謹誌於國立高雄大學電機工程學系 計算機組 中華民國一零二年九月.

(3) 基因演算法實現 機動型機器人之同時定位與地圖建立 指導教授: 吳志宏 博士 學生: 陳詣翰 國立高雄大學電機工程學系. 摘要 即時定位與地圖建立 (simultaneous localization and mapping, SLAM) 是一種 依據機器人的感測訊號 , 在機器人移動時標定出機器人的位置 , 並同時建立或更新其所 在的地圖 , 以利後續的定位與任務的遂行 。 SLAM 的原理是搜尋機器人兩次感測訊號間 的相似度 , 建立對應環境的相似圖形 。 此計算過程涉及圖形比對 (pattern matching) , 在資料點數量龐大時 , 往往耗費許多計算時間 , 不利於機動型機器人的實務應用 。 本論 文發展快速的 SLAM 方法 , 以利機動型機器人的實務應用 。 論文中以雷射測距儀 (laser range finder, LRF) 作為感測訊號來源 , 擷取機器人感測訊號的特徵點 , 以減少圖形比對. 的資料量 ; 再利用基因演算法 (genetic algorithm) 將環境感測特徵點與機器人移動 (旋 轉與位移) 位置資訊混合編碼成染色體 , 以限制演化方式 , 快速計算機器人位置與特徵點 的關係 , 並以適應函數 (fitness function) 計算 SLAM 資料的比對與建立的合理性 , 以 實現即時 SLAM 系統 。 本論文將此方法實做於一實體機器人上 , 並進行實機測試 。 實驗 結果發現 , 由於本方法保留了雷射測距儀感測環境的重要特徵點 , 不僅使得即時定位與 地圖建立在運作上較為快速 , 且相較於傳統映射有更多的彈性 , 使得本研究有較佳效果 。. 關鍵字: 機動型機器人 、 即時定位與地圖建立 、 圖形比對 、 雷射測距儀 、 基因演算法 、 適應函數.

(4) A genetic-based SLAM system for mobile robots Advisor: Dr. WU, CHIH-HUNG Student: CHEN, YI-HAN Department of Electrical Engineering, National University of Kaohsiung. ABSTRACT Simultaneous localization and mapping (SLAM) is an important technique for the localization of mobile robots. For SLAM, mobile robots periodically collect data that describe the objects and obstacles in the surroundings using various types of sensors. The main task in SLAM is similarity pattern matching of sets of sensor data, which is a time-consuming task when a number of sensor data are used. This thesis presents a genetic-based method for fast SLAM calculation for the application of mobile robots. A laser range finder (LRF) is installed on a mobile robot for collecting SLAM data. From the LRF points, several representative ones are extracted for describing the main features of the surroundings. The potential position of the robot that produces the selected LRF feature points are encoded as chromosomes for genetic-based pattern matching. A fitness function that calculates the similarity of two chromosomes is defined. A restart mechanism that re-initializes all chromosomes for increasing the diversity of solutions is developed and works with the matching process. Some constrains are developed for filtering out irrational chromosomes after the operation of crossover and mutation. With fewer points for similarity comparison and constrained genetic operations, fast converge can be obtained. Experiments are conducted on a real mobile robot. The experimental results show that our proposed method is efficient and effective for SLAM. Keywords: mobile robot, simultaneous localization and mapping, image correspond, laser range finder, genetic algorithm, fitness function..

(5) 目錄 1 緒論. 1. 1.1 研究背景與動機 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1. 1.2 研究目的與方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5. 1.3 研究流程與論文架構 . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6. 2 背景知識與相關文獻. 8. 2.1 即時定位與地圖建立 . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8. 2.1.1. 雷射測距儀 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8. 2.1.2. 圖形比對與最佳化問題 . . . . . . . . . . . . . . . . . . . . . . .. 9. 2.1.3. 地圖建立 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13. 2.1.4. 各種實現即時定位與地圖建立的方法簡介與地相關文獻 . . . . . . 14. 2.2 基因演算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.2.1. 基本運作原理 . . . . . . . . . . . . . . . . . . . . . . . . . . . 17. 2.2.2. 基因演算法相關文獻 . . . . . . . . . . . . . . . . . . . . . . . . 19. 3 特徵點擷取. 20. 3.1 搜尋特徵點 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.2 擷取特徵點 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4 演化式 SLAM. 26. 4.1 基因演算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4.1.1. 問題分析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26. 4.1.2. 染色體編碼 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27. 4.1.3. 適應函數訂定 . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 i.

(6) 4.1.4. 交配突變機制 . . . . . . . . . . . . . . . . . . . . . . . . . . . 30. 4.1.5. 重置機制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32. 5 實驗與結果分析. 33. 5.1 機構設計與控制方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 5.2 實驗架構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5.2.1. 第一部分調整基因演算法參數 . . . . . . . . . . . . . . . . . . . 35. 5.2.2. 第二部分調整特徵點個數 . . . . . . . . . . . . . . . . . . . . . 41. 5.2.3. 實驗小結 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45. 6 結論與未來展望. 50. 6.1 結論 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 6.2 未來展望 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51. 參考文獻. 52. ii.

(7) 圖目錄 1.1 研究流程圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7. 2.1 雷射測距儀 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2 雷射測距儀掃瞄示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3 雷射測距儀極座標示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4 地標關聯示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.5 機器人路徑示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.6 雷射測距儀地圖比對 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.7 建立地圖示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.8 基因演算法流程圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.1 地標擷取 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.2 特徵點示意圖. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21. 3.3 擷取端點特徵點 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.4 擷取角落特徵點步驟 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.5 鋸齒狀問題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.6 特徵點簡化示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.7 特徵點示意圖. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25. 4.1 地標關聯的關係 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.2 染色體結構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.3 陣列表示箭頭關係 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.4 交配示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.5 突變示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 iii.

(8) 4.6 不合邏輯的交配與突變 . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 5.1 機器人視圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 5.2 Basic commander 微處理器 . . . . . . . . . . . . . . . . . . . . . . . . 34 5.3 輪轉參數與速度關係 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 5.4 實驗場地一 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.5 實驗場地二 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.6 實驗 A 場地一左轉 10 度特徵點 . . . . . . . . . . . . . . . . . . . . . . 40 5.7 實驗 A 場地一向前 10 公分特徵點 . . . . . . . . . . . . . . . . . . . . 41 5.8 實驗 A 場地二左轉 10 度特徵點 . . . . . . . . . . . . . . . . . . . . . . 44 5.9 實驗 A 場地二前進 10 公分特徵點 . . . . . . . . . . . . . . . . . . . . 45 5.10 實驗 B 場地一左旋 10 度特徵點點數不同的相互關係 . . . . . . . . . . . 46 5.11 實驗 B 場地一向前 10 公分特徵點點數不同的相互關係 . . . . . . . . . . 47 5.12 實驗 B 場地二左旋 10 度特徵點點數不同的相互關係 . . . . . . . . . . . 48 5.13 實驗 B 場地二向前 10 公分特徵點點數不同的相互關係 . . . . . . . . . . 49. iv.

(9) 表目錄 5.1 雷射測距儀簡易規格表 . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 5.2 實驗 A 場地一向左旋轉 10 度演化代數關係 . . . . . . . . . . . . . . . . 36 5.3 實驗 A 場地一向前 10 公分演化代數關係 . . . . . . . . . . . . . . . . . 36 5.4 實驗 A 場地二左轉 10 度演化代數關係 . . . . . . . . . . . . . . . . . . 37 5.5 實驗 A 場地二向前 10 公分演化代數關係 . . . . . . . . . . . . . . . . . 37 5.6 實驗 B 場地一左旋 10 度特徵點點數不同的相互關係 . . . . . . . . . . . 42 5.7 實驗 B 場地一向前 10 公分特徵點點數不同的相互關係 . . . . . . . . . . 42 5.8 實驗 B 場地二左旋 10 度特徵點點數不同的相互關係 . . . . . . . . . . . 43 5.9 實驗 B 場地二向前 10 公分特徵點點數不同的相互關係 . . . . . . . . . . 43. v.

(10) 第1章 緒論 1.1 研究背景與動機 隨著科技的發展 , 以往出現在科幻小說的機器人 , 已在人類的生活中出現 。 機動型 機器人 (mobile robots) 是一種具備高移動能力的機器人 , 可運用的環境包含天空 、 海 洋 、 陸地 、 太空中等危險或是人類無法到達的空間 。 為了使機動型機器人可以順利的完 成各式各樣的任務 , 精準快速的定位系統便成為機器人完成任務的最主要基石 。 機器人 必須依靠定位系統來了解自己所處的空間 、 周邊的物品與障礙物的關係 , 才能做出相對 應的互動 , 例如避障 、 導航 、 撿拾物品 、 觀察物品等等 。 機器人的定位 (localization) 便 成為近年來機器人研究的重要項目[1, 2] 。 常見的定位應用環境有兩種 , 室內與室外 。 目前室外的定位技術普遍仰賴全球定位 系統 (global positioning system, GPS)[1, 3] , 藉由衛星的三角定位與時間差 , 來達到 精確的定位效果 。 然而若機動型機器人的工作環境位於室內 , 或是不利於接收衛星訊號 的場所時 , 則需另外尋找其他定位方式來解決機器人定位問題 。 目前室內工作的機器人 如工廠產線中的機械手臂 , 常使用固定式 、 具有軌道 、 無線基地台定位等硬體方式來解 決機器人定位的問題 。 但由於必須運行在固定路線或是軌道上 , 使得機器人的活動區域 受到極大的限制 。 無論室內與室外即時定位與地圖建立 (simultaneous localization and mapping, SLAM) [4, 5] , 主要起始於1991 年學者 Hugh Durrant-Whyte 等人[4] , 基於 1986 年學者 Smith. 對空間不確定性的估測的研究[5] , 所衍伸出機器人如何在未知環境中建立地圖 , 並同時 1.

(11) 使用此地圖為機器人定位與導航的概念 。 SLAM 是在機器人身上裝置具有感測環境的感 測器 , 隨著時間與機器人的移動 , 重複感測環境地標 (landmark) , 定位自身位置與狀態 , 最後再根據自身位置繪製地圖 , 而達到同時定位和建立地圖的目的 , SLAM 主要分成以 下幾步驟 : • 地標擷取 (landmark extraction) : 所謂地標是指環境中的特徵 , 可以做為機器人. 判斷自身位置的重要依據 。 例如 : 門 : 窗 、 轉角 、 柱子 。 地標必須具有下述幾種特 色 : 不可動 (stationary) 、 可被重複尋找 (re-observable) 、 在環境中數量穩定 (plentiful) 、 可以易於與其他地標作區別等特色 (distinguishable) , 好的地標是 SLAM 成功的關鍵之一 。 地標擷取是利用裝置在機器人上的環境感應器來獲取地. 標資訊 , 環境感測器可分為 , 距離型 : 超音波 、 紅外線或雷射測距儀 , 可直接量測 機器人與環境之間的距離數據 ; 影像型 : 攝影機或全景攝影機 , 可獲得部分或 360 度的環境影像 ; 綜合型 : Kinect 或 Xition , 可獲得紅外線景深與彩色環境影像 ; 根據不同的感測器就有不同的擷取地標的方式 。 地標是環境中具有特徵的地方如牆 角 、 柱子等 , 是地圖比對的重要依據 。 • 地標關聯 (landmark association) : 地標關聯是以機器人兩次感測環境的地標作為. 比對基準 , 將不同環境地圖中相同的地標互相關聯 。 藉由圖形比對的方式進行地圖 的平移與旋轉 , 判別新地標與舊地標的關係 。 尋找最相似的機器人移動參數 。 地標 關聯是 SLAM 最核心的部分 , 也是最為困難的部分 。 原因是因為無法保證感測器 可以在每次感測中發現相同的地標 , 也無法明確確定此地標是否為正確之地標或是 誤判 , 最後地標可能關聯錯誤至不同的地標上 。. 2.

(12) • 機器人狀態預測 (robot state estimation) : 利用新地標與舊地標的關係 , 計算出. 機器人的位移 、 旋轉或狀態改變參數 。 • 機器人狀態改變 (robot state update) : 由於機器人身上不一定只安裝一種環境感. 應器 , 故此步驟是將機器人所有關於定位的感應器 , 利用權重法或是平均等相關資 訊融合技巧之後 , 更新機器人的位置與狀態 。 • 地標更新 (landmark update) : 機器人在新的位置或狀態上 , 更新地標相對於機器. 人的位置 , 以利下次 SLAM 流程的進行 。 近年來關於 SLAM 的研究可參考 [6, 7, 8] 。 SLAM 根據地圖的已知與未知又可分成兩 種定位方式 : • 已知地圖的定位 : 在已知地圖的情況下 [9, 10, 11] , 可先以人為的方式訂定出地圖. 上的地標 , 例如轉角 、 牆壁等等 , 使機器人利用環境感測器辨識出地標時 , 可以得 知自身在地圖上的位置 。 或是先行建立環境感應器在地圖中的環境掃描資料庫 , 使 用比對的方式來得知自身機器人的位置 。 已知地圖由於不須讓機器人訂定地標 , 故 此類的研究較著重於 , 正確的地標比對 , 與機器人的數學運動模型修正上 。 • 未知地圖的定位 : 在未知地圖的情況中[12, 13] , 由於無法直接以人為的方式訂定. 地圖上的地標 , 所以機器人必須具有自我尋找地標的能力 , 首先機器人先進行感測 環境 , 並在自身所感測的環境中找到符合當作地標的特徵點當做地標 。 接下來在下 一次的偵測中若尋找到相同的地標 , 便可以開始進行地圖比對 , 以計算出機器人的 位置 。 未知地圖由於沒有確切的地圖或地標位置 , 故在尋找地標時所需的考慮與判. 3.

(13) 斷將比已知地圖來的複雜 , 故如何能找到正確的地標 , 建立正確的地圖 , 是未知地 圖的重要研究範圍 。 由以上所述 SLAM 系統仍有以下主要面臨的問題 : • 感應器的誤差 : 無論已知或未知地圖SLAM 皆須使用環境感測器來完成機器人定. 位的目的 。 但感應器並不是完美的 , 仍會有製成與量測上的誤差存在 , 且在 SLAM 進行當中 , 機器人移動的過程中馬達的摩擦力 、 電池電量 、 地面的不平穩等等因素 更會造成上述感測器的誤差累積 , 最終造成機器人實際位置與自身定位的位置不符 的困境 。 • 地標關聯的不確定性 : 由於感測器的不完美 , 也導致相同的地標在兩次感測中 , 存. 在著偵測與否的不確定性 , 是影響 SLAM 系統的主要問題 。 • 大量的地標導致圖形比對或座標比對耗時 : 地標關聯主要是靠機器人身上安裝的感. 應器來感測地標 , 環境感應器的的資料大多是屬於極座標式的扇形環境資料 , 每次 掃描可產生數百筆極座標資料 , 這數百筆環境點的資料 , 將會形成機器人視角的環 境地圖 。 SLAM 系統就是要在短時間內 , 將不同時間中機器人視角的環境地圖 , 經 過地圖或座標的平移與旋轉 , 來獲得機器人的位移與轉動參數 。 由於感應器的誤差受限於儀器本身的精確度 , 而地標關聯與感應器精確度也有著不小的 關係 , 考慮到設備的問題 , 故本研究將專注於如何有效減低地標關聯的消耗時間 , 在運 算資源有限的移動型機器人平台上實現 。. 4.

(14) 1.2 研究目的與方法 本研究主要目的是實現一種高效率 SLAM 系統 , 在機動型機器人上實現 。 為達此 目的 , 本研究以減少計算量為手段 , 從減少感測資訊中擷取出具代表性的特徵點 , 並將 兩次特徵點的圖形比對問題定義成最佳化問題 , 並設計快速基因演算法 , 計算機器人的 旋轉或位移參數 , 使得 SLAM 系統在未知環境下得以實現 。 • 特徵點擷取技術 : 主要分成兩部分 。 第一部分是利用三點內積公式 , 來求得環境資. 料點中符合一定角度內的轉角特徵點 。 第二部分是檢查環境資料點中 , 相鄰兩點的 x 座標值與 y 座標值是否有明顯的變化 , 以找出具有門的特質的環境特徵點 。 利用. 這兩部分可以有效的減少地標數量 , 並在實驗中比較特徵點個數與時間的關係 。 • 基因演算法 : 基因演算法是一種搜尋最佳解的演化式演算法 , 若要搜尋到最佳解 ,. 將會花費龐大的時間 。 故在本研究中並不追求最佳解 , 而是在容許的時間內計算出 區域最佳解 。 在基因演算法中 , 染色體將分成兩部分 。 其一是匹配基因組 , 其二是 旋轉及位移基因組 。 匹配基因組部分 , 我們利用雷射測距儀的資料點具有順序性 、 不重複性 , 限制了一些匹配情況 , 以加速過濾不適合的圖形匹配結果 。 旋轉及位移 基因組部分 , 我們假設機器人不會有劇烈變動或移動的特性 , 故其可變動的範圍也 被我們做了限制 , 以減少基因演算法的搜尋時間 。 在實驗中我們將試驗各種不同的 基因演算法參數調整 , 以實驗出較佳的數據供機器人在實際上使用 。 • 地圖產生 : 利用基因演算法求出的位移與旋轉參數 , 將地圖上的機器人位置做更新 ,. 若在匹配基因中有發現新的地標的出現 , 則將新地標放入地標資料庫中 , 使得地標 資料庫得以擴增 , 再依據新增的地標建立環境地圖 。 為此我們設計實驗 C 將建立 5.

(15) 實地場地 , 讓機器人兩種場地中自主定位與建立地圖 , 來驗證本研究方法的有效性 與優劣 。 本研究中使用單個雷射測距儀以提供機器人環境資訊 , 透過特徵點擷取技術 , 擷取重要 的環境資料點 , 再搭配特殊的基因編碼方式與機器人移動參數的限制 , 達到高效率基因 演算法實現機動型機器人之即時定位與地圖建立之研究 。. 1.3 研究流程與論文架構 本論文研究流程主要分為研究動機 、 相關文獻蒐集與探討 、 程式撰寫 、 實驗結果分 析與結論等部分 , 研究流程圖如圖 1.1 。 • 研究動機 : 包含相關的研究背景 、 問題之範圍及定義 , 參考機器人即時定位與地圖. 建立及基因演算法等相關資料及文獻 , 將問題範圍設定在機動型機器人室內定位與 地圖建構的控制方式 。 • 相關文獻蒐集與探討 : 蒐集與本研究相關之技術文獻 , 包含感測器種類 、 即時定位. 與地圖建立 、 基因演算法 , 深入了解相關技術應用 。 • 程式撰寫 : 撰寫特徵點擷與演化式即時定位與地圖建立程式 。 • 實驗結果分析與結論 : 比較不同實驗參數下所獲得之效能及分析應用 。. 本論文之架構分為六章節 , 其簡述如下 : 第一章 『緒論』 , 說明本研究背景與動機 ; 第二 章 『背景知識與相關文獻』 , 簡述感測器種類和即時定位與地圖建立與基因演算法相關背 景知識 ; 第三章 『特徵點擷取』 , 詳細說明如何擷取雷射測距儀環境資料與環境特徵點擷. 6.

(16) ࣴ‫୏ز‬ᐒ. ࣬ᜢᇆ໣ᆶЎ᝘௖૸. යтፕЎǵਜᝤϷЎക. ᒧ᏷གෳᏔ. ำԄኗቪ. 2/ 3/. ੝ቻᗺᘏ‫ڗ‬ ᄽϯԄջਔ‫ۓ‬ՏᆶӦკࡌҥ. ჴᡍ่݀ϩ‫݋‬ᆶ่ፕ. 圖 1.1: 研究流程圖 取的方式 ; 第四章 『演化式 SLAM』 , 詳細說明如何利用基因演算法完成即時定位與地圖 建立系統 ; 第五章 『實驗與結果分析』 , 根據設計之實驗架構設計 , 進行各種不同環境與 參數之實驗 , 並針對實驗結果分析及說明 ; 第六章 『結論與未來展望』 , 說明與討論研究 當中所產生之問題與限制 , 並相對提出未來可以研究及更深入的方向與構想 。. 7.

(17) 第2章 背景知識與相關文獻 本章針對本研究採用之技術與相關文獻作一簡述 。 依序討論 SLAM 相關方法細節與 背景 、 基因演算法 。. 2.1 即時定位與地圖建立 SLAM 是在機器人身上裝設環境感應器 , 藉由兩次感應器的環境量測數據 , 透過圖. 形比對 , 計算出機器人的旋轉 、 位移關係 。 以下將介紹 SLAM 中常使用的環境感應器雷 射測距儀 ( laser range finder, LRF) , 與 SLAM 中重要的圖形比對步驟 。 2.1.1 雷射測距儀. 雷射測距儀由於其優異的精確度 、 穩定性與寬廣的測量範圍 , 故是 SLAM 常用的 感測器之一 [12, 14, 15] 。 雷射測距儀主要是由伺服馬達與雷射發射器與攝影機所組成 , 使用時伺服馬達會旋轉並帶動發射器與攝影機一併旋轉如圖 2.1 。 在旋轉的過程中發射 器將會發射一連串的特定頻率的雷射光束 , 攝影機則負責捕捉雷射光至障礙物或物體的 圓點大小 , 藉由圓點大小與反射光的能量大小 , 計算障礙物或物體的距離 。 雷射測距儀 的資料是屬於極座標式的扇形環境資料如圖 2.2 , 每次掃描可產生 n 個極座標資料 , 這 n 個雷射環境點的資料 , 將會形成機器人視角的環境地圖 。 雷射測距儀在時間等於 t 時. 將會以自己為中心由右至左發射脈衝雷射 , 並依序獲得雷射束編號 LN 、 距離值 ri 與. 8.

(18) 角度值 θi 的如公式 (2.3) 所示 : L(t) = [l1 (t), l2 (t), . . . , ln (t)]. (2.1). li (t) = [LN, ri , θi ]t. (2.2). 1 ≤ i ≤ n,. 故由極座標與直角座標轉換公式 (2.4) :  . n∈N. .  cos θi  xi      = ri ·      sin θi yi. (2.3).     . (2.4). 可得到 pi (t) = [LN, xi , yi ]t. 在時間點為 t 的時候雷射測距儀在直角坐標的所有點集合P (t) P (t) = [p1 (t), p2 (t), . . . , pn (t)]. 故我們可以把雷射測距儀看成是一種產生空間俯視圖的感測器 , 其輸出是一張環境地圖 。. 2.1.2 圖形比對與最佳化問題. 當感應器接收到環境資訊之後 , 將雷射測距儀的環境資料點從極座標形式轉換成直 角坐標形成網格地圖 , 並從網格地圖中擷取出所需要的地標 , 再利用不同次的掃描圖形 中 , 關聯圖形中相對應的地標或特徵點 , 以得到機器人的位移或新的狀態 。 如圖2.4 , 說 明機器人在不同時刻偵測到地標時自身的狀態 。 實線表示機器人實際位置 , 線狀虛線代 表透過地標關聯與機器人狀態預測得出的機器人位置 , 點狀虛線代表單純透過測程法所 9.

(19) ϳϬŵŵ. ϱϬŵŵ. (a) 雷射測距儀實體照片. (b) 雷射測距儀大小規格. 圖 2.1: 雷射測距儀 得出的機器人的位置 。 以下我們列舉一個例子 , 假設有一機動型機器人欲從 A 點行駛至 B 點如圖 2.5 所示 。 由圖 2.5 中可看出當時間 (t = 0) 時機器人由 A 點移動至 B 點 (t = 4) 時可分為若干移動片段 , 而假設 t = 1 的環境感測圖為 2.6(a) , t = 2 的環境感. 測圖為 2.6(b) 。 將這 t = 2的環境感測圖 , 經過適當的平移與旋轉 , 將可以將兩圖疊合 起來如圖 2.6(c) 所示 。 記錄最佳疊合時的平移與旋轉參數 , 便可以記錄下機器人移動的 方式與軌跡 , 進而達成定位目標 。 由以上的敘述我們可以將地圖比對的問題最佳化 , 以 ′ 數學的方式表達如下 ; 令 Q(t) 與 Q (t) 為 P (t) 與 P (t + 1) 兩次環境感應器感測的資. 訊 , 從中所擷取的地標座標 。. Q(t) ⊂ P (t),. ′. Q (t) ⊂ P (t + 1). Q(t) = [q1 (t), q2 (t), . . . , qm (t)], ′. ′. ′. ′. Q (t) = [q1 (t), q2 (t), . . . , qm (t)],. 10. m6n m6n.

(20) ϰŵ. ϭϮϬŽ (a) 雷射測距儀扇形掃瞄. ϰϬŵŵ. ϰϬŵŵ ϰŵ (b) 雷射測距儀圓錐掃描. 圖 2.2: 雷射測距儀掃瞄示意圖 令一運算元 π 為 P 作 θ, ∆x ,∆y 的仿射變換 , 記為 : π(P, θ, ∆x, ∆y). 仿射變換僅考慮旋轉位移的簡易公式如下 : . . (2.5). . . ∆x cosθ −sinθ   ′    qj (t) =   qj (t) +       ∆y sinθ cosθ ′′. (2.6). 最後利用轉換後 qi (t) 與 qi (t) 的距離誤差當作標準 , ′′. X. ′′. kqi (t) − qi (t)k. ∀i. 11. (2.7).

(21) 圖 2.3: 雷射測距儀極座標示意圖. (a) 機器人在第一時刻偵測出地標. (b) 機器人在第二時刻偵測出地標. 圖 2.4: 地標關聯示意圖 在公式 (2.6) 中 其結果越小 , 表示 P (t + 1) 經由 θ, ∆x, ∆y 轉換後 , 越接近 P (t) 亦表 示此圖形比對是吻合的 。 反之若公式 (2.6) 中 , 其結果越大 , 則表示 P (t + 1) 以 θ, ∆x, ∆y 轉換至 P (t) , 的圖形較不吻合 。 所以利用簡易的仿射變換公式即可將複雜的地標關. 聯轉化成最佳化問題 。. 12.

(22) . ƚсϮ. ƚсϰ. ƚсϭ  ƚсϯ. ƚсϬ 圖 2.5: 機器人路徑示意圖. (a) t = 1 時量測到的地圖狀態. (b) t = 2 時量測到的地圖狀態. (c) 兩圖疊合即可得知機器人向右旋轉 θ 角. 圖 2.6: 雷射測距儀地圖比對 2.1.3 地圖建立. 根據求出的位移與旋轉參數 , 將地圖上的機器人位置做更新 , 若在匹配基因中有發 現新的地標的出現 , 且重複發現次數在一定以上 則將新地標放入地標資料庫中 , 並新增 13.

(23) (a) 感測場地. (b) 新的地標感測出現 (一). (c) 新的地標感測出現 (二). 圖 2.7: 建立地圖示意圖 新地標至最近舊地標中所有的雷射環境感測點 , 以完成地圖的建立如圖 2.7 所示 。 2.1.4 各種實現即時定位與地圖建立的方法簡介與地相關文獻 SLAM 是近年來機器人領域中相當熱門的研究方向 。 主要可分成幾個部分 : 地標擷. 取 、 地標關聯 、 機器人狀態預測 、 機器人狀態改變 、 地標更新 。 每個部分都適用多種方 法來解決 , 也就是說 SLAM , 目前並未有一個最佳演算法 , 來達成 SLAM 的目的 。 以 下將介紹幾種常用 SLAM 的方法 14.

(24) • EKF SLAM : EKF 是一種非線性資料融合濾波器 [14] , 在 SLAM 中常在已知. 地圖中使用 , 使用 EKF 利用兩筆訂位資料來完成機器人的定位 , 其一為環境感測 器辨識自身位置資料 , 其二為測程法 [9, 10] 定位資料 。 使用這種方式必須先依照 機器人的結構 , 利用機器人的輪轉速與角速度或輪速差 , 以獲得機器人直行與旋轉 的距離與角度 。 藉由物理性的公式訂定縝密的機器人行為數學模型 , 完成測程法定 位數學模型如 [16] 。 獲得第一種機器人定位資料 , 接著利用環境感應器所偵測到 的地標 , 比對已知的地標資料庫 , 即可獲得第二筆機器人的定位資料 。 將這兩筆定 位資料藉由 EKF 融合出最終機器人的位置 。 2010 年 Luka Tesli 等學者 以最 小平方法將環境資料點融合成線段當作地標 , 配合測程法使用延伸卡曼濾波器完成 SLAM [14] 。 • 粒子濾波器 (particle filter, PF) : 首先也是利用機器人的輪轉速與角速度或輪速. 差 , 以獲得機器人直行與旋轉的距離與角度 。 建立機器人的完整的運動數學模型與 環境感測器數學模型 , 將機器人出現於地圖上的位置假設為粒子 , 利用蒙地卡羅法 等隨機方式假設移動誤差 , 接著將誤差帶入運動模型計算出多個機器人在地圖上的 預測位置 。 再利用目前感測器所得知的環境資料 , 與預測位置帶入感測器模型後的 預測環境資料加以比對 , 取最佳之結果當作機器人的位置 。 2002 年 Michael Montemerlo 等學者 , 發表利用粒子濾波器 , 搭配權重法 , 利用蒙地卡羅法讓機器人預. 測位置以高斯分布方式呈現 , 再搭配雷射測距儀環境感測找出最可能的粒子 , 進而 達到定位的需求 [17] 。 • 迭代最近點 (iterative closest point, ICP) : ICP 主要是用來做圖形中目標物體的. 15.

(25) 旋轉與位移判別 , 由於其原目的與地標關聯有著極大的相似之處 , 固也是 SLAM 中常使用的方法之一 。 ICP 是使用剛體旋轉 (rigid transformation) 的原理[18] , 並在設定好的前提下進行圖形目標物的比對 。 ICP 的前提為假設有兩點集合 A 與 B , 其中點集合 A 經過剛體旋轉後可與點集合 B 完全重合 , 反之亦然 。 故 ICP. 在 SLAM 上的使用方式為 , 將第一時刻的所有雷射測距儀的資料點當作點集合 A , 與第二時刻的所有雷射測距儀的資料點當作點集合 B , 利用剛體旋轉的特性 , 設定 一閥值迭代尋找出機器人的旋轉與移動參數 , 進而定位機器人的位置 [19] 。 • 基因演化式 SLAM : 基因演化式 SLAM 其主要做法 , 是利用基因演算法尋找出機. 器人正確的旋轉與位移參數 。 利用圖形轉換 、 剛體旋轉 、 等概念 , 建立兩時刻的感 測地圖關係 2010 年學者 Han Wang 等人使用基因演算法 , 搜尋仿射變換 (affine transform) 中旋轉與位移參數 , 來解決地標關聯的問題 進而獲得機器人的移動參. 數 , 來達到定位的效果 [13] 。. 2.2 基因演算法 基因演算法為一種尋找最佳解的演化法中最著名也是使用最多的方法 。 1975 年 , 由 John Holland 在其著作 “Adaptation in Natural and Artificial Systems” 中奠定了. 基因演算法的基礎 , 根據達爾文進化論 p 適者生存 , 不適者淘汰 y 的道理 , 藉由生物交 配 、 突變 、 選擇的方式尋得適當的問題最佳解 , 為一種有效的最佳化搜尋方法 。 近年來 被廣泛的應用於搜尋各類問題的最佳解 , 並結合其他方法 , 如類神經網路 [20] 、 模糊理 論 [21, 22] 、 增強式學習等 [23] , 應用在影像處理 、 醫學 、 機器人學 、 建築學等領域 。. 16.

(26) 2.2.1 基本運作原理. 基因演算法採用三種基本的運作機制以模仿自然遺傳的過程 , 包括複製 (reproduction) 、 交配 (crossover) 、 突變 (mutation) , 在合理的時間範圍內求得近似最佳解 , 其基本步 驟如下所式 : • 編碼 (encoding) : 將問題的解答以一長串數字或是字元所組成的序列 。 • 初始化 (initialization) : 隨機產生一定數量的個體 , 有時候操作者也可以干預隨. 機產生的過程 , 讓第一代的族群就擁有著部份優化的個體 。 • 評估 (fitness) : 經由適應性函式 (fitness function) 的評估 , 來分辨個體的好壞 。 • 選擇 (selection) : 選擇是依據每一物種的適應程度來決定下一代中應被淘汰或複製. 且保留的個數多寡的一種運算過程 。 選擇過程有兩種形式 : – 輪盤式選擇 (roulette wheel selection) 在每一代的演化過程中 , 首先依每個. 染色體的適應函數值的大小來分割輪盤的位置 , 適應函數值越大的話 , 則在輪 盤上佔有的面積比例也越大 , 每個物種在輪盤上佔有的面積比例越大代表被 挑選到交配池中的機率越大 , 然後隨機選取輪盤的一點 , 其所對應的物種即被 選入到交配池中 。 – 競爭式選擇 (tournament selection) : 在每一代的演化過程中首先隨機地選取. 兩個或更多的染色體 , 具有最大適應函數值的染色體即被選中送至交配池中 。 • 交配 : 交配運算式 , 依據交配率從染色體中隨機地任意兩個字元串 , 經彼此交換字. 元串的某些位元資訊而產生兩個新位元字串的一種過程 , 一般而言交配運算可以用 17.

(27) ࢉՅᡏጓዸ. ౢғཥ‫ޑ‬௼ဂ. ߃‫ۈ‬ϯ௼ဂ ँᡂ ፾ᔈࡋຑ՗. Ҭଛ ፄᇙ. No. ಄ӝಖ Зచҹ Yes. ࢉՅᡏጓዸ. ࢉՅᡏጓዸ. 圖 2.8: 基因演算法流程圖 三種方式進行交配 : 單點交配 、 雙點交配 、 均勻交配 。 • 突變 : 突變的過程是隨機的選取一條染色體 , 並隨機選取突變點 , 改變染色體中的. 位元資訊 , 突變過程發生機率由突變機率所控制 。 突變過程可以針對單一位元或對 整個字串進行突變演算 , 對於二進制的位元字串就是將字串的 0 變 1 或 1 變成 0 。 • 淘汰 (natural selection) : 透過適應性函式評估新的個體 , 弱勢的個體將會被淘汰. 掉 。 保留下較好的個體行程新的一個世代 。 • 終止條件 (termination) : 終止的條件主要有三種 : 適應值達到特定標準 。 演化到. 一定代數 。 或族群演化達到收斂的穩定狀態 。 基因演算法的處理流程圖如圖 2.8 所示 。 最初 , 隨機初始化產生規模為 N 的群體稱為 第 0 代 , 然後去評估每一個個體 (染色體) 得到適應值 。 接著根據既定的挑選機制來複製 個體進行遺傳演化 。 最典型的做法是根據個體的適應值 , 每一次挑選兩個個體當做雙親 , 18.

(28) 適應值較高者被挑選的機率大於適應值較低者 , 因此高適應值的個體有較高的機會繁衍 後代 。 雙親根據交配機率決定是否要進行交配產生子代 , 產生後的子代再根據突變機率 決定是否要做進一步的突變 。 交配是主要的遺傳運算 , 而突變只是次要的動作 。 產生後 的子代或原來的雙親 (沒有進行交配或突變者) 共同組成下一世代 (仍然是N 個) , 如此 繼續進行直到滿足終止條件為止 。 2.2.2 基因演算法相關文獻. 基因演算法被大量使用在機器人的相關技術上 如 2009 年 Hassanzadeh, I 等學 者 提出結合基因演算法與模糊控制 (fuzzy control) 來優化機器人控制製的方法 , 將基 因演算法應用在修改輸入、 輸出的模糊控制隸屬函數 , 他們使用 Matlab 應用程式 Kiks II 來模擬 Khepera II 機器人 , 最後再將結果應用在實體 Khepera II 機器人身上 , 並. 發現這個方法的效果優於模糊控制器 [24] 。 2011 年學者 Minjie Liu 等人 提出形狀 地標的 SLAM 與雷射資料最大化利用 , 將雷射測距儀的環境感測點擷取成形狀地標 , 結 合迭代最近點演算法 , 將基因演算法應用結合形狀地標 , 解決 SLAM 問題 [25] 。 2008 年 學者 Momotaz Begum 等人 , 提出將模糊理論與分散式基因演算法 , 來解決機器人的 SLAM 問題 , 首先使用基因演算法在多個地圖上來搜尋機器人的位置 , 接著利用模糊理. 論減少基因演算法的搜尋空間 , 以達到優化並加速基因演算法的收斂效果 [26] 。. 19.

(29) 第3章 特徵點擷取 3.1 搜尋特徵點 即時定位與地圖建立中第一步驟便是尋找未知場地的地標 , 而地標又可分為點、 線、 形狀等形式如圖3.1 , 且各有其優缺點 : • 點狀 : – 優點 : 無需做任何處理即可直接使用 。 – 缺點 : 受感測器的雜訊影響較劇烈 , 場地內太多相同辨識度不高 , 相對在計地. 標關聯時必須計算較多個地標 。 • 線狀 : – 優點 : 因在做回歸處理時會過濾除去極端點, 使地標較為平穩 , 辨識度高 。 – 缺點 : 需做一些回歸處理把點集合回歸成一條線 , 較耗時 。 • 形狀 : – 優點 : 辨識度相當高 。 – 缺點 : 需做事先預設形狀模型 , 在環境資料與形狀模型的比對上會消耗較大的. 時間 , 也較有可能出現找不到地標的困境 。. 20.

(30) (a) 點. (b) 線. (c) 形狀. 圖 3.1: 地標擷取. (a) 環境角落. (b) 牆緣端點. 圖 3.2: 特徵點示意圖 綜合上述的優劣 , 本研究為了加速 SLAM 的過程 , 將使用點作為地標的方式 , 並將點限 定為環境角落 、 牆緣端點等變化劇烈的點作為地標 , 以減少地標的出現 , 加速地標關聯 時的速度 , 並稱之為特徵點 , 故我們稱地標擷取為特徵點擷取如圖3.2 。. 21.

(31) 圖 3.3: 擷取端點特徵點. 3.2 擷取特徵點 雷射測距儀是一個極座標系統的感測器 , 故由公式 (2.4) 可將極座標轉換成直角坐 標系 , 並生成 t 時的雷射測距儀環境感測圖 , 與 t 時的點集合. P (t) = [p1 (t), p2 (t), . . . , pn (t)]. pi (t) = [LN, xi , yi ]t. 特徵點擷取技術將有二個步驟 : • 第一步擷取特徵點 : – 直線部分 : 設定一閥值 d , 若前一點與後一點的 xi 或 yi 的值差絕對值 |z|. 距大於 d , 則將之兩點皆定為特徵點如圖3.3 。 – 轉角部分 : 利用三點內積的方式 , 來求得環境資料點中符合一定角度內的轉角. 特徵點 。 首先令這三點從右至左分別為 A 點 B 點 C 點 , 每點各相距 k 點的 間隔 , 將這三點以 B 點為中心平移至原點 , 利用內積公式計算出兩邊夾角如 圖3.4 。 最後若符合設定的角度範圍內 , 則記錄 B 點未平移之座標並令之為特 徵點 。 22.

(32) . .  . (a) 第一步找出中心點 B. (b) 第二步取間隔K 尋找 A 點與 C 點. K  ஻஼. . ஻஺. ߮.  (c) 第三步平移至原點計算 ϕ 角度值. 圖 3.4: 擷取角落特徵點步驟 −→ −−→ −→ −−→ BA · BC = |BA||BC| cos(ϕ) −→ −−→ BA · BC cos(ϕ) = −→ − −→ |BA||BC|. 故可得知轉角特徵點在雷射測距儀環境感測圖的取樣範圍為 。 P (t) = [pk (t), pk+1 (t), . . . , pn−k (t)]. 由於雷射測距儀的點數密集 (180 度有512 個雷射掃描點) 在轉換為直角坐標 時 , 會產生點陣圖的鋸齒狀 , 故取點時不宜取相鄰兩點或太近之兩點 , 會因為 23.

(33) 圖 3.5: 鋸齒狀問題. (a) 未擷取特徵點共 57 個地標. (b) 擷取特徵點後 5 個地標. 圖 3.6: 特徵點簡化示意圖 圖形的鋸齒狀而有取樣錯誤的情形發生如圖3.5 。 故 k ≥ 3以上為優 。 • 選取特徵點 : 為了使基因演算法較簡易 , 本研究每次的環境掃描將擷取固定數量的 m 個特徵點來比對 , 所以我們擬定一個權重值 w , 為每個特徵點制定權重 , 直線種. 類的權重計算公式為 : w = |z|. 轉角部分的權重計算公式如下 :. w=. 1 1 + |ϕ − 90| 24.

(34) 圖 3.7: 特徵點示意圖 由於 |z| ≥ 1 固可確保此種特徵點一定採納 。 依權重大小排序特徵點 , 取其前 m 個當作最後輸出的特徵點 , 可得 :. F (t) = [f1 (t), f2 (t), . . . , fm (t)]. fj (t) = [Noj , wj , xj , yj ]t 1 ≤ j ≤ m,. m ≤ n,. m ∈ N.. 將以上兩部分特徵點資料融合起來可得特徵點如圖3.7 並可推得以下特徵點表示集合 。 F (t) = [F1 (t), F2 (t), . . . , Fm (t)]. li (t) = [LN, rj , θj ]t 1 ≤ j ≤ m,. 25. m∈N.

(35) 第4章 演化式 SLAM 4.1 基因演算法 4.1.1 問題分析. 基因演算法是常被使用在龐大的搜尋空間中找出最佳解的演算法 , 且染色體的設計 彈性以及具有許多基因操作參數的可調整性 , 使之成為許多學者愛用的搜尋演算法 。 本 研究的地標關聯最佳化的搜尋空間計算如下 : m(m + 1) × Ix × Iy × Iθ = 512 × 513 × 30 × 30 × 60 = 14183424000 ≈ 234. 其中 m 為當前時刻地標個數 (512 個雷射掃描點) , m + 1 為可關聯的對象 (前一時刻 m 個地標加上 1 個隨意項) , Ix 為機器人左右移動的區間 [-15, 15] 公分 , Iy 為機器人前後 移動的區間 [-15, 15] 公分 , Iθ 為機器人旋轉角度的區間 [30, 30] 度 。 由於有這麼大的 搜尋空間 , 故我們使用特徵點擷取技術大大的減少特徵點的個數 , 使搜索空間大幅降低 , 並更進一步依照地標關聯的特性過濾掉一些不合理的可能 , 故在地標關聯的問題上使用 基因演算法是有一定的優勢 。 本研究是將地標關聯的問題最佳化並利用基因演算法來解決 , 藉由地標關聯來解出 機器人的旋轉與位移參數 , 是 SLAM 中的核心步驟 , 常有下列幾項問題 : 26.

(36) • 地標關聯錯誤 : 地標的錯誤關聯將會利用適應性函式加以控制 , 使關聯度較好的地. 標組合被保留下來 , 關聯度較差的地標組合則被淘汰 。 • 誤將移動的物體偵測為地標 : 由於本研究目前並未在實驗場地內安排移動的物體 ,. 故此點並不納入本研究的影響範圍內 。 • 無法每次都偵測到相同的地標 : 在染色體內必須加入隨意項 ( don’t care ) 表示符. 號 , 已表示未對應到的地標 。 由以上的敘述本研究把地標關聯利用染色體編碼表示 , 關聯的正確於否取決於適應性函 數的高低 , 由適應性函數計算出來的若越高 , 則表示此地標關聯組合的染色體 , 地標關 聯較正確 , 反之 , 則地標關聯較不正確 。 當演化式的地標關聯結束後 , 將未關聯到的新 地標 , 儲存在地標資料庫中 , 並從最靠近新地標的舊地標依序把雷射環境點畫入地圖 , 已 完成地圖建立 。 4.1.2 染色體編碼. 在最佳化的地圖關聯中 , 最先要處理的是如何利用染色體來表示此最佳化問題 , 即 染色體編碼 。 地標關聯首先需有兩個時刻的雷射環境感測圖方可實行 , 由圖4.1中箭頭表 示兩不同時刻中相同地標的對應關係 , 是故如何表達出箭頭所代表意義即為染色編碼的 要點 。 由公式 (2.5) 中 , 我們把染色體分為兩部分 , 一部分是匹配基因組 , 代表公式中 P 。 另一部份是機器人旋轉移動參數組 , 代表公式中 θ 、 ∆x 、 ∆y 的關係 。 如圖4.2所. 示 。 為方便將地標對應關係實現於程式中 , 我們將使用陣列來表示箭頭的關聯 , 首先利 用陣列的位置當作 t + ∆t 時的特徵點編號 , 而其陣列位置內的值表示 t 時的特徵點編 號 , 故使得箭頭的關聯方式與機器人旋轉位移參數可以一併在陣列中表示 。 27.

(37) 圖 4.1: 地標關聯的關係. ϰଛ୷Ӣಔ. ࢍ૚. ࢍ૛. ౽୏௽ᙯୖኧಔ ࢍ࢓. ͙. οdž. Θ. οLJ. οߠ. 圖 4.2: 染色體結構. gj =.      j,. 1≤j≤m.     −1. 機器人移動旋轉參數將接在匹配基因組之後當作整條完整的染色體 移動旋轉參數機會在 染色體初始化時 , 填入適當的機器人移動與旋轉變量 , 以適應性函數計算旋轉矩陣與平 ′. 移矩陣計算時間 t = t + ∆t 的特徵點藉由∆x, ∆y, ∆θ 轉換成近似 t = t 時的特徵 點如公式 (4.1) 。 .  . . . . . ∆x cosθ −sinθ  xj  xcj           +     =        ∆y yj sinθ cosθ ycj t′. t. 28. (4.1).

(38) (a) 地標完整對應. (b) 地標不完整對應. 圖 4.3: 陣列表示箭頭關係 4.1.3 適應函數訂定. 如何判斷染色體中所內涵的訊息是否為程式設計者所需要的解答 , 就必須就由適應 度函數來評估好壞 , 因此合理客觀的適應度函數是影響基因演算法好與壞中決定性的關. 29.

(39) 鍵 。 由最佳化的誤差公式 (2.6) , 定義本研究的適應度定義函數為 : 1. ′. f itness(ǫ(t )) =. 1+. 1 Σǫ m′ j j. ǫj = kfj (t) − fcj (t)k • gj (t) : 時間為 t 時的特徵點 。 ′ ′ • gc j(t ) : 時間為 t 時的特徵點藉由旋轉與平移矩陣得出的轉換後特徵點 。. • ǫj : 為兩特徵點間的歐幾里德距離 。. 利用當下的特徵點平移旋轉推估前一時刻的特徵點位置 , 並對應前一時間的特徵點並計 算歐幾里德距離 , 距離越近表示旋轉與平移參數對這組地標關聯越是正確 , 最後把所有 地標關聯組的距離累加起來取平均之後 , 加 1 取倒數正規化當作是這整組染色體的適應 值 。 若有隨意項出現時 , 將會將會有一預先擬定好的隨意項誤差作為平衡 , 防止隨意項 過多或過少 。 4.1.4 交配突變機制. 由於染色體分為匹配基因與旋轉位移基因兩部分 , 故交配與突變方式較一般傳統的 基因演算法不同 。 且匹配基因部分更需注意交配與突變之後地標關聯的合理性 , 細節說 明如下 : • 交配 : 本研究中採用基因演算法的方式為兩點交配 , 其一為在匹配基因部分隨機選. 取一個基因為交配點 , 並交換此交配點後的所有匹配基因 , 其二是旋轉與平移基因 與匹配基因接合處 , 以增加子代的多樣性如圖4.4 。. 30.

(40) WĂƌĞŶƚс. ϭ. Ϯ. ϯ. ϰ. ϱ. ϲ. Ϭ. Ϭ. ϱ. WĂƌĞŶƚс. Ͳϭ. ϭ. Ϯ. Ͳϭ. ϰ. ϱ. ϯ. ϰ. Ϭ. ŚŝůĚс. ϭ. Ϯ. ϯ. Ͳϭ. ϰ. ϱ. ϯ. ϰ. Ϭ. ŚŝůĚс. Ͳϭ. ϭ. Ϯ. ϰ. ϱ. ϲ. Ϭ. Ϭ. ϱ. 圖 4.4: 交配示意圖. 圖 4.5: 突變示意圖 • 突變 : 本研究突變的方式為隨機選取 , 在匹配基因處移動旋轉參數組隨機選取一點 ,. 作為突變點 。 若突變點為隨意項 (−1) 則往左邊格子取最小數字取碰到 (−1) 或陣 列開頭為止 , 往右取最大數字 , 取碰到 (−1) 或陣列結尾為止 , 將此一大一小的數 字當作隨機突變地標的上下界 。 若突變點不為隨意項 (−1) 則判斷是否以達最高隨 意項的數量 , 若未達則變成 (−1) , 若達成則不予突變如圖4.5 。 在上述的交配與突變的過程中 , 由於地標關聯具有順序型 、 不重複性 , 固有許多不合邏 輯或不允許的子代產生 , 如圖4.6 這些不符合邏輯的子代將會保留至適應函數中 , 由適應 函數先行檢查染色體的順序性與重複性 , 並給予極低的適應度 , 使這些不合理的染色體 自然淘汰 。. 31.

(41) (a) 交配: 地標重複. (b) 交配: 地標順序有誤. (c) 突變: 地標重複. (d) 突變: 地標順序有誤. 圖 4.6: 不合邏輯的交配與突變 4.1.5 重置機制. 為了加大染色體的多元性以及加速尋找較佳的區域最佳解 , 我們設定了每 10 代便 會執行一次重置機制 , 每次重新啟動將會留下兩條最優秀的染色體以保留較佳的基因得 以傳承 , 接下來便是以亂數的方式來產生染色體 , 以增加搜尋範圍的多樣性 。. 32.

(42) 第5章 實驗與結果分析 5.1 機構設計與控制方法 在本研究我們所使用的是四輪型的機器人 , 本研究中所採用的機器人為四輪的機動 型機器人 , 機體前方設置一台雷射測距儀用以感測環境 , 機器人視圖如圖5.1 。 本實驗使 用灰色地板 , 四周用白色保麗龍板當作牆壁 , 使雷射測距儀所接受到的資料單純化 。. (a) 側視圖. (b) 正視圖. 圖 5.1: 機器人視圖. 本研究機器人採用 Intel Core i5 2467M 1.6 GHz CPU , 主機板採用 MI-HM65T 主 機板 , 4GB DDR3 RAM , 作業系統為 Windows 7 , 前方裝載 HOKUYO URG-04LXUG01 雷射測距儀 , 詳記規格請見表5.1 。. 馬達與無線控制方面我們使用利基科技所販售的“ Basic Commander ”如圖5.2 , 所 提供的馬達控制參數與速度表如圖5.3 , 並內建 2.4GHz 無線控制模組 , 利用搖桿控制機 33.

(43) 表 5.1: 雷射測距儀簡易規格表 HOKUYO URG-04LX-UG01. 解析度 (mm). 1. 精準度 (mm). 20 ∼ 1000: ± 30 20 ∼ 4000: ± 3% 量測距離. 量測距離 (mm). 20 ∼ 4000. 掃描角度 ( ◦ ). 240. 解析角度 ( ◦ ). 0.36. 掃描時間 (ms). 100. 圖 5.2: Basic commander 微處理器. 圖 5.3: 輪轉參數與速度關係. 34.

(44) 器人 , 使機器人得以遙控行動 。. 5.2 實驗架構 本研究實驗分為兩部分 , 第一部分 , 分別有 A 實驗與 B 實驗 , 兩個實驗主要是在 確定基因演算法的參數 , 使得演化式 SLAM 可調整至最佳狀態 。 第二部分 , 實地利用雷 射測距儀搭配機器人的運動實際量測實驗場地的參數值 。 5.2.1 第一部分調整基因演算法參數. 實驗 A 所用的兩個實驗場地皆為 寬 200 cm × 100 cm 的保麗龍圍起來的環境 , 場地 一如圖5.4 , 場地二如圖5.5 。 並採用 Intel Core i7 3770M 3.4 GHz CPU , 16GB DDR3 RAM 的模擬電腦來進行模擬 , 其計算效能約為機器人的 2 倍 。 實驗 A 將使用 100 、 200 、 500 、 1000 等代數 , 用以決定哪一種代數 , 使得適應性與所消耗的時間取得一個. 平衡 。 且分別列出旋轉與直行的兩主不同的移動方式 , 測試我們設計的演化式 SLAM 使 否可以推得出明顯不同的機器人移動參數 。 實驗 A 將由場地中選取兩種移動方式並觀 察更動代數所產生的結果 , 其中族群數固定為 50 交配率 20% 突變率 60% 特徵點個數 設為 10 個 。 • 場地一 : 向左旋轉 10 度 , 如圖5.6 , 且測得實驗數據如表5.2 。 向前進 10 公分 , 如圖5.7 ,. 且測得實驗數據如表5.3 。 • 場地二 : 向左旋轉 10 度 , 如圖5.8 , 且測得實驗數據如表5.4 。 向前進 10 公分 , 如圖5.9 ,. 且測得實驗數據如表5.5 。. 35.

(45) 表 5.2: 實驗 A 場地一向左旋轉 10 度演化代數關係 GA generations. 100. 200. 500. 1000. final fitness. 0.67. 0.73. 0.76. 0.76. average. 12.04. 9.21. 9.00. 7.94. min. 0.53. 0.59. 0.53. 0.70. 27.99 22.47. 22.02. 18.48. ǫj (mm). max time (s). 0.02. 0.04. 0.10. 0.18. ∆x (mm). 6.67. 6.67. 10.00. 3.33. ∆y (mm). -10.00. ∆θ (degree). 8.67. -6.67 -10.00 -10.00 8.33. 8.67. 8.33. 表 5.3: 實驗 A 場地一向前 10 公分演化代數關係 GA generations. 100. 200. 500. 1000. final fitness. 0.73. 0.73. 0.76. 0.80. average. 8.82. 6.51. 6.76. 5.39. min. 0.21. 0.76. 0.78. 0.12. max 22.97 17.78 17.95. 14.59. ǫj (mm). time (s). 0.02. 0.07. 0.13. 0.18. ∆x (mm). 6.67. 6.67. 3.33. 3.33. ∆y (mm) ∆θ (degree). 80.00 93.33 96.67 100.00 -4.33. 36. -4.33. -4.67. -4.33.

(46) 表 5.4: 實驗 A 場地二左轉 10 度演化代數關係 GA generations. 100. 200. 500. 1000. final fitness. 0.71. 0.73. 0.74. 0.77. average. 9.81. 9.58. 8.95. 7.51. min. 0.50. 0.53. 0.73. 0.46. ǫj (mm). max 25.09 23.79 21.87 18.97 time (s). 0.02. ∆x (mm). 0.04. 0.10. 0.18. 13.33 10.00 16.67 13.33. ∆y (mm). 0.00. ∆θ (degree). 10.00. 3.33. 0.00. 0.00. 9.67 10.00 10.00. 表 5.5: 實驗 A 場地二向前 10 公分演化代數關係 GA generations. 100. 200. 500. 1000. final fitness. 0.72. 0.74. 0.77. 0.77. average. 10.80. 9.71. 7.25. 5.94. min. 0.61. 0.79. 0.72. 0.38. ǫj (mm). max. 25.03 22.46 16.67 15.78. time (s). 0.02. ∆x (mm). 16.67. ∆y (mm) ∆θ (degree). 0.05. 0.11. 0.16. 6.67 10.00. 3.33. 100.00 86.67 96.67 93.33 0.00. 37. 0.33. -0.33. -0.33.

(47) (a) 實驗場地一相片. (b) 實驗場地一規格. (c) 實驗場地一雷射感測. 圖 5.4: 實驗場地一. 38.

(48) (a) 實驗場地二相片. (b) 實驗場地二規格. (c) 實驗場地二雷射感測. 圖 5.5: 實驗場地二. 39.

(49) (b) 向左旋轉 10 度時特徵點. (a) 未移動時特徵點. (c) 向左旋轉 10 度時示意圖. 圖 5.6: 實驗 A 場地一左轉 10 度特徵點 由兩個場地的實驗中我們可以得知 , 當演化代數越高所得到的適應度就越高 , 但相對的 時間也花得比較久 , 且適應度無太多成長 , 故我們選擇代數 100 暫定為最佳代數 , 以達 成高效率的應用 。 無論從場地一或場地二我們都可以看出旋轉與直線的最佳解明顯不同 , 由 表5.2 與 表5.4 中可看出 , ∆θ 是接近於所旋轉 10 度的標準解 , 且 ∆x 與 ∆y 也都 介於雷射測距儀本身量測誤差 3cm 內 。 表5.3 與 表5.5 中可看出 ∆y 也是接近於所前進 10cm 的標準解 , 而至於 ∆x 介於雷射測距儀本身量測誤差 3cm 內 , 但角度 ∆θ 的誤差. 稍微劇烈 , 推測原因由於往前移動牽扯到 3D 的縱深投影 , 越往前眼前的事物是會越兩 旁散開 , 是故若要修正這項誤差應可往 3D 投影方面去思考 。. 40.

(50) (b) 向前 10 公分時特徵點. (a) 未移動時特徵點. (c) 向前 10 公分時示意圖. 圖 5.7: 實驗 A 場地一向前 10 公分特徵點 5.2.2 第二部分調整特徵點個數. 實驗 B 由兩種實驗場地中選取兩種移動方式並觀察特徵點個數不同所產生的影響 , 其中 族群數固定為 50 交配率 20% 突變率 60% 代數設為 100 代 。 • 場地一 : 向左旋轉 10 度 , 如圖5.10 , 且測得實驗數據如表5.6 。 向前進 10 公分 : 如. 圖5.11 , 且測得實驗數據如表5.7 。 • 場地二 : 向左旋轉 10 度 , 如圖5.13 , 且測得實驗數據如表5.8 。 向前進 10 公分 : 如. 圖5.13 , 且測得實驗數據如表5.9 。. 41.

(51) 表 5.6: 實驗 B 場地一左旋 10 度特徵點點數不同的相互關係 特徵點個數 final fitness average ǫj (mm). min. 10. 15. 20. 25. 0.68. 0.75. 0.78. 0.79. 13.18 24.78 28.26. 44.49. 0.74. 0.80. 0.18. 0.35. max 31.74 62.38 86.47 129.57 time (s). 0.03. 0.03. 0.05. 0.05. ∆x (mm). 3.33. 6.67 10.00. 13.33. ∆y (mm). -6.67. -3.33. 0.00. -3.33. ∆θ (degree). 8.00. 8.33. 8.67. 8.67. 表 5.7: 實驗 B 場地一向前 10 公分特徵點點數不同的相互關係 特徵點個數. 10. 15. 20. 25. final fitness. 0.71. 0.72. 0.76. 0.79. average. 9.14. 19.41. 41.18. 44.04. min. 0.27. 0.15. 0.34. 0.49. max. 22.78. ǫj (mm). 56.16 114.96 129.16. time (s). 0.03. 0.04. 0.04. 0.06. ∆x (mm). 10.00. 3.33. 6.67. 6.67. ∆y (mm) ∆θ (degree). 106.67 103.33 -4.33. 42. -4.33. 90.00 100.00 -4.33. -4.33.

(52) 表 5.8: 實驗 B 場地二左旋 10 度特徵點點數不同的相互關係 特徵點個數 final fitness average ǫj (mm). min. 10. 15. 20. 25. 0.72. 0.72. 0.68. 0.68. 9.46 22.54. 45.98. 62.22. 0.36. 0.47. 0.50. 0.47. max 23.72 59.31 140.70 190.81 time (s). 0.06. 0.09. 0.10. 0.12. ∆x (mm). 10.00 20.00. 0.00. 3.33. ∆y (mm). -3.33 13.33. 0.00. -3.33. ∆θ (degree). 9.67 10.67. 9.67. 9.67. 表 5.9: 實驗 B 場地二向前 10 公分特徵點點數不同的相互關係 特徵點個數. 10. 15. 20. 25. final fitness. 0.72. 0.68. 0.70. 0.68. average. 11.68. 26.01. 48.93. 52.80. min. 0.58. 0.51. 0.07. 0.23. ǫj (mm). max 27.91. 72.15 143.54 169.28. time (s). 0.07. 0.07. 0.09. 0.10. x (mm). 10.00. 10.00. -6.67. -13.33. y (mm). 90.00 100.00 100.00 103.33. theata (degree). 0.00. 43. 0.00. -1.00. -1.00.

(53) (b) 向左旋轉 10 度時特徵點. (a) 未移動時特徵點. (c) 向左旋轉 10 度時示意圖. 圖 5.8: 實驗 A 場地二左轉 10 度特徵點 由實驗 B 場地一中我們可以看出特徵點越多 fitness 越高 , 場地二則反之 , 推測原因是因 為場地二的形狀較為複雜 , 共有 6 個可能的特徵點區域 , 當每區域的特徵點數量不一時 , 將可能造成前後特徵點對應不正確之情形 , 故場地二的 fitness 下滑 。 在實驗 B 中我們 也可以清楚的看到重置機制的效果 , 使得 fitness 呈現階梯狀的方式增長 , 並約在 40 代 左右 即達到一定水準的解 。. 44.

(54) (b) 向前 10 公分時特徵點. (a) 未移動時特徵點. (c) 向前 10 公分時示意圖. 圖 5.9: 實驗 A 場地二前進 10 公分特徵點 5.2.3 實驗小結. 由以上的兩個實驗 , 從實驗 A 中 , 我們可以明顯的從左轉 10 度的實驗中 ∆θ 不管在哪一 種代數 , 皆接近於我們量測的 10 度 , 且相距的適應值並沒有差距太多 。 同樣的情形 , 我 們也可以在前進 10 公分的實驗中的 ∆y 中看出來 , 皆接近於我們所設定的向前 10 公分 , 故我們可以選擇代數最小的以提供少的時間成本但得到不錯的結果 。 由 B 實驗中 , 我們 可以了解特徵點對於適應函數與時間是有影響的 , 當特徵點越多時 , 由於適應函數中的 m 將會越大 , 表示分母將會被縮小 , 適應度增加 , 但時間也相對地增加 。 無論從轉彎或. 45.

(55) 1.0. 0.8. 0.8. Fitness. Fitness. 1.0. 0.6 0.4 0.2. 0.6 0.4 0.2. 0.0 0. 20. 40. 60. GA iterations. 80. 0.0 0. 100. 40. 60. GA iterations. 80. 100. (b) 特徵點 15 點 33 ms. 1.0. 1.0. 0.8. 0.8. Fitness. Fitness. (a) 特徵點 10 點 26 ms. 20. 0.6 0.4 0.2. 0.6 0.4 0.2. 0.0 0. 20. 40. 60. GA iterations. 80. 100. (c) 特徵點 20 點 46 ms. 0.0 0. 20. 40. 60. GA iterations. 80. 100. (d) 特徵點 25 點 54 ms. 圖 5.10: 實驗 B 場地一左旋 10 度特徵點點數不同的相互關係 是直行 , 我們可以看出當增加一倍的特徵點時 , 跑完 100 代的時間也幾乎倍增 , 但適應 度卻沒有顯著的成長 , 故我們選擇著重在縮短時間上選擇較少的特徵點當做參數 , 使機 器人可以將硬體資源與時間 , 花費在其主要的工作任務上 , 而不是一直在準確的為自己 定位 , 而捨本逐末 。. 46.

(56) 1.0. 0.8. 0.8. Fitness. Fitness. 1.0. 0.6 0.4 0.2 0.0 0. 0.6 0.4 0.2. 20. 40. 60. GA iterations. 80. 0.0 0. 100. 1.0. 1.0. 0.8. 0.8. 0.6 0.4 0.2 0.0 0. 40. 60. GA iterations. 80. 100. (b) 特徵點 15 點 41 ms. Fitness. Fitness. (a) 特徵點 10 點 32 ms. 20. 0.6 0.4 0.2. 20. 40. 60. GA iterations. 80. 100. (c) 特徵點 20 點 43 ms. 0.0 0. 20. 40. 60. GA iterations. 80. (d) 特徵點 25 點 62 ms. 圖 5.11: 實驗 B 場地一向前 10 公分特徵點點數不同的相互關係. 47. 100.

(57) 1.0. 0.8. 0.8. Fitness. Fitness. 1.0. 0.6 0.4 0.2. 0.6 0.4 0.2. 0.0 0. 20. 40. 60. GA iterations. 80. 0.0 0. 100. 40. 60. GA iterations. 80. 100. (b) 特徵點 15 點 92 ms. 1.0. 1.0. 0.8. 0.8. Fitness. Fitness. (a) 特徵點 10 點 58 ms. 20. 0.6 0.4 0.2. 0.6 0.4 0.2. 0.0 0. 20. 40. 60. GA iterations. 80. 100. (c) 特徵點 20 點 101 ms. 0.0 0. 20. 40. 60. GA iterations. 80. (d) 特徵點 25 點 118 ms. 圖 5.12: 實驗 B 場地二左旋 10 度特徵點點數不同的相互關係. 48. 100.

(58) 1.0. 0.8. 0.8. Fitness. Fitness. 1.0. 0.6 0.4 0.2 0.0 0. 0.6 0.4 0.2. 20. 40. 60. GA iterations. 80. 0.0 0. 100. 1.0. 1.0. 0.8. 0.8. 0.6 0.4 0.2 0.0 0. 40. 60. GA iterations. 80. 100. (b) 特徵點 15 點 73 ms. Fitness. Fitness. (a) 特徵點 10 點 68 ms. 20. 0.6 0.4 0.2. 20. 40. 60. GA iterations. 80. 100. (c) 特徵點 20 點 94 ms. 0.0 0. 20. 40. 60. GA iterations. 80. (d) 特徵點 25 點 103 ms. 圖 5.13: 實驗 B 場地二向前 10 公分特徵點點數不同的相互關係. 49. 100.

(59) 第6章 結論與未來展望 6.1 結論 SLAM 是一種機器人定位的概念 , 相較於普遍的 GPS 、 AP 定位 、 固定式軌道定位 ,. 擁有了更多的彈性 , 也屏除了移動型機器人對外在設備的依賴 , 加強了機器人的自主性 與智慧性 。 而 SLAM 中最為困難的地標比對 , 往往使用機率模型或 ICP 等較耗運算 資源的方式做處理 , 花費大量時間在尋找優秀的解答 。 本研究之目的是利用基因演算法 實現即時定位與建立地圖系統 , 並且提出特徵點擷取以減少地標關聯與搜索的空間概念 , 使基因演算法可以較為快速的計算出機器人的位置 , 進而達成定位的目標 。 本論文以基因演算法為基礎 , 運用基因演算法解決地圖關聯的問題 , 再利用特徵點 擷取技術與雷射測距儀的環境掃描點特性 , 大幅降低基因演算法的搜尋時間 。 對於本研 究所使用之演算法可以獲得以下結論 : • 由實驗 A 與 B 的數據中 , 我們可以看出演化式 SLAM 明顯的區別出機器人轉彎. 與直線的差異 , 故使用本論文的方式實現於機動型機器人的定位是可行的 。 • 特徵點擷取技術可以有效的將地標數量控制在使用者自訂的數量內 , 可大大的降低. 基因演算法的搜尋空間 。 也可依照不同環境做更動 , 使得機器人更可適應不同環境 。 • 在實驗 B 中我們可以得知 , 當特徵點數量越多時所需要的計算時間越多 , 但 fitness 不一定會比較好 。 故選擇適當數量的特徵點將會在時間與效果上有著較好的. 優勢 , 也是演化式 SLAM 的重要研究課題 。 50.

(60) • 透過基因演算法搭配旋轉位移矩陣並設置特殊的染色體架構 , 順利的完成地標關聯 。. 藉由調整基因演算法的參數 , 可以依照使用者的需求來控制地圖關聯的精準度 。 • 藉由雷射測距儀的掃描特性剔除掉不合理的染色體 , 確實大幅降低機基因演算法在. 地標關聯的時間與搜尋空間 。 • 有別於使用多種感測器來達成 SLAM 系統的定位 , 本研究僅使用雷射測距儀來達. 成機器人的定位需求 , 使得機器人得以空出更多 I/O 空位以另作其他用途 。. 6.2 未來展望 • 在本研究中我們針對地標關聯藉由基因演算法搭配特徵點擷取完成機器人定位 , 然. 而由於環境運動的複雜 , 精確的地標關聯與機器人定位無法以簡單的適應函數表示 , 故之後若要增加其準確性 , 則可能仍需導入機率或其他感測器等作修正 。 • 透過研究與實驗證明 , 特徵點擷取結合基因演算法可以藉由基因演算法參數的調整 ,. 使得 SLAM 的運行速度加速但對其精確性影響並不大 , 未來只要搭配好良好的地 圖建立系統 , 相信可以完成精確的的 SLAM 系統 。 • 未來也可以利用卡曼濾波器 , 或是線性回歸的方式先將雷射環境掃描點 , 做雜訊過. 濾 , 使得地標變得更穩定 , 進而使關聯時的誤差減小 , 創造出更好的定位效果 。. 51.

(61) 參考文獻 [1]. S. Cho, T. Yang, M. Choi, and J. Lee, “Localization of a high-speed mobile robot using global features,” in Proceedings of the 4th International Conference and Agents 4th International Conference on Autonomous Robots, pp. 138–142, 2009.. [2]. R. Lin, Z. Wang, R. Sun, and L. Sun, “Image features-based mobile robot localization,” in Proceedings of the International Conference on Information and Automation, pp. 304–310, 2012.. [3]. S.-H. Kim, C. won Roh, S.-C. Kang, and M.-Y. Park, “Outdoor navigation of a mobile robot using differential GPS and curb detection,” in Proceedings of the IEEE International Conference on Robotics and Automation, pp. 3414– 3419, 2007.. [4]. J. Leonard and H. Durrant-Whyte, “Simultaneous map building and localization for an autonomous mobile robot,” in Proceedings of the Intelligent Robots and Systems, pp. 1442–1447 vol.3, 1991.. [5]. R. C. Smith and P. Cheeseman, “On the representation and estimation of spatial uncertainly,” International Journal of Robotics Research, vol. 5, no. 4, pp. 56–68, 1986.. [6]. S. Almansa-Valverde, J. C. Castillo, and A. Fernandez-Caballero, “Mobile robot map building from time-of-flight camera,” Expert Systems with Applications, vol. 39, no. 10, pp. 8835 – 8843, 2012.. [7]. B. Kim, B. Choi, E. Kim, and K. Yang, “Indoor localization using laser scanner and vision marker for intelligent robot,” in Proceedings of the 12th International Conference on Control, Automation and Systems (ICCAS), pp. 1010–1012, 2012.. 52.

(62) [8]. G. Tuna, K. Gulez, V. Gungor, and T. Veli Mumcu, “Evaluations of different simultaneous localization and mapping (SLAM) algorithms,” in Proceedings of the 38th Annual Conference on IEEE Industrial Electronics Society, pp. 2693–2698, 2012.. [9]. K. Lee, W. Chung, and K. Yoo, “Kinematic parameter calibration of a car-like mobile robot to improve odometry accuracy,” Transaction on Mechatronics, vol. 20, no. 5, pp. 582 – 595, 2010.. [10]. J. A. Batlle, J. M. Font-Llagunes, and A. Barjau, “Calibration for mobile robots with an invariant jacobian,” Robotics and Autonomous Systems, vol. 58, no. 1, pp. 10 – 15, 2010.. [11]. M.-J. Jung, H. Myung, S.-G. Hong, D. Park, H.-K. Lee, and S. Bang, “Structured light 2D range finder for simultaneous localization and map-building (SLAM) in home environments,” in Proceedings of the International Symposium on Micro-Nanomechatronics and Human Science, and The Fourth Symposium Micro-Nanomechatronics for Information-Based Society, pp. 371– 376, 2004.. [12]. Y. Zhao and X. Chen, “Prediction-based geometric feature extraction for 2D laser scanner,” Robotics and Autonomous Systems, vol. 59, no. 6, pp. 402– 409, 2011.. [13]. H. Wang, Y. Yan, and D. W. Wang, “A GA based SLAM with range sensors only,” in Proceedings of the 11th International Conference on Control Automation Robotics Vision (ICARCV), pp. 1796–1802, 2010.. [14]. L. Tesli, I. krjanc, and G. Klanar, “Using a LRF sensor in the Kalmanfiltering-based localization of a mobile robot,” ISA Transactions, vol. 49, no. 1, pp. 145–153, 2010.. [15]. F. A. Cheein, G. Steiner, G. P. Paina, and R. Carelli, “Optimized EIF-SLAM. 53.

(63) algorithm for precision agriculture mapping based on stems detection,” Computers and Electronics in Agriculture, vol. 78, no. 2, pp. 195 – 207, 2011. [16]. Y. Misono, Y. Goto, Y. Tarutoko, K. Kobayashi, and K. Watanabe, “Development of laser rangefinder-based SLAM algorithm for mobile robot navigation,” in Proceedings of the Annual Conference, pp. 392–396, 2007.. [17]. M. Montemerlo, S. Thrun, D. Koller, and B. Wegbreit, “FastSLAM: a factored solution to the simultaneous localization and mapping problem,” in Proceedings of the 8th national conference on Artificial intelligence, (Menlo Park, CA, USA), pp. 593–598, American Association for Artificial Intelligence, 2002.. [18]. Q. Zhang and R. Pless, “Extrinsic calibration of a camera and laser range finder (improves camera calibration),” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)., vol. 3, pp. 2301–2306 vol.3, 2004.. [19]. W. Tingting, Z. chongwei, B. Wei, and W. Mulan, “Mobile robot simultaneous localization and mapping in unstructured environments,” in Proceedings of the 2nd International Asia Conference on Informatics in Control, Automation and Robotics (CAR), vol. 1, pp. 116–120, 2010.. [20]. C.-H. Cheng and J.-X. Ye, “GA-based neural network for energy recovery system of the electric motorcycle,” Expert Systems with Applications, vol. 38, no. 4, pp. 3034 – 3039, 2011.. [21]. Z. cai CAO, Y. tao ZHAO, and Y. li FU, “Research on point stabilization of a wheeled mobile robot using fuzzy control optimized by GA,” The Journal of China Universities of Posts and Telecommunications, vol. 18, no. 5, pp. 108 – 113, 2011.. [22]. K. Samsudin, F. A. Ahmad, and S. Mashohor, “A highly interpretable fuzzy rule base using ordinal structure for obstacle avoidance of mobile robot,” 54.

(64) Applied Soft Computing, vol. 11, no. 2, pp. 1631 – 1637, 2011. The Impact of Soft Computing for the Progress of Artificial Intelligence. [23]. B. Fernandez-Gauna, I. Marques, and M. Grana, “Undesired state-action prediction in multi-agent reinforcement learning for linked multi-component robotic system control,” Information Sciences, vol. 232, no. 0, pp. 309 – 324, 2013.. [24]. I. Hassanzadeh and S. Sadigh, “Path planning for a mobile robot using fuzzy logic controller tuned by GA,” in Proceedings of the 6th International Symposium on Mechatronics and its Applications, pp. 1–5, 2009.. [25]. M. Liu, S. Huang, and G. Dissanayake, “Feature based SLAM using laser sensor data with maximized information usage,” in Proceedings of the IEEE International Conference on Robotics and Automation, pp. 1811–1816, 2011.. [26]. M. Begum, G. K. Mann, and R. G. Gosine, “Integrated fuzzy logic and genetic algorithmic approach for simultaneous localization and mapping of mobile robots,” Applied Soft Computing, vol. 8, no. 1, pp. 150–165, 2008.. [27]. Holland and J. H., Adaptation in natural and artificial systems. Cambridge, MA, USA: MIT Press, 1992.. [28]. Y. Zhao and B. Yuan, “A new affine transformation: its theory and application to image coding,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 8, no. 3, pp. 269–274, 1998.. [29]. G. Wolberg and S. Zokai, “Robust image registration using log-polar transform,” in Proceedings of the International Conference on Image Processing, vol. 1, pp. 493–496 vol.1, 2000.. [30]. A. Nuchter, H. Surmann, K. Lingemann, J. Hertzberg, and S. Thrun, “6d SLAM with an application in autonomous mine mapping,” in Proceedings of the IEEE International Conference on Robotics and Automation, vol. 2, pp. 1998–2003 Vol.2, 2004. 55.

(65) [31]. A. Nuchter, K. Lingemann, J. Hertzberg, and H. Surmann, “6d SLAM with approximate data association,” in Proceedings of the 12th International Conference on Advanced Robotics, pp. 242–249, 2005.. [32]. K. Ohno and S. Tadokoro, “Dense 3D map building based on LRF data and color image fusion,” in Proceedings of the International Conference on Intelligent Robots and Systems, pp. 2792–2797, 2005.. [33]. G. Yan and L. L. Zhou, “Integrated fuzzy logic and genetic algorithms for multi-objective control of structures using MR dampers,” Journal of Sound and Vibration, vol. 296, pp. 368–382, 2006.. [34]. A. Rusdinar, J. Kim, and S. Kim, “Error pose correction of mobile robot for SLAM problem using laser range finder based on particle filter,” in Proceedings of the International Conference on Control Automation and Systems, pp. 52–55, 2010.. [35]. H. C. Roh, C. H. Sung, M. T. Kang, and M.-J. Chung, “Fast SLAM using polar scan matching and particle weight based occupancy grid map for mobile robot,” in Proceedings of the 8th International Conference on Ubiquitous Robots and Ambient Intelligence, pp. 756–757, 2011.. [36]. D. S. Roland Siegwart, Illah Reza Nourbakhsh, Autonomous Mobile Robotics. The MIT Press, 2 ed., February 2011.. [37]. N. N. Singh, A. Chatterjee, A. Chatterjee, and A. Rakshit, “A two-layered subgoal based mobile robot navigation algorithm with vision system and IR sensors,” Measurement, vol. 44, no. 4, pp. 620–641, 2011.. [38]. C.-C. Tsai, H.-C. Huang, and C.-K. Chan, “Parallel elite genetic algorithm and its application to global path planning for autonomous robot navigation,” IEEE Transactions on Industrial Electronics, vol. 58, no. 10, pp. 4813–4821, 2011.. 56.

(66) [39]. L. Cheng, C.-D. Wu, and Y.-Z. Zhang, “Indoor robot localization based on wireless sensor networks,” IEEE Transactions on Consumer Electronics, vol. 57, no. 3, pp. 1099–1104, 2011.. [40]. R. Kaushik and J. Xiao, “Accelerated patch-based planar clustering of noisy range images in indoor environments for robot mapping,” Robotics and Autonomous Systems, vol. 60, no. 4, pp. 584–598, 2012.. [41]. A. Tuncer and M. Yildirim, “Dynamic path planning of mobile robots with improved genetic algorithm,” Computers and Electrical Engineering, vol. 38, no. 6, pp. 1564–1572, 2012.. 57.

(67)

數據

圖 2.3: 雷射測距儀極座標示意圖 (a) 機器人在第一時刻偵測出地標 (b) 機器人在第二時刻偵測出地標 圖 2.4: 地標關聯示意圖 在公式 (2.6) 中 其結果越小 , 表示 P (t + 1) 經由 θ, ∆x, ∆y 轉換後 , 越接近 P (t) 亦表 示此圖形比對是吻合的 。 反之若公式 (2.6) 中 , 其結果越大 , 則表示 P (t + 1) 以 θ, ∆x, ∆y 轉換至 P (t) , 的圖形較不吻合 。 所以利用簡易的仿射變換公式即可將複雜的地標關 聯轉化成最佳化問題 。
圖 3.3: 擷取端點特徵點 3.2 擷取特徵點 雷射測距儀是一個極座標系統的感測器 , 故由公式 (2.4) 可將極座標轉換成直角坐 標系 , 並生成 t 時的雷射測距儀環境感測圖 , 與 t 時的點集合 P (t) = [p 1 (t), p 2 (t),
圖 3.5: 鋸齒狀問題 (a) 未擷取特徵點共 57 個地標 (b) 擷取特徵點後 5 個地標 圖 3.6: 特徵點簡化示意圖 圖形的鋸齒狀而有取樣錯誤的情形發生如圖 3.5 。 故 k ≥ 3 以上為優 。 • 選取特徵點 : 為了使基因演算法較簡易 , 本研究每次的環境掃描將擷取固定數量的 m 個特徵點來比對 , 所以我們擬定一個權重值 w , 為每個特徵點制定權重 , 直線種 類的權重計算公式為 : w = |z| 轉角部分的權重計算公式如下 : 1
圖 3.7: 特徵點示意圖 由於 |z| ≥ 1 固可確保此種特徵點一定採納 。 依權重大小排序特徵點 , 取其前 m 個當作最後輸出的特徵點 , 可得 : F (t) = [f 1 (t), f 2 (t),
+7

參考文獻

相關文件

Mehrotra, “Content-based image retrieval with relevance feedback in MARS,” In Proceedings of IEEE International Conference on Image Processing ’97. Chakrabarti, “Query

in Proceedings of the 20th International Conference on Very Large Data

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks,” The 16th IEEE International Conference on Computer Communications

Godsill, “Detection of abrupt spectral changes using support vector machines: an application to audio signal segmentation,” Proceedings of the IEEE International Conference

Shih and W.-C.Wang “A 3D Model Retrieval Approach based on The Principal Plane Descriptor” , Proceedings of The 10 Second International Conference on Innovative

D.Wilcox, “A hidden Markov model framework for video segmentation using audio and image features,” in Proceedings of the 1998 IEEE Internation Conference on Acoustics, Speech,

[16] Goto, M., “A Robust Predominant-F0 Estimation Method for Real-time Detection of Melody and Bass Lines in CD Recordings,” Proceedings of the 2000 IEEE International Conference

Harma, “Automatic identification of bird species based on sinusoidal modeling of syllables,” in Proceedings of IEEE International Conference on Acoustics, Speech,