【智能算法】火鹰优化算法(FHO)原理及实现

目录


1.背景

2023年,M Azizi等人受到自然界火鹰狩猎行为启发,提出了火鹰优化算法(Fire Hawk Optimizer, FHO)。

2.算法原理

2.1算法思想

FHO使用特殊的控制和捕获猎物机制 ,它们会捡起燃烧的树枝,将其投掷到其他未燃烧的区域,以点燃小火。这些小火会吓跑猎物,迫使它们匆忙逃离,从而让火鹰更容易捕捉到它们。

2.2算法过程

计算火鹰和猎物之间距离

确定了每只火鹰最近的猎物,从而区分了这些火鹰的有效领土:
D k 1 = ( x 2 − x 1 ) 2 + ( y 2 − y 1 ) 2 , { l = 1 , 2 , ... , n . k = 1 , 2 , ... , m . (1) \mathrm D_{\mathrm k}^1=\sqrt{\left(\mathrm x_2-\mathrm x_1\right)^2+\left(\mathrm y_2-\mathrm y_1\right)^2},\left\{\begin{array}{l}l=1,2,\dots,n.\\k=1,2,\dots,m.\end{array}\right.\tag{1} Dk1=(x2−x1)2+(y2−y1)2 ,{l=1,2,...,n.k=1,2,...,m.(1)

适应度较好的火鹰在其特定领地的搜索空间中选择离其最近的最佳猎物,其他火鹰在搜索空间中完成最近的猎物,这说明适应度较好火鹰能完成比较适应度差火鹰更成功的狩猎。

收集燃烧的树枝

火鹰从火场收集燃烧的树枝,以便在选定的区域放火迫使猎物匆忙逃跑。同时,一些火鹰渴望使用其他火鹰领地的燃烧树枝:
F H 1 n e w = F H 1 + ( r 1 × G B − r 2 × F H N e a r ) , l = 1 , 2 , ... , n (2) \mathrm{FH}_1^{\mathrm{new}}=\mathrm{FH}_1+\begin{pmatrix}\mathrm{r}_1\times\mathrm{GB}-\mathrm{r}2\times\mathrm{FH}{\mathrm{Near}}\end{pmatrix}, l=1,2,\ldots,n\tag{2} FH1new=FH1+(r1×GB−r2×FHNear),l=1,2,...,n(2)

其中,GB是最优火鹰位置,FHNear是搜索空间中其他火鹰位置。

位置更新

当火鹰扔下一根燃烧的树枝时,猎物会采取策略(躲避,逃跑或者错误地向火鹰跑去),此时火鹰位置更新为:
P R q n e w = P R q + ( r 3 × F H l − r 4 × S P l ) , { l = 1 , 2 , ... , n . q = 1 , 2 , ... , r . (3) \mathrm P\mathrm R_\mathrm q^{\mathrm new}=\mathrm P\mathrm R_\mathrm q+\bigl(\mathrm r_3\times\mathrm F\mathrm H_\mathrm l-\mathrm r_4\times\mathrm S\mathrm P_\mathrm l\bigr),\left\{\begin{array}{c}l=1,2,\dots,n.\\q=1,2,\dots,r.\end{array}\right.\tag{3} PRqnew=PRq+(r3×FHl−r4×SPl),{l=1,2,...,n.q=1,2,...,r.(3)

猎物可能会向其他火鹰的领地移动,而猎物可能会在附近的伏击中靠近火鹰:
P R q n e w = P R q + ( r 5 × F H A l t e r − r 6 × S P ) , { l = 1 , 2 , ... , n . q = 1 , 2 , ... , r . (4) \mathrm P\mathrm R_\mathrm q^{\mathrm new}=\mathrm P\mathrm R_\mathrm q+\bigl(\mathrm r_5\times\mathrm F\mathrm H_{\mathrm Alter}-\mathrm r_6\times\mathrm S\mathrm P\bigr),\left\{\begin{array}{c}l=1,2,\dots,n.\\q=1,2,\dots,r.\end{array}\right.\tag{4} PRqnew=PRq+(r5×FHAlter−r6×SP),{l=1,2,...,n.q=1,2,...,r.(4)

基于自然界中的安全场所是大多数动物为了在灾害发生时保持安全而聚集的地方,参数SP,SP1表述为:
S P 1 = ∑ q = 1 r P R q r , { q = 1 , 2 , ... , r . l = 1 , 2 , ... , n . (5) \mathrm{SP}{1}=\frac{\sum{\mathrm{q=1}}^{\mathrm{r}}\mathrm{PR}{\mathrm{q}}}{\mathrm{r}},\left\{\begin{array}{l}q=1,2,\dots,r.\\l=1,2,\dots,n.\end{array}\right.\tag{5} SP1=r∑q=1rPRq,{q=1,2,...,r.l=1,2,...,n.(5)
S P = ∑ k = 1 m P R k m , k = 1 , 2 , ... , m . (6) \mathrm{SP=\frac{\sum
{k=1}^mPR_k}{m},k=1,2,\ldots,m.}\tag{6} SP=m∑k=1mPRk,k=1,2,...,m.(6)

伪代码

流程图

3.结果展示

4.参考文献

1\] Azizi M, Talatahari S, Gandomi A H. Fire Hawk Optimizer: A novel metaheuristic algorithm\[J\]. Artificial Intelligence Review, 2023, 56(1): 287-363.

相关推荐
lingxiao1688828 分钟前
双目立体视觉
图像处理·算法·机器学习·计算机视觉
JNU freshman33 分钟前
和为target问题汇总
算法
2401_8590490837 分钟前
MSPM0--Timer(一口一口喂版)
arm开发·单片机·mcu·算法
寂空_42 分钟前
【算法笔记】ACM数论基础模板
c++·笔记·算法
ggabb1 小时前
当九九乘法口诀“出海”英国:文化碰撞下的数学教育变革
算法
爱coding的橙子1 小时前
每日算法刷题计划Day7 5.15:leetcode滑动窗口4道题,用时1h
算法·leetcode
wuqingshun3141591 小时前
蓝桥杯 10. 全球变暖
c++·算法·职场和发展·蓝桥杯
手握风云-1 小时前
二叉树深搜:在算法森林中寻找路径
算法
xu_wenming2 小时前
华为Watch的ECG功能技术分析
人工智能·嵌入式硬件·算法
朱剑君2 小时前
第六天——贪心算法——字符串分隔
算法