凸优化学习:对偶

凸优化:对偶

  • 凸优化:对偶
    • Lagrange对偶函数
    • lagrange对偶问题
    • 最优性条件
    • 总结


Lagrange对偶函数

考虑标准优化问题:

minimize  s.t.  f0(x)fi(x)0 i=1,2,,n(1)hi(x)=0 i=1,2,,n m i n i m i z e     f 0 ( x ) s . t .     f i ( x ) ≤ 0   i = 1 , 2 , ⋯ , n ( 1 ) h i ( x ) = 0   i = 1 , 2 , ⋯ , n

其中各个约束函数的定义域存在非空交集。且此问题并非定义为凸优化问题。

定义问题(1)的lagrange函数为:

L(x,λ,v)=f0(x)+i=1mλifi(x)+i=1pvihi(x)(2) L ( x , λ , v ) = f 0 ( x ) + ∑ i = 1 m λ i f i ( x ) + ∑ i = 1 p v i h i ( x ) ( 2 )

其中, λi,vi λ i , v i 成为对应约束方程的lagrange乘子, v,λ v , λ 称为对偶变量或者lagrange乘子向量。

定义lagrange对偶函数为lagrange函数关于 x x 取得的最小值,即为:

g(λ,v)=ixnfL(x,λ,v)=ixnf(f0(x)+i=1mλifi(x)+i=1pvihi(x))(3) g ( λ , v ) = i x n f L ( x , λ , v ) = i x n f ( f 0 ( x ) + ∑ i = 1 m λ i f i ( x ) + ∑ i = 1 p v i h i ( x ) ) ( 3 )

即使原问题(1)不是凸的,其对偶函数也是凹函数。假设原问题的最优解为 p p ∗ ,那么总有:
g(λ,v)p g ( λ , v ) ≤ p ∗

也即是说,lagrange对偶函数为原问题提供了一个下界。(原问题问题可以有很多个下界,只要比最优值小就可以是一个下界)


lagrange对偶问题

lagrange对偶函数给出了原问题的一个下界,如果这个下界很普通那根本没有任何意义。考虑原问题是最小化目标函数,是一个向下搜索的过程。因此,可以考虑最大化lagrange函数,向上搜索为原问题提供一个最好的下界。

maximizes.t.g(λ,v)(4)λ0(1)(2) (1) m a x i m i z e g ( λ , v ) ( 4 ) (2) s . t . λ ≥ 0

此问题称为问题(1)的lagrange对偶问题。假设该问题的最优值为 d d ∗ ,那么:
dp(5) d ∗ ≤ p ∗ ( 5 )

即使原问题不是凸的,此不等式仍旧成立,称之为 弱对偶性。两个最优值的差值称之为 最优对偶间隙(这是一个非负数)。如果最优对偶间隙为零,那么两个最优值相等,称之为 强对偶性

如果原问题是凸问题,强对偶性通常(并不绝对)成立。因此,有许多研究给出了除凸性条件外的强对偶性成立的条件,如Slater条件。


最优性条件

互补松驰性
假设强对偶性成立。令 x x ∗ 为原问题的最优解, (λ,v) ( λ ∗ , v ∗ ) 为对偶问题的最优解。那么有:

f0(x)=g(λ,v)=ixnf(f0(x)+i=1mλifi(x)+i=1pvihi(x))(6)f0(x)+i=1mλifi(x)+i=1pvihi(x)f0(x)(3)(4)(5)(6) (3) f 0 ( x ∗ ) = g ( λ ∗ , v ∗ ) (4) = i x n f ( f 0 ( x ) + ∑ i = 1 m λ i ∗ f i ( x ) + ∑ i = 1 p v i ∗ h i ( x ) ) ( 6 ) (5) ≤ f 0 ( x ∗ ) + ∑ i = 1 m λ i ∗ f i ( x ∗ ) + ∑ i = 1 p v i ∗ h i ( x ∗ ) (6) ≤ f 0 ( x ∗ )

第一个等式成立是因为最优对偶间隙为0,第二个等式成立是因为lagrange对偶函数的定义;第三个不等式成立是因为lagrange函数的最小值小于在 x=x x = x ∗ 处的值;第四个不等式成立是因为对偶函数取得最优值时 λi0 λ i ∗ ≥ 0 , 原问题取得最优值时 fi(x)0 f i ( x ∗ ) ≤ 0 hi(x)=0 h i ( x ∗ ) = 0 。因此,上述两个不等式取等号。

因此有:

i=1mλifi(x)=0(7) ∑ i = 1 m λ i ∗ f i ( x ∗ ) = 0 ( 7 )

又因为其中每一项非正,因此每一项都为0。
λifi(x)=0i=1,2,,m(8) λ i ∗ f i ( x ∗ ) = 0 , i = 1 , 2 , ⋯ , m ( 8 )

式(8)称之为松弛互补条件。

KKT最优性条件
假设函数(并不一定为凸函数) fi,hi f i , h i 可微。令 x x ∗ (λ,v) ( λ ∗ , v ∗ ) 为原问题和对偶问题的某对最优解。因为,丢偶函数为凸函数,因此在其取得最小值处导数必定为0。

f0(x)+i=1mλifi(x)+i=1pvihi(x)=0(9) ∇ f 0 ( x ∗ ) + ∑ i = 1 m λ i ∗ ∇ f i ( x ∗ ) + ∑ i = 1 p v i ∗ ∇ h i ( x ∗ ) = 0 ( 9 )

因此,我们有:
fi(x)0hi(x)=0λi0λifi(x)=0f0(x)+i=1mλifi(x)+i=1pvihi(x)=0(7)(8)(9)(10)(11) (7) f i ( x ∗ ) ≤ 0 (8) h i ( x ∗ ) = 0 (9) λ i ∗ ≥ 0 (10) λ i ∗ f i ( x ∗ ) = 0 (11) ∇ f 0 ( x ∗ ) + ∑ i = 1 m λ i ∗ ∇ f i ( x ∗ ) + ∑ i = 1 p v i ∗ ∇ h i ( x ∗ ) = 0

以上几个条件称为KKT条件。当原问题是凸问题时,满足KKT条件的点也是原问题和对偶问题的最优解。当原问题非凸时,原问题和对偶问题的最优解满足KKT条件。


总结

当优化问题为非凸问题时,可以通过将问题转化为对偶问题来进行求解。如果强对偶成立且存在一个对偶最优解,那么任意原问题的最优点也是 L(x,λ,v) L ( x , λ ∗ , v ∗ ) 的最优解。

你可能感兴趣的:(数学)