資源簡介
最近初學(xué)粒子群算法,自己按照自己的理解把每個步驟都解釋了,然后每個步驟都解釋的很清楚,很適合初學(xué)者觀看,里面有matlab的代碼,還有文檔講解,反正對于我一個初學(xué)者來說是能夠看得懂得,如果你不是的初學(xué)的話就不要下載啦,免得浪費積分。

代碼片段和文件信息
%%?I.?清空環(huán)境
clc
clear
%%?II.?繪制目標(biāo)函數(shù)曲線
figure
[xy]?=?meshgrid(-2:0.1:2-2:0.1:2);
z?=?x*cos(2*pi*y)?+?y*sin(2*pi*x);
mesh(xyz)
hold?on
%%?III.?參數(shù)初始化
c1?=?0.49445;
c2?=?0.49445;
maxgen?=?100;?%?進化次數(shù)
sizepop?=?100;?%種群規(guī)模
Vmax?=?0.5;
Vmin?=?-0.5;
popmax%%?IV.?產(chǎn)生初始粒子和速度
for?i?=?1:sizepop
????%?隨機產(chǎn)生一個種群
????pop(i:)?=?2*rands(12);?%初始種群
????V(i:)?=?rands(12);?%初始化速度
????%?計算適應(yīng)度
????fitness(i)?=?fun2(pop(i:));?%染色體的適應(yīng)度
end
%%?V.?個體極值和群體極值
[bestfitness?bestindex]?=?max(fitness);
zbest?=?pop(bestindex:);?%全局最佳
gbest?=?pop;?%個體最佳
fitnessgbest?=?fitness;?%個體最佳適應(yīng)度值
fitnesszbest?=?bestfitness;?%全局最佳適應(yīng)度值
%%?VI.?迭代尋優(yōu)
for?i?=?1:maxgen
????for?j?=?1:sizepop
????????%?速度更新
????????V(j:)?=?V(j:)?+?c1*rand*(gbest(j:)?-?pop(j:))?+?c2*rand*(zbest?-?pop(j:));
????????V(jfind(V(j:)>Vmax))?=?Vmax;
????????V(jfind(V(j:) ????????%?種群更新
????????pop(j:)?=?pop(j:)?+?V(j:);
????????pop(jfind(pop(j:)>popmax))?=?popmax;
????????pop(jfind(pop(j:) ????????%?適應(yīng)度值更新
????????fitness(j)?=?fun2(pop(j:));
????end
????for?j?=?1:sizepop
????????%?個體最優(yōu)更新
????????if?fitness(j)?>?fitnessgbest(j)
????????????gbest(j:)?=?pop(j:);
????????????fitnessgbest(j)?=?fitness(j);
????????end
????????%?群體最優(yōu)更新
????????if?fitness(j)?>?fitnesszbest
????????????zbest?=?pop(j:);
????????????fitnesszbest?=?fitness(j);
????????end
????end
????yy(i)?=?fitnesszbest;
end?=?2;
popmin?=?-2;
%%?VII.輸出結(jié)果
[fitnesszbest?zbest]
plot3(zbest(1)?zbest(2)?fitnesszbest‘bo‘‘linewidth‘1.5)
figure
plot(yy)
title(‘最優(yōu)個體適應(yīng)度‘‘fontsize‘12);
xlabel(‘進化代數(shù)‘‘fontsize‘12);ylabel(‘適應(yīng)度‘‘fontsize‘12);
function?y?=?fun2(x)
%函數(shù)用于計算粒子適應(yīng)度值
%x???????????input???????????輸入粒子
%y???????????output??????????粒子適應(yīng)度值
y?=?x(1)*cos(2*pi*x(2))?+?x(2)*sin(2*pi*x(1));
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-03-14?16:04??粒子群\
?????文件????????2000??2019-03-13?15:53??粒子群\liangge.m
?????文件????????2184??2019-01-15?11:04??粒子群\qiujie.m
?????文件???????34304??2019-03-14?16:04??粒子群\粒子群.doc
評論
共有 條評論