基于自适应调整权重和搜索策略的鲸鱼优化算法

文章目录

  • 基于自适应调整权重和搜索策略的鲸鱼优化算法
    • 1.鲸鱼优化算法
    • 2. 改进鲸鱼优化算法
      • 2.1 自适应调整权重
      • 2.2 自适应调整搜索策略
    • 3.实验结果
    • 4.参考文献
    • 5.Matlab代码
    • 6.Python代码

摘要:针对鲸鱼优化算法( WOA) 收敛速度慢、收敛精度低、易陷入局部最优的问题,提出一种基于自适应调整权重和搜索策略的鲸鱼优化算法( AWOA) . 设计一种随着鲸鱼种群变化情况而自适应调整权重的方法,提高了算法的收敛速度; 设计一种自适应调整搜索策略,提高了算法跳出局部最优的能力。

1.鲸鱼优化算法

基础鲸鱼算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/107559167

2. 改进鲸鱼优化算法

2.1 自适应调整权重

惯性权重作为鲸鱼优化算法中一个重要的参 数, 对目标函数的优化求解起到了很大的作用. 合 适的权重值对算法寻优能力的提升有很大帮助. 由于 W O A \mathrm{WOA} WOA 在优化求解的过程中, 线性的惯性权 重调整策略若选择不合适, 将影响算法的收敛速 度. 因此, 本文提出了一种根据当前鲸鱼种群分布 情况来自适应改变权值的大小, 公式如下:
w = d 1 ⋅ ( P i worst  − P i ibest  ) + d 2 ⋅ ( x i upper  − x i lower  ) / n g ⋅ (5) w=d_{1} \cdot\left(\boldsymbol{P}_{i \text { worst }}-\boldsymbol{P}_{i \text { ibest }}\right)+d_{2} \cdot\left(x_{i}^{\text {upper }}-x_{i}^{\text {lower }}\right) / n_{\mathrm{g}} \cdot \tag{5} w=d1​⋅(Pi worst ​−Pi ibest ​)+d2​⋅(xiupper ​−xilower ​)/ng​⋅(5)
(5) 式中: n g n_{\mathrm{g}} ng​ 表示当前种群的迭代次数; x i upper  x_{\mathrm{i}}^{\text {upper }} xiupper ​ 和 x i lower  x_{\mathrm{i}}^{\text {lower }} xilower ​ 分别为变量 x i x_{i} xi​ 的上界和下界; P iwort  \boldsymbol{P}_{\text {iwort }} Piwort ​ 和 P ibest  \boldsymbol{P}_{\text {ibest }} Pibest ​ 分别为 当前鲸鱼种群中最差鲸鱼的位置向量和最优鲸鱼 的位置向量; d 1 d_{1} d1​ 和 d 2 d_{2} d2​ 是两个常数. 因此, 当前鲸鱼 个体自适应调整权重收缩包围更新位置和自适应 调整权重螺旋更新位置公式如下:
X ( t + 1 ) = w ⋅ X ∗ ( t ) − A ⋅ D (6) \boldsymbol{X}(t+1)=w \cdot \boldsymbol{X}^{*}(t)-A \cdot \boldsymbol{D} \tag{6} X(t+1)=w⋅X∗(t)−A⋅D(6)

X ( t + 1 ) = w ⋅ X ∗ ( t ) + D p ′ ⋅ e b ⋅ ⋅ cos ⁡ ( 2 π l ) (7) \boldsymbol{X}(t+1)=w \cdot \boldsymbol{X}^{*}(t)+\boldsymbol{D}_{p}^{\prime} \cdot \mathrm{e}^{b \cdot} \cdot \cos (2 \pi l) \tag{7} X(t+1)=w⋅X∗(t)+Dp′​⋅eb⋅⋅cos(2πl)(7)

