多目标优化算法:多目标蛇优化算法MOSO

作品简介

一、算法简介

蛇优化算法(Snake Optimizer,SO)由Fatma A. Hashim和Abdelazim G. Hussien于2022年提出,该算模拟了蛇的觅食和繁殖行为。该算法是思路新颖,快速高效。

二、算法原理

雄性蛇和雌性蛇之间交配的发生受到某些因素的影响。蛇在春末和初夏交配,温度低,即寒冷地区,但交配过程不仅取决于温度,还取决于食物的可用性。如果温带低,食物可用;竞争对手的雄性会互相争斗,以吸引雌性的注意力。雌性有决定是否交配的决定。如果发生交配,雌性开始在巢穴或洞穴中产卵,一旦卵出现,它就会离开。

蛇优化算法受蛇交配行为的启发,如果温度低且食物充足,则会发生交配,否则蛇只会寻找食物或吃掉剩余的食物。蛇优化算法分为两个阶段即全局探索或局部开发。探索代表了环境因素,即寒冷的地方和食物,在这种情况下,蛇只在周围寻找食物。对于开发,此阶段包括许多过渡阶段,以使全局更有效率。在食物可用但温度高的情况下,蛇只会专注于吃可用的食物。最后,如果食物可用并且该区域寒冷,则会导致交配过程的发生;交配过程有案例,战斗模式或交配模式。在战斗模式中,每个雄性都会为获得最好的雌性而战,每个雌性都会尝试选择最好的雄性。在交配模式下,每对配对之间发生交配与食物数量的可用性有关。如果交配过程发生在搜索空间期间,则雌性产卵的可能性将孵化成新的蛇。SO将群体分成两个相等的群体即雄性和雌性。

2.1全局搜索(无食物)

如果Q<0.25,蛇通过选择任何随机位置来搜索食物,并更新它们的位置。

雄性蛇位置更新:

雌性蛇位置更新:

2.2局部搜索(有食物)

如果Q>0.25,且温度>0.6,则蛇只会向食物移动:

如果Q>0.25,且温度<0.6,则蛇将处于战斗模式或交配模式

2.2.1战斗模式

雄性蛇位置更新:

雌雄蛇位置更新:

2.2.2交配模式

雄性蛇位置更新:

雌雄蛇位置更新:

三、算法流程

四、数值实验

将蛇优化算法的优良策略与多目标优化思想融合,形成多目标优化算法(Multiple Objective Snake Optimizer,MOSO),为了验证所提的MOSO的有效性,将其在46个多目标测试函数(ZDT1、ZDT2、ZDT3、ZDT4、ZDT6、DTLZ1-DTLZ7、WFG1-WFG10、UF1-UF10、CF1-CF10、Kursawe、Poloni、Viennet2、Viennet3)以及1个工程应用(盘式制动器设计)上实验。

4.1函数测试

部分测试函数求解结果:

ZDT1:

ZDT2:

ZDT3:

ZDT4:

ZDT6:

DTLZ1:

DTLZ2:

DTLZ3:

DTLZ4:

DTLZ5:

DTLZ6:

DTLZ7:

4.2工程应用

盘式制动器设计

MOSO求解结果:

4.3评价指标

五、源代码

源文件夹包含MOSO所有代码(含46个多目标测试函数+1个工程应用+4种评价指标)、原始文献以及多目标测试函数的TruePF。代码可直接运行,支持二次开发。MOSO思路新颖,极其高效,在多目标函数测试集上优势显著,大力推荐。


创作时间: