拉格朗日乘子法與對偶問題


主問題 (primal problem)

具有 \(m\) 個等式約束和 \(n\) 個不等式約束,且可行域 \(\mathbb{D} \subset \mathbb{R}^d\)的非空優化問題

\[\begin{align} \min_x \ f(\boldsymbol{x}) \notag\\ s.t.\ h_i(\boldsymbol{x}) &= 0 \ {(i=1,\cdots ,m)},\\ g_j(\boldsymbol{x}) &\leqslant 0 \ {(j = 1,\cdots ,n)}.\notag \end{align}\]

引入拉格朗日乘子 \(\boldsymbol{\lambda} = (\lambda_1,\cdots ,\lambda_m)^T\) 和 \(\boldsymbol{\mu} = (\mu_1,\cdots ,\mu_n)^T\),得到拉格朗日函數如下

\[\begin{equation} \boldsymbol{L(x,\lambda,\mu)} = f(\boldsymbol{x})+\sum_{i=1}^{m}\lambda_ih_i(\boldsymbol{x}) + \sum_{j=1}^{n}\mu_jg_j(\boldsymbol{x}) \end{equation}\]
由不等式約束引入的 KKT 條件為
\[\begin{equation} \begin{cases} g_j(\boldsymbol{x}) \leqslant 0;\\ \mu_j \geqslant 0;\\ \mu_jg_j(\boldsymbol{x}) = 0 \end{cases} \end{equation}\]
只需要求解拉格朗日函數的極小值即可。

對拉格朗日乘式的理解

假設目標函數在 \(\boldsymbol{x^*}\) 處取得極值,那么對於這個點,所有的\(h_i(\boldsymbol{x^*})=0\),某些\(g_j(\boldsymbol{x^*})=0\),某些\(g_j(\boldsymbol{x^*})<0\)。

  1. 對於所有的\(h_i(\boldsymbol{x})\)都有如下結論:

    • 對於任意點,\(\nabla h(\boldsymbol{x})\) 和約束曲面正交。
    • 在最優點,\(\nabla f(\boldsymbol{x^*})\) 也和約束曲面正交。

    結合以上兩點,存在\(\lambda\),使得
    \[\begin{equation} \nabla f(\boldsymbol{x^*}) + \lambda \nabla h(\boldsymbol{x^*}) = 0 \end{equation}\]
    對 \((2)\) 式的前兩項對 \(\boldsymbol{x}\) 求導,即可得到上面的式子;對 \(\lambda\) 求導得到約束條件 \(h(\boldsymbol{x}) = 0\)。即當 \((2)\) 式前兩項取得極值時,必滿足條件\(h_i(\boldsymbol{x}) = 0\)。

  2. 對於某些 \(g_j(\boldsymbol{x})\),滿足\(g_j(\boldsymbol{x^*}) = 0\),此時必定對應的 \(\mu_j>0\)
    由於在 \(\boldsymbol{x^*}\)處取得極值,因此必定有\( \nabla f(\boldsymbol{x^*}) + \mu_j \nabla g(\boldsymbol{x^*}) = 0\)。
    如果\(\mu_j < 0\),即兩個函數的梯度方向相同,那么可以沿着\(g_j(\boldsymbol{x})\leqslant0\) 的方向移動\(\boldsymbol{x}\),此時\(f(\boldsymbol{x})\)必定會減小,不符合已取得極小值的假設。

  3. 對於某些 \(g_j(\boldsymbol{x})\),滿足\(g_j(\boldsymbol{x^*}) < 0\),此時必定對應的 \(\mu_j=0\)
    若\(\mu_j\neq0\) ,則\(\boldsymbol{L(x,\lambda,\mu)}\)和\(f(\boldsymbol{x})\)值不相同。

對偶問題 (dual problem)

\((2)\) 式的對偶函數\(\Gamma: \mathbb{R}^m\times \mathbb{R}^m\mapsto \mathbb{R}\)定義為:
\[\begin{align} \Gamma(\boldsymbol{\lambda,\mu}) &=\inf_{\boldsymbol{x}\in \mathbb{D}}\boldsymbol{L(x,\lambda,\mu)}\notag\\ &=\inf_{\boldsymbol{x}\in \mathbb{D}}(f(\boldsymbol{x})+\sum_{i=1}^{m}\lambda_ih_i(\boldsymbol{x}) + \sum_{j=1}^{n}\mu_jg_j(\boldsymbol{x}) ) \end{align}\]
即給定\(\boldsymbol{\lambda,\mu}\)之后,在可行域上拉格朗日函數的下確界。
對於任意的 \(\boldsymbol{\mu}\geqslant 0\) 和 \(\boldsymbol{\lambda}\),都有

\[\sum_{i=1}^{m}\lambda_ih_i(\boldsymbol{x}) + \sum_{j=1}^{n}\mu_jg_j(\boldsymbol{x}) \leqslant 0\]
因此對於可行域上的任意一點\(\boldsymbol{\tilde{x}}\),都有
\[\Gamma(\boldsymbol{\lambda,\mu}) =\inf_{\boldsymbol{x}\in \mathbb{D}}\boldsymbol{L(x,\lambda,\mu)}\leqslant \boldsymbol{L(\tilde{x},\lambda,\mu)} \leqslant f(\boldsymbol{\tilde{x}})\]
若主問題的最優解是\(p^*\),則對於任意的 \(\boldsymbol{\mu}\geqslant 0\) 和 \(\boldsymbol{\lambda}\),都有
\[\Gamma(\boldsymbol{\lambda,\mu}) \leqslant p^*\]
對偶函數給出了主問題最優解的下界。那么下界最大是什么,這就是主問題的對偶問題,即
\[\begin{equation} \max_{\boldsymbol{\lambda,\mu}}\Gamma(\boldsymbol{\lambda,\mu})\ s.t.\ \boldsymbol{\mu}\geqslant 0 \end{equation}\]

\((6)\) 式是\((1)\) 式的對偶問題。無論主問題的凸性如何,對偶問題始終是凸優化問題。
假設\((6)\)式的最優值是 \(d^*\),顯然 \(d^* \leqslant q^*\)。如果 \(d^* = q^*\),那么稱為“強對偶性成立”,可以由對偶問題求得主問題的最優下界。
如果主問題是凸優化問題,那么強對偶性成立。
此時可由對偶問題獲得原問題的解。
SVM 即用到了對偶問題。

參考


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM