灰狼优化算法(GWO)

这篇具有很好参考价值的文章主要介绍了灰狼优化算法(GWO)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、背景知识

灰狼优化算法(Grey Wolf Optimizer, GWO),由澳大利亚格里菲斯大学学者Mirjalili等人于2014年提出来的一种群智能优化算法。灵感来自于灰狼群体捕食行为。GWO算法模拟了自然界中灰狼的领导等级和狩猎机制。将灰狼分为四种类型,用来模拟等级阶层。此外,还模拟了寻找猎物、包围猎物和攻击猎物三个主要阶段。

灰狼优化算法,算法,数学建模

图1 灰狼等级分层

灰狼群一般分为4个等级:处于第一等级的灰狼是领头狼,用α表示,它们主要负责各类决策,然后将决策下达至整个种群;处于第二阶级的灰狼用β表示,称为从属狼,用于辅助α狼制定决策或其他种群活动;处于第三阶段的灰狼用δ表示,侦察狼、守卫狼、老狼和捕食狼都是这一类。处于第四等级的灰狼用ω表示,它们在灰狼群中扮演了"替罪羊"的角色(好惨),同时它们必须要屈服于其他等级的狼。
 

二、算法原理

  GWO 优化过程包含了灰狼的社会等级分层、跟踪、包围和攻击猎物等步骤:

(1)社会等级分层

依据上述灰狼等级制度,可以对灰狼的社会等级进行数学建模,认为最合适的解是α,那么第二和第三最优解分别表示为β和δ,而剩余其他解都假定为ω。在GWO中,通过α、β和δ来导引捕食(优化),ω听从于这三种狼。

(2)包围猎物

灰狼在搜索猎物时会逐渐地接近猎物并包围它,其包围猎物的数学模型为:

                                                   (1)

灰狼优化算法,算法,数学建模                                                (2)

其中,X 表示灰狼的位置;t 为当前迭代次数;Xp表示猎物的位置;D表示灰狼与猎物之间的距离,其计算方式见公式(2)。 A 和 C 是两个协同系数向量, 其计算见公式(3)和公式(4)。

                                                          (3)

                                                                (4)

式(3)中,向量A用于模拟灰狼对猎物的攻击行为,它的取值收到a的影响。a是收敛因子,其是一个平衡GWO勘探与开发能力的关键参数,在整个迭代过程中,a由2降到0。

(3)狩猎行为

灰狼能够识别猎物的位置并包围它们。灰狼具有识别潜在猎物(最优解)位置的能力,当灰狼识别出猎物的位置后,β 和 δ 在 α 的带领下指导狼群包围猎物。在优化问题的决策空间中,我们对最佳解决方案(猎物的位置)并不了解。因此,为了模拟灰狼的狩猎行为,我们假设 α ,β 和 δ 具有较强识别潜在猎物位置的能力。因此,在每次迭代过程中,保留当前种群中的最好三只灰狼( α、β、δ),然后根据它们的位置信息来更新其它搜索代理(包括 ω)的位置。

灰狼个体跟踪猎物位置的数学模型描述如下:

                                             (5)

其中,,,分别表示α ,β ,δ 与其他个体间的距离。,,  分别代表α ,β ,δ的当前位置,  ,,是随机向量, 是当前灰狼的位置。当|A|>1时,灰狼之间尽量分散在各区域并搜寻猎物。当|A|<1时,灰狼将集中捜索某个或某些区域的猎物。

                                              (6)

灰狼优化算法,算法,数学建模                                              (7)

式(6)分别定义了狼群中 ω 个体朝向 α ,β 和 δ 前进的步长和方向,式(7)定义了 ω 的最终位置。

(4)攻击猎物

当猎物停止移动时,灰狼通过攻击来完成狩猎过程。为了模拟逼猎物,a的值被逐渐减小,因此 A ⃗的波动范围也随之减小。换句话说,在迭代过程中,当 a 的值从2线性下降到0时,其对应的 A 的值也在区间[-a,a]内变化。如图a所示,当 A的值位于区间内时,灰狼的下一位置可以位于其当前位置和猎物位置之间的任意位置。当∣A ∣ < 1  时,狼群向猎物发起攻击(陷入局部最优)。

灰狼优化算法,算法,数学建模

(a)                                                              (b)

(5)寻找猎物

灰狼根据 α ,β 和 δ 的位置来搜索猎物。灰狼在寻找猎物时彼此分开,然后聚集在一起攻击猎物。对于分散模型的建立,通过|A|>1使其捜索代理远离猎物,这种搜索方式使 GWO 能进行全局搜索,强调了勘探(探索)并允许 GWO 算法全局搜索最优解。如图b所示,∣A ∣ > 1 强迫灰狼与猎物(局部最优)分离,希望找到更合适的猎物(全局最优)。GWO 算法中的另一个搜索系数是C。从2.2中的公式可知,C向量是在区间范围[0,2]上的随机值构成的向量,此系数为猎物提供了随机权重,以便増加(|C|>1)或减少(|C|<1)。这有助于 GWO 在优化过程中展示出随机搜索行为,以避免算法陷入局部最优。值得注意的是,C并不是线性下降的,C在迭代过程中是随机值,该系数有利于算法跳出局部,特别是算法在迭代的后期显得尤为重要。这样,从最初的迭代到最终的迭代中,它都提供了决策空间中的全局搜索。在算法陷入了局部最优并且不易跳出时,C的随机性在避免局部最优方面发挥了非常重要的作用,尤其是在最后需要获得全局最优解的迭代中。

三、算法流程

Step1.初始化种群参数:包括种群数量N,最大迭代次数Maxlter,调控参数a,A。

