组合多策略改进的自适应哈里斯鹰优化算法(LTWHHO) -附代码

组合多策略改进的自适应哈里斯鹰优化算法(LTWHHO)


摘要:针对标准哈里斯鹰优化算法(HHO)易陷入局部最优、寻优精度不高和收敛速度不理想等不足,提出一种组合多策略改进的自适应哈里斯鹰优化算法(LTWHHO)。在提高种群多样性方面用改进Logistic映射初始化,为平衡全局探索和局部开发提出非线性函数改进逃逸能量算子的线性递减参数,在全局探索阶段引入T分布策略来提高收敛速度和精度,在局部开发阶段引入自适应动态扰动机制来增强跳出局部最优能力。

1.哈里斯鹰优化算法

基础哈里斯鹰优化算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/108528147

2.改进哈里斯鹰优化算法

2.1 Logistic初始化策略

Logistic 混沌映射常用于初始化种群, 有较广的分布性、较强的随机性和自相关性 [ 9 ] { }^{[9]} [9], 能让哈里 斯鹰种群更多样性、分布更均匀。受文献[10]启发, 对原始Logistic 混沌映射函数加以改进, 设目标 函数如公式 (3) 所示, 通过公式 (4) 求解级联混沌序列 [ y n ] \left[y_n\right] [yn] :
min ⁡ f ( x 1 , x 2 , ⋯   , x n ) , l b i < x i < u b i . ( 3 ) { x n + 1 ′ = 4 x n ′ ( 1 − x n ′ ) , y n ′ = 1 π arcsin ⁡ ( 2 x n + 1 ′ − 1 ) − 1 2 , x n + 1 = 4 y n ′ ( 1 − y n ′ ) , y n = 1 π arcsin ⁡ ( 2 x n + 1 − 1 ) − 1 2 . ( 4 ) \begin{aligned} & \min f\left(x_1, x_2, \cdots, x_n\right), l b_i<x_i<u b_i . \quad(3)\\ & \left\{\begin{array}{l} x_{n+1}^{\prime}=4 x_n^{\prime}\left(1-x_n^{\prime}\right), \\ y_n^{\prime}=\frac{1}{\pi} \arcsin \left(2 x_{n+1}^{\prime}-1\right)-\frac{1}{2}, \\ x_{n+1}=4 y_n^{\prime}\left(1-y_n^{\prime}\right), \\ y_n=\frac{1}{\pi} \arcsin \left(2 x_{n+1}-1\right)-\frac{1}{2} .\quad(4) \end{array}\right. \end{aligned} minf(x1,x2,,xn),lbi<xi<ubi.(3) xn+1=4xn(1xn),yn=π1arcsin(2xn+11)21,xn+1=4yn(1yn),yn=π1arcsin(2xn+11)21.(4)
式中 n n n 为种群数量, u b i u b_i ubi l b i l b_i lbi 表示求解空间上下界。再对 [ y n ] \left[y_n\right] [yn] 进行线性变换, 如式 (5) 所示, 得 到哈里斯鹰的初始位置:
P i = l b i + ( u b i − l b i ) y n . (5) P_i=l b_i+\left(u b_i-l b_i\right) y_n .\tag{5} Pi=lbi+(ubilbi)yn.(5)

2.2 逃逸能量算子 递减改进策略

原算法中递减控制参数 E 1 E_1 E1 为线性递减函数, 实际鹰群在捕猎过程中, 猎物出现 快速逃跑、短暂休息等行为, 其能量下降并非线性递减过程。本文主要通过对线性递减控制参数 E 1 E_1 E1 进行改进,如公式 (6 7) 所示:
E 1 = 1 − 1 1 + e − λ , ( 6 ) λ = ( t max ⁡ ) 1 4 ( 2 t t max  − 1 ) . ( 7 ) \begin{aligned} & E_1=1-\frac{1}{1+\mathrm{e}^{-\lambda}}, \quad(6)\\ & \lambda=\left(t_{\max }\right)^{\frac{1}{4}}\left(\frac{2 t}{t_{\text {max }}}-1\right) .\quad(7) \end{aligned} E1=11+eλ1,(6)λ=(tmax)41(tmax 2t1).(7)
设最大迭代次数 t max ⁡ = 1000 t_{\max }=1000 tmax=1000, 改进后能量递减控制参数 E 1 E_1 E1 前期递减较缓慢, 随着追捕的进程 快速下降, 后期递减速度再趋缓。

2.3 分布策略

X ∼ N ( 0 , 1 ) , Y ∼ χ 2 ( n ) X \sim N(0,1), Y \sim \chi^2(n) XN(0,1),Yχ2(n), 令 T = X Y / n T=\frac{X}{\sqrt{Y / n}} T=Y/n X, 则称自由度为 n n n T T T 分布, 记作 T ( n ) T(n) T(n) 。当把迭代次数 t t t 作为自由度参数时, t t t 值从小变大, T ( t ) T(t) T(t) 呈现出柯西分布和高斯分布的特点, 改善了算法的全局寻优 能力和收玫精度 [ 11 ] { }^{[11]} [11] 。在算法的全局探索阶段加入 T \mathrm{T} T 分布策略, 哈里斯鹰位置更新如公式 (8) 所示:
P ( t + 1 ) = P best  ( t ) + P best  ( t ) × T ( t ) .  (8) P(t+1)=P_{\text {best }}(t)+P_{\text {best }}(t) \times T(t) \text {. }\tag{8} P(t+1)=Pbest (t)+Pbest (t)×T(t)(8)
式中 P ( t + 1 ) P(t+1) P(t+1) 为第 t + 1 t+1 t+1 次迭代时哈里斯鹰的位置; P best  ( t ) P_{\text {best }}(t) Pbest (t) 为第 t t t 次迭代时最佳个体位置。

2.4 自适应动态扰动机制

惯性权重因子是一个平衡全局探索和局部开发的重要参数, 其值较大时算法的全局探索能力 较强, 其值较小时算法局部开发能力较强[12]。当 ∣ E ∣ < 1 |E|<1 E<1 时, 哈里斯鹰优化算法进入局部开发阶段, 为避免算法陷入局部最优, 同时提高局部寻优能力, 结合惯性权重因子思路, 提出一种自适应动态 扰动机制,如公式(9)所示:
ω = − cos ⁡ ( t 2 t max ⁡ π ) + ( ω initial  + ω tmax ⁡ ) 2 . (9) \omega=-\cos \left(\frac{t}{2 t_{\max }} \pi\right)+\frac{\left(\omega_{\text {initial }}+\omega_{\operatorname{tmax}}\right)}{2} .\tag{9} ω=cos(2tmaxtπ)+2(ωinitial +ωtmax).(9)
式中 ω initial  = 1 \omega_{\text {initial }}=1 ωinitial =1 为初始扰动权值, ω max ⁡ = 0.5 \omega_{\max }=0.5 ωmax=0.5 为最大迭代次数对应的扰动权值。引入自适应动态 扰动机制后, 哈里斯鹰位置更新如公式 (10) 所示:
P best  ′ ( t ) = ω × P best  ( t ) . (10) P_{\text {best }}^{\prime}(t)=\omega \times P_{\text {best }}(t) .\tag{10} Pbest (t)=ω×Pbest (t).(10)

在这里插入图片描述

3.实验结果

在这里插入图片描述

4.参考文献

[1]罗俊星.组合多策略改进的自适应哈里斯鹰优化算法[J].漳州职业技术学院学报,2023,25(01):84-90+102.DOI:10.13908/j.cnki.issn1673-1417.2023.01.0013.

5.Matlab代码

6.python代码

猜你喜欢

转载自blog.csdn.net/u011835903/article/details/131444013