数学模型

【蛙跳算法的数学模型】 算法参数与其他优化算法一样,SFLA亦具有一些必要的计算参数,包括F:蛙群的数量;m:族群的数量;n:族群中青蛙的数量;Smax:最大允许跳动步长;Px:全局最好解;Pb:局部最好解;Pw:局部最差解;q:子族群中青蛙的数量;LS:局部元进化次数以及SF:全局思想交流次...【蛙跳算法数学模型】 在SFLA算法中,一系列关键的计算参数是必不可少的。这些参数包括:F:指蛙群的数量,代表算法中个体的集合。m:表示族群的数量,每群青蛙有其特定的动态行为。n:每个族群中青蛙的数量,构成了群体的基本组成单元。Smax:为最大允许跳动步长,限制了青蛙在搜索过程中的移动范围。...

蛙跳算法的数学模型

算法参数
与其他优化算法一样,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].

继续阅读:蛙跳算法的数学模型

蛙跳算法数学模型

在SFLA算法中,一系列关键的计算参数是必不可少的。这些参数包括:



  • F:指蛙群的数量,代表算法中个体的集合。

  • m:表示族群的数量,每群青蛙有其特定的动态行为。

  • n:每个族群中青蛙的数量,构成了群体的基本组成单元。

  • Smax:为最大允许跳动步长,限制了青蛙在搜索过程中的移动范围。

  • Px:全局最优解,代表算法目标的最高标准。

  • Pb:局部最优解,是每个子群体内的最优解。

  • Pw:局部最差解,反映群体中的最低适应度。

  • q:子族群中青蛙的数量,用于细化搜索。

  • LS:局部元进化次数,控制了局部改进的迭代次数。

  • SF:全局思想交流次数,体现了群体间的信息共享。

更新策略是SFLA的核心部分。对于每一群体,最好的适应度解(U g)和子群体内的最优解(UB)和最差解(UW)是关键参考。首先,对每个子族群进行局部搜索,针对最差适应度的个体(Uw)进行更新。具体步骤如下:



  1. 计算青蛙个体的调整矢量Ds,范围在(Pb-Pw)之间,通过随机数rand()确定:Ds=rand()*(Pb-Pw)

  2. 根据允许的最大步长Dmax(例如,Uw=[1, 3, 5, 4, 2],UB=[2, 1, 5, 3, 4],Dmax=3),更新新的位置:newDw=oldPw+Ds(-Dmax≦Ds≦Dmax)

例如,若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]。

继续阅读:蛙跳算法数学模型