【优化求解】基于非线性惯性权重的海鸥优化算法(ISOA)求解单目标优化问题附matlab代码
1 简介
针对海鸥算法( SOA) 在求解最优化问题中的不足和算法性能依赖于参数的选取等缺点,提出一种基于惯性权重的海鸥优化算法( Inertia Seagull optimization algorithm,I-SOA) ,采用非线性递减的惯性权重计算附加变量 A 的值来调整的海鸥的位置,通过莱维飞行和随机指数值增加海鸥飞行的随机性,增强算法搜索寻优的全局能力,避免算法寻优搜索陷入局部优值; 通过12 个基准测试函数将 I-SOA 与标准SOA 算法进行测试比较. 实验对比结果表明,所提出的 I-SOA 优化算法具有较快的收敛速度、较高的求解精度和全局收敛能力.
2 部分代码
%%% Designed and Developed by Dr. Gaurav Dhiman (http://dhimangaurav.com/) %%%
function[Score,Position,Convergence]=SOA(Search_Agents,Max_iterations,Lower_bound,Upper_bound,dimension,objective)
Position=zeros(1,dimension);
Score=inf;
Positions=init(Search_Agents,dimension,Upper_bound,Lower_bound);
Convergence=zeros(1,Max_iterations);
l=0;
while l<Max_iterations
for i=1:size(Positions,1)
Flag4Upper_bound=Positions(i,:)>Upper_bound;
Flag4Lower_bound=Positions(i,:)<Lower_bound;
Positions(i,:)=(Positions(i,:).*(~(Flag4Upper_bound+Flag4Lower_bound)))+Upper_bound.*Flag4Upper_bound+Lower_bound.*Flag4Lower_bound;
fitness=objective(Positions(i,:));
if fitness<Score
Score=fitness;
Position=Positions(i,:);
end
end
Fc=2-l*((2)/Max_iterations);
for i=1:size(Positions,1)
for j=1:size(Positions,2)
r1=rand();
r2=rand();
A1=2*Fc*r1-Fc;
C1=2*r2;
b=1;
ll=(Fc-1)*rand()+1;
D_alphs=Fc*Positions(i,j)+A1*((Position(j)-Positions(i,j)));
X1=D_alphs*exp(b.*ll).*cos(ll.*2*pi)+Position(j);
Positions(i,j)=X1;
end
end
l=l+1;
Convergence(l)=Score;
end
3 仿真结果
4 参考文献
[1]秦维娜,张达敏,尹德鑫,蔡朋宸.一种基于非线性惯性权重的海鸥优化算法[J/OL].小型微型计算机系统:1-8[2021-05-06].
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
【优化求解】基于非线性惯性权重的海鸥优化算法(ISOA)求解单目标优化问题附matlab代码相关推荐
- 【配电网】基于遗传算法实现三相单目标配电网重构附matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信.
- 【预测模型-ELM分类】基于鲸鱼算法优化核极限学习机实现数据分类附matlab代码
1 内容介绍 极限学习机(extreme learning machine,ELM)作为一种新兴的机器学习方法,已经成为了一个热门的研究方向. ELM 随机确定单隐含层网络的输入权值和隐含层节点偏置, ...
- 【滤波跟踪】基于Huber函数和最大相关熵的抗差滤波算法实现GNSS导航定位粗差处理附matlab代码
1 内容介绍 雷达系统中跟踪滤波器的设计通常依赖于线性高斯系统.一旦系统为非线性且受到非高斯噪声干扰时,雷达跟踪性能便出现严重恶化.为了提高目标在非线性非高斯环境下跟踪的精度,将最大相关熵扩展卡尔曼滤 ...
- 【图像检测】基于形态学实现图像目标尺寸测量系统附matlab代码
1 简介 介绍了一种基于机器视觉技术的目标外观尺寸检测系统.,通过数字图像处理技术获取柚子的纵径,横径,表面积等外观尺寸参数. 2 部分代码 coin_width=1.1000;coin_height ...
- 基于深度学习的YOLO目标检测研究-附Matlab代码
目录 ✳️ 一.引言 ✳️ 二.YOLO的基本思想 ✳️ 三.实验验证 ✳️ 四.参考文献 ✳️ 五.Matlab代码获取 ✳️ 一.引言 目标检测是计算机视觉中的一个研究热点,在很多领域都有应用需求 ...
- 【电磁】基于 Biot-Savart 定律模拟沿螺旋(螺线管或环形)电流回路的磁场附matlab代码
1 内容介绍 在我国现行通用的各电动力学教程中,二阶反对称电磁张量Fuv都是根据电磁场(?)与电磁势(?),φ的关系以及四维电磁势Aμ((?),i/Cφ)与电磁张量Fuv的定义关系导出的.本文不从抽象 ...
- 【Kelm分类】基于哈里斯鹰算法优化核极限学习机实现数据分类附matlab代码
1 简介 为了提高核极限学习机(KELM)的分类正确率,采用哈里斯鹰算法(HHO)对惩罚系数,宽度参数两个参数进行优化.首先,根据乳腺良恶性肿瘤数据库训练集并利用哈里斯鹰算法优化核极限学习机;然后,通 ...
- 【定位问题】基于CC和GCC算法实现近场声源定位TDOA问题附matlab代码
1 简介 声源定位是许多领域里的一个基本问题.声源定位技术的研究一直是个研究热点,涉及到很多技术领域,如声学,信号检测,数字信号处理等,有着广阔的应用前景.目前,该技术在仿人智能机器人上的应用还不是很 ...
- 【滤波跟踪】基于粒子、sigma和卡尔曼滤波器实现目标跟踪滤波附matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信.
- 【雷达检测】基于复杂环境下的雷达目标检测技术附Matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信.
最新文章
- 3种时间序列混合建模方法的效果对比和代码实现
- java的函数库_Dagli首页、文档和下载 - Java 机器学习函数库
- C#.NET中的base关键字在派生类里的应用
- cocos html5 一直在加载失败,项目进行中的小问题-0426-【Cocos2d-html5】初识Cocos2d-html5-一些移动端浏览器的兼容性Bug_169IT.COM...
- Membership Inference Attacks Against Recommender Systems论文解读
- python 发送email
- JavaScript 大小转化B KB MB GB等的转化
- 怎么做QQ、微信等消息气泡
- rtlab matlab版本,电力电子技术教学中电力仿真软件选择与应用.doc
- 开发悬赏平台APP心得
- SpringMVC面试题及答案
- Go 语言中 Unsafe 包的用法
- 吴恩达机器学习______学习笔记记录#八、神经网络---表述
- python are you ready_如果要检查recv_ready(),是否必须检查exit_status_ready?
- java爬取今日头条文章
- 一个性价比超高的英语口语平台
- FreeRTOS中的堆栈计算
- AS5047开发简介
- multipartfile 后端怎么接受_精华 | 前端必看,一文教你读懂芯片后端报告!
- 最新web/springboot打造通用的短信验证码微服务(详细)
热门文章
- 解决AttributeError: module ‘monitors‘ has no attribute ‘Presenter‘
- arduino控制JQ8900-16P语音模块
- 公牛车充拆解 | 拓尔微A+C双口快充方案IM2403+TMI3451
- 润增长69.6%,新东方的中年危机过去了吗?
- P2756 飞行员配对方案问题 day11
- oracle等待事件查询dava,ORACLE 等待事件latch: session allocation
- Notification 不起作用
- @JsonIgnoreProperties注解不起作用的问题解决
- 【Spring Boot】IDEA工程热部署
- lef文件的深入研究