【—八年級(jí)生物之變異】,變異算子的基本內(nèi)容是對(duì)群體中的個(gè)體串的某些基因座上的基因值作變動(dòng)。依據(jù)個(gè)體編碼表示方法的不同,可以有以下的算法:
a)實(shí)值變異;
b)二進(jìn)制變異。
一般來說,變異算子操作的基本步驟如下:
a)對(duì)群中所有個(gè)體以事先設(shè)定的編譯概率判斷是否進(jìn)行變異;
b)對(duì)進(jìn)行變異的個(gè)體隨機(jī)選擇變異位進(jìn)行變異。
遺傳算法導(dǎo)引入變異的目的有兩個(gè):一是使遺傳算法具有局部的隨機(jī)搜索能力。當(dāng)遺傳算法通過交叉算子已接近最優(yōu)解鄰域時(shí),利用變異算子的這種局部隨機(jī)搜索能力可以加速向最優(yōu)解收斂。顯然,此種情況下的變異概率應(yīng)取較小值,否則接近最優(yōu)解的積木塊會(huì)因變異而遭到破壞。二是使遺傳算法可維持群體多樣性,以防止出現(xiàn)未成熟收斂現(xiàn)象。此時(shí)收斂概率應(yīng)取較大值。
遺傳算法中,交叉算子因其全局搜索能力而作為主要算子,變異算子因其局部搜索能力而作為輔助算子。遺傳算法通過交叉和變異這對(duì)相互配合又相互競(jìng)爭(zhēng)的操作而使其具備兼顧全局和局部的均衡搜索能力。所謂相互配合.是指當(dāng)群體在進(jìn)化中陷于搜索空間中某個(gè)超平面而僅靠交叉不能擺脫時(shí),通過變異操作可有助于這種擺脫。所謂相互競(jìng)爭(zhēng),是指當(dāng)通過交叉已形成所期望的積木塊時(shí),變異操作有可能破壞這些積木塊。如何有效地配合使用交叉和變異操作,是目前遺傳算法的一個(gè)重要研究?jī)?nèi)容。
基本變異算子是指對(duì)群體中的個(gè)體碼串隨機(jī)挑選一個(gè)或多個(gè)基因座并對(duì)這些基因座的基因值做變動(dòng)(以變異概率P.做變動(dòng)),(0,1)二值碼串中的基本變異操作如下:
基因位下方標(biāo)有*號(hào)的基因發(fā)生變異。
變異率的選取一般受種群大小、染色體長度等因素的影響,通常選取很小的值,一般取0.001-0.1。
總結(jié):當(dāng)最優(yōu)個(gè)體的適應(yīng)度達(dá)到給定的閥值,或者最優(yōu)個(gè)體的適應(yīng)度和群體適應(yīng)度不再上升時(shí),或者迭代次數(shù)達(dá)到預(yù)設(shè)的代數(shù)時(shí),算法終止。
右腦記憶論壇 | 快速記憶法 | 記憶力培訓(xùn) | 速讀培訓(xùn) | 速讀軟件 | 右腦培訓(xùn) | 站內(nèi)搜索 | 網(wǎng)站地圖
Copyright(C) 2006-2014 逍遙右腦 All Rights Reserved