网站大量收购独家精品文档,联系QQ:2885784924

鱼群算法仿真.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
鱼群算法仿真

3、案例实例及结果: 案例1: 一元函数的优化实例:,该函数的图形如图5.2所示: 图 5.2??一元函数图像 2010-8-9 01:11 上传下载附件 (27.53 KB) 结果: 鱼群算法的运行结果如下: 图5.8??50次鱼群算法迭代结果 2010-8-9 01:11 上传 下载附件 (30.52 KB) 2010-8-9 01:11 上传 下载附件 (19.58 KB) 图5.9??最优解的变化Command Window上的运行结果: 最优解X:1.85060 最优解Y:3.85027 Elapsed time is 1.640857 seconds. 案例2 二元函数的优化实例: 该函数的图形如图5.3所示: 图 5.3??二元函数图像2010-8-9 01:11 上传 下载附件 (49.56 KB) 结果: 鱼群算法的运行结果如下: 图5.10??50次鱼群算法迭代结果 2010-8-9 01:11 上传 下载附件 (21.92 KB) 2010-8-9 01:11 上传 下载附件 (18.34 KB) 图5.11??最优解的变化Command Window上的运行结果: 最优解X:-0.002690.00018 最优解Y:1.00000 Elapsed time is 3.094503 seconds.? ? 4、主程序 案例1: clc clear all close all tic figure(1);hold on ezplot(x*sin(10*pi*x)+2,[-1,2]); %% 参数设置 fishnum=50; %生成50只人工鱼 MAXGEN=50; %最多迭代次数 try_number=100;%最多试探次数 visual=1; %感知距离 delta=0.618; %拥挤度因子 step=0.1; %步长 %% 初始化鱼群 lb_ub=[-1,2,1]; X=AF_init(fishnum,lb_ub); LBUB=[]; for i=1:size(lb_ub,1) LBUB=[LBUB;repmat(lb_ub(i,1:2),lb_ub(i,3),1)]; end gen=1; BestY=-1*ones(1,MAXGEN); %每步中最优的函数值 BestX=-1*ones(1,MAXGEN); %每步中最优的自变量 besty=-100; %最优函数值 Y=AF_foodconsistence(X); while gen=MAXGEN fprintf(1,%d\n,gen) for i=1:fishnum [Xi1,Yi1]=AF_swarm(X,i,visual,step,delta,try_number,LBUB,Y); %聚群行为 [Xi2,Yi2]=AF_follow(X,i,visual,step,delta,try_number,LBUB,Y); %追**为 if Yi1Yi2 X(:,i)=Xi1; Y(1,i)=Yi1; else X(:,i)=Xi2; Y(1,i)=Yi2; end end [Ymax,index]=max(Y); figure(1); plot(X(1,index),Ymax,.,color,[gen/MAXGEN,0,0]) if Ymaxbesty besty=Ymax; bestx=X(:,index); BestY(gen)=Ymax; [BestX(:,gen)]=X(:,index); else BestY(gen)=BestY(gen-1); [BestX(:,gen)]=BestX(:,gen-1); end gen=gen+1; end plot(bestx(1),besty,ro,MarkerSize,100) xlabel(x) ylabel(y) title(鱼群算法迭代过程中最优坐标移动) figure plot(1:MAXGEN,BestY) xlabel(迭代次数) ylabel(优化值) title(鱼群算法迭代过程) disp([最优解X:,num2str(bestx,%1.5f)]) disp([最优解Y:,num2str(besty,%1.5f)]) toc 复制代码 案例2: clc clear all close all tic figure(1);hold on %% 参数设置 fishnum=100; %生成50只人工鱼 MAXGEN=50; %最多迭代次数 try_number=100;%最多试探次数 visual=1; %感知距离 delta=0.618; %拥挤度因子 step=0.1; %步长 %% 初始化鱼群 lb_ub=[-10,10,2;]; X=AF

文档评论(0)

qwd513620855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档