遺傳算法實(shí)驗(yàn)報(bào)告(僅供參照)_第1頁
遺傳算法實(shí)驗(yàn)報(bào)告(僅供參照)_第2頁
遺傳算法實(shí)驗(yàn)報(bào)告(僅供參照)_第3頁
遺傳算法實(shí)驗(yàn)報(bào)告(僅供參照)_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、參考資料一-頁眉頁腳可刪除-人工智能實(shí)驗(yàn)報(bào)告-參看資料-頁眉頁腳可刪除一遺傳算法實(shí)驗(yàn)報(bào)告一、問題描述對遺傳算法的選擇操作, 設(shè)種群規(guī)模為4,個(gè)體用二進(jìn)制編碼,適應(yīng)度函數(shù),x的取值區(qū) 間為0,30。若遺傳操作規(guī)定如下:(1)選擇概率為100%,選擇算法為輪盤賭算法;(2)交叉概率為1,交叉算法為單點(diǎn)交叉,交叉順序按個(gè)體在種群中的順序;(3)變異幾率為0請編寫程序,求取函數(shù)在區(qū)間 0,30的最大值。二、方法原理遺傳算法:遺傳算法是借鑒生物界自然選擇和群體進(jìn)化機(jī)制形成的一種全局尋優(yōu)算法。與傳統(tǒng)的優(yōu)化算法相比, 遺傳算法具有如下優(yōu)點(diǎn):不是從單個(gè)點(diǎn),而是從多個(gè)點(diǎn)構(gòu)成的群體開始搜索;在搜索最優(yōu)解過程中,

2、只需要由目標(biāo)函數(shù)值轉(zhuǎn)換得來的適應(yīng)值信息,而不需要導(dǎo)數(shù)等其它輔助信息; 搜索過程不易陷入局部最優(yōu)點(diǎn)。目前,該算法已滲透到許多領(lǐng)域,并成為解決各領(lǐng)域復(fù)雜問題的有力工具。在遺傳算法中,將問題空間中的決策變量通過一定編碼方法表示成遺傳空間的一個(gè)個(gè)體,它是一個(gè)基因型串結(jié)構(gòu)數(shù)據(jù);同時(shí),將目標(biāo)函數(shù)值轉(zhuǎn)換成適應(yīng)值,它用來評價(jià)個(gè)體的優(yōu)劣,并作為遺傳操作的依據(jù)。遺傳操作包括三個(gè)算子:選擇、 交叉和變異。選擇用來實(shí)施適者生存的原則,即把當(dāng)前群體中的個(gè)體按與適應(yīng)值成比例的概率復(fù)制到新的群體中,構(gòu)成交配池(當(dāng)前代與下一代之間的中間群體)。選擇算子的作用效果是提高了群體的平均適應(yīng)值。由于選擇算子沒有產(chǎn)生新個(gè)體,所以群體中

3、最好個(gè)體的適應(yīng)值不會因選擇操作而有所改進(jìn)。交叉算子可以產(chǎn)生新的個(gè)體,它首先使從交配池中的個(gè)體隨 機(jī)配對,然后將兩兩配對的個(gè)體按某種方式相互交換部分基因。變異是對個(gè)體的某一個(gè)或某一些基因值按某一較小概率進(jìn)行改變。從產(chǎn)生新個(gè)體的能力方面來說,交叉算子是產(chǎn)生新個(gè)體的主要方法,它決定了遺傳算法的全局搜索能力;而變異算子只是產(chǎn)生新個(gè)體的輔助方法, 但也必不可少,因?yàn)樗鼪Q定了遺傳算法的局部搜索能力。交叉和變異相配合,共同完成對搜索空間的全局和局部搜索。三、實(shí)現(xiàn)過程(1) 編碼:使用二進(jìn)制編碼,隨機(jī)產(chǎn)生一個(gè)初始種群。L表示編碼長度,通常由對問題的求解精度決定,編碼長度 L越長,可期望的最優(yōu)解的精度也就越高,

