为了进一步提高差分进化(DE)最具竞争力的变体之一L-SHADE的性能,研究中提出了一种新的自适应L-SHADE算法AL-SHADE。对L-SHADE进行了两个主要部分的修改。一部分,在突变过程中添加了一种新的突变策略,以提高开发能力,充分利用种群信息。另一部分,提出了一种带有突变策略自适应方案的选择策略,以调整开发和探索。
2. 相关工作
最近,DE 仍然被选为开发新型进化算法的基础,特别是在连续优化领域[26]、[28]、[29],尽管它在1995年被开发。L-SHADE [4] 被认为是过去几十年中DE最成功的变体之一,因为它是2014年IEEE进化计算竞赛(IEEE CEC 2014)的获胜者。在本节中,详细介绍了L-SHADE。
2.1. 初始化策略
种群中的初始个体(解向量)随机初始化,如公式(1)所示。
其中 是0到1之间的均匀分布随机数。 和 是定义搜索空间的问题特定上下界。 是种群大小。 是问题特定的维度。
历史记忆 、 的值,其中包含交叉率 和缩放因子 的条目,在初始化阶段初始化为0.5,如公式(2)所示。需要注意的是, 和 的所有元素都是0到1之间的标量, 是历史记忆的大小。此外,外部存档 初始化为空,因为没有先前的劣解。
2.2. 变异策略
在L-SHADE中,采用变异策略current-to-pbest/1。为个体 生成的变异向量 使用种群中的四个向量(个体)生成,如公式(3)所示。缩放因子 生成如公式(4)所示。
在公式(3)中, 是当前种群中前 个个体中随机选择的主导个体, 是贪婪控制参数,它在开发和探索(小 行为更贪婪)之间进行权衡。 是从当前种群中随机选择的, 是从当前种群和外部存档的联合中随机选择的,并且 和 彼此不同以及与 不同。在公式(4)中, 是一个遵循均值 和标准差值参数 0.1 的柯西分布的随机变量, 是从具有相同索引 的记忆 中随机选择的值。如果 ,则 将设置为 1,如果 ,公式(4)将重复应用以生成有效值。此外,如果变异向量元素 超出搜索范围 ,则采用修正策略,如公式(5)所示。
U_j
end{cases} tag{5} " style="text-align: center;overflow-x: auto;overflow-y: auto;display: block;">
2.3. 交叉策略
在将变异策略应用于生成的变异向量 后,生成试验向量 ,基于变异向量 和原始向量 ,使用二项式交叉策略,如公式(6)所示。
或否则
在公式(6)中, 是均匀分布的随机数, 是决策变量索引,它是随机生成的,并且可以确保至少从变异向量中取一个分量 。个体 的交叉率值 从高斯分布中给出,如公式(7)所示。如果公式(7)生成的 超出 ,则用生成值的极限值 或 替换。
否则
在公式(7)中, 表示终端值。 是从具有相同索引 的交叉率历史记忆 中随机选择的均值参数,如缩放因子 的情况,0.1 是标准差值参数。
2.4. 选择策略
在当前代 生成所有试验向量 后,基于目标函数值的选择操作应用于确定下一代 的幸存者,如公式(8)所示。
否则
在公式(8)中, 是问题特定的目标函数。
2.5. 外部存档和历史记忆更新策略
在L-SHADE中,采用外部存档 以增强种群的多样性并避免过早收敛。如果父向量 优于试验向量 ,则将其保留到下一代,否则将其保留到外部存档 中。一旦存档的大小达到预定大小,随机选择一个元素被新插入的元素替换。 和 值成功生成试验个体,优于历史个体,则被视为成功值。所有成功的值分别保留到 和 中,这些值用于在每一代结束时更新历史记忆 、,如公式(9)-(10)所示。一对 和 中的元素在一代中生成,索引 从 1 开始并在每一代后增加 1, 将在超过内存大小 时重置为 1。需要注意的是,如果 ==0,即在一代中没有试验向量优于原始向量,则 、 将不会被更新。更重要的是,本文提出的AL-SHADE中的记忆 和 的最后条目在优化过程中始终保留 0.9。换句话说,如果超过 ,则更新单元的索引 将重置为 1。
否则否则
在公式(9)-(10)中, 是加权勒梅尔平均值,计算如公式(11),(12)所示,其中 表示 或 。
2.6. 线性种群规模缩减
在L-SHADE中,采用线性种群规模缩减(LPSR)动态调整种群规模,即种群规模在代 1 和 (终止迭代次数)时连续减少以匹配线性函数,其中种群规模在代 1 和 时分别为 和 。种群规模在代 更新如公式(13)所示。
在公式(13)中, 返回最接近的整数。 是当前目标函数评估次数, 是目标函数评估的最大次数。在代 结束时, 最差个体将从当前种群中丢弃。
3. 提出的AL-SHADE算法
在本节中,描述了L-SHADE的新变体,命名为AL-SHADE。对L-SHADE的改进策略主要包括两个部分。一方面,在变异过程中添加了一种新的变异策略current-to-Amean/1。另一方面,采用了一种具有变异策略适应方案的选择策略。AL-SHADE在本节中详细描述。
3.1. 基于加权均值的变异策略
变异策略current-to-pbest/1已被证明是一种有效的变异策略,可以有效加速基于DE算法的收敛速度,并且与变异策略current-to-best/1相比,它也可以在一定程度上避免陷入局部最优。然而,随着种群的减少,当前种群中前 个个体的数量减少。在优化过程的后期, 接近 ,甚至 是 ,这将导致陷入局部最优。此外,这些在L-SHADE中代 被保留在 中的个体是主导个体,它们在代 中被消除。外部存档 中的少数个体被随机选为 用于公式(3)中的变异,这并没有充分利用优化过程中的群体信息。为了解决上述缺点,本工作中提出了一种新的变异策略,命名为current-to-Amean/1,如公式(14)所示。
在公式(14)中, 是基于外部存档 中有希望的个体估计的全局最优解,这将避免陷入局部最优。 是通过使用公式(15)计算的。
在公式(15)-(17)中,从外部存档 中选择适应度更好的 个个体作为有希望的种群,用于计算加权均值 , 是通过公式(16)计算的 的权重, 是目标函数值从高到低排列的 个有希望的个体,即 是最好的, 是 中最差的, 是外部存档 中的个体数量, 是精英因子参数。
此外,AL-SHADE中外部存档 的更新机制进行了调整,以充分利用新生成的主导个体,而不是以前的主导个体,即优于父向量的试验向量将被保留到下一代和外部存档 中。由于 中的个体在第一代中使用, 不再初始化为空集,而是保存初始化生成的最佳个体。
3.2. 具有适应方案的选择策略
注意到新的变异策略current-to-Amean/1被添加为变异策略之一,而不是直接替换变异策略current-to-pbest/1,因为公式(3)和公式(14)在优化的不同阶段扮演不同的角色。有效地整合两种变异策略以充分利用它们的优势至关重要。因此,本节提出了具有适应方案的选择策略,以有效地整合两种变异策略。采用自适应概率参数 来选择公式(3)或公式(14),每个个体在每一代中都有一定的概率。由于没有先验知识, 初始化为0.5,并在搜索过程中根据公式(18)自适应调整。
在公式(18)-(20)中, 和 分别是使用公式(3)和公式(14)作为变异策略的个体数量。 和 是使用公式(3)和公式(14)作为变异策略生成的更好个体的数量。因此, 和 分别是使用公式(3)和公式(14)作为变异策略在第 代生成更好解的概率。此外,如果 超出 [0.1,0.9],则它将被替换为最接近生成值的极限值(0.1 或 0.9)。
3.3. AL-SHADE的框架
总之,所提算法的流程图如图2所示。AL-SHADE与LSHADE的主要区别包括新的变异策略、具有适应方案的选择策略以及外部存档 的更新机制。对于每个解,如果随机数 ,则选择公式(3)生成变异向量 ,反之则选择公式(14)。
完整资源获取方式(200多种算法)
https://github.com/suthels/-/blob/main/README.md
Ref: Yintong Li, Tong Han, Huan Zhou, Shangqin Tang, Hui Zhao, A novel adaptive L-SHADE algorithm and its application in UAV swarm resource configuration problem, Information Sciences. 606 (2022) 350–367. https://doi.org/10.1016/j.ins.2022.05.058