一种基于交叉选择的柯西反向鲸鱼优化算法QOWOA附matlab代码

news2024/12/23 9:59:39

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测 雷达通信  无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机  电力系统

⛄ 内容介绍

针对传统鲸鱼优化算法求解精度不高,容易陷入局部最优的缺点,提出了一种基于交叉选择策略的柯西反向鲸鱼优化算法.在鲸鱼优化算法中引入柯西反向学习技术以加快算法的收敛速度;对鲸鱼优化算法中的种群个体进行交叉和选择操作以提高算法的求解精度.对引入不同改进策略的鲸鱼优化算法在Matlab软件中进行仿真测试,结果表明:与基本鲸鱼优化算法相比,所提算法的收敛速度和寻优精度有显著提升,在大规模传感器优化管理方面具有十分重要的工程应用价值.

⛄ 部分代码

clear all 

clc

close all

SearchAgents_no=30; % Number of search agents 种群数量

Function_name='F6'; % Name of the test function that can be from F1 to F23 (Table 1,2,3 in the paper) 设定适应度函数

Max_iteration=500; % Maximum numbef of iterations 设定最大迭代次数

% Load details of the selected benchmark function

[lb,ub,dim,fobj]=Get_Functions_details(Function_name);  %设定边界以及优化函数

%原始鲸鱼算法

[Best_score,Best_pos,WOA_cg_curve]=WOA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj); %开始优化

%改进鲸鱼算法

[Best_score1,Best_pos1,WOA_cg_curve1]=TIWOA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj); %开始优化

figure('Position',[269   240   660   290])

%Draw search space

subplot(1,2,1);

func_plot(Function_name);

title('Parameter space')

xlabel('x_1');

ylabel('x_2');

zlabel([Function_name,'( x_1 , x_2 )'])

%Draw objective space

subplot(1,2,2);

semilogy(WOA_cg_curve,'Color','g','linewidth',1.5)

hold on

semilogy(WOA_cg_curve1,'Color','r','linewidth',1.5);

title('Objective space')

xlabel('Iteration');

ylabel('Best score obtained so far');

legend('WOA','TIWOA');

axis tight

grid on

box on

display(['The best solution obtained by WOA is : ', num2str(Best_pos)]);

display(['The best optimal value of the objective funciton found by WOA is : ', num2str(Best_score)]);

        

display(['The best solution obtained by TIWOA is : ', num2str(Best_pos1)]);

display(['The best optimal value of the objective funciton found byTIWOA is : ', num2str(Best_score1)]);

⛄ 运行结果

⛄ 参考文献

[1]冯文涛, 邓兵. 一种基于交叉选择的柯西反向鲸鱼优化算法[J]. 兵器装备工程学报, 2020, 41(8):7.

⛄ Matlab代码关注

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

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

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

相关文章

研究 | CT图像迭代重建算法研究进展

上次讲到我实现了一下代数迭代重建(ART),到周六开会的时候才大概了解了我的研究方向应该是统计迭代重建,一下子就把我给搞懵了。按照书上的说法,统计迭代法是在发射型CT(SPECT和PET)中应用广泛&…

WMS系统4.0,仓库管理的20年历史变局你知道吗?

20年之前,中国的仓储物流技术还处于起步阶段,很多时候都是从国外企业的经验中摸索出来的,而高端的技术,依然需要国外企业来完成。 20年过去了,中国庞大的应用场景、庞大的产业、庞大的物料、庞大的商业活动推动着中国的…

如何用Zabbix监控温湿度?Zabbix对接modbus tcp设备实操

背景: 1、公司机房没有专用的温度监控设备,以往是通过snmp功能get服务器的CPU或是主板温度,根据偏差值算出机房的大致温度(温度计值与服务器的差值),可最近研发部门经常在服务器跑高负载任务,导致计算出的环境温度极度…

实验7 数据库编程

第1关 定义一个名为PROC_COUNT的无参数存储过程 任务描述 定义一个名为PROC_COUNT的无参数存储过程,查询工程名称中含有“厂”字的工程数量,并调用该存储过程。 相关知识 1、工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)…

计算机网络-网络层:IP协议

目录 一、IP协议格式 二、IP地址管理 1.动态地址分配&组建私网 1.1 动态地址分配DHCP 1.2 NAT技术组建私网 2. 早期网络划分方式 3. 当前网络划分方式CIDR方案 4. 特殊IP地址 5. 公网与私网(外网与内网) 6. 路由选择 网络层:负…

