2024年SEVC SCI1区:进化尺度适应差分进化算法ESADE,深度解析+性能实测
目录
- 1.摘要
- 2.改进策略
- 3.结果展示
- 4.参考文献
- 5.代码获取
1.摘要
差分进化算法(DE)的性能在很大程度上依赖于进化尺度,该尺度由包括变异、交叉等生成操作以及包括突变因子和交叉率的控制参数所控制。调整进化尺度以适应不同类型的问题是DE研究中一个关键且具有挑战性的未解决问题。为了有效地解决这一问题,本文提出了一种基于进化尺度适应差分算法(ESADE)。ESADE提出了一个成功的尺度估计机制,通过利用试验向量和目标向量提供的成功进化反馈来测量适当的进化尺度。有了适当的进化尺度,一个进化尺度适应机制预选每个目标向量最近或最远的试验向量,分别对应于小或大的进化尺度,以匹配不同进化阶段的搜索要求。
2.改进策略
成功尺度估计
成功尺度估计(SSE)机制通过评估成功试验向量与其目标向量的偏离程度来衡量进化过程的成功尺度,它通过计算每一代中试验向量与其对应目标向量之间的欧几里得距离:
d
i
,
g
=
∥
U
i
,
g
−
X
i
,
g
∥
,
i
=
1
,
2
,
.
.
.
,
N
P
d_{i,g}=\parallel\mathbf{U}_{i,g}-\mathbf{X}_{i,g}\parallel,i=1,2,...,NP
di,g=∥Ui,g−Xi,g∥,i=1,2,...,NP
将NP个距离值按照升序进行排序,并分配一个排名指数
γ
i
\gamma_i
γi,并进行归一化:
γ
i
=
γ
i
N
P
\gamma_i=\frac{\gamma_i}{NP}
γi=NPγi
如果试验向量的适应度值优于其对应目标向量的适应度值,则成功试验向量的归一化排名指数
γ
\gamma
γ将被保存到集合M中。
通过保存成功试验向量的γ值,SSE可以捕获关于生成改进解决方案的适当进化尺度的信息。最后,计算集合M的加权Lehmer均值:
ζ
=
∑
m
=
1
∣
M
∣
w
m
⋅
M
2
m
∑
m
=
1
∣
M
∣
w
m
⋅
M
m
\zeta=\frac{\sum_{m=1}^{|M|}w_m\cdot{M^2}_m}{\sum_{m=1}^{|M|}w_m\cdot M_m}
ζ=∑m=1∣M∣wm⋅Mm∑m=1∣M∣wm⋅M2m
w m = Δ f m ∑ m = 1 ∣ M ∣ Δ f m w_m=\frac{\Delta f_m}{\sum_{m=1}^{|M|}\Delta f_m} wm=∑m=1∣M∣ΔfmΔfm
进化尺度适应
进化尺度适应(ESA)机制能够根据当前的搜索需求动态调整优化过程的贪婪程度。此外,引入了进化尺度指标
ψ
\psi
ψ,用于衡量解空间中的成功进化程度:
ψ
=
(
1
−
a
)
⋅
ψ
+
a
⋅
ζ
\psi=(1-a)\cdot\psi+a\cdot\zeta
ψ=(1−a)⋅ψ+a⋅ζ
伪代码
3.结果展示
4.参考文献
[1] Zhang S X, Hu X R, Zheng S Y. Differential evolution with evolutionary scale adaptation[J]. Swarm and Evolutionary Computation, 2024, 85: 101481.