![人工魚群算法matlab實現(xiàn)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/0ca3f9ee-bb34-4796-8233-a3a2528461dd/0ca3f9ee-bb34-4796-8233-a3a2528461dd1.gif)
![人工魚群算法matlab實現(xiàn)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/0ca3f9ee-bb34-4796-8233-a3a2528461dd/0ca3f9ee-bb34-4796-8233-a3a2528461dd2.gif)
![人工魚群算法matlab實現(xiàn)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/0ca3f9ee-bb34-4796-8233-a3a2528461dd/0ca3f9ee-bb34-4796-8233-a3a2528461dd3.gif)
![人工魚群算法matlab實現(xiàn)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/0ca3f9ee-bb34-4796-8233-a3a2528461dd/0ca3f9ee-bb34-4796-8233-a3a2528461dd4.gif)
![人工魚群算法matlab實現(xiàn)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/0ca3f9ee-bb34-4796-8233-a3a2528461dd/0ca3f9ee-bb34-4796-8233-a3a2528461dd5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、【精品文檔】如有侵權(quán),請聯(lián)系網(wǎng)站刪除,僅供學(xué)習(xí)與交流人工魚群算法matlab實現(xiàn).精品文檔.function lhl_AFclc;clear all; close all;format longVisual = 2.5; %人工魚的感知距離Step = 0.3; %人工魚的移動最大步長N = 10; %人工魚的數(shù)量Try_number = 50;%迭代的最大次數(shù)delta=0.618; %擁擠度因子a1 = -10; b1 = 10; a2 = -10; b2 = 10; d = ;%存儲50個狀態(tài)下的目標(biāo)函數(shù)值;k = 0; m = 50;%迭代次數(shù)X1 = rand(N,1)*(b1-a1
2、)+a1; %在-1010之間,隨機(jī)生成50個數(shù);X2 = rand(N,1)*(b2-a2)+a2;X = X1 X2; %X = ones(N,2);%for i = 1:N% X(i,1)=-10;% X(i,2)=10;%end% 人工魚數(shù)量,兩個狀態(tài)變量X1和X2;%計算50個初始狀態(tài)下的;for i = 1:N www = X(i,1),X(i,2); d(i) = maxf(www); end%公告牌用于記錄人工魚個體的歷史最好狀態(tài)w,i = max(d); % 求出初始狀態(tài)下的最大值w和最大值的位置i;maxX = X(i,1),X(i,2); % 初始公告板記錄,最大值位置;
3、maxY = w; % 初始化公告板記錄,最大值;figurex = ; figurey = ; figurez = ;figurex(numel(figurex)+1) = maxX(1); % 將maxX(1)放入figurex中,figurey(numel(figurey)+1) = maxX(2); % numel返回數(shù)組或者向量中所含元素的總數(shù),matlab數(shù)組下標(biāo)默認(rèn)是從1開始的figurez(numel(figurez)+1) = maxY;while(k<m) for i = 1:N XX = X(i,1),X(i,2); %拿出其中一條魚來看他的四種行為判斷%第一種行為
4、:聚群行為:伙伴多且不擠,就向伙伴中心位置移動%群聚行為是伙伴的中心點,凸規(guī)劃下,中心點一定還在約束內(nèi)%群聚行為不是一種maxf(Xc)的比較,就是看伙伴位置 nf1=0; Xc=0; label_swarm =0; %群聚行為發(fā)生標(biāo)志 for j = 1:N XX_1 = X(j,1), X(j,2); if (norm(XX_1-XX)<Visual) % norm函數(shù)求向量XXX-XX的范數(shù),由于二維向量,2或者省略都可以 nf1 = nf1+1; Xc = Xc+XX_1; end end Xc=Xc-XX; %需要去除XX本身; nf1=nf1-1; Xc = Xc/nf1;
5、%此時Xc表示XX感知范圍其他伙伴的中心位置; if(maxf(Xc)/nf1 > delta*maxf(XX) && (norm(Xc-XX)=0) XXR1=rand*Step*(Xc-XX)/norm(Xc-XX); XXnext1=XX+XXR1; if(XXnext1(1) > b1) XXnext1(1) = b1; end if(XXnext1(1) < a1) XXnext1(1) = a1; end if(XXnext1(2) > b2) XXnext1(2) = b2; end if(XXnext1(2) < a2) XXnex
6、t1(2) = a2; end label_swarm =1; temp_y_XXnext1=maxf(XXnext1); else label_swarm =0; temp_y_XXnext1=-inf; end%第二種行為:追尾行為 :周圍伙伴有最大值且附近不擠,向其伙伴方向移動%追尾行為追尋伙伴行為,還是在約束內(nèi) temp_maxY = -inf; %按照理論來說這塊應(yīng)該初始化為-無窮小, label_follow =0;%追尾行為發(fā)生標(biāo)記 for j = 1:N XX_2 = X(j,1),X(j,2); if(norm(XX_2-XX)<Visual) && (
7、maxf(XX_2)>temp_maxY) temp_maxX = XX_2; temp_maxY = maxf(XX_2); end end nf2=0; for j = 1:N XX_2 = X(j,1),X(j,2); if(norm(XX_2-temp_maxX)<Visual) nf2=nf2+1; end end nf2=nf2-1;%去掉他本身 if(temp_maxY/nf2)>delta*maxf(XX) && (norm(temp_maxX-XX)=0) %附近有Yj最大的伙伴,并且不太擁擠 XXR2=rand*Step*(temp_max
8、X-XX)/norm(temp_maxX-XX);%rand不是隨機(jī)反向,是隨機(jī)步長 XXnext2 = XX+XXR2; if(XXnext2(1) > b1) XXnext2(1) = b1; end if(XXnext2(1) < a1) XXnext2(1) = a1; end if(XXnext2(2) > b2) XXnext2(2) = b2; end if(XXnext2(2) < a2) XXnext2(2) = a2; end label_follow =1; temp_y_XXnext2=maxf(XXnext2); else label_foll
9、ow =0; temp_y_XXnext2=-inf; end %第三種行為:覓食行為:與前兩個行為不同,覓食和隨機(jī)行為都是找附近的狀態(tài),而不是找附近的同伴%覓食和隨機(jī)行為可能出現(xiàn)超出約束,所以,XX_3和XX_4是不一樣的%覓食行為和群聚行為、追尾行為是不一樣的,覓食行為是一種根據(jù)狀態(tài)來判斷的行為,群聚和追尾是根據(jù)伙伴來判斷的行為 label_prey =0; %判斷覓食行為是否找到優(yōu)于當(dāng)前的狀態(tài) for j = 1:Try_number R1V=Visual*(-1+2*rand(2,1)'); XX_3 = XX+R1V; if(XX_3(1) > b1) % 下面這四個是
10、一套,如果超出約束條件,就選值為邊界條件 XX_3(1) = b1; end if(XX_3(1) < a1) XX_3(1) = a1; end if(XX_3(2) > b2) XX_3(2) = b2; end if(XX_3(2) < a2) XX_3(2) = a2; end if(maxf(XX)<maxf(XX_3) XXR3=rand*Step*(XX_3-XX)/norm(XX_3-XX); XXnext3 = XX+XXR3; if(XXnext3(1) > b1) % 下面這四個是一套,如果超出約束條件,就選值為邊界條件 XXnext3(1)
11、 = b1; end if(XXnext3(1) < a1) XXnext3(1) = a1; end if(XXnext3(2) > b2) XXnext3(2) = b2; end if(XXnext3(2) < a2) XXnext3(2) = a2; end label_prey =1; break; end end temp_y_XXnext3=max(XXnext3); if(label_prey =0) temp_y_XXnext3=-inf; end%行為選擇 if(label_swarm=0) && (label_follow=0) &
12、;& (label_prey =0) %聚群和追尾魚太多太擁擠,都不發(fā)生;覓食覓不到更好的,造成三種行為都不發(fā)生。 %如果前三種行為都沒有發(fā)生出現(xiàn),必然是發(fā)生隨機(jī)行為 R2S=Step*(-1+2*rand(2,1)'); temp_XX = XX+R2S; if(XX(1) > b1) % 下面這四個是一套,如果超出約束條件,就選值為邊界條件 XX(1) = b1; end if(XX(1) < a1) XX(1) = a1; end if(XX(2) > b2) XX(2) = b2; end if(XX(2) < a2) XX(2) = a2; e
13、nd else %三種行為找最優(yōu) if(temp_y_XXnext1 > temp_y_XXnext2) if(temp_y_XXnext1 > temp_y_XXnext3) temp_XX = XXnext1; else temp_XX = XXnext3; end else if(temp_y_XXnext2 > temp_y_XXnext3) temp_XX = XXnext2; else temp_XX = XXnext3; end end end XX=temp_XX; X(i,1) = XX(1); X(i,2) = XX(2); end %至此,所有人工魚,完成一次行為判斷和移動 %這塊是更新公告牌信息 for i = 1:N XXX = X(i,1),X(i,2); if (maxf(XXX)>maxY) maxY = maxf(XXX); maxX = XXX; figurex(numel(figurex)+1) = maxX(1); figurey(numel(figurey)+1) = maxX(2); figurez(numel(figurez)+1) = maxY; end end x=X(:,1)' y=X(:,2)' plo
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度電動車電瓶租賃與節(jié)能減排服務(wù)合同
- 施工現(xiàn)場施工防化學(xué)泄漏威脅制度
- 情緒管理在校園心理輔導(dǎo)中的實踐
- DB35T 2233-2024桂花無性繁殖技術(shù)規(guī)程
- 專業(yè)墊資抵押合同范本
- 中外合資企業(yè)合同
- 個人大額度借款合同細(xì)則
- 買賣合同爭議仲裁協(xié)議書模板
- 人事檔案委托保管合同
- 上海市某餐飲管理有限公司勞動合同
- 湖北省武漢市2024-2025學(xué)年度高三元月調(diào)考英語試題(含答案無聽力音頻有聽力原文)
- 商務(wù)星球版地理八年級下冊全冊教案
- 天津市河西區(qū)2024-2025學(xué)年四年級(上)期末語文試卷(含答案)
- 北京市北京四中2025屆高三第四次模擬考試英語試卷含解析
- 2024年快遞行業(yè)無人機(jī)物流運輸合同范本及法規(guī)遵循3篇
- 地下商業(yè)街的規(guī)劃設(shè)計
- 傷殘撫恤管理辦法實施細(xì)則
- 中國慢性冠脈綜合征患者診斷及管理指南2024版解讀
- 提升模組良率-六西格瑪
- DL-T+5196-2016火力發(fā)電廠石灰石-石膏濕法煙氣脫硫系統(tǒng)設(shè)計規(guī)程
- 2024-2030年中國產(chǎn)教融合行業(yè)市場運營態(tài)勢及發(fā)展前景研判報告
評論
0/150
提交評論