基于信息共享搜索策略的自适应灰狼算法

文章目录

  • 基于信息共享搜索策略的自适应灰狼算法
    • 1.灰狼优化算法
    • 2. 改进灰狼优化算法
      • 2.1 Iterative 混沌映射初始化
      • 2.2 非线性自适应收敛因子
      • 2.3 信息共享搜索策略
    • 3.实验结果
    • 4.参考文献
    • 5.Matlab代码
    • 6.python代码

摘要: 针对基础灰狼优化算法(GWO)种群多样性不足和易于陷入局部最优的缺点,从混沌初始化和种群间信息共享两个角度,提出一种基于信息共享搜索策略的改进灰狼优化算法(ISIAGWO)。首先,使用iterative混沌映射初始化种群保证种群的多样性,并引入自适应动态算子增加优秀个体权重;其次,使用信息共享搜索策略更新种群有效避免算法陷入局部最优。

1.灰狼优化算法

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

2. 改进灰狼优化算法

2.1 Iterative 混沌映射初始化

标准 GWO 算法中随机生成灰狼种群, 导致灰 狼个体的位置容易聚集, 减弱种群的多样性。混沌 映射初始化种群使得种群在搜索空间内均匀分布, 增大了灰狼个体间信息交换的概率, 因此使用 iterative 混沌映射初始化种群是可行的。标准 iterative 混沌映射函数如下所示:
xk+1=sin⁡(bπxk)(9)x_{k+1}=\sin \left(\frac{b \pi}{x_k}\right) \tag{9} xk+1​=sin(xk​bπ​)(9)
式中, b∈(0,1)\mathrm{b} \in(0,1)b∈(0,1), 本文取 b=0.5,xk\mathrm{b}=0.5, x_kb=0.5,xk​ 为第 k\mathrm{k}k 次迭代 xxx 的值。为了进一步说明本文所采用的 iterative 混沌 映射相对于其他典型混沌映射的优势, 参考了文献 [9]和文献[10]中的仿真实验, 并结合所参考文献中 的最大 Lyapunov 指数以及所测试函数的平均值和 标准差来看, iterative 混沌映射要优于 circle 混沌映 射、tent混沌映射和 sinusoidal 混沌映射等一维映射, 有着更好的混沌遍历性且鲁棒性更强。

2.2 非线性自适应收敛因子

标准的 GWO\mathrm{GWO}GWO 算法中, 收敛因子 aaa 为线性递减, 使得算法后期的局部搜索能力显著降低。算法的整 体搜索能力是算法性能的关键, 将下不完全 gamma 函数来更新收敛因子 aaa, 有效平衡了算法的全局和 局部搜索能力,其表达式如下所示:
a=alb+aub−albλ∗gamma⁡(λ,1−tMaxIter )(10)a=a_{l b}+\frac{a_{u b}-a_{l b}}{\lambda} * \operatorname{gamma}\left(\lambda, 1-\frac{t}{\text { MaxIter }}\right) \tag{10} a=alb​+λaub​−alb​​∗gamma(λ,1− MaxIter t​)(10)
其中, auba_{u b}aub​ 和 alba_{l b}alb​ 分别为 aaa 的上下界, ttt 为算法当前 迭代次数, MaxIter 为最大迭代次数, λ\lambdaλ 为随机数, 文中取 λ=0.01\lambda=0.01λ=0.01 。

由式 (8) 可知, α,β,δ\alpha, \beta, \deltaα,β,δ 狼的权重为同一权重,
而整个种群的狩猎行为由 α\alphaα 狼领导, 为了增快算法 的求解速度, 本文将增加 α\alphaα 狼的权重并添加随机扰 动, 虽降低算法稳定性但益于跳出局部最优, 具体 更新公式如下:
X(t+1)=X12+X23+X36+randn 10(11)X(t+1)=\frac{X_1}{2}+\frac{X_2}{3}+\frac{X_3}{6}+\frac{\text { randn }}{10} \tag{11} X(t+1)=2X1​​+3X2​​+6X3​​+10 randn ​(11)
其中, randn 为标准正太分布的随机数。

2.3 信息共享搜索策略

在基础的 GWO\mathrm{GWO}GWO 中, α、β\alpha 、 \betaα、β 和 δ\deltaδ 将 ω\omegaω 以一 定概率引导至目标解的搜索空间中, 这种行为容易 出现种群聚集, 算法跳出局部最优能力不足, 另一个副作用则是减少了种群多样性, 种群间缺乏交 流。针对这一问题, 根据信息共享理论的内涵提出 了一种新型搜索策略,包扩信息初始化、信息共享 以及信息更新三个步骤。
狼群信息初始化阶段:在给定的搜索空间内随 机分布狼群, 具体的表达式如下: Xij=lbj+k∗(ubj−lbj),i∈[1,N],j∈[1,D]X_{i j}=l b_j+k *\left(u b_j-l b_j\right), i \in[1, N], j \in[1, D]Xij​=lbj​+k∗(ubj​−lbj​),i∈[1,N],j∈[1,D] (12)

