智能优化算法:黑寡妇算法
摘要:黑寡妇算法(Black Widow Optimization Algorithm,BWO)是 2020 年由 Vahideh Hayyolalam 等人受黑寡妇蜘蛛独特的交配行为启发而提出的,该算法模拟了黑寡妇蜘蛛的生命周期。具有收敛速度快,精度高等特点。
1.算法原理
1.1 初始化种群
黑寡妇蜘蛛种群初始化与其他智能优化算法一致,在边界范围内随机初始化种群。
1.2 蜘蛛运动。
黑寡妇蜘蛛在网格内按照线性和螺旋的方式进行运动,位置更新可见公(1)。
X
i
(
t
+
1
)
=
{
X
b
e
s
t
−
m
X
r
1
(
t
)
,
i
f
r
a
n
d
≤
0.3
X
b
e
s
t
−
c
o
s
(
2
π
β
)
X
i
(
t
)
,
e
l
s
e
(1)
X_i(t+1)=\begin{cases} X_{best}-mX_{r1}(t),if\,rand\leq0.3\\ X_{best}-cos(2\pi\beta)X_i(t),else \end{cases}\tag{1}
Xi(t+1)={Xbest−mXr1(t),ifrand≤0.3Xbest−cos(2πβ)Xi(t),else(1)
式中:
X
i
(
t
+
1
)
X_i(t+1)
Xi(t+1)为更新后的黑寡妇位置。
X
b
e
s
t
X_{best}
Xbest为当前黑寡妇的最优位置,
m
m
m为[0.4,0.9]之间的随机数,
β
\beta
β为[-1,1]内的随机数,
X
r
1
(
t
)
X_{r1}(t)
Xr1(t)为随机选择的第
r
1
r1
r1个黑寡妇的位置。
X
i
(
t
)
X_i(t)
Xi(t)为当前黑寡妇的位置。
1.3 信息素
信息素在蜘蛛的求偶过程中起着非常重要的作用。蜘蛛的饮食和影响蛛丝质量和数量的信息素信号的变化之间的联系被显示出来。 换句话说,吃得好的雌性蜘蛛比饥饿的雌性蜘蛛产的丝更多。雄性蜘蛛对营养充足的雌性蜘蛛分泌的性信息素更敏感,因为它们能提供更高的生育能力,但主要是为了避免与可能饥饿的雌性同类进行冒险交配的代价。 雄性黑寡妇蜘蛛宁愿避免同类相食,也不愿寻找生育能力更强的雌性蜘蛛。 仅性信息素就能洞察雌性的近期进食史,可能会降低雄性在田间表达选择的成本。 因此,雄性蜘蛛不喜欢信息素含量低的雌性蜘蛛。黑寡妇蜘蛛的信息素率值可按公式(2)计算:
P
h
e
r
o
m
o
n
e
(
i
)
=
f
i
t
n
e
s
s
m
a
x
−
f
i
t
n
e
s
s
(
i
)
f
i
t
n
e
s
s
m
a
x
−
f
i
t
n
e
s
s
m
i
n
(2)
Pheromone(i)=\frac{fitness_{max}-fitness(i)}{fitness_{max}-fitness_{min}} \tag{2}
Pheromone(i)=fitnessmax−fitnessminfitnessmax−fitness(i)(2)
式中:
f
i
t
n
e
s
s
m
a
x
fitness_{max}
fitnessmax和
f
i
t
n
e
s
s
m
i
n
fitness_{min}
fitnessmin为最差和最优的适应度函数值,
f
i
n
t
e
s
s
(
i
)
fintess(i)
fintess(i)为第
i
i
i个黑寡妇获得的适应度值。
当低信息素率值等于或小于0.3时,雌性体内低信息素水平蜘蛛代表饥饿的食人蜘蛛。因此,如果它们在场时,上述雌性蜘蛛不会被选中,但将被另一个取代可按公式(3)更新黑寡妇位置:
X
i
(
t
)
=
X
b
e
s
t
+
1
2
[
X
r
1
−
(
−
1
)
σ
X
r
2
(
t
)
]
(3)
X_i(t)=X_{best}+\frac{1}{2}[X_{r1}-(-1)^{\sigma}X_{r2}(t)]\tag{3}
Xi(t)=Xbest+21[Xr1−(−1)σXr2(t)](3)
式中:
X
i
(
t
)
X_i(t)
Xi(t)为雌性体内低信息素水平的黑寡妇位置,
r
1
r1
r1和
r
2
r2
r2为种群数量在
[
1
,
N
]
[1,N]
[1,N]范围内的数,
X
r
1
X_{r1}
Xr1和
X
r
2
X_{r2}
Xr2为第
r
1
r1
r1和
r
2
r2
r2个黑寡妇的位置,r1≠r2。
σ
\sigma
σ为随机二进制数{0,1}。
算法流程
步骤1:初始化种群评估适应度函数值。
步骤2:随机生成参数m和β。
步骤3:生成随机数rand并更新黑寡妇位置由式(1)。
步骤4:计算信息素根据式(2).
步骤5:根据式(3)更新低信息数水平的黑寡妇位置。
步骤6:重新评估适应度函数值,并更新最优黑寡妇的位置及最优解。
步骤7:判断是否满足最大迭代次数,若满足,则输出最优黑寡妇位置和全局最优解,否则,返回步骤2重新迭代计算。
2.算法结果
3.参考文献
[1] Adrián F. Peña-Delgado et al. A Novel Bio-Inspired Algorithm Applied to Selective Harmonic Elimination in a Three-Phase Eleven-Level Inverter[J]. Mathematical Problems in Engineering, Vol. 2020, Article ID 8856040, 10 pages.