• 沒有找到結果。

居家型移動機器人之軟硬體設計與控制

N/A
N/A
Protected

Academic year: 2021

Share "居家型移動機器人之軟硬體設計與控制"

Copied!
126
0
0

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

全文

(1)國立臺灣師範大學應用電子科技學系 碩士論文. 指導教授:呂藝光博士 王偉彥博士 居家型移動機器人之軟硬體設計與控制 The Design and Control of Home Mobile Robots. 研究生:謝伯楷. 撰. 中 華 民 國 九十八年六月.

(2)

(3)

(4) 居 家 型 移 動 機 器 人 之 軟 硬 體 設 計 與 控 制. 學生:謝伯楷. 指導教授:呂藝光 博士 王偉彥 博士. 國立臺灣師範大學應用電子科技學系碩士班. 摘. 要. 本論文主要為設計與研製一居家移動機器人之軟、硬體架構,希望本移動機 器人能在動態且複雜的居家環境中,成為能自我引導與全方位移動的自主性移動 機器人。在複雜且動態的居家境中,可藉著全方位移動機器人敏捷的行動能力, 完成居家照護的工作。本研究主要完成整合與設計下列各部份軟硬體架構,包 括:全方向輪的運動方式、DC 連續旋轉馬達的控制、場域可程式化邏輯閘陣列 (FPGA)、影像訊號之距離量測系統與五軸機器手臂的控制。 另外,本論文利用下列兩個實驗來驗證所研製的居家移動機器人的效能與可 行性。第一個實驗為利用模糊控制器控制居家照護機器人的移動,以便執行抓取 目標物的工作,進而完成使用者所指定將某一目標物移至另一地點的任務。第二 個實驗是先利用以 DNA 為基礎的適應性學習法則模擬居家移動機器人完成自動 導航任務,之後將其演化後的參數使用於所研製的居家移動機器人上並實際測試 居家移動機器人的自動導航能力。. 關鍵字:移動機器人,全方向輪,適應性學習法。. i.

(5) The Design and Control of Home Mobile Robots Student: Po-Kai Hsieh. Advisors:Dr. Yih-Guang Leu Dr. Wei-Yen Wang. Institute of Applied Electronics Technology National Taiwan Noraml University. ABSTRACT. The objective of this thesis is to design and control a home mobile robot which is capable of the omni-directional and autonomous mobility in dynamic and complex environments. In narrow home environments, the mobile robot can perform nursing work by the ability of omni-directional mobility. This study includes the DC motor control of three omni-directional wheels, Field Programmable Gate Array (FPGA), the image-based distance measuring system and the control of a five-axis robotic arm. In addition, two experiments are given to demonstrate the applicability and feasibility of the proposed home mobile robot. The first is that a fuzzy controller is used to control the mobility of the home mobile robot such that the robot can move an assigned object from one location to another. The second is that first, through simulation, the adaptive DNA-based learning approach is used in the home mobile robot navigation, and then using a simple experiment verifies the ability of the robot navigation. Keywords: Mobile robots, omni-directional wheels, adaptive learning approach.. ii.

(6) 誌. 謝. 本論文感謝指導教授呂藝光博士兩年來於學業上的細心指導與諄諄教誨, 讓我的碩士生涯中獲益良多,不僅在專業領域上,在人格品德上亦是;感謝系主 任洪欽銘教授與共同指導教授王偉彥博士於研究領域與生活上的協助與建議,讓 我的研究與生活更加地進步與充實;亦感謝華夏技術學院電子系的謝衛民老師, 在嵌入式系統上的指導與協助,讓我對軟硬體系統有著更深的認識;特別感謝口 試委員蘇順豐博士與陶金旺博士針對論文內容給予的寶貴意見與指正,讓本論文 更臻完善。 同時,感謝實驗室的同學:建豪、建佑、建宏、俊堯、正皓與名峰,兩年 的生活因為有你們而多彩多姿,患難與共的生活是永難忘懷的回憶。感謝學弟嘉 良與皓程在實驗上的幫忙,還有學弟皓勇、弨廣、建宏與暉翔在生活上的協助與 配合,祝你們之後的碩士生涯能順心如意。 最後,僅將本論文獻給一路上支持我的施涵與家人們:爸爸、媽媽、姊姊 與弟弟,因為有你們給予我的安慰、陪伴與鼓勵,才能讓我順利地完成碩士學業; 並感謝這兩年來所有關心與幫助我的人,祝福你們都能平安快樂。. iii.

(7) 目. 錄. 中文摘要.......................................................................................................................... i 英文摘要......................................................................................................................... ii 誌. 謝........................................................................................................................iii. 圖 目 錄........................................................................................................................ vi 表 目 錄........................................................................................................................ ix 第一章. 緒論 .............................................................................................................. 1. 1.1. 研究背景與動機 .......................................................................................... 1. 1.2. 研究目的 ...................................................................................................... 4. 1.3. 研究方法 ...................................................................................................... 4. 第二章. 全向輪移動機器人 ...................................................................................... 5. 2.1. 移動機器人之背景 ...................................................................................... 5. 2.2. 三輪全向輪移動機器人之模型 .................................................................. 6. 2.3. 三輪全向輪移動機器人之動態方程式...................................................... 8. 2.4. 三輪全向輪移動機器人之運動方式........................................................ 11. 第三章. 模糊邏輯系統與遺傳演算法 .................................................................... 15. 3.1. 模糊邏輯系統之理論背景 ........................................................................ 15. 3.2. 模糊邏輯系統 ............................................................................................ 16 3.2.1. 基本架構 ......................................................................................... 16. 3.2.2. 模糊規則庫 ..................................................................................... 17. 3.2.3. 模糊推論引擎................................................................................. 19. 3.2.4. 模糊化 ............................................................................................. 20. 3.2.5. 解模糊化 ......................................................................................... 22. 3.3. 遺傳演算法的理論背景與基礎 ................................................................ 23. 3.4. 傳統遺傳演算法 ........................................................................................ 24 3.4.1. 傳統遺傳演算法之架構................................................................. 24. iv.

(8) 3.4.2 3.5. 傳統遺傳演算法之演化程序......................................................... 26. DNA 遺傳演算法 ...................................................................................... 29 3.5.1. DNA 遺傳演算法之理論背景 ....................................................... 30. 3.5.2. DNA 遺傳演算法之演化操作 ....................................................... 31. 第四章. 全向輪移動機器人之適應性學習法則.................................................... 34. 4.1. 以 DNA 為基礎的適應性學習法則 ......................................................... 34. 4.2. 全向輪移動機器人之路徑模擬 ................................................................ 36. 4.3. 模擬結論 .................................................................................................... 44. 第五章. 居家型移動機器人之硬體系統架構與設計............................................ 45. 5.1. 機構設計 .................................................................................................... 45. 5.2. 硬體系統架構說明 .................................................................................... 52 5.2.1. DC 連續旋轉馬達 .......................................................................... 52. 5.2.2. DC 馬達控制器 .............................................................................. 53. 5.2.3. 82G516 單晶片 ............................................................................... 56. 5.2.4. 步進馬達及其驅動電路................................................................. 60. 5.2.5. 五軸機器手臂................................................................................. 62. 5.2.6. Altera DE2 FPGA 與 DC2 CCD .................................................... 63. 5.2.7. 電源裝置 ......................................................................................... 74. 5.3. 以影像訊號為基礎之距離量測系統........................................................ 77. 5.4. 整合軟、硬體裝置 .................................................................................... 81. 第六章. 居家型移動機器人之實驗結果 ................................................................ 84. 6.1. 實驗一:依使用者要求抓取目標物........................................................ 84. 6.2. 實驗二:沿直線牆面的自動導航任務.................................................... 98. 6.3. 實驗結論 .................................................................................................. 104. 第七章. 研究結論與建議 ...................................................................................... 106. 參考文獻..................................................................................................................... 107 自. 傳..................................................................................................................... 113. v.

