智能算法 | Matlab实现改进黑猩猩优化算法SLWCHOA与多个基准函数对比与秩和检验

智能算法 | Matlab实现改进黑猩猩优化算法SLWCHOA与多个基准函数对比与秩和检验

目录

    • 智能算法 | Matlab实现改进黑猩猩优化算法SLWCHOA与多个基准函数对比与秩和检验
      • 预测效果
      • 基本描述
      • 程序设计
      • 参考资料

预测效果

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

基本描述

1.Matlab实现改进黑猩猩优化算法SLWCHOA与多个基准函数对比与秩和检验 (完整源码)
2.利用Sobol序列初始化种群,增加种群的随机性和多样性,为算法全局寻优奠定基础;
3.其次,引入基于凸透镜成像的反向学习策略,将其应用到当前最优个体上产生新的个体,提高算法的收敛精度和速度;
4.最后,将水波动态自适应因子添加到攻击者位置更新处,增强算法跳出局部最优的能力。
提供与原始CHOA、鲸鱼算法WOA、麻雀搜索算法SSA、灰狼算法GWO等算法的对比。
5.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。

程序设计

  • 完整程序获取方式资源出下载Matlab实现改进黑猩猩优化算法SLWCHOA与多个基准函数对比与秩和检验。
%% 清除环境变量
clear 
clc
close all

%% 参数设置
N = 30;             % 种群规模
Function_name = 'F4';       % 从F1到F23的测试函数的名称(本文中的表123)
Max_iteration = 500;         % 最大迭代次数
% 加载所选基准函数的详细信息
[lb, ub, dim, fobj] = Get_Functions_details(Function_name);
% 初始化种群位置
X = initialization(N, dim, ub, lb);

cnt_max =5;

%% 画图

% 画图迭代曲线图
figure
semilogy(SLWChoA_Curve,'r-','linewidth',1.5);
hold on
semilogy(SSA_Curve,'b--','linewidth',1.5);
hold on
semilogy(GWO_Curve,'y--','linewidth',1.5);
hold on
semilogy(PSO_Curve,'b-','linewidth',1.5);
hold on
semilogy(WOA_Curve,'k-','linewidth',1.5);
hold on
semilogy(CHOA_Curve,'m-','linewidth',1.5);
hold on
semilogy(MPA_Curve,'r-','linewidth',1.5);
hold on
title('Objective space')
xlabel('Iteration');
ylabel('Best score obtained so far');
set(gca,'fontname','Times New Roman')

axis tight
grid on
box on
legend('SLWChoA','SSA','GWO','PSO','WOA','CHOA','MPA')

% 画出所选基准函数的三维立体图形
figure;
func_plot(Function_name);
title(Function_name)
xlabel('x_1');
ylabel('x_2');
zlabel([Function_name,'( x_1 , x_2 )'])
set(gca,'fontname','Times New Roman')

% 2、画出目标函数值变化曲线图
figure;
t = 1:Max_iteration;
semilogy(t, SLWChoA_Curve, 'ro-',t, SSA_Curve, 'ko-', t, GWO_Curve, 'cs-', ...
    t, PSO_Curve, 'k*-', t, WOA_Curve, 'gh-', t, CHOA_Curve, 'b^-', t, MPA_Curve, 'r*-',  ...
    'linewidth', 1.5, 'MarkerSize', 8, 'MarkerIndices', 1:50:Max_iteration);
title(Function_name)
xlabel('迭代次数');
ylabel('适应度值');
axis fill
grid on
box on
legend('SLWChoA','SSA','GWO','PSO','WOA','CHOA','MPA');
%% 显示结果
disp(['SSA得到的最佳位置为 : ', num2str(SSA_Best_pos)]);
disp(['SSA得到的目标函数的最佳值为 : ', num2str(SSA_Best_score)]);
disp(['WOA得到的最佳位置为 : ', num2str(WOA_Best_pos)]);
disp(['WOA得到的目标函数的最佳值为 : ', num2str(WOA_Best_score)]);
disp(['GWO得到的最佳位置为 : ', num2str(GWO_Best_pos)]);
disp(['GWO得到的目标函数的最佳值为 : ', num2str(GWO_Best_score)]);
disp(['PSO得到的最佳位置为 : ', num2str(PSO_Best_pos)]);
disp(['PSO得到的目标函数的最佳值为 : ', num2str(PSO_Best_score)]);
disp(['CHOA得到的最佳位置为 : ', num2str(CHOA_Best_pos)]);
disp(['CHOA得到的目标函数的最佳值为 : ', num2str(CHOA_Best_score)]);
disp(['MPA得到的最佳位置为 : ', num2str(MPA_Best_pos)]);
disp(['MPA得到的目标函数的最佳值为 : ', num2str(MPA_Best_score)]);
disp(['SLWChoA得到的最佳位置为 : ', num2str(SLWChoA_Best_pos)]);
disp(['SLWChoA得到的目标函数的最佳值为 : ', num2str(SLWChoA_Best_score)]);

