Lagrange函数及其对偶函数
对于标准形式的优化问题:
m i n i m i z e f 0 ( x ) s u b j e c t t o f i ( x ) ≤ 0 , i = 1 , 2 , . . . , m h i ( x ) = 0 , i = 1 , 2 , . . . , p \begin{aligned} minimize & {\,}{\,}f_{0}(x) \\ subject{\,}{\,}to &{\,}{\,}f_{i}(x) \leq 0, i=1,2,...,m \\ &{\,}{\,}h_{i}(x)=0,i=1,2,...,p \end{aligned} minimizesubjecttof0(x)fi(x)≤0,i=1,2,...,mhi(x)=0,i=1,2,...,p
拉格朗日函数为:
L ( x , λ , v ) = f 0 ( x ) + ∑ i = 1 m λ i f i ( x ) + ∑ i = 1 p v i h i ( x ) L(x,\lambda,v)=f_{0}(x)+\sum_{i=1}^{m}\lambda_{i}f_{i}(x)+\sum_{i=1}^{p}v_{i}h_{i}(x) L(x,λ,v)=f0(x)+i=1∑mλifi(x)+i=1∑pvihi(x)
向量
λ
\lambda
λ和
v
v
v是对偶变量或者是这个式子的Lagrange乘子
Lagrange对偶函数是Lagrange函数关于
x
x
x取得的最小值:
g ( λ , v ) = inf x ∈ D L ( x , λ , v ) = inf x ∈ D ( f 0 ( x ) + ∑ i = 1 m λ i f i ( x ) + ∑ i = 1 p v i h i ( x ) ) \begin{aligned} g(\lambda, v) &=\displaystyle \inf_{x \in D}L(x, \lambda, v) \\ &=\inf_{x \in D}(f_{0}(x)+\sum_{i=1}^{m}\lambda_{i}f_{i}(x)+\sum_{i=1}^{p}v_{i}h_{i}(x)) \end{aligned} g(λ,v)=x∈DinfL(x,λ,v)=x∈Dinf(f0(x)+i=1∑mλifi(x)+i=1∑pvihi(x))
对偶函数是一族关于(
λ
\lambda
λ,
v
v
v)的放射函数的逐点下确界,所以即使原问题不是凸的,对偶函数也是凹的
对偶函数构成了原问题最优值
p
∗
p^{*}
p∗的下界:即对任意
λ
≥
0
\lambda \geq 0
λ≥0和
v
v
v,下式成立:
g ( λ , v ) ≤ p ∗ g(\lambda, v) \leq p^{*} g(λ,v)≤p∗
证明:
设
x
^
\hat x
x^是原问题的一个可行点,即
f
i
(
x
^
)
≤
0
,
h
i
(
x
)
=
0
f_{i}(\hat x) \leq 0, h_{i}(x)=0
fi(x^)≤0,hi(x)=0,则有:
∑ i m λ i f i ( x ^ ) + ∑ i = 1 p v i h i ( x ^ ) ≤ 0 \displaystyle \sum_{i}^{m}\lambda_{i}f_{i}(\hat x)+\sum_{i=1}^{p}v_{i}h_{i}(\hat x) \leq 0 i∑mλifi(x^)+i=1∑pvihi(x^)≤0
代入Lagrange函数有:
L ( x ^ , λ , v ) = f 0 ( x ^ ) + ∑ i = 1 m λ i f i ( x ^ ) + ∑ i = 1 p v i h i ( x ^ ) ≤ f 0 ( x ^ ) \begin{aligned} L(\hat x, \lambda, v)&=f_{0}(\hat x)+\sum_{i=1}^{m}\lambda_{i}f_{i}(\hat x)+\sum_{i=1}^{p}v_{i}h_{i}(\hat x) \\ & \leq f_{0}(\hat x) \end{aligned} L(x^,λ,v)=f0(x^)+i=1∑mλifi(x^)+i=1∑pvihi(x^)≤f0(x^)
因此:
g ( λ , v ) ≤ L ( x ^ , λ , v ) ≤ f 0 ( x ^ ) g(\lambda ,v) \leq L(\hat x, \lambda, v) \leq f_{0}(\hat x) g(λ,v)≤L(x^,λ,v)≤f0(x^)
考虑标准形式的线性规划问题:
m i n i m i z e c T x s u b j e c t t o A x = b x ≥ 0 \begin{aligned} minimize &{\,}{\,} c^{T}x \\ subject{\,}{\,}to &{\,}{\,}Ax=b \\ &{\,}{\,} x \geq 0 \end{aligned} minimizesubjecttocTxAx=bx≥0
其拉格朗日函数为:
L ( x , λ , v ) = c T x − ∑ i = 1 n λ i x i + v T ( A x − b ) = − b v T + ( c + A T v − λ ) T x \begin{aligned} L(x, \lambda, v) &=c^{T}x-\sum_{i=1}^{n}\lambda_{i}x_{i}+v^{T}(Ax-b) \\ &=-bv^{T}+(c+A^{T}v-\lambda)^{T}x \end{aligned} L(x,λ,v)=cTx−i=1∑nλixi+vT(Ax−b)=−bvT+(c+ATv−λ)Tx
对偶函数为:
g ( λ , v ) = inf x L ( x , λ , v ) = − b T v + inf x ( c + A T v − λ ) T x \begin{aligned} g(\lambda, v) &=\displaystyle \inf_{x}L(x, \lambda, v) \\ &=-b^{T}v+\inf_{x}(c+A^{T}v-\lambda)^{T}x \end{aligned} g(λ,v)=xinfL(x,λ,v)=−bTv+xinf(c+ATv−λ)Tx
线性函数只有恒为0时才有下界,因此:
$$
g(\lambda, v) =\begin{cases}
-b{T}v{,}{,}{,}c+A{T}v-\lambda=0 \
- \infty{,}{,}{,}其它情况
\end{cases}
$$
Lagrange对偶问题
Lagrange对偶函数给出了优化问题最优值 p ∗ p^{*} p∗的一个下界,一个自然的问题是:从Lagrange函数能够得到的最好下界是什么?可以将这个问题表述为优化问题:
m a x m i z e g ( λ , v ) s u b j e c t t o λ ≥ 0 \begin{aligned} maxmize &{\,}{\,}g(\lambda, v) \\ subject{\,}{\,}to &{\,}{\,} \lambda \geq 0 \end{aligned} maxmizesubjecttog(λ,v)λ≥0
Lagrange对偶问题是一个凸优化问题,这是因为极大化的目标函数是凹函数,且约束集合是凸集
很多情况下,我们可以识别出函数g的定义域的仿射包,并将其表示为一系列线性等式约束,这样处理之后可以得到一个等价的问题
对于标准形式的线性规划,它的对偶问题是在满足约束
λ
≥
0
\lambda \geq 0
λ≥0的条件下极大化对偶函数g。当且仅当
c
+
A
T
v
−
λ
=
0
c+A^{T}v-\lambda=0
c+ATv−λ=0时对偶函数有界。因此,可得一个等价问题:
m a x m i z e − b T v s u b j e c t t o c + A T v − λ = 0 λ ≥ 0 \begin{aligned} maxmize &{\,}{\,}-b^{T}v \\ subject{\,}{\,}to &{\,}{\,} c+A^{T}v-\lambda=0 \\ &{\,}{\,} \lambda \geq 0 \end{aligned} maxmizesubjectto−bTvc+ATv−λ=0λ≥0
这个问题可进一步表述为:
m a x m i z e − b T v s u b j e c t t o A T v + c ≥ 0 \begin{aligned} maxmize &{\,}{\,}-b^{T}v \\ subject{\,}{\,}to &{\,}{\,} A^{T}v+c \geq 0 \end{aligned} maxmizesubjectto−bTvATv+c≥0
KKT最优性条件
原问题最优值用 p ∗ p^{*} p∗表示,Lagrange对偶问题的最优值用 d ∗ d^{*} d∗表示,则有:
d ∗ ≤ p ∗ d^{*} \leq p^{*} d∗≤p∗
即使原问题不是凸问题,这个不等式也成立,这个性质称为弱对偶性。当原问题很难求解时,弱对偶不等式可以给原问题最优值一个下界
如果等式
d
∗
=
p
∗
d^{*} = p^{*}
d∗=p∗成立,即最优对偶间隙是零,那么强对偶性成立。一般情况下,强对偶性是不成立的。但如果原问题是凸问题,强对偶性一般成立
假设强对偶性成立,令
x
∗
x^{*}
x∗是原问题的最优解,
(
λ
∗
,
v
∗
)
(\lambda^{*}, v^{*})
(λ∗,v∗)是对偶问题的最优解,因此:
f 0 ( x ∗ ) = g ( λ ∗ , v ∗ ) = inf x ( f 0 ( x ) + ∑ i = 1 m λ i ∗ f i ( x ) + ∑ i = 1 p v i ∗ h i ( x ) ) ≤ f 0 ( x ) + ∑ i = 1 m λ i ∗ f i ( x ) + ∑ i = 1 p v i ∗ h i ( x ) ≤ f 0 ( x ) \begin{aligned} f_{0}(x^{*}) &=g(\lambda^{*}, v^{*}) \\ &=\inf_{x}(f_{0}(x)+\sum_{i=1}^{m}\lambda_{i}^{*}f_{i}(x)+\sum_{i=1}^{p}v_{i}^{*}h_{i}(x)) \\ & \leq f_{0}(x)+\sum_{i=1}^{m}\lambda_{i}^{*}f_{i}(x)+\sum_{i=1}^{p}v_{i}^{*}h_{i}(x) \\ & \leq f_{0}(x) \end{aligned} f0(x∗)=g(λ∗,v∗)=xinf(f0(x)+i=1∑mλi∗fi(x)+i=1∑pvi∗hi(x))≤f0(x)+i=1∑mλi∗fi(x)+i=1∑pvi∗hi(x)≤f0(x)
因此有:
λ i ∗ f i ( x ) = 0 \lambda_{i}^{*}f_{i}(x)=0 λi∗fi(x)=0
这个条件称为互不松弛性
非凸问题的KKT条件
假设强对偶性成立,令 x ∗ x^{*} x∗是原问题的最优解, ( λ ∗ , v ∗ ) (\lambda^{*}, v^{*}) (λ∗,v∗)是对偶问题的最优解。因为 L ( x , λ ∗ , v ∗ ) L(x, \lambda^{*}, v^{*}) L(x,λ∗,v∗)处取得最小值,因此,函数在 x ∗ x^{*} x∗处的导数必须为零,即:
∇ f 0 ( x ∗ ) + ∑ i = 1 m λ i ∗ ∇ f i ( x ∗ ) + ∑ i = 1 p v i ∗ ∇ h i ( x ∗ ) = 0 \nabla f_{0}(x^{*})+\displaystyle \sum_{i=1}^{m} \lambda_{i}^{*}\nabla f_{i}(x^{*}) + \sum_{i=1}^{p}v_{i}^{*}\nabla h_{i}(x^{*}) = 0 ∇f0(x∗)+i=1∑mλi∗∇fi(x∗)+i=1∑pvi∗∇hi(x∗)=0
由此可得:
f i ( x ∗ ) ≤ 0 h i ( x ∗ ) = 0 λ i ∗ ≥ 0 λ i ∗ f i ( x ∗ ) = 0 ∇ f 0 ( x ∗ ) + ∑ i = 1 m λ i ∗ ∇ f i ( x ∗ ) + ∑ i = 1 p v i ∗ ∇ h i ( x ∗ ) = 0 \begin{aligned} f_{i}(x^{*}) & \leq 0 \\ h_{i}(x^{*}) &= 0 \\ \lambda_{i}^{*} & \geq 0 \\ \lambda_{i}^{*}f_{i}(x^{*}) &= 0\\ \nabla f_{0}(x^{*})+\displaystyle \sum_{i=1}^{m} \lambda_{i}^{*}\nabla f_{i}(x^{*}) + \sum_{i=1}^{p}v_{i}^{*}\nabla h_{i}(x^{*}) &= 0 \end{aligned} fi(x∗)hi(x∗)λi∗λi∗fi(x∗)∇f0(x∗)+i=1∑mλi∗∇fi(x∗)+i=1∑pvi∗∇hi(x∗)≤0=0≥0=0=0
上述式子就是KKT条件。如果强对偶性成立,那么任意一对原问题和对偶问题的最优解必须满足KKT条件
凸问题的KKT条件
当原问题是凸问题时,满足KKT条件的点也是原、对偶问题的最优解。换言之, x ^ , λ ^ , v ^ \hat x, \hat \lambda, \hat v x^,λ^,v^是满足KKT条件的点,那么 x ^ \hat x x^和 ( λ ^ , v ^ ) (\hat \lambda, \hat v) (λ^,v^)分别是原问题和对偶问题的最优解,对偶间隙是零
附录
凸集的定义:如果集合C中任意两点间的线段仍然在C中,即对于任意 x 1 , x 2 ∈ C x_{1}, x_{2} \in C x1,x2∈C和 0 ≤ θ ≤ 1 0 \leq \theta \leq 1 0≤θ≤1都有:
θ x 1 + ( 1 − θ ) x 2 ∈ C \theta x_{1} + (1-\theta)x_{2} \in C θx1+(1−θ)x2∈C
那么集合C是凸集
凸函数的定义:函数
f
:
R
n
→
R
f:R^{n} \rightarrow R
f:Rn→R的定义域是
d
o
m
f
dom{\,}{\,}{\,}f
domf,如果
d
o
m
f
dom{\,}{\,}{\,}f
domf是凸集,且对于任意
x
,
y
∈
d
o
m
f
x, y \in dom{\,}{\,}{\,}f
x,y∈domf和任意
0
≤
θ
≤
1
0 \leq \theta \leq 1
0≤θ≤1,有:
f ( θ x + ( 1 − θ ) y ) ≤ θ f ( x ) + ( 1 − θ ) f ( y ) f(\theta x + (1-\theta)y) \leq \theta f(x) + (1-\theta)f(y) f(θx+(1−θ)y)≤θf(x)+(1−θ)f(y)
从几何意义上来看,上述不等式意味着点 ( x , f ( x ) ) (x, f(x)) (x,f(x))和 ( y , f ( y ) ) (y, f(y)) (y,f(y))之间的线段在函数 f f f的上方
如果函数
−
f
-f
−f是凸的,那么函数
f
f
f是凹的
凸函数与逐点上确界:几乎所有的凸函数都可以表示成一组仿射函数的逐点上确界
凸优化问题定义:凸优化问题是形如:
m i n i m i z e f 0 ( x ) s u b j e c t t o f i ( x ) ≤ 0 a i T x = b i \begin{aligned} minimize &{\,}{\,}f_{0}(x) \\ subject{\,}{\,}to &{\,}{\,}f_{i}(x) \leq 0 \\ &{\,}{\,}a_{i}^{T}x =b_{i} \end{aligned} minimizesubjecttof0(x)fi(x)≤0aiTx=bi
的问题,凸优化问题有三个附加的要求:
- 目标函数必须是凸的
- 不等式约束函数必须是凸的
- 等式约束函数必须是仿射的
a
关注公众号:老刘聊广告,获取更多知识总结和广告领域前沿算法