海马优化(SHO)算法(含开源MATLAB代码)

news2024/11/26 13:42:57

先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年提出的新型智能优化算法,并附MATLAB代码。

赵世杰教授等从自然界中海马的运动、捕食和繁殖行为入手,提出了一种基于群体智能的元启发式算法:海马优化器(Sea-horse Optimizer, SHO)。在23个Benchmark函数和CEC2014测试套件上对SHO的性能进行了评估,并与6种state-of-the-art算法进行了比较。最后,作者利用五个实际工程问题验证了该方法的有效性。实验结果表明,该算法是一种高性能的优化器,对约束优化问题同样具有良好的适应性。SHO的原始参考文献如下:

“Zhao S, Zhang T, Ma S, et al. Sea-horse optimizer: a novel nature-inspired meta-heuristic for global optimization problems[J]. Applied Intelligence, 2023, 53(10): 11833-11860.”

图片

图片

图片

01
灵感来源

运动、捕食和繁殖行为对海马的生活尤为重要,描述如下:

就运动行为而言,海马有时会把尾巴卷在藻类的茎(或叶子)上。由于藻茎在海洋涡旋的作用下围绕藻根呈现螺旋漂浮变化,海马此时进行螺旋运动。在其他时候,当海马倒挂在漂浮的藻类或其他物体上,随波浪随意移动时,就会发生Brownian运动。

在捕食行为方面,海马利用头部的特殊形状偷袭猎物,然后以高达90%的成功率捕获猎物。

在繁殖行为上,雄性和雌性海马随机交配,产生新的后代,这有助于从父亲和母亲那里继承某些优秀的信息。

图片

综上所述,这三种行为使海马能够更好地适应环境,更好地生存。作者提出的SHO算法主要是受上述三种行为的启发。因此,这些行为是作者通过数学建模开发这种新型优化器的动机。

02
算法设计

作者提出的SHO算法由三个关键部分组成,即运动、捕食和繁殖。为了平衡对SHO的勘探和开发,分别针对运动和捕食的社会行为设计了局部搜索和全局搜索策略。繁殖行为是在前两种行为完成后进行的。它们的数学模型将被详细地表达和讨论如下。

图片

图片

图片

图片

03
计算流程

SHO算法的计算流程稍微繁琐了一些,伪代码如下:

图片

04
实验仿真

这里对SHO算法的性能进行简单的测试。首先将SHO算法用于函数寻优,算法的MATLAB程序是严格按照它的原始参考文献进行编码的。此外,种群规模取N等于50,Benchmark函数分别采用了CEC2005测试集、CEC2013测试集、CEC2014测试集、CEC2017测试集、CEC2020优化函数测试集和CEC2022优化函数测试集。这里对仿真结果进行简要展示,就不再进一步做分析了。

首先,我们来检验一下SHO算法对全局勘探和局部开发的平衡能力。如图4所示,是SHO算法在CEC2005测试函数f8上的勘探和开发占比曲线。

图片

图4 SHO在CEC2005 f8上的勘探和开发百分占比变化曲线

其次,以CEC2005的单峰函数Schwefel's 2.22 (f2)和多峰函数Ackley (f10)为例,展示SHO算法在30维环境下的收敛效果,如图5所示。

图片

(a) f2

图片

(b) f10

图5 SHO在CEC2005两个测试函数上的收敛曲线

再次,以CEC2013测试集中的单峰函数F5为例,展示SHO在30维环境下的收敛效果,如图6所示。(注意是画的误差曲线)

图片

图6 SHO在CEC2013 F5上的误差收敛曲线

接着,以CEC2014测试集中的多模态函数F14为例,展示SHO在30维环境下的收敛效果,如图7所示。(注意是画的误差曲线)

图片

图7 SHO在CEC2014 F14上的误差收敛曲线

再然后,以CEC2017测试集中的多模态函数F4为例,展示SHO在30维环境下的收敛效果,如图8所示。(注意是画的误差曲线)

图片

图8 SHO在CEC2017 F4上的误差收敛曲线

在此之后,以CEC2020优化函数测试集中的复合函数F9为例,展示SHO在10维环境下的收敛效果,如图9所示。(注意是画的误差曲线)

图片

图9 SHO在CEC2020优化函数 F9上的误差收敛曲线

最后,以CEC2022优化函数测试集中的单峰函数F1为例,展示SHO在10维环境下的收敛效果,如图10所示。(注意是画的误差曲线)

