一、算法简介
鮣鱼优化算法(Remora Optimization Algorithm,ROA)由Heming Jia等人于2021年提出,该算法主要模拟了鮣鱼吸附在不同体型寄主身上进而完成觅食的过程。ROA原理简单,求解高效。
二、算法原理
ROA原理参考:鮣鱼优化算法
鮣鱼优化算法分为全局勘探和局部开发两个阶段:
2.1全局勘探
当鮣鱼吸附在旗鱼时,基于旗鱼优化算法的elite思想,鲫鱼位置更新公式如下:
式中t 为当前迭代次数,Rrand 为随机选择的个体。该式主要利用最优个体引导机制,同时增加随机选择规则,保证了搜索空间的探索性。
为了确定鮣鱼是否有必要更换寄主,鮣鱼需要不断围绕寄主做出小幅度移动,这应该是鮣鱼防止寄主被攻击时波及到自身安全所做出的适应性行为,提供如下公式描述:
2.2局部开发
当鮣鱼吸附在鲸鱼时,其位置更新如下:
同时,鮣鱼在寄主旁游行,用如下数学模型描述:
这里A 表示移动步长,其值与当前鮣鱼、维度有关。为了控制寄主与鮣鱼的身材比例,使用参数C 来映射鮣鱼的位置。假设寄主体积为1,则鮣鱼的体积约为寄主体积的一小部分。文中给出C 的参考范围为[0,0.3]。注意,选择跟随鲸鱼或是跟随旗鱼这是由控制因子H 来决定的。
三、算法流程
四、多目标鲫鱼优化算法
多目标鮣鱼优化算法(Multiple Objective Remora Optimization Algorithm,MOROA)由鮣鱼优化算法的优良策略与多目标优化思想融合而成。为了验证所提的MOROA的有效性,将其在46个多目标测试函数(ZDT1、ZDT2、ZDT3、ZDT4、ZDT6、DTLZ1-DTLZ7、WFG1-WFG10、UF1-UF10、CF1-CF10、Kursawe、Poloni、Viennet2、Viennet3)以及1个工程应用(盘式制动器设计)上实验,并采用IGD、GD、HV、SP进行指标评价。
部分结果如下:
ZDT1:
ZDT3:
DTLZ5:
盘式制动器设计:
五、参考代码
源文件夹包含所有代码(46个多目标测试函数+1个工程应用+4种评价指标),可以点击main.m直接运行。