Linear Programming and Duality Theory.

本文目录:

  1. 线性规划问题 Linear Programming
  2. 弱对偶形式 Weak Duality
  3. 强对偶形式 Strong Duality

1. 线性规划问题 Linear Programming

线性规划(linear programming)问题是指求解线性约束下的线性函数最小值问题:

minxcTxs.t. Ax=bx0minxcTxs.t. Ax=bx0

其中x,cRn,bRm,ARm×nAx=b表示m个等式约束。

等价地,线性规划问题也可以写作:

minx{cTx|Ax=b,x0}

有时线性规划问题难以直接求解,因此转而寻找线性规划问题的对偶形式(duality)。一般地,对偶是指将原问题转化为一个等价的、但具有不同形式的新问题;将新问题通过同样形式的变换后能够还原为原问题。解决对偶问题,就等价地解决了原问题;在实践中可以灵活地选择两者中形式更简单的进行解决。

2. 弱对偶形式 Weak Duality

线性规划问题的原问题是一个最小值问题,不妨假设最小值在x处取得,此时有Ax=b;在等式两边左乘yRm,则有:

yTAx=yTb

若引入约束条件ATyc或等价地yTAcT,根据x0则有:

yTAxcTx=minx{cTx|Ax=b,x0}

结合上述两式可得:

yTbcTx=minx{cTx|Ax=b,x0}

注意到上式对任意满足ATycy均成立,则对满足约束条件下使得yTb取值最大的情况也成立:

maxy{bTy|ATyc}minx{cTx|Ax=b,x0}

上式即为线性规划问题的弱对偶形式。弱对偶形式将一个最小值问题转换为一个最大值问题,给出了原问题的一个下界。

进一步地,若两个问题相等,则称为强对偶形式。

3. 强对偶形式 Strong Duality

线性规划问题的强对偶形式为:

maxy{bTy|ATyc}=minx{cTx|Ax=b,x0}

对于线性规划问题来说,强对偶形式是成立的;证明过程需要借助Farkas引理。

⚪ Farkas引理

对于矩阵ARm×n和向量bRm,下面两种情况有且只有一种成立:

  1. 存在xRnx0,使得Ax=b
  2. 存在yRm,使得ATy0bTy>0

下面提供一种几何视角的证明:

将矩阵A看作nm维列向量的组合A=(a1,a2,an),考虑集合:

{Ax|xRn,x0}

上述集合构成了矩阵A的所有列向量的非负线性组合,在空间中构成了一个“锥体”:

对于任意向量bRm,则在空间中应具有两种情况:在锥体内部(包括边界)和在锥体外部。

若向量b在锥体内部(包括边界),则b可以表示为矩阵A列向量的非负线性组合,即存在x0,使得Ax=b。此即第一种情况。

若向量b在锥体外部,则总可以找到一个向量yRm,使得y与矩阵A所有列向量的夹角都为钝角,表示为:

(aT1y0,aT2y0,aTny0)ATy0

且向量y与向量b的夹角为锐角,表示为bTy0。此即第二种情况。

⚪ 证明线性规划的强对偶形式

仍然假设原问题的最小值在x处取得,且对应的最小值为z=cTx。构造如下矩阵:

ˆA=(AcT)R(m+1)×n,ˆbϵ=(bz+ϵ)Rm+1

ϵ>0时,对于x0ˆATx=ˆbϵ不成立。这是因为z已经是cTx的最大值,不可能存在一个更大的值z+ϵ。则根据Farkas引理,存在ˆyRm+1,使得ˆATˆy0ˆbTϵˆy>0

不妨将ˆy记为ˆy=(yα),则有:

ATyαc,bTyα(zϵ)

注意到当ϵ>0时有ˆbTϵˆy=ˆbT0ˆy+αϵ>0。另一方面,当ϵ=0时有ˆAx=ˆbT0,满足Farkas引理的第一种情况;则第二种情况不成立,即恒有ˆbTϵˆy<0。结合上述两种情况可知当ϵ>0时有αϵ>0,即α>0。此时有:

ATyαc,bTyαzϵ

即存在一个y在满足约束条件ATyc下使得bTyzϵ;显然bTy的最大值也是满足的:

maxy{bTy|ATyc}zϵ=minx{cTx|Ax=b,x0}ϵ

而根据弱对偶形式有:

maxy{bTy|ATyc}minx{cTx|Ax=b,x0}

注意到对任意ϵ>0上述两个不等式恒成立。不妨取ϵ为无穷小的正数,根据两边夹定理则有:

maxy{bTy|ATyc}=minx{cTx|Ax=b,x0}