




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
遺傳算法最值遺傳算法(GeneticAlgorithm)是模擬達爾文生物進化論的自然選擇和遺傳學機理的生物進化過程的計算模型,是一種通過模擬自然進化過程搜索最優(yōu)解的方法,它最初由美國Michigan大學J.Holland教授于1975年首先提出來的,并出版了頗有影響的專著《AdaptationinNaturalandArtificialSystem命,GA這個名稱才逐漸為人所知,J.Holland教授所提出的GA通常為簡單遺傳算法(SGA)。1-_L.■J.■?:>!?:'、'1-_L.■J.■?:>!?:'、':■1?:■■三1!~r三1J._L_-L_J--L_J--矣一「rm!■1s.■':■1?:■§計算個彼S適痕度也ftr-:■-L.J■,I■1>L_1選打1交叉■Is:J..L.J..:圖1.遺傳算法的流程圖pmutationtempbestfitmaxfitgenbestgenpoppmpnp%染色體長度%種群大小%交叉概率%變異概率,取到了最大,可以適當?shù)臏p小點設定為0.05%最大代數(shù)%淘汰概率%保護概率所求函數(shù)為y=x+10*sin(5*x)+7*cos(4*x)%主函數(shù)functionmain()globalchromlchromoldpopnewpopvariblefitnesspopsizesumfitness%定義全局變量globalpcrossglobalmaxgen%lchrom=12;popsize=30;pcross=0.6;pmutation=0.1;maxgen=100;mp二floor(pp*popsize);np二floor(po*popsize);%initpop;%forgen=1:maxgengeneration;end%best;bestfitbestgengen=1:maxgen;%保護的個數(shù)%淘汰的個數(shù)%初始種群%最佳個體適應度值輸出pmutationtempbestfitmaxfitgenbestgenpoppmpnp%染色體長度%種群大小%交叉概率%變異概率,取到了最大,可以適當?shù)臏p小點設定為0.05%最大代數(shù)%淘汰概率%保護概率mp二floor(pp*popsize);np二floor(po*popsize);%initpop;%forgen=1:maxgengeneration;end%best;bestfitbestgengen=1:maxgen;%保護的個數(shù)%淘汰的個數(shù)%初始種群%最佳個體適應度值輸出%最佳個體所在代數(shù)輸出endoldpop(i,1:lchrom)二chrom;end%%***產(chǎn)生新一代個體**********************************%functiongeneration。%計算適應度值%保護淘汰操作%選擇操作objfun;pp_po;select;crossover;mutation;%%********************計算適應度值********************************%functionobjfun()globallchromoldpopfitnesspopsizechrommaxfitgenvariblea=0;b=30;%計算適應度值%保護淘汰操作%選擇操作chrom=oldpop(i,:);c=decimal(chrom);varible(1,i)=a+c*(b-a)/(2."lchrom-1);%對應變量值fitness(1,i)=varible(1,i)*varible(1,i);%fitness(1,i)=20*cos(0.25*varible(1,i))-12*sin(0.33*varible(1,i))+40;%個體適應度函數(shù)值end%%個體排序lsort;%maxfit(1,gen)二max(fitness);%求最大適應度值%%********************二進制轉(zhuǎn)十進制****************************%functionc=decimal(chrom)globallchrompopsizec=0;forj=1:lchrom%個體排序c=c+chrom(1,j)*2.”(lchrom—j);end%
%*********************個體排序********************************%functionlsort()globalpopsizefitnessoldpopfori=1:popsizej=i+1;whilej<=popsizeiffitness(1,i)>fitness(1,j)tf=fitness(1,i);tc=oldpop(i,:);fitness(1,i)=fitness(1,j);oldpop(i,:)=oldpop(j,:);fitness(1,j)=tf;oldpop(j,:)=tc;endj=j+1;endend%********************************************************************%%********************保護/淘汰操作************************************functionpp_po()globalpopsizeoldpopnpi=np+1;%np=floor(po*popsize);%淘汰的個數(shù)j=1;whilei<=popsizetoldpop(j,:)=oldpop(i,:);j=j+1;endfori=i+1;endforoldpop(i,:)二toldpop(i,:);end%*************************************************************%********************%轉(zhuǎn)輪法選擇操作**********************************functionselect()globalfitnesspopsizesumfitnessoldpoptempmpnpsumfitness=0;i=1:(popsize-np-mp)sumfitness二sumfitness+fitness(1,i);i=1:(popsize-np-mp)sumfitness二sumfitness+fitness(1,i);endforp(1,i)=fitness(1,i)/sumfitness;%個體染色體的選擇概率endq=cumsum(p);%個體染色體的累積概率b=sort(rand(1,(popsize-mp)));%mp保護個體數(shù)j=1;k=1;whilej<=(popsize-mp)ifb(1,j)<q(1,k)temp(j,:)=oldpop(k,:);j=j+1;elsek=k+1;endendfori=(popsize-mp+1):popsizej=popsize-np-mp+1;temp(i,:)=oldpop(j,:);j=j+1;end%**************************************************************************functioncrossover()globaltemppopsizepcrosslchrommpn=floor(pcross*(popsize-mp));%交叉發(fā)生的次數(shù)ifrem(n,2)~=0n=n+1;endj=1;m=0;fori=1:(popsize-mp)p=rand;ifp<pcrossparent(j,:)=temp(i,:);%產(chǎn)生兩個父代k(1,j)=i;j=j+1;m=m+1;if(j==3)&(m<=n)pos=round(rand*(lchrom-1))+1;fori=1:poschild1(1,i)=parent(1,i);child2(1,i)=parent(2,i);endfori=(pos+1):lchromchild1(1,i)=parent(2,i);child2(1,i)=parent(1,i);endi=k(1,1);j=k(1,2);temp(i,:)=child1(1,:);temp(j,:)=child2(1,:);j=1;endendend%*********************************************************************%************************變異操作*************************************functionmutation()globalpopsizelchrompmutationtempnewpopoldpopmpm=lchrom*(popsize-mp);%總的基因數(shù)n=round(pmutation*m);%變異發(fā)生的次數(shù)fori=1:nk=round(rand*(m-1))+1;j=ceil(k/lchrom);l=rem(k,lchrom);ifl==0temp(j,lchrom)=~temp(j,lchrom);elsetemp(j,l)=~temp(j,l);endendfori=1:popsizenewpop(i,:)=temp(i,:);%產(chǎn)生新的個體oldpop(i,:)=newpop(i,:);end%*********************************************************************%****************最佳個體********************************************functionbest()globalmaxfitbestfitgenmaxgenbestgenbestfit=maxfit(1,1);gen=2;whilegen<=maxgenifbestfit<maxfit(1,gen)bestfit=maxfit(1,gen);bestgen=gen;endgen=gen+1;end%*******************************************************************function[sol,eval]=fitness(sol,options)x=sol(1);eval=x+10*sin(5*x)+7*cos(4*x);%eval為個體適應度%遺傳算法求最大值figure(1)fplot('x+10*sin(5*x)+7*cos(4*x)',[0,9])holdoninitPop=initializega(10,[09],'fitness');figure(1)plot(initPop(:,1),initPop(:,2),'b*')[x,endPop]=ga([09],'fitness',口,initPop,[1e-6:1:1],'maxGenTerm',25,'normGeomSelect',...[0.08],['arithXover'],[20],'nonUnifMutation',[2253])figureplot(endPop(:,1),endPop(:,2),'bo')[x,endPop,bPop,trace]=ga([09],'fitness',口,initPop,[1e-611],'maxGenTerm',25,'normGeomSelect',...[0.08],['arithXover'],[2],'nonUnifMutation',[2253])figureplot(endPop(:,1),endPop(:,2),'y*')f
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度解除雙方影視制作合作合同
- 2025年度科幻電影總導演專業(yè)聘用合同
- 二零二五年度電子商務平臺軟件使用及推廣許可協(xié)議
- 2025年度生態(tài)果園產(chǎn)權(quán)及種植技術(shù)引進合同
- 2025年度紡織品普通采購合同書
- 二零二五年度醫(yī)療健康行業(yè)業(yè)務員委托合同
- 二零二五年度手農(nóng)機售后服務與技術(shù)支持合同
- 2025年度環(huán)保項目投資欠款付款協(xié)商協(xié)議書
- 二零二五年度民間借貸合同-跨境電商供應鏈融資
- 二零二五年度員工股權(quán)激勵與股權(quán)鎖定期協(xié)議
- 2025年中考百日誓師大會校長致辭稿(一)
- 生物產(chǎn)品檢驗檢疫基礎(chǔ)知識單選題100道及答案
- 江蘇省中職《英語》學業(yè)水平考試備考試題集(含歷年真題)
- 2025年合伙型公司新合伙人加入?yún)f(xié)議
- 2025年安全員之C證(專職安全員)考試題庫
- 2025城市商鋪買賣合同書
- 醫(yī)院感染及其危害
- 2025年佳木斯職業(yè)學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025年春新北師大版物理八年級下冊課件 第六章 質(zhì)量和密度 第一節(jié) 物體的質(zhì)量及其測量
- 2024全國各省高考詩歌鑒賞真題及解析
- 《價值觀培訓》課件
評論
0/150
提交評論