DOA演演算法的靈感來源於野狗的狩獵策略,即迫害攻擊、分組策略和清掃行為。
野狗種群在搜尋邊界內隨機初始化:
x
i
⃗
=
l
b
i
+
r
a
n
d
i
(
u
b
i
−
l
b
i
)
(1)
\vec{x_i}=lb_i+rand_i(ub_i-lb_i)\tag{1}
xi=lbi+randi(ubi−lbi)(1)
其中,
l
b
i
lb_i
lbi和
u
b
i
ub_i
ubi分別表示個體的上下邊界,
r
a
n
d
i
rand_i
randi是[0,1]之間的亂數。
捕食者通常使用高度智慧的狩獵技術,野狗通常單獨捕食小獵物,如兔子,但當捕食大獵物,如袋鼠時,它們會成群結隊。野狗能找到獵物的位置並將其包圍,其行為如式(2)所示:
x
i
⃗
(
t
+
1
)
=
β
i
∑
k
=
1
n
a
[
φ
k
(
t
)
−
x
i
(
t
)
⃗
⃗
]
n
a
−
x
∗
(
t
)
⃗
(2)
\vec{x_i}(t+1)=\beta_i\sum_{k=1}^{na}\frac{[\vec{\varphi_k(t)-\vec{x_i(t)}}]}{na}-\vec{x_*(t)}\tag{2}
xi(t+1)=βik=1∑nana[φk(t)−xi(t)]−x∗(t)(2)
其中,
t
t
t代表當前的迭代次數,
x
i
⃗
(
t
+
1
)
\vec{x_i}(t+1)
xi(t+1)是野狗新位置;
n
a
na
na是在
[
2
,
S
i
z
e
P
o
p
/
2
]
[2,SizePop/2]
[2,SizePop/2]的逆序中生成的隨機整數,其中
S
i
z
e
P
o
p
SizePop
SizePop是野狗種群的規模;
φ
k
(
t
)
⃗
\vec{\varphi_k(t)}
φk(t)是將攻擊的野狗的子集,其中
φ
∈
X
\varphi\in X
φ∈X,是隨機生成的野狗種群;
x
i
⃗
(
t
)
\vec{x_i}(t)
xi(t)是當前野狗的位置;
x
∗
⃗
(
t
)
\vec{x_*}(t)
x∗(t)是上一次迭代中發現的最佳野狗;
β
1
\beta_1
β1是在[-2,2]內均勻生成的亂數,它是一個比例因子,可改變野狗軌跡的大小。
野狗通常捕獵小獵物,直到單獨捕獲為止。式(3)模擬了這種行為:
x
i
⃗
(
t
+
1
)
=
x
∗
⃗
(
t
)
+
β
1
∗
e
β
2
∗
(
x
r
1
⃗
(
t
)
−
x
i
(
t
)
⃗
)
(3)
\vec{x_i}(t+1)=\vec{x_*}(t)+\beta_1*e^{\beta_2}*(\vec{x_{r1}}(t)-\vec{x_i(t)})\tag{3}
xi(t+1)=x∗(t)+β1∗eβ2∗(xr1(t)−xi(t))(3)
其中,
x
i
⃗
(
t
+
1
)
\vec{x_i}(t+1)
xi(t+1)是野狗新位置,
x
∗
⃗
(
t
)
\vec{x_*}(t)
x∗(t)是上一次迭代中發現的最佳野狗,
β
1
\beta_1
β1的值與式(2)中的值相同,
β
2
\beta_2
β2是在[-1,1]區間內均勻生成的亂數,
r
1
r_1
r1是在從1到最大搜尋代理(野狗)大小的區間內生成的亂數,
x
r
1
⃗
(
t
)
\vec{x_{r1}}(t)
xr1(t)是隨機選擇的第
r
1
r_1
r1個野狗,其中
i
≠
r
1
i\neq r_1
i=r1。
清掃行為為被定義為當野狗在它們的棲息地隨意行走時找到腐肉吃的行為。式(4)用於模擬這種行為:
x
i
⃗
(
t
+
1
)
=
1
2
[
e
β
2
∗
x
r
1
⃗
(
t
)
−
(
−
1
)
σ
∗
x
i
⃗
(
t
)
]
(4)
\vec{x_i}(t+1)=\frac{1}{2}[e^{\beta_2}*\vec{x_{r_1}}(t)-(-1)^{\sigma}*\vec{x_i}(t)]\tag{4}
xi(t+1)=21[eβ2∗xr1(t)−(−1)σ∗xi(t)](4)
其中,
x
i
⃗
(
t
+
1
)
\vec{x_i}(t+1)
xi(t+1)是野狗新位置,
β
2
\beta_2
β2的值與式(3)中的值相同,
r
1
r_1
r1是在從1到最大搜尋代理(野狗)大小的區間內生成的亂數,
x
r
1
⃗
(
t
)
\vec{x_{r1}}(t)
xr1(t)是隨機選擇的第
r
1
r_1
r1個野狗,其中
i
≠
r
1
i\neq r_1
i=r1。
σ
\sigma
σ是演演算法隨機生成的二進位制數,
σ
∈
{
0
,
1
}
\sigma \in\{0,1\}
σ∈{0,1}
在DOA中,野狗的存活率值由式(5)給出:
s
u
r
v
i
a
l
(
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
(5)
survial(i)=\frac{fitness_{max}-fitness(i)}{fitness_{max}-fitness_{min}}\tag{5}
survial(i)=fitnessmax−fitnessminfitnessmax−fitness(i)(5)
其中,
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
t
n
e
s
s
(
i
)
fitness(i)
fitness(i)是第
i
i
i個野狗的當前適應度值。式(5)中的生存向量包含[0,1]區間內的歸一化適應度。式(6)通過策略三應用於低生存率,例如,生存率值等於或小於0.3。
x
i
⃗
(
t
+
1
)
=
x
∗
⃗
(
t
)
+
1
2
[
x
r
1
⃗
(
t
)
−
(
−
1
)
σ
∗
x
r
2
⃗
(
t
)
]
(6)
\vec{x_i}(t+1)=\vec{x_*}(t)+\frac{1}{2}[{\vec{x_{r_1}}(t)-(-1)^{\sigma}*\vec{x_{r2}}(t)]}\tag{6}
xi(t+1)=x∗(t)+21[xr1(t)−(−1)σ∗xr2(t)](6)
其中,
x
i
⃗
(
t
)
\vec{x_i}(t)
xi(t)是將被更新的生存率較低的野狗,
r
1
r_1
r1和
r
2
r_2
r2是在從1到搜尋代理(野狗種群)的最大大小的區間內生成的亂數,
r
1
≠
r
2
r_1\neq r_2
r1=r2,
x
r
1
⃗
\vec{x_{r1}}
xr1和
x
r
2
⃗
\vec{x_{r2}}
xr2是隨機選擇的第
r
1
,
r
2
r1,r2
r1,r2個野狗,
x
∗
⃗
(
t
)
\vec{x_*}(t)
x∗(t)是上一次迭代中發現的最佳野狗;
σ
\sigma
σ是演演算法隨機生成的二進位制數,
σ
∈
{
0
,
1
}
\sigma \in\{0,1\}
σ∈{0,1}。
演演算法虛擬碼
procedure DOA
(2) Initialization of parameters
(3) P = 0.5, probability of hunting or scavenger strategy
(4) Q = 0.7, probability of Strategy 1 (group attack) or Strategy 2 (persecution attack)
(5) Generate the initial population
(6) while iteration < Max Number of Iterations do
(7) if random<P then
(8) if random<Q then
(9) Strategy 1: Group Attack Procedure, Algorithm 1, equation (2).
(10) else
(11) : Strategy 2: Persecution, (3).
(12) end if
(13) else
(14) Strategy 3: Scavenger, (4).
(15) end if
(16) Update search agents that have low survival value, Algorithm 3, equation (6)
(17) Calculate x new , the fitness value of the new search agents
(18) if x new <x ∗ then
(19) x ∗ = x new
(20) end if
(21) iteration = iteration + 1
(22) end while
(23) Display x ∗ , the best optimal solution
[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, vol. 2021, Article ID 9107547, 19 pages, 2021.