【智能算法】金豺优化算法(GJO)原理及实现

在这里插入图片描述

目录

    • 1.背景
    • 2.算法原理
      • 2.1算法思想
      • 2.2算法过程
    • 3.结果展示
    • 4.参考文献


1.背景

2022年,N Chopra等人受到金豺狩猎行为启发,提出了金豺优化算法(Golden Jackal Optimization, GJO)。

在这里插入图片描述

在这里插入图片描述

2.算法原理

2.1算法思想

GJO 模拟金豺协同狩猎行为,该算法主要包含探索阶段和进攻阶段

在这里插入图片描述

2.2算法过程

探索阶段

金豺会根据自身情况来进行狩猎,雌金豺会跟随雄金豺,在搜索区域等待和寻找其他猎物:
Y 1 ( t ) = Y M ( t ) − E . ∣ Y M ( t ) − r l . Pr ⁡ e y ( t ) ∣ Y 2 ( t ) = Y F M ( t ) − E . ∣ Y F M ( t ) − r l . Pr ⁡ e y ( t ) ∣ (1) Y_{1}(t)=Y_{M}(t)-E.|Y_{M}(t)-rl.\Pr ey(t)|\\Y_{2}(t)=Y_{FM}(t)-E.|Y_{FM}(t)-rl.\Pr ey(t)|\tag{1} Y1(t)=YM(t)E.∣YM(t)rl.Prey(t)Y2(t)=YFM(t)E.∣YFM(t)rl.Prey(t)(1)
其中,E为猎物的逃避能量,rl表示一个基于莱维分布的任意向量,Prey(t)表示猎物位置向量,YM和YFM分别表示雄金豺和雌金豺的位置。

金豺种群依据猎物的逃避能量E,决定是否对猎物发起进攻。在迭代过程中,猎物的逃避能量E呈下降趋势,当|E|>=1时,即猎物有足够能量躲避捕猎,金豺种群转向探索阶段寻找其他猎物;当|E|<1时,金豺种群转向进攻阶段对猎物发起进攻。
E = E 1 ∗ E 0 (2) E=E_1*E_0\tag{2} E=E1E0(2)
E1表示递减的猎物能量,E0表示猎物能量的原始状态:
E 0 = 2 ∗ r − 1 E 1 = c 1 ∗ ( 1 − ( t / T ) ) (3) E_0=2*r-1\\ E_1=c_1*(1-(t/T))\tag{3} E0=2r1E1=c1(1(t/T))(3)
金豺位置更新:
Y ( t + 1 ) = Y 1 ( t ) + Y 2 ( t ) 2 (4) Y(t+1)=\frac{Y_1(t)+Y_2(t)}2\tag{4} Y(t+1)=2Y1(t)+Y2(t)(4)

进攻阶段

当猎物受到金豺的攻击时,其逃避能量会迅速下降,这时金豺会迅速靠近猎物并对猎物发起进攻:
Y 1 ( t ) = Y M ( t ) − E . ∣ r l . Y M ( t ) − Pr ⁡ e y ( t ) ∣ Y 2 ( t ) = Y F M ( t ) − E . ∣ r l . Y F M ( t ) − Pr ⁡ e y ( t ) ∣ (5) Y_{1}(t)=Y_{M}(t)-E.|rl.Y_{M}(\mathrm{t})-\Pr ey(t)|\\Y_{2}(t)=Y_{FM}(t)-E.|rl.Y_{FM}(\mathrm{t})-\Pr ey(t)|\tag{5} Y1(t)=YM(t)E.∣rl.YM(t)Prey(t)Y2(t)=YFM(t)E.∣rl.YFM(t)Prey(t)(5)

伪代码

在这里插入图片描述

3.结果展示

使用测试框架,测试GJO性能 一键run.m

  • 【智能算法】省时方便,智能算法统计指标——一键运行~

CEC2017-F19
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.参考文献

[1] Chopra N, Ansari M M. Golden jackal optimization: A novel nature-inspired optimizer for engineering applications[J]. Expert Systems with Applications, 2022, 198: 116924.

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

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

相关文章

