• 具有万有引力加速机理的布谷鸟搜索算法


    一、理论基础

    1、布谷鸟算法(CS)及其存在的局限性

    布谷鸟采用一种特殊的寄生宿主巢穴的方式孕育繁殖,它将孵育的蛋置入寄生宿主的巢穴,让寄生宿主孵化布谷鸟蛋。由于布谷鸟幼雏能发出比寄生宿主幼雏更闪亮的叫声,因此获得更多的食物,具有更高的存活率。在某些情形下,寄生宿主发现巢穴内不是宿主幼雏,则会遗弃该巢穴,并重新选择新的巢穴孵育繁殖。Y ang X. S.和Deb等人基于上述孵育寄生机理,提出布谷鸟算法。它遵循以下3个理想规则:
    规则1. 每只布谷鸟1次有且仅有孵化1个蛋,并随机选择1个寄生宿主巢穴存放。
    规则2. 在随机选择的1个寄生宿主巢穴中,最优的寄生宿主巢穴将被保留至下一代。
    规则3. 可利用的寄生宿主巢穴数量是固定的,1个寄生宿主巢穴的宿主发现寄生布谷鸟蛋的概率为 P a P_a Pa
    基于上述3个理想规则,可以得到1个宿主巢穴代表1个候选解。因此,布谷鸟算法的基本算法流程包含 3部分:首先,在当前候选解的基础上,以Levy飞行随机游动生成新的候选解,评价并保留较好的候选解;其次,按照发现概率 P a P_a Pa舍弃部分候选解;最后,按照偏好随机游动方式产生新的候选解并替代舍弃的解,保留较好解后进入下一次进化,直至满足算法的收敛条件。
    设布谷鸟算法进化至第 r r r代时第 m m m个候选解为 X r , m \boldsymbol{X}_{r,m} Xr,m X r , m = ( x r , m ( 1 ) , x r , m ( 2 ) , ⋯   , x r , m ( j ) , ⋯   , x r , m ( D ) ) , j ∈ [ 1 , D ] \boldsymbol{X}_{r,m}=(x^{(1)}_{r,m},x^{(2)}_{r,m},\cdots,x^{(j)}_{r,m},\cdots,x^{(D)}_{r,m}),j\in[1,D] Xr,m=(xr,m(1),xr,m(2),,xr,m(j),,xr,m(D)),j[1,D]。采用Levy飞行随机游动产生新的个体(候选解) X r + 1 , m \boldsymbol{X}_{r+1,m} Xr+1,m更新律的表达式为 X r + 1 , m = X r , m + ( X r , m − X r , g b ) ⋅ ( γ ⊕ L ( β ) ) (1) \boldsymbol{X}_{r+1,m}=\boldsymbol{X}_{r,m}+(\boldsymbol{X}_{r,m}-\boldsymbol{X}_{r,gb})\cdot(\gamma\oplus L(\beta))\tag{1} Xr+1,m=Xr,m+(Xr,mXr,gb)(γL(β))(1)其中, X r , g b \boldsymbol X_{r,gb} Xr,gb为当前搜索到的全局最优解, L ( β ) L(\beta) L(β)表示Levy飞行随机游动路径, γ 0 \gamma_0 γ0表示初始搜索步长, ⊕ \oplus 表示点对点乘法, t t t为飞行时间: L ( β ) ∼ ϑ = t − 1 − β , 0 < β ≤ 2 (2) L(\beta)\sim\vartheta=t^{-1-\beta},0<\beta\leq2\tag{2} L(β)ϑ=t1β,0<β2(2)通过数学代换,式(2)等价于: L ( β ) ∼ ϑ ∣ v ∣ 1 / β ⋅ ( Γ ( 1 + β ) sin ⁡ ( π ⋅ β / 2 ) Γ ( 1 + β 2 ) ⋅ β ⋅ 2 ( β − 1 ) / 2 ) 1 / β (3) L(\beta)\sim\frac{\vartheta}{|v|^{1/\beta}}\cdot\left(\frac{\Gamma(1+\beta)\sin(\pi\cdot\beta/2)}{\Gamma\displaystyle\left(\frac{1+\beta}{2}\right)\cdot\beta\cdot2^{(\beta-1)/2}}\right)^{1/\beta}\tag{3} L(β)v1/βϑΓ(21+β)β2(β1)/2Γ(1+β)sin(πβ/2)1/β(3)其中, Γ ( ⋅ ) \Gamma(\cdot) Γ()为伽玛函数,取 β = 1.5 \beta=1.5 β=1.5 ϑ , v \vartheta,v ϑ,v为标准高斯分布随机数。
    在偏好随机游动方式中,按照发现概率 P a P_a Pa舍弃部分候选解后,生成相同数量的新解: X r + 1 , m = X r , m + ϕ ⋅ ( X r , k − X r , s ) (4) \boldsymbol{X}_{r+1,m}=\boldsymbol{X}_{r,m}+\phi\cdot(\boldsymbol{X}_{r,k}-\boldsymbol{X}_{r,s})\tag{4} Xr+1,m=Xr,m+ϕ(Xr,kXr,s)(4)其中, ϕ \phi ϕ为算法的控制缩放系数,满足 ϕ ∈ U ( 0 , 1 ) \phi\in U(0,1) ϕU(0,1) X r , k \boldsymbol{X}_{r,k} Xr,k X r , s \boldsymbol{X}_{r,s} Xr,s分别为第 r r r代时第 k k k个和第 s s s个随机候选解。
    基本CS算法虽然具有一定的收敛能力,但是存在以下局限性:
    (1)采用Levy飞行随机游动产生新候选解的搜索步长设置困难:如果搜索步长较大,则寻优速度增大,但由于Levy飞行具有无限跳跃特性,使得算法执行过程中极易跳过全局最优解;如果搜索步长较小,虽然能以较大概率获得全局最优解,但是寻优速度会降低。考虑到Levy飞行具有无限大方差并且其增量服从二阶分布,因此,设计合理的搜索步长变得尤为困难。
    (2)CS算法采用发现概率 P a P_a Pa舍弃偏好随机游走方式产生新的候选解。这种方法虽然加强了算法的全局搜索性能,但随机处理会舍弃较好的种群个体,而保留适应度较差的种群个体,进而降低算法搜索速度和收敛精度。
    (3)CS算法仅通过两个随机个体的位置向量差获得下次进化的方向,未能充分利用当前宿主巢穴的足够信息,因此在搜索过程中具有盲目性,不能对种群个体进行局部精细化搜索,导致算法具有较差的局
    部搜索能力。纵然算法具有一定的全局搜索能力,但是仍然存在全局搜索和局部搜索不平衡的问题。

    2、万有引力加速机理的布谷鸟算法(GASCS)

    2.1 万有引力算法

    受万有引力定律启发,伊朗学者Esmat Rashedi等人于2009年提出了万有引力搜索算法(Gravitational search algorithm, GSA)。GSA算法的原理是:物质个体之间由于引力作用相互吸引,并且引力沿质量较大的个体方向移动。物质个体的质量决定其万有引力的大小,质量越大的个体所受的引力越大。在外有引力的作用下,物质个体位置不断变化,最终,整个群体都聚集在物质个体质量最大的周围,即逼近优化问题的全局最优解。
    在万有引力算法中,借鉴理论物理学中质量定义的3种属性描述函数适应度值,即主动引力质量 M a M_a Ma、被动引力质量 M p M_p Mp和惯性质量 M i M_i Mi。每个物质个体的位置对应优化问题解,其万有引力和惯性质量 M i M_i Mi共同决定相应的函数适应度数值。事实上,GSA算法通过调节 M a , M p M_a,M_p Ma,Mp M i M_i Mi来控制算法进化,促使群体中的物质个体聚集在万有引力最大的物质个体附近,进而搜索到最优解。
    GSA算法模型包含物质个体的质量计算、引力计算、加速度计算和速度更新与位置更新。算法首先对解空间内的物质个体位置和速度初始化。设 D D D维空间维度中进化至第 r r r代时第 m m m个物质个体的位置和速度分别为 X r , m = ( x r , m ( 1 ) , x r , m ( 2 ) , ⋯   , x r , m ( j ) , ⋯   , x r , m ( D ) ) ,    V m = ( v r , m ( 1 ) , v r , m ( 2 ) , ⋯   , v r , m ( j ) , ⋯   , v r , m ( D ) ) , \boldsymbol{X}_{r,m}=(x_{r,m}^{(1)},x_{r,m}^{(2)},\cdots,x_{r,m}^{(j)},\cdots,x_{r,m}^{(D)}),\,\,\boldsymbol V_m=(v_{r,m}^{(1)},v_{r,m}^{(2)},\cdots,v_{r,m}^{(j)},\cdots,v_{r,m}^{(D)}), Xr,m=(xr,m(1),xr,m(2),,xr,m(j),,xr,m(D)),Vm=(vr,m(1),vr,m(2),,vr,m(j),,vr,m(D)),其中, j = 1 , 2 , ⋯   , D , x r , m ( j ) j=1,2,\cdots,D,x_{r,m}^{(j)} j=1,2,,D,xr,m(j) v r , m ( j ) v_{r,m}^{(j)} vr,m(j)分别表示第 m m m个物质个体在第 j j j维的位置分量和速度分量。通过物质个体位置对应的适应度数值,确定物质个体的质量 M i M_i Mi和受到的万有引力。根据牛顿第二定律计算物质个体的加速度,并更新物质个体位置 X r , m \boldsymbol X_{r,m} Xr,m和速度 V r , m \boldsymbol V_{r,m} Vr,m。GSA算法主要包括以下4个步骤。
    (1)物质个体质量计算
    物质个体 m m m的质量定义为 q r , m = f r , m − f r , w o r s t f r , b e s t − f r , w o r s t (5) q_{r,m}=\frac{f_{r,m}-f_{r,worst}}{f_{r,best}-f_{r,worst}}\tag{5} qr,m=fr,bestfr,worstfr,mfr,worst(5) M r , m = q r , m ∑ m = 1 N q r , m (6) M_{r,m}=\frac{q_{r,m}}{\displaystyle\sum_{m=1}^Nq_{r,m}}\tag{6} Mr,m=m=1Nqr,mqr,m(6)其中, f r , m f_{r,m} fr,m M r , m M_{r,m} Mr,m分别表示GSA算法第 r r r次进化时,物质个体 m m m的函数适应度值和相应的质量。假设所求解的为最小化问题, f r , b e s t f_{r,best} fr,best f r , w o r s t f_{r,worst} fr,worst分别表示第 r r r次进化时物质个体最优的适应度数值和最差适应度数值,其数学表达式如下: f r , b e s t = min ⁡ m ∈ { 1 , 2 , ⋯   , N } f r , m (7) f_{r,best}=\min_{m\in\{1,2,\cdots,N\}}f_{r,m}\tag{7} fr,best=m{1,2,,N}minfr,m(7) f r , w o r s t = max ⁡ m ∈ { 1 , 2 , ⋯   , N } f r , m (8) f_{r,worst}=\max_{m\in\{1,2,\cdots,N\}}f_{r,m}\tag{8} fr,worst=m{1,2,,N}maxfr,m(8)(2)物质个体万有引力计算
    根据万有引力定律,在维度 j j j上,物质个体 m m m对物质个体 k k k的万有引力定义如下: F r , m k ( j ) = G r ⋅ M r , p m ⋅ M r , a k R r , m k + ε ⋅ ( x r , m ( j ) − x r , k ( j ) ) (9) F_{r,mk}^{(j)}=G_r\cdot\frac{M_{r,pm}\cdot M_{r,ak}}{R_{r,mk}+\varepsilon}\cdot(x_{r,m}^{(j)}-x_{r,k}^{(j)})\tag{9} Fr,mk(j)=GrRr,mk+εMr,pmMr,ak(xr,m(j)xr,k(j))(9)其中, ε \varepsilon ε为一个无穷小的常数; M r , p m M_{r,pm} Mr,pm表示被作用于物质个体 m m m r r r次进化时的惯性质量, M r , a k M_{r,ak} Mr,ak表示为作用于物质个体 m m m r r r次进化时的惯性质量,并且 M r , p m = M r , a k = M r , m M_{r,pm}=M_{r,ak}=M_{r,m} Mr,pm=Mr,ak=Mr,m R r , m k R_{r,mk} Rr,mk为物质个体 m m m和物质个体 k k k的欧氏空间距离,即 R r , m k = ∣ ∣ X r , m − X r , k ∣ ∣ 2 R_{r,mk}=||\boldsymbol X_{r,m}−\boldsymbol X_{r,k}||_2 Rr,mk=Xr,mXr,k2 G r G_r Gr表示第 r r r次进化时物质个体的万有引力常数,其表达式如式(10)所示: G r = G ( G 0 , r ) = G 0 ⋅ e − θ ⋅ r / W (10) G_r=G(G_0,r)=G_0\cdot e^{-\theta\cdot r/W}\tag{10} Gr=G(G0,r)=G0eθr/W(10)其中, G 0 G_0 G0为进化初始时物质个体的万有引力系数; θ \theta θ为算法控制参数,一般取 θ = 20 \theta=20 θ=20 W W W为算法进化代数的最大值。
    在维度 j j j上,物质个体 m m m所受的万有引力合力为 F r , m ( j ) F_{r,m}^{(j)} Fr,m(j) F r , m ( j ) = ∑ k ∈ b , k ≠ m N d j ⋅ F r , m k ( j ) (11) F_{r,m}^{(j)}=\sum_{k\in b,k\neq m}^Nd_j\cdot F_{r,mk}^{(j)}\tag{11} Fr,m(j)=kb,k=mNdjFr,mk(j)(11)其中, d j d_j dj为区间 ( 0 , 1 ) (0,1) (0,1)内均匀分布的一个随机数, b b b为物质个体数目。
    (3)物质个体加速度计算
    由牛顿第二定律,物质个体 m m m在维度 j j j上第 r r r次进化时的加速度定义如下: a r , m ( j ) = F r , m ( j ) M r , m m (12) a_{r,m}^{(j)}=\frac{F_{r,m}^{(j)}}{M_{r,mm}}\tag{12} ar,m(j)=Mr,mmFr,m(j)(12)其中, M r , m m = M r , p m = M r , a k = M r , m M_{r,mm}=M_{r,pm}=M_{r,ak}=M_{r,m} Mr,mm=Mr,pm=Mr,ak=Mr,m
    (4)物质个体更新速度和位置
    算法在每次进化过程中,物质个体按照式(13)和式(14)分别更新速度 v r , m ( j ) v_{r,m}^{(j)} vr,m(j)和位置 x r , m ( j ) x_{r,m}^{(j)} xr,m(j),其具体的数学表达式分别为: v r + 1 , m ( j ) = d j ⋅ v r , m ( j ) + a r , m ( j ) (13) v_{r+1,m}^{(j)}=d_j\cdot v_{r,m}^{(j)}+a_{r,m}^{(j)}\tag{13} vr+1,m(j)=djvr,m(j)+ar,m(j)(13) x r + 1 , m ( j ) = x r , m ( j ) + v r + 1 , m ( j ) (14) x_{r+1,m}^{(j)}=x_{r,m}^{(j)}+v_{r+1,m}^{(j)}\tag{14} xr+1,m(j)=xr,m(j)+vr+1,m(j)(14)

    2.2 GASCS算法

    传统的CS算法是基于Levy飞行随机游动方式和偏好随机游动方式两种搜索机理,虽然具有一定的收敛性能,但仍然存在第1节所阐述的3点局限性。为此,文献[1]提出具有万有引力加速机理的布谷鸟算法。它基于万有引力搜索无需学习外部环境因素的变化亦能感知全局最优信息的特点,将布谷鸟巢穴赋予不同的个体质量,其在优化过程中不仅遵循Levy飞行规律,而且遵循万有引力定律。
    根据牛顿第二定律,宿主巢穴在进化过程中所受的加速度由巢穴所受的合外力及自身质量共同决定。基于此,将布谷鸟算法的个体更新律(1)和更新律(4)改进为式(15)和式(16): X r + 1 , m = a r − ( γ 0 ⊕ L ( β ) ) ⋅ ( a r − X r , g b ) (15) \boldsymbol X_{r+1,m}=\boldsymbol a_r-(\gamma_0\oplus L(\beta))\cdot(\boldsymbol a_r-\boldsymbol X_{r,gb})\tag{15} Xr+1,m=ar(γ0L(β))(arXr,gb)(15) X r + 1 , m = X r , g b + p ⋅ ( X r , k − X r , s − a r ) (16) \boldsymbol X_{r+1,m}=\boldsymbol X_{r,gb}+p\cdot(\boldsymbol X_{r,k}-\boldsymbol X_{r,s}-\boldsymbol a_r)\tag{16} Xr+1,m=Xr,gb+p(Xr,kXr,sar)(16)其中,式(15)和式(16)分别表示Levy飞行随机游动和偏好随机游动方式的个体位置, p ∈ ( 0 , + ∞ ) p\in(0,+\infty) p(0,+) a r \boldsymbol a_r ar F r , t \boldsymbol F_{r,t} Fr,t产生的合加速度。
    针对第3点局限性中存在全局搜索和局部搜索不平衡的问题,GASCS算法提出一种概率变异方法增大种群进化的多样性,避免算法陷入局部搜索以及算法执行后期出现的迟滞现象。
    假设 X r , m = ( x r , m ( 1 ) , x r , m ( 2 ) , ⋯   , x r , m ( j ) , ⋯   , x r , m ( D ) ) \boldsymbol{X}_{r,m}=(x_{r,m}^{(1)},x_{r,m}^{(2)},\cdots,x_{r,m}^{(j)},\cdots,x_{r,m}^{(D)}) Xr,m=(xr,m(1),xr,m(2),,xr,m(j),,xr,m(D)),并且 x r , m ( j ) ∈ [ l ( j ) , u ( j ) ] x_{r,m}^{(j)}\in[l^{(j)},u^{(j)}] xr,m(j)[l(j),u(j)]。执行概率变异操作时,首先从 X r , m \boldsymbol X_{r,m} Xr,m中以概率 1 / D 1/D 1/D选取种群个体 x r , m ( j ) , j ∈ [ 1 , D ] x_{r,m}^{(j)},j\in[1,D] xr,m(j),j[1,D];其次,利用式(17)的 x ~ r , m ( j ) \tilde x_{r,m}^{(j)} x~r,m(j)取代 x r , m ( j ) x_{r,m}^{(j)} xr,m(j),其中, k k k [ 1 , D ] [1,D] [1,D]内的随机整数, ξ \xi ξ ( 0 , 1 ) (0,1) (0,1)内的均匀分布随机数, l ( j ) l^{(j)} l(j) u ( j ) u^{(j)} u(j)分别为 x r , m ( j ) x_{r,m}^{(j)} xr,m(j)的上界和下界;最后,通过概率变异将候选解 X r , m \boldsymbol X_{r,m} Xr,m更替为 X ~ r , m \tilde\boldsymbol X_{r,m} X~r,m,并进入算法执行过程,其中, X ~ r , m = ( x ~ r , m ( 1 ) , x ~ r , m ( 2 ) , ⋯   , x ~ r , m ( j ) , ⋯   , x ~ r , m ( D ) ) \tilde\boldsymbol{X}_{r,m}=(\tilde x_{r,m}^{(1)},\tilde x_{r,m}^{(2)},\cdots,\tilde x_{r,m}^{(j)},\cdots,\tilde x_{r,m}^{(D)}) X~r,m=(x~r,m(1),x~r,m(2),,x~r,m(j),,x~r,m(D))。经过概率变异后的种群进化获得更大的多样性,避免算法寻优过程单一化而造成的全局搜索效率较低的问题。通过两个随机个体的位置向量差、当前搜索到的最优解及群体中宿主巢穴所受到的万有引力加速度,获得下一次进化的方向,充分利用宿主巢穴及群体内部进化过程出现的有效信息: x ~ r , m ( j ) = { ( u ( j ) + l ( j ) ) / 2 + ( 1 − 2 ⋅ ξ ) ⋅ ( u ( j ) − l ( j ) ) / 2 ,   j = k x r , m ( j ) , j ≠ k (17) \tilde x_{r,m}^{(j)}=

    \begin{dcases}(u^{(j)}+l^{(j)})/2+(1-2\cdot\xi)\cdot(u^{(j)}-l^{(j)})/2,\quad\, j=k\\[2ex]x_{r,m}^{(j)},\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad j\neq k\end{dcases}
    \tag{17} x~r,m(j)=(u(j)+l(j))/2+(12ξ)(u(j)l(j))/2,j=kxr,m(j),j=k(17)GASCS算法在进化过程中不仅利用了Levy飞行随机游动方式的无限跳跃特性易于跳出局部最优解的特点,而且采用概率变异增大算法的多样性,确保算法能够跳离局部最优解。因此,GASCS算法较好地解决了CS算法存在全局搜索和局部搜索不平衡的问题。

    2.3 GASCS算法实现

    基于CS算法存在的3点局限性,文献[1]提出了具有万有引力加速机理的GASCS算法。该算法通过当前搜索到的最优解、Levy飞行随机游动和偏好随机游动方式产生的个体更新位置及宿主巢穴所受到的万有引力加速度共同作用,获得下一次进化的方向及最佳巢穴位置,并采用概率变异方法,引导宿主巢穴沿全局最优解方向移动,进而搜索到全局最优解。
    GASCS算法的执行步骤如下所示。
    步骤1. 算法初始化,种群为 N N N个宿主巢穴,优化问题的空间维度 D D D,最大进化代数 W W W,发现概率 P a P_a Pa,初始时刻万有引力系数 G 0 G_0 G0,算法控制参数 θ \theta θ,宿主巢穴的初始移动速度 V r , m \boldsymbol V_{r,m} Vr,m,其中,进化代数 r = 1 r=1 r=1
    步骤2. 计算随机化宿主巢穴位置 X r , m ( m = 1 , 2 , ⋯   , N ) \boldsymbol X_{r,m}(m=1,2,\cdots,N) Xr,m(m=1,2,,N)对应的适应度函数值 f ( X r , m ) f(\boldsymbol X_{r,m}) f(Xr,m)
    步骤3. 由式(10)计算 G r G_r Gr,同时,由式(7)和式(8)计算当前最优值 f r , b e s t f_{r,best} fr,best和最差值 f r , w o r s t f_{r,worst} fr,worst,以及对应的最优解 X r , g b \boldsymbol X_{r,gb} Xr,gb
    步骤4. 根据式(5)和式(6)计算宿主巢穴的质量 q r , m , M r , m q_{r,m},M_{r,m} qr,m,Mr,m
    步骤5. 分别根据式(11)和式(12)计算当前进化代数的宿主巢穴所受到的万有引力合力 F r , m ( j ) F_{r,m}^{(j)} Fr,m(j)和加速度 a r , m ( j ) a_{r,m}^{(j)} ar,m(j)
    步骤6. 采用式(15)的Levy飞行随机游动方式产生新的宿主巢穴,按照发现概率 P a P_a Pa舍弃候选解 X r + 1 , m \boldsymbol X_{r+1,m} Xr+1,m
    步骤7. 采用式(16)的偏好随机游动方式产生新的宿主巢穴,替换步骤6中被舍弃的候选解。
    步骤8. 采用概率变异方法产生候选解 X ~ r + 1 , m \tilde\boldsymbol X_{r+1,m} X~r+1,m对应的函数适应度值 f ( X ~ r + 1 , m ) f(\tilde\boldsymbol X_{r+1,m}) f(X~r+1,m)
    步骤9. 计算步骤8中种群产生的候选解对应的函数适应度值 f ( X ~ r + 1 , m ) f(\tilde\boldsymbol X_{r+1,m}) f(X~r+1,m),同时更新当前最优值 f r + 1 , b e s t f_{r+1,best} fr+1,best和最差值 f r + 1 , w o r s t f_{r+1,worst} fr+1,worst以及对应的最优解 X r + 1 , g b \boldsymbol X_{r+1,gb} Xr+1,gb
    步骤10. 若满足算法终止条件,则输出当前进化的最优值及最优解,并停止算法;否则,转向步骤3继续执行算法。

    二、实验仿真及分析

    将GASCS与GSA、CS、PSO和ABC进行对比,以常用23个测试函数中的F1、F5(单峰函数/30维)、F10、F13(多峰函数/30维)、F14、F16(固定维度多峰函数/2维、2维)为例,实验设置种群规模为20,最大迭代次数为400,每种算法独立运算30次,结果显示如下:

    • 函数适应度值的收敛曲线对比及收敛结果

    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

    函数:F1
    GSA:最优值: 0.23077, 最差值: 588.5136, 平均值: 81.2518, 标准差: 122.5703
    CS:最优值: 15.7073, 最差值: 128.0775, 平均值: 57.6246, 标准差: 23.681
    PSO:最优值: 162.3483, 最差值: 940.4387, 平均值: 456.4764, 标准差: 184.8215
    ABC:最优值: 0.067679, 最差值: 1184.4898, 平均值: 159.9748, 标准差: 274.4239
    GASCS:最优值: 1.5303e-149, 最差值: 1.4195e-125, 平均值: 4.9421e-127, 标准差: 2.5901e-126
    函数:F5
    GSA:最优值: 29.3923, 最差值: 1088.5277, 平均值: 197.5399, 标准差: 183.1622
    CS:最优值: 968.9382, 最差值: 107929.0128, 平均值: 8600.9133, 标准差: 19473.3501
    PSO:最优值: 4539.3427, 最差值: 135094.6679, 平均值: 35655.2356, 标准差: 28678.7236
    ABC:最优值: 12.9133, 最差值: 11851.841, 平均值: 1325.5531, 标准差: 2925.8172
    GASCS:最优值: 27.7906, 最差值: 28.8253, 平均值: 28.6015, 标准差: 0.18926
    函数:F9
    GSA:最优值: 36.8135, 最差值: 123.5968, 平均值: 76.1909, 标准差: 22.7362
    CS:最优值: 71.9859, 最差值: 136.2665, 平均值: 107.9521, 标准差: 15.6606
    PSO:最优值: 66.685, 最差值: 165.3538, 平均值: 101.6716, 标准差: 23.317
    ABC:最优值: 278.7571, 最差值: 340.2926, 平均值: 317.6587, 标准差: 15.2433
    GASCS:最优值: 0, 最差值: 0, 平均值: 0, 标准差: 0
    函数:F13
    GSA:最优值: 9.6037, 最差值: 41.6958, 平均值: 27.8702, 标准差: 9.3281
    CS:最优值: 10.2221, 最差值: 390.2833, 平均值: 55.3644, 标准差: 71.777
    PSO:最优值: 35.7413, 最差值: 30597.4275, 平均值: 5411.6015, 标准差: 9015.082
    ABC:最优值: 0.039083, 最差值: 34.6121, 平均值: 6.3655, 标准差: 7.976
    GASCS:最优值: 0.26526, 最差值: 1.2775, 平均值: 0.65661, 标准差: 0.28374
    函数:F14
    GSA:最优值: 0.998, 最差值: 13.0697, 平均值: 5.2528, 标准差: 3.6007
    CS:最优值: 0.998, 最差值: 0.998, 平均值: 0.998, 标准差: 1.2555e-12
    PSO:最优值: 0.998, 最差值: 13.6186, 平均值: 4.7318, 标准差: 3.3877
    ABC:最优值: 0.998, 最差值: 0.998, 平均值: 0.998, 标准差: 2.0623e-15
    GASCS:最优值: 0.998, 最差值: 0.998, 平均值: 0.998, 标准差: 1.2333e-12
    函数:F16
    GSA:最优值: -1.0316, 最差值: -1.0316, 平均值: -1.0316, 标准差: 4.7012e-16
    CS:最优值: -1.0316, 最差值: -1.0316, 平均值: -1.0316, 标准差: 1.5863e-15
    PSO:最优值: -1.0316, 最差值: -1.0316, 平均值: -1.0316, 标准差: 6.4539e-16
    ABC:最优值: -1.0316, 最差值: -1.0316, 平均值: -1.0316, 标准差: 1.0006e-05
    GASCS:最优值: -1.0316, 最差值: -1.0316, 平均值: -1.0316, 标准差: 1.6951e-10
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 独立运行30次的函数最优适应度值比较特性图

    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
    实验结果表明:提出的GASCS算法与其他算法相比具有更优秀的全局寻优性能、更好的鲁棒性、更快的搜索速度和更高的收敛精度。

    三、参考文献

    [1] 傅文渊. 具有万有引力加速机理的布谷鸟搜索算法[J]. 软件学报, 2021, 32(5): 1480-1494.
    [2] Yang X S, Deb S. Engineering Optimisation by Cuckoo Search[J]. International Journal of Mathematical Modelling & Numerical Optimisation, 2010, 1(4): 330-343.
    [3] Esmat Rashedi, Hossein Nezamabadi-pour, Saeid Saryazdi. GSA: A Gravitational Search Algorithm[J]. Information Sciences, 2009, 179(13): 2232-2248.

  • 相关阅读:
    交换两数整有几种途径
    在线升级 redis 到7.2.2
    微信小程序仿QQ头像轮播效果
    cad打印样式丢失怎么处理?
    java计算机毕业设计宠物云寄养系统源码+系统+lw文档+mysql数据库+部署
    stm32 用定时器的编码器模式来检测正反转
    【题目精刷】2022紫光展锐-数字IC设计
    通过竞品分析来挖掘产品卖点
    基于JAVA+SpringBoot+VUE+微信小程序的前后端分离咖啡小程序
    【Qt-22】Qt乱码问题解决
  • 原文地址:https://blog.csdn.net/weixin_43821559/article/details/125495757