• 沒有找到結果。

基因演算法為一種尋找最佳解的演化法中最著名也是使用最多的方法 。1975,由 John Holland 在其著作 “Adaptation in Natural and Artificial Systems” 中奠定了 基因演算法的基礎 ,根據達爾文進化論 p 適者生存,不適者淘汰 y 的道理,藉由生物交 配 、 突變 、 選擇的方式尋得適當的問題最佳解 ,為一種有效的最佳化搜尋方法 。 近年來 被廣泛的應用於搜尋各類問題的最佳解 ,並結合其他方法 ,如類神經網路 [20] 、 模糊理 論[21, 22] 、 增強式學習等[23] , 應用在影像處理 、 醫學 、 機器人學 、 建築學等領域 。

2.2.1 基本運作原理

基因演算法採用三種基本的運作機制以模仿自然遺傳的過程 ,包括複製(reproduction) 、 交配 (crossover) 、 突變 (mutation) ,在合理的時間範圍內求得近似最佳解 ,其基本步 驟如下所式 :

• 編碼(encoding) :將問題的解答以一長串數字或是字元所組成的序列 。

• 初始化 (initialization) :隨機產生一定數量的個體 ,有時候操作者也可以干預隨 機產生的過程,讓第一代的族群就擁有著部份優化的個體 。

• 評估(fitness) :經由適應性函式 (fitness function) 的評估,來分辨個體的好壞 。

• 選擇(selection) : 選擇是依據每一物種的適應程度來決定下一代中應被淘汰或複製

且保留的個數多寡的一種運算過程 。 選擇過程有兩種形式:

– 輪盤式選擇 (roulette wheel selection) 在每一代的演化過程中,首先依每個 染色體的適應函數值的大小來分割輪盤的位置 ,適應函數值越大的話,則在輪 盤上佔有的面積比例也越大,每個物種在輪盤上佔有的面積比例越大代表被 挑選到交配池中的機率越大 ,然後隨機選取輪盤的一點 ,其所對應的物種即被 選入到交配池中 。

– 競爭式選擇(tournament selection) :在每一代的演化過程中首先隨機地選取 兩個或更多的染色體,具有最大適應函數值的染色體即被選中送至交配池中 。

• 交配:交配運算式,依據交配率從染色體中隨機地任意兩個字元串 ,經彼此交換字 元串的某些位元資訊而產生兩個新位元字串的一種過程, 一般而言交配運算可以用

ࢉՅᡏጓዸ

適應值較高者被挑選的機率大於適應值較低者 ,因此高適應值的個體有較高的機會繁衍 後代 。 雙親根據交配機率決定是否要進行交配產生子代 ,產生後的子代再根據突變機率 決定是否要做進一步的突變 。 交配是主要的遺傳運算 ,而突變只是次要的動作 。 產生後 的子代或原來的雙親 (沒有進行交配或突變者) 共同組成下一世代 (仍然是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] 。

3

相關文件