混沌映射与动态学习的自适应樽海鞘群算法


文章目录

  • 混沌映射与动态学习的自适应樽海鞘群算法
  • 1.樽海鞘群算法
  • 2.改进樽海鞘群算法
  • 2.1 基于改进 Tent 映射的种群初始化
  • 2.2 基于 Logistic映射的领导者更新
  • 2.3 基于动态学习的追随者更新
  • 2.4 种群自适应划分机制
  • 3.实验结果
  • 4.参考文献
  • 5.Matlab代码
  • 6.python代码



摘要:针对传统樽海鞘群算法寻优精度低、易于陷入局部最优的问题,提出基于混沌映射与动态学习的自适应樽海鞘群算法。引入改进混沌Tent映射实现种群初始化,确保更加均匀的搜索空间;设计基于Logistic映射的领导者更新机制,有效增强种群多样性;利用基于动态学习的追随者更新机制,使算法跳出局部最优,提升全局搜索能力;设计领导者/追随者规模的自适应调整机制,有效均衡种群的局部开发和全局勘探能力。

1.樽海鞘群算法

2.改进樽海鞘群算法

2.1 基于改进 Tent 映射的种群初始化

初始种群直接影响群体智能算法的收敛速度和寻优精度。传统的SSA的种群初始化主要以随机方式生成。而随机化初始化种群无法确保种群在搜索空间中的均匀分布。混沌序列呈现规律性、随机性和遍历性等特点。比较完全随机化,融合混沌序列的樽海鞘群初始种群具有更好的多样性。混沌序列的主要思想是通过在区间[0,1]间的映射关系产生混沌序列,并将其转换至种群的搜索空间中。混沌序列的生成方式有多种,以 Tent映射生成序列均匀性更好。但 Tent映射生成的混沌序列存在小周期和不确定周期点的不足。综合考虑以上问题, 结合完全随机化特点, 将传统 Tent 混池映射中添加随机变量 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应, 得到 Tent 映射为
混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_02
式中: 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_03 表示种群规模, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_04 表示混池序号, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_05 表示 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_06 间的随机数, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_07 表示混池参 数, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_08 值越大, 混池性能越优, 式(6)即为一 种混池系统。对式 (6) 取相应初始值后, 即可得到 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_09 个混 池序列 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_10 。然后对混池序列进行逆映射, 即可生成种群个 体的位置变量 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_11, 表示为
混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_12
式中: 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_13 表示个体位置 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_11

2.2 基于 Logistic映射的领导者更新

混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_15 中, 领导者以食物源为目标进行全局搜索。然而, 以食物源为牵引的领导者更新可以加速算法收敛, 但其全 局勘探不够充分, 遍历性不足, 且受初始种群影响较大, 易于陷入局部最优。由式(2)可知, 领导者更新主要受收 敛因子 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_16 和缩放因子 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_17 的影响, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_16 随迭代数变化, 而 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_17 是均匀分布的随机量, 决定算法全局勘探范围。然而, 完 全随机搜索存在斍目性, 会导致全局勘探阶段中的领导者 位置准确性较低。本文引入混池 Losgitic 映射提升领导者 搜索的有效性,在每一次迭代中生成伪随机分布状态值, 扩展 SSA搜索过程的随机性以及遍历性, 实现比完全均匀 分布更为合理的搜索过程。如前文所述, 混池是一种非线性的动态随机非重复决 策系统, 表征对初始条件的敏感性, 是一种无限非稳定的 周期运动。由于混池的可遍历性及非重复性, 它可以更有 效实现比随机搜索 (由随机值 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_17 决定) 更为广泛的搜索过 程。将混池系统融入 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_15 的领导者位置更新中可以增强算 法的搜索能力, 更好预防陷入局部最优解。算法利用 Logistic 混池映射生成混沈序列, 形式化为
混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_22
其中, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_23 即为生成的 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_06 间的混池值, 迭代初始时的 混池初值 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_25 在每次独立运行过程中随机生成, 但不可取 值为 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_26 和 1 , 这是由 Logistic 混池映射 的非周期性决定的。 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_27 取值为 4 , 在朱代趋向无穷时, 用于 控制混池值的行为。对于可变的 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_27 取值的 Logistic 映射行为 如图 1 所示。对于较小的 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_27 取值, 即 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_30, 混池值 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_23 始终 收敛在单一量上。当 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_32 时, 混沈值 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_23 开始在两个取值 间振荡, 这一特征行为改变称为分吱点。对于 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_34 时, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_23 进一步出现分歧, 并导致最终的混池行为。
基于 Logistic 映射的领导者位置更新方式如下
混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_36

