栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

改进收敛因子和比例权重的灰狼优化算法-附代码

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

改进收敛因子和比例权重的灰狼优化算法-附代码

改进收敛因子和比例权重的灰狼优化算法

文章目录
  • 改进收敛因子和比例权重的灰狼优化算法
    • 1.灰狼优化算法
    • 2. 改进灰狼优化算法(CGWO)
      • 2.1 基于余弦规律变化的收敛因子
      • 2.2 引入动态权重策略
    • 3.实验结果
    • 4.参考文献
    • 5.Matlab代码
    • 6.python代码

摘要: 在分析灰狼优化算法不足的基础上,提出一种改进的灰狼优化算法(CGWO),该算法采用基于余弦规律变化的收敛因子,平衡算法的全局搜索和局部搜索能力,同时引入基于步长欧氏距离的比例权重更新灰狼位置,从而加快算法的收敛速度。

1.灰狼优化算法

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

2. 改进灰狼优化算法(CGWO) 2.1 基于余弦规律变化的收敛因子

当 |A|>1 时,灰狼群体将扩大搜索范围寻找猎物,即全局搜索,收敛速度快;当 |A|<1 时,灰狼群体将收缩搜索范围对猎物进行攻击,即局部搜索,收敛速度慢。因此, A 的大小与GWO算法的全局搜索和局部搜索能力有很大关系。由公式(3)可以看出, A 随着收敛因子 a 的变化而变化,收敛因子 a 是随着迭代次数从2线性递减到0,但是算法在不断收敛的过程中并不是线性的,由此可知,线性递减的收敛因子a 不能完全体现出实际的优化搜索过程。因此,本文提出了一种基于余弦规律变化的收敛因子,其修正表达式为:
{ a = a final  + ( a initial  − a final  ) 1 + [ cos ⁡ ( ( t − 1 ) π / ( t max ⁡ − 1 ) ) ] n 2 , t ⩽ 1 2 t max ⁡ a = a final  + ( a initial  − a final  ) 1 − ∣ cos ⁡ ( ( t − 1 ) π / ( t max ⁡ − 1 ) ) ∣ n 2 , 1 2 t max ⁡ ⩽ t ⩽ t max ⁡ , (7) left{begin{array}{l} a=a_{text {final }}+left(a_{text {initial }}-a_{text {final }}right) frac{1+left[cos left((t-1) pi /left(t_{max }-1right)right)right]^{n}}{2}, \ t leqslant frac{1}{2} t_{max } \ a=a_{text {final }}+left(a_{text {initial }}-a_{text {final }}right) frac{1-left|cos left((t-1) pi /left(t_{max }-1right)right)right|^{n}}{2}, \ frac{1}{2} t_{max } leqslant t leqslant t_{max } end{array},right. tag{7} ⎩⎪⎪⎨⎪⎪⎧​a=afinal ​+(ainitial ​−afinal ​)21+[cos((t−1)π/(tmax​−1))]n​,t⩽21​tmax​a=afinal ​+(ainitial ​−afinal ​)21−∣cos((t−1)π/(tmax​−1))∣n​,21​tmax​⩽t⩽tmax​​,(7)
式中, a initial 和 a final 为收敛因子 a 的初始值和最终值,本文取 a initial =2 , a final =0 , t 为当前迭代次数, t max 为最大迭代次数, n 为递减指数, 0 2.2 引入动态权重策略

提出一种基于步长欧氏距离的比例权重,表达式如下:
W 1 = ∣ X 1 ∣ ∣ X 1 ∣ + ∣ X 2 ∣ + ∣ X 3 ∣ , W 2 = ∣ X 2 ∣ ∣ X 1 ∣ + ∣ X 2 ∣ + ∣ X 3 ∣ , W 3 = ∣ X 3 ∣ ∣ X 1 ∣ + ∣ X 2 ∣ + ∣ X 3 ∣ (8) W_{1}=frac{left|boldsymbol{X}_{1}right|}{left|boldsymbol{X}_{1}right|+left|boldsymbol{X}_{2}right|+left|boldsymbol{X}_{3}right|}, W_{2}=frac{left|boldsymbol{X}_{2}right|}{left|boldsymbol{X}_{1}right|+left|boldsymbol{X}_{2}right|+left|boldsymbol{X}_{3}right|} , W_{3}=frac{left|boldsymbol{X}_{3}right|}{left|boldsymbol{X}_{1}right|+left|boldsymbol{X}_{2}right|+left|boldsymbol{X}_{3}right|} tag{8} W1​=∣X1​∣+∣X2​∣+∣X3​∣∣X1​∣​,W2​=∣X1​∣+∣X2​∣+∣X3​∣∣X2​∣​,W3​=∣X1​∣+∣X2​∣+∣X3​∣∣X3​∣​(8)
X ( t + 1 ) = X 1 ⋅ W 1 + X 2 ⋅ W 2 + X 3 ⋅ W 3 3 (9) boldsymbol{X}(t+1)=frac{boldsymbol{X}_{1} cdot W_{1}+boldsymbol{X}_{2} cdot W_{2}+boldsymbol{X}_{3} cdot W_{3}}{3} tag{9} X(t+1)=3X1​⋅W1​+X2​⋅W2​+X3​⋅W3​​(9)

其中 W 1 、 W 2 、 W 3 W_1 、 W_2 、 W_3 W1​、W2​、W3​ 分别表示 ω 狼对 α 、 β 、 δ 狼的学习率。

综合以上改进策略描述,给出本文所提出的改进灰狼优化算法(CGWO)的步骤:
步骤1 设置种群规模 N ,最大迭代次数 t max ,随机生成 a 、 A 、 C 等参数。
步骤2 在搜索空间内随机初始化灰狼种群。
步骤3 计算种群中所有灰狼个体的适应度值,并按照适应度值进行排序,选择前三个最好的狼,记录其位置 X α 、 X β 和 X δ 。
步骤4 利用公式(5)、(8)和(9)更新种群中其他灰狼个体的位置。
步骤 5 利用公式(7)计算 a ,然后利用公式(3)和(4)更新 A , C 的值。
步骤6 判断算法是否满足结束条件,若达到预定的最大迭代次数 t max ,则停止计算,输出最优位置 X α ,否则,重复执行步骤3~步骤5。

3.实验结果

4.参考文献

[1]王秋萍,王梦娜,王晓峰.改进收敛因子和比例权重的灰狼优化算法[J].计算机工程与应用,2019,55(21):60-65+98.

5.Matlab代码 6.python代码
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/977123.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号