(9) 圖 目 錄 圖 2-1. 全方向輪底盤結構圖………………….……………………………….....6. 圖 2-2. 全向輪 (A) TRANSWHEEL (B) OMNIWHEEL ....…….…………………….7. 圖 2-3. 全向輪上的參數設定………………….………………………………….8. 圖 2-4. 全方向輪……………………………….……………………………..….11. 圖 2-5. 全方向輪的構造圖…………….……………..………………………….12. 圖 3-1. 模糊邏輯系統的基本架構………………...…………………………….17. 圖 3-2. 單點型歸屬函數圖形…………………..…...………………………..….20. 圖 3-3. 三角形歸屬函數圖形………………..…………………………………..21. 圖 3-4. 梯形歸屬函數圖形………………..……………….………….…………21. 圖 3-5. 高斯型歸屬函數圖形………………..…………….………….…………22. 圖 3-6. 傳統遺傳演算法之架構………...……………………………………….25. 圖 3-7. 輪盤式選擇示意圖……………..…….………………………………….27. 圖 3-8. 單點交配……………………...………………………………………….28. 圖 3-9. 二點交配………………..………………….…………………………….28. 圖 3-10. 突變表示方式 (A)二進制 (B)整數…..………………………………….29. 圖 3-11. DNA 中染色體與基因的關係 ……….……………………….……….31. 圖 3-12. DNA 染色體的交配操作 (A)單點交配、(B)二點交配……..………….32. 圖 3-13. DNA 染色體的突變操作..………...….…………………………………32. 圖 3-14. DNA 染色體的病毒操作…………….………………………………….33. 圖 3-15. DNA 染色體的酵素操作……...……….………………………………...33. 圖 4-1. DNA 染色體和轉動角度的對應關係圖………..……………………….35. 圖 4-2. DNA 染色體的轉換機制..…....……….………...……………………….35. 圖 4-3. 模擬環境的定義……….……...……….……………..………………….37. 圖 4-4. 全向式移動機器人在狀況一的軌跡….………………..……………….37. 圖 4-5. 全向式移動機器人在狀況一中的適應函數值.…….……….………….38. vi.

(10) 圖 4-6. 狀況二中演化 10 代後的(A)軌跡、(B)適應函數值………..…………….39. 圖 4-7. 狀況二中演化 2000 代後的(A)軌跡、(B)適應函數值……….……….….40. 圖 4-8. 狀況三中演化 10 代後的(A)軌跡、(B)適應函數值…………….….…….42. 圖 4-9. 狀況三中演化 2000 代後的(A)軌跡、(B)適應函數值…………..……….43. 圖 5-1. 底盤輪子配置圖…………………………...……………..…………….. 45. 圖 5-2. 高度及擺設簡圖…...……………….……...……………..…………….. 46. 圖 5-3. 支撐 DC 旋轉馬達的 L 型板.…………………………..……………….. 46. 圖 5-4. 圓形底盤示意圖....………………………...………………..………….. 47. 圖 5-5. 圓盤與 L 型版組合圖…..…….……………...………………………….. 47. 圖 5-6. 馬達與全向輪組合圖…………………….....…………………………...48. 圖 5-7. 架高初始圖…..………………..…………….………………………….. 48. 圖 5-8. 工程圖 (A)-(G) ..……..…………………...…...…………………….…..52. 圖 5-9. 直流馬達扭力與功率、效率、電流、轉速關係圖………....………..….53. 圖 5-10. 操作模式一:(A) 連接圖 (B) PWM 脈波圖....……………….....…..….55. 圖 5-11. 操作模式二:(A) 連接圖 (B) PWM 脈波圖....……………….....…..….55. 圖 5-12. MPC 82G516 AF 周邊電路以及外部連接電路……………………..….57. 圖 5-13. 步進馬達及其驅動電路實圖……………………..………..…….…..….60. 圖 5-14. 步進馬達驅動電路圖……………...………..……………..……..…..….61. 圖 5-15. FT5754 內部電路圖……………………....……………..…………….....61. 圖 5-16. 機器手臂與 IC 82G516 的連接方式……...……………..………..……..62. 圖 5-17. DE2 發展板說明……………………………………………………...….64. 圖 5-18. DE2 發展板的方塊圖………………………………………………...….65. 圖 5-19. 反彈跳按鈕開關的去抖法…………………………………………...….66. 圖 5-20. 指撥開關與反彈跳按鈕開關的電路說明…………………………...….67. 圖 5-21. 七段顯示器的電路說明……………………………………………...….68. 圖 5-22. 27MHZ 與 50MHZ 時脈訊號的電路說明…………………………...….68. 圖 5-23. 40-PIN 腳位圖及保護電路裝置 .…………………………………...….69. vii.

(11) 圖 5-24. 8-MBYTE SDRAM 的腳位規劃圖…………………………………...…. 71. 圖 5-25. 512-KBYTE SRAM 的腳位規劃圖…………………………………...…. 71. 圖 5-26. 4-MBYTE FLASH MEMORY 的腳位規劃圖…………………………...…. 72. 圖 5-27. DE2 與 DC2 連接圖..………………………………………………...…. 73. 圖 5-28. TRDB_DC2 的 內 部 模 組 …..……………………………………...…. 74. 圖 5-29. 12V 鉛蓄電池(WP1221W)…………………………………………...….75. 圖 5-30. 放電時間與電壓關係圖……………………………………………...….75. 圖 5-31. 12V 輸入轉換 5V 輸出電路.………………………………………...….76. 圖 5-32. IBDMS 原 理 ………………………………………………………...….78. 圖 5-33. 距 離 關 係 圖 ….……………………………………………………...….78. 圖 5-34. IBDMS 之 FPGA 流 程 圖 ..………………………………………...…. 79. 圖 5-35. 兩 雷 射 亮 點 之 間 隔 ………………………………………………...….80. 圖 5-36. 硬 體 裝 置 方 塊 圖 …………………………………………………...….81. 圖 5-37. 居 家 照 護 移 動 機 器 人 (底 層 )……………………………………...….82. 圖 5-38. 居 家 照 護 移 動 機 器 人 (第 一 層 ) …..……………………………...….82. 圖 5-39. 居 家 照 護 移 動 機 器 人 (第 二 層 ) ..………………………………...….83. 圖 5-40. 居 家 照 護 移 動 機 器 人 (全 圖 ). ….………………………………...….83. 圖 6-1. 實驗一:環境配置圖……..…………………………………………...….84. 圖 6-2. 實驗一流程圖…………..………………..…………………………...….85. 圖 6-3. 規劃距離(H)的歸屬函數 ...……..…………………………………...….86. 圖 6-4. 規劃畫素差值(PIX)的歸屬函數 ………..…………………………...….86. 圖 6-5. 輸出整體角度(ANG)的歸屬函數.…………………………………….....87. 圖 6-6. 實驗一過程 (A)~(AD) ....…..……………………………………………97. 圖 6-7. 實驗二:環境配置圖……..………………..………………………...….98. 圖 6-8. 實驗二過程 (A)~(Z) ……..………………...………………………......104. viii.

(12) 表 目 錄. 表 3-1. 模糊規則表…………………………………………………………........18. 表 3-2. 模糊推論機制之比較…………………………………………..…. ........19. 表 3-3. 密碼子與氨基酸之對應關係………………………….………......…….30. 表 5-1. HB-25 規格…………………………………………….………......…….54. 表 5-2. HB-25 接腳說明……………………………………….………......……..56. 表 5-3. IC 82G516 腳位……………………………….……….………......……..58. 表 5-4. GPIO_1 的腳位規劃…………………………………..………......……. 70. 表 6-1. 輸出角度之模糊規則表….. …………………………..………......…….87. ix.

(13) 第一章 緒論 在本章節中,首先介紹居家護理移動機器人之硬體機構及使用的全向輪的 理論背景;其次,針對所研究的模糊邏輯系統與遺傳演算法理論背景,提出文獻 說明移動機器人如何加入演算法,並闡述本論文對於移動機器人的演算法整合、 設計及研製一居家護理移動式機器人之硬體機構。最後,說明研究的目的及研究 方法。. 1.1. 研究背景與動機 近年來,由於人口高齡化、少子化與高度商業化造成社會結構的巨變,以. 及個人對自我健康預防的重視,以致於對居家護理的要求越來越高。舉凡老弱婦 孺的照護、行動不便身障者的輔助以及自我健康的監測等。因此,發展一移動式 居家護理系統是有其必要性的。 針對使用智慧型機器人來減輕照護負擔和增加照護品質,已經受到許多先 進國家的重視。而目前對於智慧型機器人的研究上也有許多突破,使機器人的應 用得以拓展到人類日常生活之領域。未來,如何拓展應用於居家護理工作的智慧 型機器人,以及提供居家成員長期非察覺性(non-conscious)自動健康預防服務與 一般性老人小孩的照護,將是研究智慧型機器人應用上的一大課題。 現今社會上,人口老化的問題與醫療照護人力不足的情況越來越嚴重,如 何提供完整居家護理照護更顯得重要。然而,目前的研究大都主要集中在老人與 身障者的居家照護或居家遠距醫療服務,較少探討居家長期、動態且非覺察式之 健康預防護理監測系統並整合至智慧型居家環境中。因此,若智慧型移動式機器 人可以提供動態執行居家相關護理照護與成員長期、動態且非察覺式健康監測, 則可解決上述問題。 針對移動機器人的底盤結構和輪子的設計,這些設計的好壞是會影響機器 人進行任何方向移動的效果,國外的論文中有 3 輪[1]-[2],4 輪[3]-[4]的結構設計。 [5]針對移動式機器人發展一個十階的非線性動態模型包含行駛的輪子及地面之. 1.

