3. Pareto支配与Pareto最优性理论
多目标优化的核心困难在于:各目标往往彼此冲突,改进一个目标通常要以牺牲另一个目标为代价。因此,我们无法像单目标优化那样简单地比较“谁更大、谁更小”,而必须建立一套偏序比较规则。Pareto支配关系正是这套规则的基础,它把“在所有目标上都不差、且至少在一个目标上更好”作为“更优”的严格定义,从而把解空间划分为可比较与不可比较两类关系。
一、严格支配与弱支配的定义
设一个最小化多目标问题有 m 个目标函数 f₁, f₂, …, f_m,两个可行解记为 x 与 y。先约定参照方向:本节全部按“最小化”讨论,目标值越小越好;若遇到最大化问题,可对目标取负号转化为最小化,全文与图示保持一致。
- 严格支配(Pareto Dominance):若对所有 i = 1…m 都有 f_i(x) ≤ f_i(y),且至少存在一个 j 使 f_j(x) < f_j(y),则称 x 严格支配 y,记作 x ≺ y。
- 弱支配(Weak Dominance):若对所有 i 都有 f_i(x) ≤ f_i(y),则称 x 弱支配 y,记作 x ⪯ y。弱支配允许两者在所有目标上完全相等。
- 互不支配:若 x 不弱支配 y,且 y 也不弱支配 x,则两者互不支配。这是多目标问题中最常见、也最关键的关系。
需要注意,严格支配要求“至少一个目标严格更小”,而弱支配只要求“都不更差”。二者差在边界情形:当两个解目标向量完全相同时,它们互相弱支配,但互不严格支配。在算法实现中,这个区别直接影响去重与排序逻辑,不能混用。
二、Pareto最优解与Pareto前沿
基于支配关系可以定义最优性。Pareto最优解(非支配解)是指:不存在任何可行解 y 使得 y 严格支配 x。也就是说,想再改进 x 的任一目标,必然要以恶化至少另一个目标为代价。Pareto最优解集是所有非支配解的集合,其在目标空间中的像称为Pareto前沿(Pareto Front)。
Pareto前沿具有几个重要性质:其一,前沿上的解互不支配,构成目标空间中的“边界”;其二,前沿的形状反映目标间的冲突程度——前沿越弯曲,冲突越强,越接近“此消彼长”;其三,对于连续问题,前沿通常是连续曲线或曲面,而实际算法只能得到离散的近似前沿。因此工程上更关心“近似前沿的收敛性与分布性”,而非理论上的精确前沿。
三、支配关系的判定算法
最直接的判定是两两比较,即对种群中每一对解执行目标向量逐维比较。设种群规模为 N、目标数为 m,朴素双重循环的复杂度为 O(mN²)。其核心比较逻辑可写成如下伪代码:
function dominates(a, b): # 判断 a 是否严格支配 b(最小化)
better = false
for i in 1..m:
if a[i] > b[i]: return false # a 在某维更差,直接否定
if a[i] < b[i]: better = true # 记录至少一维更优
return better # 全不差且至少一维更优
# 求非支配集
front = []
for x in population:
if not any(dominates(y, x) for y in population if y != x):
front.append(x)
该实现有两个易错点。第一,内层比较必须排除自身,否则解会“支配自己”导致误判;第二,浮点目标值应设置容差 ε,把 |a[i]−b[i]| ≤ ε 视为相等,避免数值噪声破坏支配判断。当 N 较大时,可用排序或分治策略降低比较次数,例如先按第一目标排序,再在候选区间内比较其余目标,实践中常能显著减少无效比较。
四、可视化:二维目标空间中的支配区域
下图以两个最小化目标 f₁、f₂ 为例,展示了解 A 的支配区域、被支配区域以及互不支配关系。图中右下角为“双目标都更小”的优方向,A 的支配区域是以 A 为左上角向右下方延伸的矩形区域;落在该区域内的点被 A 支配,落在 A 左上方的点则支配 A,而位于另外两个方向的点与 A 互不支配。
借助这张图可以快速建立判读直觉:若某点位于 A 的右下方矩形内,则它被 A 支配;若位于 A 的左上方,则它支配 A;若位于右上或左下,则与 A 互不支配。前沿解之所以“互不支配”,正是因为它们分布在曲线的不同位置,各自在不同目标上占优。实际算法输出的近似前沿若明显偏离这条曲线,说明收敛不足;若点全部挤在一端,则说明多样性差。
五、一个可手算的判定示例
假设某最小化问题有三个解,目标向量分别为 A = (2, 8)、B = (3, 6)、C = (4, 5)。逐对比较:A 与 B,f₁ 上 A 更小、f₂ 上 B 更小,互不支配;A 与 C 同理互不支配;B 与 C,f₁ 上 B 更小、f₂ 上 C 更小,仍互不支配。因此三者全部为非支配解,共同构成该小种群的前沿近似。若再加入 D = (5, 9),则 A、B、C 均严格支配 D,D 被剔除。这个例子说明:非支配解的数量可能很多,前沿近似并不等于“唯一最优”,后续还需要依靠拥挤度、分布性等指标做进一步筛选。
综上,严格支配与弱支配提供了形式化的比较工具,Pareto最优解与前沿刻画了冲突目标下的合理边界,而判定算法与可视化则把这一理论落到可计算、可观察的层面。掌握这套理论,是后续实现非支配排序、拥挤度计算与多目标进化算法的基础。