融合莱维飞行与黄金正弦的蚁狮优化算法-附代码

融合莱维飞行与黄金正弦的蚁狮优化算法


摘要:针对蚁狮优化算法较易陷入局部最优停滞、收敛精度低以及收敛速度较慢等问题,将莱维飞行机制和黄金正弦算法融合到蚁狮优化算法中,提出了融合莱维飞行与黄金正弦的蚁狮优化算法(LGSALO)。该算法利用Lévy飞行的变异机制对寻优过程中位置更新方式进行变异操作,可以改善种群多样性,使得算法跳出局部最优,提高全局寻优能力,并在一定程度上避免了算法的过早收敛;同时引入黄金正弦算法改进精英蚁狮的寻优方式,协调算法的全局探索与局部开发能力。

1.蚁狮优化算法

基础蚁狮优化算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/107726004

2. 改进蚁狮优化算法

2.1 Lévy 变异机制

Lévy 飞行的概率密度函数服从 Lévy 分布, 其函数如下:
P α , β ( x ) = 1 π ∫ 0 ∞ exp ⁡ ( r q α ) cos ⁡ ( q z ) d q (10) P_{\alpha, \beta}(x)=\frac{1}{\pi} \int_{0}^{\infty} \exp \left(r q^{\alpha}\right) \cos (q z) \mathrm{d} q \tag{10} Pα,β(x)=π10exp(rqα)cos(qz)dq(10)
其中:0< α ⩽ 2 \alpha \leqslant 2 α2 控制 Lévy 分布图中峰的锐度, r > 0 r>0 r>0 控制分布图 形的跨度。当 α = 2 \alpha=2 α=2 时, Lévy 分布就是高斯分布, α = 1 \alpha=1 α=1 时, Lévy 分布就是柯西分布。对于非整数的 α \alpha α 取值, 通过 Lévy 分布的 概率密度函数分析较为困难, 需要采用模拟方法来产生 Lévy 分布的随机步长。其位置更新公式㛎下:
x i t + 1 = x i t + α ⊕ L e ˊ v y ⁡ ( λ ) (11) x_{i}^{t+1}=x_{i}^{t}+\alpha \oplus \operatorname{Lévy}(\lambda) \tag{11} xit+1=xit+αLeˊvy(λ)(11)
其中: α \alpha α 为随机步长; ⊕ \oplus 为点乘; Lévy 为符合 Lévy 分布的随机搜索路径且符合以下约束:
 L e ˊ vy  ( λ ) ∼ φ u ∣ v ∣ 1 / 2 (12) \text { Lévy }(\lambda) \sim \frac{\varphi u}{|v|^{1 / 2}} \tag{12}  Leˊvy (λ)v1/2φu(12)
其中: u 、 v u 、 v uv 服从标准正态分布; λ = 1.5 \lambda=1.5 λ=1.5
φ = [ Γ ( 1 + λ ) sin ⁡ ( π λ / 2 ) Γ [ ( 1 + λ ) / 2 ] λ 2 ( λ − 1 ) / 2 ] 1 / λ \varphi=\left[\frac{\Gamma(1+\lambda) \sin (\pi \lambda / 2)}{\left.\Gamma[(1+\lambda) / 2] \lambda 2^{(\lambda-1) / 2}\right]^{1 / \lambda}}\right. φ=[Γ[(1+λ)/2]λ2(λ1)/2]1/λΓ(1+λ)sin(πλ/2)

2.2 黄金正弦算法

黄金正弦算法 (golden sine algorithm, golden-SA)是 Tanyildizi等人 [ 13 ] { }^{[13]} [13] 于 2017 年提出的新型元启发式算法, 该算法 的设计灵感来源于数学中的正弦函数, 该算法利用数学中的正 弦函数进行计算迭代寻优, 其优点是收敛速度快、查棒性好、易 于实现、调节的参数和运算符少。
golden-SA 根据正弦函数与单位圆 的关系, 可以遍历正弦 函数上的所有值即寻遍单位圆上所有的点, 同时在其位置更新 过程中引入黄金分割数缩小解决方案的空间, 以便扫描可能只 产生良好结果的区域, 很大程度上提高了搜索速度, 且使搜索 和开发达到良好的平衡。golden-SA 算法的核心是位置更新过 程, 随机产生 s s s 个个体的位置, 并用 X i T = ( X i 1 , X i 2 , X i 3 , ⋯   X_{i}^{T}=\left(X_{i 1}, X_{i 2}, X_{i 3}, \cdots\right. XiT=(Xi1,Xi2,Xi3,, X i d ) T \left.X_{i d}\right)^{T} Xid)T, 表示 d d d 维个体空间中第 T T T 次迭代中第 i ( i = 1 , 2 , ⋯   , s ) i(i=1,2, \cdots, s) i(i=1,2,,s) 个 个体的空间位置, P i T = ( P i 1 , P i 2 , P i 3 , ⋯   , P i d ) T P_{i}^{T}=\left(P_{i 1}, P_{i 2}, P_{i 3}, \cdots, P_{i d}\right)^{T} PiT=(Pi1,Pi2,Pi3,,Pid)T 表示第 T T T 代个体 i i i 的最优位置, 在 T + 1 T+1 T+1 次迭代中, 第 i ( i = 1 , 2 , ⋯   , n p ) i(i=1,2, \cdots, n p) i(i=1,2,,np) 个个体的 位置更新公式如下:
X i T + 1 = X i T ∣ sin ⁡ ( R 1 ) ∣ + R 2 sin ⁡ ( R 1 ) ∣ x 1 P i T − x 2 X i T ∣ (13) X_{i}^{T+1}=X_{i}^{T}\left|\sin \left(R_{1}\right)\right|+R_{2} \sin \left(R_{1}\right)\left|x_{1} P_{i}^{T}-x_{2} X_{i}^{T}\right| \tag{13} XiT+1=XiTsin(R1)+R2sin(R1) x1PiTx2XiT (13)
其中: R 1 R_{1} R1 R 2 R_{2} R2 是随机数, R 1 R_{1} R1 决定下一次迭代中个体的移动距 离, R 1 ∈ [ 0 , 2 π ] , R 2 R_{1} \in[0,2 \pi], R_{2} R1[0,2π],R2 决定下一次迭代的位置更新方向, R 2 ∈ R_{2} \in R2 [ 0 , π ] ; x 1 [0, \pi] ; x_{1} [0,π];x1 x 2 x_{2} x2 是通过黄金分割得到的系数, 可以缩小搜索空 间引领个体趋近最优值, 黄金分割数 τ = ( 5 − 1 ) / 2 , x 1 = \tau=(\sqrt{5}-1) / 2, x_{1}= τ=(5 1)/2,x1= − π + ( 1 − τ ) × 2 π , x 2 = − π + τ × 2 π -\pi+(1-\tau) \times 2 \pi, x_{2}=-\pi+\tau \times 2 \pi π+(1τ)×2π,x2=π+τ×2π

请添加图片描述

3.实验结果

请添加图片描述

4.参考文献

[1]于建芳,刘升,王俊杰,鲁晓艺.融合莱维飞行与黄金正弦的蚁狮优化算法[J].计算机应用研究,2020,37(08):2349-2353.

5.Matlab代码

6.Python代码

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智能算法研学社(Jack旭)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值