在引人自适应调整权重搜索策略后, 算法可 以根据当前鲸鱼种群的分布情况自适应地改变权 值的大小. 在算法迭代初期, 若鲸鱼种群陷人局部 最优解, 并且最优解和最差解差别不大时, d 2 ⋅ ( x i upper  − x i lower  ) / n g d_{2} \cdot\left(x_{i}^{\text {upper }}-x_{i}^{\text {lower }}\right) / n_{\mathrm{g}} d2​⋅(xiupper ​−xilower ​)/ng​ 的值并不受种群分布情况的 影响, 这部分的设计依然可以得到较大的权重值 w w w, 避免了算法在迭代初期就陷人小范围搜索的 缺陷; 随着鲸鱼种群迭代次数的增加, d 2 ⋅ ( x i upper  − d_{2} \cdot\left(x_{i}^{\text {upper }}-\right. d2​⋅(xiupper ​− x i lower  ) / n g \left.x_{i}^{\text {lower }}\right) / n_{\mathrm{g}} xilower ​)/ng​ 的值会逐渐变小, 其对权重 w w w 的影响减 小,若此时算法并末得到最优解, d 1 ⋅ ( P iworst  − d_{1} \cdot\left(\boldsymbol{P}_{\text {iworst }}-\right. d1​⋅(Piworst ​− P ibest  ) \left.\boldsymbol{P}_{\text {ibest }}\right) Pibest ​) 的设计就可以对权重值 w w w 起到主导作用, 可以使算法以较大的步长寻优. 这样设计自适应 调整权重 w w w 的好处在于, 其值由两部分决定, 前 半部分对种群迭代次数过大时起主要调节作用, 后半部分对种群陷人局部最优时起主要调节作 用. 权重 w w w 前后两部分会根据当前种群位置的变 化情况而发生变化, 不拘于某种固定的形式, 具 有很强的自适应性.

2.2 自适应调整搜索策略

为防止算法陷入局部最优,随机搜索阶段,个体根据概率阈值 Q 来选取随机搜索的更新方式概率阈值定义为
Q = ∣ f ˉ − f min ⁡ ∣ ∣ f max ⁡ − f min ⁡ ∣ (8) Q=\frac{\left|\bar{f}-f_{\min }\right|}{\left|f_{\max }-f_{\min }\right|} \tag{8} Q=∣fmax​−fmin​∣∣ ∣​fˉ​−fmin​∣ ∣​​(8)
式中: f ˉ \bar{f} fˉ​ 表示当前鲸鱼种群的平均适应度值; f min  f_{\text {min }} fmin ​ 为当前鲸鱼种群中最好的适应度值; f max ⁡ f_{\max } fmax​ 为当前鲸 鱼种群中最差的适应度值. 对于每个鲸鱼个体, 以 一个 [ 0 , 1 ] [0,1] [0,1] 之间的随机数 q q q 与计算出的概率阈值 Q Q Q 进行数值比较. 若 q < Q q<Q q<Q, 随机选取的鲸鱼个体 X rand  \boldsymbol{X}_{\text {rand }} Xrand ​ 根据式( 9) 更新其位置, 其他鲸鱼个体位置不 变; 否则, 其他鲸鱼个体根据式 (4) 更新其位置. 这样设计使得算法在迭代前期能以较大的概率在 全局范围内随机产生一组解, 避免鲸鱼因聚集在 一起而导致种群多样性的缺失, 增强了算法的全 局搜索能力.
X rand  = X j min  + r ⋅ ( X j max  − X j min  ) (9) \boldsymbol{X}_{\text {rand }}=\boldsymbol{X}_{j \text { min }}+r \cdot\left(\boldsymbol{X}_{\boldsymbol{j} \text { max }}-\boldsymbol{X}_{\boldsymbol{j} \text { min }}\right) \tag{9} Xrand ​=Xj min ​+r⋅(Xj max ​−Xj min ​)(9)
式中: r r r 为 [ 0 , 1 ] [0,1] [0,1] 之间的随机数; X min  , X max  \boldsymbol{X}_{\text {min }}, \boldsymbol{X}_{\text {max }} Xmin ​,Xmax ​ 分别为 变量 X rand  \boldsymbol{X}_{\text {rand }} Xrand ​ 取值的最小值和最大值.

3.实验结果

4.参考文献

[1]孔芝,杨青峰,赵杰,熊浚钧.基于自适应调整权重和搜索策略的鲸鱼优化算法[J].东北大学学报(自然科学版),2020,41(01):35-43.

5.Matlab代码

6.Python代码