其中, lbjl b_jlbj​ 和 ubju b_jubj​ 为搜索空间的上下界, kkk 为区间 (0,1)(0,1)(0,1) 的随机数, NNN 为种群数, DDD 为问题的维数。 可得,第 ttt 次迭代中第 iii 头狼的位置向量为 Xi(t)={Xi1,Xi2,…,XiD}X_i(t)=\left\{X_{i 1}, X_{i 2}, \ldots, X_{i D}\right\}Xi​(t)={Xi1​,Xi2​,…,XiD​}, 适应度值由 F(Xi(t))F\left(X_i(t)\right)F(Xi​(t)) 表示。
狼群信息共享阶段:每一头狼都作为候选解, 并与附近的狼进行信息共享, 如式 (13)。

Ni(t)={Xj(t)∣Ei(Xi(t),Xj(t))≤Ri(t),Xj(t)∈Pop}N_i(t)=\left\{X_j(t) \mid E_i\left(X_i(t), X_j(t)\right) \leq R_i(t), X_j(t) \in P o p\right\}Ni​(t)={Xj​(t)∣Ei​(Xi​(t),Xj​(t))≤Ri​(t),Xj​(t)∈Pop} (13)

其中, EiE_iEi​ 表示 Xi(t)X_i(t)Xi​(t) 和 Xj(t)X_j(t)Xj​(t) 的欧式距离, Pop 代 表整个种群, Ri(t)R_i(t)Ri​(t) 为当前狼位置 Xi(t)X_i(t)Xi​(t) 和候选狼 Xi(t+1)X_i(t+1)Xi​(t+1) 之间的欧式距离。
由上述可知, 狼群的信息共享环境已成功构 成, 其中个体的领域根据式 (13) 构造。通过维度 信息共享的狼群候选解如下所示: Xi−IS,d(t+1)=Xi,d(t)+rand⁡∗(Xn,d(t)−Xr,d(t))X_{i-I S, d}(t+1)=X_{i, d}(t)+\operatorname{rand} *\left(X_{n, d}(t)-X_{r, d}(t)\right)Xi−IS,d​(t+1)=Xi,d​(t)+rand∗(Xn,d​(t)−Xr,d​(t)) (14)

其中, Xr,d(t)X_{r, d}(t)Xr,d​(t) 为所种群中随机选取的个体, Xi−IS(t+1)X_{i-I S}(t+1)Xi−IS​(t+1) 为信息共享搜索策略更新后的个体。

