最优性条件
最优性条件是优化理论中的核心概念,用于判断一个解是否为局部或全局最优解。它通过分析目标函数和约束在候选解处的性质(如梯度、海森矩阵等)来提供理论判据。以下从基础到深入逐步展开说明:
1. 无约束优化的最优性条件
问题形式:
最小化函数 \(f(x)\),其中 \(x \in \mathbb{R}^n\),无约束。
- 一阶必要条件:
若 \(x^*\) 是局部极小点,且 \(f\) 在该点可微,则梯度必须为零:
\[ \nabla f(x^*) = 0. \]
物理意义:极值点处目标函数的变化率为零。
- 二阶必要条件:
若 \(f\) 在 \(x^*\) 处二阶可微,则海森矩阵 \(\nabla^2 f(x^*)\) 需半正定:
\[ d^\top \nabla^2 f(x^*) d \geq 0, \quad \forall d \in \mathbb{R}^n. \]
说明该点处曲率非负,确保无下降方向。
- 二阶充分条件:
若 \(\nabla f(x^*) = 0\) 且海森矩阵正定(即 \(d^\top \nabla^2 f(x^*) d > 0, \forall d \neq 0\)),则 \(x^*\) 是严格局部极小点。
2. 带等式约束的最优性条件
问题形式:
\[\min f(x) \quad \text{s.t.} \quad h_i(x) = 0 \ (i=1,\dots,m). \]
- 一阶必要条件(拉格朗日条件):
引入拉格朗日函数 \(L(x, \lambda) = f(x) + \sum_{i=1}^m \lambda_i h_i(x)\)。若 \(x^*\) 是局部最优解,且约束梯度 \(\nabla h_i(x^*)\) 线性无关(约束规格),则存在拉格朗日乘子 \(\lambda^*\) 使得:
\[ \nabla_x L(x^*, \lambda^*) = 0, \quad h_i(x^*) = 0. \]
此条件要求目标函数梯度与约束梯度在最优解处共线。
3. 带不等式约束的最优性条件(KKT 条件)
问题形式:
\[\min f(x) \quad \text{s.t.} \quad g_j(x) \leq 0 \ (j=1,\dots,p), \ h_i(x) = 0 \ (i=1,\dots,m). \]
- Karush-Kuhn-Tucker (KKT) 条件:
在约束规格(如线性无关约束规范)满足时,局部最优解 \(x^*\) 需满足:- 平稳性: \(\nabla f(x^*) + \sum_{j=1}^p \mu_j \nabla g_j(x^*) + \sum_{i=1}^m \lambda_i \nabla h_i(x^*) = 0\)。
- 原始可行性: \(g_j(x^*) \leq 0, \ h_i(x^*) = 0\)。
- 对偶可行性: \(\mu_j \geq 0\)。
- 互补松弛条件: \(\mu_j g_j(x^*) = 0\)。
互补松弛意味着:若约束 \(g_j(x) < 0\)(非紧),则对应乘子 \(\mu_j = 0\);仅紧约束影响最优性。
4. 凸优化中的最优性条件
当 \(f\) 为凸函数、约束为凸集时,KKT 条件成为全局最优解的充要条件。此时,任何满足 KKT 条件的点均为全局极小点。
5. 高阶最优性条件
针对非凸问题,二阶条件可进一步细化:
- 二阶必要条件:在 KKT 点 \((x^*, \mu^*, \lambda^*)\),对满足 \(\nabla g_j(x^*)^\top d = 0\)(紧约束)且 \(\nabla h_i(x^*)^\top d = 0\) 的方向 \(d\),有
\[ d^\top \nabla_{xx}^2 L(x^*, \mu^*, \lambda^*) d \geq 0. \]
- 二阶充分条件:若一阶条件成立,且对上述非零方向 \(d\) 有严格正曲率,则 \(x^*\) 为严格局部极小点。
总结
最优性条件构成了优化算法(如梯度法、内点法)的终止判据理论基础。其核心思想是通过导数信息刻画最优解的特征,从而区分局部极值点与鞍点、非最优点。