一、Lagrange 对偶函数
(1) Lagrange
对于标准形式的优化问题:
优化问题的最优解是,这里没有假设问题是凸优化问题。
定义该优化问题的Lagrange函数为:
其中:
- 称为第个不等式约束对应的Lagrange乘子;
- 称为第个等式约束对应的Lagrange乘子。
- 向量和称为对偶变量或者是优化问题的Lagrange乘子向量
(2) Lagrange 对偶函数
定义Lagrange对偶函数为Lagrane函数关于取到的最小值:即对,有
如果Lagrange函数关于无下界,则对偶函数取值为。由于对偶函数是一簇关于的仿射函数的逐点下确界,所以对偶函数一定是凹函数。
(3) 最优值下界
对偶函数构成了原问题最优值的下界:即对任意和下式成立
设是原问题中的一个可行点,即且。根据假设,,我们有
因此
因此
由于每一个可行点都满足,因此不等式成立。
只有当且即时,对偶函数才能给出的一个非平凡下界。称满足以及的是对偶可行的。
(4) Lagrange 对偶函数和共轭函数
共轭函数和Lagrange对偶函数紧密相关,考虑问题
该问题的Lagrange函数为,其对偶函数为
更一般地考虑一个优化问题,具有线性不等式和等式约束,
利用的共轭函数,我们可以将优化问题的对偶函数表述为
(5) 例子
1. 标准形式 LP
Lagrange 函数为:
因此其对偶函数为:
在仿射域上是线性的,因此是凹的。
2. 等式约束范数最小化
3. 两向划分
二、 Lagrange 对偶问题
对于任意一组,其中,Lagrange 对偶函数给出了原优化问题的最优值的一个下界。那么一个自然的问题是:从Lagrange函数能够得到的最好下界是什么?
Lagrange对偶问题可表述为优化问题:
称解是对偶最优解或者最优解Lagrange乘子,如果它是对偶问题的最优解。
这是一个凸优化问题,因为极大化的目标函数是凹函数,且约束集合是凸集。
(1) 对偶问题的产生
1. 问题的对偶表述
- 一个问题的等价表述可能导致非常不同的对偶
- 当对偶难以推导或无意义时,重新表述原始问题可能得出有用的对偶问题
2. 常见的重新表述
- 引入新的变量和等式约束
- 将显示约束隐式化或反之
- 替换目标函数或约束函数,例如用凸增函数代替
例题1
引入新变量和等式约束
- 对偶函数是常数:
- 具有强对偶性,但对偶问题相当无用
重新表述的问题及其对偶问题:
因此得:
故优化问题为
例题2
范数逼近问题
重新表述的问题及其对偶问题:
因此得:
其中
故优化问题为
例题3
带框约束问题
用框约束隐式化改写:
对偶函数:
对偶问题:
例题4
找出以下分段线性最小化问题的LP公式和对偶LP:
LP问题是
拉格朗日函数为:
对偶函数为:
因此对偶问题为
(2) 弱对偶性
Lagrange 对偶问题的最优值,我们用表示,根据定义这是通过 Lagrange 函数得到的原问题的最优值的最好下界。因此我们有下面简单但非常重要的不等式:
这个性质称为弱对偶性。
定义差值是原问题的最优对偶问题。它给出了原问题最优值以及通过 Lagrange 对偶函数所能得到的最好上界之间的差值。
(3) 强对偶性和 Slater 约束准则
如果等式
成立,即最优对偶间隙为零,那么强对偶性成立,说明 Lagrange 对偶函数得到的最好下界是紧的。
对于一般情况,强对偶性不成立。但是如果优化问题是凸问题,即可表述成如下形式:
其中,函数是凸函数,强对偶性通常成立。强对偶性成立的条件称为约束准则。
Slater约束准则
对于以下凸问题
如果它是严格可行的,即
强对偶性成立。
三、对偶问题的几何解释
四、相关例题
例题5
因此对偶函数为
问题转化为
- 根据条件:,如果存在对于某些
- 实际上,对于线性规划是基本上成立的,除非原始问题和对偶问题都是不可行的。
例题6
因此对偶函数为
对式子进行求导有:
故最优的关于的表达式为:
因此
问题转化为
- 根据Slater条件:,如果对于某些成立
- 实际上,总是成立(对于凸二次规划问题,只要原问题可行,则)
五、最优性条件
(1) 次优解认证和终止准则
如果能找到一个对偶可行解,就对原问题的最优值建立了一个下界:。因此对偶可行解点为表达式的成立提供了一个证明或认证。
对偶间隙
定义原问题和对偶问题目标函数的差值:
为原问题可行解和对偶可行解之间的对偶间隙。一对原对偶问题的可行点将原问题的最优值限制在一个区间上:
区间长度即为对偶间隙。
如果原对偶可行对的对偶间隙为零,即,那么是原问题最优解,且是对偶问题的最优解。此时我们可以认为是证明为最优解的一个认证。
非启发式停止准则
设某个算法给出一系列原问题可行解以及对偶问题可行解,给定要求的绝对精度,那么停止准则
保证当算法终止时,是次优。
给定相对精度,可以推导类似的条件保证次优。如果
成立,或者
成立,那么,且可以保证相对误差
小于等于。
(2) 互补松弛性
设原问题和对偶问题的最优值都可以达到且相等,令是原问题的最优解,是对偶问题的最优解,这表明
重要结论 —— 互补松弛性
该性质对任意原问题最优解以及对偶问题最优解都成立。我们可以把互补松弛条件写成
或
这个式子意味着在最优点处,除了第个约束起作用的情况,最优Lagrange乘子的第项都为零。
(3) KKT最优性条件
现在假设函数是可微的,但是并不假设这些是凸函数。
以下四个条件称为 KKT 条件
- 原问题可行性:
- 对偶问题可行性:
- 互补松弛性条件:
- 一阶最优条件:
1. 非凸问题的KKT条件
令是原问题的最优解,是对偶问题的最优解,对偶间隙为0。因为关于求极小在处取得最小值,因此函数在处的导数必须为零,即:
因此有
我们称上式为Karush-Kuhn-Tucker(KKT)条件。
2. 凸问题的KKT条件
当原问题是凸问题时,满足KKT条件的点也是原、对偶最优解。即如果函数是凸函数,是仿射函数,是任意满足KKT条件的点,则他们是最优的:
- 从互补松弛性和原问题可行性:
- 从第四个条件(以及凸性):
因此
- 反过来,如果满足slater条件,是最优的当且仅当存在满足KKT条件(slater条件意味着强对偶性,并且对偶最优解被达到)
- 本质上,KKT条件推广了无约束问题的最优条件
对于一般的非凸问题,KKT条件只是必要条件,类似无约束优化中的
只表示可能是极值点,不保证是最优点。
但是对于凸问题,则满足KKT条件的点一定是最优点。
六、KKT 条件应用
题目1
写出 条件有:
因此约掉后有:
针对第四个式子,进行讨论:
若,则,同时
若,那么,因此
故
结合,确定的最优值,即
题目2
利用 KKT 条件找到下列集合中最接近的点。
该问题可转化为:
拉格朗日函数为:
因此 KKT 条件是:
- 原问题可行性:
- 对偶问题可行性:
- 互补松弛性:
- 一阶最优条件:
分四种情况讨论:
,因此根据第三个条件可得,违背原问题可行性
,因此,。
因此可算得.原问题仍不可行。
。
因此
可算得:。满足所有条件,故一个 KKT 点为
.
因此,故。
进一步有,违反对偶问题可行性
题目3 下面是一个强对偶性成立的非凸优化问题,如何找到最优解,唯一吗?
求拉格朗日函数为:
因此 KKT 条件为:
- 原问题可行性:
- 对偶问题可行性:
- 互补松弛性:
- 一阶最优条件:
分四种情况进行讨论:
。
因此,成立,值为
。
因此,,成立,值为
有两个解:,值为;,值为
故,因此,值为
综上,最优解为,取得最小值为
题目4 已知下面是一个强对偶性成立的非凸优化问题。分析最优解(充分或必要)条件,以及如何寻找其最优解,可以存在多个最优解吗?
求拉格朗日函数为:
因此 条件为:
原问题可行性:
对偶问题可行性:无
互补松弛性:无
一阶最优条件:
因此
解得。
四个解对应的值为:……
题目 5 求解一下优化问题
求拉格朗日函数为:
因此 KKT 条件为
- 原问题可行性:
- 对偶问题可行性:
- 互补松弛性:
- 一阶最优条件:
讨论:
- ,因此,原问题可行性不满足
- ,因此
- ,因此,不满足
- ,因此,不满足
故唯一解为。最优值为