1.背景
2018年,Juliano等人受到郊狼生活习性启发,提出了郊狼算法(Coyote Optimization Algorithm ,COA)。
2.算法原理
2.1算法思想
COA是基于郊狼群体生存行为(出生、死亡和迁移)的启发式优化算法,该算法模仿了郊狼在捕食行为中的策略和社会结构。
2.2算法过程
个体离群概率:
自然界群体数量不是固定的,存在个体离群现象。
P
e
=
0.005
⋅
N
c
2
(1)
P_e=0.005\cdot N_c^2\tag{1}
Pe=0.005⋅Nc2(1)
文化趋势:
COA存在个体最优引导(头狼),影响整个种群文化趋势:
a
l
p
h
a
p
,
t
=
{
s
o
c
c
p
,
t
∣
a
r
g
c
=
{
1
,
2
,
.
.
.
,
N
c
}
m
i
n
f
(
s
o
c
c
p
,
t
)
}
(2)
alpha^{p,t}=\{soc_{c}^{p,t}|arg_{c=\{1,2,...,N_{c}\}}minf(soc_{c}^{p,t})\}\tag{2}
alphap,t={soccp,t∣argc={1,2,...,Nc}minf(soccp,t)}(2)
c
l
u
t
j
p
,
t
=
{
O
(
N
c
+
1
)
/
2
,
j
p
,
t
,
N
c
是奇数
O
(
N
c
+
1
)
/
2
,
j
p
,
t
+
O
(
N
c
)
/
2
,
j
p
,
t
,
N
c
是偶数
(3)
\left.clut_j^{p,t}=\left\{\begin{matrix}O_{(Nc+1)/2,j}^{p,t},N_c\text{是奇数}\\O_{(Nc+1)/2,j}^{p,t}+O_{(Nc)/2,j}^{p,t},N_c\text{是偶数}\end{matrix}\right.\right.\tag{3}
clutjp,t={O(Nc+1)/2,jp,t,Nc是奇数O(Nc+1)/2,jp,t+O(Nc)/2,jp,t,Nc是偶数(3)
出生与死亡:
影响种群重要的两件事件出生与死亡,表述为:
p
u
p
j
p
,
t
=
{
x
m
1
,
j
p
,
t
,
r
a
n
d
j
<
P
s
o
r
j
=
j
1
x
m
1
,
j
p
,
t
,
r
a
n
d
j
≥
P
s
+
P
a
o
r
j
=
j
2
R
j
,
r
a
n
d
j
,
其他
(4)
pup_j^{p,t}=\begin{cases}x_{m_1,j}^{p,t},rand_j<Ps\quad or\quad j=j_1\\x_{m_1,j}^{p,t},rand_j\geq Ps+Pa\quad or\quad j=j_2\\R_j,rand_j,\text{其他}\end{cases}\tag{4}
pupjp,t=⎩
⎨
⎧xm1,jp,t,randj<Psorj=j1xm1,jp,t,randj≥Ps+Paorj=j2Rj,randj,其他(4)
文化趋势影响:
δ
1
=
a
l
p
h
a
p
,
t
−
x
c
r
1
p
,
t
,
δ
2
=
c
u
l
t
p
,
t
−
x
c
r
2
p
,
t
(5)
\delta_{1}=alpha^{p,t}-x_{cr_{1}}^{p,t},\delta_{2}=cult^{p,t}-x_{cr_{2}}^{p,t}\tag{5}
δ1=alphap,t−xcr1p,t,δ2=cultp,t−xcr2p,t(5)
种群更新:
n
e
w
_
x
i
p
,
t
=
x
i
p
,
t
+
r
1
δ
1
+
r
2
δ
2
x
i
p
,
t
+
1
=
{
n
e
w
_
x
i
p
,
t
,
f
(
n
e
w
_
x
i
p
,
t
)
<
f
(
x
i
p
,
t
)
x
i
p
,
t
,
其他
(6)
new\_x_i^{p,t}=x_i^{p,t}+r_1\delta_1+r_2\delta2\\\\x_i^{p,t+1}=\begin{cases}new\_x_i^{p,t},f(new\_x_i^{p,t})<f(x_i^{p,t})\\x_i^{p,t},\text{其他}\end{cases}\tag{6}
new_xip,t=xip,t+r1δ1+r2δ2xip,t+1={new_xip,t,f(new_xip,t)<f(xip,t)xip,t,其他(6)
伪代码:
3.结果展示
4.参考文献
[1] Pierezan J, Coelho L D S. Coyote optimization algorithm: a new metaheuristic for global optimization problems[C]//2018 IEEE congress on evolutionary computation (CEC). IEEE, 2018: 1-8.