基于精英混沌搜索策略的交替正余弦算法


文章目录

  • 基于精英混沌搜索策略的交替正余弦算法
  • 1.正余弦算法
  • 2.改进正余弦算法
  • 2.1 控制参数的非线性调整策略
  • 2.2 反向学习策略
  • 2.3 精英混沌搜索策略
  • 3.实验结果
  • 4.参考文献
  • 5.Matlab代码
  • 6.python代码



摘要:正余弦算法是一种新的基于种群的随机寻优方法,利用正余弦函数使解震荡性地趋于全局最优解,其线性调整策略及较弱的局部搜索能力严重地影响了算法的性能.为了提高正弦余弦算法的计算精度,提出基于精英混沌搜索策略的交替正余弦算法.新算法采用基于对数曲线的非线性调整策略修改控制参数,利用精英个体的混沌搜索策略增强算法的开发能力,并将基于该策略的正余弦算法与反向学习算法交替执行增强算法的探索能力,降低算法的时间复杂度,提高算法的收敛速度。

1.正余弦算法

2.改进正余弦算法

2.1 控制参数的非线性调整策略

在 SCA中, 参数 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代 起着平衡全局探索能力和局 部搜索能力的重要作用. 当 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_02 时使下一代的解 位于当前解与目标解之间, 强调算法的开发能力; 当 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_03 时解位于当前解和目标解之外, 强调算法的探索能力. 由式 (2) 可以看出, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代 随迭代次数的增加线性 递减, 在算法迭代初期, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代 的值较大, 使算法具有较强 的全局探索能力, 在算法迭代后期, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代 的值较小, 增加 了算法的开发能力. 但是, 线性变化方式不能有效地 增加 SCA 的寻优精度, 本文通过非线性函数 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_07基于精英混沌搜索策略的交替正余弦算法-附代码_迭代 进行改进. 利用自然对数在 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_09 上非线性递增的特 性, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代 的调整策略为
基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_11
其中: 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_12 为控制参数 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_13 的初始值和最终值, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_14 为调节系数. 由式(3)可以 看出, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代

2.2 反向学习策略

反向学习 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_16 是增强随机优化算法性能的 重要方法,通过贪婪选择目标函数在当前解和反向解 种群的适应度值, 增强了种群的多样性, 提高了算法 接近全局最优解的能力. 文献 [4] 提出的 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_17 在 基本 SCA 中加入反向学习策略, 提高了 SCA 的求解 精度. 本文旨在将 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_18 与反向学习策略交替进行, 以 降低算法的复杂性, 从而在改进种群多样性的同时提 高算法的收敛速度.
定义 1 反向解. 设第 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_19 代种群中第 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_20 个个体为 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_21, 记 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_22 为搜索空间中第 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_23 维的下界和上界, 令
基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_24
基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_25 为其反向解.
由式 (4) 可知, 反向学习算法通过反向策略产生 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_26 个反向解,使算法在 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_27

2.3 精英混沌搜索策略

群智能算法的优劣在于有效地平衡算法的探索 与开发能力,为了提高算法的开发能力利用混沌的 随机性、遍历性和规律性的特点, 对精英个体 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_28 进行 混沌变异. 对种群中 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_26 个个体按适应度值升序排序, 选择前 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_30 个个体作为精英个体, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_31 为选择比例, 记精英个体为 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_32 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_33 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_34. 其第 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_35 维的上下界 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_36 分 别为
基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_37
将精英个体 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_38 由解空间按式 (6)映射到 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_39, 得到混 沌变量 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_40, 有
基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_41
利用式 (7) 对 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_42 进行混沌迭代, 有
基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_43
其中: 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_44 为常数, 取值为 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_45 为混沌迭代次数, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_46 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_47 表示对 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_48 向上取整.
基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_49 达到最大迭代次数 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_50 时, 得到第 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_20 个精英 个体对应的混沌变量 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_52, 利用下式将其映射至 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_53 内, 得到对应混沌个体 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_54, 有
基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_55
对混沌个体 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_54 与原个体 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_38, 由下式生成候选 解:
基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_58
其中 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_59 为收缩因子, 其值为
基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_60
在得到的候选解 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_61 与对应精英个体 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_62 之间 采用贪婪选择策略, 选择优秀的个体 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_63 取代当前个 体 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_38, 即
基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_65
由式(10) 可以看出, 设计的收缩因子 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_59 随着迭代 次数的增加逐渐减小. 式(9) 表明, 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_59 越小, 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_62 对候选 解 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_61 的影响越小. 因此, 算法随着迭代次数的增 加, 精英个体的上下界范围逐渐缩小至目标解附近, 候选解 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_61 越侧重随机性、多样性较强的混沌个 体 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_54, 局部搜索能力越强. 精英个体的混沌变异策 略所控制的混沌搜索范围随算法迭代次数的增加逐 渐缩小, 实验验证该策略具有较强的局部搜索能力.

基于精英混沌搜索策略的交替正余弦算法(COSCA)步骤如下:

Step 1: 算法参数设置. 种群规模 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_26, 控制参数 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_13 的初始值 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_74 和最终值 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_75, 最大化迭代次数 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_76,调节系数 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_77, 精英选择比例pr.
Step 2: 初始化. 令 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_78, 随机在解搜索空中产生 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_26 个个体, 组成种群 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_80.

Step 3: 对 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_80 中的个体执行式 (4) 的反向策略, 形 成种群 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_82, 计算 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_83 中个体的函数值, 按从小到大 排序, 选择前 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_26 个个体组成初始种群 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_85, 并记录最优 个体 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_86.

Step 4: 若 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_19 为奇数, 则执行 Step 4.1; 若 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_19

Step 4.1: 对 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_85 中的个体执行 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_18 算法, 其中控 制参数 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代 如式 (3) 所示, 对个体按适应度值由小到大 排序得到种群 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_92;

Step 4.2: 对 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_85 中的个体进行式 (4) 的 OBL 策略 更新得到 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_94, 对 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_95 中的个体按函数值从小到大 排序, 选择前 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_26 个个体组成种群 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_92.

Step 5: 对 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_92 中的前 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_99 个精英个体进行式
(5) (11) 所示的精英混沌搜索, 其余 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_100 个个体 不变,形成种群 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_101.

Step 6: 记录 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_101 中最优个体 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_103, 若 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_104 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_105, 则 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索_106.

Step 7: 判断算法是否满足结束条件, 若满足, 输 出最优值 基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_105, 否则令 基于精英混沌搜索策略的交替正余弦算法-附代码_迭代_108, 转至 Step 4 .

3.实验结果

基于精英混沌搜索策略的交替正余弦算法-附代码_搜索策略_109

4.参考文献

[1]郭文艳,王远,戴芳,刘婷.基于精英混沌搜索策略的交替正余弦算法[J].控制与决策,2019,34(08):1654-1662.

5.Matlab代码

6.python代码