evox.algorithms.so.de_variants.shade

模块内容

SHADE

SHADE 算法的实现。

API

class evox.algorithms.so.de_variants.shade.SHADE(pop_size: int, lb: torch.Tensor, ub: torch.Tensor, diff_padding_num: int = 9, device: torch.device | None = None)[源代码]

基础: evox.core.Algorithm

SHADE 算法的实现。

参考文献: Tanabe R, Fukunaga A. Success-history based parameter adaptation for differential evolution[C]//2013 IEEE congress on evolutionary computation. IEEE, 2013: 71-78.

初始化

用给定的参数初始化SHADE算法。

参数:
  • pop_size -- 种群大小。

  • lb -- 搜索空间的下界。必须是一个一维张量。

  • ub -- 搜索空间的上界。必须是一个一维张量。

  • diff_padding_num -- 差分填充向量的数量。默认值为 9。

  • device -- 用于张量计算的设备(例如,“cpu”或“cuda”)。默认为 None。

step()[源代码]

执行 SHADE 算法的单步操作。

这涉及以下子步骤:

  1. 使用SHADE算法生成试验向量。

  2. 评估试验向量的适应度。

  3. 更新种群。

  4. 更新记忆。