1. 程式人生 > >拉格朗日對偶性(KKT)

拉格朗日對偶性(KKT)

sum 問題 clas 4.4 我們 line 約束 分別是 lin

1. 前言

在約束最優化問題中,常常利用拉格朗日對偶性將原始問題轉化為對偶問題,通過求解對偶問題獲得原始問題的解。該方法應用在許多統計學方法中,如最大熵模型、支持向量機。

2. 原始問題

假設\(f(x),c_i(x),h_j(x)\)是定義在\(R^n\)上的連續可微函數。考慮如下最優化問題

\[ \min_{x\in R^n}f(x)\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;(1) \]

\[ s.t. \; c_i(x)\leq0, \; i=1,2,...,k \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (2) \]

\[ \;\;\;\;\;\;\; h_j(x)=0, \; j=1,2,...,l \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (3) \]
稱此約束最優化問題為原始最優化問題或原始問題

引入廣義拉格朗日函數

\[ L(x,\alpha,\beta)=f(x)+\sum_{i=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (4) \]
這裏, \(\alpha_i,\beta_j\)

是拉格朗日乘子,\(\alpha_i≥0\). 考慮\(x\)的函數,這裏下標\(P\)表示原始問題。

\[ \theta_P(x)=\max_{\alpha,\beta;\alpha_i\geq0}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (5) \]

容易得到:當\(x\)滿足原始問題約束時,\(\theta_P(x)=f(x)\),則可得到與原始優化問題想等價的極小化問題如下:

\[ \min_{x}\theta_P(x)=\min_{x}\max_{\alpha,\beta;\alpha_i\geq0}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (6) \]


此問題稱為廣義拉格朗日函數的極小極大問題

定義原始問題的最優值

\[ p^*=\min_{x}\theta_P(x) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (7) \]

3. 對偶問題(dual problem)

關於對偶問題,我們首先定義:

\[ \theta_D(\alpha,\beta)=\min_{x}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (8) \]

再考慮極大化上式:

\[ \max_{\alpha,\beta;\alpha_i\geq0}\theta_D(\alpha,\beta)=\max_{\alpha,\beta;\alpha_i\geq0}\min_{x}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (9) \]
問題\(\max_{\alpha,\beta;\alpha\geq0}\min_{x}L(x,\alpha,\beta)\)稱為廣義拉格朗日函數的極大極小問題。可將廣義拉格朗日函數的極大極小問題表示為約束最優化問題:

\[ \max_{\alpha,\beta}\theta_D(\alpha,\beta)=\max_{\alpha,\beta}\min_{x}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (10) \]
\[ s.t.\;\alpha_i\geq0,\; i=1,2,...,k \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (11) \]

稱為原使問題的對偶問題。定義對偶問題的最優值,稱為對偶問題的值。

\[ d^*=\max_{\alpha,\beta;\alpha_i\geq0}\theta_D(\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (12) \]

4. 原始問題和對偶問題的關系

4.1 定理1

若原始問題和對偶問題都有最優值,則

\[ d^*=\max_{\alpha,\beta;\alpha_i\geq0}\min_{x}L(x,\alpha,\beta)\leq\min_{x}\max_{\alpha,\beta;\alpha_i\geq0}L(x,\alpha,\beta)=p^* \]

4.2 推論1

\(x^*\)\(\alpha^*,\beta^*\)分別是原始問題(公式1~3)和對偶問題(公式10~11)的可行解,並且\(d^*=p^*\),則\(x^*\)\(\alpha^*,\beta^*\)分別是原始問題和對偶問題的最優解。

4.3 定理2

考慮原始問題(公式1~3)和對偶問題(公式10~11). 假設函數\(f(x)\)\(c_i(x)\)是凸函數,\(h_j(x)\)是仿射函數1; 並且假設不等式約束\(c_i(x)\)是嚴格可行的, 即存在\(x\), 對所有\(i\)\(c_i(x)<0\), 則存在\(x^*,\alpha^*,\beta^*\)使\(x^*\)是原始問題的解, \(\alpha^*,\beta^*\)是對偶問題的解,並且

\[ p^*=d^*=L(x^*,\alpha^*,\beta^*) \]

4.4 定理3

對原始問題(公式1~3)和對偶問題(公式10~11), 假設函數\(f(x)\)\(c_i(x)\)是凸函數,\(h_j(x)\)是仿射函數,並且不等式約束\(c_i(x)\)是嚴格可行的, 則\(x^*\)\(\alpha^*,\beta^*\)分別是原始問題和對偶問題的解的充分必要條件是\(x^*,\alpha^*,\beta^*\)滿足KKT條件:
\[ \nabla_xL(x^*,\alpha^*,\beta^*)=0 \]

\[ \nabla_\alpha L(x^*,\alpha^*,\beta^*)=0 \]

\[ \nabla_\beta L(x^*,\alpha^*,\beta^*)=0 \]

\[ \alpha_i^*c_i(x^*)=0, \; i=1,2,...,k \]

\[ c_i(x^*)\leq0, \; i=1,2,...,k \]

\[ \alpha_i^*\geq0, \; i=1,2,...,k \]

\[ h_j(x^*)=0, \; j=1,2,...,l \]

(歡迎轉載,轉載請註明出處。歡迎溝通交流: [email protected]

拉格朗日對偶性(KKT)