融合动态概率阈值和自适应变异的鲸鱼优化算法


文章目录

  • 融合动态概率阈值和自适应变异的鲸鱼优化算法
  • 1.鲸鱼优化算法
  • 2. 改进鲸鱼优化算法
  • 2.1 Fuch混沌反向学习策略初始种群
  • 2.2 动态调整概率阈值
  • 2.3 可变权重策略
  • 2.4自适应变异策略
  • 3.实验结果
  • 4.参考文献
  • 5.Matlab代码
  • 6.Python代码



摘要:针对基本鲸鱼优化算法在非线性优化问题中存在的收敛精度低、易陷入局部最优解的问题,提出一种融合动态概率阈值和自适应变异的鲸鱼优化算法.首先,利用 Fuch混沌和反向学习生成均匀的初始种群;其次,设计基于双曲余弦函数的动态调整概率阈值以协调算法全局搜索与局部开采能力,采用可变权重对鲸鱼位置更新公式修正,提高收敛速度和精度;最后,对鲸鱼精英个体引入自适应变异策略,以避免算法陷入局部最优解而搜索停滞。

1.鲸鱼优化算法

2. 改进鲸鱼优化算法

2.1 Fuch混沌反向学习策略初始种群

WOA算法采用随机方法初始种群个体, 使得 种群初始分布不均匀, 容易导致算法陷入局部最优. 研究结果表明, 采用混沌初始化和方向学习初始化 种群均可生成多样性较好的初始可行解. 混沌映射 所具有随机性、遍历性等优点, 能够保持种群多样 性. 反向学习通过搜索反向解和当前解可以获得较 好的初始种群, 进而提高收玫速度. 因此, 本文利用 这两种初始化方法优点, 提出了基于 Fuch 混沌 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python 和反向学习的种群初始化策略, 其中, Fuch 混沌映 射数学表达式如下:
融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_02

式中, 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_03 为迭代次数; 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_04

2.2 动态调整概率阈值

鲸鱼优化算法在气泡网攻击猎物(开采阶段), 采用固定的概率阈值 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_05, 通过在 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_06 之间生成的 值与概率阈值比较, 选择收缩包围或螺旋更新位置 受食行为. 这种等概率机制选择方式并末考虑算法 迭代过程种群多样性变化, 使得算法可能在迭代前 期收敛速度慢, 迭代后期陷入局部最优. 因此, 本文 引入基于双曲余弦规律变化的自适应调整选择概率 阈值策略, 使得鲸鱼个体在不同搜索期有较大概率 选择到适合当前种群多样性变化的受食行为, 以协 调算法全局探索和局部开发的能力, 提高算法收玫 精度, 数学表达式为:
融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_07
式中, 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_08 分别为调节因子; 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_09 为当前的迭代次数; 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_10

综上分析, 可将式 (7) 修改为:
融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_11

2.3 可变权重策略

由式(2)和式(6)可以看出,在每次迭代中,产生新的个体位置仅决定于当前目标个体位置和全局最优个体位置.因此,容易导致算法陷入局部最优.针对这一问题,本文受粒子群算法启发,本文设计可变权重,动态修改当前最优解位置,即在鲸鱼个体在搜索初期,采用较大权重对当前最优解位置进行扰动,扩充搜索领域,以更大概率靠近最优位置,在迭代后期以较小权重扰动当前最优位置,达到最优解领域精细搜索和快速收敛的目的.式(13)给出了权重计算公式:
融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_12
式中, 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_13融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_14 分别是当代种群个 体适应度函数的最大值; 最小值和平均值; 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_15 为当代所有比 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_14 小的鲸鱼个体适应度函数平 均值; 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_15 为当代所有比 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_14 大的鲸鱼个体 适应度函数平均值; 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_19 为第 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_09 代第 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_21 个鲸鱼个体 的适应度函数值. 结合上述分析, 本文将改进的位置 更新公式定义为:
融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_22

融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_23

2.4自适应变异策略

在 WOA 算法的迭代后期, 由于群体中所有鲸 鱼个体均依据式 (6) 向最优个体移动, 逐渐聚集于当 前最优解领域, 致使群体多样性损失, 则 WOA 算法 易陷入局部最优而搜索停滞. 为了降低算法早熟收 玫和陷入局部最优的概率, 本文提出了一种随迭代 次数动态调整的柯西与高斯混合变异机制, 对当前 种群中适应度值最好的前 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_24 个最优个体进行自适应 变异操作, 并从变异前后的精英个体中选择最优个 体进入下一次迭代, 其具体表达式如下:
融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_25

式中, 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_26 为第 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_27 个最优个体在第 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_09 代时第 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_29 维空间位置; cauch 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_30 为满足柯西分布的随机 变量; gauss 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_31 为满足高斯分布的随机变量; 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_32 表示变异后位置; 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_33 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_34 为动态调整参数; 标准差 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_35 取值为:
融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_36
式中, cauch y 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_31 的权重系数 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_38 在前期取值相对 较大, 并以较大变异步长在更大范围搜索空间探索 可能的最优解, 在优化后期, 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_38 逐渐减小, 而 cauch 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_30 权重系数 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_41 不断增大. 而Gauss 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_31

算法流程:

Step1 : 设置种群规模 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_43, 维度 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_44, 迭代次数最大 次数 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_算法_45, 迭代次数初值 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_46;

Step2 : 利用 Fuch 混沌反向学习策略生成初始 鲸鱼种群, 并计算群体中每个个体的适应度值,记录 当前最优鲸鱼个体位置 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_47,根据式 (5) 计算 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_机器学习_48 的 值, 依次更新参数 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_49.
Step3 : 根据式 (11) 计算动态概率阈值 ath.
Step4 : 如果 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_50, 依据式 (9) 更新当前鲸鱼 个体位置, 否则, 如果 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_51, 按照式 (12) 更新当 前每个鲸鱼个体位置, 否则, 依据式 (15) 更新当前 每个鲸鱼个体位置,计算当前所有鲸鱼个体的适应 度值, 进行排序, 更新当 前最优鲸 鱼个体位置 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_迭代_47.

Step 5 : 在当前种群中选择适应度值最好的前 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_优化算法_53

Step6 : 对变异前后的精英个体适应度值进行比 较,采取贪婪选择策略,选取适应度值更优的精英个 体进入下一次迭代;

Step 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_54, 若 融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_55, 转 Step2, 否则算法 结束.

3.实验结果

融合动态概率阈值和自适应变异的鲸鱼优化算法-附代码_python_56

4.参考文献

[1]毕孝儒,牟琦,龚尚福.融合动态概率阈值和自适应变异的鲸鱼优化算法[J].微电子学与计算机,2019,36(12):78-83+88.

5.Matlab代码

6.Python代码