陈宝林《最优化理论与算法》超详细学习笔记 (四)————第四章 对偶理论

陈宝林《最优化理论与算法》超详细学习笔记 (四)————第四章 对偶理论

1. 对偶问题的提出

什么是对偶?
对同一事物(或问题),从不同的角度(或立场)提出相对的两种不同的表述。
例如:在平面内,矩形的面积与其周长之间的关系,有两种不同的表述方法。
周长一定,面积最大的矩形是正方形。
面积一定,周长最短的矩形是正方形。
这种表述有利于加深对事物的认识和理解。
线性规划问题也有对偶关系。

2. 线性规划的对偶理论

2.1 原问题与对偶问题的关系

原问题(LP):
 max  z = c 1 x 1 + c 2 x 2 + + c n x n ( a 11 a 12 a 1 n a m 1 a m 2 a m n ) ( x 1 x 2 x n ) = ( b 1 b m ) x 1 , x 2 , , x n 0 \begin{array}{cccc} \text { max } z & =c_{1} x_{1}+c_{2} x_{2}+\cdots+c_{n} x_{n} & \\ \left(\begin{array}{cccc} a_{11} & a_{12} & \cdots & a_{1 n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m 1} & a_{m 2} & \cdots & a_{m n} \end{array}\right)\left(\begin{array}{c} x_{1} \\ x_{2} \\ \vdots \\ x_{n} \end{array}\right)=\left(\begin{array}{c} b_{1} \\ \vdots \\ b_{m} \end{array}\right) \\ x_{1}, x_{2}, \cdots, x_{n} \geq 0 \end{array}
对偶问题(DP)
min ω = y 1 b 1 + y 2 b 2 + + y m b m ( y 1 , y 2 , , y m ) ( a 11 a 12 a 1 n a m 1 a m 2 a m n ) ( c 1 , c 2 , , c n ) y 1 , y 2 , , y n 0 \begin{array}{l} \min \omega=y_{1} b_{1}+y_{2} b_{2}+\cdots+y_{\mathrm{m}} b_{m} \\ \left(y_{1}, y_{2}, \cdots, y_{m}\right)\left(\begin{array}{cccc} a_{11} & a_{12} & \cdots & a_{1 n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m 1} & a_{m 2} & \cdots & a_{m n} \end{array}\right) \geq\left(c_{1}, c_{2}, \cdots, c_{n}\right) \\ y_{1}, y_{2}, \cdots, y_{n} \geq 0 \end{array}
变换关系分为对称关系与非对称关系,其中非对称形式的变换关系可以有以下两个步骤:
第一步:先将等式约束条件分解为两个不等式约束条件
第二步:按对称形式变换关系可写出它的对偶问题

2.2 对偶问题的基本性质