2.3 基于动态学习的追随者更新

SSA 中, 追随者完成局部开发过程。由式(5)可知, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_15 的追随者位置更新不受任意随机参数的影响, 完全取 决于樽海萷个体的前次迭代位置和紧邻的前一个体位置的 影响, 与领导者位置不发生直接作用。这种首尾相连机制 可以使算法进行充分的局部开发过程。若领导者末陷入局 部最优, 可以寻得全局最优, 追随者顺势可以在最优解区 域进一步做精细搜索, 可以避免全局最优区域内的小范围 局部最优解, 寻优精度更极致。然而, 当领导者陷入局部 最优时, 追随者在局部最优区域的精细搜索会导致搜索无 法跳出局部最优, 寻优精度和整体稳定性都会受影响。为 了增强领导者精英个体对于追随者的影响, 引入动态学习 机制的追随者更新机制。具体方法是:首先, 比较前次迭 代中个体位置 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_11 和相邻个体位置 混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_39 的适应度, 在适应 度较大的位置上(即离最优值距离较远的位置)引入惯性 权重 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_40, 降低适应度较差个体位置的影响权重, 而增加适 应度较优的个体位置的影响权重。基于动态学习自适应惯 性权重的追随者位置更新方式为
混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_41
式中: 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_40 表示学习权重, 随迭代次数发生改变, 定义为
混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_43

2.4 种群自适应划分机制

混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_15 中, 若樽海䩴种群规模为 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_45, 领导者是樽海鞘种 群中链首位置的个体, 数量为 1 , 剩余个体均为追随者个 体, 故数量为 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_46 。极少的领导者导致算法迭代早期进行 全局勘探的领导者数量极度不足, 追随者数量讨高, 全局 勘探不充分, 局部开发过于精细, 易于陷入局部最优; 而 在迭代晩期则正好相反, 局部开发过程缺乏, 寻优精度过 低。为了解决这一问题, 引入种群自适应划分机制, 利用正切三解函数的非线性控制方法, 将樽海䩗种群中领导者 和追随者数量做自适应调整, 使领导的规模随迭代次数自 适应递减趋势, 追随者数量相应随迭代次数自适应递增, 使 SSA在迭代早期侧重于多领导者的全局勘探, 提升收敛 速度, 而晩期侧重于多追随者的局部开发, 提升守优精度。 具体数量计算如下:

种群中领导者数量为 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_47, 追随者数量为 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_48, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_49 表示比例因子, 定义为

混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_50

式中: 混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_51 表示比例初值, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_52 表示比例终值, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_53 表示调节 系数, 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_54 。可知, 比例因子 混沌映射与动态学习的自适应樽海鞘群算法-附代码_自适应_49 随着迭代数呈非线性改变, 可以动态变更种群中领导者和追随者的配比, 从而均衡算 法的局部开发和全局勘探能力。

混沌映射与动态学习的自适应樽海鞘群算法-附代码_搜索空间_56

3.实验结果

混沌映射与动态学习的自适应樽海鞘群算法-附代码_初始化_57

4.参考文献

[1]卓然,王未卿.混沌映射与动态学习的自适应樽海鞘群算法[J].计算机工程与设计,2021,42(07):1963-1972.

5.Matlab代码

6.python代码