一、理论基础
1、基本灰狼优化算法
请参考这里。
2、改进灰狼优化算法
(1)Tent混沌映射
Tent映射的遍历具有均匀性、随机性,能够使算法容易逃离局部最优解,从而可以维持种群的多样性,同时提高全局搜索能力。因此,本文将利用Tent映射初始化种群。
本文提出的Tent映射表达式:
x
(
t
+
1
)
=
{
x
(
t
)
0.6
,
x
(
t
)
<
0.6
1
−
x
(
t
)
0.4
,
x
(
t
)
≥
0.6
(1)
x(t+1)=\begin{dcases}\frac {x(t)}{0.6},\quad\quad\,\,\,\, x(t)<0.6\\\frac{1-x(t)}{0.4},\quad x(t)≥0.6\end{dcases}\tag{1}
x(t+1)=⎩⎪⎨⎪⎧0.6x(t),x(t)<0.60.41−x(t),x(t)≥0.6(1)其中,
x
(
t
)
∈
[
0
,
1
]
x(t)∈[0,1]
x(t)∈[0,1]。
(2)非线性控制参数策略
本文提出一种新的非线性控制参数为
a
1
(
t
)
=
a
i
n
i
−
(
a
i
n
i
−
a
f
i
n
)
×
(
t
T
m
a
x
)
2
(2)
a_1(t)=a_{ini}-(a_{ini}-a_{fin})×(\frac{t}{T_{max}})^2\tag{2}
a1(t)=aini−(aini−afin)×(Tmaxt)2(2)其中,
a
i
n
i
a_{ini}
aini和
a
f
i
n
a_{fin}
afin分别为控制参数的初始值及终值;
t
t
t为当前迭代次数;
T
m
a
x
T_{max}
Tmax为最大迭代次数。
为验证本文提出控制参数
a
a
a的有效性,将与线性控制参数以及文献[2]、[3]提出非线性控制参数进行对比。文献[3]和[4]的非线性控制参数的公式为
a
2
(
t
)
=
a
i
n
i
−
a
i
n
i
×
t
T
m
a
x
(3)
a_2(t)=a_{ini}-a_{ini}×\frac{t}{T_{max}}\tag{3}
a2(t)=aini−aini×Tmaxt(3)
a
3
(
t
)
=
a
i
n
i
−
(
a
i
n
i
−
a
f
i
n
)
×
t
a
n
(
1
ε
×
t
T
m
a
x
)
×
π
(4)
a_3(t)=a_{ini}-(a_{ini}-a_{fin})×tan(\frac{1}{\varepsilon}×\frac{t}{T_{max}})×\pi\tag{4}
a3(t)=aini−(aini−afin)×tan(ε1×Tmaxt)×π(4)
a
4
(
t
)
=
a
i
n
i
−
a
i
n
i
×
1
e
−
1
×
(
e
t
T
m
a
x
−
1
)
(5)
a_4(t)=a_{ini}-a_{ini}×\frac{1}{e-1}×(e^{\frac{t}{T_{max}}}-1)\tag{5}
a4(t)=aini−aini×e−11×(eTmaxt−1)(5)式(4)中
ε
\varepsilon
ε为非线性调节系数。
对4种控制参数进行仿真见图2,从图2可看出,本文提出的控制参数的非线性能更有效地平衡局部搜索和全局搜索能力。
收敛因子的公式为
A
i
=
2
a
i
r
−
a
i
,
i
=
1
,
2
,
3
,
4
A_i=2a_ir-a_i,i=1,2,3,4
Ai=2air−ai,i=1,2,3,4,分别代表不同的收敛因子。
4种收敛因子
A
A
A的动态变化见图3。
从图3可看出本文提出的收敛因子 A A A前期递减速度慢,能够增加全局搜索能力,避免算法陷入局部最优;后期收敛因子递减速度快,从而能够改善局部搜索,加快算法寻优速度。
(2)PSO思想
在PSO算法中,利用粒子自身经历过的最佳位置信息以及群体最佳位置信息来更新当前粒子的位置。因此,本文结合PSO算法思想将灰狼个体经历过的最优位置信息引入位置更新公式,使其能够保留自身最优位置信息。 新的位置更新为 X i ( t + 1 ) = c 1 r 3 ( w 1 X 1 ( t ) + w 2 X 2 ( t ) X_i(t+1)=c_1r_3(w_1X_1(t)+w_2X_2(t) Xi(t+1)=c1r3(w1X1(t)+w2X2(t) + c 2 r 4 ( X i b e s t − X i ( t ) ) (6) \quad\quad\quad\quad\quad+c_2r_4(X_{ibest}-X_i(t))\tag{6} +c2r4(Xibest−Xi(t))(6)其中, c 1 c_1 c1为社会学习因子, c 2 c_2 c2为认知学习因子,其分别表示个体所经历的最优值和群体最优值对算法搜索能力的影响。根据相关文献,本文选择 c 1 = c 2 = 0.6 c_1=c_2=0.6 c1=c2=0.6。 r 3 r_3 r3、 r 4 r_4 r4为 [ 0 , 1 ] [0,1] [0,1]之间的随机数; X i b e s t X_{ibest} Xibest表示灰狼个体所经历的最优位置; w 1 , w 2 , w 3 w_1,w_2,w_3 w1,w2,w3为惯性权重系数,通过调节 α , β , δ \alpha,\beta,\delta α,β,δ狼对更新个体影响的权重比例,能够动态权衡算法的全局及局部搜索能力,其具体公式如下 w 1 = ∣ X 1 ∣ ∣ X 1 + X 2 + X 3 ∣ (7) w_1=\frac{|X_1|}{|X_1+X_2+X_3|}\tag{7} w1=∣X1+X2+X3∣∣X1∣(7) w 2 = ∣ X 2 ∣ ∣ X 1 + X 2 + X 3 ∣ (8) w_2=\frac{|X_2|}{|X_1+X_2+X_3|}\tag{8} w2=∣X1+X2+X3∣∣X2∣(8) w 3 = ∣ X 3 ∣ ∣ X 1 + X 2 + X 3 ∣ (9) w_3=\frac{|X_3|}{|X_1+X_2+X_3|}\tag{9} w3=∣X1+X2+X3∣∣X3∣(9)
二、PSO_GWO算法伪代码
本文提出改进之后的灰狼算法 (grey wolf optimization algorithm based on particle swarm optimization,简称PSO_GWO) 的具体实现伪代码:
三、实验数据及仿真分析
为验证改进之后的灰狼算法的有效性,本文从已有文献中选择9个基准测试函数做仿真实验,并与基本粒子群算法(PSO)、基本灰狼算法(GWO)、 改进的灰狼算法(the improved grey wolf optimization algorithm,IGWO)[2]的优化结果进行比较并分析本文算法的性能,其具体的基准测试函数见表1。
以
F
1
,
F
2
,
F
3
F_1,F_2,F_3
F1,F2,F3为例,运行30次,每次迭代500次,取平均值,给出算法对比的进化结果图,如图5~7所示。
四、参考文献
[1] 滕志军, 吕金玲, 郭力文, 等. 一种基于Tent映射的混合灰狼优化的改进算法[J]. 哈尔滨工业大学学报, 2018, 50(11): 46-55.
[2] 胡小平, 曹敬. 改进灰狼优化算法在WSN节点部署中的应用[J]. 传感技术学报, 2018, 31(5): 753-758.
[3] 龙文, 伍铁斌. 协调探索和开发能力的改进灰狼优化算法[J]. 控制与决策, 2017, 32(10): 1749-1757.
[4] 左剑, 张程稳, 肖逸, 等. 基于灰狼优化算法的多机电力系统稳定器参数最优设计[J]. 电网技术, 2017(9): 2987-2995.