图片

图10 SHO在CEC2022优化函数 F1上的误差收敛曲线

进一步,可将SHO算法应用于复杂工程约束优化问题,例如之前推送的两期算法应用内容:

算法应用:基于DBO算法的工程优化设计(第1期)(含MATLAB代码)

算法应用:工程优化设计(第2期)(含MATLAB代码)

这里以焊接梁设计(Welded beam design)问题为例,展示SHO算法求解效果。收敛曲线如图11所示。

图片

图11 SHO在焊接梁设计问题上的目标函数收敛曲线

05
MATLAB代码

SHO算法跑CEC2005测试集的MATLAB是开源的,大家可复制下方地址进入提取:

链接:https://pan.baidu.com/s/1JM4l1sH_2w372Gq7FqCcdA

提取码:8023

SHO算法跑CEC2013测试集:

关注公众号:启发式算法讨论

SHO算法跑CEC2014测试集:

关注公众号:启发式算法讨论

SHO算法跑CEC2017测试集:

关注公众号:启发式算法讨论

SHO算法跑CEC2020优化函数测试集:

关注公众号:启发式算法讨论

SHO算法跑CEC2022优化函数测试集:

关注公众号:启发式算法讨论

SHO算法的勘探(Exploration)和开发(Exploitation)占比分析:

关注公众号:启发式算法讨论

SHO算法的工程应用(第1期):压力容器设计、滚动轴承设计、拉伸/压缩弹簧设计、悬臂梁设计、轮系设计、三杆桁架设计。

关注公众号:启发式算法讨论

SHO算法的工程应用(第2期):焊接梁设计、多盘离合器制动器设计问题、步进圆锥滑轮问题、减速机设计问题、行星轮系设计优化问题、机器人夹持器问题。

关注公众号:启发式算法讨论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/922426.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

最小二乘法——参数估计过程推导

一 准备 1 给定数据集 D{(),(),...,()},其中假设X是一维的情况,即只有一个自变量 2 线性回归学习的目标:,使得 3 如何确定w和b?关键在于衡量f(x)和y之间距离的方法,此处使用的是‘均方误差’,其具有非常好的几何意义&a…

23款奔驰GLE450时尚型升级ACC自适应巡航系统,解放双脚缓解驾驶疲劳

有的时候你是否厌倦了不停的刹车、加油?是不是讨厌急刹车,为掌握不好车距而烦恼?如果是这样,那么就升级奔驰原厂ACC自适应式巡航控制系统,带排队自动辅助和行车距离警报功能,感受现代科技带给你的舒适安全和…

英特尔开始加码封装领域 | 百能云芯

在积极推进先进制程研发的同时,英特尔正在加大先进封装领域的投入。在这个背景下,该公司正在马来西亚槟城兴建一座全新的封装厂,以加强其在2.5D/3D封装布局领域的实力。据了解,英特尔计划到2025年前,将其最先进的3D Fo…

将公共组件提取到npm包中

多个前端项目中公共组件使用方案(npm包方式) - 简书

AMEYA360:大唐恩智浦电池管理芯片DNB1168-新能源汽车BMS系统的选择

DNB1168是一款全球独有的集成(EIS)交流阻抗谱监测功能的单电池监测芯片。该芯片通过车规级AEC-Q100和汽车行业最高功能安全等级ISO 26262:2018 ASIL-D双重认证。芯片?内部集成多种高精度电池参数监测,支持电压、温度、交流阻抗检…

error: can‘t find Rust compiler

操作系统 win11 pip install -r requirements.txt 报错如下 Using cached https://pypi.tuna.tsinghua.edu.cn/packages/56/fc/a3c13ded7b3057680c8ae95a9b6cc83e63657c38e0005c400a5d018a33a7/pyreadline3-3.4.1-py3-none-any.whl (95 kB) Building wheels for collected p…

python中两个可以美化表格数据输出结果的工具,很好用

目录标题 前言1.使用tabulate美化表格输出2.使用prettytable美化输出总结尾语 前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 在用python处理表格数据中,这其中的工作重点就是对表格类型的数据进行梳理、计算和展示,本文重点介绍展示这个方面的工作…

Redis怎么测试?

有些测试朋友来问我,redis要怎么测试?首先我们需要知道,redis是什么?它能做什么? redis是一个key-value类型的高速存储数据库。 redis常被用做:缓存、队列、发布订阅等。 所以,“redis要怎么…

