6种粒子群算法程序

上传人:豆*** 文档编号:201724000 上传时间:2023-04-20 格式:DOCX 页数:41 大小:65.28KB
收藏 版权申诉 举报 下载
6种粒子群算法程序_第1页
第1页 / 共41页
6种粒子群算法程序_第2页
第2页 / 共41页
6种粒子群算法程序_第3页
第3页 / 共41页
资源描述:

《6种粒子群算法程序》由会员分享,可在线阅读,更多相关《6种粒子群算法程序(41页珍藏版)》请在装配图网上搜索。

1、程序1当,,。)%主函数源程序(ain.m)%-基本粒子群算法 (aticl sarm optmzatin)-名称:基本粒子群算法%-初始格式化cleral; 清除所有变量clc; %清屏fomatlong; %将数据显示为长整形科学计数%-给定初始条条件-N0; %初始化群体个数=10; %初始化群体维数1; 初始化群体最迭代次数c11=2; %学习因子1c212; %学习因子2c121.5;c2=15;w.; %惯性权重eps=1(6); %设立精度(在已知最小值的时候用)%-初始化种群个体(限定位置和速度)-x=zos(,);vzr(,D);fr i=1:N for 1:D x(i,j)

2、=rad; %随机初始化位置 (,j)=ran; %随机初始化速度 endnd-显示群位置-igure()r j1:D if(rem(,2) uplt(+)/2,2,j) ee subplt(D/,2,j) ed lot(x(:,j),b*);ridon xlbel(粒子) ylael(初始位置) tInfstrcat(第,har(j48),维); if(j) tnf=srcat(第,char(foor(j10)+8),ar(rem(j,10)8),维); end itl(tnfo)en%-显示种群速度fgure(2)or j=1:D if(re(D,)) subplot((D+1)/2,2,

3、j) lse sbplot(2,) end plot(x(:,j),b);i on xlael(粒子) ylabl(初始速度) tInfo=strat(第,h(j4),维); if(j9) tIno=strct(第,har(flr(j/1)4),ar(rem(j,10)+48),维); en tite(Info)dfigue(3)第一种图ublot(1,2,1)%-初始化种群个体(在此限定速度和位置)-x1;v1=v;%-初始化个体最优位置和最优值-p1=;pbest1=one(,1);for =1:N pest1(i)=fitne(x1(i,:),);end%-初始化全局最优位置和最优值-1