基于自适应调整权重和搜索策略的鲸鱼优化算法-附代码相关推荐

  1. 基于自适应调整权重和搜索策略的鲸鱼优化算法

    文章目录 一.理论基础 1.鲸鱼优化算法 2.鲸鱼优化算法的改进 (1)自适应调整权重 (2)自适应调整搜索策略 (3)AWOA流程图 二.仿真对比与分析 三.参考文献 一.理论基础 1.鲸鱼优化算法 ...

  2. 一种基于交叉选择的柯西反向鲸鱼优化算法 -附代码

    一种基于交叉选择的柯西反向鲸鱼优化算法 文章目录 一种基于交叉选择的柯西反向鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 柯西反向学习 2.2 引入交叉与选择策略的鲸鱼优化算法 3. ...

  3. 基于混沌的正余弦鲸鱼优化算法-附代码

    基于混沌的正余弦鲸鱼优化算法 文章目录 基于混沌的正余弦鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 混沌初始化种群和参数优化 2.2 正余弦鲸鱼优化算法 2.3 混沌自适应的惯性权 ...

  4. 具有自适应搜索策略的灰狼优化算法-附代码

    具有自适应搜索策略的灰狼优化算法 文章目录 具有自适应搜索策略的灰狼优化算法 1.灰狼优化算法 2. 改进灰狼优化算法 2.1 自适应调整策略 2. 2 跳出局部最优策略 2.3 最优学习搜索方程 3 ...

  5. 具有随机分形自适应搜索策略的蚁狮优化算法-附代码

    具有随机分形自适应搜索策略的蚁狮优化算法 文章目录 具有随机分形自适应搜索策略的蚁狮优化算法 1.蚁狮优化算法 2. 改进蚁狮优化算法 2.1 蚂蚁随机分形搜索方程 2.2 蚁狮自适应搜索方程 3.实 ...

  6. 混沌策略和单纯形法改进的鲸鱼优化算法-附代码

    混沌策略和单纯形法改进的鲸鱼优化算法 文章目录 混沌策略和单纯形法改进的鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 混沌反向学习初始化种群 2.2 非线性收敛因子和自适应权重策略 ...

  7. 一种改进的鲸鱼优化算法-附代码

    一种改进的鲸鱼优化算法 文章目录 一种改进的鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 准反向学习初始化种群 2.2 非线性收敛因子 2.3 自适应权重策略与随机差分法变异策略 3 ...

  8. 基于差分进化与优胜劣汰策略的灰狼优化算法-附代码

    基于差分进化与优胜劣汰策略的灰狼优化算法 文章目录 基于差分进化与优胜劣汰策略的灰狼优化算法 1.灰狼优化算法 2. 改进灰狼优化算法(IGWO) 2.1 GWO 算法中的差分进化 2.2 狼群算法中 ...

  9. 基于 Iterative 映射和单纯形法的改进灰狼优化算法-附代码

    基于 Iterative 映射和单纯形法的改进灰狼优化算法 文章目录 基于 Iterative 映射和单纯形法的改进灰狼优化算法 1.灰狼优化算法 2. 改进灰狼优化算法(SMIGWO) 2.1 混沌 ...

最新文章

  1. 获取GridView中的某列值
  2. Excel 经纬度度分秒转化为小数格式
  3. 展望数据中心市场未来十年发展趋势
  4. 第五章 云原生与容器技术
  5. 动态执行shell脚本
  6. 华为Mate 30 Pro相机要上天了:主摄或达8100万像素
  7. 【Java】List 按照字符串里的数值排序
  8. Burp Suite
  9. 3500简介_古巴比伦,公元前3500年建立文明!四大文明之首为何被灭?
  10. 全国30m精度土壤类型分布矢量数据、土壤理化性质数据集
  11. 编译java源代码文件
  12. 会声会影2022Win64中文版特别版
  13. 宇视EZVMS系统通过GB28181协议接入EasyGBS的步骤说明
  14. 联通一直显示无法连接服务器是怎么回事,联通宽带无法连接服务器1404
  15. R语言windows函数自动生成可视化图像画布框、使用plot函数可视化数据点图、使用type参数指定数据点为实线
  16. EKL日志分析平台-kibana数据可视化
  17. 测试代理ip是否有效
  18. 使用Servlet和JSP开发Java应用程序 ---- 查询四六成绩
  19. Java多线程(上篇)
  20. c++ 继承的同名成员以及同名函数的处理方式

热门文章

  1. Me Too不必撕破脸,几个表情包把油腻中年怼上天!
  2. HTML里如何让图片对齐
  3. React Fiber 原理实现
  4. 微信营销的7个重要流程
  5. MyBatis 批量插入数据到Oracle
  6. python (建立文件)制作英文字典
  7. SAP Ehancement Package 7 for ERP 6.0 Install Step By Step -07
  8. 国内如何购买Google Colab会员
  9. Mettle Mantra(AE全景视频特效插件)v1.27版本更新
  10. mysql 豆瓣,爬取豆瓣电影Top250并存入Mysql