野狗搜索算法
一、理论基础
野狗优化算法(Dingo Optimization Algorithm,DOA)是于2021年提出的一种新型智能优化算法,该算法灵感来源于野狗的狩猎策略,即迫害攻击、分组策略和食腐行为。具有寻优能力强,收敛速度快等特点。
1、策略一:集体攻击
x
i
→
(
t
+
1
)
=
β
i
∑
k
=
1
n
a
∣
φ
k
(
t
)
→
−
x
i
(
t
→
)
∣
n
a
−
x
∗
→
(
t
+
1
)
\overrightarrow {{\rm{xi}}} (t + 1) = \beta i\sum\limits_{k = 1}^{na} {{{\left| {\overrightarrow {\varphi k(t)} - \overrightarrow {xi(t} )} \right|} \over {na}} - } \overrightarrow {{\rm{x*}}} (t + 1)
xi(t+1)=βik=1∑nana
φk(t)−xi(t)
−x∗(t+1)
其中,
x
i
→
(
t
+
1
)
\overrightarrow {{\rm{xi}}} (t + 1)
xi(t+1)是搜索代理的新位置(表示野狗的移动);na是在[2,SizePop/2]的逆序中生成的随机整数,其中SizePop 是野狗种群的规模;
φ
k
(
t
)
→
{\overrightarrow {\varphi k(t)} }
φk(t)是搜索代理(将攻击的野狗)的子集,其中
x
i
(
t
)
→
{\overrightarrow {xi(t)} }
xi(t)是当前搜索代理;
x
∗
→
(
t
+
1
)
\overrightarrow {{\rm{x*}}} (t + 1)
x∗(t+1)是上一次迭代中发现的最佳搜索代理;
β
i
\beta i
βi是[−2,2]内均匀生成的随机数,它是一个比例因子,可改变野狗轨迹的大小。
2、策略二:迫害
野狗通常捕猎小猎物,直到单独捕获为止。式(3)模拟了这种行为:
x
i
→
(
t
+
1
)
=
x
∗
→
(
t
+
1
)
+
β
1
∗
e
β
2
∗
(
x
r
1
→
(
t
)
−
x
i
→
(
t
)
)
\overrightarrow {{\rm{xi}}} (t + 1) = \overrightarrow {{\rm{x*}}} (t + 1) + \beta 1*{e^{\beta 2}}*(\overrightarrow {{\rm{xr1}}} (t) - \overrightarrow {{\rm{xi}}} (t))
xi(t+1)=x∗(t+1)+β1∗eβ2∗(xr1(t)−xi(t))
其中,
x
i
→
(
t
+
1
)
\overrightarrow {{\rm{xi}}} (t + 1)
xi(t+1)是也够的新位置,
x
i
→
(
t
)
\overrightarrow {{\rm{xi}}} (t)
xi(t)是上一次的最佳位置,
β
2
{\beta 2}
β2是在[-1,1]区间内均匀生成的随机数,ri是在从1到最大搜索代理大小的区间内生成的随机数,
x
r
1
→
(
t
)
\overrightarrow {{\rm{xr1}}} (t)
xr1(t)是随机生成的r1个野狗,其中i≠r1
3、策略三:食腐
清扫即为野狗在它们的生活地随意行走时找到腐肉吃的行为.
x
i
→
(
t
+
1
)
=
1
2
[
e
β
2
∗
x
r
1
→
(
t
)
−
(
−
1
)
σ
∗
x
i
→
(
t
)
]
\overrightarrow {{\rm{xi}}} (t + 1) = {1 \over 2}[{e^{\beta 2}}*\overrightarrow {{\rm{xr1}}} (t) - {( - 1)^\sigma }*\overrightarrow {{\rm{xi}}} (t)]
xi(t+1)=21[eβ2∗xr1(t)−(−1)σ∗xi(t)]
其中,σ是随机生成的二进制数,σ∈(0,1)
4、策略四:野狗的存活率
澳大利亚野狗面临灭绝的危险,主要是因为非法狩猎。在DOA中,野狗的存活率值由式(5)给出:
s
u
r
v
i
v
a
l
(
i
)
=
f
i
t
n
e
s
s
max
−
f
i
t
n
e
s
s
(
i
)
f
i
t
n
e
s
s
max
−
f
i
t
n
e
s
s
min
survival(i) = {{fitness\max - fitness(i)} \over {fitness\max - fitness\min }}
survival(i)=fitnessmax−fitnessminfitnessmax−fitness(i)
其中,
f
i
t
n
e
s
s
max
{fitness\max }
fitnessmax和
f
i
t
n
e
s
s
min
{fitness\min }
fitnessmin分别是当代中最差和最佳的适应度值,而
f
i
t
n
e
s
s
(
i
)
{fitness(i)}
fitness(i)是第i个搜索代理的当前适应度值。式中的生存向量包含[0,1]区间内的归一化。下式通过策略三应用于低生存率,例如,生存率值等于或小于0.3。
x
i
→
(
t
+
1
)
=
x
∗
→
(
t
)
+
1
2
[
x
r
1
→
(
t
)
−
(
−
1
)
σ
∗
x
r
2
→
(
t
)
]
\overrightarrow {{\rm{xi}}} (t + 1) = \overrightarrow {{\rm{x*}}} (t) + {1 \over 2}[\overrightarrow {{\rm{xr1}}} (t) - {( - 1)^\sigma }*\overrightarrow {{\rm{xr2}}} (t)]
xi(t+1)=x∗(t)+21[xr1(t)−(−1)σ∗xr2(t)]
其中,r1和r2是从1到搜索代理最大大小区间生成的随机数,r1≠r2,
x
r
1
→
(
t
)
\overrightarrow {{\rm{xr1}}} (t)
xr1(t)和
x
r
2
→
(
t
)
\overrightarrow {{\rm{xr2}}} (t)
xr2(t)是随机生成的第r1r2个野狗,
x
∗
→
(
t
)
\overrightarrow {{\rm{x*}}} (t)
x∗(t)是上一代野狗的最佳位置,σ 是算法随机生成的二进制数,σ ∈ { 0,1 }
二、实验仿真
![Alt]
三、参考文献
[1] Hernán Peraza-Vázquez, Adrián F. Peña-Delgado, Gustavo Echavarría-Castillo, et al. A Bio-Inspired Method for Engineering Design Optimization Inspired by Dingoes Hunting Strategies[J]. Mathematical Problems in Engineering, 2021, 2021: 9107547.