1)对称性:对偶问题的对偶是原问题 ;
证明:设原问题是
max z = C X ; A X b , X 0 \max _{z}=C X ; A X \leq b, \quad X \geq 0
根据对偶问题的对称变换关系,可以找到它的对偶问题是
m i n w = Y b ; Y A C , Y 0 min w=Y b ; Y A \geq C, \quad Y \geq 0
若将上式两边取负号,又因 min w = max ( ω ) \min w=\max (-\omega) 可得到
max ( w ) = Y b ; Y A C ; Y 0 \max (-w)=Y b ;-Y A \leq-C ; \quad Y \geq 0
根据对称变换关系,得到上式的对偶问题是
min ( w ) = C X ; A X b ; X 0 \min \left(-w^{\prime}\right)=-C X ;-A X \geq-b ; X \geq 0
又因 min ( w ) = max w \min \left(-w^{\prime}\right)=\max w^{\prime} ,可得
M a x w = max z = C X ; A X b ; X 0 \boldsymbol{M a x} \boldsymbol{w}^{\prime}=\max z=C \boldsymbol{X} ; \quad \boldsymbol{A X} \leq b ; \boldsymbol{X} \geq \boldsymbol{0}
这就是原问题。
2)弱对偶性:若 X ˉ \bar X 是原问题的可行解, Y ˉ \bar Y 是对偶问题的可行解。则存在CX≤Yb;
设原问题是 max z = C X ; A X b ; X 0 \max z=C X ; A X \leq b ; X \geq 0
X ˉ \bar X 是原问题的可行解,所以满足约束条件,即
A X ˉ b A \bar{X} \leq b
Y ˉ \bar Y 是对偶问题的可行解, 将 Y ˉ \bar Y 左乘上式,得到
Y ˉ A X ˉ Y ˉ b \bar{Y} A \bar{X} \leq \bar{Y} b
原问题的对偶问题是: m i n w = Y b ; Y A C ; Y 0 min w=Y b ; Y A \geq C ; Y \geq 0
Y ˉ \bar Y 是对偶问题的可行解,所以满足 Y ˉ A C \bar{Y} A \geq C
X ˉ \bar X 右乘上式,得到 Y ˉ A X ˉ C . \bar{Y} A \bar{X} \geq C .
于是得到 C X ˉ Y ˉ A X ˉ Y ˉ b C \bar{X} \leq \bar{Y} A \bar{X} \leq \bar{Y} b \quad
证毕.

3)无界性:若原问题(对偶问题)为无界解,则其对偶问题(原问题)无可行解;
由性质(2)可知,
Y ˉ b C X ˉ , \bar{Y} b \geq C \bar{X} \rightarrow \infty, 是不可能成立。
4)可行解是最优解时的性质 ;
X ^ \hat{X} 是原问题的可行解, Y ^ \hat{Y} 是对偶问题的可行解,
C X ^ = Y ^ b C\hat{X}=\hat{Y}b 时, X ^ , Y ^ \hat{X}, \hat{Y} 是最优解。

设: X ^ \hat X 是原问题的可行解, Y ^ \hat{Y} 是对偶问题的可行解
C X ^ = Y ^ b C \hat{X}=\hat{Y} b 时, X ^ , Y ^ \hat{X}, \hat{Y} 是最优解

证明:
C X ^ = Y ^ b C \hat{X}=\hat{Y} b , 根据性质2 可知,对偶问题的
所有可行解 Y ˉ \bar{Y} 都存在 Y ˉ b C ^ X ; \bar{Y} b \geq \hat{C} X ; C X ^ = Y ^ b C \hat{X}=\hat{Y} b
所以 Y ˉ b Y ^ b \bar{Y} b \geq \hat{Y} b
可见是使目标函数取值最小的可行解,
因而是最优解
同理可证明,对原问题
存在 C X ^ = Y ^ b C X ˉ C \hat{X}=\hat{Y} b \geq C \bar{X} ,所以是最优解 .
证毕
5)对偶定理:若原问题有最优解,那么对偶问题也有最优解;且目标函数值相等;
证明:
X ^ \hat X 是原问题的最优解,它对应的基矩阵B,
必存在 C C B B 1 A 0 C-C_{B} B^{-1} A \leq 0 即得到 Y ^ A C \hat{Y} A \geq C 其中 Y ^ = C B B 1 \hat{Y}=C_{B} B^{-1}
Y ^ \hat Y 是对偶问题的可行解,使得 w = Y ^ b = C B B 1 b w=\hat{Y} b=C_{B} B^{-1} b
因原问题的父是最优解,使目标函数取值 z = C X ^ = C B B 1 b z=C \hat{X}=C_{B} B^{-1} b 由此,得到 Y ^ b = C B B 1 b = C X ^ \hat{Y} b=C_{B} B^{-1} b=C \hat{X}
可见 Y ^ \hat Y 是对偶问题的最优解。

