智能优化算法:猎豹优化算法-附代码

news/2024/10/19 7:35:01/

智能优化算法:猎豹优化算法

文章目录

  • 智能优化算法:猎豹优化算法
    • 1.猎豹优化算法
      • 1.1 初始化
      • 1.2 搜索策略
      • 1.3坐等策略
      • 1.4攻击策略
    • 2.实验结果
    • 3.参考文献
    • 4.Matlab
    • 5.python

摘要:CO算法是Mohammad AminAkbari等人于2022年受自然界猎豹狩猎启发而提出一种新型群体智能优化算法。该算法通过模拟猎豹在狩猎过程中搜索、坐等和攻击3种策略来实现位置更新。具有寻优能力强,收敛速度快等特点。

1.猎豹优化算法

1.1 初始化

(1) 初始化。与其他群体智能优化算法类似, CO 算法也 是从种群初始化开始。设在 d d d 维搜索空间中, 猎豹初始化位置 描述为:
X i , j = L B j + rand ⁡ ( U B j − L B j ) i = 1 , 2 , ⋯ , n ; j = 1 , 2 , ⋯ , d (1) X_{i, j}=L B_j+\operatorname{rand}\left(U B_j-L B_j\right) \quad i=1,2, \cdots, n ; j=1,2, \cdots, d \tag{1} Xi,j=LBj+rand(UBjLBj)i=1,2,,n;j=1,2,,d(1)
式中: X i , j X_{i, j} Xi,j 为第 i i i 头猎豹第 j j j 维位置; U B j 、 L B j U B_j 、 L B_j UBjLBj 为第 j j j 维搜索空间上、下限值; rand 为介于 0 和 1 之间的随机数; n n n 为猎豹种群 规模; d d d 为问题维度。

1.2 搜索策略

猎豹在其领地(搜索空间)或周围区域 进行全范围扫描或主动搜索, 以找到猎物。该策略数学描 述为:
X i , j t + 1 = X i , j t + r ˉ i , j − 1 ⋅ α i , j t t = 1 , 2 , ⋯ , T (2) X_{i, j}^{t+1}=X_{i, j}^t+\bar{r}_{i, j}^{-1} \cdot \alpha_{i, j}^t \quad t=1,2, \cdots, T \tag{2} Xi,jt+1=Xi,jt+rˉi,j1αi,jtt=1,2,,T(2)
式中: X i , j t + 1 X_{i, j}^{t+1} Xi,jt+1 为第 i i i 头猎豹第 t + 1 t+1 t+1 次迭代第 j j j 维位置; X i , j t X_{i, j}^t Xi,jt 为第 i i i 头 猎豹第 t t t 迭代第 j j j 维位置; r ˉ i , j \bar{r}_{i, j} rˉi,j 为第 i i i 头猎豹第 j j j 维呈正态分布的 随机数; α i , j t \alpha_{i, j}^t αi,jt 为第 i i i 头猎豹第 t t t 迭代第 j j j 维的搜索步长; T T T 为算法 最大迭代次数。

1.3坐等策略

(3)坐等策略。在搜索模式下, 猎物可能会暴露在猎豹 视野中, 在这种情况下, 猎豹的每一个动作都可能会导致猎 物逃跑。为避免该情况发生, 猎豹采取坐等伏击策略(躺在 地上或躲进灌木丛) 以接近猎物。该策略数学描述为:
X i , j l + 1 = X i , j t (3) X_{i, j}^{l+1}=X_{i, j}^t \tag{3} Xi,jl+1=Xi,jt(3)
式 (3) 各参数意义同上。该策略不但提高狩猎成功率 (获得取优解), 而且避免 CO 过早收玫。

1.4攻击策略

