1.摘要
麻雀搜索算法(SSA)是一种基于麻雀觅食和防捕行为的群体智能算法。然而,基本SSA在迭代过程中,种群多样性逐渐降低,容易陷入局部最优解。为了解决这一问题,本文提出了五种改进麻雀搜索算法(ISSA 1-5),通过依次融合五种改进策略:改进的正弦映射、精英反向学习、正弦余弦算法、莱维飞行和高斯变异,从而提升SSA的性能。
2.麻雀搜索算法SSA原理
3.改进策略
改进正弦映射
实验表明,使用混沌映射进行种群初始化比使用伪随机数更为有效(Yu et al., 2018)。正弦映射具有无限的映射折叠次数,并表现出良好的混沌特性。因此,为了增加初始化的随机性并避免在后期迭代中种群多样性降低,本文提出了一种改进正弦混沌映射:
s
j
+
1
=
∣
sin
(
μ
π
s
j
)
∣
,
μ
∈
R
s_{j+1}= \begin{vmatrix} \sin(\mu\pi s_j) \end{vmatrix},\mu\in R
sj+1=
sin(μπsj)
,μ∈R
精英反向学习
精英反向学习(EOBL)利用精英个体在当前种群的基础上构建反向种群,并在当前种群和反向种群中选择较优的个体作为初始种群:
X
i
E
∗
=
k
(
α
i
+
β
i
)
−
X
i
E
X_i^{E*}=k(\alpha_i+\beta_i)-X_i^E
XiE∗=k(αi+βi)−XiE
正弦余弦算法
本文将正弦余弦算法(SCA)的思想融入到生产者位置更新公式中,利用正弦余弦函数的振荡特性来保证生产者的搜索空间:
X
i
,
j
t
+
1
=
{
X
i
,
j
t
+
r
1
⋅
sin
(
r
2
)
⋅
∣
r
3
⋅
X
b
e
s
t
t
−
X
i
,
j
t
∣
if
R
2
<
S
T
X
i
,
j
t
+
r
1
⋅
cos
(
r
2
)
⋅
∣
r
3
⋅
X
b
e
s
t
t
−
X
i
,
j
t
∣
if
R
2
≥
S
T
X^{t+1}_{i,j} = \begin{cases} X^{t}_{i,j} + r_1 \cdot \sin(r_2) \cdot |r_3 \cdot X^{t}_{best} - X^{t}_{i,j}| & \text{if } R_2 < ST \\ X^{t}_{i,j} + r_1 \cdot \cos(r_2) \cdot |r_3 \cdot X^{t}_{best} - X^{t}_{i,j}| & \text{if } R_2 \geq ST \end{cases}
Xi,jt+1={Xi,jt+r1⋅sin(r2)⋅∣r3⋅Xbestt−Xi,jt∣Xi,jt+r1⋅cos(r2)⋅∣r3⋅Xbestt−Xi,jt∣if R2<STif R2≥ST
流程图
3.结果展示
4.参考文献
[1] Li J, Chen J, Shi J. Evaluation of new sparrow search algorithms with sequential fusion of improvement strategies[J]. Computers & Industrial Engineering, 2023, 182: 109425.