1 算法理论基础
沙丘猫是猫科动物中的一种,它也是哺乳动物家族的一员,生活在沙质和石质沙漠的恶劣环境中,如中亚撒哈拉沙漠、非洲撒哈拉沙漠和阿拉伯半岛。沙丘猫虽然和家猫在外形上差别不断,但在捕食和生存方面有着不同的生活行为。根据沙猫的行为,将觅食过程分为两个阶段:寻找和攻击猎物。作者一种机制来实现勘探开发阶段和实现两阶段平衡的机制。
图1 沙丘猫
2 算法的数学模型
初始化种群
在
维优化问题中,沙丘猫是一个
阵列,表示问题的解,如图2所示。每个变量值
、
、
,
都是一个浮点型,每个
必须位于下边界和上边界之间。根据问题的大小创建一个候选矩阵
,(
,
,
)利用沙丘猫群创建一个候选矩阵,然后就目标函数对每个沙丘猫进行适应度评估,选择出其中最优的个体,其他的个体都朝向该个体移动。
图2 SCSO在初始阶段和防御阶段的工作机制
搜索猎物
沙丘猫的猎物搜索机制依赖于低频噪声发射,它可以感知低于
的低频, 在数学模型中, 根 据算法的工作原理, 这个值
将随着迭代过程的进行从
线性地降低为
, 以逐渐靠近猎物而不会丢失或跳过。数学模型定义如下:
式中,
模拟了沙丘猫的听觉特性;
表示控制探索和利用之间转换的主要参数;
当前迭代次数;
最大迭代次数。
沙丘猫根据最优解、自己当前位置以及灵敏度范围来更新自己的位置, 搜索到其他最好的猎物位置, 可以在新的搜索区域中找到新的局部最优, 获得的位置位于当前位置和猎物位置之间, 同时随机性保证了算法的运行成本和复杂度低。
式中,
是第t次迭代时的最优位置、
为第t次迭代时当前位置、
为灵敏度范围。
攻击猎物
沙丘猫是根据耳朵的感知能力来检测猎物的。对攻击阶段进行数学建模, 表示最佳位置与当前位置之间的距离, 如下:
式中:
为最佳位置;
为当前位置;
为随机位置。
探索和利用
探索和利用是通过自适应的
和
保证的。这些参数允许 SCSO 在两个阶段之间无缝切换。由于参数
取决于
,因此其波动范围也会减小。当参数
的值以平衡的方式分布时,
值也会很好地平衡, 因此两个阶段之间的操作机会将根据问题进行适当调整,
是区间
中的随机值,
在迭代过程中从
线性下降到
。沙猫在探索和开发阶段的位置更新情况如下:
式中,
为随机值在
时, 沙丘猫下一个位置可以在其当前位置和狩猎位置之间的任意位置。若
小于或等于
时沙丘猫被引导攻击它们的猎物,反之沙猫的任务是在全局区域寻找新 的可能解决方案。
图3 攻击猎物(利用)与寻找猎物
3 算法的流程
流程图
图4
流程图
运行结果
图5
运行结果图
图6
运行结果图
图7
运行结果图
4 参考文献
[1] Seyyedabbasi A, Kiani F. Sand Cat swarm optimization: A nature-inspired algorithm to solve global optimization problems[J]. Engineering with Computers, 2022: 1-25.
5 关键词
领取专属 10元无门槛券
私享最新 技术干货