【黑猩猩算法】基于加权反对技术和贪婪搜索进化黑猩猩优化算法求解多模态工程问题附matlab代码

news2024/12/19 14:01:02

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

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

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

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

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

⛄ 内容介绍

黑猩猩算法主要模拟了黑猩猩对于猎物的攻击、驱赶、拦截和追逐等4种社会行为[16]。黑猩猩优化算法的基本描述为:假定黑猩猩种群数目为NXi表示第i只黑猩猩所处的位置群体的最优解为Xatacter、次优解Xbarier、第3优解Xchaser、第4优解Xdrive。黑猩猩算法的具体数学描述如下:1)驱赶、追逐猎物。在黑猩猩狩猎的过程中任何个体均会依据猎物的位置而改变自身的位置。其位置更新公式如下:

式中:D表示黑猩猩与猎物之间的距离Xprey和Xchimp分别表示猎物的位置和黑猩猩的位置A、m、C为系数向量m=Chaotic_value是一个基于某种混沌映射计算出来的混沌向量r1和r2为[01]之间的随机数t和tmax分别表示当前迭代次数和最大迭代次数f为收敛因子在迭代过程中从2线性递减到0。

2)攻击方式。黑猩猩通过对猎物位置的探索最后将其包围。通常狩猎过程由攻击者进行而驱赶者、拦截者、追逐者仅参与狩猎过程4种黑猩猩分别更新自己的位置其他黑猩猩根据四者的位置进行更新。

⛄ 部分代码

function [] = drawComparisonPlot(function_name, curve_list, curve_name_list, curve_color_list)

figure('Position',[500 500 660 290])

% Draw search space

subplot(1,2,1);

func_plot(num2str(cell2mat(function_name)));

title('Parameter space')

xlabel('x_1');

ylabel('x_2');

zlabel([num2str(cell2mat(function_name)),'( x_1 , x_2 )'])

%Draw objective space

subplot(1,2,2);

for loop = 1:size(curve_list,1)

    semilogy(curve_list(:,loop),'Color',curve_color_list(1,loop));

    hold on;

end

title('Objective space')

xlabel('Iteration');

ylabel('Best score obtained so far');

axis tight

grid on

box on

legend(curve_name_list)  % chnage this according to your required names

end

⛄ 运行结果

⛄ 参考文献

[1]程国森, and 崔东文. "黑猩猩优化算法-极限学习机模型在富水性分级判定中的应用." 人民黄河 43.7(2021):6.

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

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

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

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

相关文章

终于拿到了阿里P8架构师分享的JCF和JUC源码分析与实现笔记java岗

时代的一粒尘,落在每个人身上,就是一座山”。 时代更迭变换,我们好像都知道今天与昨天不同,又好像肉眼看不出哪里不同。 但其实它就正在以各种各样的方式体现在每一个普通人身上。 疫情爆发三个月的时间,截止2020年…

~外中断~

目录 一、接口芯片和端口 二、外中断信息 三、PC机键盘的处理过程 一、接口芯片和端口 外设的输出不直接送入内存和CPU,而是送入相关的接口芯片的端口中;CPU向外设的输出也不是直接送入外设,而是先送入端口,再由相关的芯片送到…

C语言程序设计--火车订票系统