JavaScript Date对象中的常用方法有哪些?

JavaScript中的日期对象用来处理日期和时间。例如,秒杀活动中日期的实时显示、时钟效果、在线日历等。下面将对日期对象进行详细讲解。 日期对象的使用 JavaScript中的日期对象需要使用new Date()实例化对象才能使用,Date()是日期对象的构造函数。在创…

服务访问质量(QoS)介绍与技术 一

个人简介:云计算网络运维专业人员,了解运维知识,掌握TCP/IP协议,每天分享网络运维知识与技能。个人爱好: 编程,打篮球,计算机知识个人名言:海不辞水,故能成其大;山不辞石…

【LeetCode每日一题】——1290.二进制链表转整数

文章目录一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【解题思路】七【题目提示】八【时间频度】九【代码实现】十【提交结果】一【题目类别】 链表 二【题目难度】 简单 三【题目编号】 1290.二进制链表转整数 四【题目描述】 给你一个单…

Python时间模块之time模块

在项目开发中做功能经常会用到关于时间的操作。比如会员过期的定时任务,一些代码的延迟执行。今天介绍时间模块中的time模块。 目录 1.表示时间的方式: 2.格式化时间中字符的含义: 3.函数转换关系 4.函数介绍及应用 time() localtime() …

10Gb每秒!SM4的单核“心”!海泰携手海量数据安全“闪”护

引言 密码技术是保护网络与信息系统安全的核心技术,已经广泛应用到金融、能源、通信、交通、水利等各行各业,为国家安全和经济发展发挥重要作用。商用密码应用安全性评估(简称密评),是指在釆用商用密码技术、产品和服务…

[附源码]计算机毕业设计汽车租赁管理系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【numpy简介、入门、数组创建】

🤵‍♂️ 个人主页老虎也淘气 个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏…

基于jsp+mysql+ssm学生网上请假系统-计算机毕业设计

项目介绍 随着高校招生规模的逐步扩大和教学方式的改革,在校学生人数将不断增加。另一方面,我国高等学校基层学生考核工作的内容杂,管理细,要求高,头绪多,传统的手工档案式管理办法已基本不适应新形势的要…

[附源码]JAVA毕业设计社区管理与服务(系统+LW)

[附源码]JAVA毕业设计社区管理与服务(系统LW) 项目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术&a…

XX集团BIM项目解决方案

目 录 一、BIM发展现状 二、集团BIM建设总体规划(建议) 1、BIM实施目标 2、BIM实施的范围 3、BIM实施原则 4、集团BIM项目组织架构 4.1职能分配 4.2建模组织形式 4.3人员匹配建议 5、集团BIM应用功能架构 5.1 BIM平台对集团管理层面的价值 5…

原来Python自带了数据库,用起来真方便

Python作为数据科学主流语言,被广泛用于数据读存、处理、分析、建模,可以说是无所不能。 数据一般存放在本地文件或者数据库里,之前介绍过如何使用python读取本地文件,也对# PyMySQL、cx_Oracle等数据库连接库做过简单的使用分享…

乾元通多卡聚合通信设备应急指挥车视频图传解决方案

行业现状 1) 不稳定:单一通信链路受运营商网络覆盖影响,不同区域信号强度不一样,无法实现。 2) 网速慢:受基站信号质量及拥塞影响,单路网速较差,高清视频监控等由于网络带宽不够,只能以低画质…

基于jsp+ssm的新生入学报道系统-计算机毕业设计

项目介绍 众多高校为了响应国家的号召,很多管理办法都落实到科学管理,通过计算机来实现对学校的具体管理办法当中,不仅仅促进了学校里计算机系统管理的发展,同时一定程度上加大了对学校的管理力度,数据量的不断增加&a…

Java常问面试题概要答案

文章目录1.JDK、JRE、JVM的区别2.hashcode()与equals()之间的关系3.String、StringBuffer、StringBuilder的区别4.Java泛型5.ArrayList和LinkedList区别6.ConcurrentHashMap7. B树和B树8.负载均衡常见策略1.JDK、JRE、JVM的区别 JDK:java标准开发包,包含…

【安全测试】渗透测试神器BurpSuite环境搭建

工欲善其事,必先利其器,要想更好的进行安全测试,就需要有一个趁手的工具,BurpSuite就是一个不错的选择,是广大安全测试工程师的必备工具,今天就带着大家把这个工具给装上,开启大家的安全测试之旅…