参考资料

[1] https://blog.csdn.net/kjm13182345320/article/details/129036772?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/kjm13182345320/article/details/128690229

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

mqtt连接阿里云

参考文章:https://blog.csdn.net/fang_dz999/article/details/112283742?app_version6.2.5&codeapp_1562916241&csdn_share_tail%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22112283742%22%2C%22source%22%3A%22mantouyouy…

JAVA中TreeSet集合的两种排序方法:自然排序和比较器排序

TreeSet支持2种排序:自然排序、比较器排序。 由于TreeSet对内部元素的排序的方法有2种:自然顺序排序、比较器排序。 所以,如果TreeSet采用自然顺序排序,需要内部的元素(即自定义类型)实现Comparable接口。…

前后对比效果展示的视频怎么制作?左右对比PR模板 Before and After v.2

10种表现方式,前后对比效果展示视频制作PR模板 Before and After v.2 如果您想比较两个图像或视频,这个Adobe Premiere Pro模板非常适合您。只需将两个文件拖放到媒体中,就可以开始了。 适合PS处理图片后期修图前后对比,AI绘图效果…

企业Oracle1 数据库管理

Oracle的安装 一、基础表的创建 1.1 切换到scott用户 用sys 账户 登录 解锁scott账户 alter user scott account unlock;conn scott/tiger;发现并不存在scott账户,自己创建一个? 查找资料后发现,scott用户的脚本需要自己执行一下 C:\ap…

FDM3D打印系列——宝可梦妙蛙种子

fdm打印妙蛙种子 大家好,我是阿赵。   每次打印3D模型,都有新的感觉,这次打印了个宝可梦里面的妙蛙种子,也就是俗称的蒜头王八。   先来看看成果,然后在后面再聊一下关于3D打印的一些体会。使用创想三维的Sermoon …

Linux内核pinctrl子系统驱动框架

一. 简介 本文简单了解一下Linux内核代码中, pinctrl子系统的驱动实现。 注意:本文会涉及到 Linux 驱动分层与分离、平台设备驱动等还未讲解的知识 ,所以,也不会影响后续的实验。 二. Linux内核pinctrl子系统驱动 1. probe函…

C++笔记之bool类型的隐式转换现象与应用

C++笔记之bool类型的隐式转换现象与应用 —— 《C++ Primer Plus》 文章目录 C++笔记之bool类型的隐式转换现象与应用1.C++中,有几种类型和表达式可以隐式转换为bool类型2.使用explicit关键字来声明显示转换运算符,这样只有在使用static_cast<bool>时才能将对象转换为…

蓝桥杯理历年真题 —— 数学

1. 买不到的数目 这道题目&#xff0c;考得就是一个日常数学的积累&#xff0c;如果你学过这个公式的话&#xff0c;就是一道非常简单的输出问题&#xff1b;可是如果没学过&#xff0c;就非常吃亏&#xff0c;在考场上只能暴力求解&#xff0c;或是寻找规律。这就要求我们什么…

vue中的插槽

在vue中&#xff0c;有的名词听着高大上&#xff0c;挺怪异的&#xff0c;比如插槽&#xff0c;就是slot&#xff0c;它的作用是为了解决组件之间写的内容在组件中的使用问题。 一、插槽的作用 <!DOCTYPE html> <html> <head><title>Vue中的插槽</…

nginx虚拟主机

虚拟主机指的就是一个独立的站点配置&#xff0c;是nginx默认支持的一个功能&#xff0c;它能够有自己独立的域名&#xff0c;独立的ip&#xff0c;独立的端口配置&#xff0c;能够配置完整的www服务&#xff0c;列如网站搭建&#xff0c;邮件服务器代理等等。并且nginx支持多虚…

