最优解的最优性条件
我们先从最优解的基本概念开始。一个优化问题的最优解是指在该问题的可行域内,能够使目标函数取得最小值(或最大值)的点。最优性条件则是用来判断和描述一个点是否为最优解的一系列准则。这些条件为我们设计算法和验证解的最优性提供了理论基础。
第一步,我们考虑最简单的情况:无约束优化问题。其数学形式为 min f(x),其中 x ∈ Rⁿ。假设函数 f 是可微的。如果一个点 x* 是局部最优解,那么在该点处,目标函数 f 的梯度必须为零,即 ∇f(x*) = 0。这个条件被称为一阶必要条件。直观上理解,梯度为零意味着在该点处,函数在所有方向上的瞬时变化率都为零,不存在一个能使函数值立即下降的方向。然而,梯度为零的点(称为驻点)不一定都是极小值点,它还可能是极大值点或鞍点。
第二步,为了进一步区分驻点的类型,我们需要二阶充分条件。如果函数 f 是二阶连续可微的,并且在驻点 x* 处,其Hessian矩阵(二阶导数矩阵)∇²f(x*) 是正定的,那么 x* 就是一个严格的局部极小点。Hessian矩阵正定意味着函数在该点附近任意方向的曲率都是向上的,像一个碗的形状,从而保证了该点是一个局部极小值点。这就是局部最优解的(二阶)充分条件。
第三步,我们将问题扩展到带约束的优化问题,其形式为 min f(x), subject to g_i(x) ≤ 0, i=1,...,m 和 h_j(x)=0, j=1,...,p。在这种情况下,判断最优解的条件变得复杂,因为我们需要同时考虑目标函数的下降和约束条件的满足。最著名的是一阶必要条件——Karush-Kuhn-Tucker条件。你已经了解过KKT条件,所以我们不再重复其具体形式,但需要明确,KKT点是约束优化问题潜在的最优解候选点。
第四步,我们来探讨一个与KKT条件紧密相关但更为深入的概念:约束规格。约束规格是一组保证在局部最优点处KKT条件必然成立的约束条件性质。如果约束规格不满足,即使一个点是局部最优点,也可能不满足KKT条件。常见的约束规格包括线性函数约束规格(所有约束函数都是线性的)、Mangasarian-Fromovitz约束规格等。理解约束规格是正确应用KKT条件判断最优性的关键前提。
第五步,在约束优化中,除了梯度条件,我们还需要关注最优解所在的位置与可行域边界的关系。这就引出了积极约束集的概念。在局部最优点 x*,所有等号成立的约束(对于不等式约束 g_i(x) ≤ 0,满足 g_i(x*)=0 的约束)的索引集合 I(x*) = {i | g_i(x*)=0} 称为积极约束集(或有效约束集)。这些积极约束在 x* 点“激活”,像墙壁一样限制了搜索方向。
第六步,基于积极约束集,我们可以描述最优解处可行的下降方向。在点 x*,一个方向 d 是可行方向,意味着沿着这个微小移动,我们不会立即违反任何积极约束。而最优性则要求,在 x* 点不存在这样的可行下降方向。换句话说,在所有不被积极约束立即阻挡的方向上,目标函数在 x* 点的梯度都指示着函数值上升(或至少不下降)。这种“无可行下降方向”是局部最优性的一个几何刻画。
第七步,最后,我们将梯度、积极约束和可行方向联系起来。在满足特定约束规格的前提下,KKT条件等价于“在局部最优点 x* 处不存在可行下降方向”这一几何最优性条件。拉格朗日乘子可以理解为,为了保持最优性,每个积极约束所施加的“影子价格”或“压力”。正的乘子对应不等式约束,表示松弛该约束会使目标函数值变差(即需要付出代价)。这种几何和代数的等价性,构成了约束优化问题最优性理论的核心。