金鹰优化算法:一种自然启发的元启发式算法【免费获取Matlab代码】


1.背景

2021年,A Mohammadi-Balani基于金鹰狩猎行为启发,提出了金鹰优化算法(Golden Eagle Optimizer, GEO)。

在这里插入图片描述

在这里插入图片描述

2.算法原理

2.1算法思想

GEO的核心灵感来源于金鹰在狩猎螺旋轨迹的不同阶段调整速度行为。在狩猎的初期阶段,它们更倾向于巡游和搜索猎物,在最后阶段则更倾向于攻击。

在这里插入图片描述

2.2算法过程

攻击行为(开发阶段)

攻击行为可以通过一个向量来模拟,该向量起始于金鹰当前的位置,并结束于金鹰记忆中猎物的位置:
A ⃗ i = X ⃗ f ∗ − X ⃗ i (1) \vec{A}_i=\vec{X}_f^*-\vec{X}_i\tag{1} A i=X fX i(1)

巡航行为(探索行为)

巡航行为则基于攻击向量计算得出,巡航向量是一个切向量,位于与攻击向量垂直的圆的切线超平面内。这个巡航向量不仅代表金鹰的位置变化,也反映了金鹰相对于猎物的线速度。此外,计算巡航向量需要首先确定切线超平面的方程,这可以通过超平面上的任意点和垂直于超平面的法向量来确定:
h 1 x 1 + h 2 x 2 + . . . + h n x n = d ⇒ ∑ j = 1 n h j x j = d (2) h_1x_1+h_2x_2+...+h_nx_n=d\Rightarrow\sum_{j=1}^nh_jx_j=d\tag{2} h1x1+h2x2+...+hnxn=dj=1nhjxj=d(2)

在这里插入图片描述

位置更新

金鹰位置更新:
Δ x i = r ⃗ 1 p a A ⃗ i ∥ A ⃗ i ∥ + r ⃗ 2 p c C ⃗ i ∥ C ⃗ i ∥ (3) \Delta x_i=\vec{r}_1p_a\frac{\vec{A}_i}{\|\vec{A}_i\|}+\vec{r}_2p_c\frac{\vec{C}_i}{\|\vec{C}_i\|}\tag{3} Δxi=r 1paA iA i+r 2pcC iC i(3)
其中,攻击系数pa,巡航系数pc调整了金鹰攻击和巡航的影响。攻击向量和巡航向量的欧几里得范数表述为:
∥ A ⃗ i ∥ = ∑ j = 1 n a j 2 , ∥ C ⃗ i ∥ = ∑ j = 1 n c j 2 (4) \|\vec{A}_i\|=\sqrt{\sum_{j = 1}^na_j^2},\quad\|\vec{C}_i\|=\sqrt{\sum_{j = 1}^nc_j^2}\tag{4} A i=j=1naj2 ,C i=j=1ncj2 (4)

探索到开发过渡
在这里插入图片描述

金鹰在狩猎飞行的初始阶段表现出更高的巡航倾向,在最后阶段表现出更高的攻击倾向。GEO使用pa和pc来从探索转向开发:
{ p a = p a 0 + t T ∣ p a T − p a 0 ∣ p c = p c 0 − t T ∣ p c T − p c 0 ∣ (5) \begin{cases}p_a=p_a^0+\frac tT|p_a^T-p_a^0|\\p_c=p_c^0-\frac tT|p_c^T-p_c^0|\end{cases}\tag{5} {pa=pa0+TtpaTpa0pc=pc0TtpcTpc0(5)

伪代码

在这里插入图片描述

3.结果展示

在这里插入图片描述
在这里插入图片描述

4.参考文献

[1] Mohammadi-Balani A, Nayeri M D, Azar A, et al. Golden eagle optimizer: A nature-inspired metaheuristic algorithm[J]. Computers & Industrial Engineering, 2021, 152: 107050.

5.代码获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小O的算法实验室

谢谢大佬的肯定!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值