6)互补松弛性 ;
X ^ , \hat{X}, 分分别为原问题和对偶问题的可行解,
那么 Y ^ X S = 0 \hat{Y} X_{S}=0 Y S X ^ = 0 Y_{S} \hat{X}=0 ;当且仅当, X ^ , Y ^ \hat{X}, \hat{Y} 为最优解。

证明:设原问题和对偶问题的标准关系为
原问题:
max z = C X A X + X S = b X , X S 0 \begin{array}{l} \max z=C X \\ A X+X_{S}=b \\ X, X_{S} \geq 0 \end{array}
对偶问题:
min ω = Y b Y A Y S = C Y , Y S 0 \begin{array}{l} \min \omega=Y b \\ Y A-Y_{S}=C \\ Y, Y_{S} \geq 0 \end{array}
将原问题目标函数中的系数向量 C C C = Y A Y s C=YA-Y_s 代替后,得到
z = ( Y A Y S ) X = Y A X Y S X z=\left(Y A-Y_{S}\right) X=Y A X-Y_{S} X
将对偶问题的目标函数中系数列向量b,用 b = A X + X s b=AX+X_s 代替后,
得到 w = Y ( A X + X S ) = Y A X + Y X S w=Y\left(A X+X_{S}\right)=Y A X+Y X_{S}
t ^ Y S X ^ = 0 , Y ^ X S = 0 \hat{t} Y_{S} \hat{X}=0, \hat{Y} X_{S}=0 Y ^ b = Y ^ A X ^ = C X ^ \hat{Y} b=\hat{Y} A \hat{X}=C \hat{X}
由性质(4),可知 X ^ , Y ^ \hat{X}, \hat{Y} 是最优解。
又若分别是原问题和对偶问题的最优解, 根据性质(4),则有C X = Y A X = Y b X=Y A X=Y b
可知,必有
Y ^ X S = 0 , Y S X ^ = 0 \hat{Y} X_{S}=0, Y_{S} \hat{X}=0

** 7)原问题检验数与对偶问题解的关系**
设原问题是
max z = C X ; A X + X S = b ; X , X S 0 \max z=C X ; A X+X_{S}=b ; X, X_{S} \geq 0
它的对偶问题是
min w = Y b ; Y A Y S = C ; Y , Y S 0 \min w=Y b ; Y A-Y_{S}=C ; Y, Y_{S} \geq 0
则原问题单纯形表的检验数行对应其对偶问题的一个基解,其对应关系见表
在这里插入图片描述
Y S 1 Y_{S1} 是对应原问题中基变量 X B X_{B} 的剩余变量,
Y S 2 Y_{S2} 是对应原问题中非基变量 X N X_{N} 的剩余变量。

3. 对偶单纯形法