Step2.根据变量的上下界来随机初始化灰狼个体的位置X。

Step3.计算每一头狼的适应度值,并将种群中适应度值最优的狼的位置信息保存,将种群中适应度值次优的狼的位置信息保存为,将种群中适应度第三优的灰狼的位置信息保存为。

Step4.更新灰狼个体X的位置。

Step5.更新参数a,A和C。

Step5.计算每一头灰狼的适应度值,并更新三匹头狼的最优位置。

Step5.判断是否到达最大迭代次数Maxlter,若满足则算法停止并返回Xa的值作为最终得到的最优解,否则转到Step4。

四、实验结果  

五、MATLAB代码

灰狼优化算法(GWO)文章来源地址https://www.toymoban.com/news/detail-851232.html

到了这里,关于灰狼优化算法(GWO)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python实现GWO智能灰狼优化算法优化XGBoost分类模型(XGBClassifier算法)项目实战

    说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取。 灰狼优化算法(GWO),由澳大利亚格里菲斯大学学者 Mirjalili 等人于2014年提出来的一种群智能优化算法。灵感来自于灰狼群体捕食行为。优点:较强的

    2023年04月13日
    浏览(66)
  • 数学建模:多目标优化算法

    🔆 文章首发于我的个人博客:欢迎大佬们来逛逛 算法流程: 两个目标权重求和,化为单目标函数,然后求解最优值 min ⁡ x ∑ i = 1 m w i F i ( x )  s.t.  g ( x ) ⩽ 0 h ( x ) = 0 begin{array}{ll}min _{x} sum_{i=1}^{m} {w_{i} F_{i}(x)} \\\\\\\\text { s.t. } g(x) leqslant 0 \\\\\\\\ h(x)=0end{array} min x ​  s.t. 

    2024年02月08日
    浏览(50)
  • 数学建模:线性与非线性优化算法

    🔆 文章首发于我的个人博客:欢迎大佬们来逛逛 优化算法 是指在满足一定条件下,在众多方案中或者参数中最优方案,或者参数值,以使得某个或者多个功能指标达到最优,或使得系统的某些性能指标达到最大值或者最小值 优化的两个关键点: 1.明确优化的目标函数 2.明确优化

    2024年02月07日
    浏览(42)
  • 数学建模:智能优化算法及其python实现

    优化问题是指在满足一定条件下,在众多方案或参数值中寻找最优方案或参数值,以使得某个或多个功能指标达到最优,或使系统的某些性能指标达到最大值或最小值。优化问题广泛地存在于信号处理、图像处理、生产调度、任务分配、模式识别、自动控制和机械设计等众多

    2024年02月03日
    浏览(48)
  • 回归拟合 | 灰狼算法优化核极限学习机(GWO-KELM)MATLAB实现

    这周有粉丝私信想让我出一期GWO-KELM的文章,因此乘着今天休息就更新了(希望不算晚) 作者在前面的文章中介绍了ELM和KELM的原理及其实现,ELM具有训练速度快、复杂度低、克服了传统梯度算法的局部极小、过拟合和学习率的选择不合适等优点,而KELM则利用了核学习的方法,用

    2024年02月09日
    浏览(47)
  • 【数学建模竞赛】优化类赛题常用算法解析

    问题理解和建模:首先,需要深入理解问题,并将问题抽象为数学模型。这包括确定问题的目标函数、约束条件和决策变量。 模型分析和求解方法选择:对建立的数学模型进行分析,可以使用数学工具和方法,例如最优化算法、梯度下降法、遗传算法、模拟退火等。根据问题

    2024年02月09日
    浏览(45)
  • 多元分类预测 | Matlab 灰狼算法(GWO)优化xgboost的分类预测模型,多特征输入模型,GWO-xgboost分类预测

    效果一览 文章概述 多元分类预测 | Matlab 灰狼算法(GWO)优化xgboost的分类预测模型,多特征输入模型,GWO-xgboost分类预测 多特征输入单输出的二分类及多分类模型。程序内注释详细,直接替换数据就可以用。程序语言为matlab,程序可出分类效果图,迭代优化图,混淆矩阵图。

    2024年02月13日
    浏览(43)
  • 模拟退火算法与遗传算法求解多目标优化问题的算法实现(数学建模)

    模拟退火算法是一种全局优化算法,解决的问题通常是找到一个最小化(或最大化)某个函数的全局最优解。它通过模拟物理退火的过程来搜索解空间,在开始时以一定的温度随机生成初始解,然后一步步降低温度,同时在当前解的周围随机搜索新的解,并根据一定概率接受

    2024年02月02日
    浏览(57)
  • 多元回归预测 | Matlab灰狼算法(GWO)优化极限梯度提升树XGBoost回归预测,GWO-XGBoost回归预测模型,多变量输入模型

    效果一览 文章概述 多元回归预测 | Matlab灰狼算法(GWO)优化极限梯度提升树XGBoost回归预测,GWO-XGBoost回归预测模型,多变量输入模型 评价指标包括:MAE、RMSE和R2等,代码质量极高,方便学习和替换数据。要求2018版本及以上。 部分源码

    2024年02月12日
    浏览(40)
  • 回归预测 | MATLAB实现GWO-SVM灰狼优化算法优化支持向量机多输入单输出回归预测(多指标,多图)

    效果一览 基本介绍 回归预测 | MATLAB实现GWO-SVM灰狼优化算法优化支持向量机多输入单输出回归预测(多指标,多图),输入多个特征,输出单个变量,多输入单输出回归预测; 多指标评价,代码质量极高;excel数据,方便替换,运行环境2018及以上。 程序设计 完整源码和数据

    2024年02月11日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包