Harris hawks optimization
HEIDARI A A, MIRJALILI S, FARIS H, et al. Harris hawks optimization: algorithm and applications[J]. Future Generation Computer Systems, 2019
HHO是一种基于种群、无梯度的优化技术。因此,只要有适当的公式,它可以应用于任何优化问题。
算法过程
HHO划分为探索阶段和**开发阶段。
整体的算法过程如下图所示:
-
探索阶段
在这一部分中,描述HHO的探索机制。如果我们考虑Harris鹰的性质,它们可以用强大的眼睛追踪和探测猎物,但偶尔猎物不容易看到。因此,Harris鹰等待、观察并监视地点,以便在几个小时后发现猎物。在HHO中,Harris鹰是候选解,每一步中的最佳候选解被视为目标猎物或接近最优解。在HHO中,哈里斯鹰随机栖息在某些位置,并根据两种策略等待发现猎物。
两种等待策略:考虑每个栖息策略的均等机会Q。它们基于与自己接近的其他家庭成员和兔子的位置。
- 其中是下一次迭代t中鹰的位置向量
- 和是当前应鹰的位置和兔子的位置向量
- r1、r2、r3、r4和q是(0,1)之间的随机数,在每次迭代中更新
- LB和UB是变量的上下界
- 是种群中随机挑选的一只鹰
- 是种群中鹰的平均位置
第一条规则:
根据随机位置和其他鹰的位置生成下一个时间的位置
第二条规则:
我们用迄今为止最好的位置和减去的平均位置,加上基于变量上下界的随机部分。
其中r3是一个比例系数,目的是当r4的值接近于1或者出现相似的分布时增加随机性。在此规则中,我们向LB添加了一个随机缩放的移动长度。然后,我们考虑了组件的随机缩放系数r3,以提供更多的多样化趋势,并探索特征空间的不同区域。
鹰的平均位置通过以下公式获得:
其中X_(t)表示迭代t中每个鹰的位置,N表示鹰的总数??梢酝ü煌姆绞交竦闷骄恢茫饫锸褂昧俗罴虻サ墓嬖?/p>
-
探索阶段到开发阶段的转变
HHO算法可以根据猎物逃逸的能量,从探索转移到开发,然后在不同的开发行为之间改变。在逃跑行为中,猎物的能量显著降低。为了模拟这一事实,猎物的能量被模拟为:
E0表示其能量的初始状态。在HHO中,E0在每次迭代时在区间(-1,1)内随机变化。当E0的值从0减少到-1时,兔子的身体在衰退,而当E0的值从0增加到1时,则意味着兔子在增强。在迭代过程中,动态逃逸能量E呈下降趋势。当逃逸能量| E |≥1,哈里斯鹰搜索不同的区域以进一步探索猎物的位置,此时对应全局搜索阶段;,当| E |<1时,里斯鹰对相邻的解进行局部探索,故而对应局部开发阶段。
-
开发阶段
在这一阶段,哈里斯的老鹰通过攻击前一阶段检测到的目标猎物进行突袭。然而,猎物往往试图逃离危险的环境。因此,在实际情况中会出现不同的追逐风格。根据猎物的逃逸行为和Harris鹰的追逐策略,HHO中提出了四种可能的策略来模拟攻击阶段。
- 捕猎的条件
猎物总是试图逃离危险的环境。假设r逃脱的概率,是猎物成功逃脱(r<0.5)或未成功逃脱(r≥0.5)。无论猎物做什么,鹰都会进行硬围攻或软围攻来捕捉猎物。
哈里斯鹰将根据猎物的剩余能量从不同方向轻柔或强硬地攻击猎物。在实际情况下,哈里斯鹰会越来越接近预期的猎物,并通过突袭而增加了合作杀死猎物的机会。一段时间后,猎物将损失越来越多的能量,这时哈里斯鹰便加强围攻过程,从而捕获猎物。在这个过程中,逃逸能量E 的作用不言而喻。原文假设|E |≥0.5时,进行轻柔围攻;当|E |<0.5时,进行强硬围攻。
-
软包围
当r ≥0.5且|E |≥0.5时,兔子仍然有足够的能量,兔子会进行随机跳跃,并且可以轻易逃脱,哈里斯鹰通过包围,徘徊的方式,耗尽兔子的能量再进行攻击:
是兔子的位置向量和迭代t中的当前位置之间的差
J=2(1? r5),r5是(0,1)内的随机数表示兔子在整个逃逸过程中的随机跳跃强度。J值在每次迭代中随机变化,以模拟兔子运动的性质。
-
强包围
当r ≥0.5且|E |<0.5时,兔子能量不足,鹰对兔子进行压迫式围攻。
X(t+1)=X_{\text {rabbit }}(t)-E|\Delta X(t)|
软围攻渐进式俯冲 当r <0.5且|E |≥0.5时
然后,他们将这一动作的可能结果与前一次俯冲进行比较,以判断这是否是一次好的俯冲。如果效果不好(当他们看到猎物表现出更具欺骗性的动作时),他们也会在接近兔子时开始进行不规则、突然和快速的俯冲。
其中u、v 为[0,1]内均匀分布的随机数, β=1.5。
总而言之:
其中D 为空间维度,S 是一个1×D 的随机向量,即S=randn(1,D);LF (D)为Levy飞行函数。
- 渐进俯冲的强包围 当r<0.5且|E |<0.5
这一步在猎物一侧的情况与软包围中的情况类似,但这一次,鹰试图缩短它们与逃跑猎物的平均位置距离。