群体智能优化算法之鲸鱼优化算法
转载自我的个人网站 https://wzw21.cn/2022/01/08/woa/
目录
- 鲸鱼优化算法
- 鲸鱼群体
- 模型与算法
鲸鱼优化算法
鲸鱼群体
鲸鱼是世界上最大的哺乳动物,是有情感的高智商动物,大部分鲸鱼被认为是食肉动物且群居。座头鲸是最大的长须鲸之一,它们使用一种独特的捕猎方式来猎食虾群和鱼群,被称为泡泡网(Bubble-net)捕猎方式,如图4、图5所示。它们在捕食时以螺旋式逼近猎物,吐出气体形成气泡,迫使鱼群聚集以方便捕食。鲸鱼优化算法便是受启发于鲸鱼(特别是座头鲸)的捕猎方式。
图4:“泡泡网”捕猎示意图,引用自论文《The whale optimization algorithm》
图5:座头鲸捕猎场景
模型与算法
鲸鱼优化算法与灰狼优化算法相似,都采用对目标位置先进行包围再捕食的策略。不同点在于鲸鱼优化算法直接将当前最优解作为包围中心,且鲸鱼优化算法的捕猎逼近过程分为两种,第一种逐步降低距离,另一种以螺旋形逼近。鲸鱼优化算法的基本位置更新方式与灰狼优化算法相同,见灰狼优化算法公式(1)至(4)。
鲸鱼优化算法基于一个随机数p∈[0,1]来决定当前搜索单元的行动,有50%的概率直接根据目标位置进行移动,有50%的概率以螺旋线逼近猎物。鲸鱼在捕猎时的行为被定义为:
X⃗(t+1)={X⃗∗(t)−A⃗⋅D⃗D′⃗⋅ebl⋅cos(2πl)+X⃗∗(t)p<0.5p≥0.5(1)\vec{X}(t+1)= \left\{ \begin{array}{l} \vec{X}^*(t)-\vec{A}\cdot\vec{D} \\ \vec{D'}\cdot e^{bl}\cdot cos(2πl)+\vec{X}^*(t) \end{array} \begin{array}{r} p<0.5 \\ p≥0.5 \end{array} \right. \tag1 X(t+1)={X∗(t)−A⋅DD′⋅ebl⋅cos(2πl)+X∗(t)p<0.5p≥0.5(1)
其中,X⃗∗(t)\vec{X}^*(t)X∗(t)可能是当前最优解的位置也可能是一个随机搜索单元的位置,取决于∣A⃗∣|\vec{A}|∣A∣的值,b决定螺旋线形状,l为随机值∈[-1,1],D′⃗=∣X⃗∗(t)−X⃗(t)∣\vec{D'}=|\vec{X}^*(t)-\vec{X}(t)|D′=∣X∗(t)−X(t)∣。鲸鱼优化算法搜索机制示意图如图6所示。
图6:鲸鱼优化算法搜素机制,(a)缩小包围机制(b)螺旋更新位置,引用自论文《The whale optimization algorithm》
鲸鱼优化算法的伪代码如下:
初始化鲸鱼种群 Xi (i=1,2,…,n)
计算每个搜索单元的适应度
X*=最优搜索单元
while (t<最大迭代次数)for (每个搜索单元)更新a, A, C, l, pif1 (p<0.5)if2 (|A|<1)根据最优个体更新当前搜索单元的位置else if2 (|A|≥1)随机选择一个搜索单元Xrand根据Xrand更新当前搜索单元的位置end if2else if1 (p≥0.5)根据最优个体螺旋更新当前搜索单元的位置end if1end for检查是否有超出搜索范围的搜索单元,并进行修正计算所有搜索单元的适应度更新X*t=t+1
end while
return X*
群体智能优化算法之鲸鱼优化算法相关推荐
- 群体智能优化算法之鲸鱼优化算法(Whale Optimization Algorithm,WOA)
获取更多资讯,赶快关注上面的公众号吧! 文章目录 鲸鱼优化算法(Whale Optimization Algorithm,WOA) 1.1 灵感 1.2 数学建模和优化算法 1.2.1 包围捕食(En ...
- 基于混沌的正余弦鲸鱼优化算法-附代码
基于混沌的正余弦鲸鱼优化算法 文章目录 基于混沌的正余弦鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 混沌初始化种群和参数优化 2.2 正余弦鲸鱼优化算法 2.3 混沌自适应的惯性权 ...
- 鲸鱼优化算法(WOA)(学习)
鲸鱼优化算法(WOA) 1.前言: 一种元启发式优化算法,模拟座头鲸狩猎行为的元启发式优化算法.目前的工作与其他群优化算法相比的主要区别在于,采用随机或最佳搜索代理来模拟捕猎行为,并使用螺旋来模拟座头 ...
- 一种改进的鲸鱼优化算法-附代码
一种改进的鲸鱼优化算法 文章目录 一种改进的鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 准反向学习初始化种群 2.2 非线性收敛因子 2.3 自适应权重策略与随机差分法变异策略 3 ...
- 鲸鱼优化算法及其实现
鲸鱼优化算法(whaleoptimization algorithm, WOA)是群智能算法类型中的一种,通过模拟鲸鱼的行为方式,从而解决优化问题.本章将深入讨论鲸鱼优化算法的实现原理以及如何将算法应 ...
- 基于精英反向学习和Lévy飞行的鲸鱼优化算法
文章目录 一.理论基础 1.鲸鱼优化算法 2.改进鲸鱼优化算法 (1)基于精英反向学习的种群初始化 (2)自适应权重 (3)Lévy飞行 二.实验结果与分析 三.参考文献 一.理论基础 1.鲸鱼优化算 ...
- 混沌策略和单纯形法改进的鲸鱼优化算法-附代码
混沌策略和单纯形法改进的鲸鱼优化算法 文章目录 混沌策略和单纯形法改进的鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 混沌反向学习初始化种群 2.2 非线性收敛因子和自适应权重策略 ...
- 鲸鱼优化算法(WOA)及其优秀变体(含MATLAB代码)
先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论.我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年提出 ...
- 基于自适应调整权重和搜索策略的鲸鱼优化算法-附代码
基于自适应调整权重和搜索策略的鲸鱼优化算法 文章目录 基于自适应调整权重和搜索策略的鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 自适应调整权重 2.2 自适应调整搜索策略 3.实验 ...
最新文章
- 2D目标检测CVPR2020总结
- web开发入门到深入-WebAssembly(1)
- php 在线繁体转换简体,php如何实现简体繁体转换
- 5学习周报_你做好周报的“闭环管理”了吗?——“周报管理知多少”
- [python opencv 计算机视觉零基础到实战] 十八、用鼠标进行画画
- Linux日志高频使用命令
- oracle是delete可以加并行吗,提高Oracle DELETE性能的策略
- 三大运营商一季度财报出炉:营收集体下降
- std::function
- 如何:从代码创建 UML 类图(ZZ)
- plecs matlab 联合仿真,基于Matlab和PLECS的电力电子仿真实验教学
- 镁光硬盘测试软件,镁光固态硬盘评测
- 布客·ApacheCN 编程/后端/大数据/人工智能学习资源 2022.2
- Vue项目中直接调用打印机打印网页的某一区域的方法
- 设置共享文件夹以计算机用户名和密码访问,Win10正式版系统怎么设置共享文件夹密码访问...
- ios开发html转图片,iOS | PPT 转图片(UIImage) 解决方案
- WPS表格怎么画横线并在上面打字
- oracle distinct 用法
- RFID固定资产管理降低人工成本,实现智能化的管理-新导智能
- 新手怎么加入自媒体?新手入门其实很简单