Lagrange 对偶
对偶的概念通常出现在数学规划的参考书中,其目的是为数学规划问题提供另一种更易计算或更具有某些理论意义的表述。
对偶函数
min-max 定理是研究对偶问题的基础!
考虑原始问题
min x ∈ R n f ( x ) s . t . c i ( x ) ≤ 0 , i ∈ I \begin{aligned} \min_{x\in\mathbb{R}^n} ~~& f(x) \\ \mathrm{s.t.} ~~& c_i(x) \leq 0,i \in \mathcal{I} \end{aligned} x∈Rnmin s.t. f(x)ci(x)≤0,i∈I
其等价于
min x ∈ X max λ ≥ 0 L ( x , λ ) \min_{x\in X}\max_{\lambda \geq 0} \mathcal{L}(x,\lambda) x∈Xminλ≥0maxL(x,λ)
其中 f , c i ( i ∈ I ) f,c_i ~(i \in \mathcal{I}) f,ci (i∈I) 是凸函数, X X X 是凸集。Lagrange 函数
L = f ( x ) + ∑ i ∈ I λ i c i ( x ) = f ( x ) + λ T c ( x ) \mathcal{L} = f(x) + \sum_{i\in\mathcal{I}} \lambda_i c_i(x) = f(x) + \lambda^Tc(x) L=f(x)+i∈I∑λici(x)=f(x)+λTc(x)
对于 ∀ x ∈ X \forall x \in X ∀x∈X,定义
f ^ ( x ) = max λ ≥ 0 L ( x , λ ) \hat{f}(x) = \max_{\lambda\geq 0} \mathcal{L}(x,\lambda) f^(x)=λ≥0maxL(x,λ)
则
f ^ ( x ) = { f ( x ) , c ( x ) ≤ 0 ∞ , o t h e r w i s e \hat{f}(x) = \begin{cases} f(x),&c(x)\leq 0 \\ \infty,&\mathrm{otherwise} \end{cases} f^(x)={
f(x),∞,c(x)≤0otherwise
对于 ∀ λ ≥ 0 \forall \lambda \geq 0 ∀λ≥0,定义对偶函数(dual function)
φ ( λ ) = inf x ∈ X L ( x , λ ) = inf x ∈ X [ f ( x ) + λ T c ( x ) ] \varphi(\lambda) = \inf_{x \in X} \mathcal{L}(x,\lambda) = \inf_{x \in X} [f(x) + \lambda^Tc(x)] φ(λ)=x∈XinfL(x,λ)=x∈Xinf[f(x)+λTc(x)]
命题 对偶函数 φ ( λ ) \varphi(\lambda) φ(λ) 是凹函数,对偶问题是凸规划。
定义原问题的对偶问题为
max λ ≥ 0 φ ( λ ) \max_{\lambda\geq 0}~\varphi(\lambda) λ≥0max φ(λ)
例 考虑问题
min x ∈ R n f ( x ) = c T x s . t . A x ≥ b x ≥ 0 \begin{aligned} \min_{x\in\mathbb{R}^n} ~~& f(x) = c^T x \\ \mathrm{s.t.} ~~& Ax \geq b \\ ~~&x\geq 0 \end{aligned} x∈Rnmin s.t. f(x)=cTxAx≥bx≥0
分别基于集合约束 x ∈ X = { x ∈ R n ∣ x ≥ 0 } x\in X=\{x\in\mathbb{R}^n | x\geq 0\} x∈X={
x∈Rn∣x≥0} 和 x ∈ X = R n x \in X = \mathbb{R}^n x∈X=Rn 写出该问题的对偶问题。
解 (a) Lagrange 函数为
L ( x , λ ) = c T x + λ T ( b − A x ) = ( c T − λ T A ) x + λ T b \begin{aligned} \mathcal{L}(x,\lambda) &= c^Tx + \lambda^T(b - Ax)\\ &=(c^T-\lambda^TA)x + \lambda^Tb \end{aligned} L(x,λ)=cTx+λT(b−Ax)=(cT−λTA)x+λTb
记对偶函数为
φ ( λ ) = min x ≥ 0 L ( x , λ ) \varphi(\lambda) = \min_{x\geq 0}~\mathcal{L}(x,\lambda) φ(λ)=x≥0min L(x,λ)
因此,需要 c T − λ T A ≥ 0 c^T - \lambda^TA\geq 0 cT−λTA≥0,则对偶函数为 φ ( λ ) = b T λ \varphi(\lambda) = b^T\lambda φ(λ)=bTλ。
对偶问题
max x ≥ 0 b T λ s . t . λ T A ≤ c T λ ≥ 0 \begin{aligned} \max_{x \geq 0} ~~& b^T\lambda \\ \mathrm{s.t.} ~~& \lambda^TA\leq c^T \\ ~~&\lambda\geq 0 \end{aligned} x≥0max s.t. bTλλTA≤cTλ≥0
(b) Lagrange 函数为
L ( x , λ ) = c T x + λ T ( b − A x ) + μ ( − x ) = ( c T − λ T A − μ T ) x + λ T b \begin{aligned} \mathcal{L}(x,\lambda) &= c^Tx + \lambda^T(b - Ax) + \mu(-x)\\ &=(c^T-\lambda^TA - \mu^T)x + \lambda^Tb \end{aligned} L(x,λ)=cTx+λT(b−Ax)+μ(−x)=(cT−λTA−μT)x+λTb
记对偶函数为
φ ( λ ) = min x ∈ R n L ( x , λ ) \varphi(\lambda) = \min_{x\in \mathbb{R}^n}~\mathcal{L}(x,\lambda) φ(λ)=x∈Rnmin L(x,λ)
因此,需要 c T − λ T A − μ T = 0 c^T - \lambda^TA - \mu^T = 0 cT−λTA−μT=0,则对偶函数为 φ ( λ ) = b T λ \varphi(\lambda) = b^T\lambda φ(λ)=bTλ。
对偶问题
max x ∈ R n b T λ s . t . λ T A + μ T = c T λ ≥ 0 , μ ≥ 0 \begin{aligned} \max_{x\in\mathbb{R}^n} ~~& b^T\lambda \\ \mathrm{s.t.} ~~& \lambda^TA +\mu^T = c^T \\ ~~&\lambda\geq 0,\mu\geq 0 \end{aligned} x∈Rnmax s.t. bTλλTA+μT=cTλ≥0,μ≥0
注记:由此题体会写对偶问题的灵活性,即通常仅把难处理的约束松弛到目标函数中形成 Lagrange 函数,这样对偶问题的变量要少一些. 但是求对偶函数时可能要稍微复杂些。显然,两个问题的是等价的。
弱对偶定理
定理 设 x ^ \hat{x} x^ 是原始问题的可行解(即 x ^ ∈ X , c ( x ^ ) ≤ 0 \hat{x} \in X,c(\hat{x})\leq 0 x^∈X,c(x^)≤0),对偶变量 λ ^ ≥ 0 \hat{\lambda}\geq 0 λ^≥0,则有 f ( x ^ ) ≥ φ ( λ ^ ) f(\hat{x}) \geq \varphi(\hat{\lambda}) f(x^)≥φ(λ^)。
推论 1
inf x ∈ X sup λ ≥ 0 L ( x , λ ) ≥ sup λ ≥ 0 inf x ∈ X L ( x , λ ) \inf_{x\in X} \sup_{\lambda\geq 0} \mathcal{L}(x,\lambda) \geq \sup_{\lambda\geq 0}\inf_{x\in X}\mathcal{L}(x,\lambda) x∈Xinfλ≥0supL(x,λ)≥λ≥0supx∈XinfL(x,λ)
推论 2 设 x ^ \hat{x} x^ 是原始问题的可行解, λ ^ ≥ 0 , f ( λ ^ ) = φ ( λ ^ ) \hat{\lambda} \geq 0,f(\hat{\lambda})=\varphi(\hat{\lambda}) λ^≥0,f(λ^)=φ(λ^),则二者分别是原始问题和对偶问题的最优解。推论 3 如果原始问题无界,则对每个 λ ≥ 0 , φ ( λ ) = − ∞ \lambda\geq 0,\varphi(\lambda)=-\infty λ≥0,φ(λ)=−∞,如果 sup { φ ( λ ) : λ ≥ 0 } = + ∞ \sup\{\varphi(\lambda):\lambda\geq 0\} = +\infty sup{ φ(λ):λ≥0}=+∞,则原始问题不可行。
对偶间隙
例 考虑问题
min x ∈ [ 0 , 2 ] f ( x ) = − x 2 s . t . x = 1 \begin{aligned} \min_{x \in [0,2]} ~~& f(x) = -x^2 \\ \mathrm{s.t.} ~~& x = 1 \end{aligned} x∈[0,2]min s.t. f(x)=−x2x=1
显然,原文题的解为 x ⋆ = 1 x^{\star} = 1 x⋆=1。
对偶函数为
φ ( λ ) = min 0 ≤ x ≤ 2 − x 2 + λ ( x − 1 ) = { − 4 + λ , λ ≤ 2 − λ , λ > 2 \begin{aligned} \varphi(\lambda) &= \min_{0\leq x \leq 2}~-x^2+\lambda(x -1)\\ &= \begin{cases} -4 + \lambda, &\lambda\leq 2\\ -\lambda,&\lambda>2 \end{cases} \end{aligned} φ(λ)=0≤x≤2min −x2+λ(x−1)={
−4+λ,−λ,λ≤2λ>2
则对偶问题
max λ φ ( λ ) \max_{\lambda} ~ \varphi(\lambda) λmax φ(λ)
解得 λ ⋆ = 2 \lambda^{\star} = 2 λ⋆=2。
因此,对偶间隙为
f ( x ⋆ ) − φ ( λ ⋆ ) = 1 f(x^{\star}) - \varphi(\lambda^{\star}) = 1 f(x⋆)−φ(λ⋆)=1
强对偶定理
考虑问题
p ⋆ = min x ∈ X f ( x ) s . t . c i ( x ) ≤ 0 , i ∈ I \begin{aligned} p^{\star} = \min_{x\in X} ~~&f(x)\\ \mathrm{s.t.}~~&c_i(x) \leq 0,i\in\mathcal{I} \end{aligned} p⋆=x∈Xmin s.t. f(x)ci(x)≤0,i∈I
定理 假设上述问题中, f , c i ( i ∈ I ) f,c_i ~(i\in\mathcal{I}) f,ci (i∈I) 是凸函数, X X X 为凸集,且 ∃ x ′ ∈ X ′ , s . t . , c i ( x ′ ) < 0 , i ∈ I \exists x' \in X',\mathrm{s.t.},c_i(x') < 0,i\in\mathcal{I} ∃x′∈X′,s.t.,ci(x′)<0,i∈I。若 p ⋆ p^{\star} p⋆ 有限,则
p ⋆ = max λ ≥ 0 φ ( λ ) p^{\star} = \max_{\lambda\geq 0} \varphi(\lambda) p⋆=λ≥0maxφ(λ)
且对偶问题存在最优解 λ ⋆ \lambda^{\star} λ⋆。设 x ⋆ x^{\star} x⋆ 为最优解,则
c ( x ⋆ ) T λ ⋆ = 0 c(x^{\star})^T \lambda^{\star} = 0 c(x⋆)Tλ⋆=0
且
x ⋆ = arg min x ∈ X L ( x , λ ⋆ ) x^{\star} = \mathop{\arg\min}_{x\in X} \mathcal{L}(x,\lambda^{\star}) x⋆=argminx∈XL(x,λ⋆)
强对偶定理可以总结为
S l a t e r C Q + 凸 规 划 ⇒ 强 对 偶 定 理 \mathrm{Slater~CQ} + 凸规划 \Rightarrow 强对偶定理 Slater CQ+凸规划⇒强对偶定理
Lagrange 对偶的优点
- 不管原问题是不是凸的,对偶问题为凹函数的极大化问题(凸规划)!
- 对偶问题的约束仅有“界约束”,相当简单,在很多时候求解对偶问题要容易得多。
- 应用实例
- 支持向量机(Support vector machine)
参考文献
[1] 刘红英,夏勇,周永生. 数学规划基础,北京,2012.