700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 多目标优化算法:多目标跳跃蜘蛛优化算法MOJSOA(提供Matlab代码)

多目标优化算法:多目标跳跃蜘蛛优化算法MOJSOA(提供Matlab代码)

时间:2018-10-01 15:38:38

相关推荐

多目标优化算法:多目标跳跃蜘蛛优化算法MOJSOA(提供Matlab代码)

一、 算法简介

跳跃蜘蛛优化算法(Jumping Spider Optimization Algorithm,JSOA)由Hernán Peraza-Vázquez等人于年提出,其模仿跳蛛狩猎行为,该算法十分新颖,求解速度极快。

跳蛛体长多数不超过15毫米。体多短粗而稍扁平,步足粗短强壮,善蹦跳,因而得名。跳蛛科是蜘蛛目中最大的科,全球约有3000种。分布于世界各地,在热带和亚热带种类较多。跳蛛的视力在无脊椎动物中最佳,许多种类能分辨10~30厘米远的猎物或其他蜘蛛。跳蛛的体色绚丽多彩,在阳光下常呈现金属光泽。雌、雄蛛的体形和大小差别不大,但色彩和斑纹常有明显的差异。雄蛛遇雌蛛时,挥舞其艳丽的第 1足,体左右摇晃,向雌蛛求偶。如雌蛛为同种,则用足作出回答的讯号。跳蛛常在树皮下、叶下、落叶丛或墙缝等处结两端开口的薄囊状巢,在其中产卵,守候卵的孵化,并在巢内越冬或隐蔽。跳蛛在猎物上奔跑和跳跃是它们的主要狩猎方法,其蛛丝含有信息素,其在在生殖和社交中发挥作用。

二、 算法原理

跳蛛捕猎包含四种策略:

(1) 迫害

当蜘蛛不在可以通过跳跃捕捉猎物的距离内时,它会通过做一些隐身的动作来靠近它,直到它处于可以达到的距离,在那里它可以跳跃并抓住猎物。迫害策略可以用均匀加速的直线运动来表示,因此,蜘蛛沿着坐标轴移动,速度随时间线性增加(或减少),加速度恒定。

(2) 跳上猎物

跳上猎物的狩猎策略可以表示为射弹运动。

弹丸运动的方程由沿X轴的匀速运动和沿Y轴的均匀加速运动组成。

水平轴及其相对于时间的导数由以下等式表示:

同样,竖直轴及其相对于时间的导数由以下等式表示:

运动轨迹的方程如下:

(3) 寻找猎物

跳跃蜘蛛在陌生环境中进行局部搜索和全局搜索寻找猎物。如下图所示:

局部搜索:

全局搜索:

(4) 信息素

信息素是由个体产生并分泌到外部的化学物质,它们是同一物种的其他个体感知的嗅觉,它们引起行为改变。信息素可由许多动物产生的,其中包括昆虫,比如蜘蛛。在一些蜘蛛中,如黑寡妇蜘蛛,信息素在求偶交配中起着显着的作用。信息素速率的建模如下:

三、 算法流程图

四、 多目标跳跃蜘蛛优化算法MOJSOA

将跳跃蜘蛛优化算法的优良策略与多目标优化算法框架结合形成多目标跳跃蜘蛛优化算法(MOJSOA),为了验证所提的MOJSOA的有效性,将其在46个多目标测试函数(ZDT1、ZDT2、ZDT3、ZDT4、ZDT6、DTLZ1-DTLZ7、WFG1-WFG10、UF1-UF10、CF1-CF10、Kursawe、Poloni、Viennet2、Viennet3)上实验。

4.1 部分实验结果

ZDT1:

ZDT3:

DTLZ6:

WFG9:

Kursawe:

Viennet3:

4.2 源代码见评论区

MOJSOA为最新多目标优化算法,其在多目标优化领域具有一定的竞争力。MOJSOA在ZDT等多目标数据集上能够快速准确找到ParetoFront,具有求解精度高,速度快等优点。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。