具有可选外部档案的自适应差分进化(JADE)
2026/3/21约 1543 字大约 5 分钟
具有可选外部档案的自适应差分进化(JADE)
名称
具有可选外部档案的自适应差分进化(Adaptive Differential Evolution with Optional External Archive, JADE)
分类
具有可选外部档案的自适应差分进化(JADE)是一种随机优化算法,属于进化计算领域,而进化计算又是计算智能的一个分支。它是在经典差分进化(Differential Evolution, DE)算法基础上的一种扩展。
- 计算智能
- 进化计算
- 进化算法
- 差分进化(DE)
- 具有可选外部档案的自适应差分进化(JADE)
- 差分进化(DE)
- 进化算法
- 进化计算
策略
变异与交叉
JADE 引入了一种新的变异策略,称为“DE/current-to-pbest”。该策略通过结合当前个体、种群中某个优良子集内的最优个体,以及一个随机选取的个体来生成变异向量。随后,在当前个体与变异向量之间执行交叉操作,以构造试验向量。
参数自适应
JADE 根据前一代中成功参数取值的表现,为每个个体自适应地调整变异因子(F)和交叉概率(CR)。这种自适应机制使算法能够依据待求解问题的特性自动调整参数设置。
可选外部档案
JADE 维护一个可选的外部档案,用于存储先前成功的个体。该档案在变异策略中被用于提供额外的种群多样性,并帮助算法跳出局部最优。
过程
数据结构
- 种群:由多个个体构成的数组,其中每个个体表示优化问题的一个候选解。
- 档案:一个可选的外部档案,用于存储先前成功的个体。
参数
- NP:种群规模
- F:变异因子
- CR:交叉概率
- p:变异策略中的贪婪参数(用于控制参与变异的优良个体比例)
- c:参数自适应速率
步骤
- 在搜索空间中随机初始化 NP 个个体,形成初始种群。
- 为每个个体初始化变异因子(F)和交叉概率(CR)。
- 评估种群中每个个体的适应度。
- 对种群中的每个个体(目标向量)执行以下操作:
- 从种群中随机选取的一个子集中确定最优个体(pbest)。
- 从种群或外部档案中随机选择两个个体。
- 利用“DE/current-to-pbest”策略生成变异向量。
- 在目标向量与变异向量之间进行交叉,生成试验向量。
- 评估试验向量的适应度。
- 若试验向量的适应度优于目标向量,则用试验向量替换种群中的目标向量。
- 若试验向量替换了目标向量,则将被替换的目标向量加入档案中(若使用外部档案)。
- 根据试验向量是否成功,更新该个体对应的变异因子(F)和交叉概率(CR)。
- 若尚未达到最大迭代代数或终止条件,则返回步骤 4。
- 返回种群中找到的最优个体作为问题的解。
注意事项
优点
- 自适应参数控制:JADE 能够针对每个个体自动调整变异因子和交叉概率,从而提升算法鲁棒性,并减少人工调参需求。
- 收敛性能提升:“DE/current-to-pbest”变异策略与可选外部档案机制有助于 JADE 相较于经典 DE 实现更快收敛并获得更优解。
- 鲁棒性较强:JADE 对初始参数设置不太敏感,能够适应较广泛类型的优化问题。
缺点
- 复杂度增加:自适应参数控制与可选外部档案的引入提高了算法复杂度,使其相比经典 DE 更难实现和理解。
- 内存开销增加:若使用外部档案,JADE 需要额外内存来存储先前成功的个体。
- 对贪婪参数较敏感:JADE 的性能可能对贪婪参数 p 的设定较为敏感,该参数影响开发与探索之间的平衡。
启发式建议
种群规模(NP)
- 一般而言,可将种群规模(NP)设定为问题维数的 5 到 10 倍。
- 对于高维问题(如 100 维及以上),可考虑采用较小的种群规模,以降低计算开销。
- 若种群规模过小,算法可能出现早熟收敛,或难以找到高质量解。
贪婪参数(p)
- 贪婪参数(p)用于控制变异策略中的开发与探索平衡。
- 较小的 p 值(如 0.05)更偏向开发,较大的 p 值(如 0.5)更偏向探索。
- 对于单峰问题或局部最优较少的问题,可采用较小的 p 值以增强开发能力。
- 对于多峰问题或局部最优较多的问题,可采用较大的 p 值以保持种群多样性并更充分地探索搜索空间。
外部档案
- 使用外部档案通常能够提升 JADE 的性能,尤其适用于存在较多局部最优的问题。
- 档案规模通常应与种群规模相关联,一种常见设置是令档案规模等于种群规模。
- 若内存受限,或问题本身较为简单,也可不使用外部档案以减少计算开销。
参数自适应
- 参数自适应速率(c)决定了变异因子与交叉概率依据上一代成功经验进行更新的快慢。
- 较小的 c 值(如 0.1)意味着参数更新较慢,较大的 c 值(如 0.9)意味着参数更新较快。
- 对于景观变化较快或适应度函数含噪声的问题,宜采用较小的 c 值,以避免过早收敛。
- 对于景观较平滑或需要较快收敛的问题,可采用较大的 c 值,以加快参数调整速度。