翻筋斗觅食海鸥优化算法-附代码

这篇具有很好参考价值的文章主要介绍了翻筋斗觅食海鸥优化算法-附代码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

翻筋斗觅食海鸥优化算法


摘要:针对基本海鸥优化算法(SOA)在处理复杂优化问题中存在低精度、慢收敛和易陷入局部最优的不足,提出了一种基于翻筋斗觅食策略的SOA算法(SFSOA)。该算法首先采用基于倒S型函数的控制参数A非线性递减策略更新海鸥个体的位置,以改善个体的质量和加快收敛速度;引入一种基于翻筋斗觅食策略的学习机制以增加海鸥个体位置的多样性,避免算法在搜索后期陷入局部最优值。

1.海鸥优化算法

基础海鸥优化算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/107535864

2. 改进海鸥优化算法

2.1 非线性参数 A 策略

在 SOA 中, 海鸥个体的迁移行为是算法的一种重要操作, 通过引人一个参数 A A A 来控制海鸥个体位置, 避免海鸥个体在 飞行寻优过程中与其他相邻个体发生碰撞, 不产生重复的位 置。因此,参数 A A A S O A \mathrm{SOA} SOA 搜索过程中对平衡算法的勘探和开 采能力起重要作用。然而, 从式 (2) 可以看出, 参数 A A A 的值随 迭代次数增加从 f c f_c fc 线性递减到 0 。一般来说, f c f_c fc 的取值为 2 , 即 在 SOA 迭代过程中 A A A 的值由 2 线性减少至 0 。
在利用 S O A \mathrm{SOA} SOA 解决优化问题中, 其搜索过程非常复杂且呈 现出一个非线性下降趋势。同时, 待求问题也需要算法的探索 性和开发性行为发生非线性变化, 以避免局部最优解。若控制 参数 A A A 纯粹地以线性递减的方式模拟海鸥群体的迁移过程, 就会降低 S O A \mathrm{SOA} SOA 的寻优搜索能力。因此, 本文提出一种基于倒 S S S 型函数的非线性递减控制参数 A A A 策略, 其数学表达式为
A = f c ,  max  − ( f c ,  max  − f c ,  min  ) × 1 1 + e η − μ (12) A=f_{c, \text { max }}-\left(f_{c, \text { max }}-f_{c, \text { min }}\right) \times \frac{1}{1+\mathrm{e}^{\eta-\mu}}\tag{12} A=fc, max (fc, max fc, min )×1+eημ1(12)
其中: f c ,  max  f_{c, \text { max }} fc, max  f c ,  min  f_{c, \text { min }} fc, min  分别为频率控制参数 f c f_c fc 的最大值和最小值; η \eta η μ \mu μ 均为常数。从式 (12) 可知, 在 SOA 的寻优过程中, 参数 A A A 的值以非线性方式进行递减可增强算法的全局搜索能力, 同 时既能避开海鸥个体之间的位置重叠, 也可在全局探索和局部 开发能力上获得一个较好的平衡。

2.2 翻筋斗觅食策略

在算法搜索后期,所有海鸥个体均向当前群体中最优个体所在区域靠拢, 导致群体多样性损失, 如果当前最优个体不是 全局最优解, 则算法陷人局部最优, 这是群体智能优化算法的 固有缺点。为了克服这个缺点, 研究者在群体智能优化算法中 引人许多策略如变异算子、反向学习、Lévy 飞行、透镜成像学 习、小孔成像学习等。翻筋斗受食是蝠鲼在捕食时最有效的一 种方式, 当找到食物源时, 它们会做一系列向后翻筋斗动作, 围 绕浮游生物 (猎物) 旋转, 将其吸引到自己身边。受这种现象 启发, Zhao 等人 提出了一种新型的翻筋斗受食策略用于群 体智能优化算法中, 原理实现如下: 在这种策略中, 猎物的位置 被视为一个支点, 每只蝠鲼都倾向于围绕枢轴和翻筋斗来回游 动到一个新的位置, 其数学模型为
X ( t + 1 ) = X ( t ) + S ⋅ ( r 1 ⋅ X b e s t − r 2 ⋅ X ( t ) ) (13) X(t+1)=X(t)+S \cdot\left(r_1 \cdot X_{b e s t}-r_2 \cdot X(t)\right) \tag{13} X(t+1)=X(t)+S(r1Xbestr2X(t))(13)
其中: X X X 为蝠鲼个体位置; X best  X_{\text {best }} Xbest  是当前全局最优个体位置; S S S 称 为空翻因子; r 1 r_1 r1 r 2 r_2 r2 分别是 [ 0 , 1 ] [0,1] [0,1] 的随机数。
为了降低 S O A \mathrm{SOA} SOA 在搜索后期陷人局部最优的概率, 将蝠鲼 翻筋斗受食策略引人到 SOA 中, 其数学表达式为
P s ( t + 1 ) = P s ( t ) + S ⋅ ( r 1 ⋅ P b s − r 2 ⋅ P s ( t ) ) (14) P_s(t+1)=P_s(t)+S \cdot\left(r_1 \cdot P_{b s}-r_2 \cdot P_s(t)\right)\tag{14} Ps(t+1)=Ps(t)+S(r1Pbsr2Ps(t))(14)
其中: 空翻因子 S = 2 S=2 S=2

