最优化理论极简入门(第二部分):拉格朗日对偶问题

上一篇:最优化条件和KKT条件

概要

  • 什么是对偶问题
  • 拉格朗日对偶问题(Lagrange duality)
    • 拉格朗日对偶问题:小结
  • 强弱对偶定理

什么是对偶问题?

正式开始之前,先说一句废话,之所以需要对偶问题,是因为

相较原始问题(primal problem),对偶问题(dual problem)会更好解

原始问题和对偶问题一般有如下关系
原始问题 对偶问题 最小化 ⟺ 最大化 变量数 ⟺ 约束条件数 约束条件数 ⟺ 变量数 \begin{align*} 原始问题 &\quad 对偶问题 \\ 最小化 &\Longleftrightarrow 最大化 \\ 变量数 &\Longleftrightarrow 约束条件数 \\ 约束条件数 &\Longleftrightarrow 变量数 \end{align*} 原始问题最小化变量数约束条件数对偶问题最大化约束条件数变量数

拉格朗日对偶问题

为不失一般性,原始问题的定义如下
m i n x   f ( x ) s . t .   h i ( x ) = 0 ,   i = 1 , . . . m g j ( x ) ≤ 0 , j = 1 , . . . r x ∈ X \begin{align*} \underset{x}{min} \space &f(x) \\ s.t. \space &h_i(x)=0, \space i=1,...m \\ & g_j(x) \leq 0, j=1,...r \\ & x \in X \end{align*} xmin s.t. f(x)hi(x)=0, i=1,...mgj(x)0,j=1,...rxX