基于PIC单片机篮球计分计时器

一、系统方案 本设计采用PIC单片机作为主控制器,矩阵键盘控制,比分,计时控制,24秒,液晶12864显示。 二、硬件设计 原理图如下: 三、单片机软件设计 1、首先是系统初始化 2、液晶显示程序 /*************…

2023年7月京东空气净化器行业品牌销售排行榜(京东运营数据分析)

随着科技发展,智能家具在日常生活中出现的频率越来越高,许多曾经不被关注的家电也出现在其中,包括近年来逐渐兴起的空气净化器。伴随人们对自身健康的重视度越来越高,作为能够杀灭空气污染物、有效提高空气清洁度的产品&#xff0…

【C/C++】继承的方式和优点

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

LDAP: error code 53 - unauthenticated bind (DN with no password) disallowed

这个错误提示显示Jenkins无法连接到LDAP服务器&#xff0c;原因是LDAP服务器不允许未认证的绑定&#xff08;DN与无密码&#xff09;。 但实际填写了DN

OLED透明屏报价:如何选择高性价比的产品

OLED透明屏作为一项创新的显示技术&#xff0c;其透明度和高清晰度的特点使其在各个领域得到了广泛应用。 然而&#xff0c;在购买OLED透明屏时&#xff0c;消费者往往会面临多样的报价和产品选择。本文将基于相关数据和报告&#xff0c;为您详细介绍OLED透明屏的报价因素&…

有序充电运营管理平台是基于物联网和大数据技术的充电设施管理系统-安科瑞黄安南

随着我国能源战略发展以及低碳行动的实施&#xff0c;电动汽车已逐步广泛应用&#xff0c;而电动汽车的应用非常符合当今社会对环保意识的要求&#xff0c;以及有效节省化石燃料的消耗。 由于其没有污染排放的优点以及政府部门的关注&#xff0c;电动汽车将成为以后出行的重要…

JavaWeb学习-Day10

SpringBootWeb案例 准备工作 开发流程&#xff1a; 开发接口步骤&#xff1a; 删除部门&#xff1a; 新增部门&#xff1a; 简化代码&#xff1a; limit:分页展示&#xff0c;公式&#xff1a;&#xff08;页数-1&#xff09;*页面总数&#xff0c;页面总数 目前出现的问题&am…

基于mysql5.7制作自定义的docker镜像,适用于xxl-job依赖的数据库,自动执行初始化脚本(ddl语句和dml语句)

一、背景 xxl-job-admin依赖mysql数据库&#xff0c;且需执行初始化脚本&#xff0c;包括ddl和dml语句。 具体的步骤总结如下&#xff1a; 1、新建数据库xxl_job2、创建mysql表table3、执行dml语句&#xff0c;包括新建admin用户及密码&#xff0c;创建执行器和任务。 毫无疑…

vue uniapp 同意验证码滑块验证

前言 &#xff08;vue-puzzle-vcode&#xff09; 发送验证码以及登录的时候会做验证&#xff0c;防止机刷等 效果图 一、安装依赖 npm install vue-puzzle-vcode --save二、使用步骤 1.html使用 <Vcode :show"isShow" success"onSuccess"/>2.j…

Abaqus建筑工程应用的10大特征

前后处理界面友好易用 • 界面支持中英文 • 建模和查看结果采用一致的操 作环境 • 模型树和结果树使操作更便捷 • 支持基于Python脚本的建模方式 有限元求解器性能卓越 • 单元类型全――超500种类型 单元适应各种工程对象 • 材料模型多――能够模拟金属、 混凝土、岩…

使用fastjson2的@JSONField注解解决日期格式记录

最近在做一个三方对接&#xff0c;对方的日期格式数据要求时间日期格式: yyyyMMddHHmmss或者 yyyyMMdd&#xff0c;我一下想起了fastjson2工具包&#xff0c;所以很愉快的解决了此问题。 依赖jar如下&#xff1a; <dependency><groupId>com.alibaba.fastjson2</…

全球Salesforce顾问薪资大揭秘!顾问如何升职加薪?

Salesforce顾问通过针对业务挑战提出、记录和分析需求&#xff0c;提供解决方案&#xff0c;从而帮助企业改善Salesforce的流程和效率。顾问是企业和Salesforce之间的桥梁。 Salesforce顾问的薪资一直是生态系统中的热门话题&#xff0c;备受求职者关注。本篇文章将分享提高顾…