翻筋斗觅食海鸥优化算法-附代码

3.实验结果

翻筋斗觅食海鸥优化算法-附代码

4.参考文献

[1]徐明,龙文,羊洋.用于函数优化和特征选择的翻筋斗觅食海鸥优化算法[J].计算机应用研究,2022,39(12):3639-3643+3650.DOI:10.19734/j.issn.1001-3695.2022.05.0224.文章来源地址https://www.toymoban.com/news/detail-469797.html

5.Matlab代码

6.python代码

到了这里,关于翻筋斗觅食海鸥优化算法-附代码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于蝠鲼觅食优化的BP神经网络(分类应用) - 附代码

    摘要:本文主要介绍如何用蝠鲼觅食算法优化BP神经网络,利用鸢尾花数据,做一个简单的讲解。 本案例利用matlab公用的iris鸢尾花数据,作为测试数据,iris数据是特征为4维,类别为3个类别。数据格式如下: 特征1 特征2 特征3 类别 单组iris数据 5.3 2.1 1.2 1 3种类别用1,2,3表

    2024年02月07日
    浏览(42)
  • 智能优化算法:白鲸优化算法-附代码

    摘要:白鲸优化算法([Beluga whale optimization,BWO)是由是由 Changting Zhong 等于2022 年提出的一种群体智能优化算法。其灵感来源于白鲸的群体觅食行为。 BWO建立了探索、开发和鲸鱼坠落的三个阶段,分别对应于成对游泳、捕食和鲸落的行为。BWO中的平衡因子和鲸落概率是自适应的

    2023年04月08日
    浏览(66)
  • 智能优化算法:金枪鱼群优化算法-附代码

    摘要:金枪鱼群优化算法(Tuna swarm optimization,TSO),是于2021年提出的一种新型智能优化算法,该算法通过模拟金枪鱼群体的觅食行为,来对问题进行寻优。具有寻优能力强,收敛速度快等特点。 1.1 初始化 与其他智能优化算法一样,金枪鱼种群在搜索空间内随机初始化。 X

    2023年04月25日
    浏览(50)
  • 智能优化算法:卷积优化算法-2023 附代码

    摘要:将二维卷积运算引入智能优化算法的种群位置更新过程,提出一种新的智能优化算法,即卷积优化算法(Convolution Optimization Algorithm,COA)。 该算法主要包括卷积搜索和解质量增强 2 种机制:在卷积搜索过程中,分别定义纵向卷积核、横向卷积核和区域卷积核,依次进行二维卷积运

    2023年04月16日
    浏览(46)
  • 【单目标优化算法】杂草优化算法(Matlab代码实现)

    💥 💥 💞 💞 欢迎来到本博客 ❤️ ❤️ 💥 💥 🏆 博主优势: 🌞 🌞 🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳ 座右铭: 行百里者,半于九十。 📋 📋 📋 本文目录如下: 🎁 🎁 🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码实现 杂

    2024年02月11日
    浏览(44)
  • 路径规划算法:基于平衡优化器优化的路径规划算法- 附代码

    摘要:本文主要介绍利用智能优化算法平衡优化器算法来进行路径规划。 平衡优化器算法原理请参考:https://blog.csdn.net/u011835903/article/details/111388552 1.1 环境设定 在移动机器人的路径优化中,每个优化算法的解代表机器人的一条运动路径。优化算法会通过优化计算在众多路径

    2024年02月07日
    浏览(40)
  • 优化算法 | 人工蜂群算法(附Python代码)

    hello,大家好。各位可点击左下方阅读原文,访问公众号官方店铺。谨防上当受骗,感谢各位支持! 今天为各位更新 人工蜂群算法(Artificial Bee Colony,ABC)的Python代码 ,之前我们在MATLAB数学建模(十一) | 人工蜂群算法(附MATLAB代码)这篇推文讲解了ABC算法的基本思想,忘

    2023年04月26日
    浏览(30)
  • 智能优化算法应用:基于蛇优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    摘要:本文主要介绍如何用蛇优化算法进行3D无线传感器网(WSN)覆盖优化。 本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n R n ​ 的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n R n ​ 称为传感器节

    2024年02月03日
    浏览(43)
  • 智能优化算法应用:基于堆优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    摘要:本文主要介绍如何用堆优化算法进行3D无线传感器网(WSN)覆盖优化。 本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n R n ​ 的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n R n ​ 称为传感器节

    2024年02月02日
    浏览(52)
  • 智能优化算法应用:基于骑手优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    摘要:本文主要介绍如何用骑手优化算法进行3D无线传感器网(WSN)覆盖优化。 本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n R n ​ 的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n R n ​ 称为传感器

    2024年02月03日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包