版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、人工智能實驗報告學號:姓名:實驗名稱:遺傳算法實驗日期:2016.1.5實驗名稱遺傳算法【實驗?zāi)康摹空莆者z傳算法的基本原理,熟悉遺傳算法的運行機制,學會用遺傳算法來求解問題?!緦嶒炘怼窟z傳算法(GeneticAlgorithm)是模擬達爾文生物進化論的自然選擇和遺傳學機理的生物進化過程的計算模型,是一種通過模擬自然進化過程搜索最優(yōu)解的方法。遺傳算法是從代表問題可能潛在的解集的一個種群開始的,而一個種群則由經(jīng)過基因編碼的一定數(shù)目的個體組成。每個個體實際上是染色體帶有特征的實體。在一開始需要實現(xiàn)從表現(xiàn)型到基因型的映射即編碼工作。由于仿照基因編碼的工作很復雜,我們往往進行簡化,如二進制編碼,初代種
2、群產(chǎn)生之后,按照適者生存和優(yōu)勝劣汰的原理,逐代演化產(chǎn)生出越來越好的近似解,在每一代,根據(jù)問題域中個體的適應(yīng)度大小選擇個體,并借助于自然遺傳學的遺傳算子進行組合交叉和變異,產(chǎn)生出代表新的解集的種群。這個過程將導致種群像自然進化一樣的后生代種群比前代更加適應(yīng)于環(huán)境,末代種群中的最優(yōu)個體經(jīng)過解碼,可以作為問題近似最優(yōu)解。遺傳算法程度流程圖為:【實驗內(nèi)容】題目:已知f(x)=x*sin(x)+1,xw0,2力求f(x)的最大值和最小值。數(shù)據(jù)結(jié)構(gòu):structpoptype(doublegenelength;/染色體doublerealnumber;/對應(yīng)的實數(shù)xdoublefitness;/適應(yīng)度do
3、ublerfitness;/相對適應(yīng)度doublecfitness;/累計適應(yīng)度;structpoptypepopulationpopsize+1;/最后一位存放max/minstructpoptypenewpopulationpopsize+1;/染色體編碼:xW0,2n,變量長度為2兀,取小數(shù)點后6位,由于222<2n*106<223;因此,染色體由23位字節(jié)的二進制矢量表示,則X與二進制串(<b22b21b°>)2之間的映射如下:/4產(chǎn)i%2n(b22b21b0)bi*2=x'x=x'*3-Iiz0J102-1適應(yīng)度函數(shù):由于要求f(x)
4、的最值,所以適應(yīng)度函數(shù)即可為f(x)。但為了確保在輪賭法選擇過中,每個個體都有被選中的可能性,因此需要將所有適應(yīng)度調(diào)整為大于0的值。因此,設(shè)計求最大值的適應(yīng)度函數(shù)如下:evalmax=f(x)5=xsinx6;將最小問題轉(zhuǎn)化為求-f(x)的最大值,同理,設(shè)計最小值的適應(yīng)度函數(shù)如下:evalmin=-f(x)5=-xsinx4;種群大小:本實驗?zāi)J為50,再進行種群初始化。實驗參數(shù):主要有迭代數(shù),交叉概率,變異概率這三個參數(shù)。一般交叉概率在0.6-0.9范圍內(nèi),變異概率在0.01-0.1范圍內(nèi)??梢酝ㄟ^手動輸入進行調(diào)試。種群初始化主要代碼如下:voidinitialize。"(sran
5、d(time(NULL);inti,j;for(i=0;i<popsize;i+)for(j=0;j<23;j+)populationi.genej=rand()%2;voidtransform。/染色體轉(zhuǎn)化為實數(shù)xinti,j;for(i=0;i<=popsize+1;i+)populationi.realnumber=0;for(j=0;j<23;j+)populationi.realnumber+=populationi.genej*pow(2,j);populationi.realnumber=populationi.realnumber*2*pi/(pow(2
6、,23)-1);voidcal_fitness()/計算適應(yīng)度inti;for(i=0;i<popsize;i+)populationi.fitness=populationi.realnumber*sin(populationi.realnumber)+6;voidselect()/選擇操作intmem,i,j,k;doublesum=0;doublep;for(mem=0;mem<popsize;mem+)sum+=populationmem.fitness;for(mem=0;mem<popsize;mem+)populationmem.rfitness=populat
7、ionmem.fitness/sum;population0.cfitness=population0.rfitness;for(mem=1;mem<popsize;mem+)populationmem.cfitness=populationmem-1.cfitness+populationmem.rfitness;for(i=0;i<popsize;i+)/輪賭法選擇機制p=rand()%1000/1000.0;if(p<population0.cfitness)newpopulationi=population0;elsefor(j=0;j<popsize;j+)i
8、f(p>=populationj.cfitness&&p<populationj+1.cfitness)newpopulationi=populationj+1;for(i=0;i<popsize;i+)/復制給下一代populationi=newpopulationi;)voidcross()/交叉操作inti,mem,one;intfirst=0;doublex;for(mem=0;mem<popsize;mem+)x=rand()%1000/1000.0;if(x<pcross)+first;if(first%2=0)Xover(one,me
9、m);/個體間染色體進行交叉函數(shù)elseone=mem;)voidmutate()/變異操作inti,j,t;doublex;for(i=0;i<popsize;i+)for(j=0;j<length;j+)x=rand()%1000/1000.0;if(x<pvariation)if(populationi.genej)populationi.genej=0;elsepopulationi.genej=1;)voidcal_max()/計算最大值inti;doublemax,sum=0;intmax_m;max=population0.fitness;for(i=0;i&l
10、t;popsize-1;i+)if(populationi.fitness>populationi+1.fitness)if(populationi.fitness>=max)max=populationi.fitness;max_m=i;)elseif(populationi+1.fitness>=max)(max=populationi+1.fitness;max_m=i+1;)if(max>populationpopsize.fitness)(iteration=0;for(i=0;i<length;i+)populationpopsize.genei=po
11、pulationmax_m.genei;populationpopsize.fitness=populationmax_m.fitness;)for(i=0;i<length;i+)sum=populationpopsize.genei-populationmax_m.genei;if(sum=0)iteration+;transform();printf("%f,%f,%f,%fn",populationpopsize.fitness,populationpopsize+1.fitness,populationpopsize.realnumber,populatio
12、npopsize+1.realnumber);)【實驗結(jié)果】第9s俏:最大值曠:2.81907S-x=:2.007108010001110001101110010呼號61弋二最大值y=:2.819075,x-:2J007108染色林:01010001110001101110010第97代工最大值819610.x=:2J020339第最大值產(chǎn)二:281y610Ax=:2,020339fefl;:01010010010100001110011第99件二最大值*二2.&1”1呢x-:2-B20339染色林:01010010010100001110011S1眄代:最大值9=二普.81961團,x=:2.020339求取大值/取小值”射:S95代:最小值y=:-3814440,x=:491314011001000001011011110011R96代:最小值y=:-3814470x=:4913140=11001000001011011110011第971弋:最'值y=:-3814470,x=:4913140染色飪工10010
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 宿舍樓房出租合同
- 商標轉(zhuǎn)讓合同樣本
- 房地產(chǎn)交易經(jīng)紀合同
- 股份質(zhì)押合同
- 個人抵押借款合同
- 商品房裝修工程合同范本
- STEAM理念下初中數(shù)學項目式學習的設(shè)計研究
- 面向小行星探測的著陸器附著鉆進錨固力學特性研究
- 2025年安陽道路貨運駕駛員從業(yè)資格證考試題庫完整
- 高速光通信系統(tǒng)中信號識別方法研究
- 《教科版》二年級科學下冊全冊課件(完整版)
- (2024年)《處方管理辦法》培訓課件
- 人工智能在化工生產(chǎn)安全中的應(yīng)用
- 2023年6月浙江高考政治試卷真題解讀及答案解析(課件)
- 銷售部廉政培訓課件
- 三年級計算題三位數(shù)乘一位數(shù)練習300題帶答案
- 商務(wù)服務(wù)業(yè)的市場細分和定位策略
- 財政學論文我國財政支出存在的問題及改革建議
- 2022年湖南高速鐵路職業(yè)技術(shù)學院單招數(shù)學模擬試題及答案解析
- 小學生必備古詩
- 人教版英語八年級上冊單詞默寫表
評論
0/150
提交評論