任务要求: 创建一个火车票管理系统,功能包括: (1)录入班次信息(信息用文件保存),可不定时地增加班次数据 (2)浏览班次信息,可显示出所有班次当前状总(如果当前系统时间超过了某班 次的发车时间,则…

js中map()的使用详解

引入: 有网友有如下困惑: map是数组的方法,有一个参数,参数是一个函数,函数中有3个参数 参数1:item必须。当前元素的值 参数2:index,可选。当前元素在数组中的索引值 参数3&#xff…

CentOS 7迁移Anolis OS 7 ——筑梦之路

迁移注意事项 Anolis OS 7生态上和依赖管理上保持跟CentOS7.x兼容,一键式迁移脚本centos2anolis.py,实现CentOS7.x到Anolis OS 7的平滑迁移。 使用迁移脚本前需要注意如下事项: 迁移涉及到软件包的重新安装,是不可逆过程&#…

BBR/CUBIC 共存时的 buffer 挤兑

BBR 与 CUBIC 共存时的收敛图,理论情况: 理论上 BBR 不会挤占 buffer,inflight 保持为恒定的 BDP。 但 BBR 的 inflight 做不到恒定,多流共存时,依然会 “主动占用 buffer” 而相互挤兑带宽,而该行为是必须…

java - 序列化

钱应该怎么花 前几天看到一个新闻,一女子打拼了5年攒了30万买房钱,最后因为意外被一场突如其来的大火烧了,经过多家银行,长达4小时的鉴定,挽回了15万损失。 还看到一个新闻,老人攒5000元钱遭虫蛀烂&#…

「Linux」400行纯C语言代码带你「手撕线程池」

线程池的基本概念 不管线程池是什么东西!但是我们必须知道线程池被搞出来的目的就是:提高程序执行效率而设计出来的; 了解了线程池的目的后:我们就可以开始理解线程池: 首先回答一个问题:为什么会有线程…

python文件的读取

python文件的读取1.文件的读取1.read() 读取整个文件2.readline() 每次读取一行文件3. readlines() 读取文件的所有行2.文件的写入1.以"x"方式打开文件2.以"a"方式打开文件3.以"w"方式打开文件3.文件的删除4.Excel表数据的读取1.直接读取2.通过p…

SQL Server2019配置always on高可用图文步骤

准备工作 首先需要准备好Windows Server上的故障转移群集,步骤可以参考上一篇。 https://blog.csdn.net/u012869793/article/details/127560270?spm1001.2014.3001.5501 然后服务器上安装好SqlServer,我这里安装的是2019。 正文 勾选启用Always ON可…

牛客竞赛每日俩题 - Day7

目录 经典01背包问题 二叉树遍历与构造(考研重点) 经典01背包问题 求正数数组的最小不可组成和_百度笔试题_牛客网 参考大佬题解: 动态规划:01背包问题(无物品价值),思想相同,题目最终要求有些变化 min为…

【机器人定位引导中的机器视觉技术】

文章目录手眼标定原理手眼标定流程定位引导1、单相机抓取定位引导2、单相机纠偏定位引导3、上下相机对位引导随着工业生产中对自动化的要求越来越高,视觉技术已被广泛引入工业机器人行业,具备视觉的工业机器人能更快、更准、更灵活地完成定位抓取、对位组…

Linux系统 (三)- 权限介绍

~~~~前言命令行解释器 -- Command Line Interpreter ShellLinux操作系统命令行解释器对命令行解释器的初步认识命令行解释器的意义shell分类命令行解释器 CLI Shell图形界面 GUI ShellLinux权限Linux中用户分类su基本语法sudo基本语法配置操作权限管理权限是什么文件分类文件属…

【一起学数据结构与算法】计数排序、基数排序、桶排序(含菜鸟教程代码)

目录前言一、计数排序1.1 排序思想1.2 代码1.3 菜鸟教程官方代码(搬运)二、基数排序2.1 排序思想2.2 代码2.3 菜鸟教程官方代码(搬运)三、桶排序3.1 排序思想3.2 代码3.3 菜鸟教程官方代码(搬运)前言 之前我们学过了几种常见的排序,都是基于比较的排序,…

ES6中扩展对象的功能性

对象是JavaScript编程的核心,ECMAScript6为对象提供了许多简单易用且更加灵活的新特性。 ECMAScript 6在对象字面量的基础上做出了以下几个变更: 简化属性定义语法,使将当前作用域中的同名变量赋值给对象的语法更加简洁 function createPe…

【MySQL】MySQL基本操作详解

系列文章目录 第1篇:【MySQL】MySQL介绍及安装 第2篇:【MySQL】MySQL基本操作详解 文章目录 ✍1,数据库操作     🔍1.1,查看数据库     🔍1.2,创建数据库     🔍1.3,选择数据库     &…

Kubernetes基础_02_Pod全解析

系列文章目录 文章目录系列文章目录前言一、Pod的生命周期Lifecycle二、Pod的重启策略RestartPolicy三、静态Pod四、Pod的健康检查总结前言 Pod是Kubernetes最小单位,当然一个Pod可以有多个Container,但是container是docker的元素,不是Kuber…

CTFHub | 布尔盲注

0x00 前言 CTFHub 专注网络安全、信息安全、白帽子技术的在线学习,实训平台。提供优质的赛事及学习服务,拥有完善的题目环境及配套 writeup ,降低 CTF 学习入门门槛,快速帮助选手成长,跟随主流比赛潮流。 0x01 题目描述…

无限题库公众号系统搭建

无限题库公众号系统搭建 本平台优点: 多题库查题、独立后台、响应速度快、全网平台可查、功能最全! 1.想要给自己的公众号获得查题接口,只需要两步! 2.题库: 查题校园题库:查题校园题库后台(…