有约束优化

拉格朗日乘数法所得的极点会包含原问题的所有极值点,但并不保证每个极值点都是原问题的极值点。

Example

卡罗需-库恩-塔克条件(Kuhn-Tuhn, KKT)是在满足一些规则的条件(可以为不等式)下,一个非线性规划(Nonlinear Programming)问题有最优化解法的一个必要和充分条件,是一个广义化拉格朗日乘数的成果。

上式即称为Karush-Kuhn-Tucker(KKT)条件。上式可推广到多个约束,比如问题:

Example

写出拉格朗日函数:

KKT方程组:

拉格朗日对偶性(Lagrange duality)

在约束最优化问题中,常常利用拉格朗日对偶性将原始问题转换为对偶问题,通过解对偶问题而得到原始问题的解。

原始问题

称此约束最优化问题为原始最优化问题或原始问题。

首先,引入拉格朗日函数:

所以如果考虑极小化问题

对偶问题

可以将广义拉格朗日函数的极大极小为表示为约束最优化问题:

称为原始问题的对偶问题。定义对偶问题的最优值

原始问题和对偶问题关系

若原始问题和对偶问题都有最优值,则

证明:

在数学中,线性规划(Linear Programming,简称LP)特指目标函数和约束条件皆为线性的最优化问题。描述线性规划问题的常用和最直观形式是标准型。标准型包括以下三个部分:

线性规划问题通常可以用矩阵形式表达成:

其他类型的问题,例如极小化问题,不同形式的约束问题,和有负变量的问题,都可以改写成其等价问题的标准型。

二次规划(Quadratic programming)

常用的二次规划解法有椭球法,内点法,增广拉格朗日法、梯度投影法等。

半正定规划(Semi-Definite programming)

常见的用于求解线性规划的内点法经过少许改造即可求解半正定规划问题,但半正定规划的计算复杂度较高,难以直接用于大规模的问题。

Last updated