灰狼优化算法

一、简介

1.1 灰狼优化算法-Grey Wolf Optimizer

通过模拟灰狼群体捕食行为,基于狼群群体协 作的机制来达到优化的目的。GWO算法具有结构简单、需 要调节的参数少、容易实现等特点,其中存在能够自适应调整 的收敛因子以及信息反馈机制,能够在局部寻优与全局搜索 之间实现平衡,因此在对问题的求解精度和收敛速度方面都 有良好的性能。

1.2 灰狼群体的捕猎行为

灰狼大多喜欢群居,每个群体中平均有5~12只狼,狼群内部等级制度比较森严,按照四层金字塔依次排列。α狼是种群中的领导者,位于金字塔的最顶端。β狼类似于军师团队,协助领导者α进行决策,δ狼位于第三层,听从α和β的决策命令,负责侦察/放哨/看护等任务,最低层为ω,负责种群内部的关系平衡。

1.3 捕猎过程

捕猎过程分为以下三个主要的部分

(1)跟踪,追逐,接近猎物。

(2)追捕,包围和骚扰猎物,直到猎物停止移动

(3)攻击目标

二 GWO数学模型

为了对GWO中灰狼的社会等级进行数学建模,将前3 匹最好的狼(最优解)分别定义为α,β和δ,它们指导其他狼向 着目标搜索。其余的狼(候选解)被定义为ω,它们围绕α,β 或δ来更新位置。

2.1包围猎物过程

在狩猎过程中,将灰狼围捕猎物的行为定义如下:

式(1)表示个体与猎物间的距离 ,式(2)是灰狼的位置 更 新公式。其中,t是目前的迭代代数,A→和C → 是系数向量,XP向量和X 向量分别是猎物的位置向量和灰狼 ω的位置向量。

a向量为收敛因子,随着迭代的次数,从2线性减少到0.

r1,r2向量的模取0,1之间的随机数。

2.2 狩猎过程

当灰狼识别出猎 物的位置后,β和δ在α的带领下指导狼群包围猎物。

此时,猎物的位置就是我们的最佳解决方案。但是我们并不清楚猎物的位置在哪里。

我们假设α,β和δ更 了解猎物的潜在位置。我们保存迄今为止取得的3个最优解 决方案,并利用这三者的位置来判断猎物所在的位置,同时强 迫其他灰狼个体(包括ω)依据最优灰狼个体的位置来更新其 位置,逐渐逼近猎物。

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

图中:a1 a2 a3 分别为表α,β和δ狼。

定义了狼群中ω个体朝向α,β和δ前进的步 长和方向

D α ,D β 和Dδ分别表示α,β和δ与其他个体间的距离;

X → α ,X → β 和X→δ分别代表α,β和δ的当前位置;

C → 1 ,C → 2 ,C → 3 是随机 向量,X是当前灰狼ω的位置。

定义了ω的最终位置。

2.3 攻击猎物

当猎物停止移动时,灰狼通过攻击来完成狩猎过程。a → 的值被逐渐减小,因此A→的波动范围也随 之减小。在迭代过程中,当a→的值从2线性下降到 0时,其对应的A→的值也在区间[-a,a]内变化。当|A→ |<1时,狼群向猎物 发起攻击(陷入局部最优)

2.4 搜索猎物

灰狼根据α,β和δ的位置来搜索猎物。灰狼在寻找猎物 时彼此分开,然后聚集在一起攻击猎物。可以用A→大于1或小于-1的随机值来迫使灰狼与猎物分离,这强调了勘探(探索)并允许GWO算法全局搜索最优解。|A → |>1强迫灰狼与猎物(局部最优)分离,希 望找到更合适的猎物(全局最优)

相关推荐
不正经学生2 小时前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
毕竟是shy哥5 小时前
计算YOLO数据集中每个类的目标数
算法·yolo·机器学习
M78佐菲5 小时前
Linux学习笔记:TCP协议
linux·笔记·学习·tcp/ip·算法
晊晌_h6 小时前
嵌入式从0到精通——数据结构总结[特殊字符]
数据结构·算法·排序算法
我找到地球的支点啦7 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
罗西的思考7 小时前
【OpenClaw具身硬件】ZeroClaw 源码阅读笔记(3)--- RAG
人工智能·算法·机器学习
浪里镖客8 小时前
位姿转换矩阵写法-个人习惯(计算机理解其实是相反的)
线性代数·算法·矩阵
小白羊丨11 小时前
如何诊断 Prompt 模板导致的效果下降?
人工智能·算法·prompt
OPEN-F12 小时前
C++11/14新特性精讲:移动语义与智能指针实战
开发语言·c++·算法
lisin-lee-cooper12 小时前
【leetcode658】有序数组找出k个最接近x的数
java·数据结构·算法