代码改变世界

对偶问题

2012-09-18 21:20  ggzwtj  阅读(11636)  评论(1编辑  收藏  举报

线性规划中一个经典问题的描述如下:

  某工厂有两种原料A、B,而且能用其生产两种产品:

1、生产第一种产品需要2个A和4个B,能够获利6;

2、生产第二种产品需要3个A和2个B,能够获利4;

此时共有100个A和120个B,问该工厂最多获利多少?

用数学表达式描述如下:

已知:

2×X1+3×X2≤100

4×X1+2×X2≤120

求:

max 6×X1+4×X2

  工厂除了拿原料生产成产品卖掉这条出路外,还有一种方法是直接将原料卖掉。当然,不管是怎么做都要利益越大话!也就是说,把原料卖掉赚的钱比生产成产品赚的钱多,才去会这样做。那么最低可以接受多少的价格呢?假设资源A和B的单价分别为:Y1和Y2,那么可以用数学表达式描述如下:

已知:

2×Y1+4×Y2≥6

3×Y1+2×Y2≥4

求:

min 100×Y1+120×Y2

那么,这两个问题互为对偶问题。

对偶问题的性质和定理如下:

1、对偶问题的对偶问题就是原问题。

2、如果X0和Y0分别是原问题和对偶问题的可行解,那么C×X0≥Y0×B。

3、如果X0和Y0分别是原问题和对偶问题的最优解,那么C×X0=Y0×B。

4、有一对对偶问题,如果其中有一个问题有一个有限的最优解,则另一个也有最优解。

5、若线性规划原问题有一个对应于基B的最优基本可行解,则此时的单 纯型乘子Y= CBB-1是相应于对偶问题的一个最优解。

6、若X和Y分别是原问题和对偶问题的可行解,则X和Y都是最优解的充要条件是,对所有i和j,下列关系式成立:

a、如果Xj>0,必有Y×Pj=cj

b、如果Y×Pj<cj,必有Xj=0

c、如果Yi>0,必有Ai×X=bi

d、如果Ai×X>bi,必有Yi=0

其中Pj是A的第j列,Ai是A的第i行,称为互补松弛定理。

证明:

原问题标准化:

对应的“对偶问题”标准化后得到:

 

因为原问题和对偶问题会“同时”取得最优解,那么在取得最优解时有:

好了,现在开始真正的证明过程:


过程还是很简单的,不过从整体上的过程可以学到很多的思想,也要学会用数学的表述去描述直观的问题。

----------------------------------------

欢迎拍砖。