基于莱维飞行和随机游动策略的灰狼算法
文章目录
- 基于莱维飞行和随机游动策略的灰狼算法
- 1.灰狼优化算法
- 2. 改进灰狼优化算法
- 2.1 分段可调节衰减因子
- 2.2 莱维飞行和随机游动策略
- 3.实验结果
- 4.参考文献
- 5.Matlab代码
- 6.python代码
摘要: 在标准灰狼优化算法寻优的中后期,由于衰减因子减小,灰狼群体中的个体均向领导层灰狼所在区域靠近,导致算法的全局寻优能力差,降低了寻优精度。针对该问题,提出了一种改进灰狼优化算法(IGWO )。该算法首先分析了衰减因子对灰狼算法的影响,提出了一种分段可调节衰减因子,用于平衡算法的勘探能力与开发能力。其可以根据不同优化问题来寻找适当的参数,实现更高精度的寻优,并且保证了在寻优过程的中后期,算法也具有一定的全局搜索能力。数值仿真实验表明,提高勘探比例有利于提高算法的收敛精度。同时,在寻优过程中,根据概率选择对领导层灰狼分别进行莱维飞行操作或随机游动操作。利用莱维飞行短距离搜索与偶尔较长距离行走相间的搜索特点,提高算法的全局寻优能力;利用随机游动相对集中的搜索特性,提高局部寻优能力。
1.灰狼优化算法
2. 改进灰狼优化算法
2.1 分段可调节衰减因子
在GWO中,系数向量 A决定了灰狼的行为,当 |A|>1时,灰狼进行搜索猎物(全局寻优);当 |A|<1 时,灰狼进行捕捉猎物(局部寻优)。在优化前期,灰狼个体应该广泛分布于整个搜索空间;在优化后期,利用收集到的信息,灰狼个体收敛于全局最优值。衰减因子 a 影响系数向量 A,进而影响了GWO的勘探能力和开发能力之间的平衡。当 a>1 时(勘探阶段),灰狼会进行搜索运动和捕猎运动,并且根据式(3)可计算得出:灰狼以1-1/a 的概率进行搜索运动,以1/a 的概率进行捕猎运动。当 a<1 时(开发阶段),灰狼只进行捕猎运动。在标准GWO中,勘探阶段与开发阶段的迭代次数比例为50% :50%。但是针对不同的优化问题,固定的迭代次数比例很难适应搜索实际情况。因此,本文提出了一种分段可调节衰减因子:
其中,φ 为勘探阶段所占的迭代比例。当 φ =0.5时,本文改进的衰减因子与标准 GWO算法衰减因子一致。
系数向量C表示灰狼所在位置对猎物影响的随机权重,影响了灰狼群体靠近猎物的难易程度,从而影响算法的全局勘探能力。本文借鉴文献提出的修改控制参数 C策略来平衡全局勘探能力和局部开发能力,其具体表达式如下:
其中,
2.2 莱维飞行和随机游动策略
为了提高寻优精度,本文利用莱维飞行和随机游动策略对灰狼算法的寻优过程进行优化。使用莱维飞行策略进行全局探测,使灰狼个体广泛分布于搜索空间中,以提高全局寻优能力;使用随机游动策略,使灰狼在相对集中的区域内寻优,以提高局部寻优的能力。莱维飞行 是服从莱维分布的随机搜索方法,是一种短距离的搜索与偶尔较长距离的行走相间的行走方式,从而促使莱维飞行具有良好的全局搜索能力。
莱维飞行的位置更新公式为:
其中, 表示第代的第 个解;⊕表示点对点乘法; 表示控制步长的权重,, 为当前的最优解;表示服从莱维分布的路径.
随机游动利用混合变异和交叉的方式产生新解,可以增强种群的多样性,一定程度上可以避免区域极值的吸引,进而提高算法的局部搜索能力,将其应用在智能优化算法中能够加快找到最优解的速度。随机游动的位置更新公式为:
其中, 和为第代中的两个随机解; 是缩放因子,。
虽然莱维飞行和随机游动可以实现位置的更新,但是无法保证得到的新解的适应度优于原解,因此使用贪心机制来比较原解和新解的适应度,以保留适应度更好的解。
对灰狼位置进行莱维飞行或随机游动虽然可优化算法的寻优过程,但是如果对每个迭代周期的每只灰狼都进行位置调整,将增加大量的时间消耗。因此,本文只对处于领导层的灰狼进行位置调整,而领导层的灰狼将指导其他灰狼进行位置更新,从而产生间接的影响。
算法伪代码如下:
3.实验结果
4.参考文献
[1]李阳,李维刚,赵云涛,刘翱.基于莱维飞行和随机游动策略的灰狼算法[J].计算机科学,2020,47(08):291-296.
5.Matlab代码
6.python代码