1.背景
2023年,M Dehghani等人受到自然界鱼鹰狩猎行为启发,提出了鱼鹰优化算法(Osprey Optimization Algorithm, OOA)。
2.算法原理
2.1算法思想
OOA基本灵感来自鱼鹰在海上捕鱼时的策略,鱼鹰在探测到猎物的位置后对其进行捕猎,然后将其带到合适的位置吃掉,主要分为:探索和开发两个阶段。
2.2算法过程
定位和捕鱼
鱼鹰随机发现其中一条鱼的位置并攻击它,位置更新:
x
i
,
j
P
1
=
x
i
,
j
+
r
i
,
j
⋅
(
S
F
i
,
j
−
I
i
,
j
⋅
x
i
,
j
)
(1)
x_{i,j}^{P1}=x_{i,j}+r_{i,j}\cdot(SF_{i,j}-I_{i,j}\cdot x_{i,j})\tag{1}
xi,jP1=xi,j+ri,j⋅(SFi,j−Ii,j⋅xi,j)(1)
其中,SF为随机选择的鱼群(鱼鹰适应度),I为随机数。
把鱼带到合适的位置
鱼鹰在捕获一条鱼后,会将其带到一个相对安全的位置食用:
x
i
,
j
P
2
=
x
i
,
j
+
l
b
j
+
r
⋅
(
u
b
j
−
l
b
j
)
t
(2)
x_{i,j}^{P2}=x_{i,j}+\frac{lb_j+r\cdot(ub_j-lb_j)}{t}\tag{2}
xi,jP2=xi,j+tlbj+r⋅(ubj−lbj)(2)
流程图
伪代码
3.结果展示
使用测试框架,测试OOA性能 一键run.m
CEC2005-F7
探索与开发
种群空间搜索图
4.参考文献
[1] Dehghani M, Trojovský P. Osprey optimization algorithm: A new bio-inspired metaheuristic algorithm for solving engineering optimization problems[J]. Frontiers in Mechanical Engineering, 2023, 8: 1126450.