Page 186 - 《软件学报》2026年第3期
P. 186
丁炜超 等: 基于信息共享的改进双归档高维多目标进化算法 1149
输出: 收敛性档案 CA.
1. 初始化: [P, CA, DA, W] = Initialize(N, M);
2. t = 0;
3. while t < MG do
4. 根据参数 δ 选择交配父种群: MP = Restrictive_Mating_Selection(CA, DA, δ); //算法 2
5. 使用交叉变异方法生成子代: Q = Offspring_Generation(MP);
6. 档案库更新: [CA, DA] = Update_Archive(Q, CA, DA, W); //算法 3
7. 档案库截断: [CA, DA] = Delete_Redundant_Individuals(CA, DA, N); //算法 4
8. 子代迁移: [CA, DA] = Individual_Migration(CA, DA, MG, t); //算法 5
9. t = t+1;
10. end while
11. return CA
2.2 限制性交配选择策略
Two-Arch/IS 的繁殖过程基于限制性的交配选择策略进行, 通过在特定情况下选择收敛性和多样性表现卓越
的个体作为父代种群, 从而产生性能表现更好的子代种群, 进而提高算法在目标空间中的搜索能力. 繁殖过程首先
以限制性的选择方法确定交配种群, 随后遵循 Two-Arch 算法中定义的交叉和变异方法, 生成新一代种群. 限制性
交配选择父代的过程涵盖两种情况: 一种是在整个种群中随机选择父代种群, 另一种则是分别从两个档案库中选
取表现突出的个体作为父代种群. 随机选择的方式确保子代具有较强的随机性和多样性, 能够广泛探索目标空间;
而特定父代的选择策略通过收敛性和多样性突出的父代, 保证子代个体具备高质量特性, 增强了算法的选择压力,
进而提升种群向 PF 收敛的能力.
Two-Arch/IS 预先定义了一个参数 δ, 以控制算法随机选择父代的概率. 通过实验验证, 当 δ 的取值为 0.7 时,
算法展现出较好的性能 (见第 3.2 节). 下面将详细阐述 Two-Arch/IS 算法选择亲本的具体过程.
首先, Two-Arch/IS 根据轮盘赌方法确定当前过程选择父代种群的方式. 随机选择父代种群时, 算法在 CA 和
DA 的并集中进行选择. 对于限制性的选择策略, 算法首先从 CA 中随机选择两个个体. 为筛选具有更优收敛潜力
的亲本 1, 采用目标空间中的欧几里得距离作为评估标准. 具体而言, 计算当前个体与 CA 中所有其他个体的距离
之和, 选择距离和最小的解作为亲本. 依据在于, 在连续凸帕累托前沿场景下, 距离之和最小的解等价于收敛最优
解, 而在非凸、离散等复杂 PF 场景中, 该解表现为目标空间的几何中心解, 反映当前种群可达的最均衡权衡状态.
距离求和计算公式如下, x 代表当前计算个体, P 表示当前种群集合, dist 为个体 x 和 y 间的欧几里得距离.
∑
d(x,P) = dist(x,y) (1)
y∈P
同样地, 在 DA 中进行类似操作以选择更具多样性潜力的亲本 2, 依赖欧几里得距离进行多样性的评估. 算法
计算当前个体到 DA 中所有其他个体的距离之和, 选择距离之和最大的个体, 即为目标空间的边界表征解, 能够引
导种群向未探索区域扩张, 并通过定位种群分布极值点给出更好的多样性贡献.
为便于理解 Two-Arch/IS 的父种群选择方法, 算法 2 给出了限制性交配选择策略的具体过程.
算法 2. 父种群选择 Restrictive_Mating_Selection.
输入: 收敛性档案 CA, 多样性档案 DA, 限制性交配参数 δ;
输出: 父代种群 MP = {q 1 ,q 2 }.
1. if rand < δ then
2. 在 CA 和 DA 中随机选择父种群 q 1 和 ;
q 2

