欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    差分进化算法-入门(共11页).docx

    • 资源ID:14150861       资源大小:130KB        全文页数:11页
    • 资源格式: DOCX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    差分进化算法-入门(共11页).docx

    精选优质文档-倾情为你奉上差分进化算法-入门专心-专注-专业基本差分进化算法1基本差分进化算法的基本思想DE算法是一种基于实数编码的用于优化函数最小值的进化算法,是在求解有关切比雪夫多项式的问题时提出来的,是基于群体差异的进化计算方法。它的整体结构类似于遗传算法,一样都存在变异、交叉和选择操作,但是它又不同于遗传算法。与基本遗传算法的主要区别在于变异操作上,如:1、传统的遗传算法采用二进制编码,而差分进化算法采用实数编码。2、在遗传算法中通过两个父代个体的交叉产生两个子个体,而在差分进化算法中通过第两个或几个个体的差分矢量做扰动来产生新个体。3、在传统的遗传算法中,子代个体以一定概率取代其父代个体,而在差分进化中新产生的个体只有当它比种群中的个体优良时才替换种群中的个体。变异是DE算法的主要操作,它是基于群体的差异向量来修正各个体的值,其基本原理是通过把种群中两个个体的向量差加权后,按一定的规划与第三个个体求和来产生新个体,然后将新个体与当代种群中某个预先决定的个体相比较,如果新个体的目标值优于与之相比较的个体的目标值,则在下一代中就用新个体取代,否则,旧个体仍保存下来。差分进化算法其基本思想是:首先由父代个体间的变异操作构成变异个体;接着按一定的概率,父代个体与变异个体之间进行交叉操作,生成一试验个体;然后在父代个体与试验个体之间根据适应度的大小进行贪婪选择操作,保留较优者,实现种群的进化。2 差分进化算法的基本操作设当前进化代数为,群体规模为,空间维数为,当前种群为,为种群中的第个个体。在进化过程中,对于每个个体依次进行下面三种操作。2.1 变异操作对于每个个体按下式产生变异个体,则 (1)其中,和是群体中随机选择的三个个体,并且;,和分别为个体,和的第维分量;为变异因子,一般取值于。这样就得到了变异个体。2.2 交叉操作由变异个体和父代个体得到试验个体,则 (2)其中,是间的随机数;是范围在间的常数,称为交叉因子,值越大,发生交叉的可能性就越大;是在随机选择的一整数,它保证了对于试验个体至少要从变异个体中获得一个元素。以上的变异操作和交叉操作统称为繁殖操作。2.3 选择操作差分进化算法采用的是“贪婪”选择策略,即从父代个体和试验个体中选择一个适应度值最好的作为下一代的个体,选择操作为: (3)其中,为适应度函数,一般以所要优化的目标函数为适应度函数。本文的适应度函数如无特殊说明均为目标函数且为求函数极小值。3 差分进化算法的算法流程由前面对基本差分进化算法的基本原理的了解,我们可以得到差分进化算法的算法流程设计如下。3.1 基本差分进化算法的基本步骤(1) 初始化参数:种群规模;缩放因子;变异因子;空间维数;进化代数。(2) 随机初始化初始种群,其中。(3) 个体评价:计算每个个体的适应度值。(4) 变异操作:按(1)式对每个个体进行变异操作,并得到变异个体。(5) 交叉操作:按(2)式对每个个体进行交叉操作,得到试验个体。(6) 选择操作:按(3)式从父代个体和试验个体中选择一个作为下一代个体。(7) 终止检验:由上述产生的新一代种群,设X(t+1)中的最优个体为,如果达到最大进化代数或满足误差要求,则停止进化并输出为最优解,否则令t=t+1 ,转(3)。3.2 基本差分进化算法的流程图差分进化算法流程图4 基本差分进化算法的MATLAB描述function Pb=DE%参数初始化D=input('请输入空间维数D=');N=input('请输入种群规模N=');F=input('请输入缩放因子F=');CR=input('请输入交叉因子CR=');U=input('请输入运行的次数U=');Tmax=input('请输入最大迭代次数Tmax=');%变量限制a1=ones(1,30)*(-5.12); b1=ones(1,30)*(5.12);eps=1e-9;x=;v=;y=;%随机产生初始种群for i=1:N for j=1:D x(i,j)=a1(j)+rand*(b1(j)-a1(j); endendt=1;trial=zeros(1,D);cost=zeros(1,N);cost(1)=fitness(x(1,:),D);Pb=cost(1);Xb=x(1,:);%计算每个个体的适应度值及当前种群的最优值for i=2:N cost(i)=fitness(x(i,:),D); if(cost(i)<=Pb) Pb=cost(i); Xb=x(i,:); endendticsum=0;for z=1:Uwhile(t<Tmax)for i=1:N%对每个个体进行变异操作,得变异个体 while 2>1 a=floor(rand*N)+1; if a=i break; end end while 2>1 b=floor(rand*N)+1; if b=i&b=a break; end end while 2>1 c=floor(rand*N)+1; if c=i&c=a&c=b break; end end for k=1:D v(k)=x(c,k)+F*(x(a,k)-x(b,k); end %对每个个体进行交叉操作,得试验个体 jrand=floor(rand*D+1); for k=1:D if(rand<CR|jrand=k) trial(k)=v(k); else trial(k)=x(i,k); end if trial(k)<a1(k) trial(k)=a1(k); end if trial(k)>b1(k) trial(k)=b1(k); end end%对每个个体进行选择操作,得下一代个体 score=fitness(trial(:),D); if(score<=cost(i) x(i,1:D)=trial(1:D); cost(i)=score; end if cost(i)<=Pb Pb=cost(i); Xb(1:D)=x(i,1:D); end end t=t+1;endy(z)=Pb;%计算平均适应最优值sum=Pb+sum;endPbavr=sum/U;%U次中的最差值和最好值Pbmax=y(1);Pbmin=y(1);for z=1:U if Pbmax<y(z) Pbmax=y(z); end if Pbmin>y(z) Pbmin=y(z); endendtocdisp('*')TmaxyPbmaxPbminPbavrdisp('*')%适应度函数%-function eval=fitness(x,D)sol=x;eval=0;for i=1:D-1 eval=eval+(sol(i)2-10*cos(2*pi*sol(i)+10);end%-

    注意事项

    本文(差分进化算法-入门(共11页).docx)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开