狼群信息更新阶段: 对 Xi−IS(t+1)X_{i-I S}(t+1)Xi−IS​(t+1) 和 Xi(t+1)X_i(t+1)Xi​(t+1) 进行适应度值比较, 选出较优个体, 更新公式如式 (15)。
Xi(t+1)={Xi(t+1),if f(Xi(t+1))<f(Xi−IS(t+1))Xi−IS(t+1)otherwise (15)X_i(t+1)=\left\{\begin{array}{l} X_i(t+1), \text { if } f\left(X_i(t+1)\right)<f\left(X_{i-I S}(t+1)\right) \\ X_{i-I S}(t+1) \text { otherwise } \end{array}\right.\tag{15} Xi​(t+1)={Xi​(t+1), if f(Xi​(t+1))<f(Xi−IS​(t+1))Xi−IS​(t+1) otherwise ​(15)
ISIAGWO 算法具体步骤如下:

  1. 算法的参数设定: 狼群规模 PopP o pPop, 维度 DDD, 最 大迭代次数 MaxIter, 混沌初始化控制参数 bbb, 下 不完全 gamma 函数中的随机变量 λ\lambdaλ 等参数;
  2. 采用iterative 混沌映射式(9)初始化灰狼种 群;
  3. 对灰狼种群进行的适应度值计算并排序, 依据 等级制度笁选出优势灰狼个体;
  4. 根据非线性自适应动态参数控制策略, 由式 (10) 计算参数 aaa, 并根据式 (3) 和 (4) 计算 AAA 和 CCC 的 值。
  5. 根据式 (6-8) 对灰狼个体的位置进行初步更新, 形成候选解 X(t+1)X(t+1)X(t+1);
    6 ) 采用信息共享搜索策略形成新的候选解 Xi−IS(t+1)X_{i-I S}(t+1)Xi−IS​(t+1), 根据式 (11-14) 对种群中的个体进 行信息初始化、信息共享以及信息更新;
  6. 更新狼群个体适应度值, 并根据式 (15) 对种 群进行更新, 选取较优个体;
  7. 算法达到最大迭代次数, 输出最优灰狼个体 XαX_\alphaXα​, 算法运行结束, 否则返回步骤 3)。

3.实验结果

4.参考文献

[1]吴昌友,付熙松,裴均珂.基于信息共享搜索策略的自适应灰狼算法研究[J/OL].电光与控制:1-10[2022-01-18].http://kns.cnki.net/kcms/detail/41.1227.TN.20210820.1551.015.html.

5.Matlab代码

6.python代码

基于信息共享搜索策略的自适应灰狼算法-附代码相关推荐

  1. 路径规划算法:基于入侵杂草优化的路径规划算法- 附代码

    路径规划算法:基于入侵杂草优化的路径规划算法- 附代码 文章目录 路径规划算法:基于入侵杂草优化的路径规划算法- 附代码 1.算法原理 1.1 环境设定 1.2 约束条件 1.3 适应度函数 2.算法 ...

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

    基于自适应调整权重和搜索策略的鲸鱼优化算法 文章目录 基于自适应调整权重和搜索策略的鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 自适应调整权重 2.2 自适应调整搜索策略 3.实验 ...

  3. 基于莱维飞行和随机游动策略的灰狼算法-附代码

    基于莱维飞行和随机游动策略的灰狼算法 文章目录 基于莱维飞行和随机游动策略的灰狼算法 1.灰狼优化算法 2. 改进灰狼优化算法 2.1 分段可调节衰减因子 2.2 莱维飞行和随机游动策略 3.实验结果 ...

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

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

  5. 基于三重动态调整的花授粉算法-附代码

    基于三重动态调整的花授粉算法 文章目录 基于三重动态调整的花授粉算法 1.花授粉算法 2. 改进花授粉算法 2.1 动态概率 P 2. 2 新型动态因子 ω 2.3 正弦余弦步长因子 μ 3.实验结果 ...

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

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

  7. 信息共享的记忆被囊群算法

    文章目录 一.理论基础 1.被囊群算法 2.信息共享的记忆被囊群算法 (1)信息共享搜索策略 (2)记忆搜索策略 (3)子群数量的动态调节 (4)算法步骤 二.实验及结果分析 三.参考文献 一.理论基 ...

  8. 基于DCT离散余弦变换的自适应水印算法的设计

    文章目录 前言 一.目的和需求分析 1.1项目设计目的 1.2项目需求分析 二.图像预处理 2.1 图像预处理的作用 2.2 Logistic混沌映射置乱 2.2 细胞自动机处理 均值滤波平滑处理 三 ...

  9. 路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码

    路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码 文章目录 路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码 1.算法原理 1.1 环境设定 1.2 约束条件 1.3 适应度函 ...

最新文章

  1. 苹果8怎么投屏到电视_苹果电脑电视不在一个房间可以投屏
  2. 开心周末:这就是2018年的我~
  3. POJ - 3254 - Corn Fields
  4. 在Matlab中使用mex函数进行C/C++混合编程
  5. 以太坊、Hyperledger Fabric和Corda,哪个更好?
  6. RabbitMQ通配符模式以及与Routing模式的区别
  7. 为什么要使用叶脊(leaf-spine)拓扑网络zz
  8. Linux设备驱动模型4——平台总线实践
  9. Cesium专栏-卫星轨迹
  10. mysql setautocommit_MySql 中的setAutoCommit方法
  11. java se面试题_Java SE 8面试问答(第2部分)
  12. SAP 是不是很烂的一个ERP软件
  13. [Wireshark]_002_玩转数据包
  14. javabean 是什么?
  15. 使用计算机模拟抛硬币实验动画课件,《模拟掷硬币实验》课件.ppt
  16. 四川大学计算机学院优秀毕业论文,(完整版)四川大学本科_毕业论文(设计)_有关规定...
  17. 常见协议RFC对应表
  18. 强智教务JAVA/PHP模拟登录 密码JavaScript脚本encodeInp()加密算法破解
  19. WP7 SDK模拟器对应PC键盘的功能键
  20. 计划的主体部分应有哪些内容_计划主体部分包含哪些内容

热门文章

  1. Unity Ferr2D 地形工具
  2. Springboot实现文件上传文件压缩和前端展示
  3. Latex 编写算法伪代码,基于algorithmicx包的使用说明(人工翻译自CTAN)
  4. 安装robotframework及ride
  5. snap7使用说明中文版_驱魔使徒中文版 | 电脑游戏
  6. 0基础Java学习——第一周
  7. sup在IE,火狐及其他浏览器下字体大小问题
  8. Fréchet distance(弗雷歇距离)-用于地图匹配
  9. composer Content-Length mismatch
  10. C4D用云渲染快不快?