【C语言进阶】动态内存管理

&#x1f4da;作者简介&#xff1a;爱编程的小马&#xff0c;正在学习C/C&#xff0c;Linux及MySQL.. &#x1f4da;以后会将数据结构收录为一个系列&#xff0c;敬请期待 ● 本期内容会给大家讲解如何开辟动态内存空间&#xff0c;以及c/c内存是如何分配的&#xff0c;最后还会…

浏览器打不开DevTools?

随笔记录下某网站禁止通过F12, CtrlShiftI等快捷键来打开开发者工具&#xff0c;其次通过浏览器宽高定时来重定向。 目标网站 aHR0cHM6Ly93d3cuemhpaHUuY29tL21hcmtldC9wYWlkX2NvbHVtbi8xNjkxOTY2MTg4MzY2ODYwMjg4L3NlY3Rpb24vMTc1MjcyNjI3MjMzMjIxMDE3Nw问题描述 当我们通过…

瀑布VS敏捷,看看哪种研发管理模式更适合你的团队

软件开发是一个复杂且极具挑战性的过程&#xff0c;需要有合适的研发管理模式。瀑布模型和敏捷开发是两种常见的研发管理模式&#xff0c;它们在项目管理和团队合作方面有着截然不同的理念和实践方式。本文将介绍这两种开发模式的特点、优缺点及对比&#xff0c;提供如何选择适…

react之初识state

第二章 - 添加交互 State: 组件的记忆 组件通常需要根据交互更改屏幕上显示的内容。输入表单应该更新输入字段&#xff0c;单击轮播图上的“下一个”应该更改显示的图片&#xff0c;单击“购买”应该将商品放入购物车。组件需要“记住”某些东西&#xff1a;当前输入值、当前…

解决在 Python 数据分析中遇到的 Matplotlib 字体警告问题

当在 Python 数据分析中遇到类似以下警告时&#xff1a; D:\anaconda3\lib\site-packages\matplotlib\backends\backend_agg.py:211: RuntimeWarning: Glyph 24037 missing from current font.font.set_text(s, 0.0, flagsflags) D:\anaconda3\lib\site-packages\matplotlib\ba…

美国签证被拒签后怎么申诉?

美国签证被拒签后该如何申诉&#xff1f;这是许多申请者心中的疑问。美国签证被拒签可能会给申请者带来困扰和挫折感&#xff0c;但并非没有解决的办法。下面将介绍一些申诉的常见步骤和注意事项。 首先&#xff0c;需要理解拒签的原因。美国签证被拒签可能是因为申请材料不全、…

Linux 网络操作命令FTP

FTP命令 引言 文件传输协议&#xff08;FTP&#xff09;是一种用于在网络上进行文件传输的协议。在Linux系统中&#xff0c;FTP可以作为一个非常有用的工具来上传、下载和管理文件。本文将介绍如何在Linux系统中安装FTP服务器&#xff0c;以及如何使用FTP客户端进行文件传输。…

动态活码二维码怎么制作?在线二维码生成器的使用技巧

二维码是如何生成的呢&#xff1f;现在二维码与我们的工作和生活息息相关&#xff0c;越来越多的场景都会有不同类型的二维码&#xff0c;比如常见的有视频、图片、文件、问卷、文本等等类型的内容。面对不同用途需求来制作二维码来为其他人提供内容展示&#xff0c;提升用户获…

Linux的DNS域名解析服务

目录 1.DNS 1.1定义 1.2作用/功能 1.3域名结构 1.4两种查询方式 1.5DNS域名解析工作原理 1.6DNS系统类型 2.正向解析实验​ 2.1安装bind服务&#xff0c;查看配置文件 2.2配置文件配置及文件内容说明 3.反向解析实验 4.配置主从DNS服务器 1.DNS 1.1定义 DNS域名系…

centos7搭建maven私服nexus

1.nexus Nexus Repository Manager&#xff08;通常简称 Nexus 或 Nexus RM&#xff09;是由Sonatype公司开发的一款开源的、强大的软件仓库管理工具&#xff0c;主要用于企业级的二进制组件&#xff08;如Java库、Node.js模块、Python包等&#xff09;存储、管理和分发。 官方…

