一种基于混合策略的灰狼优化算法
摘要:灰狼优化算法作为一种群体智能算法,不可避免地会产生陷入局部寻优和收敛速度慢的问题。本文提出一种混合的改进策略,把动态权重和动态种群的结合起来,在提高收敛速度的同时,产生较好的解。
1.灰狼优化算法
基础灰狼算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/107716390
2. 改进灰狼优化算法
提出一种动态权重策略,基于权重的个体狼位置计算如式(6),(7)所示 。
w
1
=
∣
X
1
∣
∣
X
1
∣
+
∣
X
2
∣
+
∣
X
3
∣
,
w
2
=
∣
X
2
∣
∣
X
1
∣
+
∣
X
2
∣
+
∣
X
3
∣
,
w
3
=
∣
X
3
∣
∣
X
1
∣
+
∣
X
2
∣
+
∣
X
3
∣
(6)
w_{1}=\frac{\left|X_{1}\right|}{\left|X_{1}\right|+\left|X_{2}\right|+\left|X_{3}\right|}, w_{2}=\frac{\left|X_{2}\right|}{\left|X_{1}\right|+\left|X_{2}\right|+\left|X_{3}\right|}, w_{3}=\frac{\left|X_{3}\right|}{\left|X_{1}\right|+\left|X_{2}\right|+\left|X_{3}\right|}\tag{6}
w1=∣X1∣+∣X2∣+∣X3∣∣X1∣,w2=∣X1∣+∣X2∣+∣X3∣∣X2∣,w3=∣X1∣+∣X2∣+∣X3∣∣X3∣(6)
X ( t + 1 ) = ( w 1 X 1 + w 2 X 2 + w 3 X 3 ) / 3 (7) X(t+1)=\left(w_{1} X_{1}+w_{2} X_{2}+w_{3} X_{3}\right) / 3 \tag{7} X(t+1)=(w1X1+w2X2+w3X3)/3(7)
动态权重策略是一种对迭代过程进行改进的策略 ,能够很大程度上提高灰狼优化算法的收敛速度,但全局搜索能力并不是很好。
采用动态种群的思想,每一次迭代完成后,把适应度值较低的一半个体狼信息进行改变,可以及时地跳出局部寻优。基于动态种群的计算如式(8)~(11)所示 ,这 4 个公式并不是按顺序依次执行,而是每个公式以 1/4 的概率执行。
X
(
t
+
1
)
=
X
α
±
(
u
b
−
l
b
⋅
r
+
l
b
)
(8)
X(t+1)=X_{\alpha} \pm(u b-l b \cdot r+l b) \tag{8}
X(t+1)=Xα±(ub−lb⋅r+lb)(8)
X ( t + 1 ) = X β ± ( u b − l b ⋅ r + l b ) (9) X(t+1)=X_{\beta} \pm(u b-l b \cdot r+l b)\tag{9} X(t+1)=Xβ±(ub−lb⋅r+lb)(9)
X ( t + 1 ) = X δ ± ( u b − l b ⋅ r + l b ) (10) X(t+1)=X_{\delta} \pm(u b-l b \cdot r+l b) \tag{10} X(t+1)=Xδ±(ub−lb⋅r+lb)(10)
X ( t + 1 ) = X δ ± ( u b − l b ⋅ r + l b ) (11) X(t+1)=X_{\delta} \pm(u b-l b \cdot r+l b) \tag{11} X(t+1)=Xδ±(ub−lb⋅r+lb)(11)
本文对迭代过程进行改进,通过把动态权重和动态种群结合起来,提出一种混合策略的灰狼优化算法。
改进后的灰狼优化算法主要步骤:
(1)在狼群变量的上限和下限中随机初始化狼群和初始化算法参数。
(2)计算每个个体狼的适应度值。
(3)选择适应度排在前 3 的个体狼作为 ,
α
,
β
,
δ
\alpha,\beta,\delta
α,β,δ 狼。
(4)根据式(1),(2),(3),(6),(7)计算其它狼的位置。
(5)重新计算所有个体狼的适应度值。
3.实验结果
4.参考文献
[1]牛家彬,王辉.一种基于混合策略的灰狼优化算法[J].齐齐哈尔大学学报(自然科学版),2018,34(01):16-19+32.