4、100*oes(1,D);gbest=10;fri=1:N f(pes1(i)gest1) g1=p1(i,:); gbet1=pbest(i); endb1=oes(1,);%-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-or i=1: for j=1:N if(itn(,:),D)pbet1(j) p1(,:)=(,:); pbet1(j)=fites(1(j,:),D); end f(pest1(j)st1) g1=p(,:); gbst1=pet1(); end (j,:)=w*v(j,:)+1rad*(p1(,:)-x1(j,:)+21*and*(g1-x1(j,:); x

5、1(,:)=x1(j,:)+v1(j,:); end gb(i)=gst1;endpot(b)TempSt=spritf(c1= %g ,c=g,c11,1);ttle(Tempr);xlal(迭代次数);ylabe(适应度值);%第二个图subplo(1,,2)-初始化种群个体(在此限定速度和位置)-x2=x;v2v;%-初始化种群个体最有位置和 最优解-2=x2;pbes=oes(,);f i=:N pe2(i)fitness(x(i,:),D);nd%-初始化种全局最有位置和 最优解-21000*ones(1,D);ge2=1000;fori=1: if(best2(i)gbst2) g

6、=p2(i,:); gbest=pbes2(i); endendg2=ones(1,T);-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-for i=1:T for j=:N f(fitess(x2(,:),)t2(j)) p2(,:)=x(j,:); est2(j)=fitns(2(j,:),D); ed if(pbt2(j)0) suplo((+)/,j) ele subplo(D/2,,) d lot(:,j),b*);gid xlal(粒子) ylabel(初始位置) tIo=tra(第,char(j8),维); if(9) tIno=strcat(第,chr(lor(j1)+

7、),car(rem(j,0)+48),维); end tte(tInfo)nd-显示种群速度igure(2)orj1: (em(D,) sbt()/2,2,j) else subpot(D/,2,j) end plo(x(:,j),b);grd lbel(粒子) ylel(初始速度) tIo=rca(第,har(j+4),维); if(9)Info=sa(第,chr(for(j/0)8),ha(em(j,10)48),维); end ttle(nfo)ndfgue(3)%第一种图sublot(,,)%-初始化种群个体(在此限定速度和位置)-x=x;v1=v;%-初始化个体最优位置和最优值-px

8、1;pst1=nes(N,1);for i1:N pest1(i)=itnss(x1(,:),D);ed%-初始化全局最优位置和最优值-g1000*ons(1,D);gbe1000;fr i=1:N f(pbes1(i)est1) (,:); get1=est1(i); edendg1=ons(1,T);%-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-for i=: for j=1: if (finess(x1(j,:),D)pbet1(j)) (j,:)=1(,:); pe1()=fitnes(x1(j,:),D); end if(pes(j)best) g1p1(j,:); gb

9、s1=est1(j); en1(j,:)=*v1(,:)c11*nd*(p1(,:)-x1(j,:)+c2*and*(g1x1(j,:); x1(,:)=x1(j,:)+v1(j,:); en b1()=gbet1;enplot(gb1)Ttr=spintf(1= g ,c2=%g,c11,2);ti(TemS);xbl(迭代次数);yabl(适应度值);%第二个图slo(1,2,2)%-初始化种群个体(在此限定速度和位置)-2=;2=;%-初始化种群个体最有位置和 最优解-p2x2;pbet2=one(N,1);for 1: pbest2(i)=fitess(x2(i,:),);nd%-初始

10、化种全局最有位置和 最优解-g2=1000*nes(,D);gbest2=000;for i=:N (pbet2(i)gbes) g=p2(,:); gbespbest2(i); endeng2=ns(1,T);%-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-fo =:T foj:N i (fness(x2(,:),D)be(j)) 2(j,:)=x2(j,:); pbst2(j)=ftnes(x2(j,:),D); end if(pbst2() subplot(1)2,2,) ele subplot(D/2,j) end pot(x(:,),b);gdon abl(粒子) ylae

11、(初始位置) tnfo=strct(第,har(j+4),维); i(j9) tIo=stcat(第,ca(floo(j/1)+48),hr(rm(j,10)48),维); end tit(tIo)nd%-显示种群速度fiu(2)frj=1:D if(rem(D,2)0) suplot(+1)/2,,j) lse subplt(/,2,j) d plo(:,j),*);grid o xlab(粒子) bl(初始速度) to=strat(第,char(j+48),维); if(j9) tInfosct(第,har(or(j/10)+48),ca(em(j,1)48),维); d title(In

12、fo)endfiur(3)%第一种图ubplot(1,2,1)%-初始化种群个体(在此限定速度和位置)-x=;v1;-初始化个体最优位置和最优值-p1=x1;pbet1=oe(,1); i=1:N et1()=iness(x1(i,:),D);end%-初始化全局最优位置和最优值-g1=1000*ones(,);gbest110;for i=1: f(be1()be1) 1=p(i,:); gbest1=pbst1(i); nendgb1=ne(,T);-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-or i=1:T for j1: if (ftns(x1(,:),)pbs1(j) p

13、(j,:)x1(j,:); pt(j)=ftns(x1(j,:),D); end (pbest(j)get1) g1=1(,:); gbest1=pbest1(j); e 1(j,:)*v1(j,:)+c1*rnd*(p1(j,:)-x1(,:))+1and*(g1-x1(j,:); (j,:)=x1(,:)+v1(j,:); end gb1(i)gest;enplot(b1)emptr=sprif(c1= %g,2=%g,1,c1);itle(TmpStr);xlael(迭代次数);ylabel(适应度值);%第二个图subplot(1,2,2)%-初始化种群个体(在此限定速度和位置)-x=

14、x;2v;%-初始化种群个体最有位置和 最优解-p=x;pet2=oes(,1);fo i1: pbet2()itne(x(i,:),D);e-初始化种全局最有位置和最优解-g200nes(1,D);gst2=100;fori1: if(bst2(i)gbest2) g2=p2(i,:); gbet=bet2(i); ndngb2=oes(1,T);%-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-or i=1:T fj=:N if(fitns(x2(j,:),D)pb2(j) p2(,:)x2(,:); pbest(j)=fitess(x2(j,:),D); ed f(best(j)

15、 ubplo(+1)/,2,j) else supot(D/2,2,) plot(x(:,j),b*);gi on xabe(粒子) ylae(初始位置) tIfo=tat(第,char(j+48),维); if(j9) tInfstrca(第,har(for(/0)+8),char(rem(j,10)+4),维); d tite(tInfo)end%-显示种群速度- igue()fo j=: f(rem(D,2) sublot(D1)/2,2,j) else sbplot(D/2,2,j) nd plt(x(:,j),b*);ri on xlbel(粒子) ylabel(初始速度) no=s

16、trca(第,char(j48),维); if(9) tIo=strcat(第,ch(loor(j0)48),r(rem(j,0)48),维); end title(tInf)nd figur(3)subot(1,2,1)%-初始化种群个体(在此限定速度和位置)-x1x;1=v;%-初始化个体最优位置和最优值-p1=1;pbest1oes(,1);for i=:N pbest1(i)=ftnss(x(i,:),);e%-初始化全局最优位置和最优值-11000*ons(1,);gbs1=00;for =:N i(pbest1(i)gbes) g1=p(,:); best1=t1(); ended

17、g1=oes(1,T);%-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数- i=1:T fo j=1:N if (fitness(x1(,:),D)pes1() p1(j,:)=x(,:); pbes1(j)=fitnes((j,:),D); nd if(pest1()gbet1) 1=p1(,:); bes1=pbet(j); endv1(,:)=1v1(,:)+c1*rnd*((j,:)-x(j,:)+c2*rand*(g1-1(j,:); x1(,:)1(j,:)+v1(j,:); end gb(i)gbest1;endplot(gb1)TmStrsprntf(w= %g ,w1

18、);titl(TepStr);xae(迭代次数);ylbl(适应度值);suplo(1,2,2)-初始化种群个体(在此限定速度和位置)-x;2=;%-初始化种群个体最有位置和 最优解-p2=;pbs2ones(N,1);for i=1:N bst2(i)=inss(x2(i,:),D);en%-初始化种全局最有位置和 最优解-g2=1000*nes(1,D);gt2=000;fo i=1: f(pt2(i)bt2) g2=p2(,:); gbesbet2(i); endendb=os(,);%-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-or i=1: fr j=: f (fitne

19、ss(2(j,:),D)pbest2()) p(j,:)=x2(,:); pbest(j)=finess((j,:),); end (pb2(j)) tIfosrcat(第,char(lr(j/1)+),ch(rem(j,10)8),维); en tile(tnfo)end-显示种群速度- figue()for j=1:D i(rem(D,2)0) subpl(+1)/2,,j) ee bplo(/2,2,j) ed plot(:,j),);gid xlabel(粒子) labl(初始速度)tInfo=trct(第,har(j+4),维); if(j9) tIfostrcat(第,cr(flo

20、r(j/10)+4),char(em(j,10)48),维); end tite(nf)en figu(3)subpot(1,2,1)%-初始化种群个体(在此限定速度和位置)-x=x;v1=;%-初始化个体最优位置和最优值-p1x1;et1oes(,1);o =1:N pbest1(i)fitnes(1(i,:),);end%-初始化全局最优位置和最优值-1=0*one(1,D);gbst1=1000;or i=:N f(bst1()est) gp1(i,:); gb1=est1(); enendg1=ones(1,T);%-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-f =1:T

21、for j1:N if (fitnes(x1(j,:),D)et(j) p1(j,:)=x1(,:); pbe1(j)itnss(x1(,:),); en if(e1(j)best) g1=p1(j,:); gbet1=pbst1(j); end v1(,:)=w*v1(,:)+c1rand*(p1(j,:)-(j,:))c2rand*(1-x(j,:); x1(j,:)x(j,:)+v1(j,:); end 1(i)=gbest1;endlot(gb1)emStr=spintf(w %g,1);tite(empSr);xlabel(迭代次数);ael(适应度值);pot(,2,)%-初始化种

22、群个体(在此限定速度和位置)-x=x;v2=v;%-初始化种群个体最有位置和 最优解-p2=x2;bes2=ones(N,1);r i=1: pbest(i)=tess((i,:),D);ed%-初始化种全局最有位置和最优解-2=100*ne(,);gbst2=1000;for i=1:N f(pbest(i)gbest2) g=2(i,:); gbes2pbes2(i); dendg2=oes(,T);%-浸入主循环,按照公式依次迭代直到满足精度或者迭代次数-for =1:T for j=1:N if(itness(x2(,:),D)bet(j) p2(,:)=x(j,:); pst()=f

23、itess(x(j,:),D); end if(best2(j)0) sbplot(D1)/2,j) els sbt(D/2,) nd pot(:,j),);grid on xlabe(粒子) yabl(初始位置) tIfostrca(第,har(j4),维); f(j9) Inostrat(第,char(floor(j/)48),har(em(j,0)+48),维); end tte(tIno)end%-显示种群速度-gur()fo =1: f(rm(D,)0) subplot((D+1)/,2,j) lse suot(D,2,j) en plo(x(:,j),b*);grido xlael

24、(粒子) ylabl(初始速度) Infrct(第,char(+48),维); if(9) tInfostrct(第,chr(flor(j/10)+48),cha(em(,)+48),维); end tile(Info)ed fure() %-初始化群体个体最有位置和最优解-=;pbes=oes(N,1);fr i=1:N best(i)=ftness(x(,:),D);ed%-初始化全局最优位置和最优解-g=00*nes(1,D);gbest=00;for i=1:N if(pbest(i)bet) =p(i,:); gbes=pest(i); enendg=ne(1,T);%-进入主循环,

25、按照公式依次迭代,直到满足精度规定-fori=1:T fr j=:N (fitness(x(j,:),D)best(j)) p(,:)x(j,:); pbet(j)finess(x(j,:),D); e f(pest(j)gbes) g=(j,:); bestpbest(j); en v(,:)=*v(,:)c1*rand(p(j,:)-x(j,:)+2rnd*(gx(,:); (j,:)x(,:)+v(,:); end g()=gbest;endplo(g)TempStr=sprit(= %g ,);title(TempStr);xlal(迭代次数);lael(适应值);%适应度函数func

26、tio rsul=fitnss(x,D)sum=0;for i=1:D sumum+(i)2;edreultsum;程序6对,对分别取,随笔其迭代影响a)%主函数源程序(main)%-基本粒子群算法(partilswrmptmization)%-名称: 基本粒子群算法%-初始格式化clar all; %清除所有变量cc; %清屏format o; %将数据显示为长整形科学计数%-给定初始条条件-N40; %初始化群体个数=10; %初始化群体维数T=100; %初始化群体最迭代次数c=.1; %学习因子1c2=; 学习因子w1=0. %惯性权重w208 %惯性权重23=1.2 %惯性权重34=.4 惯性权重w5=16 %惯性权重5e=1(-6); %设立精度(在已知最小值的时候用)-%-初始化种群个体(限定位置和速度)-x=zers(N,D);=es(N,);for 1:N j=1:D (i,j)=rann; %随机初始化位置 v(i,j)=n; %随机初始化速度

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!