Macos数据库管理软件:Navicat Premium for Mac 16.3.5中文版

Navicat Premium 16 for Mac是一款强大的数据库管理和开发工具&#xff0c;支持多种数据库系统&#xff0c;如MySQL、Oracle、SQL Server等。它提供了直观的用户界面和丰富的功能&#xff0c;使用户能够轻松地创建、管理和维护数据库。 软件下载&#xff1a;Navicat Premium fo…

【书生·浦语大模型实战营05】《(5)LMDeploy 大模型量化部署实践》学习笔记

《(5)LMDeploy 大模型量化部署实践》 课程文档&#xff1a;《LMDeploy 的量化和部署》 1、大模型部署背景 1.1 模型部署 定义 将训练好的模型在特定软硬件环境中启动的过程&#xff0c;使模型能够接收输入并返回预测结果为了满足性能和效率的需求&#xff0c;常常需要对模型…

web架构师编辑器内容-完成属性设置的优化

对于业务组件来说&#xff0c;其属性是有很多的&#xff0c;如果把所有属性都平铺在页面上&#xff0c;就会非常长&#xff0c;而且想要更改其中的某些属性&#xff0c;可能需要向下滚动很久才能找到&#xff0c;对于UI的交互不是很友好&#xff0c;需要对属性的不同特性进行分…

OpenCompass 大模型评测

OpenCompass 大模型评测 关于测评的三个问题为什么需要测评&#xff1f;我们需要评测什么&#xff1f;怎么测试大预言模型&#xff1f; 主流大模型评测框架OpenCompass能力框架OpenCompass评测流水线设计 随着人工智能技术的快速发展&#xff0c; 大规模预训练自然语言模型成为…

线程同步--生产者消费者模型--单例模式线程池

文章目录 一.条件变量pthread线程库提供的条件变量操作 二.生产者消费者模型生产者消费者模型的高效性基于环形队列实现生产者消费者模型中的数据容器基于生产者消费者模型实现单例线程池 一.条件变量 条件变量是线程间共享的全局变量,线程间可以通过条件变量进行同步控制条件…

Springboot JSP项目如何以war、jar方式运行

文章目录 一&#xff0c;序二&#xff0c;样例代码1&#xff0c;代码结构2&#xff0c;完整代码备份 三&#xff0c;准备工作1. pom.xml 引入组件2. application.yml 指定jsp配置 四&#xff0c;war方式运行1. 修改pom.xml文件2. mvn执行打包 五&#xff0c;jar方式运行1. 修改…

表白墙网站PHP源码,支持封装成APP

源码介绍 PHP表白墙网站源码&#xff0c;适用于校园内或校区间使用&#xff0c;同时支持封装成APP。告别使用QQ空间的表白墙。 简单安装&#xff0c;只需PHP版本5.6以上即可。 通过上传程序进行安装&#xff0c;并设置账号密码&#xff0c;登录后台后切换模板&#xff0c;适配…

HCIA——21C/S、P2P、peer的选择

学习目标&#xff1a; 计算机网络 1.掌握计算机网络的基本概念、基本原理和基本方法。 2.掌握计算机网络的体系结构和典型网络协议&#xff0c;了解典型网络设备的组成和特点&#xff0c;理解典型网络设备的工作原理。 3.能够运用计算机网络的基本概念、基本原理和基本方法进行…

Java面试题50道

文章目录 1.谈谈你对Spring的理解2.Spring的常用注解有哪些3.Spring中的bean线程安全吗4.Spring中的设计模式有哪些5.Spring事务传播行为有几种6.Spring是怎么解决循环依赖的7.SpringBoot自动配置原理8.SpringBoot配置文件类型以及加载顺序9.SpringCloud的常用组件有哪些10.说一…

Debian11下编译ADAravis和Motor模块的一条龙过程

Debian11编译EPICS ADAravis记录 一年前整理的上面文&#xff0c;这几天重新走了一遍&#xff0c;有些地方会碰到问题&#xff0c;需要补充些环节&#xff0c;motor模块以前和areaDetector一条龙编译时&#xff0c;总是有问题&#xff0c;当时就没尝试了&#xff0c;这几天尝试…
最新文章