Re: [姆咪] 什麼是crossover

作者: Cprogramming (python邪魔歪道)   2018-03-17 21:21:46
※ 引述《Philly5566 (SIS,SIG)》之銘言:
: 這個簡單
: https://youtu.be/iNIN1364XAU
: 羊羊一定跟我一樣是ai迷
: 難怪對他會有種親近感
我也是AI迷
在遺傳算法裡,優化問題的解被稱為個體,它表示為一個變量序列,
叫做染色體或者基因串。染色體一般被表達為簡單的字符串或數字串,
不過也有其他的依賴於特殊問題的表示方法適用,這一過程稱為編碼。
首先,算法隨機生成一定數量的個體,有時候操作者也可以干預這個隨機產生過程,
以提高初始種群的質量。在每一代中,都會評價每一個體,
並通過計算適應度函數得到適應度數值。
按照適應度排序種群個體,適應度高的在前面。
這裡的「高」是相對於初始的種群的低適應度而言。
下一步是產生下一代個體並組成種群。這個過程是通過選擇和繁殖完成,
其中繁殖包括交配(crossover,在算法研究領域中我們稱之為交叉操作)
和突變(mutation)。
選擇則是根據新個體的適應度進行,但同時不意味著完全以適應度高低為導向,
因為單純選擇適應度高的個體將可能導致算法快速收斂到局部最優解而非全局最優解,
我們稱之為早熟。作為折中,遺傳算法依據原則:適應度越高,被選擇的機會越高,
而適應度低的,被選擇的機會就低。
初始的數據可以通過這樣的選擇過程組成一個相對優化的群體。
之後,被選擇的個體進入crossover。
from wikipedia
幹 不過基因遺傳演算法收斂超久的zzz
作者: jeeyi345 (letmein)   2018-03-17 21:22:00
gi ==a
作者: Philly5566 (SIS,SIG)   2018-03-17 21:27:00
@/@

Links booklink

Contact Us: admin [ a t ] ucptt.com