1. 引言
在工程设计、智能制造、能源系统规划以及复杂系统决策等实际应用中[1],优化问题往往同时涉及多个相互冲突的目标,并受到一系列等式或不等式约束的限制,这种情况下的难题通常被称为是约束多目标优化问题(Constrained Multi-Objective Optimization Problems, CMOPs)。CMOPs的数学定义如下:
(1)
约束条件为:
(2)
其中
为决策向量,
为目标函数,
和
分别为不等式和等式约束,
为不等式约束数,
为等式约束数。
对于决策变量
,在第n个约束下的违反程度可以用如下公式计算:
(3)
其中,
表示一个非常小的正值,用于放松约束。
(4)
对于一个解
,当且仅当
时,称这个解为可行解。满足所有约束条件的解所组成的集合映射在目标空间所形成的图像称为可行域。由于CMOPs是由多个相互冲突的目标所组成的,因此得到的可行解空间并不是单一的最优解,而是约束帕累托前沿。解决CMOPs的目标是找到一组可行Pareto最优解,形成带约束Pareto前沿(CPF) [2],实现良好的收敛和分布。此类问题要求同时优化多个冲突目标,同时满足一组约束,因此单一解无法实现目标之间的权衡。演化算法是一种基于种群的优化算法,具有强大的搜索能力,并能输出一组权衡解,适合求解各种复杂优化问题。因此研究人员倾向于使用演化算法求解CMOPs,各种类型的约束多目标演化算法(CMOEAs)逐渐增多。
CMOEA通常包括两个核心组件:多目标演化算法(MOEA)和约束处理技术(CHT)。MOEAs在促进种群演化进程中发挥关键作用,根据其环境选择机制,可分为三类:基于指标的方法、基于分解的方法以及基于支配的方法。这些演化算法在无约束多目标问题中取得了优异结果,但缺乏处理约束的能力。如果直接将MOEAs应用于求解CMOPs,很可能会得到一组不满足指定约束的解。为了处理约束,许多研究致力于设计CHTs,这些技术可以在满足约束的解和不满足约束的解之间进行选择[3]。因此,它们通常嵌入到MOEAs的环境选择过程中,形成CMOEAs来求解CMOPs。同时,为了评估设计的CMOEAs在求解问题方面的能力,近年来开发了大量基准测试问题集。
目前已有许多研究者设计出不同的CMOEAs,但通病是无法有效平衡目标与约束。仅依赖罚函数的CMOEAs需精细参数调整[4],基于约束支配原则(CDP)的方法可能过度优先可行性,忽略目标信息[5]。近期有研究者研究探索带约束Pareto前沿(CPF)与无约束Pareto前沿(UPF)关系以指导演化[6]。UPF提供优秀目标信息,如果采用不动态的方法去评估两者关系,其优秀信息利用可能会受限。双种群框架分别维护CPF和UPF种群,实现双向辅助,但通常存在权重分配不合理的情况,未能适应不同位置关系[7]。两阶段算法先探索景观后利用潜力区域,但该方法可能忽略自适应算子和参数调整,导致算力浪费[8]。
基于这些观察,本文提出自适应双种群演化算法(DPSCEA),利用CPF-UPF重叠关系情况来求解CMOPs。DPSCEA采用双种群:PC种群逼近CPF,PU种群逼近UPF。种群进化阶段分为学习阶段(使用GA和DE生成子代,分类关系)和演化阶段(基于关系自适应策略,如参数调整和多样性阈值)。从PC种群转移非支配及精英个体至PU种群,提升目标利用。主要贡献包括:
(1) 新型自适应双种群框架,通过聚类分类CPF-UPF重叠大小情况,实现针对性演化策略;
(2) 集成自适应GA和DE变体、参数调整及多样性监控,平衡探索与利用;
(3) 增强转移机制,选择PC种群非支配及单目标精英个体辅助PU种群进化。
2. 提出算法
2.1. 算法框架
算法1:DPSCEA总体框架 |
输入:种群大小N、最大评估次数FEs、学习阶段评估次数占最大评估次数百分比 输出:最终帕累托前沿解集 1: 初始化PC种群(逼近CPF)和PU种群(逼近UPF),每种群规模N,决策向量
2: 计算所有个体的目标向量f(x)和约束违反度
3: inLearning ← true, cnt ← 0, t ← 2N 4: while t < FEsmax do 5: if inLearning then 6: 执行学习阶段(算法2) 7: else 8: 执行演化阶段(算法4) 9: end if 10: t ← t + 2N 11: end while 12: 从PC种群提取所有非支配可行解作为最终PF |
算法1展示了算法的整体框架。本文提出的自适应双种群演化算法(DPSCEA)旨在利用CPF和UPF之间的重叠关系来求解CMOPs,常用的分类情况如图1所示。算法采用双种群框架:PC种群专注于逼近约束Pareto前沿,PU种群专注于逼近无约束Pareto前沿。演化过程分为两个阶段:学习阶段和演化阶段。
2.2. 学习阶段
算法2:学习阶段算法 |
输入:初始种群PC种群和PU种群,学习阶段评估次数占最大评估次数百分比 输出:学习阶段结束后的PC种群和PU种群和flag (重叠类型) 1: while inLearning do 2:
(其中
= max CV of initial PC,cp=5) 3: // GA + DE_current_to_rand_1 生成子代(各一半) 4: for pop ∈ {PC, PU} do 5: gaOff = GA_TournamentSelection(pop, Fitness, N/2) 6: deOff = DE_current_to_rand_1(pop, N/2, F, CR) 7: offspring ← [gaOff; deOff] 8: end for 9: // 环境选择 10: [P_C, Fitness_PC] = FirstStageEnvSelect([PC; offspring], N,
) 11: [P_U, Fitness_PU] = FirstStageEnvSelect([PU; offspring], N) 12: // 自适应F、CR 13: if success_rate > 0.5 then 14: F ← min(F + 0.05, 0.9), CR ← min(CR + 0.05, 0.9) 15: else 16: F ← max(F − 0.05, 0.4), CR ← max(CR − 0.05, 0.1) 17: end if 18: if cnt > T and (目标均值变化 < ε and flag稳定) or Problem. FE ≥ maxLearnFE then 19: inLearning ← false 20: end if 21: flag = ClusteringClassification (PC, PU) 22: end while |
Figure 1. Classification of CPF-UPF relationship types
图1. CPF-UPF关系类型分类
算法2为学习阶段算法,通过特定的学习策略演化两个种群,以测量CPF和UPF之间的关系。PC种群和PU种群同时使用遗传算法(GA)和差分演化(DE)各生成子代的一半,随后将父代种群和子代种群进行交叉合并,在合并种群中进行环境选择,基于目标函数值与约束违反程度计算综合适应度,得到最优种群个体,更新父代种群。并通过计算个体之间的两两欧式距离,得出当前种群的多样性值。同时,根据种群的多样性值自适应调整缩放因子F和交叉概率CR,优化种群在学习阶段的探索。当种群进化到满足学习阶段终止条件时,PC种群和PU种群基于可行性和支配关系确定CPF-UPF关系类型如图1所示(高重叠、中重叠或低重叠),学习阶段结束,进入演化阶段。
算法3确定CPF-UPF关系类型。通过非支配排序得出PC种群的第一前沿非支配解,若PC种群的第一前沿非支配解的个数未超过PC种群的10%,则计算PC种群的第一前沿非支配个体之间两两欧式距离,得出个体之间欧式距离的平均值;若PC种群的第一前沿非支配解的个数超过PC种群的10%,通过计算PC种群的第一前沿非支配个体之间两两欧式距离,选出两两欧式距离最大的10%个体,同时得出该种群大小10%个体欧式距离的平均值,该距离的一半记为r,以两两欧式距离最大的10%个体为圆心,r为半径得出圆的大小,计算PU种群中在圆中的个体数,将在圆中个体数/PC种群个体数,得出重叠比例,当重叠比例大于0.8时,认定为高重叠情况;当重叠比例小于0.2时,认定为低重叠情况;当重叠比例位于0.2~0.8之间,认定为中等重叠情况。
算法3:CPF-UPF重叠关系分类 |
输入:大小为N的PC种群和PU种群 输出:flag ∈ {1: high, 2: medium, 3: low} 1: PC_nd ← 非支配解 of PC (CV支配优先) 2: PU_nd ← 非支配解 of PU (仅目标支配) 3: if PU_nd全可行 then flag ← 1 4: else if PU_nd全不可行 then flag ← 3 5: else 6: combined ← [PC_nd.objs; PU_nd.objs],labels ← [1…; 2…] 7: [idx] ← kmeans(combined, M) 8: for each cluster k do 9: overlap_k ← min(count_PC, count_PU) / max(count_PC, count_PU) 10: end for 11: overlap ← mean(overlap_k) 12: if overlap > 0.8 then flag ← 1 13: else if overlap < 0.2 then flag ← 3 14: else flag ← 2 15: end if |
2.3. 演化阶段
在演化阶段,根据学习阶段所学习到的关系,设计相应的演化策略来提高目标信息的利用效率,更好地引导种群进化,其核心逻辑是基于种群多样性和种群间重叠度,动态调整策略参数和进化算子,平衡算法的探索与开发能力。在演化阶段自适应调整策略参数P,其调整逻辑由当前种群的多样性值进行决定。PC种群采用与学习阶段相同的固定混合策略生成子代,不随种群关系变化,保证进化稳定性。PU种群的子代生成策略会根据种群间重叠度和当前多样性值进行自适应切换。
DPSCEA算法在LIRCMOP5测试问题的运行如图2所示,在学习阶段结束后,得到CPF与UPF的重叠比例大于0.8,因此判断为高重叠情况,在演化阶段采取高重叠情况的演化策略来引导种群进化。两个种群搜索空间位置关系高度重合,避免冗余搜索,采取强化优质基因利用,以最优个体为引导,提升局部求精效率。在演化阶段结束后,对种群混合后进行环境选择,可得到完整的最终帕累托前沿解集。
DPSCEA算法在LIRCMOP9测试问题的运行如图3所示,在学习阶段结束后,得到CPF与UPF的重叠比例约为0.5,因此判断为中等重叠情况,在演化阶段采取中等重叠情况的演化策略来引导种群进化。中等重叠场景中兼顾探索广度与利用深度,采用多策略融合模式,同时平衡探索与协同,积极强化PC种群优质基因的迁移利用,同时平衡探索与协同。在演化阶段结束后,对种群混合后进行环境选择,可得到完整的最终帕累托前沿解集。
算法4:演化阶段 |
输入:大小为N的PC种群和PU种群,flag 输出:最终帕累托前沿解集 1: // 增强转移机制 2: nd_PC ← PC中非支配可行解(FrontNo==1) 3: elite_PC ← 每个目标上排序前10%的个体 4: transfer_set ← nd_PC ∪ elite_PC (去重) 5: proportion ← {0.05 if flag=1, 0.10 if flag=2, 0.15 if flag=3} 6: 随机选取 proportion×N 个 transfer_set 个体加入PU (替换最差个体) 7: // PC 种群:固定混合策略 8: PC_off ← GA_TournamentSelection(PC, N/2) + DE_current_to_rand_1(PC, N/2, F, CR) 9: // PU 种群:根据flag概率混合策略 10: switch flag 11: case 1 (high): 12: with prob 0.6: GA + DE_transfer(PC → PU) 13: with prob 0.2: DE_current_to_other_pbest_1(PU, PC_pbest, p, F, CR) 14: else: DE_best_1 或 DE_rand_1(依多样性) 15: case 2 (medium): 16: with prob 0.5: GA +DE_transfer + DE_current_to_other_pbest_1 (各1/3) 17: with prob 0.25: GA + DE_transfer 18: else: DE_current_to_other_pbest_1 19: case 3 (low): 20: with prob 0.7: DE_current_to_other_pbest_1 21: with prob 0.15: GA + DE_transfer 22: else: DE_best_1或DE_rand_1 23: end switch 24: // 环境选择 25: PC ← SecondStageEnvSelect([PC; PC_off; PU_off], N) 26: PU ← SecondStageEnvSelect([PU; PU_off; PC_off], N) |
![]()
Figure 2. Performance of DPSCEA on the LIRCMOP5 test problem
图2. DPSCEA在LIRCMOP5测试问题的运行情况
Figure 3. Performance of DPSCEA on the LIRCMOP9 test problem
图3. DPSCEA在LIRCMOP9测试问题的运行情况
DPSCEA算法在LIRCMOP3测试问题的运行如图4所示,在学习阶段结束后,得到CPF与UPF的重叠比例为0,因此判断为低重叠情况,在演化阶段采取低重叠情况的演化策略来引导种群进化,低重叠场景:两种群搜索空间差异显著,优先利用PC种群优质基因,深度挖掘PC种群的优化潜力,结合多样性状态动态调整搜索方向,且进行局部求精。在演化阶段结束后,对种群混合后进行环境选择,可得到完整的最终帕累托前沿解集。
Figure 4. Performance of DPSCEA on the LIRCMOP3 test problem
图4. DPSCEA在LIRCMOP3测试问题的运行情况
2.4. 计算复杂度
DPSCEA的计算过程由学习阶段与进化阶段的迭代更新组成,其计算复杂度与种群规模N、目标函数数量M、决策变量维度D及总迭代次数G密切相关。在算法的迭代过程中,种群初始化、子代生成、环境选择、跨种群精英迁移等操作的计算复杂度分别为
、
、
、
。根据种群规模、目标数量及迭代次数的取值,此迭代一次的计算复杂度为:
(5)
对于总迭代次数为G的优化问题,算法的总计算复杂度为:
(6)
在多目标优化场景中(M为常数、
),可简化为:
(7)
3. 实验分析
3.1. 算法对比与测试问题
为了更好地评估本文算法的性能,选取了目前最为先进的约束多目标进化算法作为对比:APSEA [9]、BiCo [10]、CCMO [11]、CTAEA [12]、URCMO [7]、ToP [13]。测试平台为PlatEMOv4.11 [14]。测试问题集选取LIR-CMOP测试集[15]和ZXH-CF测试集[16]。LIR-CMOP测试集共有14个测试问题,其中LIR-CMOP1-LIR-CMOP12为双目标问题,LIR-CMOP13和LIR-CMOP14为三目标问题。ZXH-CF测试集共有16个测试问题,其中ZXH-CF1-ZXH-CF12为三目标问题,ZXH-CF13-ZXH-CF16为双目标问题。为确保公平,对于每个测试问题,将种群规模N设置为100,最大评估次数为100,000次,每个算法进行30次独立运算,取运算后的平均值进行比较。DPSCEA超参数汇总如表1所示。
Table 1. Summary of DPSCEA hyperparameters
表1. DPSCEA超参数汇总
参数 |
值 |
描述 |
初始F |
0.6 |
DE缩放因子(学习阶段自适应) |
初始CR |
0.2 |
DE交叉概率(学习阶段自适应) |
cp |
5 |
ε衰减指数 |
T |
3 |
flag稳定性窗口 |
初始p |
0.2 |
DE_current_to_other_pbest比例 |
多样性阈值 |
0.8/0.2 × initial_diversity |
p自适应调整阈值 |
转移比例 |
0.05 (high)/0.10 (medium)/0.15 (low) |
精英迁移比例 |
3.2. 性能指标
评价不同算法性能的指标采用反向世代距离(IGD) [17]和超体积(HV) [18]。
反向世代距离(IGD)的定义:
(8)
其中,集合Q为算法求得的非支配解集,P为真实的Parato最优解集,
为解集P中解的个数,
表示P中的解X到解集Q的欧式距离的最小值。IGD值越小,表明算法的综合性能越好。
超体积(HV)的定义:
(9)
其中,
为勒贝格测度,
表示算法求得的非支配解集的数量,
表示解集中第i个非支配解与参考点构成的超体。HV越大,表明算法的综合性能越好。
3.3. 实验结果与分析
本文算法在LIR-CMOP测试集和ZXH-CF测试集上与对比算法进行性能评估。实验结果均经过显著性水平为0.05的Wilcoxon秩和检验,实验结果如表格所示。表格中对每个基准函数的最优值进行加粗显示,并在底部列出了Wilcoxon秩和检验的统计结果,符号“+”、“−”和“=”分别表示算法显著优于、劣于或统计学上与本文算法持平。
3.3.1. LIR-CMOP测试集结果分析
针对LIR-CMOP测试集,本文将DPSCEA与六种主流算法进行比较,其IGD和HV指标的实验结果如表2,表3所示。
Table 2. Comparison of IGD index of DPSCEA and other algorithms on the LIR-CMOP test set
表2. DPSCEA与其他算法在LIR-CMOP测试集的IGD指标比较
Problem |
APSEA |
BiCo |
CTAEA |
CCMO |
ToP |
URCMO |
DPSCEA |
LIRCMOP1 |
2.9376e−1 (3.05e−2) − |
2.4374e−1 (2.82e−2) = |
3.1941e−1 (8.19e−2) − |
2.7602e−1 (6.33e−2) = |
3.2474e−1 (1.72e−2) − |
1.6969e−1 (6.35e−2) + |
2.3080e−1 (1.01e−1) |
LIRCMOP2 |
2.5408e−1 (2.95e−2) − |
2.0622e−1 (2.41e−2) = |
2.7007e−1 (7.27e−2) − |
2.4577e−1 (4.47e−2) − |
2.8094e−1 (1.47e−2) − |
8.7651e−2 (7.11e−2) + |
2.1805e−1 (3.98e−2) |
LIRCMOP3 |
2.9805e−1 (4.70e−2) − |
2.4437e−1 (2.83e−2) + |
3.4166e−1 (4.16e−2) − |
3.0361e−1 (4.73e−2) − |
3.3999e−1 (8.13e−3) − |
1.2626e−1 (6.28e−2) + |
2.5816e−1 (9.63e−2) |
LIRCMOP4 |
2.8779e−1 (3.97e−2) − |
2.3333e−1 (2.18e−2) + |
3.0578e−1 (7.65e−2) − |
2.7124e−1 (4.43e−2) = |
3.1468e−1 (1.04e−2) − |
1.4247e−1 (7.63e−2) + |
2.4760e−1 (8.21e−2) |
LIRCMOP5 |
1.1872e+0 (1.65e−1) − |
1.2239e+0 (5.88e−3) − |
1.2027e+0 (1.63e−1) − |
3.0959e−1 (6.35e−2) − |
1.1244e+0 (2.53e−1) − |
6.5381e−1 (5.23e−1) − |
2.8007e−2 (1.22e−2) |
LIRCMOP6 |
1.1471e+0 (3.68e−1) − |
1.3454e+0 (1.86e−4) − |
1.3462e+0 (8.19e−4) − |
3.1751e−1 (9.17e−2) − |
1.2930e+0 (2.05e−1) − |
4.2106e−1 (4.52e−1) − |
6.6647e−2 (6.63e−2) |
LIRCMOP7 |
1.0906e−1 (3.88e−2) − |
9.1660e−1 (7.78e−1) − |
4.8845e−1 (6.25e−1) − |
1.1396e−1 (2.88e−2) − |
1.4287e+0 (5.78e−1) − |
4.8293e−2 (4.81e−2) − |
1.1704e−2 (1.12e−2) |
LIRCMOP8 |
1.8102e−1 (6.33e−2) − |
1.3551e+0 (6.02e−1) − |
7.8220e−1 (6.58e−1) − |
2.0022e−1 (6.53e−2) − |
1.5587e+0 (3.84e−1) − |
4.6723e−2 (4.90e−2) − |
8.2798e−3 (3.24e−4) |
LIRCMOP9 |
8.5093e−1 (1.65e−1) − |
9.9812e−1 (1.20e−1) − |
6.0004e−1 (1.49e−1) − |
5.6786e−1 (1.12e−1) − |
5.7674e−1 (1.29e−1) − |
4.3682e−1 (9.10e−2) − |
1.9716e−1 (6.09e−2) |
LIRCMOP10 |
8.4532e−1 (1.56e−1) − |
9.9163e−1 (5.07e−2) − |
4.9910e−1 (1.39e−1) − |
2.2146e−1 (6.91e−2) − |
4.4861e−1 (9.32e−2) − |
2.5900e−1 (1.27e−1) − |
5.2741e−2 (5.42e−2) |
LIRCMOP11 |
6.4376e−1 (1.61e−1) − |
8.4795e−1 (1.49e−1) − |
2.5452e−1 (8.90e−2) − |
1.1940e−1 (6.23e−2) − |
4.1064e−1 (1.02e−1) − |
1.8494e−1 (1.41e−1) − |
2.9957e−2 (3.72e−2) |
LIRCMOP12 |
5.0813e−1 (1.71e−1) − |
7.2852e−1 (2.41e−1) − |
3.7804e−1 (1.62e−1) − |
2.7325e−1 (1.43e−1) − |
3.0855e−1 (8.30e−2) − |
2.0099e−1 (7.65e−2) − |
8.9617e−2 (5.03e−2) |
LIRCMOP13 |
1.3158e+0 (1.91e−3) − |
1.3189e+0 (2.63e−3) − |
1.0923e−1 (2.04e−3) − |
9.3916e−2 (1.09e−3) = |
1.3341e+0 (5.77e−2) − |
1.0416e−1 (2.58e−3) − |
9.3973e−2 (1.47e−3) |
LIRCMOP14 |
1.2725e+0 (2.08e−3) − |
1.2752e+0 (1.75e−3) − |
1.1118e−1 (1.77e−3) − |
9.5954e−2 (1.02e−3) + |
1.3029e+0 (4.87e−3) − |
9.7883e−2 (9.51e−4) − |
9.6438e−2 (1.04e−3) |
+/−/= |
0/14/0 |
2/10/2 |
0/14/0 |
1/10/3 |
0/14/0 |
4/10/0 |
|
Table 3. Comparison of HV index of DPSCEA and other algorithms on the LIR-CMOP test set
表3. DPSCEA与其他算法在LIR-CMOP测试集的HV指标比较
Problem |
APSEA |
BiCo |
CTAEA |
CCMO |
ToP |
URCMO |
DPSCEA |
LIRCMOP1 |
1.1535e−1 (1.02e−2) − |
1.2877e−1 (9.32e−3) = |
1.1576e−1 (2.12e−2) = |
1.2097e−1 (1.92e−2) = |
1.0752e−1 (8.71e−3) − |
1.5936e−1 (2.64e−2) + |
1.5169e−1 (2.74e−2) |
LIRCMOP2 |
2.3467e−1 (1.49e−2) − |
2.4976e−1 (1.37e−2) = |
2.3173e−1 (3.61e−2) = |
2.3769e−1 (2.38e−2) = |
2.1947e−1 (1.14e−2) − |
3.1184e−1 (3.95e−2) + |
2.8039e−1 (3.07e−2) |
LIRCMOP3 |
1.0448e−1 (1.29e−2) − |
1.1708e−1 (9.42e−3) = |
9.6015e−2 (9.68e−3) − |
1.0460e−1 (1.57e−2) − |
9.1002e−2 (5.50e−3) − |
1.5837e−1 (2.40e−2) + |
1.2435e−1 (2.17e−2) |
LIRCMOP4 |
1.9467e−1 (1.93e−2) = |
2.1423e−1 (1.08e−2) + |
1.8859e−1 (3.01e−2) − |
2.0158e−1 (1.82e−2) = |
1.8232e−1 (9.08e−3) − |
2.5369e−1 (3.41e−2) + |
2.2576e−1 (2.73e−2) |
LIRCMOP5 |
5.1167e−3 (2.80e−2) − |
0.0000e+0 (0.00e+0) − |
4.5998e−3 (2.52e−2) − |
1.5167e−1 (2.39e−2) − |
1.8103e−2 (5.72e−2) − |
1.2141e−1 (1.22e−1) − |
2.7916e−1 (7.33e−3) |
LIRCMOP6 |
2.0397e−2 (3.83e−2) − |
0.0000e+0 (0.00e+0) − |
0.0000e+0 (0.00e+0) − |
1.1249e−1 (1.47e−2) − |
3.7907e−3 (1.44e−2) − |
1.1163e−1 (6.32e−2) − |
1.7680e−1 (1.80e−2) |
LIRCMOP7 |
2.5187e−1 (1.19e−2) − |
1.1904e−1 (1.21e−1) − |
1.8356e−1 (1.01e−1) − |
2.4999e−1 (8.71e−3) − |
3.9957e−2 (9.12e−2) − |
2.7633e−1 (1.87e−2) − |
2.9183e−1 (6.08e−3) |
LIRCMOP8 |
2.3721e−1 (1.30e−2) − |
4.9455e−2 (9.13e−2) − |
1.3637e−1 (1.01e−1) − |
2.3238e−1 (1.31e−2) − |
2.0446e−2 (6.26e−2) − |
2.7683e−1 (1.91e−2) − |
2.9380e−1 (2.03e−4) |
LIRCMOP9 |
1.8670e−1 (8.72e−2) − |
1.1548e−1 (5.29e−2) − |
2.9841e−1 (7.33e−2) − |
3.2598e−1 (4.67e−2) − |
3.0296e−1 (7.89e−2) − |
3.9180e−1 (4.55e−2) − |
5.0947e−1 (1.28e−2) |
LIRCMOP10 |
1.1985e−1 (1.10e−1) − |
6.0721e−2 (1.31e−2) − |
4.1200e−1 (1.03e−1) − |
5.7895e−1 (4.34e−2) − |
4.4968e−1 (9.93e−2) − |
5.6191e−1 (1.04e−1) − |
6.8410e−1 (2.35e−2) |
LIRCMOP11 |
2.9949e−1 (1.09e−1) − |
2.0110e−1 (5.89e−2) − |
5.8063e−1 (5.33e−2) − |
6.3288e−1 (4.00e−2) − |
4.1403e−1 (7.80e−2) − |
5.6916e−1 (1.06e−1) − |
6.7813e−1 (2.15e−2) |
LIRCMOP12 |
4.1126e−1 (7.95e−2) − |
3.0635e−1 (1.07e−1) − |
4.3812e−1 (6.52e−2) − |
5.0092e−1 (5.13e−2) − |
4.6466e−1 (4.39e−2) − |
5.2120e−1 (3.73e−2) − |
5.7789e−1 (2.70e−2) |
LIRCMOP13 |
1.5705e−4 (1.48e−4) − |
1.0804e−4 (1.13e−4) − |
5.4508e−1 (1.73e−3) − |
5.5382e−1 (1.69e−3) + |
1.8501e−3 (9.92e−3) − |
5.3217e−1 (2.95e−3) − |
5.5057e−1 (2.09e−3) |
LIRCMOP14 |
6.0922e−4 (2.40e−4) − |
4.2525e−4 (3.37e−4) − |
5.4581e−1 (9.60e−4) − |
5.5414e−1 (1.38e−3) + |
1.4687e−4 (2.27e−4) − |
5.4932e−1 (1.74e−3) − |
5.5173e−1 (1.24e−3) |
+/−/= |
0/13/1 |
1/10/3 |
0/12/2 |
2/9/3 |
0/14/0 |
4/10/0 |
|
3.3.2. ZXH_CF测试集结果分析
针对LIR-CMOP测试集,本文将DPSCEA与六种主流算法进行比较,其IGD和HV指标的实验结果如表4和表5所示。
Table 4. Comparison of IGD index of DPSCEA and other algorithms on the ZXH_CF test set
表4. DPSCEA与其他算法在ZXH_CF测试集的IGD指标比较
Problem |
APSEA |
BiCo |
CTAEA |
CCMO |
ToP |
URCMO |
DPSCEA |
ZXH_CF1 |
4.7106e−2 (1.13e−3) + |
4.7074e−2 (1.26e−3) + |
4.8881e−2 (1.88e−3) + |
4.6786e−2 (9.59e−4) + |
9.3376e−2 (1.28e−2) − |
5.4501e−2 (2.23e−3) − |
4.9351e−2 (1.13e−3) |
ZXH_CF2 |
1.0748e−1 (1.75e−1) − |
1.5061e−1 (2.11e−1) − |
1.1452e−1 (1.41e−1) − |
1.7137e−1 (2.89e−1) − |
2.4289e−1 (1.32e−1) − |
6.0067e−2 (9.96e−4) − |
5.8429e−2 (1.97e−3) |
ZXH_CF3 |
6.3613e−2 (1.29e−3) + |
6.2378e−2 (1.31e−3) + |
7.4706e−2 (2.56e−3) − |
6.2392e−2 (1.41e−3) + |
2.2986e−1 (8.22e−2) − |
7.6983e−2 (2.16e−3) − |
6.6485e−2 (1.94e−3) |
ZXH_CF4 |
1.6564e−1 (1.27e−1) = |
1.1404e−1 (8.14e−2) = |
1.1644e−1 (7.87e−2) − |
1.7737e−1 (1.96e−1) = |
1.0733e+0 (2.70e−1) − |
1.2299e−1 (9.93e−2) − |
7.7671e−2 (6.86e−2) |
ZXH_CF5 |
6.2186e−2 (7.02e−2) − |
4.8683e−2 (4.13e−2) − |
8.9430e−2 (1.63e−1) − |
1.0425e−1 (2.05e−1) = |
1.5223e−1 (1.01e−1) − |
3.5775e−2 (1.38e−3) − |
3.2305e−2 (1.30e−3) |
ZXH_CF6 |
3.1122e−2 (6.38e−4) − |
3.1443e−2 (6.21e−4) − |
3.6821e−2 (1.59e−3) − |
3.0721e−2 (5.52e−4) = |
5.8398e−2 (6.14e−3) − |
3.3558e−2 (1.00e−3) − |
3.0370e−2 (6.08e−4) |
ZXH_CF7 |
1.3780e−1 (1.14e−1) − |
1.3271e−1 (7.86e−2) − |
9.0138e−2 (7.91e−2) − |
1.0365e−1 (1.30e−1) = |
5.2364e−1 (2.20e−1) − |
8.0073e−2 (6.51e−2) − |
4.4608e−2 (4.98e−2) |
ZXH_CF8 |
3.2654e−2 (6.82e−4) = |
3.2720e−2 (5.42e−4) = |
5.3453e−2 (4.36e−3) − |
3.1976e−2 (6.57e−4) + |
1.7186e−1 (4.41e−2) − |
4.1904e−2 (1.33e−3) − |
3.2946e−2 (6.86e−4) |
ZXH_CF9 |
2.6654e−2 (4.50e−4) = |
2.6424e−2 (5.79e−4) = |
6.6236e−2 (1.08e−2) − |
2.6643e−2 (5.10e−4) = |
4.9453e−1 (1.41e−1) − |
2.8581e−2 (9.39e−4) − |
2.6523e−2 (4.90e−4) |
ZXH_CF10 |
1.1297e−1 (1.12e−1) − |
9.7642e−2 (9.88e−2) = |
1.0681e−1 (6.77e−2) − |
1.1856e−1 (1.71e−1) − |
1.2987e+0 (3.36e−1) − |
9.8088e−2 (1.34e−1) − |
4.5718e−2 (3.70e−2) |
ZXH_CF11 |
2.7964e−2 (4.08e−4) = |
2.8235e−2 (6.14e−4) = |
3.5390e−2 (1.05e−3) − |
2.8048e−2 (5.05e−4) = |
4.3690e−1 (2.00e−1) − |
2.8264e−2 (4.50e−4) = |
2.8076e−2 (4.38e−4) |
ZXH_CF12 |
9.4962e−2 (2.24e−1) = |
3.2035e−2 (2.26e−2) = |
4.5366e−2 (5.86e−2) − |
3.8504e−2 (6.29e−2) − |
4.6553e−1 (8.86e−2) − |
2.6011e−2 (8.97e−4) − |
2.4035e−2 (4.60e−4) |
ZXH_CF13 |
1.3438e−1 (1.38e−1) = |
3.3115e−2 (7.02e−2) + |
1.4953e−1 (1.84e−1) − |
1.7646e−1 (2.30e−1) = |
1.1159e+0 (3.88e−1) − |
7.8558e−2 (1.22e−1) − |
5.3473e−2 (1.37e−1) |
ZXH_CF14 |
2.5179e−3 (1.12e−4) − |
2.3678e−3 (5.13e−5) + |
2.8236e−3 (9.18e−5) − |
2.4415e−3 (6.94e−5) = |
9.4626e−2 (6.02e−2) − |
2.9953e−3 (8.57e−5) − |
2.4576e−3 (4.12e−5) |
ZXH_CF15 |
1.0317e−2 (3.78e−2) − |
6.3469e−2 (1.72e−1) = |
1.4732e−2 (4.60e−2) − |
1.8582e−2 (7.08e−2) − |
1.3441e−1 (1.07e−1) − |
2.9513e−3 (5.95e−5) − |
2.8825e−3 (4.82e−5) |
ZXH_CF16 |
2.6429e−3 (4.03e−5) + |
2.6674e−3 (4.64e−5) = |
1.4597e−2 (5.26e−3) − |
2.6432e−3 (4.53e−5) + |
2.3447e−2 (4.50e−2) − |
2.6918e−3 (5.44e−5) = |
2.6748e−3 (5.09e−5) |
+/−/= |
3/7/6 |
4/4/8 |
1/15/0 |
4/4/8 |
0/16/0 |
0/14/2 |
|
Table 5. Comparison of HV index of DPSCEA and other algorithms on the ZXH_CF test set
表5. DPSCEA与其他算法在ZXH_CF测试集的HV指标比较
Problem |
APSEA |
BiCo |
CTAEA |
CCMO |
ToP |
URCMO |
DPSCEA |
ZXH_CF1 |
8.3103e−1 (1.43e−3) + |
8.3117e−1 (1.66e−3) + |
8.3421e−1 (1.74e−3) + |
8.3143e−1 (1.12e−3) + |
7.6610e−1 (1.78e−2) − |
8.1976e−1 (3.18e−3) − |
8.2666e−1 (1.56e−3) |
ZXH_CF2 |
4.9390e−1 (1.32e−1) − |
4.5531e−1 (1.97e−1) − |
4.8194e−1 (1.50e−1) − |
4.6070e−1 (1.93e−1) − |
2.9341e−1 (8.22e−2) − |
5.3785e−1 (1.75e−3) − |
5.4388e−1 (3.38e−3) |
ZXH_CF3 |
5.1032e−1 (2.53e−3) + |
5.1385e−1 (2.73e−3) + |
5.1238e−1 (2.23e−3) + |
5.1217e−1 (2.65e−3) + |
2.5686e−1 (6.45e−2) − |
4.7598e−1 (3.79e−3) − |
5.0002e−1 (4.06e−3) |
ZXH_CF4 |
2.7759e−1 (1.31e−1) = |
3.3286e−1 (1.06e−1) = |
3.4202e−1 (1.04e−1) − |
2.9285e−1 (1.42e−1) = |
1.2800e−3 (6.53e−3) − |
3.2302e−1 (1.19e−1) − |
3.8438e−1 (8.18e−2) |
ZXH_CF5 |
2.7199e−1 (7.18e−2) = |
2.8470e−1 (5.00e−2) = |
2.6562e−1 (6.60e−2) − |
2.5850e−1 (9.50e−2) = |
1.6942e−1 (7.08e−2) − |
2.9818e−1 (2.45e−3) − |
3.0480e−1 (2.97e−3) |
ZXH_CF6 |
2.2453e−1 (9.39e−4) = |
2.2486e−1 (8.88e−4) = |
2.2345e−1 (1.29e−3) − |
2.2524e−1 (1.19e−3) = |
1.8909e−1 (8.08e−3) − |
2.1938e−1 (1.46e−3) − |
2.2480e−1 (1.11e−3) |
ZXH_CF7 |
2.2675e−1 (1.30e−1) − |
2.2006e−1 (1.00e−1) − |
2.7271e−1 (1.08e−1) − |
2.7807e−1 (1.27e−1) = |
2.1011e−2 (4.37e−2) − |
2.8587e−1 (8.88e−2) − |
3.3775e−1 (6.89e−2) |
ZXH_CF8 |
2.3431e−1 (1.09e−3) + |
2.3408e−1 (1.22e−3) + |
2.1402e−1 (4.62e−3) − |
2.3563e−1 (1.36e−3) + |
1.0286e−1 (2.75e−2) − |
2.2095e−1 (1.93e−3) − |
2.3281e−1 (1.20e−3) |
ZXH_CF9 |
2.7016e−1 (1.56e−3) + |
2.7145e−1 (1.33e−3) + |
2.3827e−1 (1.02e−2) − |
2.7130e−1 (1.31e−3) + |
9.2516e−2 (2.84e−2) − |
2.5993e−1 (2.81e−3) − |
2.6848e−1 (1.42e−3) |
ZXH_CF10 |
2.1943e−1 (1.32e−1) − |
2.3149e−1 (1.22e−1) = |
2.1867e−1 (9.86e−2) − |
2.4081e−1 (1.32e−1) = |
1.8756e−6 (8.60e−6) − |
2.4831e−1 (1.20e−1) − |
3.0575e−1 (7.70e−2) |
ZXH_CF11 |
4.2623e−1 (2.49e−3) + |
4.2672e−1 (1.80e−3) + |
3.8863e−1 (5.58e−3) − |
4.2669e−1 (1.56e−3) + |
2.2432e−1 (7.04e−2) − |
4.2235e−1 (2.14e−3) − |
4.2413e−1 (2.92e−3) |
ZXH_CF12 |
6.7460e−1 (1.57e−1) = |
7.3831e−1 (4.59e−2) = |
7.0768e−1 (1.18e−1) − |
7.2923e−1 (1.10e−1) − |
3.2611e−1 (8.35e−2) − |
7.4821e−1 (1.60e−3) − |
7.5395e−1 (1.78e−3) |
ZXH_CF13 |
1.9141e−1 (1.19e−1) − |
2.8669e−1 (7.91e−2) + |
1.9683e−1 (1.37e−1) − |
1.9450e−1 (1.39e−1) = |
2.6869e−3 (1.37e−2) − |
2.4531e−1 (1.11e−1) − |
2.8028e−1 (9.52e−2) |
ZXH_CF14 |
5.4282e−1 (2.41e−4) − |
5.4321e−1 (1.78e−4) − |
5.4233e−1 (2.83e−4) − |
5.4307e−1 (2.09e−4) − |
4.1423e−1 (4.79e−2) − |
5.4181e−1 (2.33e−4) − |
5.4332e−1 (7.57e−5) |
ZXH_CF15 |
6.5239e−1 (4.59e−2) = |
6.0444e−1 (1.57e−1) − |
6.4991e−1 (5.23e−2) − |
6.4420e−1 (7.55e−2) − |
4.8574e−1 (1.02e−1) − |
6.6148e−1 (1.72e−4) − |
6.6185e−1 (9.42e−5) |
ZXH_CF16 |
7.7818e−1 (1.02e−4) + |
7.7824e−1 (9.01e−5) + |
7.6308e−1 (7.33e−3) − |
7.7820e−1 (8.07e−5) + |
7.6936e−1 (1.46e−2) − |
7.7790e−1 (1.49e−4) − |
7.7813e−1 (6.50e−5) |
+/−/= |
6/5/5 |
7/4/5 |
2/14/0 |
6/4/6 |
0/16/0 |
0/16/0 |
|
综合LIRCMOP和ZXH-CF两个测试集的实验结果,DPSCEA算法在约束多目标优化问题上表现出显著的综合优势。在IGD指标方面,DPSCEA在大多数测试问题中取得了最优或次优值,例如在LIRCMOP9-LIRCMOP14和ZXH_CF5、ZXH_CF7、ZXH_CF10、ZXH_CF12、ZXH_CF13等高复杂度问题上,其IGD值大幅低于APSEA、BiCo、CTAEA、CCMO、ToP和URCMO等对比算法。这表明DPSCEA在处理高维约束、多模态问题和非线性Pareto前沿时,具有更强的收敛性和鲁棒性。在相对简单的LIRCMOP1-LIRCMOP4和部分ZXH-CF低约束问题上,各算法性能差距较小,DPSCEA仍能稳定保持与最优算法相当或更优的结果,展示出其良好的适应性。在HV指标上,DPSCEA同样表现出色,在绝大多数问题中获得了最大的超体积值,特别是在ZXH_CF4、ZXH_CF7、ZXH_CF12、ZXH_CF14、ZXH_CF15等高约束复杂问题上,其HV值显著高于对比算法,解集覆盖范围更广、多样性更强。这验证了DPSCEA在严格约束下有效维持种群多样性,避免前沿收缩。
在30个测试问题中,DPSCEA对ToP和URCMO实现了全面显著优胜,对CTAEA胜出比例超过90%,对其他算法也表现出明显优势。其优异性能源于动态参数自适应与约束增强机制的整合,提升了约束处理效率和全局搜索能力。实验结果证明DPSCEA在约束多目标进化优化领域的可行性和先进性。
3.3.3. 种群分类性能分析
为了进一步验证所提出的重叠关系分类和自适应策略的有效性,本文设计了两种算法变体:DPSCEA-H,DPSCEA-L。DPSCEA-H固定为高重叠策略的变体,DPSCEA-L固定为低重叠策略的变体。如表6所示,DPSCEA在性能指标上显著优于其算法变体,这充分说明了本文所提出的重叠关系分类和自适应策略的有效性。
Table 6. Comparison of DPSCEA and its variants on the LIRCMOP and ZXH_CF test sets
表6. DPSCEA与其变体在LIRCMOP和ZXH_CF测试集的指标比较
算法 |
DPSCEA-H |
DPSCEA-L |
DPSCEA |
LIRCMOP (IGD) (+/−/=) |
2/9/3 |
1/8/5 |
—— |
LIRCMOP(HV) (+/−/=) |
3/7/4 |
2/8/5 |
—— |
ZXH-CF (IGD) (+/−/=) |
3/11/2 |
2/9/5 |
—— |
ZXH-CF (HV) (+/−/=) |
2/11/3 |
2/9/4 |
—— |
4. 总结
本文围绕解决约束多目标优化问题(CMOPs),提出了一种新的自适应双种群演化算法(DPSCEA),DPSCEA通过动态分类CPF与UPF的重叠关系,实现自适应演化策略和参数调整。该算法采用双种群框架,在学习阶段利用GA和DE混合生成子代,评估种群多样性和关系类型;在演化阶段根据高/中/低重叠场景自适应进行策略切换,提升目标信息利用效率,并通过精英转移机制引导种群演化。
实验在LIR-CMOP和ZXH-CF测试集上进行,与六种主流算法比较,结果表明DPSCEA在IGD和HV指标上整体领先,尤其在高维约束和多模态问题中表现出更强的收敛性、多样性和鲁棒性。Wilcoxon秩和检验确认其显著优势,胜出比例高达90%。这验证了自适应框架在平衡约束与目标方面的有效性,为复杂优化问题提供了新思路。
未来工作可尝试将DPSCEA算法应用于超多目标优化问题或动态约束场景,并研究其他高级演化算子的策略,更进一步提升该算法在实际应用中的性能。