【智能算法】花斑翠鸟优化算法(PKO)原理及实现


1.背景

2024年,A Bouaouda受到自然界中花斑翠鸟社会行为启发,提出了花斑翠鸟优化算法(Pied Kingfisher Optimizer, PKO)。

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

2.算法原理

2.1算法思想

PKO的灵感来自于自然界中斑翠鸟的狩猎行为和共生关系,其包括三个阶段:栖息和悬停,潜水策略,共生阶段

在这里插入图片描述

2.2算法过程

栖息和悬停策略

PKO的探索阶段灵感来自于花斑翠鸟的栖息和悬停行为,位置更新:
X i ( t + l ) = X i ( t ) + α ∗ T × ( X j ( t ) − X i ( t ) ) (1) X_i(\mathfrak{t}+\mathfrak{l})=X_i(\mathfrak{t})+\alpha*T\times(X_j(\mathfrak{t})-X_i(\mathfrak{t}))\tag{1} Xi(t+l)=Xi(t)+αT×(Xj(t)Xi(t))(1)
栖息时参数T表述为:
T = ( exp ⁡ ( 1 ) − exp ⁡ ( t − 1 Max_Iter ) 1 BF ) ∗ cos ⁡ ( Crest_angles ) (2) T=\left(\exp(1)-\exp\biggl(\frac{t-1}{\textit{Max\_Iter}}\biggr)^{\frac{1}{\text{BF}}}\biggr)*\cos(\textit{Crest\_angles})\right. \tag{2} T=(exp(1)exp(Max_Itert1)BF1)cos(Crest_angles)(2)
C r e s t _ a n g l e s = 2 ∗ p i ∗ r a n d (3) Crest \_angles = 2*pi* rand\tag{3} Crest_angles=2pirand(3)
悬停时参数T表述为:
T = b e a t i n g _ r a t e ∗ ( t 1 B F M a x _ I t e r 1 B F ) (4) T=beating\_rate*\left(\frac{t^{\frac{1}{BF}}}{Max\_Iter^{\frac{1}{BF}}}\right)\tag{4} T=beating_rate(Max_IterBF1tBF1)(4)
b e a t i n g _ r a t e = r a n d ∗ ( P K O _ F i t n e s s ( j ) P K O _ F i t n e s s ( i ) ) (5) beating\_rate=rand*\left(\frac{PKO\_Fitness(j)}{PKO\_Fitness(i)}\right)\tag{5} beating_rate=rand(PKO_Fitness(i)PKO_Fitness(j))(5)

潜水策略

斑翠鸟以其潜水行为而闻名,它用这种行为来捕鱼:
X i ( t + 1 ) = X i ( t ) + H A ∗ o ∗ α ∗ ( b − X b e s t ( t ) ) , i = 1 , 2 , … , N (6) \begin{gathered}X_i(\mathfrak{t}+1)=X_i(\mathfrak{t})+HA*o*\alpha*(b-X_{best}(\mathfrak{t})),\quad i=1,2,\ldots,N\end{gathered}\tag{6} Xi(t+1)=Xi(t)+HAoα(bXbest(t)),i=1,2,,N(6)
参数表述为:
H A = r a n d ∗ ( P K O _ F i t n e s s ( i ) B e s t _ F i t n e s s ) o = exp ⁡ ( − t M a x _ I t e r ) 2 b = X i ( t ) + o 2 ∗ r a n d n ∗ X b e s t ( t ) (7) \begin{aligned} &HA=rand*\left(\frac{PKO\_Fitness(i)}{Best\_Fitness}\right) \\ &o=\exp\left(\frac{-t}{Max\_Iter}\right)^{2} \\ &b=X_{i}(\mathrm{t})+o^{2}*randn*X_{best}(\mathrm{t}) \end{aligned}\tag{7} HA=rand(Best_FitnessPKO_Fitness(i))o=exp(Max_Itert)2b=Xi(t)+o2randnXbest(t)(7)

共生阶段

斑翠鸟的捕食效率会受到多种因素的影响,比如猎物的可用性、单个鸟的捕猎技巧以及该地区竞争对手或捕食者的存在。
X i ( t + 1 ) = { X m ( t ) + o ∗ α ∗ a b s ( X i ( t ) − X n ( t ) ) i f r a n d > ( 1 − P E ) X i ( t ) o t h e r w i s e (8) \left.X_i(\mathbf{t}+1)=\left\{\begin{matrix}X_m(\mathbf{t})+o*\alpha*abs(X_i(\mathbf{t})-X_n(\mathbf{t}))&if\quad rand>(1-PE)\\X_i(\mathbf{t})&otherwise\end{matrix}\right.\right.\tag{8} Xi(t+1)={Xm(t)+oαabs(Xi(t)Xn(t))Xi(t)ifrand>(1PE)otherwise(8)

伪代码

在这里插入图片描述

3.结果展示

在这里插入图片描述

4.参考文献

[1] Bouaouda A, Hashim F A, Sayouti Y, et al. Pied kingfisher optimizer: a new bio-inspired algorithm for solving numerical optimization and industrial engineering problems[J]. Neural Computing and Applications, 2024: 1-59.

5.代码获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小O的算法实验室

谢谢大佬的肯定!

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

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

打赏作者

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

抵扣说明:

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

余额充值