拉格朗日对偶性
在约束规划问题中,常常利用拉格朗日对偶性(Lagrange duality)将原始问题转换为对偶问题,通过解对偶问题而得到原始问题的解。该方法应用在许多统计学习方法中,例如,最大熵模型与支持向量机。这里简要叙述拉格朗日对偶性的主要概念和结果。
1 原始问题
假设
f
(
x
)
,
c
i
(
x
)
,
h
j
(
x
)
f(x),c_i(x),h_j(x)
f(x),ci(x),hj(x)是定义在
R
n
R^n
Rn上的连续可微函数。考虑约束最优化问题。
(1.1)
min
x
∈
R
n
f
(
x
)
\min_{x\in R^n}f(x) \tag{1.1}
x∈Rnminf(x)(1.1)
(1.2)
s
.
t
.
c
i
(
x
)
≤
0
,
i
=
1
,
2
,
.
.
.
,
k
s.t. \quad c_i(x)\leq 0, i=1,2,...,k \tag{1.2}
s.t.ci(x)≤0,i=1,2,...,k(1.2)
(1.3)
h
j
(
x
)
=
0
,
j
=
1
,
2
,
.
.
.
,
l
h_j(x)=0,j=1,2,...,l \tag{1.3}
hj(x)=0,j=1,2,...,l(1.3)
称次约束最优化问题为原始最优化问题或原始问题。
首先,引进广义拉格朗日函数(generalized Lagrange duality)
(1,4)
L
(
x
,
α
,
β
)
=
f
(
x
)
+
Σ
i
=
1
k
α
i
c
i
(
x
)
+
Σ
j
=
1
l
β
j
h
j
(
x
)
L(x,\alpha,\beta)=f(x)+\Sigma_{i=1}^k \alpha_i c_i(x)+\Sigma_{j=1}^l \beta_j h_j(x) \tag{1,4}
L(x,α,β)=f(x)+Σi=1kαici(x)+Σj=1lβjhj(x)(1,4)
这里,
x
=
(
x
(
1
)
,
x
(
2
)
,
.
.
.
,
x
(
n
)
)
T
∈
R
n
x=\left( x^{(1)},x^{(2)},...,x^{(n)} \right)^T\in R^n
x=(x(1),x(2),...,x(n))T∈Rn,
α
i
,
β
j
\alpha_i,\beta_j
αi,βj是拉格朗日乘子,
α
i
≥
0
\alpha_i \geq 0
αi≥0。考虑
x
x
x的函数:
(1.5)
θ
P
(
x
)
=
max
α
,
β
:
α
i
≥
0
L
(
x
,
α
,
β
)
\theta_P (x)=\max_{\alpha,\beta:\alpha_i \geq 0}L(x,\alpha,\beta) \tag{1.5}
θP(x)=α,β:αi≥0maxL(x,α,β)(1.5)
这里,下标
P
P
P表示原始问题。
假设给定某个
x
x
x。如果
x
x
x违反原始问题的约束条件,即存在某个
i
i
i使得
c
i
(
w
)
>
0
c_i(w)>0
ci(w)>0或者存在某个
j
j
j使得
h
j
(
w
)
≠
0
h_j(w)\ne 0
hj(w)̸=0,那么就有
(1.6)
θ
P
(
x
)
=
max
α
,
β
:
α
i
≥
0
[
f
(
x
)
+
Σ
i
=
1
k
α
i
c
i
(
x
)
+
Σ
j
=
1
l
β
j
h
j
(
x
)
]
=
+
∞
\theta_P(x)=\max_{\alpha,\beta:\alpha_i \geq 0} \left[f(x)+\Sigma_{i=1}^k \alpha_i c_i(x) + \Sigma_{j=1}^l \beta_j h_j(x) \right]=+\infty \tag{1.6}
θP(x)=α,β:αi≥0max[f(x)+Σi=1kαici(x)+Σj=1lβjhj(x)]=+∞(1.6)
因为若某个
i
i
i使约束
c
i
(
x
)
>
0
c_i(x)>0
ci(x)>0,则可令
α
i
→
+
∞
\alpha_i \to +\infty
αi→+∞,若某个
j
j
j使
h
j
(
x
)
≠
=
0
h_j(x)\ne =0
hj(x)̸==0,则可令
β
j
\beta_j
βj使
β
j
h
j
(
x
)
→
∞
\beta_j h_j(x) \to \infty
βjhj(x)→∞,而将其余各
α
i
,
β
j
\alpha_i,\beta_j
αi,βj取为0。
相反的,如果
x
x
x满足约束条件式(1.2)和(1.3),则由式(1.5)和(1.4)可知,
θ
P
(
x
)
=
f
(
x
)
\theta_P(x)=f(x)
θP(x)=f(x)。因此
(1.7)
θ
P
(
x
)
=
{
f
(
x
)
,
x
满
足
原
始
问
题
约
束
+
∞
,
其
他
\theta_P(x)=\begin{cases} f(x), x满足原始问题约束 \\ +\infty, 其他 \end{cases} \tag{1.7}
θP(x)={f(x),x满足原始问题约束+∞,其他(1.7)
所以如果考虑极小化问题
(1.8)
min
x
θ
P
(
x
)
=
min
x
max
α
,
β
:
α
i
≥
0
L
(
x
,
α
,
β
)
\min_x\theta_P(x)=\min_x\max_{\alpha,\beta:\alpha_i \geq 0}L(x,\alpha,\beta) \tag{1.8}
xminθP(x)=xminα,β:αi≥0maxL(x,α,β)(1.8)
它是与原始最优化问题(1.1)~(1.3)等价的,即它们有相同的解。问题
min
x
max
α
,
β
:
α
i
≥
0
L
(
x
,
α
,
β
)
\min_x\max_{\alpha,\beta:\alpha_i \geq 0}L(x,\alpha,\beta)
minxmaxα,β:αi≥0L(x,α,β)称为广义拉格朗日的极小极大问题。这样一来,就把原始最优化问题表示为广义拉格朗日的极小极大问题。为了方便,定义原始问题的最优值
(1.9)
p
∗
=
min
x
θ
P
(
x
)
p^*=\min_x\theta_P(x) \tag{1.9}
p∗=xminθP(x)(1.9)
称为原始问题的值。
2 对偶问题
定义
(1.10)
θ
D
(
α
,
β
)
=
min
x
L
(
x
,
α
,
β
)
\theta_D(\alpha,\beta)=\min_xL(x,\alpha,\beta) \tag{1.10}
θD(α,β)=xminL(x,α,β)(1.10)
再考虑极大化
θ
D
(
α
,
β
)
=
min
x
L
(
x
,
α
,
β
)
\theta_D(\alpha,\beta)=\min_xL(x,\alpha,\beta)
θD(α,β)=minxL(x,α,β),即
(1.11)
max
α
,
β
:
α
≥
0
θ
D
(
α
,
β
)
=
max
α
,
β
:
α
≥
0
min
x
L
(
x
,
α
,
β
)
\max_{\alpha,\beta:\alpha \geq 0}\theta_D(\alpha,\beta)=\max_{\alpha,\beta:\alpha \geq 0}\min_xL(x,\alpha,\beta) \tag{1.11}
α,β:α≥0maxθD(α,β)=α,β:α≥0maxxminL(x,α,β)(1.11)
可以将广义拉格朗日问题的极大极小问题表示为约束最优化问题:
(1.12)
max
α
,
β
θ
D
(
α
,
β
)
=
max
α
,
β
min
x
L
(
x
,
α
,
β
)
\max_{\alpha,\beta}\theta_D(\alpha,\beta)=\max_{\alpha,\beta}\min_xL(x,\alpha,\beta) \tag{1.12}
α,βmaxθD(α,β)=α,βmaxxminL(x,α,β)(1.12)
(1.13)
s
.
t
.
α
i
≥
0
,
i
=
1
,
2
,
.
.
.
,
k
s.t. \quad \alpha_i \geq 0, i=1,2,...,k \tag{1.13}
s.t.αi≥0,i=1,2,...,k(1.13)
称为原始问题的对偶问题。定义对偶问题的最优值
(1.14)
d
∗
=
max
α
,
β
:
α
≥
0
θ
D
(
α
,
β
)
d^*=\max_{\alpha,\beta:\alpha \geq 0}\theta_D(\alpha,\beta) \tag{1.14}
d∗=α,β:α≥0maxθD(α,β)(1.14)
称为对偶问题的值。
3 原始问题和对偶问题的关系
下面讨论原始问题和对偶问题的关系。
定理 1.1 若原始问题和对偶问题都有最优值,则
(1.15) d ∗ = max α , β : α i ≥ 0 min x L ( x , α , β ) ≤ min x max α , β : α i ≥ 0 L ( x , α , β ) = p ∗ d^*=\max_{\alpha,\beta:\alpha_i \geq 0}\min_xL(x,\alpha,\beta) \leq \min_x\max_{\alpha,\beta:\alpha_i \geq 0}L(x,\alpha,\beta)=p^* \tag{1.15} d∗=α,β:αi≥0maxxminL(x,α,β)≤xminα,β:αi≥0maxL(x,α,β)=p∗(1.15)
证明 由式(1.12)和式(1.5),对任意的
α
,
β
和
x
\alpha,\beta和x
α,β和x,有
(1.16)
θ
D
(
α
,
β
)
=
min
x
L
(
x
,
α
,
β
)
≤
L
(
x
,
α
,
β
)
≤
max
α
,
β
:
α
i
≥
0
L
(
x
,
α
,
β
)
=
θ
P
(
α
,
β
)
\theta_D(\alpha,\beta)=\min_xL(x,\alpha,\beta)\leq L(x,\alpha,\beta)\leq \max_{\alpha,\beta:\alpha_i \geq 0}L(x,\alpha,\beta)=\theta_P(\alpha,\beta) \tag{1.16}
θD(α,β)=xminL(x,α,β)≤L(x,α,β)≤α,β:αi≥0maxL(x,α,β)=θP(α,β)(1.16)
即
(1.17)
θ
D
(
α
,
β
)
≤
θ
P
(
x
)
\theta_D(\alpha,\beta)\leq \theta_P(x) \tag{1.17}
θD(α,β)≤θP(x)(1.17)
由于原始问题和对偶问题均有最优值,所以
(1.18)
max
α
,
β
:
α
i
≥
0
θ
D
(
α
,
β
)
≤
min
x
θ
P
(
x
)
\max_{\alpha,\beta:\alpha_i \geq 0}\theta_D(\alpha,\beta) \leq \min_x \theta_P(x) \tag{1.18}
α,β:αi≥0maxθD(α,β)≤xminθP(x)(1.18)
即
(1.19)
d
∗
=
max
α
,
β
:
α
i
≥
0
min
x
L
(
x
,
α
,
β
)
≤
min
x
max
α
,
β
:
α
i
≥
0
L
(
x
,
α
,
β
)
=
p
∗
d^*=\max_{\alpha,\beta:\alpha_i \geq 0}\min_xL(x,\alpha,\beta) \leq \min_x\max_{\alpha,\beta:\alpha_i \geq 0}L(x,\alpha,\beta)=p^* \tag{1.19}
d∗=α,β:αi≥0maxxminL(x,α,β)≤xminα,β:αi≥0maxL(x,α,β)=p∗(1.19)
推论 1.1 设 x ∗ 和 α ∗ , β ∗ x^*和\alpha^*,\beta^* x∗和α∗,β∗分别是原始问题(1.1)-(1.3)和对偶问题(1.12)-(1.13)的可行解,并且 d ∗ = p ∗ d^*=p^* d∗=p∗,则 x ∗ 和 α ∗ , β ∗ x^*和\alpha^*,\beta^* x∗和α∗,β∗分别是原始问题和对偶问题的最优解。
在某些条件下,原始问题和对偶问题的最优值相等,即 d ∗ = p ∗ d^*=p^* d∗=p∗。这时可以用解对偶问题替代解原始问题。下面以定理的形式叙述有关的重要结论而不予证明。
定理 1.2 考虑原始问题(1.1)-(1.3)和对偶问题(1.12)-(1.13)。假设函数 f ( x ) 和 c i ( x ) f(x)和c_i(x) f(x)和ci(x)是凸函数, h j ( x ) h_j(x) hj(x)是仿射函数;并且假设不等式约束 c i ( x ) c_i(x) ci(x)是严格可行的,即存在 x x x,对所有 i i i有 c i ( x ) < 0 c_i(x)<0 ci(x)<0,则存在 x ∗ , α ∗ , β ∗ x^*,\alpha^*,\beta^* x∗,α∗,β∗,使 x ∗ x* x∗是原始问题的解, α ∗ , β ∗ \alpha^*,\beta^* α∗,β∗是对偶问题的解,并且
(1.20) p ∗ = d ∗ = L ( x ∗ , α ∗ , β ∗ ) p^*=d^*=L(x^*,\alpha^*,\beta^*) \tag{1.20} p∗=d∗=L(x∗,α∗,β∗)(1.20)
定理 1.3 对原始问题(1.1)-(1.3)和对偶问题(1.12)-(1.13),假设函数 f ( x ) 和 c i ( x ) f(x)和c_i(x) f(x)和ci(x)是凸函数, h j ( x ) h_j(x) hj(x)是仿射函数,并且不等式约束 c i ( x ) c_i(x) ci(x)是严格可行的,则 x ∗ 和 α ∗ , β ∗ x^*和\alpha^*,\beta^* x∗和α∗,β∗分别是原始问题和对偶问题的解的充分必要条件是 x ∗ , α ∗ , β ∗ x^*,\alpha^*,\beta^* x∗,α∗,β∗满足下面的 K K T KKT KKT条件:
(1.21) ∇ x L ( x ∗ , α ∗ , β ∗ ) = 0 \nabla_xL(x^*,\alpha^*,\beta^*)=0 \tag{1.21} ∇xL(x∗,α∗,β∗)=0(1.21)
(1.22) α i ∗ c i ( x ∗ ) = 0 , i = 1 , 2 , . . . , k \alpha_i^* c_i(x^*)=0, i=1,2,...,k \tag{1.22} αi∗ci(x∗)=0,i=1,2,...,k(1.22)
(1.23) c i ( x ∗ ) ≤ 0 , i = 1 , 2 , . . . , k c_i(x^*) \leq 0, i=1,2,...,k \tag{1.23} ci(x∗)≤0,i=1,2,...,k(1.23)
(1.24) α i ∗ ≥ 0 , i = 1 , 2 , . . . , k \alpha_i^* \geq 0, i=1,2,...,k \tag{1.24} αi∗≥0,i=1,2,...,k(1.24)
(1.25) h j ( x ∗ ) = 0 j = 1 , 2 , . . . , l h_j(x^*)=0 j=1,2,...,l \tag{1.25} hj(x∗)=0j=1,2,...,l(1.25)
特别指出,式(1.24)称为 K K T KKT KKT的对偶互补条件。由此条件可知:若 α i ∗ > 0 \alpha_i^*>0 αi∗>0,则 c i ( x ∗ ) = 0 c_i(x^*)=0 ci(x∗)=0