拉格朗日乘數法和對偶線性規划問題的聯系
拉格朗日乘數法解題的基本思想
下面以一個二元函數為例子解釋拉格朗日乘數法用於求解條件極值問題的思想。
我們給定一個二元函數\(z\):
\[z=f(x,y) \]
和一個約束條件:
\[\varphi(x,y)=0 \]
為了求解\(z=f(x,y)\)在附加條件下的極值,我們先作出拉格朗日函數\(L(x,y,\lambda)\),其定義如下:
\[L(x,y,\lambda)=f(x,y)+\lambda\varphi(x,y) \]
然后令\(L(x,y,\lambda)\)關於\(x,y,\lambda\)的 一階偏導數分別等於0:
\[\begin{aligned} \frac{\partial L}{\partial x}&=\frac{\partial f}{\partial x}+\lambda \frac{\partial \varphi}{\partial x}=0\\ \frac{\partial L}{\partial y}&=\frac{\partial f}{\partial y}+\lambda \frac{\partial \varphi}{\partial y}=0\\ \frac{\partial L}{\partial \lambda}&=\varphi (x,y)=0 \end{aligned} \]
求解滿足上述方程組的\(x,y,\lambda\),得到的駐點\((x,y)\),是\(z=f(x,y)\)在約束條件\(\varphi(x,y)=0\)限制下的可能的極值點。
對偶線性規划問題與拉格朗日乘數法
在這里我們給定一個一般的線性規划問題\(P\):
\[\min z=c^TX\quad\\\begin{aligned}{\rm s.t.}\quad AX&\ge b\\X&\ge 0\end{aligned} \]
設:
\[X=\left[\begin{matrix}x_1\\x_2\\ \vdots \\x_n\end{matrix}\right]\quad b=\left[\begin{matrix}b_1\\b_2\\ \vdots \\b_m\end{matrix}\right]\quad Y=\left[\begin{matrix}y_1\\y_2\\ \vdots \\y_m\end{matrix}\right]\quad \Lambda=\left[\begin{matrix}\lambda_1\\\lambda_2\\ \vdots \\\lambda_n\end{matrix}\right] \]
再令:
\[\overline{A}=\left[\begin{matrix}A\\I_{n}\end{matrix}\right]\quad\overline{b}=\left[\begin{matrix}b\\0\end{matrix}\right]\quad \overline{Y}=\left[\begin{matrix}Y\\\Lambda\end{matrix}\right] \]
我們可以作出它的拉格朗日函數:
\[L(X,\overline Y)=c^TX-\overline Y^T(\overline AX-\overline b)=(c-\overline A^T\overline Y)^TX+\overline b^T\overline Y \]
這里的乘子\(Y\ge 0,\Lambda\ge0\),其梯度為:
\[\nabla_XL(X,\overline Y)=c-\overline A^T\overline Y \]
極值點的梯度一定為零,根據拉格朗日乘數法的求解思路,此時直接令梯度等於零,然后求解相應的變量值。接下來我們求解問題\(D\):
\[\max \ \ (c-\overline A^T\overline Y)^TX+\overline b^T\overline Y\\{\rm s.t.}\quad c-\overline A^T\overline Y=0 \]
由於我們已經令\(c-\overline A^T\overline Y=0\),那么問題\(D\)可以化簡為:
\[\max \ \ \overline b^T\overline Y\\\begin{aligned}{\rm s.t.}\quad c&=\overline A^T\overline Y\\\overline Y&\ge 0\end{aligned} \]
又因為:
\[\overline{A}=\left[\begin{matrix}A\\I_{n}\end{matrix}\right]\quad\overline{b}=\left[\begin{matrix}b\\0\end{matrix}\right]\quad \overline{Y}=\left[\begin{matrix}Y\\\Lambda\end{matrix}\right] \]
所以:
\[\overline b^T\overline Y=\left[\begin{matrix}b^T &0^T\end{matrix}\right]\left[\begin{matrix}Y\\\Lambda\end{matrix}\right]=b^TY\\\overline A^T\overline Y=\left[\begin{matrix}A^T &I_n\end{matrix}\right]\left[\begin{matrix}Y\\\Lambda\end{matrix}\right]=A^TY+\Lambda \]
由於\(\Lambda\ge0\),結合上式,問題\(D\)還可以進一步化簡為:
\[\max \ \ b^TY\\\begin{aligned}{\rm s.t.}\quad A^TY\le c\\Y\ge0\end{aligned} \]
這樣的問題\(D\)就稱為原始線性規划問題\(P\)的對偶問題。
對偶線性規划的性質
定理1
設\(X\)是原始規划\(P\)的可行解,\(Y\)是對偶規划\(D\)的可行解,則恆有:
\[c^TX\le b^TY \]
證明:
\[c^TX\le (A^TY)^TX=Y^T(AX)\le Y^Tb=b^TY \]
定理2
如果\(X\)和\(Y\)分別是原始規划和對偶規划的可行解,且\(c^TX=b^TY\),則\(X,Y\)分別是它們的最優解。
證明是顯然的,由定理1直接得到。
定理3
如果原始規划有最優解,則對偶規划也有最優解,且它們最優值相等,反之亦然。
證明:
充分性:先引入松弛變量\(U\),將\(P\)寫成:
\[\max \ \ c^TX\\\begin{aligned}{\rm s.t.}\quad AX+I_mU&=b\\X\ge0,u&\ge 0\end{aligned} \]
設最優解的基為\(B\),基變量\(X_B=B^{-1}b\),檢驗數\(\Lambda\le 0\).其中\(\Lambda\)分為兩部分,對應\(X\)的\(\Lambda_1\)和對應\(U\)的\(\Lambda_2\).故
\[\Lambda_1^T=c^T-c_B^TB^{-1}A\le0\\\Lambda_2^T=-c^T_BB^{-1}E=-c_B^TB^{-1}\le0 \]
令\(Y^T=c_B^TB^{-1}\),則有\(Y\ge 0\),\(A^TY\ge c\),從而\(Y\)是\(D\)的可行解,又由:
\[w=b^TY=Y^Tb=c_B^TB^{-1}b=c_B^TX=z \]
從而\(Y\)是\(D\)的最優解。充分性得證。
必要性:因為對偶規划的對偶問題是原始規划,由上述充分性可直接得出必要性。