灰狼优化算法(Grey Wolf Optimizer, GWO)是由 Seyedali Mirjalili 等人于 2014 年提出的一种元启发式优化算法,其灵感源于自然界灰狼群体的社会等级结构与协作狩猎行为。作为一种群体智能算法,GWO 不依赖问题的具体数学性质,具有参数设置简单、收敛速度快、全局搜索能力强等优势,在工程优化、机器学习、资源调度等多个领域得到广泛应用。
一、核心思想:灰狼的社会等级与狩猎行为
GWO 的核心是模拟灰狼群体的两大核心特征——严格的社会等级制度和高效的协作狩猎策略,将搜索代理(算法中的'灰狼')与优化问题的候选解对应,通过群体协作逐步逼近最优解。
-
社会等级结构 算法将灰狼种群分为四个等级,各等级承担不同角色,共同引导种群搜索方向: • α狼(头狼):种群最高领导者,对应优化问题中的当前最优解,负责决策狩猎方向、休息地点等核心行为,是种群搜索的核心导向。 • β狼(副狼):等级仅次于α狼,作为α狼的顾问与接班人,协助管理种群并参与决策,对应次优解,为种群搜索提供辅助导向。 • δ狼(支配狼):第三等级灰狼,包括侦察兵、哨兵、捕猎者等,服从α和β狼的指令,同时支配ω狼,对应第三优解,补充种群搜索的多样性。 • ω狼(普通狼):最低等级,数量最多,完全服从上层灰狼,对应其余候选解,跟随α、β、δ狼的方向更新位置,是种群搜索的主要执行群体。 算法始终追踪α、β、δ三只最优灰狼的位置,利用它们的信息引导整个种群(尤其是ω狼)的搜索方向,避免单一最优解导致的局部收敛问题。
-
狩猎行为模拟 GWO 将灰狼狩猎过程拆解为包围、追捕、攻击三个阶段,通过数学模型转化为算法的搜索机制: • 包围阶段:灰狼发现猎物后,通过群体协作逐步缩小包围圈。算法中表现为所有灰狼向α、β、δ狼的位置靠拢,缩小搜索范围,逼近潜在最优解。 • 追捕阶段:由α、β、δ狼主导狩猎方向,ω狼跟随领导者移动,通过调整位置追踪'猎物'(最优解)。此阶段通过参数调控平衡全局探索与局部开发。 • 攻击阶段:当猎物停止移动(最优解趋于稳定)时,灰狼发起攻击。算法中对应控制参数 a 减小至接近 0,种群位置收敛到最优解附近,完成局部精细化搜索。
二、数学模型与核心公式
GWO 通过距离向量、位置更新向量及最终位置更新方程,将狩猎行为量化为可计算的数学模型,核心公式如下:
- 距离向量(D) 用于计算当前灰狼与α、β、δ狼(猎物代理)之间的距离,反映个体与最优解的接近程度:
D = |C · X_p(t) - X(t)|
其中:X_p(t) 为α、β、δ狼在第 t 代的位置(猎物位置代理);X(t) 为当前灰狼在第 t 代的位置;C = 2 · r_2 为系数向量,r_2 是 (0,1) 区间内的随机向量,用于引入随机性,增强全局搜索能力,避免算法陷入局部最优。
- 位置更新向量(A) 控制灰狼的搜索行为(探索或开发),其取值决定灰狼是远离还是靠近领导者:
A = 2 · a · r_1 - a
其中:a 为收敛控制参数,从 2 线性减小至 0(随迭代次数增加);r_1 是 (0,1) 区间内的随机向量。当 |A| > 1 时,灰狼倾向于探索新区域(远离领导者);当 |A| < 1 时,灰狼倾向于开发局部区域(靠近领导者)。
- 最终位置更新方程 由于算法无法预知真实最优解,通过α、β、δ狼的位置加权平均,引导其他灰狼更新位置,兼顾搜索精度与多样性:
X_1 = X_α - A_1 · |C_1 · X_α - X|
X_2 = X_β - A_2 · |C_2 · X_β - X|
X_3 = X_δ - A_3 · |C_3 · X_δ - X|
X(t+1) = (X_1 + X_2 + X_3) / 3
其中:X_1、X_2、X_3 分别为当前灰狼向α、β、δ狼靠拢后的潜在位置;X(t+1) 为第 t+1 代灰狼的最终位置,通过三者平均平衡多方向引导,提升解的稳定性。
三、算法流程
GWO 的实现流程简洁,核心步骤可分为初始化、迭代优化与结果输出三部分,具体如下:
- 种群初始化:设定算法参数(灰狼数量、最大迭代次数、搜索空间上下界 lb/ub、问题维度 dim),随机生成 N 只灰狼的初始位置,构成初始种群(候选解集合)。
- 适应度评估:计算每只灰狼的目标函数值(适应度),评估候选解的优劣。