(14) 間的滑動關係。[6]對於不同操控及行駛輪子結合的移動式機器人發展出一種輪子 滑動的角速度,並僅考慮運動學上的表示式。[7]對於輪子滑動的移動式機器人所 推導出的動態模型是使用非線性控制中的易接近性及控制性等相關理論。[8]對於 非完整移動式機器人之滑動提出一個追蹤模型的描述。[9]提出一種導航系統的實 驗估算,經由多個感測器回授,來處理自主的車輪滑動。[10]將全方位移動機器 人去作一些服務的應用。對於移動機器人具有滑動之相關研究方面,[11]設計出 的車子能夠避免輪胎打滑。[12]對於移動機器人設計出控制器,此控制器包含了 輪子打滑的偵測及補償。 移動式機器人可以透過學習法則,進而在真實的複雜環境中達成任務。因 此,為了在狹窄的環境中完成任務,移動式機器人往往採用全向輪 (omni-directional wheels)的機構[13]。透過使用全向輪,移動式機器人不需要大量 的空間去旋轉,而是以滾動的方式去旋轉,由於並非以拖動的方式運動,因此會 減少像一般傳統車輪的摩擦力問題。 以控制系統來說,傳統的控制系統需要明確地數學模型的建立,但不是每 個控制系統的數學模型都可以明確的建立。大部分的工程理論都是以近似方程式 來描述其性質,當問題越複雜時,所需的未知變數就會越多,其數學模型就越難 建立。因此,在模糊邏輯系統中,我們可以利用系統的方式來將人類的知識公式 化,對其作系統化的整理,即為模糊規則庫,進而取代繁雜的數學模型。雖然模 糊系統理論所描述的現象是模糊的,可能在建構受控系統會有些微誤差,但是其 理論是明確的,可在控制過程中達到所期望的結果,因此能完整地應用到實際地 控制系統上。 1965 年,模糊數學理論由 Lotfi A. Zadeh 在 IEEE 所提出[14],之後在 1968 年再提出模糊演算法的概念。而模糊控制器的基本架構是由倫敦大學的 M. H. Mamdani 與 Assilian 共同建立,其中 Mamdani 提出以 IF-THEN 的對話方式,用 語意變數來規劃出模糊規則。模糊控制系統具有語意資訊及邏輯控制的能力 [15]-[16],也因為模糊邏輯系統開始被廣泛地使用,許多研究將模糊控制系統應 用於移動機器人上[17]再加上 Lyapunov 以及適應控制方法來穩定系統。模糊系統. 2.

(15) 在傳統上是使用梯度下降法來訓練權重值,在訓練的過程中,往往會陷入區域最 佳解的窘境,這是利用此一最佳化演算法會產生收斂性的問題。因此,近來的研 究嘗試使用遺傳演算法(Genetic Algorithms)來克服此收斂性的問題[18]-[20]。 遺傳演算法是一個對選擇淘汰及遺傳學的自然性搜尋演算法,其概念可以 分成四個部分來說明。首先,以人工的方式將一個族群的參數解編碼成染色體; 其次,選擇較好的參數解來實行染色體的重組;第三,執行複製、交配、突變或 是其他的染色體操作;最後,用這些演化後的結果來取代原交配池的參數解,以 獲得新的子代。許多的研究已經顯示出遺傳演算法可以得到全域最佳解,例如影 像辨識、控制系統等。在模糊系統的最佳化設計上,不論是理論或一些實驗的結 果,皆已證實遺傳演算法在選擇淘汰及產生模糊 IF-THEN 規則這方面,為較佳 的選擇之一[21]-[22]。但是,傳統的遺傳演算法仍有一些限制,像是遺傳演算法 的效能與族群大小是息息相關的,而且一些在基因層面的生物學操作,並不是能 很有效地採用。因為 DNA (deoxyribonucleic acid)是自然界自然存在的事物,有其 與生俱來的編碼方式,且所編碼出的基因資訊,可以形成一個獨立的染色體特 性。現今,已有些研究員開始試著使用生物的 DNA 資訊編碼來改善傳統遺傳演 算法的限制[23]-[27]。 在本篇論文中提出一個以 DNA 為基礎的適應性學習法則模擬移動式機器 人沿著三種牆面行走。這是因為以 DNA 為基礎的適應性學習法則可以避免傳統 遺傳演算法的一些限制,透過使用以 DNA 為基礎的適應性遺傳演算法,可以使 有全向輪的移動式機器人適應在狹窄的居家環境中。最後,我們將設計並研製一 居家護理移動機器人的軟、硬體架構,結合以直流馬達驅動全方向輪並在移動機 器人上架設影像測距系統與機器手臂,以期在智慧型居家環境中,可自我導引與 全方位移動之移動機器人。本論文以實作移動機器人的任務實驗,說明了所設計 的居家護理移動式機器人效能,藉由全方位移動機器人敏捷的能力,能在動態的 居家環境中來執行護理工作。. 3.

(16) 1.2. 研究目的 本論文主要為設計並研製一居家型移動機器人之軟、硬體架構,希望在智. 慧型居家環境中,能自我導引與全方位移動之移動機器人。藉由全方位移動機器 人敏捷的能力,能在動態的居家環境中來執行護理工作。研究並整合全方向輪的 運動方式、DC 馬達控制、驅動電路、PWM 控制、FPGA、以影像訊號為基礎之 距離量測系統及五軸機器手臂。 本文末實做兩個整合性實驗,為依使用者需求抓取目標物與對直線牆面的 自動導航任務,用以驗證居家型移動機器人效能。第一個實驗為利用模糊控制器 修正並控制居家型機器人,從起點至目標位置之間來回的移動路徑,在去回的過 程中,正確地抓取目標物送至使用者面前,進而完成使用者所指定將某一目標物 移至另一地點的任務。而在第二個實驗之前,先使用第四章提出的「以 DNA 為 基礎的適應性學習法則」,模擬居家型移動機器人自動導航任務,將其演化後的 參數使用於移動機器人上並實際測試,完成居家型移動機器人的自動導航任務。. 1.3. 研究方法 本論文採用的研究方法如下: 1. 研究全方向輪的動態方程式與運動方式。 2. 透過 FPGA 上的 CCD 的影像測距方式與步進馬達的旋轉步數,換算出. 目標物相對於移動式機器人的距離與角度。 3. 以本論文所提出的 DNA 染色體的編碼方式,其染色體的基因代表著移. 動式機器人所行走的角度資訊,因此規劃角度範圍讓 DNA 染色體隨機 產生此角度範圍內的基因,並以模擬方式呈現。 4. 根據真實的環境,加以影像測距方式及全方向輪運動方程式的輔助,藉. 由受照護者所指定將某一目標物移至另一目標物的任務,測試移動式機 器人整體的效能。 5. 將第 3 點模擬演化後的參數使用於移動機器人上並實際測試,進而完成. 居家照護移動機器人的自動導航任務。. 4.

(17) 第二章 全向輪移動機器人 本章節首先討論三輪全向輪移動機器人的動態模型,包括其輪子與接觸面 之間的滑動,並以圖示說明三輪全向輪的構造與設計方式,與其動態模型的建 立。其次將討論三輪全向輪移動機器人的運動方程式,與實現三輪全向輪移動機 器人運動的方式。. 2.1. 移動機器人之背景 根據一些文章顯示[28]-[29],近幾年來研究人員對於移動機器人有很大的. 關注,一些研究員亦已開始考慮其輪子和運動表面間的滑動。Choi 和 Sreenivasan 設計連接軸長度可改變的聯結車,排除運動學上轉動表面的滑動[30];Hamdy 和 Badreddin 為了一個以輪子行走的移動機器人,開發一個十階的非線性動態方程 式[31],以解決其輪子與地面間的滑動;Rajagopalan 提出一個式子[32],針對在 操控和驅動轉動上有著不同組合的滾輪移動機器人在滑動時的角速度;Shekhar 為移動機器人輪子的滑動問題,使用非線性控制理論的近似性和可控性,推導出 一個動態模型[33];Balakrishna 和 Ghosal 提出一個摩擦模型說明在非完整性 (nonholonomic)移動式機器人的滑動狀況[34];Scheding 等人提出經由多感測器回 授方式,控制自動載具輪子滑動的導航系統實驗值[35]。 目前有幾個研究團隊基於原有的優勢,已開始研發全向性移動機器人。Jung 等人因為 RoboCup 比賽開發一個全方向性移動機器人的底座[36](RoboCup 是一 個自主移動機器人的國際性足球比賽)。Moore 等人為了六個全向輪的運載工具提 出控制演算法,其中每一個全向輪都可以被獨立操控和驅動[37]。Watanabe 等人 為了服務應用,提出自主性全方向移動機器人的控制器[38]。Witus 用輪胎充氣控 制方式研究六個全向輪的運載工具的機動性[39]。 根據文獻研究顯示,有兩篇論文提及全向輪機器人的滑動。Mori 等人聲稱 可透過設計分離操控和驅動,讓全向性運載工具能避免輪胎滑動[40]。Dickerson 和 Lapin 提出在全向性 Mecanum-wheeled 的運載工具上,對於輪子滑動檢測和補. 5.

