1.算法原理
——复现文章:多策略增强的哈里斯鹰优化算法用于全局优化任务(Enhanced Harris hawks optimization with multi-strategy for global optimization tasks)
2.摘要
哈里斯鹰优化(HHO)算法是一种新提出的元启发式优化算法,模拟哈里斯鹰的捕猎过程。它具有调整参数少和优化效果强的特点,在类似的优化算法中具有强大的竞争力。然而,HHO在处理特定复杂优化问题时容易出现早熟收敛和收敛精度低的问题。因此,我们的工作将两种新颖的策略整合到标准HHO中,以增强探索和利用能力。具体来说,我们首先提出了一种基于对数螺线和反向学习的探索策略,以提高HHO的探索能力。其次,提出改进罗森布洛克方法(RM)的局部搜索技术,以动态融入标准HHO算法,增强算法的局部搜索能力并提高收敛精度。
3.优化技术原理
对数螺旋(Logarithmic spiral)
对数螺旋(LS)也被称为生长螺旋、等角螺旋和奇迹螺旋。在自然界中有许多对数螺旋形状,同时也有许多基于对数螺旋的数学优化算法(鲸鱼优化算法WOA,飞蛾扑火算法MFO)。对数螺旋轨迹:
X
t
+
1
=
∣
X
b
e
s
t
−
X
t
∣
×
e
b
l
×
cos
(
2
π
l
)
+
X
b
e
s
t
(1)
X_{t+1}=\begin{vmatrix}X_{best}-X_t\end{vmatrix}\times e^{bl}\times\cos\bigl(2\pi l\bigr)+X_{best}\tag{1}
Xt+1=
Xbest−Xt
×ebl×cos(2πl)+Xbest(1)
反向学习(Opposition-based learning)
基于反向学习(OBL)最初于2005年提出,它是提高随机搜索算法搜索能力的有效方法。OBL基本原理是寻找候选解的相对位置,然后评估最优候选解和相对位置。根据概率原理,新位置接近最佳位置的概率为50% 。OBL可以有效地增加种群的多样性,在一定程度上有助于改善算法早熟收敛的缺陷:
X
^
=
k
×
(
u
b
+
l
b
)
−
X
(2)
\widehat{X}=k\times\left(ub+lb\right)-X\tag{2}
X
=k×(ub+lb)−X(2)
罗森布洛克方法(Rosenbrock method)
RM是一种经典的无导数局部搜索技术,具有自适应搜索方向和大小。作为一种有效的局部搜索技术,RM已成功与人工蜂群算法结合使用,该算法在某些复杂的优化问题上表现出独特的卓越性能。因此,这让我们看到了这种局部搜索的潜力。
RM使用标准正交基中的各个方向作为初始搜索方向,按顺序进行搜索。搜索步长(δi)根据搜索结果的成功或失败进行调整:成功时增大步长(乘以参数α,α > 1),失败时减小并反向步长(乘以参数β,-1 < β < 0)。算法循环执行这个过程,直到每个方向都至少出现一次成功和失败的步骤后结束当前循环。同时,每当每个方向都有至少一次成功和失败的移动时,算法会更新其标准正交基,使用Gram-Schmidt正交化方法或帕尔默方法进行更新。
4.改进策略
Logarithmic spiral based on opposition-based learning (LS-OBL)
基于对数螺旋(LS)和反向学习(OBL)的探索策略,称为LSOBL。它基于在当前解和基于对立的解之间构建对数螺旋空间轨迹的原理,从而实现更广泛和更合理的探索范围:
X
t
+
1
=
∣
X
b
e
s
t
−
X
o
p
p
o
s
i
t
e
∣
×
e
b
l
×
cos
(
2
π
l
)
+
X
b
e
s
t
(3)
X_{t+1}=\begin{vmatrix}X_{best}-X_{opposite}\end{vmatrix}\times e^{bl}\times\cos\bigl(2\pi l\bigr)+X_{best}\tag{3}
Xt+1=
Xbest−Xopposite
×ebl×cos(2πl)+Xbest(3)
The modified RM
基本的RM(罗森布洛克方法)被开发用于处理单峰问题。因此,作为一种局部搜索技术,它仅适用于单峰问题,而多峰问题会陷入局部最优而无法跳出。如果我们不对基本的RM进行修改,搜索方向将不会在迭代过程中及时更新,且获得的正确方向信息将不会被保留。因此,基于上述事实,本文修改了必要的RM终止条件。同时,修改后的RM中的初始步长是使用一种新方法生成。
流程图
伪代码
5.结果展示
CEC2005
6.参考文献
[1] Li C Y, Li J, Chen H L, et al. Enhanced Harris hawks optimization with multi-strategy for global optimization tasks[J]. Expert Systems with Applications, 2021, 185: 115499.