在 CO 算法中, 每头猎豹都可以根据逃跑 猎物、领头猎豹或附近猎豹的位置来调整自己的位置, 以获 得最佳攻击位置。该策略数学描述为:
X i , j t + 1 = X B , j t + r ˉ i , j ⋅ β i , j t (4) X_{i, j}^{t+1}=X_{B, j}^t+\bar{r}_{i, j} \cdot \beta_{i, j}^t \tag{4} Xi,jt+1=XB,jt+rˉi,jβi,jt(4)
式中: X B , j t X_{B, j}^t XB,jt 为第 t t t 迭代第 j j j 维猎物位置, 即当前最佳位置; r ˉ i , j \bar{r}_{i, j} rˉi,j 为 第 i i i 头猎豹第 j j j 维转向因子; β i , j t \beta_{i, j}^t βi,jt 为第 i i i 头猎豹第 t t t 迭代第 j j j 维交互 因子,反映猎豹之间或猎豹与领头猎豹之间的互动; 其他参 数意义同上。

2.实验结果

在这里插入图片描述

3.参考文献

[1] AKBARI M A, ZARE M, AZIZIPANAH-ABARGHOOEE R, et al.The cheetah optimizer: a nature-inspired metaheuristic algorithm for large-scale optimization problems[J]. Scientific reports, 2022, 12(1): 1-20.

[2]李杰,崔东文.若干新型群体智能算法优化高斯过程回归的年降水量预测[J].节水灌溉,2023(07):96-103+109.

4.Matlab

5.python


http://www.ppmy.cn/news/1026371.html

相关文章

F12诡异Bug分享

Bug本身情况 java运行的时候会产生class文件,其本身是跑class文件的,但某个实施反馈一个经典版本的长久bug。 当使用模糊查询时,一页一页查看,在倒数第二页时,点击下一页,页面静止不动。(正常情…

JavaScript基础 第五天

1.什么是对象以及对象的基本使用 2.对象的操作 --增删改查 3.对象的方法 4.数学内置对象 5.简单数据类型和引用数据类型 一.什么是对象以及对象的基本使用 ① 对象是什么 可以理解为一种无序的数据集合,数组是有序的数据集合对象通常用来描述某个事物&#x…

谁能讲清楚Spark之Spark系统架构

### 整体架构概述 Spark与Hadoop MapReduce的结构类似,Spark也采用Master-Worker结构。如果一个Spark集群由4个节点组成,即1个Master节点和3个Worker节点,那么在部署Standalone版本后,Spark部署的系统架构图如图2.1所示。简单来说,Master节点负责管理应用和任务,…

学生成绩管理系统V2.0

某班有最多不超过30人(具体人数由键盘输入)参加某门课程的考试,参考前面章节的“学生成绩管理系统V1.0”,用一维数组和函数指针作函数参数编程实现如下菜单驱动的学生成绩管理系统,其中每位同学的学号和成绩等数据可以…

netcat反弹shell

命令执行nc反弹shell 瑞士军刀 在执行命令漏洞,一般的利用漏洞是执行反弹shell在进行其他操作。 执行反弹shell的命令有许多。 反弹shell因为是受害者,反向连接远程服务器,请求是内部到外部,所以防火墙是不会进行拦截的。 反弹…

生成树协议用来解决网络风暴的问题?(第三十二课)

生成树协议用来解决网络风暴的问题?(第三十二课) 一 STP RSTP MSTP 介绍 STP(Spanning Tree Protocol)、RSTP(Rapid Spanning Tree Protocol)和MSTP(Multiple Spanning Tree Protocol)都是用于网络中避免环路的协议。 STP是最初的协议,它通过将某些端口阻塞来防止…

响应领导号召,打赢攻坚战

大周末的跑来加班,过来监督成员干活,响应领导号召,打赢攻坚战。 事业单位很喜欢玩攻坚,今年是第三次了,NND。预计今年还会有一两次。 平常都跟大爷一样的,不急不躁,系统上线个把月了&#xff0c…

Centos 8和Centos 7中配置阿里云的 yum 源

YUM源简介 yum是一种在Linux环境下安装、更新和删除软件包的软件管理器。通过yum,用户可以轻松地从软件仓库中搜索和安装包含所需软件的软件包,并自动处理所需的依赖关系。此外,yum还可以与其他软件管理工具配合使用,例如rpm。它…