(18) 整的控制器。 下個小節將介紹三輪全向輪移動機器人與說明其設計方式,提出了一個輪 子和運動表面之間滑動的動態模型,其為全向輪移動機器人滑動時的一般性動態 模型。動態模型包括輪子轉動方向和垂直輪子轉動方向的摩擦力,討論不同摩擦 特性的原因為全向輪上使用著兩種不同的材料。. 2.2. 三輪全向輪移動機器人之模型 ˆ R i. sˆ i. δ. yM. yo. R. xM. φ. R. xo. R. 圖 2-1 全方向輪底盤結構圖[2]. 一般來說,三輪全向輪移動機器人的機構上視圖如圖 2-1 所示。圖中所表 示的變數將在下一節的動態方程式中使用,其定義如下:. { o } 為固定座標,{M } 為移動參考座標;後輪方向即為 xM 方向,而前面兩 輪互為對稱,與 yM 之夾角角度為 δ ;其質量中心為圓盤中心,也就是 {M } 的原點。 機器人的質量為 m ,且相對於質量中心點的 zM 軸轉動慣量為 I ; R 為圓盤半徑,. 6.

(19) ˆ 表示底盤中心到每個輪子中心位置之位置向量。而單位向量 sˆ 表示輪子瞬間移 R i i ˆ 。角度 φ 表示固定座標上的 x 方向與移動參考座標上的 x 方 動方向且垂直於 R i o M. 向夾角。 透過特別的輪子,可使移動機器人進行全方向性的移動。圖 2-2 即為目前 較常使用於全方向性移動機器人機構上的全向輪種類,使用全向輪以易於市面上 購得的種類與符合自身要求即可,不需特意尋找特殊的種類。如圖 2-2,跟一般 的輪子相同,將馬達轉軸正確地接合於輪軸上即可使用,不同的是全向輪上與轉 動方向垂直的小滾輪,讓移動機器人產生全方向性移動的效果,這些小滾輪也讓 輪子與地面間產生不一樣的滑動關係,滑動的動態模型因此產生並在下一小節中 介紹。. (a) Transwheel®. (b) Omniwheel 圖 2-2 全向輪 (a) Transwheel® (b) Omniwheel [41]. 7.

(20) 2.3. 三輪全向輪移動機器人之動態方程式. Δθ. Δθ '. 2π n ˆ R i θ i. ri. sˆ i v ir. Pi. 圖 2-3 全向輪上的參數設定[2]. 此動態模型是為了三輪的全方性機器人而發展,但其實它適用於任何三輪 或多輪的全方性機器人。本節將說明全向輪移動機器人在輪子和運動表面間的滑 動模式,探討其摩擦力狀態的模型。 如圖五所示,描述在第 i 個全向輪細節的側面圖,並包含 n=8 的滾輪。 Δθ 為全向輪上橫向輪所佔的角度, Δθ ' 為全向輪上橫向輪之間所佔的角度, Pi (i=1,2,3)為全向輪和地面所接觸的點, v i 為 Pi 的速度向量,則. v i = v G + ω × ri + v ir. (2-1). 值得注意的是,若 v i 為零時將沒有滑動發生。 v G 為機構質心的變化速度,ω 為機. 8.

(21) ˆ 在輪子的中心位置且 構的角速度,移動和轉動速度向量與固定座標 { o } 有關。 R i. 與移動參考座標 {M } 有關的位置向量,而 v ir 是與移動參考座標 {M } 下的全向輪 速度,皆在固定座標 { o } 中表示,則. v ir = θ i ×ri. (2-2). ˆ 方向的輪子角速度, r 為全向輪半徑,其方向為全向輪中心指向 Pi 點,而 θ i 為 R i i v ir 的方向即為 sˆ i 。. 在此時有兩個方向的摩擦力要去考慮。第一個是在輪子轉動方向 sˆ i 的摩擦 ˆ 。原本考慮的摩擦力模型只包含前者,但 力,而第二個的是垂直於轉動方向的 R i. 使用全向輪移動機器人實驗後,發現在摩擦力模型上必須加入後者考慮才行。在 輪子轉動方向上,經由內積 Pi 點上所有從式子(2-1)得到的速度 v i 與方向 sˆ i ,則可 得到在第 i 個輪子構成的滑動速度 vWi ;另一方面,垂直於轉動方向的方向上,內 ˆ ,可得到在第 i 個輪子構成的度橫向滑動速度 v 。在尚未轉換 積速度 v i 與方向 R i Ti. 座標之前,個別速度為:. (. ). ˆ ⋅ sˆ + r θ vWi = v i ⋅ sˆ i = v G ⋅ sˆ i + ω × R i i i i. (. ). ˆ = v ⋅R ˆ + ω×R ˆ ⋅R ˆ vTi = v i ⋅ R i G i i i. (2-3) (2-4). 現在使用正交轉置矩陣 M0 R ,轉換 { o } 到 {M } , M0 R 表示如下:. 0 M. 使得 sˆ i =. 0 M. R M sˆ i ,且 Rˆ i =. ⎡cos φ R=⎢ ⎣ sin φ. 0 M. − sin φ ⎤ cos φ ⎥⎦. ˆ 。則轉置之後的個別速度為: RM R i. 9. (2-5).

(22) ( ˆ + ( ω× R. ). (2-6). ˆ ⋅ 0RM R ˆ RM R i M i. (2-7). ˆ ⋅ 0R M sˆ + rθ vWi = vG ⋅ M0 R M sˆi + ω × M0R M R i M i i i vTi = vG ⋅ M0R M. i. 0 M. ). 假設移動機器人的重量均勻散佈在每個輪子上,則輪子透過 Pi 施加到運動表面的 摩擦力為: Fi = −. (. mg μW ( vWi ) M0 R M sˆ i + μT ( vTi ) M0 R M Rˆ i 3. ). (2-8). 其中, μW ( ⋅) 和 μT ( ⋅) 為摩擦係數,分別為全向輪轉動方向與垂直全向輪轉動方向 的方向。所以,動態方程式為:. ⎧ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎩. 3. mx = ∑ xˆ ⋅ Fi i =1 3. my = ∑ yˆ ⋅ Fi. (2-9). i =1 3. Iφ = ∑ zˆ ⋅ ( R × Fi ) i =1. xˆ 、 yˆ 、 zˆ 皆 為 固 定 座 標 { o } 中 的 單 位 向 量 , 這 非 線 性 的 動 態 方 程 式 具 有. X = f ( X , X ) 的形式,用式子(2-8)代換式子(2-9)之後,其非線性動態方程式的表 示式即為:. ⎧ ⎪ x⎫ ⎪ ⎧  ⎪ ⎪ ⎪ y⎬ = ⎨ ⎨  ⎪ φ⎪ ⎪ ⎩ ⎭ ⎪ mg ⎪− ⎩ 3I. g 3 g − 3 −. ∑ xˆ ⋅ ( μ W ( vW i ) M0 R M sˆ i + μ T ( vT i ) M0 R M Rˆ i ) 3. i =1. ∑ yˆ ⋅ ( μ W ( vW i ) M0 R M sˆ i + μ T ( vT i ) M0 R M Rˆ i ) 3. i =1. ∑ zˆ ⋅ ⎡⎣ M0 R M Rˆ i × ( μ W ( vW i ) M0 R M sˆ i + μ T ( vT i ) M0 R M Rˆ i ) i =1 3. ⎫ ⎪ ⎪ ⎪ (2-10) ⎬ ⎪ ⎤ ⎪⎪ ⎦⎭. 經由這簡單的摩擦模型可預期獲得全部真實世界的摩擦特性,亦可在此模. 10.

(23) 型上做改進,考慮轉動摩擦力 μr 和靜態和動態摩擦係數上的不同係數。欲了解一 個改進的摩擦模型可參考 [42] ,此作者提出輪子在路面上的摩擦模型,使用了. LuGre 乾燥摩擦模型和輪子的動態,不同於此處討論的輪子、轉動表面材料與接 觸地面的問題。. 2.4. 三輪全向輪移動機器人之運動方式. 圖 2-4 全方向輪[41]. 如圖 2-4 所示,本論文中的移動機器人採用此全方向輪(Omni-directional. wheels)為其移動零件,其規格為: 1.. 外徑:4" (英吋) = 10.16 cm;內徑 1" (英吋) = 25mm。. 2.. 有兩個轉動軸互相正交,提供不同轉動方向。. 3.. 標準 Nylon 輪胎,維持與一般地表的摩擦力。. 4.. 以聚丙烯為塗料的合成橡膠滾輪(Synthetic rubber coated polypropylene. roller):在全向輪上的小滾輪,其材質為人造合成橡膠,表面包附聚丙 烯橡膠(CAT-TRAK),以增加在摩擦力較小的地表行走時的摩擦力。. 5.. 有軸的固態氨基甲酸酯滾輪(Solid urethane roller with molded axle):在 全向輪上的小滾輪內部為金屬軸心桿,當橡膠承受過重重量而產生些 微變形時,仍可以靠金屬軸心桿,維持與地表的接觸摩擦力。. 全方向輪可使移動機器人在原地旋轉至任何方向上,不會像傳統二輪的移 動機器人在旋轉時產生旋轉半徑,消耗掉較大的空間。這個功能是因為在全方向. 11.

