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

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


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

1.灰狼优化算法

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

2. 改进灰狼优化算法

2.1 Iterative 混沌映射初始化

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

2.2 非线性自适应收敛因子

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

由式 (8) 可知, α , β , δ \alpha, \beta, \delta α,β,δ 狼的权重为同一权重,
而整个种群的狩猎行为由 α \alpha α 狼领导, 为了增快算法 的求解速度, 本文将增加 α \alpha α 狼的权重并添加随机扰 动, 虽降低算法稳定性但益于跳出局部最优, 具体 更新公式如下:
X ( t + 1 ) = X 1 2 + X 2 3 + X 3 6 +  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 信息共享搜索策略

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

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

N i ( t ) = { X j ( t ) ∣ E i ( X i ( t ) , X j ( t ) ) ≤ R i ( t ) , X j ( t ) ∈ P o p } 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)

其中, E i E_i Ei 表示 X i ( t ) X_i(t) Xi(t) X j ( t ) X_j(t) Xj(t) 的欧式距离, Pop 代 表整个种群, R i ( t ) R_i(t) Ri(t) 为当前狼位置 X i ( t ) X_i(t) Xi(t) 和候选狼 X i ( t + 1 ) X_i(t+1) Xi(t+1) 之间的欧式距离。
由上述可知, 狼群的信息共享环境已成功构 成, 其中个体的领域根据式 (13) 构造。通过维度 信息共享的狼群候选解如下所示: X i − I S , d ( t + 1 ) = X i , d ( t ) + rand ⁡ ∗ ( X n , d ( t ) − X r , 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) XiIS,d(t+1)=Xi,d(t)+rand(Xn,d(t)Xr,d(t)) (14)

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

狼群信息更新阶段: 对 X i − I S ( t + 1 ) X_{i-I S}(t+1) XiIS(t+1) X i ( t + 1 ) X_i(t+1) Xi(t+1) 进行适应度值比较, 选出较优个体, 更新公式如式 (15)。
X i ( t + 1 ) = { X i ( t + 1 ) ,  if  f ( X i ( t + 1 ) ) < f ( X i − I S ( t + 1 ) ) X i − I S ( 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(XiIS(t+1))XiIS(t+1) otherwise (15)
ISIAGWO 算法具体步骤如下:

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

猜你喜欢

转载自blog.csdn.net/u011835903/article/details/127396447
今日推荐