第五章 整合 DNA 演化法及 Q-Learning 之適應性學習方法
5.2 整合 DNA 演化法與 Q-Learning 之適應性學習方法的設計
此整合性學習方法對於一未知且複雜的環境具有良好的學習能力,而所使用 的 DNA 編碼方式、Q-Learning 之 Q-value 及 reward 設計方式,以及適應函數設 計方式等,以下針對各部份作說明。
DNA 演化:DNA 遺傳演算法之主要架構如圖 5-2:
圖 5-2 DNA 遺傳演算法架構
DNA 遺傳演算法的架構跟傳統遺傳演算法很相近,差別在於 DNA 的編碼 方式及基因操作方式有所不同,而基因操作方式除了傳統遺傳演算法的操作方 式外,還包括細菌(bacterial)操作、酵素(enzyme)操作,及病毒(virus)操作等。
生物學(biological)DNA 由核甘酸(nucleotide)分類成四個基底(T, C, A, and G) 所組成的,而且 DNA 的四個基底可以組合出不同的基因,每一個氨基(amino) 酸(acid)由三個核甘酸的基底組合並表示之,且三個核甘酸的基底組合稱之為密 碼子(codon),就是某一基因的代碼。密碼子有 64 種類型,但只有 20 種氨基酸 可以對應到 64 種密碼子的類型,因此密碼子及氨基酸的對應關係如表 5-1 所示:
表 5-1 密碼子與氨基酸之對應關係
而本論文所使用的 DNA 染色體的基因當作是移動機器人所行走的角度,其
本論文實現方式是以亂數產生十條染色體,而每一條染色體的的基因由四
人的各個距離感測器之間的大小並取出距離最小的感測器,以進行下一步各種不
適應函數(Fitness Function):適應函數是 DNA 染色體演化的依據,適應函 數的選擇必須符合實際環境的情況來設計,否則會有演化失敗的情形產生,而 適應函數是愈大愈好,其設計方式如(5.7)所示:
(5.7)
其中, f _goal是當移動機器人成功的搜尋到目標物時,所給定的一個正整 數,表示適應函數會增大。而移動機器人在搜尋目標物時最理想的情況就是不 但能成功地閃避障礙物,並以最短路徑達成搜尋目標物的目標,其中若移動機 器人成功閃避障礙物時,其 Q-value 之參數r(reward)通常會落入s∈SS→FS、
s∈NSS→FS、s∈FS→FS及s∈SS →SS等空間中,使得r值都為正值,而使 (5.3)式會一直累增,並且使(5.2)式所計算出的 Q-value 會讓適應函數變大,
_
step number為移動機器人所行走的步數,行走的步數愈少,表示行走的路徑
愈短,因為適應函數愈大愈好,所以以 1 _
step number 方式來考慮移動機器人的 最短路徑。
以上整體學習演算法的過程以流程圖表示如下頁所示:
1 _
fitness Q _ f goal
step number
= ⋅ +
圖 5-5 學習演算法流程圖
本章所探討之整合學習法,其中 Q-Learning 是根據報酬值來使移動機器人 進行閃避障礙物的學習,而 DNA 遺傳演算法之適應函數是使移動機器人能夠 收斂到最短路徑,因此整合學習法之模擬與實現將在下個章節來表示之。
此族群執行結束
計算染色體之輸出動作及執行 動作
初始化
選擇其中一條DNA染色體
回傳報酬值及更新Q-value
演算法操作結束
結束
遺傳操作
否
是
否
是
第六章 移動機器人之模擬與實驗
本章節將會針對移動機器人模擬與實驗細節進行說明,本論文實現方式是 先利用模擬器來進行整合演算法之學習,而模擬完成的參數就會下載到實體機器 人身上進行實驗結果的驗證。