(24) 輪上有著幾個小滾輪,這些小滾輪的轉動方向剛好正交於全方向輪的轉動方向, 使得移動機器人可以自由地移動到期望中的方向,且全方向輪的控制方法不同於 只有一個維度的輪子。圖 2-5 為全向式移動機器人的構造圖,根據圖 2-5 可以得 到全方向輪的運動模型[43],其表示法如下所示:. yM. v1 δ. 2π 3. v2. xM. 2π 3. v3. 圖 2-5 全方向輪的構造圖. 全向式移動機器人的運動模型是透過三角學和幾何學計算獲得,在移動機 器人的正中心(即圓心處)標記為"O",從"O"延伸出去至全方向輪處的長度標記為. "R",R=0.3 m,而全方向輪上的半徑標記為"r",r=0.0508 m。若以正 xM 方向為 0° 時,三個全方向輪分別坐落於 30° 、150° 和 270° ,即三個全方向輪平均分配一個 完整的圓心角,各為 2π 3 ;而在三個全方向輪上的速度分別標記為 v1 、 v2 和 v3 ,. 12.

(25) 此時可以發現在 yM 的方向和 v1 的方向夾著一個偏移角,其為一個固定的角度. δ = π 6。 如圖 2-5 所示,三個全方向輪相關的運動學方程式都可經由推導而得到, 假設在第 i 個全方向輪上的轉動速率是 θi ,則第 i 個全方向輪的速度即可表示為如 下的形式: vir = r ⋅ θ i , i = 1, 2,3. (2-11). 並將 r 值代入式子(2-11)中,可得 vir = (0.0508) ⋅ θ i. (2-12). 當全向式移動機器人要以速度 vM 和角速度 Rφ 移動到已知的方向時,可以 推導出三個全方向輪的速度 v1 、 v2 和 v3 為以下的形式:. v1r = r ⋅ θ 1 = − sin (δ ) xM + cos (δ ) y M + Rφ. (2-13). v2 r = r ⋅ θ 2 = − sin (δ ) xM − cos (δ ) y M + Rφ. (2-14). v3r = r ⋅ θ 3 = cos ( 0 ) xM + sin ( 0 ) y M + Rφ. (2-15). 其中 φ 為移動機器人的轉動速率,而 xM 和 y M 分別為速度 vM 的 xM 方向和 yM 方向 上的分量。為了方便表示,可將式(2-13)、式(2-14)和式(2-15)重新寫為一個矩陣 表示式,其為一個 Inverse Jacobian 矩陣,即為式(2-16)。. cos (δ ) R ⎤ ⎡ xM ⎤ ⎡ v1r ⎤ ⎡ r ⋅ θ 1 ⎤ ⎡ − sin (δ ) ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢v ⎥ = r ⋅ θ = − sin δ − cos δ R ( ) ( ) 2 r 2 ⎢ ⎥ ⎢ ⎥ ⎢ yM ⎥ ⎢ ⎥  sin (δ ) R ⎦⎥ ⎢⎣ φ ⎥⎦ ⎣⎢ v3r ⎦⎥ ⎣⎢ r ⋅ θ3 ⎦⎥ ⎣⎢ cos ( 0 ). 將已知的參數帶入式子(2-16),可改寫成式子(2-17)的形式:. 13. (2-16).

(26) ⎡ 1 ⎢− 2 ⎡ v1r ⎤ ⎡ r ⋅ θ 1 ⎤ ⎢ ⎢v ⎥ = ⎢ r ⋅ θ ⎥ = ⎢ − 1 ⎢ 2⎥ ⎢ 2r ⎥ ⎢ 2 ⎢ ⎢⎣ v3r ⎥⎦ ⎢⎣ r ⋅ θ 3 ⎥⎦ ⎢ ⎢ 1 ⎢⎣. 3 2 3 − 2 0. 3⎤ ⎥ 10 ⎥ 3⎥ ⎥ 10 ⎥ 3⎥ 10 ⎥⎥ ⎦. ⎡ xM ⎤ ⎢ y ⎥ ⎢ M⎥ ⎢⎣ φ ⎥⎦. (2-17). 上述的速度表示式(2-17),符合本論文設計之全向輪移動機器人的參數,將 期望的 v1 、 v2 和 v3 輸入各自的馬達中,便可使移動機器人朝著理想中的角度與方 向前進。. 14.

(27) 第三章 模糊邏輯系統與遺傳演算法 本章節首先介紹模糊系統,模糊系統是一種以模糊數學為基礎的現代控制 方法,透過人類的經驗與問題特性的掌握度,不需複雜的數學模型,亦可精確控 制自然界與人類社會中的各種模糊事物。其次介紹傳統遺傳演算法與 DNA 遺傳 演算法並比較兩者的差別,主要探討 DNA 編碼方式改善傳統遺傳演算法的性能 及在族群大小上的限制。 本論文將於兩處使用模糊邏輯系統,第一個在第四章的適應性學習法則 中,以一個 DNA 染色體表示為一個模糊邏輯系統;第二個在第六章的實驗一中, 使用模糊控制器修正本移動機器人前進的軌跡。而在此介紹傳統遺傳演算法,主 要為引出本論文所需使用的 DNA 遺傳演算法。. 3.1. 模糊邏輯系統之理論背景 在現實生活中,我們所使用的系統複雜性日趨增長,若使用傳統控制方法,. 不一定會有完整的數學模型可以使用。因此,透過模糊的手段將系統模糊化,往 往可以使控制系統達到精確的效果。這些模糊的現象通常是透過人類的思維、語 言表達或感官判斷而產生的,因為上述的方式,通常帶著不確定性、模稜兩可或 是多重意義的關係。例如說:「他身高很高」、「你有點胖」、「今天天氣有點 冷」等敘述,都是由於人們的主觀認定所產生的。但是每個人對這些主觀的定義 皆不盡相同,以身高來說,也許可以說 180 公分以上就是高,150 公分以下就是 矮,那介於這兩這之間的身高要算是高還是矮呢?根本無法界定,因此只能從不 明確的語意來猜測。雖然只能利用不明確的語言猜測其意義,但之間的差距不 大,亦可達到溝通的目的。 上述之問題的解決之道,其中有關中間值與語意表達認定的概念,為美國 加州大學柏克萊分校 L.A. Zadeh (扎德)教授所提出的模糊理論。1965 年,Zadeh 教授首先提出「模糊集合 (Fuzzy Sets)」,為討論主觀意識或思考中定量化的處 理方式,將 0~1 的歸屬函數對應到人類主觀上的模糊概念上。當思考的問題越複. 15.

(28) 雜,所需要的參數越多,其數學模型的建構就越困難,充其量只能獲得折衷後的 模型,滿足某部份的結果。若要控制這些參數,且必須決定明確的控制量,但是 在實際上有些參數是無法明確其值的,因此在建立系統的數學模型上,便顯得困 難。所以 Zadeh 教授提倡模糊控制理論,試著以人類的思考方式來對應成數學式, 用以簡化系統的數學複雜度,並達成所期望的結果。之後在 1974 年時,由 Queen. Mary 大學的 M. H. Mamdani (曼德尼)教授提出以 IF-THEN 的對話方式,建立起 模糊規則(Fuzzy Rules),應用此方法,可直接以語意的表達方式轉換至規則中, 讓控制結果與真實需求更加符合。 現今模糊系統已被廣泛地使用於決策分析、影像辨識、自動控制、醫療診 斷、控制器設計等領域上,尤其是控制器設計,用來控制實驗室的蒸氣引擎,應 用 Zadeh 教授的模糊演算法所建立[44]。在此之後,模糊理論在各個領域開始迅 速發展。以往在控制系統中,需要建構數學模型來處理,通常以一個或多個微分 方程式來描述控制系統的響應,常以 PID 控制器實現。若是有複雜、大型的控制 系統或是需要使用者的知識經驗時,數學模型得花費大量時間和人力來建構數學 模型,亦有可能無法建構出數學模型。因此,透過模糊控制的誕生,可將人類的 知識經驗轉換成 IF-THEN 規則的形式來進行推論,進而達成控制系統的目的。. 3.2. 模糊邏輯系統 模糊邏輯系統現今已廣泛地應用於許多領域,本章節主要介紹模糊邏輯系. 統(Fuzzy Logic System) 的系統架構以及說明各組成部分。. 3.2.1. 基本架構 模糊邏輯系統的基本架構主要包含:(1)模糊化 (Fuzzify);(2)模糊規則庫. (Fuzzy Rule Base) ; (3) 模糊推論引擎 (Fuzzy Inference Engine) ; (4) 解模糊化 (Defuzzify)。其架構流程如圖 3-1 所示。. 16.

