1.背景
2024年,ESM El-Kenawy受到灰雁自然行为启发,提出了灰雁优化算法(Greylag Goose Optimization, GGO)。
2.算法原理
2.1算法思想
GGO灵感来源于灰雁。灰雁是优秀的飞行者,在季节性迁徙中,它们成群飞行,一次飞行可以覆盖数千公里。飞行时,一群雁会形成“V”字形配置。通过这种方式,前面的雁可以最小化后面雁的空气阻力,这使得整个群体飞行的距离比单独飞行时增加约70%。
2.2算法过程
探索阶段
灰雁探索者将在其当前位置附近寻找有前景的新位置进行探索:
X
(
t
+
1
)
=
X
∗
(
t
)
−
A
.
∣
C
.
X
∗
(
t
)
−
X
(
t
)
∣
(1)
\mathbf{X}(t+1)=\mathbf{X}^*(t)-\mathbf{A}.|\mathbf{C}.\mathbf{X}^*(t)-\mathbf{X}(t)|\tag{1}
X(t+1)=X∗(t)−A.∣C.X∗(t)−X(t)∣(1)
基于选择三个随机搜索个体(游动群),命名为XPaddle1、XPaddle2和XPaddle3,以迫使个体不受一个领导者位置的影响,从而获得更大的探索范围。当前搜索代理的位置将根据 |𝐀| ≥ 1 进行以下更新:
X
(
t
+
1
)
=
w
1
∗
X
P
a
d
d
l
e
1
+
z
∗
w
2
∗
(
X
P
a
d
d
l
e
2
−
X
P
a
d
d
l
e
3
)
+
(
1
−
z
)
∗
w
3
∗
(
X
−
X
P
a
d
d
l
e
1
)
(2)
\mathbf{X}(t+1)=w_{1}*\mathbf{X}_{Paddle1}+\mathbf{z}*w_{2}*(\mathbf{X}_{Paddle2}-\mathbf{X}_{Paddle3})+\\(1-\mathbf{z})*w_{3}*(\mathbf{X}-\mathbf{X}_{Paddle1})\tag{2}
X(t+1)=w1∗XPaddle1+z∗w2∗(XPaddle2−XPaddle3)+(1−z)∗w3∗(X−XPaddle1)(2)
其中,参数w1,w2,w3为[0,2]随机数,参数z呈指数递减:
z
=
1
−
(
t
t
m
a
x
)
2
(3)
\mathbf{z}=1-\left(\frac{t}{t_{max}}\right)^2\tag{3}
z=1−(tmaxt)2(3)
当r3≥0.5时,第二次更新:
X
(
t
+
1
)
=
w
4
∗
∣
X
∗
(
t
)
−
X
(
t
)
∣
.
e
b
t
.
c
o
s
(
2
π
l
)
+
[
2
w
1
(
r
4
+
r
5
)
]
∗
X
∗
(
t
)
(4)
\mathbf{X}(t+1)=w_{4}*|\mathbf{X}^{*}(t)-\mathbf{X}(t)|.e^{bt}.cos(2\pi l)+[2w_{1}(r_{4}+r_{5})]*\mathbf{X}^{*}(t)\tag{4}
X(t+1)=w4∗∣X∗(t)−X(t)∣.ebt.cos(2πl)+[2w1(r4+r5)]∗X∗(t)(4)
开发阶段
GGO向最佳解决方案前进,其设置三个解决方案XSentry1,XSentry2,XSentry3指导其他个体XNonSentry改变其位置,朝向猎物位置:
X
1
=
X
S
e
n
t
r
y
1
−
A
1
.
∣
C
1
.
X
S
e
n
t
r
y
1
−
X
∣
X
2
=
X
S
e
n
t
r
y
2
−
A
2
.
∣
C
1
.
X
S
e
n
t
r
y
2
−
X
∣
X
3
=
X
S
e
n
t
r
y
3
−
A
3
.
∣
C
1
.
X
S
e
n
t
r
y
3
−
X
∣
(5)
\begin{gathered} \mathbf{X}_{1} =\mathbf{X}_{Sentry1}-\mathbf{A}_{1}.|\mathbf{C}_{1}.\mathbf{X}_{Sentry1}-\mathbf{X}| \\ \mathbf{X}_{2} =\mathbf{X}_{Sentry2}-\mathbf{A}_{2}.|\mathbf{C}_{1}.\mathbf{X}_{Sentry2}-\mathbf{X}| \\ \mathbf{X}_{3} =\mathbf{X}_{Sentry3}-\mathbf{A}_{3}.|\mathbf{C}_{1}.\mathbf{X}_{Sentry3}-\mathbf{X}| \end{gathered}\tag{5}
X1=XSentry1−A1.∣C1.XSentry1−X∣X2=XSentry2−A2.∣C1.XSentry2−X∣X3=XSentry3−A3.∣C1.XSentry3−X∣(5)
GGO在最佳解决方案周围搜索:
X
(
t
+
1
)
=
X
(
t
)
+
D
(
1
+
z
)
∗
w
∗
(
X
−
X
F
l
o
c
k
1
)
(6)
\mathbf{X}(t+1)=\mathbf{X}(t)+\mathbf{D}(1+\mathbf{z})*w*(\mathbf{X}-\mathbf{X}_{Flock1})\tag{6}
X(t+1)=X(t)+D(1+z)∗w∗(X−XFlock1)(6)
伪代码
3.结果展示
4.参考文献
[1] El-Kenawy E S M, Khodadadi N, Mirjalili S, et al. Greylag goose optimization: nature-inspired optimization algorithm[J]. Expert Systems with Applications, 2024, 238: 122147.