基于信息共享搜索策略的自适应灰狼算法-附代码
基于信息共享搜索策略的自适应灰狼算法
文章目录
- 基于信息共享搜索策略的自适应灰狼算法
- 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(xkbπ)(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 算法具体步骤如下:
- 算法的参数设定: 狼群规模 PopP o pPop, 维度 DDD, 最 大迭代次数 MaxIter, 混沌初始化控制参数 bbb, 下 不完全 gamma 函数中的随机变量 λ\lambdaλ 等参数;
- 采用iterative 混沌映射式(9)初始化灰狼种 群;
- 对灰狼种群进行的适应度值计算并排序, 依据 等级制度笁选出优势灰狼个体;
- 根据非线性自适应动态参数控制策略, 由式 (10) 计算参数 aaa, 并根据式 (3) 和 (4) 计算 AAA 和 CCC 的 值。
- 根据式 (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) 对种群中的个体进 行信息初始化、信息共享以及信息更新; - 更新狼群个体适应度值, 并根据式 (15) 对种 群进行更新, 选取较优个体;
- 算法达到最大迭代次数, 输出最优灰狼个体 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.2 约束条件 1.3 适应度函数 2.算法 ...
- 基于自适应调整权重和搜索策略的鲸鱼优化算法-附代码
基于自适应调整权重和搜索策略的鲸鱼优化算法 文章目录 基于自适应调整权重和搜索策略的鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 自适应调整权重 2.2 自适应调整搜索策略 3.实验 ...
- 基于莱维飞行和随机游动策略的灰狼算法-附代码
基于莱维飞行和随机游动策略的灰狼算法 文章目录 基于莱维飞行和随机游动策略的灰狼算法 1.灰狼优化算法 2. 改进灰狼优化算法 2.1 分段可调节衰减因子 2.2 莱维飞行和随机游动策略 3.实验结果 ...
- 具有随机分形自适应搜索策略的蚁狮优化算法-附代码
具有随机分形自适应搜索策略的蚁狮优化算法 文章目录 具有随机分形自适应搜索策略的蚁狮优化算法 1.蚁狮优化算法 2. 改进蚁狮优化算法 2.1 蚂蚁随机分形搜索方程 2.2 蚁狮自适应搜索方程 3.实 ...
- 基于三重动态调整的花授粉算法-附代码
基于三重动态调整的花授粉算法 文章目录 基于三重动态调整的花授粉算法 1.花授粉算法 2. 改进花授粉算法 2.1 动态概率 P 2. 2 新型动态因子 ω 2.3 正弦余弦步长因子 μ 3.实验结果 ...
- 基于混沌的正余弦鲸鱼优化算法-附代码
基于混沌的正余弦鲸鱼优化算法 文章目录 基于混沌的正余弦鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 混沌初始化种群和参数优化 2.2 正余弦鲸鱼优化算法 2.3 混沌自适应的惯性权 ...
- 信息共享的记忆被囊群算法
文章目录 一.理论基础 1.被囊群算法 2.信息共享的记忆被囊群算法 (1)信息共享搜索策略 (2)记忆搜索策略 (3)子群数量的动态调节 (4)算法步骤 二.实验及结果分析 三.参考文献 一.理论基 ...
- 基于DCT离散余弦变换的自适应水印算法的设计
文章目录 前言 一.目的和需求分析 1.1项目设计目的 1.2项目需求分析 二.图像预处理 2.1 图像预处理的作用 2.2 Logistic混沌映射置乱 2.2 细胞自动机处理 均值滤波平滑处理 三 ...
- 路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码
路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码 文章目录 路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码 1.算法原理 1.1 环境设定 1.2 约束条件 1.3 适应度函 ...
最新文章
- 苹果8怎么投屏到电视_苹果电脑电视不在一个房间可以投屏
- 开心周末:这就是2018年的我~
- POJ - 3254 - Corn Fields
- 在Matlab中使用mex函数进行C/C++混合编程
- 以太坊、Hyperledger Fabric和Corda,哪个更好?
- RabbitMQ通配符模式以及与Routing模式的区别
- 为什么要使用叶脊(leaf-spine)拓扑网络zz
- Linux设备驱动模型4——平台总线实践
- Cesium专栏-卫星轨迹
- mysql setautocommit_MySql 中的setAutoCommit方法
- java se面试题_Java SE 8面试问答(第2部分)
- SAP 是不是很烂的一个ERP软件
- [Wireshark]_002_玩转数据包
- javabean 是什么?
- 使用计算机模拟抛硬币实验动画课件,《模拟掷硬币实验》课件.ppt
- 四川大学计算机学院优秀毕业论文,(完整版)四川大学本科_毕业论文(设计)_有关规定...
- 常见协议RFC对应表
- 强智教务JAVA/PHP模拟登录 密码JavaScript脚本encodeInp()加密算法破解
- WP7 SDK模拟器对应PC键盘的功能键
- 计划的主体部分应有哪些内容_计划主体部分包含哪些内容