接着我们将一步一步从这个原始问题导出拉格朗日对偶问题
首先基于约束条件,我们将引进一个指示函数,这个指示函数有如下形态:
δ F ( x ) = { 0 i f x ∈ F ≜ { x ∣ h i ( x ) = 0 , g j ( x ) ≤ 0 } ∞ o t h e r w i s e \begin{equation} \delta_F(x)=\left\{ \begin{align*} 0 \quad &if \quad x \in F\triangleq\{x|h_i(x)=0,g_j(x)\leq0\} \\ \infty \quad & otherwise \end{align*} \right. \end{equation} δF(x)={0ifxF{xhi(x)=0,gj(x)0}otherwise

简单的说,就是满足原始问题约束条件的话,其值为0,此外为无穷;基于这个指示函数,原始问题可以改写为

m i n x f ( x ) + δ F ( x ) s . t . x ∈ X \begin{align*} \underset{x}{min} \quad &f(x) + \delta_F(x)\\ s.t. \quad &x\in X \end{align*} xmins.t.f(x)+δF(x)xX

这可以理解为,为了使函数值达到最小,我们希望 δ F ( x ) \delta_F(x) δF(x)为0,这样既满足了之前的约束条件,又不改变最后的目标函数值;并且(1)又与以下函数等价

δ F ( x ) = s u p λ ∈ R m , μ ≥ 0 { ∑ i = 1 m λ i h i ( x ) + ∑ j = 1 r μ j g j ( x ) } \begin{equation} \delta_F(x)=\underset{\lambda \in R^m, \mu \geq 0}{sup} \{ \sum_{i=1}^m{\lambda_i h_i(x)}+\sum_{j=1}^r{\mu_j g_j(x)} \} \end{equation} δF(x)=λRm,μ0sup{i=1mλihi(x)+j=1rμjgj(x)}

(1)与(2)的等价关系其实分下情况就能证明
  1. h i ( x ) > 0 , g j ( x ) ≤ 0 h_i(x) > 0 ,g_j(x) \leq 0 hi(x)>0gj(x)0时,由(1)知 δ F ( x ) = ∞ \delta_F(x)=\infty δF(x)=,(2)取sup的话也为 ∞ \infty
  2. h i ( x ) = 0 , g j ( x ) ≤ 0 h_i(x) = 0 ,g_j(x) \leq 0 hi(x)=0gj(x)0时,由(1)知 δ F ( x ) = 0 \delta_F(x)=0 δF(x)=0,(2)取sup也就是 s u p   g j ( x ) sup \space g_j(x) sup gj(x),也为0
  3. h i ( x ) > 0 , g j ( x ) > 0 h_i(x) >0 ,g_j(x) > 0 hi(x)>0gj(x)>0时,显然(1)与(2)都为 ∞ \infty
  4. 其他情况读者可以自己试试推导

之所以引入指示函数(2),是因为它和拉格朗日乘子法里面所用的拉格朗日函数长得很像,拉格朗日函数长这样:
L ( x , λ , μ ) = f ( x ) + ∑ i = 1 m λ i h i ( x ) + ∑ j = 1 r μ j g j ( x ) L(x,\lambda, \mu)=f(x)+\sum_{i=1}^m{\lambda_i h_i(x)}+\sum_{j=1}^r{\mu_j g_j(x)} L(x,λ,μ)=f(x)+i=1mλihi(x)+j=1rμjgj(x)

原始问题的目标函数可以再被改写一下
f ( x ) + δ F ( x ) = f ( x ) + s u p λ ∈ R m , μ ≥ 0 { ∑ i = 1 m λ i h i ( x ) + ∑ j = 1 r μ j g j ( x ) } = s u p λ ∈ R m , μ ≥ 0 { f ( x ) + ∑ i = 1 m λ i h i ( x ) + ∑ j = 1 r μ j g j ( x ) } = s u p λ ∈ R m , μ ≥ 0 { L ( x , λ , μ ) } \begin{align*} f(x) + \delta_F(x) &= f(x)+ \underset{\lambda \in R^m, \mu \geq 0}{sup} \{ \sum_{i=1}^m{\lambda_i h_i(x)}+\sum_{j=1}^r{\mu_j g_j(x)} \} \\ &= \underset{\lambda \in R^m, \mu \geq 0}{sup} \{ f(x) +\sum_{i=1}^m{\lambda_i h_i(x)}+\sum_{j=1}^r{\mu_j g_j(x)} \} \\ &= \underset{\lambda \in R^m, \mu \geq 0}{sup} \{L(x,\lambda, \mu)\} \end{align*} f(x)+δF(x)=f(x)+λRm,μ0sup{i=1mλihi(x)+j=1rμjgj(x)}=λRm,μ0sup{f(x)+i=1mλihi(x)+j=1rμjgj(x)}=λRm,μ0sup{L(x,λ,μ)}

拉格朗日对偶问题:小结

总结下到目前的内容,我们就可以导出第一个对偶问题:拉格朗日对偶问题

原始问题 1 : m i n f ( x ) s . t . h i ( x ) = 0 ,   i = 1 , . . . m , g j ( x ) ≤ 0 , j = 1 , . . . r , x ∈ X ⇓ 原始问题 2 : m i n f ( x ) + δ F ( x ) s . t x ∈ X ⇓ 原始问题 3 : m i n s u p λ ∈ R m , μ ≥ 0 { L ( x , λ , μ ) } s . t x ∈ X ⇓ 拉格朗日对偶问题: m a x i n f x ∈ X { L ( x , λ , μ ) } s . t λ ∈ R m , μ ≥ 0 ( 显示不全,可向右滑动 ) \begin{align*} \footnotesize 原始问题1 : \\ & min \quad f(x) \\ & s.t. \quad h_i(x)=0, \space i=1,...m ,\quad g_j(x) \leq 0, j=1,...r ,\quad x \in X \\ &\Downarrow\\ \footnotesize 原始问题2 : \\ & min \quad f(x) + \delta_F(x) \\ & s.t \quad x \in X \\ &\Downarrow\\ \footnotesize 原始问题3 : \\ & min \quad \underset{\lambda \in R^m, \mu \geq 0}{sup} \{L(x,\lambda, \mu)\} \\ & s.t \quad x \in X \\ &\Downarrow\\ \footnotesize 拉格朗日对偶问题:\\ & max \quad \underset{x \in X}{inf} \{L(x,\lambda, \mu)\} \\ & s.t \quad \lambda \in R^m, \mu \geq 0 \\ \end{align*} \\ \scriptsize (显示不全,可向右滑动) 原始问题1:原始问题2:原始问题3:拉格朗日对偶问题:minf(x)s.t.hi(x)=0, i=1,...m,gj(x)0,j=1,...r,xXminf(x)+δF(x)s.txXminλRm,μ0sup{L(x,λ,μ)}s.txXmaxxXinf{L(x,λ,μ)}s.tλRm,μ0(显示不全,可向右滑动)

注意⚠️:我虽然这写了原始问题1,2,3,但它们实质是一个问题,没有任何区别


强弱对偶定理

接着我们还需要两个定理来保证,对偶问题的最优解和原始问题的最优解是一致的。

由刚才的推导,拉格朗日对偶问题的目标函数是

w ( λ , μ ) = i n f x ∈ X   { L ( x , λ , μ ) } w(\lambda,\mu)=\underset{x \in X}{inf}\space \{L(x,\lambda, \mu)\} w(λ,μ)=xXinf {L(x,λ,μ)}

弱双对定理


f ( x ) ≥ w ( λ , μ ) , ∀ x ∈ S , λ ∈ R m , μ ≥ 0 f(x) \geq w(\lambda,\mu), \forall x \in S, \lambda \in R^m, \mu \geq 0 f(x)w(λ,μ),xS,λRm,μ0

超级简单的证明

f ( x ) ≥ f ( x ) + ∑ i = 1 m λ i h i ( x ) + ∑ j = 1 r μ j g j ( x ) = L ( x , λ , μ ) ≥ i n f x ∈ X   { L ( x , λ , μ ) } = w ( λ , μ ) \begin{align*} f(x) &\geq f(x)+ \sum_{i=1}^m{\lambda_i h_i(x)}+\sum_{j=1}^r{\mu_j g_j(x)} =L(x,\lambda, \mu)\\ & \geq \underset{x \in X}{inf}\space \{L(x,\lambda, \mu)\}\\ &= w(\lambda,\mu) \end{align*} f(x)f(x)+i=1mλihi(x)+j=1rμjgj(x)=L(x,λ,μ)xXinf {L(x,λ,μ)}=w(λ,μ)

第一个不等式成立的原因:当x是原始问题的最优解时,其需要满足 h i ( x ) = 0 , μ j ≥ 0 , g j ( x ) ≤ 0 h_i(x)=0,\mu_j \geq 0, g_j(x) \leq 0 hi(x)=0,μj0,gj(x)0,则 ∑ i = 1 m λ i h i ( x ) + ∑ j = 1 r μ j g j ( x ) ≤ 0 \sum_{i=1}^m{\lambda_i h_i(x)}+\sum_{j=1}^r{\mu_j g_j(x)} \leq 0 i=1mλihi(x)+j=1rμjgj(x)0

第二个不等式成立的原因:取得是 i n f inf inf


这个定理弱就弱在,我们什么都不用做它就成立了,它保证了对偶问题的目标函数是原始问题1 f ( x ) f(x) f(x)的下界。

也就是说对偶问题得到的最优解和原始问题的最优解不会差的太远。

也因此我们需要一个更强的定理,来保证一致性。

强对偶定理


1. f , g j ( j = 1 , . . . , r ) f,g_j(j=1,...,r) f,gj(j=1,...,r)是凸函数 , h i ( i = 1 , . . . , m ) h_i(i=1,...,m) hi(i=1,...,m)是一次函数

2. 原始问题存在最优解 (即存在一个x满足KKT条件)

那么,对偶问题有最优解,且两个问题的最优解是一致的

回忆第一部分讲到的最优解的充分必要条件,满足KKT的点就是全局最优解。

定理2:最优解的充分必要条件


f , g 1 , . . . , g r f,g_1,...,g_r f,g1,...,gr是可微凸函数, h i , i = 1 , . . . , m h_i,i=1,...,m hi,i=1,...,m是一次函数

( x ∗ , λ ∗ , μ ∗ ) (x^*,\lambda^*,\mu^*) (x,λ,μ)
m i n x   f ( x ) s . t .   h i ( x ) = 0 ,   i = 1 , . . . m g j ( x ) ≤ 0 , j = 1 , . . . r \begin{align*} \underset{x}{min} \space &f(x) \\ s.t. \space &h_i(x)=0, \space i=1,...m \\ &g_j(x) \leq 0, j=1,...r \end{align*} xmin s.t. f(x)hi(x)=0, i=1,...mgj(x)0,j=1,...r

满足条件(1)~(3)KKT点,则 x ∗ x^* x是全局最小解


中场休息,喝杯再接着学习

点击这里跳转到对偶问题(2),我们接着讲另一个重要的对偶问题:Fenchel对偶问题

有疑问和建议,联系博主Rane:[email protected]

你可能感兴趣的:(数学小记,机器学习)