(29) 圖 3-1 模糊邏輯系統的基本架構. 3.2.2. 模糊規則庫 在說明模糊規則庫之前,首先必須先了解語意變數(Linguistic variable),. 簡單來說,當一個變數能以自然語言來取代其值時,便稱為語意變數。例如: 若我們評論一個人的外在時可能會說「他的身高很高」,即是以文字「高」來 描述本命題中的變數「他的身高」,不過文字「高」原本可以其他數字如 180 公分或是 170 公分來表示,也就是說在此時是變數「他的身高」取代了文字「高」 的值。在以往,通常是一個變數以數字來取代其值,也有數學架構將其公式化, 但若以文字來取代其值時,並沒有正式的數學架構來說明,因此,語意變數的 概念便產生,也開始能在自然語言中把模糊敘述以確切的數學模型公式化。 根據受控體的特性與控制模式,並利用語意變數的方式來寫出每一條規 則,便可形成模糊規則庫。模糊規則庫實為模糊邏輯系統的核心,存在著許多. IF-THEN 規則的集合,其來源有以下幾種的分類: 1.. 利用人類的知識經驗或相關資訊來設計控制規則。. 2.. 利用受控體的輸入與輸出,推論系統的運作方式而得到規則。. 3.. 由受控體本身的學習回饋,進而達成控制規則的實現。. 上述方式均使用 IF-THEN 規則來實現模糊規則,利用數學上邏輯的規 則,若是前項(antecedent part)的語意變數輸入符合所求,則實行後項(consequent. 17.

(30) part)所表示之狀態;反之則反。模糊規則如 3-1 式所示。. R i : IF. x1 is. THEN. A1i. and " xn. y1 is w1i. is. and " ym. Ani. (3-1). is wmi. 這是已知輸入為 xq , q = 1, 2,", n 且輸出為 y p , p = 1, 2,", m 的第 i 條模糊規則。 Aqi 為前項所表示的模糊集合,而 wip 為後項表示的實際狀態數值。當輸入 x = [ x1 x2 " xn ] 為已知時,可透過模糊推論推導出輸出的 y p 。其中,模糊規則數 T. i 與語意變數的個數和模糊分割的數量有關,即在(3-1)式中的模糊規則數 i 等於 n 個輸入語意變數的分割數乘積。因此,若要使系統不至於過度複雜化,有效選. 取每一個語意變數的分割數量,為一重要課題。雖然選取語意變數的分割數量 得視系統實際要求而定,但仍需在精確度與簡易性上達到一個平衡,以免過度 複雜化或粗糙不堪。通常分割為奇數個,這樣才有明確的中間值,一般而言不 會分割超過 7 個以上,亦會使用英文縮寫來定義每一個分割數,達成書寫的方 便性。若是將輸入或輸出分割成三個語意變數,可以 N(負)、ZO(零)和 P(正)來 表示;若分割成五個,可以 NB(負的大)、NS(負的小)、ZO(零)、PS(正的小)和. PB(正的大)來表示。以式(3-1)為例,其中 n = 2 且 m = 1,並假設輸入及輸出均分 割成五個語意變數,其寫法如表 3-1 所示。. 表 3-1 模糊規則表 y1. x2. NB NS ZO PS PB. x1. NB PB PB PS PS ZO. NS PB PS PS ZO NS. ZO PS PS ZO NS NS. 18. PS PS ZO NS NS NB. PB ZO NS NS NB NB.

(31) 3.2.3. 模糊推論引擎 模糊推論引擎為在模糊邏輯系統和近似推論的概念架構的範圍內,模型化. 人類決策合成的核心,負責模糊邏輯系統內的推理運算。以此來處理根據語意 變數所產生的命題,相較於以往的傳統推論,近似推論更為合理也更有彈性, 表 3-2 為 GMP 和 GMT 兩種推論機制的比較,而以下為兩種模糊推論機 制[45]:. 1.. Generalized Modus Ponens(GMP) --順向的數據驅動推論。. 2.. Generalized Modus Tollens(GMT) --逆向的數據驅動推論。. 表 3-2 模糊推論機制之比較 Generalized Modus Ponens. Generalized Modus Tollens. 前提 1:IF x is A, THEN y is B 前提 2:x is A’. 前提 1:IF x is A, THEN y is B 前提 2:y is B’. 結論:y is B’. 結論:x is A’. GMP 的推論方式為順向推理,當前向命題輸入至規則時,則會透過後項 推理出結論,為一適合模糊控制器的推論;而 GMT 的推論方式始於逆項推理, 當後項命題輸入至規則時,便可逆向推論出前項的命題。但可應用於模糊控制 系統的推論方式仍有許多種,如下條列所示[46]: z. 乘積推論引擎 (Product Inference Engine). z. 最小值推論引擎 (Minimum Inference Engine). z. Lukasiewicz 推論引擎. z. Zadeh 推論引擎. z. Dienes-Rescher 推論引擎. z. Tsukamoto 模糊推論法. 19.

(32) z. Takagi-Sugeno 模糊推論法. 於是可知在模糊推論引擎中將會有多種的選擇,可以用下列的準則來考 慮:(1) 根據前人所累積的知識經驗觀點來選擇;(2) 讓計算前項與後項的關係 是容易的;(3) 滿足特殊性的推論引擎。 經由使用模糊推論引擎,可讓模糊系統架構中不再需要推導複雜的數學 模型,簡易的語意變數與模糊推論引擎便可達成所要求的動作,在市面上已有 不少的產品使用模糊控制法則了。. 3.2.4. 模糊化 當一個受控體的狀態輸出變數,成為控制器的輸入變數時,將其轉換為模. 糊規則所能判斷的模糊變數,即為模糊化(Fuzzifier)的簡單定義。其中輸入的變 數需為明確數值,首先將其藉由量化映射(Quantization Mapping)的方式,並確定 變數值在模糊集合與對應的歸屬函數(Membership Function)之中,便可對應出其 在每一個模糊集合中的相關程度,即為某一規則的近似程度。以下介紹幾種較 常使用的歸屬函數圖形: 1.. 單點歸屬函數 (Singleton Membership Function): ⎧1 , x = t ⎩0 , otherwise. μ ( x) = ⎨ μ. 圖 3-2 單點型歸屬函數圖形. 20. (3-2).

(33) 2. 三角形歸屬函數 (Triangular Membership Function): ⎧ ( x − t1 ) (t − t1 ) ⎪ μ ( x) = ⎨ ( x − t2 ) (t − t2 ) ⎪ 0 ⎩. , t1 ≤ x ≤ t , t ≤ x ≤ t2 , othewise. (3-3). μ. t1. t2. 圖 3-3 三角形歸屬函數圖形. 3. 梯形歸屬函數 (Trapezoidal Membership Function):. ⎧ ( x − t1 ) (t − t1 ) ⎪ 1 ⎪ μ ( x) = ⎨ ⎪ ( x − t2 ) (t − t2 ) ⎪⎩ 0. , t1 ≤ x ≤ t2 , t2 ≤ x ≤ t3 , t3 ≤ x ≤ t4 , othewise. μ. t1. t2. t3. 圖 3-4 梯形歸屬函數圖形. 21. t4. (3-4).

(34) 4. 高斯型歸屬函數 (Gaussian Membership Function):. μ ( x) = e. ⎛ x −t ⎞ −⎜ ⎟ ⎝ σ ⎠. 2. (3-5). μ. 圖 3-5 高斯型歸屬函數圖形. 3.2.5. 解模糊化 當控制器的輸出變數要成為受控體的輸入變數時,系統需透過轉換機制使. 得模糊變數成為明確數值,進一步達到控制受控體的目的,即為解模糊化. (Defuzzifier)的簡單定義。在選擇解模糊化的架構時,需考慮其合理性、簡易的 計算及其連續性。以下介紹幾種解模糊化方式: 1. 重心解模糊化法 (Center of Gravity Defuzzification) 2. 面積和之中心解模糊化法 (Center of Sum Defuzzification) 3. 最大面積之中心解模糊化法 (Center of Largest Area Defuzzification) 4. 第一個最大值解模糊化法 (First of Maxima Defuzzification) 5. 最後一個最大值解模糊化法 (Last of Maxima Defuzzification) 6. 最大值之平均解模糊化法 (Middle of Maxima Defuzzification) 7. 中心平均值解模糊化法 (Center Average Defuzzification) 上述方式中,以重心解模糊化法最常使用,可分為連續型與離散型,本論文亦 使用重心解模糊化法轉換出模糊控制器的輸出值。連續型與離散型的公式如柿. 22.

(35) 子(3-6)及(3-7)所示:. y* =. ∫ yμ '(y)dy ∫ μ '(y)dy Y. (3-6). Y. h. y = *. ∑ y μ '(y ) i =1 h. i. i. (3-7). ∑ μ '( y ) i. i =1. h. 其中,式(3-6)的 ∫ μ '(y)dy 為 μ '(y) 的面積,式(3-7)的 ∑ μ '( yi ) 為 μ '(y) 的總和。 Y. i =1. 由上述章節可知,模糊邏輯系統的架構不需要推導複雜的受控體模型,使 用簡單的語意控制就能達到傳統控制的動作,目前已有不少的產品,特別是家 電產品,亦逐漸採用模糊控制來開發系統。. 3.3. 遺傳演算法的理論背景與基礎 遺 傳 演 算 法 (Genetic Algorithms, GA) 在 1975 年 由 美 國 密 西 根 大 學. (University of Michigan)的 John Holland (霍蘭德)在對 Cellular Automata 研究時首 先提出,用以解決數學最佳化的問題;在此之前,對於遺傳演算法的研究還僅僅 限於理論方面,直到在伊利諾大學(University of Illinois)召開了第一屆世界遺傳演 算法大會,並伴隨著計算機計算能力持續發展與實際應用需求增多,遺傳演算法 逐漸使用於各種最佳化問題求解的應用領域。1989 年,紐約時報作者 John Markoff. (馬科夫)發表文章描述第一個商業用途的遺傳演算法--進化者(Evolver)。歷經多 年來的發展已成功地應用於物理科學、製造系統、物流系統、機電系統、電子電 路設計或財務金融等方面的最佳化問題求解。 遺傳演算法的主要概念從達爾文進化論發想,由其物競天擇及適者生存理 論發展,對於欲求解的最佳化問題以染色體及基因的模型,轉化成二進制編碼方 式表示。透過模擬生物基因的操作方式,例如:選擇(Select)、交配(Crossover)、 突變(Mutation)等的能力,產生較為優秀的子代,進而達成尋找問題的最佳解。遺. 23.

(36) 傳演算法相較於其他種傳統的最佳化法則的差別在於利用遺傳演算法得到問題 的解,其答案可能為二進制碼、整數、實數或符號表示。若以微積分方式為基礎 的最佳化法則,存在著無法處理不可微分函數的問題,但遺傳演算法能克服此一 難題。透過遺傳演算法尋求最佳解時,需考慮族群大小的問題。因為遺傳演算法 是一次以一個族群的方式來尋求最佳解,當族群個數越大時,需要越長的時間才 能使族群收斂。使用遺傳演算法搜尋最佳解時,只能得到近似最佳解,即區域最 佳解而非全域最佳解。但此近似最佳解是經由擴大解空間演化至某狀態下的最合 適解答。在遺傳演算法的模擬生物操作運算有選擇、交配或突變等方式,即使設 定完全相同的參數,每次運算後結果也會不盡相同,因為操作的需求是隨機性 的,非固定值。 遺傳演算法的選擇淘汰機制常見的有輪盤式[47]及競爭式[48]選擇,將不良 的染色體淘汰,進而產生下一個族群。此為一次循環,直到此環境中的最佳化子 代產生,即為此最佳化問題的解。. 3.4. 傳統遺傳演算法 遺傳演算法是用於解決最佳化的搜尋演算法,為進化演算法的一種。利用. 了生物學中的一些現象發展起來的,這些現象包括遺傳、突變、自然選擇以及雜 交等,利用族群的次代更新來獲得最佳的子代。. 3.4.1. 傳統遺傳演算法之架構 傳統遺傳演算法即是以重複的循環,不斷演化產生出子代,直到子代滿足. 最佳解的目標才停止。首先要初始化族群,以二進制碼 0 和 1 隨機產生族群內 的染色體,接著則是依據條件來評估此一族群中各個染色體的好壞,此時所依 據的條件便是透過計算各染色體適應函數值,若染色體的適應函數值較大,表 示此染色體的適應力較好,為好的染色體。因此,將適應函數值較大的染色體 丟入交配池中,開始產生選擇淘汰。在交配池中,會有輪盤式選擇或競爭式選 擇的方式,所有染色體會在交配池中進行交配及突變的生物操作,完成後用以. 24.

(37) 取代原始的族群,即為完成一次演化過程。若此時產生的族群即符合問題的最 佳解時,演化的動作便會停止,若是族群仍未達成最佳目標時,便會重新回到 評估族群的狀態,進行下一次的演化過程。此外,在執行演化過程中需設定產 生交配與突變狀態的機率,即交配率與突變率。正常狀況下,交配率的值遠大 於突變率,因為可以透過交配的生物操作讓較不好的染色體基因變得比較好, 即適應函數值變大。但在演化過程中突變也是必須的,雖然突變在生物上來說, 通常會使細胞運作不正常或死亡,甚至會讓較高等生物引起癌症;不過突變也 被視為物種進化的「推動力」,不好的突變結果會在天擇過程中被淘汰,而好 的突變結果則會在子代中延續下去。因此,根據正常的生物演化過程,適時的 突變可使染色體獲得意想不到的效果,但若是突變率太大,則使染色體不易收 斂於最佳解。 傳統遺傳演算法的架構如圖 3-6 所示:. 圖 3-6 傳統遺傳演算法之架構. 25.

(38) 3.4.2. 傳統遺傳演算法之演化程序 傳統演算法中,首先需要對染色體編碼並對族群做評估,在此之後產生對. 應於此一族群的適應函數,根據各個染色體的適應函數值對其進行生物操作, 如選擇、交配、突變等運算,即完成一次演化的過程。在此將介紹本論文所使 用的演化程序,包括:1. 編碼(Encode)、2. 適應函數(Fitness Function)、3. 選擇. (Selection)、4. 交配(Crossover)、5. 突變(Mutation)及 6. 停止條件(Termination Criteria)。 1.. 編碼(Encode):傳統遺傳演算法在一開始時,需先對族群的染色體表 示成一數字串,即為編碼。一般編碼有整數(Integer)、實數(Real)、文 字(Alphabet)和二進制(Binary)等方式,其中最常使用的編碼方式為二 進制碼,使用 0 和 1 表示成一固定長度的數字串為一個染色體,集結 多個染色體即為一個族群。. 2.. 適應函數(Fitness Function):這是根據生物學中的適應度來描述,表 示擁有某一特性的基因或個體,在環境適應上的成功率或能力。因此 在遺傳演算法中透過適應函數值,可得知所求的解在問題中的適應程 度,在此定義適應函數值越大,染色體的適應能力越好。適應函數的 設計要考慮實際問題的狀態,才能設計出準確評判問題績效的適應函 數。. 3.. 選擇(Selection):遺傳演算法的選擇淘汰方式可分為輪盤式選擇及競 爭式選擇,透過選擇可以將優良的子代挑選出來,進行生物操作,以 下將介紹兩種選擇方式的差別:. (1). 輪盤式選擇(Roulette-wheel Parent Selection):如圖 3-7 所示,輪 盤式選擇就像是在玩射輪盤遊戲一樣,輪盤上分有多個區塊, 所佔的比例大小不一,這是根據染色體的適應程度大小而定, 適應程度越大的染色體,分配給較大比例的區塊;適應程度較 小的染色體,就分配比例較小的區塊。接著以隨機的方式在輪 盤上選擇一個染色體,顯而易見地,所佔區塊越大的染色被選. 26.

(39) 擇的機率就越大,之後把被選中的染色體放進交配池中。其分 配比例以 PSi =. fi s. ∑ fi. 來決定, f i 為第 i 個染色體的適應函數值,. i =1. PSi 即可視為第 i 個染色體被選中的機率。. 22% 36%. D A. C 17%. 25% 圖 3-7 輪盤式選擇示意圖. (2). 競爭式選擇(Contest Selection):從字面上可知,此選擇法必須透 過競爭比較的方式來決定。從族群中隨機選擇二至多個染色 體,相互比較適應函數值的大小,比較後將適應函數值較高的 一至兩個染色體丟入交配池中,等待後續的生物操作。. 4.. 交配(Crossover):經由上述的選擇淘汰方式之後,適應度較高的染色 體會進入交配池中。交配的發生是有著一定的機率,稱為交配機率, 意思是若交配機率為 0.9,則 90%的「夫妻」會生育後代。從交配池 中任意挑選出兩個染色體(parents)進行染色體的基因互換產生兩個新 子帶,代替交配前的染色體,而不交配的染色體保持不變。在交配的 過程中,會在父母染色體的 N 個基因裡挑選一點或是兩點,稱為交. 27.

(40) 配點,通常會使用單點交配或二點交配的方式。單點交配是指將一個 染色體的基因挑中的某一點開始到最後一個基因與另外一個染色體 做交換,如圖 3-8 所示;二點交配則是將兩個染色體挑中的兩點範圍 內基因做交換,如圖 3-9 所示。. 圖 3-8 單點交配. 圖 3-9 二點交配. 5.. 突變(Mutation):為了防止交配過程中,沒有新的元素加入,使得族 群內的生物多樣性不足,因此需加入突變的生物操作,目的在於引進 新的基因,避免產生局部收斂的解。相同地,執行突變需要給定一個 突變機率來產生,但是突變機率的設定不能太大,不然會使得整體族 群趨向發散的結果。為了達到整體最佳解,通常突變機率設定在千分 之ㄧ到十萬分之ㄧ的中間,可以根據問題的狀態給定,而突變的方式 是以隨機選定某些基因,直接改變其基因內容,若是以二進制碼而言 是將位元作反轉(0→1,1→0),如圖 3-10 (a)所示,另外圖 3-10 (b)是 內容為整數的表示方式。. 28.

(41) (a). c 圖 3-10 突變表示方式 (a)二進制 (b)整數. 6.. 停止條件(Termination Criteria):一般狀況的停止條件有以下幾種:(1) 演化疊代次數的限制;(2) 運算過程中耗費的資源限制(例如:計算時 間、計算佔用的記憶體等);(3) 一個族群已經達到最佳化的條件時, 即最佳解已產生;(4) 適應程度已達飽和,繼續進化不會產生更好的 染色體;(5) 人為因素。一般演化在上述狀況一個或多個產生時,即 停止演化過程,並將最後一代的子代顯示出來。. 3.5. DNA 遺傳演算法 DNA 遺傳演算法是改善傳統遺傳演算法而來的,相較於傳統遺傳演算法,. DNA 遺傳演算法顯得更趨近自然現象,可使問題的解易形成全域最佳解,而非 區域最佳解。DNA 遺傳演算法的編碼方式是直接以四種不同的鹼基序列進行編 碼,與生物染色體的編碼一樣,而非二進制或整數方式來編碼,更能體現生物演 化過程。處理相同問題時,其演化過程也相對於傳統遺傳演算法來的好且快。在 生物操作方面,則與傳統遺傳演算法大致相同,基本上有著選擇淘汰、交配及突 變,還有其他的操作方式像是加入病毒和酵素等,也有相關文獻探討及提出[49]。. 29.

(42) 3.5.1. DNA 遺傳演算法之理論背景 DNA(Deoxyribonucleic acid,去氧核醣核酸)為組成染色體的重要成分,而. 染色體具有生物的遺傳訊息。 DNA 由四個鹼基序列的核甘酸所組成 [50] ,. Adenine (A)、Guanine (G)、Cytosine (C)和 Thymine (T),在染色體裡包含有許多 基因(Gene),為一個有著 A、G、C、T 的串列組合,其中,每三個主要成分組 合成一個遺傳密碼子 (Codon) ,這些遺傳密碼子成為胺基酸 (Amino Acid) 的編 碼。因為遺傳密碼子內的 A、G、C、T 為可重複的,會產生 64 種遺傳密碼子的 組合,但是只能對應成 20 種胺基酸,如表 3-3 所示,像 AGT 代表 Ser,GGT 代表 Gly。分配後的胺基酸組成蛋白質,然後蛋白質再組合為細胞。例如:紅血 球細胞會產生可以帶有氧氣的蛋白質。由於 DNA 存在細胞裡,因此細胞是根據. DNA 中間的某串列組合來產生,這一串列組合就是某基因,在人體中有著數萬 個不同的蛋白質,即為數萬個不同的基因。. 表 3-3 密碼子與氨基酸之對應關係 T T. C. A. G. TTT TTC TTA TTG CTT CTC CTA CTG ATT ATC ATA ATG GTT GTC GTA GTG. Amino acids Phe. Leu. Ile Met Val. C. TCT TCC TCA TCG CCT CCC CCA CCG ACT ACC ACA ACG GCT GCC GCA GCG. Amino acids Ser. Pro. Thr. Ala. A. TAT TAC TAA TAG CAT CAC CAA CAG AAT AAC AAA AAG GAT GAC GAA GAG. 30. Amino acids Tyr Stop His Gln Asn Lys Asp Glu. G. TGT TGC TGA TGG CGT CGC CGA CGG AGT AGC AGA AGG GGT GGC GGA GGG. Amino acids Cys Stop Trp Arg. Ser Arg. Gly. T C A G T C A G T C A G T C A G.

(43) 基因包含著生物中的遺傳訊息,由 A、G、C、T 串列編碼而成。一條染 色體由數十萬種不同的基因所構成,每個基因又是由許多鹼基序列排列而成, 藉此可產生多樣性的染色體族群,再透過遺傳演化的方式獲得問題中的最佳 解,進而處理非線性系統的問題。. 3.5.2. DNA 遺傳演算法之演化操作 與傳統遺傳演算法不同的是,DNA 遺傳演算法是以四個鹼基序列 A、G、. C、T 編碼出不同的基因組合,而成為多樣化的染色體族群;接著透過與遺傳演 算法相同的生物操作:交配及突變,產生最佳的子代[51]。. 1.. 交配:如同傳統遺傳演算法一樣,DNA 遺傳演算法的交配方式也是 較常採用單點或二點交配,不一樣的是 DNA 遺傳演算法與真實生物 體一般,交換的是其鹼基序列,更能使得演化過程更貼近自然狀況。 這是一種交換 DNA 染色體基因的生物操作過程,其相對應的關係如 圖 3-11 所示,圖 3-12(a)和(b)分別表示單點交配與二點交配的過程, 不過在許多文獻中顯示在 DNA 染色體的交配過程中,使用二點交配 方式有著較好的效果。. 圖 3-11 DNA 中染色體與基因的關係. 31.

(44) (a). (b) 圖 3-12 DNA 染色體的交配操作 (a)單點交配、(b)二點交配. 2.. 突變:在突變機率下,任意選定 DNA 染色體中的一點,將其鹼基序 列改變為其他三種,例如將 A 改成 G 或 C 或 T 的過程,稱為突變, 如圖 3-13 所示。. 圖 3-13 DNA 染色體的突變操作. 此外,因為 DNA 遺傳演算法是根據生物體所產生的,所以其編碼方式也 會比傳統遺傳演算法多變。近年來亦有文獻指出以病毒操作與酵素操作的編碼 方式,使模糊邏輯系統演化出更好的模糊規則。以下將簡略地說明病毒操作與 酵素操作:. 1.. 病毒(Virus):此生物操作方式,就是以病毒侵入的方式來改變 DNA 染色體的鹼基序列,侵入點並無限制,而病毒的表示方式也是一串鹼 基序列,所以染色體侵入病毒之後,整體長度變長了。其操作方式如 圖 3-14 所示。. 32.

(45) 圖 3-14 DNA 染色體的病毒操作. 2.. 酵素(Enzyme):又稱之為酶,是利用其合成的操作方式來改變 DNA 染色體的鹼基序列。首先酵素確定兩個鹼基序列,如 AGT(Ser) 和. GGT(Gly),接著在染色體中選定兩個合成點放入酵素,則兩酵素間 的鹼基序列便會被合成,並隨著酵素消失掉。所以 DNA 染色體加入 酵素後,整體長度縮短了,其操作方式如圖 3-15 所示。. 圖 3-15 DNA 染色體的酵素操作. 總而言之,DNA 遺傳演算法的編碼有著以下特色:(1) 對於知識的表示 方式是靈活的;(2) 編碼可產生冗長與重疊的染色體;(3) 其產生的染色體長度 是可變的;(4) 對於交配點的選定是沒有限制的。本論文將利用上述的交配與突 變操作來進行全向輪移動機器人的路徑規劃。. 33.

參考文獻

相關文件

C., “Robust and Efficient Algorithm for Optical Flow Computation,” Proceeding of IEEE International Conference on Computer Vision, pp. “Determining Optical Flow.” Artificial

Muraoka, “A Real-time Beat Tracking System for Audio Signals,” in Proceedings of International Computer Music Conference, pp. Goto, “A Predominant-F0 Estimation Method for

Selcuk Candan, ”GMP: Distributed Geographic Multicast Routing in Wireless Sensor Networks,” IEEE International Conference on Distributed Computing Systems,

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

Ko, “Fast Intra Prediction Mode Selection Scheme Using Temporal Correlation in H.264,” IEEE International Region 10 Conference, pp. Yu, “A Fast Mode Decision Method for

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,