4、過大的L會增大運(yùn)算量。(2) 生成初始群體:種群規(guī)模表示每一代種群中所含個(gè)體數(shù)目。隨機(jī)產(chǎn)生N個(gè)初始串結(jié) 構(gòu)數(shù)據(jù),每個(gè)串結(jié)構(gòu)數(shù)據(jù)成為一個(gè)個(gè)體, N個(gè)個(gè)體組成一個(gè)初始群體, N表示種群規(guī)模的大 小。當(dāng)N取值較小時(shí),可提高遺傳算法的運(yùn)算速度,但卻降低種群的多樣性,容易引起遺傳算法早熟,出現(xiàn)假收斂;而N當(dāng)取值較大時(shí),又會使得遺傳算法效率降低。一般建議的取值范圍是20100。遺傳算法以該群體作為初始迭代點(diǎn);(3)適應(yīng)度檢測:根據(jù)實(shí)際標(biāo)準(zhǔn)計(jì)算個(gè)體的適應(yīng)度,評判個(gè)體的優(yōu)劣,即該個(gè)體所代表的可行解的優(yōu)劣。本例中適應(yīng)度即為所求的目標(biāo)函數(shù);(4)選擇:從當(dāng)前群體中選擇優(yōu)良(適應(yīng)度高的)個(gè)體,使它們有機(jī)會被選中進(jìn)入

5、下一次迭代過程,舍棄適應(yīng)度低的個(gè)體。 本例中采用輪盤賭的選擇方法,即個(gè)體被選擇的幾率與其適應(yīng)度值大小成正比;(5)交叉:遺傳操作,根據(jù)設(shè)置的交叉概率對交配池中個(gè)體進(jìn)行基因交叉操作,形成新一代的種群,新一代中間個(gè)體的信息來自父輩個(gè)體,體現(xiàn)了信息交換的原則。 交叉概率控制參考資粋一項(xiàng)眉頁腳可刪除一著交叉操作的頻率,由于交叉操作是遺傳算法中產(chǎn)生新個(gè)體的主要方法,所以交叉概率通常應(yīng)取較大值;但若過大的話,又可能破壞群體的優(yōu)良模式。一般取0.4到0.99。(6) 變異:隨機(jī)選擇中間群體中的某個(gè)個(gè)體,以變異概率大小改變個(gè)體某位基因的值。變異為產(chǎn)生新個(gè)體提供了機(jī)會。 變異概率也是影響新個(gè)體產(chǎn)生的一個(gè)因素,變

6、異概率小,產(chǎn)生新個(gè)體少;變異概率太大,又會使遺傳算法變成隨機(jī)搜索。一般取變異概率為0.0001 0.1。(7) 終止進(jìn)化代數(shù)。本例中規(guī)定遺傳代數(shù)的收斂判據(jù),根據(jù)設(shè)置好的進(jìn)化代數(shù),搜索到規(guī)定代數(shù)后自動停止。四、具體代碼代碼如下:ttinclucletiiwltincludetypedef structint code;染芭體int degree;/適應(yīng)度Tndi;Indi group(10;/Z種群規(guī)模為“uaid Judge(IndiInt happened(djutale p”/發(fā)生一個(gè)尸曠1間概率的事件 一void Crossf Indi Indi &y)/ y 払作x.cod?ttix3

7、;z.cade=.code-tenp+tenp1;z1. cocley . code-tempi * temp;Judgef z);Judgefzl):If(-N.degree)如果新彳體不如雙親,淘汰之x-z;elseif (z , .degree)y-i;if(x,degree-x.degree) 如果*t卜體不如雙親淘汰之x-z1;else=*=|j tfegrer)yzT;參考資料一頁眉頁腳可刪除一uoid adin()ndl indldest;it 3. j,c :int 5um,strick,SUM-0; static int n-fl; srand(ti(HULL);勢”U陡機(jī)得

8、到初始種群 groupi .code-rand()32; printF(*% priMU”; for(l-1;groupbest.degreebest-j;/t當(dāng)苗懸優(yōu)廠偉prints*第#如代中最優(yōu)個(gè)體為 抽 性町平均適應(yīng)度為 皆幣W.1Tqroupbest.codp fgroup(nest.degree,sun/10.;for(c=1G;c;-c)Strick-float rand( )/RAND_MAX*Sun); 咅盤中的色子選擇個(gè)嚴(yán) m For(x= 0;x=qroupk.deqree;+x) strick-=gr0Hpx.riegrpe;strick-(int)(Flat)rand()/RAND MAXsun);for(9 B;y-groupp.degre&;+*y) strick-=groupfy,degree;lf(happened(t*9)CrDss(graupx *group(i/ )五、實(shí)驗(yàn)結(jié)果C:Windowssy stem 3 2c md.exe3 & 8 0 02 2 3 3 - 01 - 4ttfef

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論