库存数据可视化分析按这个做,赚大了!

今天我们来看一张库存数据可视化分析驾驶舱&#xff0c;全面了解库存资金占用情况&#xff0c;物料周转情况&#xff0c;库存趋势情况、以及占库存金额最高的商品有哪些等。 为更好地实现以上效果&#xff0c;并且增强报表的可读性、易读性&#xff0c;我们采用了按分析场景选…

数据被“锁”?别急,教你如何解锁被“rmallox”勒索病毒加密的文件

在当今数字化时代&#xff0c;网络安全问题日益凸显。其中&#xff0c;勒索病毒成为了一种常见的网络威胁&#xff0c;而rmallox勒索病毒则是其中的一种典型代表。本文将从病毒特性、传播途径、防范策略、紧急措施以及从中得到的社会启示等多个角度&#xff0c;深入探讨rmallox…

什么是云手机?云手机有什么用?

过去&#xff0c;我们手中的手机是我们生活、工作、娱乐的得力助手&#xff0c;但随着时代的变迁和技术的发展&#xff0c;我们需要的不仅仅是一部手机&#xff0c;而是一个更强大、更灵活的工具。在这个时候&#xff0c;云手机横空出世&#xff0c;成为了我们手机使用的新选择…

3d展览模型空间灯光怎么打---模大狮模型网

在设计3D展览模型时&#xff0c;灯光的运用至关重要。合理的空间灯光设计不仅能够烘托展品的氛围和情感&#xff0c;还可以引导观众的视线&#xff0c;增强展览的艺术感和观赏性。本文将介绍如何在3D展览模型中打造出合适的空间灯光效果&#xff0c;以提升展览的吸引力和视觉效…

《代码大全》读后感:软件开发的黄金法则

在软件开发领域&#xff0c;有一本书被誉为“圣经”&#xff0c;那就是《代码大全》。这本书由史蒂夫迈克康奈尔所著&#xff0c;于2006年首次出版&#xff0c;至今仍在全球范围内享有盛誉。它不仅为开发者们提供了详尽的编程技巧&#xff0c;更深入地探讨了软件开发过程中的各…

4.20.1 深度神经网络提高放射科医生在乳腺癌筛查中的表现

新颖的两阶段神经网络&#xff0c;用于将全局和局部信息与适当的训练过程结合起来。这使我们能够使用非常高容量的块级网络从像素级标签中学习&#xff0c;同时网络也可以从宏观乳房级标签中学习。模型可以生成可解释的热图&#xff0c;指示可疑发现的位置。即使在拥有大量图像…

SCP收容物121~130

注 &#xff1a;此文接SCP简介以及116~120的介绍,本文只供开玩笑 ,与steve_gqq_MC合作。 --------------------------------------------------------------------------------------------------------------------------------- 目录 scp-121 scp-122 scp-123 scp-124 …

nodejs 老生代和新生代如何理解

在Node.js中&#xff0c;虽然Node.js本身并不直接管理内存的具体分配与回收策略&#xff0c;但其底层依赖的JavaScript引擎V8确实实现了自动内存管理机制&#xff0c;其中包括了对内存区域的细分&#xff0c;其中就包括了“新生代”和“老生代”的概念。 新生代&#xff08;Yo…

学校开展第二届教学名师沙龙

四川城市职业学院讯 4月23日下午&#xff0c;党委教师工作部&#xff08;质量部&#xff09;、教师发展中心组织开展了以“大力弘扬教育家精神&#xff0c;建设高质量高水平教师队伍”为主题的第二届教学名师经验分享沙龙活动。全校12名入选学校教学名师&#xff08;名辅导员…

ubuntu 复制文件路径

前言 我打算搞一个ubuntu右键复制文件路径的插件&#xff0c;但是找不到&#xff0c;只能平替 这个配置&#xff0c;可以把文件拖拽到cmd窗口&#xff0c;然后就直接cmd输出文件路径 配置 cd ~ vim .bashrc 在文件结尾添加 cdd () { ddirname "$1"; echo …