目录
- 1.摘要
- 2.灰狼算法GWO原理
- 3.改进策略
- 4.结果展示
- 5.参考文献
- 6.代码获取
1.摘要
灰狼优化算法(GWO)是一种有效的元启发式算法,但由于其搜索个体的位置更新依赖于 alpha 狼,这可能导致算法容易陷入局部最优解。为了解决这一问题,本文提出了一种改进的灰狼优化算法(AGWO),旨在增强其全局优化能力。AGWO 算法借鉴了 Aquila 优化算法(AO)的思想,使得部分狼具备飞行能力,从而扩展了搜索范围,提升了全局搜索能力,有效减少了陷入局部最优解的风险。此外,AGWO 引入了一种新的减小策略,用于平衡灰狼的开发能力和 Aquila 的探索能力,从而优化探索与开发两个阶段的协调性。
2.灰狼算法GWO原理
3.改进策略
Aquila探索方法
Aquilas通过飞翔在高空中,利用广阔的视野探索猎物的位置,并确定猎物的范围,这种行为被称为扩展探索:
X 1 → ( t + 1 ) = X b e s t → ( t ) × ( 1 − t / T ) + ( X M → ( t ) − X b e s t → ( t ) ∗ r a n d ) X M → ( t ) = 1 N ∑ i = 1 N X i → ( t ) , ∀ j = 1 , 2 , ⋯ , D i m \begin{aligned} \overrightarrow{X_1}(t+1) & =\overrightarrow{X_{best}}(t)\times(1-t/T)+\left(\overrightarrow{X_M}\left(t\right)-\overrightarrow{X_{best}}(t)^*\mathrm{rand}\right) \\ \overrightarrow{X_M}(t) & =\frac{1}{N}\sum_{i=1}^{N}\overrightarrow{X_i}(t),\forall j=1,2,\cdots,\mathrm{Dim} \end{aligned} X1(t+1)XM(t)=Xbest(t)×(1−t/T)+(XM(t)−Xbest(t)∗rand)=N1i=1∑NXi(t),∀j=1,2,⋯,Dim
Aquilas在发现猎物后将猎物包围在天空中,并在与地面相同的高度跟踪猎物:
X 2 → ( t + 1 ) = X b e s t → ( t ) × L e v y ( D ) + X R → ( t ) + ( y − x ) × r a n d \overrightarrow{X_2}\left(t+1\right)=\overrightarrow{X_{best}}(t)\times\mathrm{Levy}(D)+\overrightarrow{X_R}\left(t\right)+\left(y-x\right)\times\mathrm{rand} X2(t+1)=Xbest(t)×Levy(D)+XR(t)+(y−x)×rand
其中,参数表述为:
y = r × cos ( θ ) x = r × sin ( θ ) r = r 1 + U × D 1 θ = − ω × D 1 + θ 1 θ 1 = ( 3 × π ) / 2 \begin{aligned} & y=r\times\cos(\theta) \\ & x=r\times\sin(\theta) \\ & r=r_{1}+U\times D_{1} \\ & \theta=-\omega\times D_{1}+\theta_{1} \\ & \theta1=(3\times\pi)/2 \end{aligned} y=r×cos(θ)x=r×sin(θ)r=r1+U×D1θ=−ω×D1+θ1θ1=(3×π)/2
AGWO算法
根据Aquila探索方法,我们提出了 AGWO 算法,由于Aquilas在第二阶段的探索中已找到猎物,其轨迹会受到猎物位置的限制,类似于灰狼围绕猎物的方式:
X 2 → ( t + 1 ) = X b e s t → ( t ) × L e v y ( D ) \overrightarrow{X_2}(t+1)=\overrightarrow{X_{best}}(t)\times\mathrm{Levy}(D) X2(t+1)=Xbest(t)×Levy(D)
GWO算法参数a线性递减,这里采用非线性参数控制:
a → = c o s ( π 2 ∗ ( i I ) 4 ) \overrightarrow{a}=cos(\frac{\pi}{2}*(\frac{i}{I})^{4}) a=cos(2π∗(Ii)4)
伪代码
4.结果展示
5.参考文献
[1] Ma C, Huang H, Fan Q, et al. Grey wolf optimizer based on Aquila exploration method[J]. Expert Systems with Applications, 2022, 205: 117629.