文章目录
一、理论基础
1、均衡优化算法(EO)
请参考这里。
2、改进的均衡优化算法(LWMEO)
(1)引入基于莱维飞行的优选区域随机游走策略
将基于莱维飞行的优选区域随机游走策略引入EO的位置更新公式中,丰富了算法的搜索策略,增加了种群多样性,更好地平衡了算法的探索和开发能力。
莱维飞行具体原理可参考这里。当使用基于莱维飞行的优选区域随机游走策略时,LWMEO算法将在平衡池中的当前最佳解和候选解之间进行选择,它有50%的概率直接选择最优个体作为目标对象,还有50%的概率选择平衡池中的目标对象,这可以进一步提高LWMEO的搜索范围和优化精度。改进后的位置更新公式如下所示:
C
i
i
t
e
r
+
1
=
{
C
e
q
i
t
e
r
+
(
C
i
i
t
e
r
−
C
e
q
i
t
e
r
)
×
C
i
i
t
e
r
+
C
i
i
t
e
r
C
i
i
t
e
r
V
(
1
−
F
i
i
t
e
r
)
r
2
≥
G
P
C
e
q
i
t
e
r
+
s
i
g
n
(
r
a
n
d
(
)
−
0.5
)
×
(
C
e
q
i
t
e
r
−
C
i
i
t
e
r
)
×
L
i
i
t
e
r
r
3
≥
G
P
&
r
2
<
G
P
C
e
q
1
i
t
e
r
+
s
i
g
n
(
r
a
n
d
(
)
−
0.5
)
×
(
C
e
q
1
i
t
e
r
−
C
i
i
t
e
r
)
×
L
i
i
t
e
r
r
3
<
G
P
&
r
2
<
G
P
(1)
C_i^{iter+1}=\begin{dcases}C_{eq}^{iter}+\left(C_i^{iter}-C_{eq}^{iter}\right)\times C_i^{iter}+\frac{C_i^{iter}}{C_i^{iter}V}(1-F_i^{iter})\quad\,\, r_2\geq GP\\[2ex]C_{eq}^{iter}+sign(rand()-0.5)\times(C_{eq}^{iter}-C_i^{iter})\times L_i^{iter}\quad r_3\geq GP\,\,\&\,\,r_2<GP\\[2ex]C_{eq1}^{iter}+sign(rand()-0.5)\times(C_{eq1}^{iter}-C_i^{iter})\times L_i^{iter}\quad r_3< GP\,\,\&\,\,r_2<GP\end{dcases}\tag{1}
Ciiter+1=⎩⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎧Ceqiter+(Ciiter−Ceqiter)×Ciiter+CiiterVCiiter(1−Fiiter)r2≥GPCeqiter+sign(rand()−0.5)×(Ceqiter−Ciiter)×Liiterr3≥GP&r2<GPCeq1iter+sign(rand()−0.5)×(Ceq1iter−Ciiter)×Liiterr3<GP&r2<GP(1)其中,
r
2
r_2
r2和
r
3
r_3
r3都是均匀分布在
(
0
,
1
)
(0,1)
(0,1)之间的随机数;
L
L
L是服从莱维分布的随机数矩阵,其维数与优化空间的维数相同。
根据式(1),LWMEO算法继承了EO的优点,增加了基于莱维飞行的优选区域随机游走策略,增加了在搜索过程中引导一些个体向当前高质量个体移动的机制,从而避免了搜索的盲目性,提高了算法的迭代效率。均衡池机制的加入也增加了高质量区域的范围和多样性,避免了算法容易陷入局部最优解的问题。
(2)鲸鱼算法螺旋包围机制的集成
为了增强EO的开发能力,引入并合并了鲸鱼优化算法的螺旋包围机制。虽然算法的均衡池机制可以增加最优目标区域的范围和多样性,避免算法陷入局部最优解,但也会降低算法对最优区域的挖掘能力。鲸鱼优化算法的螺旋包围机制选择当前种群中的最佳个体作为目标对象,并在最佳个体附近进行螺旋搜索,具有较强的局部挖掘能力,可以有效弥补EO开采能力不稳定的缺点。在LWMEO算法中,通过式(2)更新群体中的个体,以计算其适应度值,并选择具有最佳适应度值的个体作为螺旋包围机制的目标,然后执行螺旋搜索以进一步更新个体位置。其位置更新方程如下:
D
i
i
t
e
r
=
a
b
s
(
C
e
q
1
i
t
e
r
−
C
i
i
t
e
r
)
(2)
D_i^{iter}=abs(C_{eq1}^{iter}-C_i^{iter})\tag{2}
Diiter=abs(Ceq1iter−Ciiter)(2)
C
i
i
t
e
r
+
1
=
D
i
i
t
e
r
×
e
c
l
×
cos
(
2
π
l
)
+
C
e
q
1
i
t
e
r
(3)
C_i^{iter+1}=D_i^{iter}\times e^{cl}\times \cos(2\pi l)+C_{eq1}^{iter}\tag{3}
Ciiter+1=Diiter×ecl×cos(2πl)+Ceq1iter(3)其中,
D
D
D是当前个体到当前最优个体的距离;
a
b
s
(
)
abs()
abs()是绝对值函数;
c
c
c是一个等于1的常数;
l
l
l是均匀分布在
(
−
1
,
1
)
(-1,1)
(−1,1)的随机数。
螺旋包围机制的引入进一步提高了EO的开发能力,种群中的个体在进行螺旋搜索时都朝着最优解移动,有效地弥补了平衡池机制可能导致个体无法充分利用最优个体位置信息的缺点。
(3)加入自适应比例变异策略
通过对上述两种改进策略的增强,EO的探索和开发能力得到了提高,但仍有继续提高其搜索精度和效率的空间,为此,在进入下一次迭代之前,在算法中加入了自适应比例变异策略,LWMEO算法根据适应度值对个体进行排序,保留前
3
/
4
3/4
3/4个体较好的种群,同时对后
1
/
4
1/4
1/4个体较差的种群进行变异,变异个体的比例随着迭代次数的增加呈非线性下降,执行这种自适应比例变异的位置更新公式如下所示:
C
2
_
n
o
=
f
l
o
o
r
(
(
N
/
4
)
×
t
)
(4)
C2\_no=floor((N/4)\times t)\tag{4}
C2_no=floor((N/4)×t)(4)
C
1
_
n
o
=
N
−
C
2
_
n
o
(5)
C1\_no=N-C2\_no\tag{5}
C1_no=N−C2_no(5)
C
1
=
C
(
1
:
C
1
_
n
o
,
:
)
(6)
C1=C(1:C1\_no,:)\tag{6}
C1=C(1:C1_no,:)(6)
C
2
=
C
(
C
1
_
n
o
+
1
:
e
n
d
,
:
)
(7)
C2=C(C1\_no+1:end,:)\tag{7}
C2=C(C1_no+1:end,:)(7)
C
2
=
C
2
+
r
a
n
d
(
1
,
d
i
m
)
×
(
C
(
1
,
:
)
−
C
2
)
(8)
C2=C2+rand(1,dim)\times(C(1,:)-C2)\tag{8}
C2=C2+rand(1,dim)×(C(1,:)−C2)(8)
C
=
[
C
1
,
C
2
]
(9)
C=[C1,C2]\tag{9}
C=[C1,C2](9)其中,用于控制变异比例的权重系数采用式(4)中的自适应系数
t
t
t;
f
l
o
o
r
(
)
floor()
floor()是向下取整函数;
C
1
_
n
o
C1\_no
C1_no和
C
2
_
n
o
C2\_no
C2_no分别是保留个体和变异个体的种群数量;
C
1
C1
C1和
C
2
C2
C2分别是保留个体和变异个体的种群;
C
1
(
1
,
:
)
C1(1,:)
C1(1,:)表示对群体进行排序后的第一个个体,也是当前全局最优解。
自适应比例变异策略可以快速消除适应值较差的个体,早期较大比例的变异可以进一步提高算法的全局搜索能力,更快地找到全局最优区域,而后期较小比例的变异可以保留更多的优势个体,有效提高了算法的搜索效率。
LWMEO算法的伪代码如下图所示。
二、仿真实验与结果分析
将LWMEO与EO和SSA进行对比,实验设置种群规模为100,最大迭代次数为5000,每个算法独立运行1次,以CEC2014函数中的F2、F3(单峰函数/50维)、F8、F10(简单多峰函数/50维)、F19(混合函数/50维)、F24(合成函数/50维)为例,结果显示如下:
函数:F2
LWMEO:最优值: 208.6454
EO:最优值: 10881.6038
SSA:最优值: 1395.3436
函数:F3
LWMEO:最优值: 308.8668
EO:最优值: 1365.4926
SSA:最优值: 1058.2136
函数:F8
LWMEO:最优值: 828.8557
EO:最优值: 964.0694
SSA:最优值: 1135.2991
函数:F10
LWMEO:最优值: 3879.0673
EO:最优值: 6043.6549
SSA:最优值: 6476.8054
函数:F19
LWMEO:最优值: 1924.3161
EO:最优值: 1915.538
SSA:最优值: 1926.2899
函数:F24
LWMEO:最优值: 2679.557
EO:最优值: 2600.0009
SSA:最优值: 2707.2422
实验结果表明:LWMEO算法的优化能力、收敛速度和解的稳定性明显优于比较算法。
三、参考文献
[1] Jingsen Liu, Wuxin Li, Yu Li. LWMEO: An efficient equilibrium optimizer for complex functions and engineering design problems[J]. Expert Systems With Applications, 2022, 198: 116828.