智慧型控制 Intelligent Control

簡介

演算法(algorithm)是計算機的常用術語,指一套經由有規則的數學運算或邏輯判斷,完成某一特定工作的方法或流程。遺傳(基因)演算法就是依照基因遺傳的原則寫成的程式。

達爾文進化論的基本精神是「物競天擇,適者生存」,弱者會被自然淘汰。染色體具有複製、交配與突變的能力,所以新生代(子代)的染色體通常比母代優良,劣質的染色體則逐漸被淘汰。

最佳化方法大致分成兩類:

遺傳演算法仿效生物界優勝劣敗的進化法則:選出特性較好的母代,隨機交換彼此的基因資訊,期望產生比母代更優秀的子代;如此反覆,最後得到適應性最強的物種。三個最主要的運算子是複製(reproduction)、交配(crossover)與突變(mutation)。

求解的基本流程 Procedure

  1. 把所有要搜尋的參數編碼成染色體(二進位字串),例如以 4 位元字串 1011 代表一個參數值;隨機產生 \(M\) 個初始物種。
  2. 依求解的條件設計適應函數(fitness function),計算每個物種的適應值;適應能力較高的物種才有資格被挑選進入下一步,這就是複製的過程。
  3. 接著進行交配與突變,完成一次演化;如此重複,直到滿足終止條件(例如演化到指定代數,或最佳解不再改進)。
隨機產生初始族群解碼、計算適應函數值滿足終止條件?(代數、收斂)複製(選擇)交配突變否下一代是輸出最佳解

流程圖依原講義重繪;文字為原講義內容,僅做段落與用詞整理。

原圖對照
原圖