智能优化算法:爬行动物搜索算法
文章目录
- 智能优化算法:爬行动物搜索算法
- 1.算法原理
- 1.1 初始化
- 1.2 包围阶段(探索)
- 1.3 狩猎阶段(开发)
- 2.实验结果
- 3.参考文献
- 4.Matlab
摘要:爬行动物搜索算法(Reptile search algorithm, RSA)是于2021年提出的一种新型智能优化算法。该算法主要模拟鳄鱼的捕食行为,来实现寻优求解,具有收敛速度快,寻优能力强的特点。
1.算法原理
1.1 初始化
与其他优化算法一样,种群在搜索空间内随机初始化:
表示第个候选解第维的位置;为候选解的数量;为给定问题的维度。是[0,1]之间的随机数,和分别表示给定问题的下界和上界。
1.2 包围阶段(探索)
这个搜索阶段取决于两个条件。高空行走策略取决于,腹部行走策略取决于。这意味着:这一条件将满足几乎一半的探索迭代次数(高空行走)和另一半的腹部行走。这是两种探索搜索方法。注意,对元素的随机比例系数进行检查,以生成更多不同的解决方案并探索不同的区域。探索阶段的位置更新方程,如式(2)所示。
其中, 是当前最优解的第 维位置; 为 (0,1) 之间的随机数; 为当前迭代次数; 为最大迭代次数; 表示第 个候选解第维的狩猎算子,计算如式(3)所示; 是一个敏感参数,控制迭代过程中包围阶段的探索精度(即高空行走),固定为0.1;缩减函数 是一个用于减少搜索区域的值,使用式(4)计算; 是 之间的随机整数, 表示第个随机候选解的第 维位置; 是候选解数 量;进化因子 是一个概率比,在整个迭代过程中,取值在2和-2之间随机递减,使用式(5)计算。
其中, 是一个很小的正数; 是 $[1, N] $的随机整数; 表示 之间的随机整数; $P_{(i, j)} j $维位置的百分比差异,计算如式(6)所示。
其中, $M\left(x_{i}\right) i$个候选解的平均位置,其计算如式(7)所示; 和 分别表示第维位置的上界和下界; 是一个敏感参数,用于控制迭代过程中狩猎合作的搜索精度(候选解之间的差异),本文将其固定为 0.1 。
1.3 狩猎阶段(开发)
RSA的开发机制利用了搜索空间,并基于两种主要的搜索策略(狩猎协调和狩猎合作)找到了最优解,模型如式(8)所示。狩猎协调操作取决于和,狩猎合作操作取决于和 。
其中表示当前第维的最佳位置;表示第个候选解第维的狩猎算子,计算如式(3)所示;表示最佳解和当前解第维位置的百分比差异,计算如式(6)所示;是一个很小的正数;缩减函数是一个用于减少搜索区域的值,使用式(4)计算。
算法流程图如下:
2.实验结果
3.参考文献
[1] Abualiga H L , Elaziz M A , Sumari P , et al. Reptile Search Algorithm (RSA): A nature-inspired meta-heuristic optimizer[J]. Expert Systems with Applications, 2021, 191(11):116158.
4.Matlab