基于非线性收敛因子和局部扰动的鲸鱼算法-附代码
  yOv1KlRBtRV9 2023年11月02日 89 0


基于非线性收敛因子和局部扰动的鲸鱼算法


文章目录

  • 基于非线性收敛因子和局部扰动的鲸鱼算法
  • 1.鲸鱼优化算法
  • 2. 改进鲸鱼优化算法
  • 2.1 非线性收敛因子
  • 2.2 局部扰动
  • 3.实验结果
  • 4.参考文献
  • 5.Matlab代码
  • 6.Python代码



摘要:为提高鲸鱼算法的收敛速度和寻优精度,提出一种基于非线性收敛因子和局部扰动的鲸鱼优化算法。引入非线性收敛因子,提高鲸鱼种群的多样性,扩大鲸鱼搜索食物的范围;在鲸鱼包围捕食阶段,采用一种局部扰动策略,使算法在跳出局部极值时的能力增强,提高算法的寻优精度。

1.鲸鱼优化算法

2. 改进鲸鱼优化算法

2.1 非线性收敛因子

从基本鲸鱼算法中的式 (5)可以看出,收敛因子a 从2 线性递减到 0 , 在整个算法中递减速度相同, 这样大大降 低了鲸鱼种群的多样性和灵活性, 使算法前期搜索和后期 寻优失去平衡。为了解决该问题, 引入了非线性收玫因子。 其具体表达式如下
基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法
式中: 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_概率论_02 为常量系数。 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_03 是区间 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_迭代_04 之间的随机 数, 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_机器学习_05 是当前迭代次数, 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_06 是最大迭代次数, 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_07 是自然常 数。收玫因子 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_07 随进化迭代次数的增加而非线性递减, 在 初期 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_07 的衰减程度较低, 鲸鱼能够以较大步幅移动, 更好 地寻找全局最优解。到了后期, 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_07

2.2 局部扰动

从基本鲸鱼算法的包围猎物阶段中可以看出, 鲸鱼个 体以当前最优个体作为参照物进行移动, 这样的移动方式 极易使算法陷入局部最优解。为了进一步提高算法全局收 敛精度, 避免算法陷入局部极值。在包围猎物阶段鲸鱼个 体进行位置更新后, 增加了随机扰动机制。其具体扰动方 式如下
基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_迭代_11
式中: 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_12 是末扰动前的鲸鱼个体, 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_13 是扰动后的鲸鱼个体。 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_机器学习_05 是当前迭代次数, 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_06 是最大迭代次数。 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_机器学习_16 是非线性扰动系 数, 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法_17基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_迭代_18 分别为 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_机器学习_16

算法伪代码:

(1) 初始化参数, 初始化鲸鱼个体数 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法_20, 最大迭代次 数 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_06 以及空间维数 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_概率论_22
(2) 随机产生每只鲸鱼的位置 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法_23, 根据适应度函数 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法_24, 求出每只鲸鱼的适应度函数值, 并且找出当前最 优值 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_概率论_25 和当前最优鲸鱼位置 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_算法_26
(3) while 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_机器学习_27
(4) for 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法_28
(5) 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_迭代_29 if 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_机器学习_30
(6) if 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_迭代_31
(7) 执行式 (7)
(8) elseifabs 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法_32 A 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_概率论_33
(9)执行式(1)、式(2)、式(10)、式 (11)
(10) end
(11) elseif 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法_34
(12) 执行式 (7)

(13) end
(14) end
(15) 基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_概率论_35
(16) end

3.实验结果

基于非线性收敛因子和局部扰动的鲸鱼算法-附代码_优化算法_36

4.参考文献

[1]于俊洋,高宁杰,李涵.基于非线性收敛因子和局部扰动的鲸鱼算法[J].计算机工程与设计,2019,40(10):2861-2866.

5.Matlab代码

6.Python代码


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
yOv1KlRBtRV9