




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、遺傳算法入門最好的例子+Matlab源程序例:求下述二元函數的最大值:maxfix1,餐)rs.tXie1,2,3?4§.6,7)*e134,5.6,71(i)個體編碼遺傳算法的運算對象是表示個體的符號串,所以必須把變量x1,x2編碼為一種符號串。本題中,用無符號二進制整數來表示。因x1,x2為07之間的整數,所以分別用3位無符號二進制整數來表示,將它們連接在一起所組成的6位無符號二進制數就形成了個體的基因型,表示一個可行解。例如,基因型X=101110所對應的表現型是:x=5,6。個體的表現型x和基因型X之間可通過編碼和解碼程序相互轉換。(2)初始群體的產生遺傳算法是對群體進行的進
2、化操作,需要給其淮備一些表示起始搜索點的初始群體數據。本例中,群體規(guī)模的大小取為4,即群體由4個個體組成,每個個體可通過隨機方法產生。如:011101,101011,011100,111001(3)適應度汁算遺傳算法中以個體適應度的大小來評定各個個體的優(yōu)劣程度,從而決定其遺傳機會的大小。本例中,目標函數總取非負值,并且是以求函數最大值為優(yōu)化目標,故可直接利用目標函數值作為個體的適應度。(4)選擇運算選擇運算(或稱為復制運算)把當前群體中適應度較高的個體按某種規(guī)則或模型遺傳到下一代群體中。一般要求適應度較高的個體將有更多的機會遺傳到下一代群體中。本例中,我們采用與適應度成正比的概率來確定各個個體
3、復制到下一代群體中的數量。其具體操作過程是:先計算出群體中所有個體的適應度的總和fi(i=1.2,M);其次計算出每個個體的相對適應度的大小fi/fi,它即為每個個體被遺傳到下一代群體中的概率;每個概率值組成一個區(qū)域,全部概率值之和為1;最后再產生一個0到1之間的隨機數,依據該隨機數出現在上述哪一個概率區(qū)域內來確定各個個體被選中的次數。個體編號初始群體P<Oj與*占息激的百分比選擇結果111101三5340.2410111012loini1q3340.24L111001寶口ill。3401-70inionJ111001715Q0.35111001息4Q143J(5)交叉運算交叉運算是遺傳
4、算法中產生新個體的主要操作過程,它以某一概率相互交換某兩個個體之間的部分染色體。本例采用單點交叉的方法,其具體操作過程是:?先對群體進行隨機配對;?其次隨機設置交叉點位置;?最后再相互交換配對染色體之間的部分基因。飾S號選擇結果敵推況3s冷果1OliDOL1110011-21-2:2111101IQlgl3-43-4:410100141111011可以看出,其中新產生的個體tiikt,rlion,'的適應度較原來兩個個體的適應度都要高。(6)變異運算變異運算是對個體的某一個或某一些基因座上的基因值按某一較小的概率進行改變,它也是產生新個體的一種操作方法。本例中,我們采用基本位變異的方法
5、來進行變異運算,其具體操作過程是:?首先確定出各個個體的基因變異位置,下表所示為隨機產生的變異點位置,其中的數字表示變異點設置在該基因座處;?然后依照某一概率將變異點的原有基因值取反。怖組號播黑變身點1011001I!111101531010012J1110116011101nun111001111010O11L01minU1W1111010p(t+1)對群體P(t)進行一輪選擇、交叉、變異運算之后可得到新一代的群體從上表中可以看出,群體經過一代進化之后,其適應度的最大值、平均值都得到了明顯的改進。事實上,這里已經找到了最佳個體“111111”。注意個體編號初始群體適值曲功占緘的百分比Q/Ef
6、134011101101011011100111001355334713步0.240,24or035的結果釀播況突竭果變異點變異結果110r-di011101上Jk.4111VU11010111110015-4看±-:.3-4s401100111Ta.iLOiMl111011456011101111111jij.miL1110吐111010占總數的百分比需要說明的是,表中有些欄的數據是隨機產生的。這里為了更好地說明問題,我們特意選擇了一些較好的數值以便能夠得到較好的結果,而在實際運算過程中有可能需要一定的循環(huán)次數才能達到這個最優(yōu)結果。環(huán)群體P011101111111111001111
7、010囹I0140.420.21025Matlab程序清單】clc;clearall;formatlong;%設定數據顯示格式%初始化參數T=10;%仿真代數N=4;%群體規(guī)模pm=0.05;pc=0.8;%交叉變異概率umax=7;umin=1;%參數取值范圍L=3;%單個參數字串長度,總編碼長度2Lbval=round(rand(N,2*L);%初始種群bestv=-inf;%最優(yōu)適應度初值%迭代開始forii=1:T%解碼,計算適應度fori=1:Ny1=0;y2=0;forj=1:1:Ly1=y1+bval(i,L-j+1)*2A(j-1);endx1=(umax-umin)*y1/(
8、2AL-1)+umin;forj=1:1:Ly2=y2+bval(i,2*L-j+1)*2A(j-1);endx2=(umax-umin)*y2/(2AL-1)+umin;obj(i)=x1.A2+x2.A2;%目標函數xx(i,:)=x1,x2;endfunc=obj;%目標函數轉換為適應度函數p=func./sum(func);q=cumsum(p);%累力口fmax,indmax=max(func);%求當代最佳個體iffmax>=bestvbestv=fmax;%到目前為止最優(yōu)適應度值bvalxx=bval(indmax,:);%到目前為止最佳位串optxx=xx(indmax,
9、:);%到目前為止最優(yōu)參數endBfit1(ii)=bestv;%存儲每代的最優(yōu)適應度%遺傳操作開始%輪盤賭選擇fori=1:(N-1)r=rand;tmp=find(r<=q);newbval(i,:)=bval(tmp(1),:);endnewbval(N,:)=bvalxx;%最優(yōu)保留bval=newbval;%單點交叉fori=1:2:(N-1)cc=rand;ifcc<pcpoint=ceil(rand*(2*L-1);%取得一個1到2L-1的整數ch=bval(i,:);bval(i,point+1:2*L)=bval(i+1,point+1:2*L);bval(i+1,point+1:2*L)=ch(1,point+1:2*L);endendbval(N,:)=bvalxx;%最優(yōu)保留%位點變異mm=rand(N,2*L)<pm;%N行,小于變異概率
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 咸魚售后協(xié)議書范本
- 總價下浮20合同協(xié)議
- 商品展示樣品合同協(xié)議
- 微信公眾號合同解約協(xié)議
- 毛呸房屋租賃合同協(xié)議
- 2025年度糧食委托競價采購合同書
- 售后責任協(xié)議書范本
- 2025高校科研技術服務合同
- 員工在病期間協(xié)議合同
- 微信平臺建設合同協(xié)議
- 專題八 概率與統(tǒng)計(2020-2024)五年高考《數學》真題分類匯編(解析版)
- 供貨保證措施以及應急保障措施
- 任務6-2 機場安檢崗位的設置課件講解
- 倫理與社會責任智慧樹知到期末考試答案章節(jié)答案2024年浙江大學
- 物聯(lián)網技術概論智慧樹知到期末考試答案章節(jié)答案2024年西安交通大學
- (正式版)SHT 3075-2024 石油化工鋼制壓力容器材料選用規(guī)范
- 幼兒園大班語言《睡睡鎮(zhèn)》課件
- 2024年山東省濟南市市中區(qū)中考二模地理試卷
- 人教版一年級《天地人你我他》課件
- 新車入戶代辦委托書
- 第10課 鴉片戰(zhàn)爭【人教版】
評論
0/150
提交評論