前节讲到原问题与对偶问题的解之间的对应关系时指出:在单纯形表中进行迭代时,在b列中得到的是原问题的基可行解,而在检验数行得到的是对偶问题的基解。
通过逐步迭代,当在检验数行得到对偶问题的解也是基可行解时,根据性质(2)、(3)可知,已得到最优解。即原问题与对偶问题都是最优解。
根据对偶问题的对称性,可以这样考虑:若保持对偶问题的解是基可行解,即 c j C B B 1 P j 0 c_{j}-C_{B} B^{-1} P_{j} \leq 0 ,而原问题在非可行解的基础上,通过逐步迭代达到基可行解,这样也得到了最优解。其优点是原问题的初始解不一定是基可行解,可从非基可行解开始迭代。
设原问题为:
max z = C X A X = b X 0 \begin{array}{r} \max z=C X \\ A X=b \\ X \geq 0 \end{array}
又设 B B 是一个基。不失一般性,令 B = ( P 1 , P 2 , , P m ) B=\left(P_{1}, P_{2}, \ldots, P_{m}\right) ,它对应的变量为 X B = ( x 1 , x 2 , , x m ) X_{B}=\left(x_{1}, x_{2}, \ldots, x_{m}\right) 。当非基变量都为零时,可以得到 X B = B 1 b X_{B}=B^{-1} b 。若在 B 1 b B^{-1} b 中至少有一个负分量,设 ( X B = B 1 b ) i < 0 {(X_{B}=B^{-1} b)}_i < 0 ,并且在单纯形表的检验数行中的检验数都为非正,即对偶问题保持可行解,它的各分量是
(1) 对应基变量 x 1 , x 2 , , x m x_{1}, x_{2}, \ldots, x_{m} 的检验数是
σ i = c i z i = c i C B B 1 P j = 0 , i = 1 , 2 , , m \sigma_{i}=c_{i}-z_{i}=c_{i}-C_{B} B^{-1} P_{j}=0, \quad i=1,2, \ldots, m
(2) 对应非基变量 x m + 1 , , x n x_{m+1}, \ldots, x_{n} 的检验数是
σ j = c j z j = c j C B B 1 P j 0 , j = m + 1 , , n \sigma_{j}=c_{j}-z_{j}=c_{j}-C_{B} B^{-1} P_{j} \leq 0, \quad j=m+1, \ldots, n
每次迭代是将基变量中的负分量 x 1 x_1 取出,去替换非基变量中的 x k x_k ,经基变换,所有检验数仍保持非正。从原问题来看,经过每次迭代,原问题由非可行解往可行解靠近。当原问题得到可行解时,便得到了最优解。
对偶单纯形法的计算步骤如下:
(1) 根据线性规划问题,列出初始单纯形表。检查 b b 列的数字,若都为非负,检验数都为非正,则已得到最优解。停止计算。若检查 b b 列的数字时,至少还有一个负分量,检验数保持非正,那么进行以下计算。
(2) 确定换出变量。按 min { ( B 1 b ) i ( B 1 b ) i < 0 = ( B 1 b ) 1 \min \left\{\left(B^{-1} b\right)_{i} \mid\left(B^{-1} b\right)_{i}<0=\left(B^{-1} b\right)_{1}\right. 对应的基变量 x 1 x_1 为换出变量
(3) 确定换入变量。在单纯形表中检查 x 1 x_1 所在行的各系数 α 1 j ( j = 1 , 2 , , n ) \alpha_{1 j}(j=1,2, \ldots, n) 。若所有 α 1 j 0 \alpha_{1j} \geq 0 ,则无可行解,停止计算。若存在 α 1 j < 0 ( j = 1 , 2 , , n ) \alpha_{1 j}<0(j=1,2, \ldots, n) , 计算
θ = min j ( c j z j a l j a l j < 0 ) = c k z k a l k \theta=\min _{j}\left(\frac{c_{j}-z_{j}}{a_{l j}} \mid a_{l j}<0\right)=\frac{c_{k}-z_{k}}{a_{l k}}
θ \theta 规则所对应的列的非基变量 x k x_k 为换入变量,这样才能保持得到的对偶问题解仍为可行解。
(4) 以 α 1 k \alpha_{1k} 为主元素,按原单纯形法在表中进行迭代运算,得到新的计算表。
重复步骤(1)~(4)。

从以上求解过程可以看到对偶单纯形法有以下优点:
(1) 初始解可以是非可行解,当检验数都为负数时就可以进行基的变换,这时不需要加入人工变量,因此可以简化计算。
(2) 当变量多于约束条件,对这样的线性规划问题用对偶单纯形法计算可以减少计算工作量,因此对变量较少,而约束条件很多的线性规划问题,可先将它变换成对偶问题,然后用对偶单纯形法求解。
(3) 在灵敏度分析及求解整数规划的割平面法中,有时需要用对偶单纯形法,这样可使问题的处理简化。对偶单纯形法的局限性主要是,对大多数线性规划问题,很难找到一个初始可行基,因而这种方法在求解线性规划问题时很少单独应用。

猜你喜欢

转载自blog.csdn.net/River_J777/article/details/107455251
今日推荐