赞
踩
文献[1]提出了一种新的生物优化算法——鸡群优化算法(Chicken Swarm Optimization, CSO)。CSO模拟了鸡群的等级秩序和鸡群(包括公鸡、母鸡和小鸡)的行为,可以有效地提取鸡的群体智能来优化问题。
适应度值较优的公鸡比适应度值较差的公鸡优先获得食物。为简单起见,可以用适应度值较优的公鸡比适应度值较差的公鸡在更大范围内寻找食物的情况来模拟这种情况。这可以表述如下:
x
i
,
j
t
+
1
=
x
i
,
j
t
∗
(
1
+
R
a
n
d
n
(
0
,
σ
2
)
)
(1)
x_{i,j}^{t+1}=x_{i,j}^t*(1+Randn(0,\sigma^2))\tag{1}
xi,jt+1=xi,jt∗(1+Randn(0,σ2))(1)
σ
2
=
{
1
,
i
f
f
i
≤
f
k
exp
(
f
k
−
f
i
∣
f
i
∣
+
ε
)
,
o
t
h
e
r
w
i
s
e
,
k
∈
[
1
,
N
]
,
k
≠
i
(2)
\sigma^2=
至于母鸡,它们可以跟随同组的公鸡寻找食物。此外,它们还会随机偷吃其他鸡发现的好食物,尽管它们会被其他鸡压制。更强势的母鸡在争夺食物时比更顺从的母鸡更有优势。这些现象可以用数学方法表述如下:
x
i
,
j
t
+
1
=
x
i
,
j
t
+
S
1
∗
R
a
n
d
∗
(
x
r
1
,
j
t
−
x
i
,
j
t
)
+
S
2
∗
R
a
n
d
∗
(
x
r
2
,
j
t
−
x
i
,
j
t
)
(3)
x_{i,j}^{t+1}=x_{i,j}^t+S1*Rand*(x_{r1,j}^t-x_{i,j}^t)+S2*Rand*(x_{r2,j}^t-x_{i,j}^t)\tag{3}
xi,jt+1=xi,jt+S1∗Rand∗(xr1,jt−xi,jt)+S2∗Rand∗(xr2,jt−xi,jt)(3)
S
1
=
exp
(
(
f
i
−
f
r
1
)
/
(
a
b
s
(
f
i
)
+
ε
)
)
(4)
S1=\exp((f_i-f_{r1})/(abs(f_i)+\varepsilon))\tag{4}
S1=exp((fi−fr1)/(abs(fi)+ε))(4)
S
2
=
exp
(
f
r
2
−
f
i
)
(5)
S2=\exp(f_{r2}-f_i)\tag{5}
S2=exp(fr2−fi)(5)其中,
R
a
n
d
Rand
Rand是服从均匀分布的
[
0
,
1
]
[0,1]
[0,1]间的随机数;
r
1
∈
[
1
,
⋯
,
N
]
r1\in[1,\cdots,N]
r1∈[1,⋯,N]是公鸡的索引,它是第
i
i
i只母鸡的伙伴,而
r
2
∈
[
1
,
⋯
,
N
]
r2\in[1,\cdots,N]
r2∈[1,⋯,N]是鸡(公鸡或母鸡)的索引,从群体中随机选择。
小鸡在母亲周围四处觅食,数学表达式如下:
x
i
,
j
t
+
1
=
x
i
,
j
t
+
F
L
∗
(
x
m
,
j
t
−
x
i
,
j
t
)
(6)
x_{i,j}^{t+1}=x_{i,j}^t+FL*(x_{m,j}^t-x_{i,j}^t)\tag{6}
xi,jt+1=xi,jt+FL∗(xm,jt−xi,jt)(6)其中,
x
m
,
j
t
x_{m,j}^t
xm,jt表示第
i
i
i只小鸡母亲的位置(
m
∈
[
1
,
N
]
m\in[1,N]
m∈[1,N]);
F
L
FL
FL(
F
L
∈
(
0
,
2
)
FL\in(0,2)
FL∈(0,2))是一个参数,这意味着小鸡会跟随母亲觅食。考虑到个体差异,每只小鸡的
F
L
FL
FL将在0和2之间随机选择。
CSO算法的伪代码如图1所示。
对CSO算法单独实验,以常用23个测试函数中的F1、F4(单峰函数/20维)、F8、F9(多峰函数/20维)、F17、F23(固定维度多峰函数/2维、4维)为例,实验设置种群规模为30,最大迭代次数为1000,每种算法独立运算30次,结果显示如下:
函数:F1
CSO:best: 7.0619e-79,worst:7.0136e-64,mean:2.4872e-65,std:1.2803e-64
函数:F4
CSO:best: 2.1513e-13,worst:23.9429,mean:0.81001,std:4.3692
函数:F8
CSO:best: -6142.6163,worst:-4294.8362,mean:-5219.1037,std:475.6907
函数:F9
CSO:best: 0,worst:13.271,mean:0.44237,std:2.4229
函数:F17
CSO:best: 0.39789,worst:0.39811,mean:0.3979,std:4.9836e-05
函数:F23
CSO:best: -10.5351,worst:-2.4125,mean:-8.1619,std:3.2238
实验结果表明:CSO算法在优化精度和鲁棒性方面取得了不错的效果。
[1] MENG X B, LIU Y, GAO X Z, et al. A new bio-inspired algorithm: chicken swarm optimization[J]. Lecture Notes in Computer Science, 2014, 8794: 86-94.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。