目录
- 1.背景
- 2.算法原理
- 2.1算法思想
- 2.2算法过程
- 3.结果展示
- 4.参考文献
1.背景
2022年,N Chopra等人受到金豺狩猎行为启发,提出了金豺优化算法(Golden Jackal Optimization, GJO)。
2.算法原理
2.1算法思想
GJO 模拟金豺协同狩猎行为,该算法主要包含探索阶段和进攻阶段。
2.2算法过程
探索阶段
金豺会根据自身情况来进行狩猎,雌金豺会跟随雄金豺,在搜索区域等待和寻找其他猎物:
Y
1
(
t
)
=
Y
M
(
t
)
−
E
.
∣
Y
M
(
t
)
−
r
l
.
Pr
e
y
(
t
)
∣
Y
2
(
t
)
=
Y
F
M
(
t
)
−
E
.
∣
Y
F
M
(
t
)
−
r
l
.
Pr
e
y
(
t
)
∣
(1)
Y_{1}(t)=Y_{M}(t)-E.|Y_{M}(t)-rl.\Pr ey(t)|\\Y_{2}(t)=Y_{FM}(t)-E.|Y_{FM}(t)-rl.\Pr ey(t)|\tag{1}
Y1(t)=YM(t)−E.∣YM(t)−rl.Prey(t)∣Y2(t)=YFM(t)−E.∣YFM(t)−rl.Prey(t)∣(1)
其中,E为猎物的逃避能量,rl表示一个基于莱维分布的任意向量,Prey(t)表示猎物位置向量,YM和YFM分别表示雄金豺和雌金豺的位置。
金豺种群依据猎物的逃避能量E,决定是否对猎物发起进攻。在迭代过程中,猎物的逃避能量E呈下降趋势,当|E|>=1时,即猎物有足够能量躲避捕猎,金豺种群转向探索阶段寻找其他猎物;当|E|<1时,金豺种群转向进攻阶段对猎物发起进攻。
E
=
E
1
∗
E
0
(2)
E=E_1*E_0\tag{2}
E=E1∗E0(2)
E1表示递减的猎物能量,E0表示猎物能量的原始状态:
E
0
=
2
∗
r
−
1
E
1
=
c
1
∗
(
1
−
(
t
/
T
)
)
(3)
E_0=2*r-1\\ E_1=c_1*(1-(t/T))\tag{3}
E0=2∗r−1E1=c1∗(1−(t/T))(3)
金豺位置更新:
Y
(
t
+
1
)
=
Y
1
(
t
)
+
Y
2
(
t
)
2
(4)
Y(t+1)=\frac{Y_1(t)+Y_2(t)}2\tag{4}
Y(t+1)=2Y1(t)+Y2(t)(4)
进攻阶段
当猎物受到金豺的攻击时,其逃避能量会迅速下降,这时金豺会迅速靠近猎物并对猎物发起进攻:
Y
1
(
t
)
=
Y
M
(
t
)
−
E
.
∣
r
l
.
Y
M
(
t
)
−
Pr
e
y
(
t
)
∣
Y
2
(
t
)
=
Y
F
M
(
t
)
−
E
.
∣
r
l
.
Y
F
M
(
t
)
−
Pr
e
y
(
t
)
∣
(5)
Y_{1}(t)=Y_{M}(t)-E.|rl.Y_{M}(\mathrm{t})-\Pr ey(t)|\\Y_{2}(t)=Y_{FM}(t)-E.|rl.Y_{FM}(\mathrm{t})-\Pr ey(t)|\tag{5}
Y1(t)=YM(t)−E.∣rl.YM(t)−Prey(t)∣Y2(t)=YFM(t)−E.∣rl.YFM(t)−Prey(t)∣(5)
伪代码
3.结果展示
使用测试框架,测试GJO性能 一键run.m
- 【智能算法】省时方便,智能算法统计指标——一键运行~
CEC2017-F19
4.参考文献
[1] Chopra N, Ansari M M. Golden jackal optimization: A novel nature-inspired optimizer for engineering applications[J]. Expert Systems with Applications, 2022, 198: 116924.