1.背景
2023年,G Hu等人受到成吉思汗鲨鱼(GKS)捕食和生存行为启发,提出了成吉思汗鲨鱼优化算法(Genghis Khan Shark Optimizer, GKSO)。
2.算法原理
2.1算法思想
GKSO的灵感来自于成吉思汗鲨鱼的捕食和生存行为,通过模拟成吉思汗鲨鱼的四种不同活动,包括狩猎、移动、觅食和自我保护机制。
2.2算法过程
狩猎阶段
GKS向各个方向巡逻,直到种群找到目标所在的最优位置,一旦它们的猎物成为目标,它们会等待最佳时机对目标发动全面攻击。通过搜索空间的上界和下界来计算一个新的随机位置作为“最优狩猎位置”,位置更新:
X
i
j
(
t
+
1
)
=
X
i
j
(
t
)
+
l
b
j
+
r
1
∗
(
u
b
j
−
l
b
j
)
i
t
(1)
X_i^j(t+1)=X_i^j(t)+\frac{lb_j+r_1*(ub_j-lb_j)}{it}\tag{1}
Xij(t+1)=Xij(t)+itlbj+r1∗(ubj−lbj)(1)
其中,it代表当前迭代次数。
向最佳捕猎位置移动
为了捕获更高质量的猎物,GKS经常依靠其敏感的嗅觉不断接近最佳猎物:
X
^
i
j
(
t
+
1
)
=
s
∗
(
X
b
e
s
t
j
(
t
)
−
X
i
j
(
t
)
)
(2)
\widehat{\boldsymbol{X}}_i^j(t+1)=\mathrm{s}*\big(\boldsymbol{X}_{\mathrm{best}}^j(t)-\boldsymbol{X}_i^j(t)\big)\tag{2}
X
ij(t+1)=s∗(Xbestj(t)−Xij(t))(2)
其中,s表示GKS向最佳猎物移动时的嗅觉强度,这取决于猎物发出的气味浓度:
s
=
m
I
r
(3)
\mathrm{s}=mI^r\tag{3}
s=mIr(3)
其中,r是区间[0,1]随机数,它反映了搜索代理对猎物气味的吸收。对于两种极端情况:当r = 0时,这意味着猎物发出的气味对GKS来说是完全无法察觉的,搜索模式将重新进入探索阶段。当r = 1时,该气味被GKS完全吸收,因此算法很容易达到最优值(可能陷入局部最优)。
GKSO保留前两个最优个体位置,并在这两个最优位置的基础上更新其他个体的位置,使它们尽可能接近最优位置(精英领导:
X
i
j
(
t
+
1
)
=
X
^
i
j
(
t
+
1
)
+
X
i
−
1
j
(
t
)
2
(4)
X_{i}^{j}(t+1)=\frac{\hat{X}_{i}^{j}(t+1)+X_{i-1}^{j}(t)}{2}\tag{4}
Xij(t+1)=2X^ij(t+1)+Xi−1j(t)(4)
抛物线觅食
GKS以猎物为参照点,迅速游向猎物整个过程是抛物线状:
X
i
j
(
t
+
1
)
=
X
b
e
s
t
j
(
t
)
+
r
2
∗
(
X
b
e
s
t
j
(
t
)
−
X
i
j
(
t
)
)
+
λ
∗
p
2
∗
(
X
b
e
s
t
j
(
t
)
−
X
i
j
(
t
)
)
(5)
X_{\mathrm{i}}^{j}(t+1)=X_{\mathrm{best}}^{j}(t)+r_{2}*(X_{\mathrm{best}}^{j}(t)-X_{\mathrm{i}}^{j}(t))+\lambda*p^{2}*(X_{\mathrm{best}}^{j}(t)-X_{\mathrm{i}}^{j}(t))\tag{5}
Xij(t+1)=Xbestj(t)+r2∗(Xbestj(t)−Xij(t))+λ∗p2∗(Xbestj(t)−Xij(t))(5)
其中,r2是[0,1]随机数。λ是1或- 1的随机数,p是控制GKS活动期间移动步长的参数,p是一个带扰动的非线性收敛因子。当p值较大时,GKSO主要侧重于全局探索;随着p值的减小,局部开发将逐渐占主导地位:
p
=
2
∗
{
1
−
(
t
T
)
1
4
+
∣
ω
(
t
+
1
)
∣
∗
[
(
t
T
)
1
4
−
(
t
T
)
3
]
}
(6)
p=2*\bigg\{1-\bigg(\frac{t}{T}\bigg)^{\frac{1}{4}}+|\omega(t+1)|*\bigg[\bigg(\frac{t}{T}\bigg)^{\frac{1}{4}}-\bigg(\frac{t}{T}\bigg)^3\bigg] \bigg\}\tag{6}
p=2∗{1−(Tt)41+∣ω(t+1)∣∗[(Tt)41−(Tt)3]}(6)
|ω(t+1)|为t+1时刻的权重系数:
∣
ω
(
t
+
1
)
∣
=
1
−
2
ω
4
(
t
)
(7)
|\omega(t+1)|=1-2\omega^4(t)\tag{7}
∣ω(t+1)∣=1−2ω4(t)(7)
自我保护机制
在觅食过程中,GKS经常会遇到威胁自身安全或与猎物竞争的捕食者。为了摆脱这些天敌,GKS也具有与墨鱼类似的变色行为机制,当GKS受到惊吓时,尾巴和身体颜色变浅,从而吓退捕食者,迅速逃跑:
{
X
i
j
(
t
+
1
)
=
X
i
j
(
t
)
+
k
1
(
a
1
X
b
e
s
t
j
(
t
)
−
a
2
X
k
j
(
t
)
)
+
k
2
ρ
(
a
3
(
X
2
i
j
(
t
)
−
X
1
i
j
(
t
)
)
)
if
a
1
<
0.5
+
a
2
(
X
a
1
(
t
)
−
X
a
2
(
t
)
)
/
2
,
X
i
j
(
t
+
1
)
=
X
b
e
s
t
j
(
t
)
+
k
1
(
a
1
X
b
e
s
t
j
(
t
)
−
a
2
X
k
j
(
t
)
)
+
k
2
ρ
(
a
3
(
X
2
i
j
(
t
)
−
X
1
i
j
(
t
)
)
)
otherwise
+
a
2
(
X
a
1
(
t
)
−
X
a
2
(
t
)
)
/
2
,
(8)
\left.\left\{\begin{array}{l}\boldsymbol{X}_i^j(t+1)=\boldsymbol{X}_i^j(t)+k_1(a_1\boldsymbol{X}_{best}^j(t)-a_2\boldsymbol{X}_k^j(t))+k_2\rho(a_3(\boldsymbol{X}2_i^j(t)-\boldsymbol{X}1_i^j(t)))\text{if}a_1<0.5\\+a_2(\boldsymbol{X}_{a1}(t)-\boldsymbol{X}_{a2}(t))/2,\\\boldsymbol{X}_i^j(t+1)=\boldsymbol{X}_{best}^j(t)+k_1(a_1\boldsymbol{X}_{best}^j(t)-a_2\boldsymbol{X}_k^j(t))+k_2\rho(a_3(\boldsymbol{X}2_i^j(t)-\boldsymbol{X}1_i^j(t)))\text{otherwise}\\+a_2(\boldsymbol{X}_{a1}(t)-\boldsymbol{X}_{a2}(t))/2,\end{array}\right.\right.\tag{8}
⎩
⎨
⎧Xij(t+1)=Xij(t)+k1(a1Xbestj(t)−a2Xkj(t))+k2ρ(a3(X2ij(t)−X1ij(t)))ifa1<0.5+a2(Xa1(t)−Xa2(t))/2,Xij(t+1)=Xbestj(t)+k1(a1Xbestj(t)−a2Xkj(t))+k2ρ(a3(X2ij(t)−X1ij(t)))otherwise+a2(Xa1(t)−Xa2(t))/2,(8)
其中k1是介于[- 1,1]之间的均匀分布随机数,k2是均值为0,标准差为1的正态分布随机数。A1, a2, a3为三个随机数:
{
a
1
=
l
1
∗
2
∗
r
a
n
d
+
(
1
−
l
1
)
a
2
=
l
1
∗
r
a
n
d
+
(
1
−
l
1
)
a
3
=
l
1
∗
r
a
n
d
+
(
1
−
l
1
)
(9)
\left\{\begin{array}{c}a_1={l_1}*2*rand+(1-l_1)\\a_2={l_1}*rand+(1-l_1)\\a_3={l_1}*rand+(1-l_1)\end{array}\right.\tag{9}
⎩
⎨
⎧a1=l1∗2∗rand+(1−l1)a2=l1∗rand+(1−l1)a3=l1∗rand+(1−l1)(9)
β、α和ρ参数表述为:
ρ
=
α
∗
(
2
∗
r
a
n
d
−
1
)
,
α
=
∣
β
∗
s
i
n
(
3
π
2
+
s
i
n
(
3
π
2
β
)
)
∣
,
β
=
β
m
i
n
+
(
β
m
a
x
−
β
m
i
n
)
∗
(
1
−
(
i
t
T
)
3
)
2
.
(10)
\begin{aligned} &\rho=\alpha^{*}(2^{*}rand-1), \\ &\alpha=\left|\beta^{*}\mathrm{sin}({\frac{3\pi}{2}}+\mathrm{sin}({\frac{3\pi}{2}}\beta))\right|, \\ &\beta=\beta_{\mathrm{min}}+(\beta_{\mathrm{max}}-\beta_{\mathrm{min}})^{*}(1-(\frac{it}{T})^{3})^{2}. \end{aligned}\tag{10}
ρ=α∗(2∗rand−1),α=
β∗sin(23π+sin(23πβ))
,β=βmin+(βmax−βmin)∗(1−(Tit)3)2.(10)
取βmin为0.2,βmax为1.2。在两个t时刻随机生成的解X1(t)和X2j(t):
X
1
i
j
(
t
)
=
l
b
j
+
r
a
n
d
∗
(
u
b
j
−
l
b
j
)
X
2
i
j
(
t
)
=
l
b
j
+
r
a
n
d
∗
(
u
b
j
−
l
b
j
)
(11)
X1_{i}^{j}(t)=lb_{j}+rand*\big(ub_{j}-lb_{j}\big)\\X2_{i}^{j}(t)=lb_{j}+rand*\big(ub_{j}-lb_{j}\big)\tag{11}
X1ij(t)=lbj+rand∗(ubj−lbj)X2ij(t)=lbj+rand∗(ubj−lbj)(11)
计算解Xk:
X
k
j
(
t
)
=
l
2
∗
(
X
p
j
(
t
)
−
X
r
j
(
t
)
)
+
X
r
j
(
t
)
(12)
\boldsymbol{X}_k^j(t)=l_2*\Big(\boldsymbol{X}_p^j(t)-\boldsymbol{X}_r^j(t)\Big)+\boldsymbol{X}_r^j(t)\tag{12}
Xkj(t)=l2∗(Xpj(t)−Xrj(t))+Xrj(t)(12)
流程图
伪代码
3.结果展示
4.参考文献
[1] Hu G, Guo Y, Wei G, et al. Genghis Khan shark optimizer: a novel nature-inspired algorithm for engineering optimization[J]. Advanced Engineering Informatics, 2023, 58: 102210.