基于动态权重和游走策略的自适应灰狼优化算法

一、理论基础

1、灰狼优化算法

请参考这里

2、灰狼优化算法的改进

(1)可调节非线性收敛因子

为了达到根据具体要求对 a a a的衰减进行调节的目的,本文提出了一种基于调节因子 n n n的可调节非线性收敛因子。根据算法应用情况的不同,调节 n n n的大小,使 a a a以不同的衰减方式进行衰减。 a = { − t 2 n 2 + 2 t < 2 n 2 t m 2 ( t − t m ) 2 t m 2 − 2 n 2 2 n 2 t m ≤ t ≤ t m (1) a=\begin{dcases}-\frac{t^2}{n^2}+2\quad\quad t<\frac{2n^2}{t_m}\\[2ex]\frac{2(t-t_m)^2}{t_m^2-2n^2}\quad\frac{2n^2}{t_m}\leq t\leq t_m\end{dcases}\tag{1} a=n2t2+2t<tm2n2tm22n22(ttm)2tm2n2ttm(1)其中, t t t是当前迭代次数, t m t_m tm是最大迭代次数。
图1所示的是当 t = 1000 t=1000 t=1000时,不同取值 n n n a a a衰减的影响,可以明显看出当 n n n的取值不同时, a a a的衰减方式也是不同的。当 n n n取值越小时, a a a的值在迭代中会越早达到1,即 A A A的值达到1的时间也会越早,算法在局部搜索的时间会加长;当 n n n取值越大时, a a a的值在迭代中会越迟达到1,即 A A A的值达到1的时间也会越迟,算法在全局搜索的时间会加长。同时不管 n n n的取值是多少时, a a a都是非线性衰减。
在这里插入图片描述

图1 收敛因子对比图

(2)动态权重

标准灰狼算法中灰狼种群中,个体进行位置更新是根据 α \alpha α狼、 β \beta β狼和 δ \delta δ狼的位置进行更新的,三只狼起着一样的作用,并没有体现出 α \alpha α狼是最优狼的重要性,这种平均作用,会使算法的整体收敛速度变慢。为加快算法的整体收敛速度,本文提出一种基于适应度变化的动态权重,在迭代中加大优秀狼的作用,减少较差狼的作用。 w 1 = M A X ( f i t n e s s ) ∣ f α ∣ + ∣ f β ∣ + ∣ f δ ∣ (2) w_1=\frac{MAX(fitness)}{|f_\alpha|+|f_\beta|+|f_\delta|}\tag{2} w1=fα+fβ+fδMAX(fitness)(2) w 2 = χ ∣ f α ∣ + ∣ f β ∣ + ∣ f δ ∣ (3) w_2=\frac{\chi}{|f_\alpha|+|f_\beta|+|f_\delta|}\tag{3} w2=fα+fβ+fδχ(3) w 2 = M I N ( f i t n e s s ) ∣ f α ∣ + ∣ f β ∣ + ∣ f δ ∣ (4) w_2=\frac{MIN(fitness)}{|f_\alpha|+|f_\beta|+|f_\delta|}\tag{4} w2=fα+fβ+fδMIN(fitness)(4) f i t n e s s = [ ∣ f α ∣ , ∣ f β ∣ , ∣ f δ ∣ ] (5) fitness=[|f_\alpha|,|f_\beta|,|f_\delta|]\tag{5} fitness=[fα,fβ,fδ](5) χ ⊂ f i t n e s s , χ ≠ M A X ( f i t n e s s ) ≠ M I N ( f i t n e s s ) (6) \chi\subset fitness,\chi\neq MAX(fitness)\neq MIN(fitness)\tag{6} χfitness,χ=MAX(fitness)=MIN(fitness)(6)其中, f α f_\alpha fα f β f_\beta fβ f δ f_\delta fδ分别是 α \alpha α狼、 β \beta β狼和 δ \delta δ狼的适应度值。灰狼位置更新公式可改为: X ( t + 1 ) = w 1 × X 1 + w 2 × X 2 + w 3 × X 3 3 (7) X(t+1)=\frac{w_1\times X_1+w_2\times X_2+w_3\times X_3}{3}\tag{7} X(t+1)=3w1×X1+w2×X2+w3×X3(7)

(3)游走策略

式(2)~(6)和(7)通过动态权重,加大了迭代过程中优秀狼的作用,但这也减小了当 α \alpha α狼陷入局部最优时,算法逃离局部最优的能力。为了增强算法避免陷入局部最优的能力,提出了基于灰狼个体信息和最优信息的游走策略。
基于个体信息的游走: X i 0 ( t ) = X i ( t ) + r a n d ( ) × ( X j ( t ) − X i ( t ) ) (8) X_{i0}(t)=X_i(t)+rand()\times(X_j(t)-X_i(t))\tag{8} Xi0(t)=Xi(t)+rand()×(Xj(t)Xi(t))(8)基于最优信息的游走: X i 1 ( t ) = X i ( t ) + r a n d ( ) × ( X α ( t ) − X i ( t ) ) (9) X_{i1}(t)=X_i(t)+rand()\times(X_\alpha(t)-X_i(t))\tag{9} Xi1(t)=Xi(t)+rand()×(Xα(t)Xi(t))(9)其中, i i i j j j是种群中随机的两个不同的个体; r a n d rand rand ( − 1 , 1 ) (-1,1) (1,1)之间的随机数; α \alpha α是种群中最优的个体。
在每次迭代完成后,对种群中随机 N / 4 N/4 N/4的个体进行基于个体信息和最优信息的随机游走,产生 N / 2 N/2 N/2个新的个体,与本次迭代后产生的 N N N个体进行比较,选取适应度前 N N N的个体,作为新的种群,进行新一次的迭代。

(4)改进算法的具体步骤

步骤一:根据不同问题的需求,确定调节因子 n n n的大小。
步骤二:初始化灰狼种群,设置种群大小 N N N、最大迭代 t max ⁡ t_{\max} tmax
步骤三:计算每个灰狼个体的适应度,确定 α \alpha α狼、 β \beta β狼和 δ \delta δ狼。
步骤四:计算参数 a a a A A A C C C
步骤五:根据式(7)更新灰狼个体。
步骤六:随机选取 N / 4 N/4 N/4个灰狼个体,根据式(8)和式(9)进行随机游走。
步骤七:计算 3 N / 2 3N/2 3N/2个灰狼个体的适应度,选取前 N N N的个体作为新的种群,更新 α \alpha α狼、 β \beta β狼和 δ \delta δ狼。
步骤八:是否达到最大迭代次数。是,输出最优个体和最优个体适应度值;否,进行步骤四。

二、仿真实验与结果分析

将IGWO与GWO、IGWO1、IGWO2和IGWO3进行对比,其中IGWO1算法和IGWO2算法是采用所提出可调节收敛因子的方法进行改进的算法,只不过调节因子 n n n的大小不同,IGWO3算法是采用所提出的可调节收敛因子和动态权重的方法进行改进的算法,具体参数参考文献[1]。以文献[1]中表1的F1、F2(单峰函数/30维)、F6、F7(多峰函数/30维)、F10、F12(固定维度多峰函数/2维、3维)为例,实验设置种群规模为30,最大迭代次数为1000,每种算法独立运算50次,结果显示如下:
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

函数:F1
GWO:最差值: 4.6884e-58,最优值:5.9193e-62,平均值:3.7018e-59,标准差:7.3851e-59,秩和检验:3.3111e-20
IGWO1:最差值: 1.627e-63,最优值:7.252e-68,平均值:8.5816e-65,标准差:2.5092e-64,秩和检验:3.3111e-20
IGWO2:最差值: 3.1046e-84,最优值:9.1954e-90,平均值:2.0231e-85,标准差:5.6033e-85,秩和检验:3.3111e-20
IGWO3:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
IGWO:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
函数:F2
GWO:最差值: 5.5924e-34,最优值:3.782e-36,平均值:9.0165e-35,标准差:1.159e-34,秩和检验:3.3111e-20
IGWO1:最差值: 7.4426e-37,最优值:1.2054e-39,平均值:5.4079e-38,标准差:1.1204e-37,秩和检验:3.3111e-20
IGWO2:最差值: 1.8196e-48,最优值:1.5961e-51,平均值:6.5582e-50,标准差:2.5533e-49,秩和检验:3.3111e-20
IGWO3:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
IGWO:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
函数:F6
GWO:最差值: 5.6843e-14,最优值:0,平均值:1.1369e-14,标准差:2.2968e-14,秩和检验:0.00093299
IGWO1:最差值: 11.2662,最优值:0,平均值:0.22532,标准差:1.5933,秩和检验:0.32709
IGWO2:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
IGWO3:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
IGWO:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
函数:F7
GWO:最差值: 2.931e-14,最优值:1.1546e-14,平均值:1.6236e-14,标准差:3.3235e-15,秩和检验:3.107e-19
IGWO1:最差值: 1.5099e-14,最优值:7.9936e-15,平均值:9.9831e-15,标准差:2.7946e-15,秩和检验:5.1693e-19
IGWO2:最差值: 1.5099e-14,最优值:7.9936e-15,平均值:8.491e-15,标准差:1.4373e-15,秩和检验:4.4537e-20
IGWO3:最差值: 4.4409e-15,最优值:8.8818e-16,平均值:2.3803e-15,标准差:1.7713e-15,秩和检验:1
IGWO:最差值: 4.4409e-15,最优值:8.8818e-16,平均值:2.3803e-15,标准差:1.7713e-15,秩和检验:1
函数:F10
GWO:最差值: 0.39789,最优值:0.39789,平均值:0.39789,标准差:2.4253e-07,秩和检验:7.0661e-18
IGWO1:最差值: 0.39789,最优值:0.39789,平均值:0.39789,标准差:1.2802e-11,秩和检验:7.0645e-18
IGWO2:最差值: 0.39817,最优值:0.39789,平均值:0.39794,标准差:5.1317e-05,秩和检验:7.0661e-18
IGWO3:最差值: 10.7352,最优值:0.4129,平均值:1.3922,标准差:1.552,秩和检验:0.72773
IGWO:最差值: 2.891,最优值:0.40295,平均值:1.1492,标准差:0.66372,秩和检验:1
函数:F12
GWO:最差值: -3.8549,最优值:-3.8628,平均值:-3.8615,标准差:0.0025538,秩和检验:7.0661e-18
IGWO1:最差值: -3.8551,最优值:-3.8628,平均值:-3.862,标准差:0.0020535,秩和检验:7.0661e-18
IGWO2:最差值: -3.8548,最优值:-3.8628,平均值:-3.8616,标准差:0.0023407,秩和检验:7.0661e-18
IGWO3:最差值: -2.2961,最优值:-3.8306,平均值:-3.2651,标准差:0.42478,秩和检验:0.8227
IGWO:最差值: -2.2961,最优值:-3.8401,平均值:-3.2733,标准差:0.45023,秩和检验:1

实验结果表明:IGWO算法相对于其他算法,不管在收敛速度还是在收敛精度上都有着明显的优势。

三、参考文献

[1] 音凌一, 向凤红, 毛剑琳. 改进灰狼优化算法在特征栅格地图上的路径规划[J/OL]. 机械科学与技术: 1-11 [2022-06-13].

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
基于莱维飞行和随机游动策略改进灰狼优化算法是一种在现代优化算法中应用的智能优化算法。该算法以模拟狼群捕食过程为基础,通过引入莱维飞行策略和随机游动策略来提高算法的全局和局部搜索能力,以解决传统灰狼算法收敛速度慢且易陷入局部最优的问题。改进灰狼优化算法利用改进的衰减因子来平衡全局搜索和局部搜索能力,并通过莱维飞行策略和随机游动策略来增强算法的搜索能力。这些改进使得算法能够更好地适应不同的优化问题,并提高了算法的收敛速度和搜索精度。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [基于莱维飞行和随机游动策略灰狼算法求解单目标matlab源码](https://blog.csdn.net/qq_37934722/article/details/131621489)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [基于莱维飞行和随机游动策略灰狼算法](https://blog.csdn.net/weixin_43821559/article/details/115584292)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心️升明月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值