pso(国外英文资料).doc

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

pso(国外英文资料) [ parswarm功能,optswarm ] = initswarm(swarmsize、粒径、ParticleScope、AdaptFunc) %功能描述:初始化粒子群,限定粒子群的位置以及速度在指定的范围内 [ parswarm %,OptSwarm,badswarm ] = initswarm(swarmsize、粒径、ParticleScope、AdaptFunc) % %输入参数:swarmsize:种群大小的个数 %输入参数:粒度:一个粒子的维数 %输入参数:particlescope:一个粒子在运算中各维的范围; particlescope格式%: % 3维粒子的particlescope格式: [ x1min %,x1max % x2min,x2max % x3min,x3max ] % %输入参数:adaptfunc:适应度函数 % %输出:parswarm初始化的粒子群 %输出:optswarm粒子群当前最优解与全局最优解 % %用法[ parswarm,OptSwarm,badswarm ] = initswarm(swarmsize、粒径、ParticleScope、adaptfunc); % %异常:首先保证该文件在MATLAB的搜索路径中,然后查看相关的提示信息。 % %编制人:XXX 编制时间:2007.3.26 % 参考文献:无% % %容错控制 如果nargin ~ = 4 错误(“输入的参数个数错误。”) 结束 如果nargout<2 错误(“输出的参数的个数太少,不能保证以后的运行。”); 结束 [行],柱尺寸(粒径)=; 如果行>1 |柱 1 错误(“输入的粒子的维数错误,是一个1行1列的数据。”); 结束 [行、列] =尺寸(particlescope); 如果行~ =粒径|柱~ = 2 错误(“输入的粒子的维数范围错误。”); 结束 %初始化粒子群矩阵 %初始化粒子群矩阵,全部设为[ 1 ]随机数 %兰德(国家,0); parswarm =兰特(swarmsize,粒径2×+1); %对粒子群中位置,速度的范围进行调节 K = 1:粒径 ParSwarm(:,k)= parswarm(:,k)*(particlescope(k,2)- ParticleScope(k,1))+ particlescope(k,1); %调节速度,使速度与位置的范围一致 ParSwarm(:,粒径+ K)= parswarm(:,粒径+ K)*(particlescope(k,2)- ParticleScope(k,1))+ particlescope(k,1); 结束 %对每一个粒子计算其适应度函数的值 K = 1:swarmsize ParSwarm(K,2粒+ 1)= adaptfunc(ParSwarm(K,1:粒径)); 结束 %初始化粒子群最优解矩阵 optswarm =零(swarmsize + 1,粒径); %粒子群最优解矩阵全部设为零 [次],行=最大(ParSwarm(:,2粒+ 1)); %寻找适应度函数值最大的解在矩阵中的位置(行数) optswarm = parswarm(1:SwarmSize 1:粒径); OptSwarm(swarmsize + 1,:)= ParSwarm(行,1:粒径); 下面的函数basesteppso实现了标准全局版粒子群算法的单步更新位置速度的功能 [ parswarm功能,optswarm ] = basesteppso(parswarm,OptSwarm,AdaptFunc, particlescope,maxw,minw,loopcount,curcount) %功能描述:全局版本:基本的粒子群算法的单步更新位置,速度的算法 % [ parswarm %,optswarm ] = basesteppso(parswarm,OptSwarm,ParticleScope,adaptfunc,maxw,minw,loopcount,curcount) % %输入参数:parswarm:粒子群矩阵,包含粒子的位置,速度与当前的目标函数值 %输入参数:optswarm:包含粒子群个体最优解与全局最优解的矩阵 %输入参数:particlescope:一个粒子在运算中各维的范围; %输入参数:adaptfunc:适应度函数 %输入参数:loopcount:迭代的总次数 %输入参数:curcount:当前迭代的次数 % 返回值:含意同输入的同名参数% % %用法:[ parswarm,optswarm ] = basesteppso(parswarm,OptSwarm,ParticleScope,adaptfunc,maxw,mi

文档评论(0)

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

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

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档