爱问知识人 爱问教育 医院库

混合蛙跳算法怎样看它解出来的解

首页

混合蛙跳算法怎样看它解出来的解


        

提交回答

全部答案

    2018-05-15 04:22:31
  •   蛙跳算法(SFLA)是一种全新的启发式群体进化算法,具有高效的计算性能和优良的全局搜索能力。对混合蛙跳算法的基本原理进行了阐述,针对算法局部更新策略引起的更新操作前后个体空间位置变化较大,降低收敛速度这一问题,提出了一种基于阈值选择策略的改进蛙跳算法。
      通过不满足阈值条件的个体分量不予更新的策略,减小了个体空间差异,从而改善了算法的性能。数值实验证明了该改进算法的有效性,并对改进算法的阈值参数进行了率定。
     
    数学模型
    算法参数与其他优化算法一样,SFLA亦具有一些必要的计算参数,包括F:蛙群的数量;m:族群的数量;n:族群中青蛙的数量;Smax:最大允许跳动步长;Px:全局最好解;Pb:局部最好解;Pw:局部最差解;q:子族群中青蛙的数量;LS:局部元进化次数以及SF:全局思想交流次数等。
      更新策略对于青蛙群体,具有全局最好适应度的解表示为U g;对于每一个子族群,具有最好适应度的解表示为UB,最差适应度的解表示为UW。首先对每个子族群进行局部搜索,即对子族群中最差适应度的青蛙个体进行更新操作,更新策略为青蛙更新距离 Ds=rand()*(Pb-Pw) (1)更新后的青蛙 newDw=oldPw Ds(-Dmax≦Ds≦Dmax) (2)其中, Ds 表示青蛙个体的调整矢量, Dmax表示青蛙个体允许改变的最大步长。
      如设Uw=[1 3 5 4 2],UB=[2 1 5 3 4],允许改变的最大步长Dmax =3,若rand=0。5 ,则U q(1) =1 min{int[0。5 × (2−1)],3}=1;U q(2) =3 max{int[0。5×(1−3)], −3}=2;依此相同的操作完成更新策略后可得到一个新解U q=[1 2 5 4 3]。
      

    周***

    2018-05-15 04:22:31

类似问题

换一换

相关推荐

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):