• 沒有找到結果。

連續數值-個別參數-個體資訊

第二章 文獻探討

2.3 具參數調整機制之差分演化式演算法介紹

2.3.4 連續數值-個別參數-個體資訊

DE algorithm with Self-adaptive strategy and control parameters (SspDE) [18]

SspDE 主要是希望藉由之前演化成功的經驗,希望保留住優良參數的影響力,

同時調整突變策略來加強後代的演化效果。下面為其參數調整方式:

(14)

(15)

} (16)

(11)、(12)、(13) 分別表示了 F 、 CR 與突變策略三個參數的範圍與定義,

而這三個參數個別擁有長度為 50 的串列來存放演化時所需的參考資訊:在演化 開始時,分別依照各自的設定範圍產生隨機值填滿對應的串列;而演化時則是依

18

序使用對應串列中的參數組,並紀錄產生之親代與子代的優劣情況。

串列更新方式則是將之前曾產生優良子代的參數組,有一定的機率保存到新 的串列中,每經過 50 代更新一次串列,而參數組不足的部份則會以隨機值填滿,

再打亂序列順序同時進行下 50 次的演化,重覆上述步驟直到代數終結。

上述的參數控制機制使得表現優秀參數值能在演化過程中保存下來,使得參 數能綜合大多數優秀的趨勢去發展;但此種控制方式有隱憂:如果紀錄的串列長 度太短,則可能使優秀參數參考價值相對變低,因為樣本數可能不足以符合問題 中實際趨勢;相反的,當串列長度太長時,優秀個體在短時間演化內無法表現出 優勢,則會造成收斂速度變慢或效能低落的可能。因此如何在 SspDE 中設定適 合的串列長度是此種參數調整機制重要的效能關鍵。

Self-adaptive Neighborhood Search DE (SaNSDE) [19]

由於 NSDE 對參數只有隨機性方式產生的缺點,SaNSDE 利用 SaDE 對

CR 與突變策略的調整方式,改良 NSDE 參數調整上的問題。在突變策略方面,

SaNSDE 作法則是效法 SaDE 的方式依照策略成功機率作選擇。 F 值調整方面,

SaNSDE 紀錄一序列突變出優良子代 F 值的分布方法:是由常態分布還是科西 分布產生的,並以其成功及失敗的次數比例來對之後的 F 值調整,該調整方式 類似於 SaDE,見 (17):

(17)

19

CR 值的算法也效法了 SaDE 調整方式並且加上改良,除了 SaDE 獨有的

外新增了 CRrec 來紀錄 25 代之內產生過優良子代的 CR 值,具體算法如 (18):

(18)

-

為了使較優秀的 CR 值在求取 時凸顯出來,並且有相對較大的機會被選 擇,在 的計算中加入了當前適應度差占整體的比重 ,再乘上 CRrec紀錄

25 代之內所對應的 CR 值,即求出 ,而 代表新值與舊值間的適應 度差。此方式利用加權方式來區別 CR 值優劣, 使得 CR 值之影響力擴大以求獲 得更佳的效能目的,所以捨棄原先 SaDE 單純挑選中位數的方式。

Adaptive DE with Optional External Archive (JADE) [12]

JADE 參數調整方式是用一定比例的親代參數值,參雜算術平均 (arithmetic mean) 和勒莫平均 (Lehmer mean) 調合來保存優良的 CR 與 F 值,其計算方式 如 (19) 和 (20) 所示。

(19)

為產生過優於親代的 CR 值集合,而 為其算術平均。c 值 決定參考之前 CR 值的比例,其範圍介於 0 與 1 之間。 初始值則設為 0.5,

20

Improved Self-Adaptive DE (ISADE) [20]:

ISADE 是由 jDE 的參數調整機制衍伸修改而成。當參數被調整時,會評估

相關文件