iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 27
0

今天要跟大家介紹的是模因演算法
(在做基因演算法研究時發現的,當初發現的時候也真的是一頭霧水,到底是甚麼鬼東西XDDD)

模因演算法(Memetic Algorithm, MA)是遺傳演算法的延伸
中文又叫做文化基因演算法、瀰集演算法
會被稱之為文化基因演算法又叫做瀰集的原因是,這個演算法是在闡述人與人之間傳遞訊息的過程中,將某些資訊會產生變化,僅留下重點部分(精華)的過程,而在Dawkins的The Selfish Gene書中認為Meme(瀰)是人之間交換訊息的傳遞單位,而瀰無所不在。
MA是根據文化的演化概念所發展出來了多點搜尋法,利用全域搜尋結合區域搜尋來求解。

主要是透過局部搜尋的技術來減少提早收斂的可能性
MA也常稱之為 Baldwinian evolutionary algorithms (EAs)、Lamarckian EAs、cultural algorithms或genetic local search.

Pseudocode 虛擬碼

begin
    t :=0;
    P(t) :=initPop();
    P(t) :=localSearch(P(t));
    evaluateFitness(P(t));
    while (stopping criteria not met) do
        P'(t) :=selectForVariation(P(t));
        P'(t) :=recombine(P'(t));
        P'(t) :=mutate(P'(t));
        P'(t) :=localSearch(P'(t));
        evaluateFitness(P'(t));
        P(t+1) :=selectNewPop(P(t), P'(t));
        t :=t+1;
   end  
end

相關參考資料:
Wikipedia-Memetic Algorithm


上一篇
【Day26】GA with you - Ant Colony Optimization 蟻群演算法
下一篇
【Day28】GA with you - Simulation Annealing 模擬退火法
系列文
GA Note - 基因演算法的世界30

尚未有邦友留言

立即登入留言