算法性能指标
2025/10/22约 1570 字大约 5 分钟
算法性能指标
多目标进化算法(MOEA)产生的结果是一个 Pareto非支配解集,
算法性能的优劣通常通过 收敛性(Convergence) 与 多样性(Diversity) 两个方面进行衡量。
一、性能指标总体分类
多目标优化问题的评价指标主要分为以下几类:
| 类别 | 含义 | 常用指标 | 评价重点 |
|---|---|---|---|
| ① 收敛性指标 | 衡量算法解集到真实Pareto前沿的接近程度 | GD、IGD、Epsilon指标 | 解的精确性 |
| ② 多样性指标 | 衡量解集在前沿上的分布均匀性与覆盖性 | SP、Δ(Spread)、均匀性度量 | 解的均匀分布与边界覆盖 |
| ③ 综合性指标 | 同时反映收敛与分布性能 | HV(超体积)、IGD(兼顾两者) | 综合评价整体性能 |
| ④ 相对比较指标 | 比较两个算法间的优劣关系 | C-Metric(覆盖率)、R2指标 | 算法间性能对比 |
二、是否需要真实Pareto前沿分类
| 是否需要真实前沿 | 常用指标 | 特点 |
|---|---|---|
| ✅ 需要真实Pareto前沿 | GD、IGD、Spread(Δ) | 能准确度量逼近性,但需真实或近似前沿 |
| ❌ 不需要真实Pareto前沿 | HV、SP、C-Metric | 可用于未知真实前沿的实际优化问题 |
三、指标数值趋势与意义
| 指标 | 数值趋势 | 表示算法性能 |
|---|---|---|
| GD、IGD、SP、Δ | 越小越好 | 解更接近真实前沿且更均匀 |
| HV、C(A,B) | 越大越好 | 覆盖更广、质量更高 |
四、指标逻辑关系图
五、主要指标数学原理与公式
以下为常用的MOEA性能指标的详细定义、数学表达式与解释。
1️⃣ 世代距离(Generational Distance, GD)
指标含义:
衡量算法得到的非支配解集与真实Pareto前沿之间的平均距离,反映收敛性。
数学定义:
设:
- 真实Pareto前沿:
- 算法解集:
则每个解到真实前沿最近点的距离:
整个解集的世代距离为:
解释:
- 表示算法解完全逼近真实前沿;
- 数值越小,收敛性越好。
2️⃣ 反世代距离(Inverted Generational Distance, IGD)
指标含义:
衡量真实前沿上的点到算法解集的平均距离,兼顾收敛性与分布性。
数学定义:
设:
则:
反世代距离定义为:
解释:
- 越小,算法解越接近且覆盖真实前沿;
- 若真实前沿未知,可用参考点集代替。
3️⃣ 超体积(Hypervolume, HV)
指标含义:
表示算法得到的解集在目标空间中所覆盖的体积大小,反映综合性能。
数学定义:
设:
- 算法解集:
- 参考点(通常取各目标最大值稍大的点):
则:
解释:
- HV越大说明算法的解集覆盖范围越广;
- 能同时体现收敛性与多样性;
- 缺点:高维计算复杂度高。
4️⃣ 均匀性度量(Spacing, SP)
指标含义:
衡量算法所得解集在Pareto前沿上的分布均匀性。
数学定义:
设解集为 ,定义任意解到其最近邻解的距离为:
则均匀性指标为:
其中:
解释:
- 表示完全均匀;
- 值越小表示解集分布更均匀;
- 仅反映多样性,不考虑收敛性。
5️⃣ 扩展度量(Spread, Δ)
指标含义:
衡量解集在Pareto前沿的整体分布范围及端点覆盖情况。
数学定义:
其中:
- 为解集端点与真实前沿端点的距离;
- 为相邻解间距离;
- 为平均距离。
解释:
- 表示完美覆盖且均匀;
- 值越小说明分布越好;
- NSGA-II算法最早采用此指标。
6️⃣ 覆盖率指标(Coverage Metric, C-Metric)
指标含义:
用于比较两个算法A和B的解集优劣。
数学定义:
设两算法解集为 ,定义:
其中“”表示支配。
解释:
- :A完全优于B;
- :A完全劣于B;
- 通常与配合使用进行双向比较。
六、综合对比总结
| 指标 | 主要评价维度 | 趋势 | 是否需真实前沿 | 特点 |
|---|---|---|---|---|
| GD | 收敛性 | 小 | 是 | 仅反映逼近性 |
| IGD | 收敛+分布 | 小 | 是 | 综合性强,常用 |
| HV | 收敛+分布 | 大 | 否 | 信息丰富但计算复杂 |
| SP | 分布均匀性 | 小 | 否 | 衡量多样性 |
| Δ (Spread) | 分布+覆盖 | 小 | 是 | NSGA-II使用 |
| C-Metric | 相对优劣 | 大 | 否 | 比较不同算法性能 |
七、总结建议
- 若关注收敛性:使用 GD 或 IGD;
- 若关注分布均匀性:使用 SP 或 Δ;
- 若需综合评估:使用 HV;
- 若比较不同算法:使用 C-Metric;
- 实验研究中常采用多指标联合评价(如 IGD + HV)。
✅ 参考建议:
在学术论文或算法比较中,常以
作为主评价体系,辅以 C-Metric 辅助比较。