智能优化算法:白鲨优化算法-附代码
智能优化算法:白鲨优化算法
文章目录
- 智能优化算法:白鲨优化算法
- 1.白鲨优化算法
- 1.1 初始化
- 1.2 速度更新
- 1.3位置更新
- 1.4鱼群行为
- 2.实验结果
- 3.参考文献
- 4.Matlab
- 5.python
摘要:WSO 算法是 Braik 等于 2022 年提出一种基于白鲨深海觅食策略的新型优化算法 .该算法灵感来自于白鲨敏锐的听觉和嗅觉功能,这些功能有助于白鲨探索整个搜索空间来追踪、定位和捕获猎物,并通过白鲨位置的不断更新来达到求解优化问题的目的 。具有寻优能力强,收敛速度快等特点。
1.白鲨优化算法
1.1 初始化
WSO 是一种基于种群的优化算法, 该算法通过 式 (3) 随机生成均匀分布的白鲨种群个体位置 w j i w_j^i wji.
w j i = l j + R × ( u j − l j ) (3) w_j^i=l_j+R \times\left(u_j-l_j\right) \tag{3} wji=lj+R×(uj−lj)(3)
式中: w j i w_j^i wji 为第 i i i 头白鲨第 j j j 维位置, i = 1 , 2 , ⋯ , n i=1,2, \cdots, n i=1,2,⋯,n, 其 中 n n n 为白鲨种群规模; u j 、 l j u_j 、 l_j uj、lj 分别为第 j j j 维搜索空间 上、下限; R R R 为介于 0 和 1 之间的随机数.
1.2 速度更新
白鲨大部分时间都在狩猎和追踪猎物 .WSO 算法中,白鲨根据猎物移动来感知其位置,并更新自身速度. 数学描述如下:
v k + 1 i = μ [ v k i + p 1 ( w gbest k − w k i ) × c 1 + p 2 ( w best v k i − w k i ) × c 2 ] (4) \begin{gathered} v_{k+1}^i=\mu\left[v_k^i+p_1\left(w_{\text {gbest }_k}-w_k^i\right) \times c_1+\right. \left.p_2\left(w_{\text {best }}^{v_k^i}-w_k^i\right) \times c_2\right] \end{gathered} \tag{4} vk+1i=μ[vki+p1(wgbest k−wki)×c1+p2(wbest vki−wki)×c2](4)
式中: v k + 1 i v_{k+1}^i vk+1i 为第 i i i 头白鲨第 ( k + 1 ) (k+1) (k+1) 次迭代速度; v k i v_k^i vki 为 第 i i i 头白鲨第 k k k 次迭代速度; w gbest k w_{\text {gbest }_k} wgbest k 为迄今为止白鲨 在第 k k k 次迭代中获得的全局最优位置; w k i w_k^i wki 为第 i i i 头 白鲨第 k k k 次迭代位置; w best v k i w_{\text {best }}^{v_k^i} wbest vki 为第 i i i 头白鲨第 k k k 次迭代 速度对应的最优位置; c 1 、 c 2 c_1 、 c_2 c1、c2 为介于 0 和 1 之间的随 机数; p 1 、 p 2 p_1 、 p_2 p1、p2 分别为 w gbest k 、 w best v k i w_{\text {gbest }_k} 、 w_{\text {best }}^{v_k^i} wgbest k、wbest vki 控制系数, 描述为 p 1 = p max + ( p max − p min ) × e − ( 4 k / K ) 2 , p 2 = p min + ( p max − p_1=p_{\text {max }}+\left(p_{\text {max }}-p_{\text {min }}\right) \times \mathrm{e}^{-(4 k / K)^2}, p_2=p_{\text {min }}+\left(p_{\text {max }}-\right. p1=pmax +(pmax −pmin )×e−(4k/K)2,p2=pmin +(pmax − p min ) × e − ( 4 k / K ) 2 ; k 、 K \left.p_{\text {min }}\right) \times \mathrm{e}^{-(4 k / K)^2} ; k 、 K pmin )×e−(4k/K)2;k、K 分别为当前迭代次数和最大迭 代次数; p max 、 p min p_{\text {max }} 、 p_{\text {min }} pmax 、pmin 分别为控制系数最大、最小值; μ \mu μ 表 示收缩因子.
1.3位置更新
(1)基于最优猎物的位置更新. WSO 算法中, 白渔 通过朝最优猎物移动来更新自身位置以找到最优或 次优猎物. 数学描述如下:
w k + 1 i = { w k i ⋅ ¬ ⊕ w o + u ⋅ a + l ⋅ b R < m v w k i + v k i / f R ⩾ m v (5) w_{k+1}^i=\left\{\begin{array}{cc} w_k^i \cdot \neg \oplus w_o+u \cdot a+l \cdot b & R<m_v \\ w_k^i+v_k^i / f & R \geqslant m_v \end{array}\right. \tag{5} wk+1i={wki⋅¬⊕wo+u⋅a+l⋅bwki+vki/fR<mvR⩾mv(5)
式中: w k + 1 i w_{k+1}^i wk+1i 为第 i i i 头白渔第 ( k + 1 ) (k+1) (k+1) 次迭代位置; → \rightarrow → 为 否定运算符; ⊕ \oplus ⊕ 为位运算符; a 、 b a 、 b a、b 为一维二进制向量, 描述为 a = sgn ( w k i − u ) > 0 , b = sgn ( w k i − l ) < 0 , sgn a=\operatorname{sgn}\left(w_k^i-u\right)>0, b=\operatorname{sgn}\left(w_k^i-l\right)<0, \operatorname{sgn} a=sgn(wki−u)>0,b=sgn(wki−l)<0,sgn ( - ) 为正负号返回函数; u , l u, l u,l 分别为搜索空间上、下 限; w 0 w_0 w0 为逻辑向量, 描述为 w 0 = ⊕ ( a , b ) ; f w_0=\oplus(a, b) ; f w0=⊕(a,b);f 为白渻 波浪运动频率; m v m_v mv 为白鲨接近猎物时随迭代次数增 加而增加的动力; 其他参数意义同上.
(2)基于最好白鲨的位置更新. WSO 算法中, 白鲨 通过朝着最优白鲨位置移动以靠近猎物最优位置. 数 学描述如下:
w k + 1 ′ i = w gbest k + r 1 D k sgn ( r 2 − 0.5 ) r 3 < s s (6) w_{k+1}^{\prime i}=w_{\text {gbest }_k}+r_1 D_k \operatorname{sgn}\left(r_2-0.5\right) \quad r_3<s_s \tag{6} wk+1′i=wgbest k+r1Dksgn(r2−0.5)r3<ss(6)
式中: w k + 1 i w_{k+1}^i wk+1i 为第 i i i 头白鲨第 ( k + 1 ) (k+1) (k+1) 次迭代相对于猎 物的新位置; r 1 、 r 2 、 r 3 r_1 、 r_2 、 r_3 r1、r2、r3 为介于 0 和 1 之间的随机数; D k D_k Dk 为猎物与白鲨之间的距离; s s s_s ss 为白鲨在接近最佳 猎物时的嗅觉和视觉强度参数; 其他参数意义同上.
1.4鱼群行为
WSO 算法通过模拟白鲨群受食行为来保留了前 两个最优解, 并根据这些最优位置来更新其他白鲨个 体位置. 数学描述如下:
w k + 1 i = w k i + w k + 1 i 2 × R (7) w_{k+1}^i=\frac{w_k^i+w_{k+1}^i}{2 \times R} \tag{7} wk+1i=2×Rwki+wk+1i(7)
式中,参数意义同上.
2.实验结果
3.参考文献
[1] BRAIK M, HAMMOURI A, ATWAN J, et al. White Shark Optimizer: a novel bio-inspired meta-heuristic algorithm for global optimization problems [ J ] [\mathrm{J}] [J]. Knowledge-based systems,2022,243(7): 108457.
[2]陈金红,崔东文.基于深度学习神经网络超参数优化的入库径流预测方法研究——以云南省暮底河水库为例[J].三峡大学学报(自然科学版),2023,45(04):25-32.DOI:10.13393/j.cnki.issn.1672-948x.2023.04.005.
4.Matlab
5.python
智能优化算法:白鲨优化算法-附代码相关推荐
- 智能优化算法:闪电搜索算法-附代码
智能优化算法:闪电搜索算法-附代码 文章目录 智能优化算法:闪电搜索算法-附代码 1.算法原理 1.1 过渡放电体 1.2 空间放电体 1.3 引导放电体 2.算法结果 3.参考文献 4.Matlab ...
- 智能优化算法:布谷鸟搜索算法-附代码
智能优化算法:布谷鸟搜索算法-附代码 文章目录 智能优化算法:布谷鸟搜索算法-附代码 1.算法原理 2.算法结果 3.参考文献 4.Matlab代码 摘要:谷鸟搜索算法(cuckoo search , ...
- 基于蝙蝠算法优化BP神经网络的数据分类算法及其MATLAB实现-附代码
基于蝙蝠算法优化BP神经网络的数据分类算法及其MATLAB实现-附代码 文章目录 基于蝙蝠算法优化BP神经网络的数据分类算法及其MATLAB实现-附代码 1 蝙蝠算法与BP神经网络分类模型 1.1 蝙 ...
- 基于灰狼算法优化支持向量机的数据分类算法及其MATLAB实现-附代码
基于灰狼算法优化支持向量机的数据分类算法及其MATLAB实现-附代码 文章目录 基于灰狼算法优化支持向量机的数据分类算法及其MATLAB实现-附代码 1 GWO-SVM 模型 1.1 灰狼优化器GWO ...
- 相位 unwrap 与 wrap 算法详解(附代码)
相位 unwrap 与 wrap 算法详解(附代码) 最近接手了一个项目,光通信方面的,我负责编写初测结果的数据处理算法,其中有一个算法叫做 unwrap 与 wrap,之前没有听说过.通过询问同事与 ...
- 数据挖掘领域十大经典算法之—SVM算法(超详细附代码)
相关文章: 数据挖掘领域十大经典算法之-C4.5算法(超详细附代码) 数据挖掘领域十大经典算法之-K-Means算法(超详细附代码) 数据挖掘领域十大经典算法之-Apriori算法 数据挖掘领域十大经 ...
- 二分查找算法详解(附代码)
二分查找算法详解(附代码) 注: 现有一个升序 不重复的数组 查询target是否在此数组中并返回序号 使用条件 使用二分算法的两个条件: 有序 不重复 混淆处 二分算法两种方式容易弄混淆的地方:就是 ...
- 数据挖掘领域十大经典算法之—AdaBoost算法(超详细附代码)
相关文章: 数据挖掘领域十大经典算法之-C4.5算法(超详细附代码) 数据挖掘领域十大经典算法之-K-Means算法(超详细附代码) 数据挖掘领域十大经典算法之-SVM算法(超详细附代码) 数据挖掘领 ...
- 麻雀优化算法_多种智能优化算法应用案例分享-附代码
1.智能优化算法应用:基于灰狼算法的Otsu图像多阈值分割 智能优化算法应用:基于灰狼算法的Otsu图像多阈值分割-附代码_Jack旭的博客-CSDN博客blog.csdn.net 2.智能优化算法 ...
- 智能优化算法:麻雀搜索算法-附代码
2020智能优化算法:麻雀搜索算法 文章目录 2020智能优化算法:麻雀搜索算法 1.算法原理 2.算法结果 3.参考文献 4.Matlab代码 5.Python代码 摘要:麻雀搜索算法(Sparro ...
最新文章
- 2021年大数据基础(三):​​​​​​​​​​​​​​​​​​​​​大数据应用场景
- CentOs 6.3_64静默安装oracle11g_r2
- Leetcode 102. Binary Tree Level Order Traversal(二叉树的层序遍历)
- 「Githug」Git 游戏通关流程
- MySQL软件的下载
- 【渝粤教育】 国家开放大学2020年春季 2245社会福利与保障 参考试题
- 差分隐私 python_[宜配屋]听图阁
- c语言编程 排序,C语言编程-9_3 排序
- Git学习文档之一 学习文档-发布
- go mysql rows.next_Go基础之--操作Mysql(二)
- 为什么有科学家怀疑太阳系是被设计出来的
- sqlyog注册码激活
- opencv查看版本路径
- 圈儿里使人泪两行的事儿,千万要注意。
- Python 如何将视频文件的语音转换为文字,良心之作!
- ArcGIS提取栅格数据中的指定部分(可以是矢量数据也可时栅格数据)
- C语言中实现十进制转二进制输出
- 【数模学习笔记】【线性规划】巧用0-1变量
- 我们见面吧,钛媒体年度国际大会“坚定”来了!
- 2017年阿里云生态大事记