线性规划及对偶问题
- 格式:ppt
- 大小:3.11 MB
- 文档页数:30
线性规划对偶问题线性规划是一种优化问题的数学建模方法,在实际生产和管理中广泛应用。
线性规划问题通常包括最大化或最小化一个线性目标函数的约束条件下的一组线性不等式或等式。
对于一个线性规划问题,其对偶问题是通过对原问题的目标函数和约束条件进行变换而得到的。
对偶问题有助于理解原问题的特性,并提供关于原问题的附加信息。
具体来说,对于一个原问题:最小化 C^T * X约束条件 A * X >= bX >= 0其中,C是目标函数的系数矩阵,X是决策变量向量,A是约束条件的系数矩阵,b是约束条件的右侧向量。
对于原问题的对偶问题,其形式为:最大化 b^T * Y约束条件 A^T * Y <= CY >= 0其中,Y是对偶变量向量。
对偶问题的最优解被称为对偶可行解,对偶问题的最优解与原问题的最优解之间存在弱对偶性和强对偶性。
弱对偶性指的是对于原问题的任意可行解X和对偶问题的任意可行解Y,有C^T * X >= b^T * Y。
这意味着对于原问题的任意最优解X*和对偶问题的任意最优解Y*,有C^T * X* >=b^T * Y*。
强对偶性指的是如果原问题和对偶问题的任意一个都有有界解,那么它们必然存在一对最优解,使得C^T * X* = b^T * Y*。
对偶问题的解决可以通过使用单纯形法或内点法等优化算法来进行求解。
对偶问题对线性规划问题的求解具有重要的应用价值和理论意义。
它可以用于确定原问题的可行解的界限,还可以提供原问题的敏感性分析和稳定性分析。
总之,线性规划的对偶问题是通过对原问题的目标函数和约束条件进行变换而得到的,对偶问题为理解原问题的特性和提供附加信息提供了一种有力的工具。
线性规划的对偶原理3。
1 线性规划的对偶问题一、 对偶问题的提出换位思考家具厂的线性规划问题,该问题站在家具厂管理者的角度追求销售收入最大213050m ax x x z +=⎪⎩⎪⎨⎧≥≤+≤+0,50212034212121x x x x x x某企业家有一批待加工的订单,有意利用该家具厂的木工和油漆工资源来加工他的产品。
他 需要与家具厂谈判付给该厂每个工时的价格。
如果该企业家已对家具厂的经营情况有详细了 解,他可以构造一个数学模型来研究如何才能既让家具厂觉得有利可图,肯把资源出租给他, 又使自己付的租金最少.目标:租金最少;1y —付给木工工时的租金;2y -付给油漆工工时的租金2150120m in y y w +=所付租金应不低于家具厂利用这些资源所能得到的利益1)支付相当于生产一个桌子的木工、油漆工的租金应不低于生产一个桌子的收入 502421≥+y y2)支付相当于生产一个椅子的木工、油漆工的租金应不低于生产一个椅子的收入 30321≥+y y3)付给每种工时的租金应不小于零 0,021≥≥y y二、 原问题与对偶问题的数学模型1. 对称形式的对偶原问题和对偶问题只含有不等式约束时,一对对偶问题的模型是对称的,称为对称形式的对偶。
原问题:⎪⎩⎪⎨⎧≥≥=0min X b AX CX z对偶问题:⎪⎩⎪⎨⎧≥≤=0max Y C YA Yb w2. 非对称形式的对偶若原问题的约束条件全部是等式约束(即线性规划的标准型),即⎪⎩⎪⎨⎧≥==0min X b AX CX z则其对偶问题的数学模型为⎪⎩⎪⎨⎧≤=是自由变量Y C YA Yb w max可把原问题写成其等价的对称形式:min z =CX AX ≥b AX ≤b X ≥0即 min z =CX⎥⎦⎤⎢⎣⎡-A A X ≥⎥⎦⎤⎢⎣⎡-b bX ≥0设Y 1=(y 1,y 2,…,y m ), Y 2=(y m+1,y m+2,…,y 2m )。
第三章 线性规划及其对偶问题线性规划是最优化问题的一种特殊情形,也是运筹学的一个重要分支,它的实质是从多个变量中选取一组适当的变量作为解,使这组变量满足一组确定的线性式,而且使一个线性目标函数达到最优(最大或最小).线性规划的应用极为广泛,自1949年美国数学家G. B. Dantzing 提出一般线性规划问题求解的方法——单纯形法之后,线性规划无论在理论上、计算方法和开拓新的应用领域中,都获得了长足的进步,线性规划从解决技术问题的最优化设计到工业、农业、商业、交通运输业、军事、经济计划和管理决策等领域都有广泛的发展和应用.本章主要从线性规划的基本概念、数学模型、单纯形法、对偶理论、灵敏度分析等方面进行介绍.§3.1 线性规划数学模型基本原理一、线性规划的数学模型满足以下三个条件的数学模型称为线性规划的数学模型:(1)每一个问题都用一组决策变量T n x x x ][21,,, 表示某一方案;每一组值就代表一个具体方案.(2)有一个目标函数,可用决策变量的线性函数来表示,按问题的不同,要求目标函数实现最大化或最小化.(3)有一组约束条件,可用一组线性等式或不等式来表示. 线性规划问题的一般形式为1211221111221121122222112212max(min)()()()..()0n n n n n n n m m mn n m n f x x x c x c x c x a x a x a x b a x a x a x b s t a x a x a x b x x x =++++++≤=≥⎧⎪+++≤=≥⎪⎪⎨⎪+++≤=≥⎪⎪≥⎩,,,,,,,,,,,,,.这里,目标函数中的系数n c c c ,,, 21叫做目标函数系数或价值系数,约束条件中的常数m b b b ,,, 21叫做资源系数,约束条件中的系数;,,,m i a ij 21(= )21n j ,,, =叫做约束系数或技术系数.二、线性规划问题的标准形式所谓线性规划问题的标准形式,是指目标函数要求min ,所有约束条件都是等式约束,且所有决策定量都是非负的,即1211221111221121122222112212min ()..0n n n n n n n m m mn n mn f x x x c x c x c x a x a x a x b a x a x a x b s t a x a x a x b x x x =++++++=⎧⎪+++=⎪⎪⎨⎪+++=⎪⎪≥⎩,,,,,,,,,,,或简写为11min ()12..012nj j j nij ji j jf X c x a x b i m s t x j n ===⎧==⎪⎨⎪≥=⎩∑∑,,,,,,,,,,. 可以规定各约束条件中的资源系数0(12)i b i n ≥=,,,,否则等式两端乘以“1-”.线性规划问题的矩阵表示为min ()..0f X CX AX b s t X ==⎧⎨≥⎩,,,其中12[]n C c c c =,,,,12[]T n X x x x =,,,,11121212221212n n n m m mn a a a a a a A P P P a a a ⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎣⎦[,,,],12[]T n b b b b =,,,. 任意的线性规划模型都可以转化为标准形式:(1)若目标函数是求最大值的问题,这时只需将所有目标函数系数乘以“-1”,求最大值的问题就变成了求最小值的问题,即)](min[)(max X f X f --=.求其最优解后,把最优目标函数值反号即得原问题的目标函数值.(2)若约束条件为不等式,这里有两种情况:一种是“≤”不等式,则可在“≤”不等式的左端加入一个非负的新变量(叫松驰变量),把不等式变为等式;另一种是“≥”不等式,则可在“≥”不等式的左端减去一个非负松驰变量(也叫剩余变量),把不等式变为等式.松驰变量在目标函数中对应的系数为零.(3)若存在取值无约束的变量k x ,可令k k k x x x ''-'=,其中k x ',0≥''k x . 例3.1 将下列线性规划问题化为标准形式123123123123123max ()2372.3250f X x x x x x x x x x s t x x x x x x =-+++≤⎧⎪-+≥⎪⎨-++=⎪⎪≥⎩,,,,,,为无约束. 解 将目标函数变为)](min[X f -,令543x x x -=,其中450x x ≥,,在第一个约束不等式中加入松驰变量6x ,在第二个约束不等式中减去剩余变量7x ,则可得标准形式12456712456124571245124567min[()]23()00()7()2.32()5,,,,,0f X x x x x x x x x x x x x x x x x s t x x x x x x x x x x -=-+--++++-+=⎧⎪-+--=⎪⎨-++-=⎪⎪≥⎩,,,,.三、线性规划的解的概念和基本定理 考虑线性规划标准形式的约束条件0AX b X =≥,,其中A 为n m ⨯矩阵,m n >,b 是m 维向量.假定增广矩阵,A b []的秩=矩阵A 的秩m =,把矩阵A 的列进行可能的重新排列,使,A B N =[].这里B 为m m ⨯矩阵,且有逆矩阵存在,即0||≠B ,称B 为该线性规划问题的一个基.不失一般性,设111211212,,,m m m m mm a a a B PP P a a a ⎡⎤⎢⎥==⎢⎥⎢⎥⎣⎦[], 称(12)j P j m =,,,为基向量,与基向量对应的变量(12)j x j m =,,,称为基变量,记为12T B m X x x x =[,,,],其余的变量称为非基变量,记为12T N m m n X x x x ++=[,,,].令m n -个非基变量均为0,并用高斯消元法,可得一个解12[][00]T T T T B N m X X X x x x ==,,,,,,,,称X 为该约束方程组的基解,其中b B X B 1-=.满足非负约束条件0≥X (基解的非零分量都0≥)的基解称为基可行解.对应于基可行解的基称为可行基.基可行解的非零分量个数小于m 时,称为退化解.线性规划的解的基本定理:引理3.1 线性规划问题的可行解12[]T n X x x x =,,,为基可行解的充要条件是X 的正分量所对应的系数列向量是线性无关的.证 必要性由基可行解的定义可知.下证充分性若向量组k P P P ,,,21线性无关,则必有m k ≤;当m k =时,它们恰构成一个基,从而12[00]T k X x x x =,,,,,,为相应的基可行解.当m k <时,则一定可以从其余的列向量中取出k m -个与k P P P ,,,21构成最大的线性无关向量组,其对应的解恰为X ,所以它是基可行解. 定理3.1 线性规划问题的基可行解X 对应于可行域D 的顶点. 证 不失一般性,假设基可行解X 的前m 个分量为正,故∑==mj jj b xP 1.(3.1)现在分两步来讨论,分别用反证法.(1)若X 不是基可行解,则它一定不是可行域D 的顶点.根据引理3.1,若X 不是基可行解,则其正分量所对应的系数列向量m P P P ,,, 21线性相关,即存在一组不全为零的数12i i m α=,,,,,使得02211=+++m m P P P ααα (3.2)用一个0>μ的数乘式(3.2),再分别与式(3.1)相加和相减,得到111222()()()m m m x P x P x P b μαμαμα-+-++-=,111222()()()m m m x P x P x P b μαμαμα++++++=.现取11122[()()()00]T m m X x x x μαμαμα=---,,,,,,,21122[()()()00]T m m X x x x μαμαμα=+++,,,,,,,由21X X ,可得121122X X X =+,即X 是21X X ,连线的中点.另一方面,当μ充分小时,可保证012i i x i m μα±≥=,,,,,即21X X ,是可行解,这证明了X 不是可行域D 的顶点.(2)若X 不是可行域D 的顶点,则它一定不是基可行解.因为X 不是可行域D 的顶点,故在可行域D 中可找到不同的两点,(1)(1)(1)112[]T nX x x x =,,,,T nx x x X ][)2()2(2)2(12,,, =,使12(1)01X X X ααα=+-<<,.设X 是基可行解,对应向量组m P P P ,,, 21线性无关,当m j >时,有0)2()1(===j j j x x x ,由于21X X ,是可行域的两点,应满足∑∑====mj mj jj j j b xP b x P 11)2()1(,.将这两式相减,即得∑==-mj j j jx xP 1)2()1(0)(.因21X X ≠,所以上式系数)()2()1(j j x x -不全为零,故向量组m P P P ,,, 21线性相关,与假设矛盾,即X 不是基可行解.定理3.2 若可行域有界,线性规划问题的目标函数一定可以在其可行域的顶点上达到最优.证 设k X X X ,,, 21是可行域的顶点,若0X 不是顶点,且目标函数在0X 处达到最优*0()f X CX =(标准形式是*()min ()f X f X =).因0X 不是顶点,所以它可以用D 的顶点线性表示为01101kki i i i i i X X ααα===≥=∑∑,,.因此011k ki i i i i i CX C X CX αα====∑∑.(3.3)在所有的顶点中必然能找到某一个顶点m X ,使m CX 是所有i CX 中最小者,并且将m X 代替式(3.3)中的所有i X ,得到∑∑===≥ki ki m m i ii CX CX CX11αα,由此得到m CX CX ≥0.根据假设,0CX 是最小值,所以只能有m CX CX =0,即目标函数在顶点m X 处也达到最小值.§3.2 线性规划迭代算法单纯形法是求解线性规划问题的迭代算法.一、单纯形法的计算步骤单纯形法的基本思路是:从可行域中某个基可行解(一个顶点)开始,转换到另一个基可行解(顶点),直到目标函数达到最优时,基可行解即为最优解.单纯形法的基本过程如图3.1所示.为计算方便,通常借助于单纯形表来计算,从初始单纯形表3.1开始,每迭代一步构造一个新单纯形表.单纯型表中B X 列中填入基变量m x x x ,,, 21;B C 列中填入基变量的价值系数m c c c ,,, 21;b 列中填入约束方程组右端的常数;j θ列的数字是在确定换入变量后,按θ规则计算填入;最后一行称为检验数行,对应各非基变量j x 的检验数是∑=-=-=mi j j ij i j j z c a c c 1σ,1j m n =+,,(这里令∑==mi ijj j ac z 1).(1)找出初始可行基,确定初始基可行解,建立初始单纯形表. (2)检验各非基变量j x 的检验数∑=-=-=mi j j iji j j z c ac c 1σ(1j m n =+,,).若所有0≥j σ,则已得到最优解,停止计算.否则转入下一步.(3)在0(1)j j m n σ<=+,,,中,若所有0≤jk a ,则此问题无最优解,停止计算.否则转入下一步.(4)根据min{|0}j j k σσσ<=,确定k x 为换入变量.按θ规则计算min 0i l ik ik lkb ba a a θ⎧⎫=>=⎨⎬⎩⎭, 可确定l x 为换出变量,转入下一步.(5)以lk a 为主元素进行迭代(用高斯消元法),把k x 所对应的列向量120010k k k lk mk a a P l a a ⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=−−−→⎢⎥⎢⎥←⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦变换成第行, 将B X 列中的l x 换为k x ,得到新的单纯形表,重复步骤(2)—步骤(5),直到终止.单纯形法的流程图如图3.2所示.若目标函数要求实现最大化,一方面可将最大化转换为最小化,另一方面也可在上述计算步骤中将判定最优解的0≥j σ改为0≤j σ,将换入变量的条件min{|0}j j k σσσ<=改为max{|0}j j k σσσ>=.二、初始可行基的确定 (1) 若线性规划问题是11min ()12..012nj j j nij ji j jf X c x a x b i m s t x j n ===⎧==⎪⎨⎪≥=⎩∑∑,,,,,,,,,,, 则从(12)j P j n =,,,中一般能直接观察到存在一个初始可行基12100010[,,,]001m B P P P ⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎣⎦.(2)对所有约束条件是“≤”形式的不等式,可以利用化标准形式的方法,在每个约束条件的左端加入一个松驰变量,经过整理重新对j x 及ij a 进行编号,可得下列方程组.,,m n mn m m m m n n m m n n m m b x a x a x b x a x a x b x a x a x =+++=+++=+++++++++ 11,2211,221111,11显然得到一个m m ⨯单位矩阵B 可作为初始可行基12100010[,,,]001m B P P P ⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎣⎦. (3)对所有约束条件是“≥”形式的不等式及等式约束情况,若不存在单位矩阵时,可采用人工变量,即对不等式约束减去一个非负的剩余变量后,再加入一个非负的人工变量;对等式约束再加入一个非负的人工变量,总可得到一个单位矩阵作为初始可行基.例3.2 求解线性规划问题12121212max ()2328416..4120f X x x x x x s t x x x =++≤⎧⎪≤⎪⎨≤⎪⎪≥⎩,,,,,. 解:将线性规划问题化为标准形式12345123142512345min[()]2300028416..4120f X x x x x x x x x x x s t x x x x x x x -=--+++++=⎧⎪+=⎪⎨+=⎪⎪≥⎩,,,,,,,,.作初始单纯形表,按单纯形法计算步骤进行迭代,结果如下(表3.2).表3.2最后一行的检验数均为正,这表示目标函数值已不可能再减小,于是得到最优解*42004T X =[,,,,],目标函数值14)(*=X f .三、单纯形法的有关说明对线性规划问题min ()..0f X CX AX b s t X ==⎧⎨≥⎩,,,(3.5) 若系数矩阵中不含单位矩阵,没有明显的基可行解时,常采用引入非负人工变量的方法来求初始基可行解.下面分别介绍常用的“大M 法”和“两阶段法”.(一)大M 法在约束条件式(3.5)中加入人工变量,人工变量在目标函数中的价值系数为M ,M 为一个很大的正数.在迭代过程中,将人工变量从基变量中逐个换出,如果在最终表中当所有检验数0≥j σ时,基变量中不再含有非零的人工变量,这表示原问题有解,否则无可行解.例3.3 求解线性规划问题12312312313123min ()3211423..210f X x x x x x x x x x s t x x x x x =-++-+≤⎧⎪-++≥⎪⎨-+=⎪⎪≥⎩,,,,,,. 解:将原问题化为标准形式并引入人工变量,得12345671234123561371234567min ()300211423..210f X x x x x x Mx Mx x x x x x x x x x s t x x x x x x x x x x =-++++++-++=⎧⎪-++-+=⎪⎨-++=⎪⎪≥⎩,,,,,,,,,,.用单纯形法计算,得表3.3.根据表 3.3的最后一行的检验数均0≥,得最优解*4190000T X =[,,,,,,],最优值2)(*-=X f ,由于人工变量的值均为零,故得原问题的最优解*419T X =[,,],最优值为2)(*-=X f .(二)两阶段法两阶段法是把线性规划问题的求解过程分为两个阶段:第一阶段,给原问题加入人工变量,构造仅含价值系数为1的人工变量的目标函数且要求实现最小化,其约束条件与原问题相同,即11111111211221112min ()00..0n n m n n n n nn n n m mn n n m m n m g X x x x x a x a x x b a x a x x b s t a x a x x b x x x ++++++=++++++++=⎧⎪+++=⎪⎪⎨⎪+++=⎪⎪≥⎩,,,,,,,. 然后用单纯形法求解上述问题,若得到0)(=X g ,这说明原问题存在基可行解,可进入第二阶段计算,否则原问题无可行解,停止计算.第二阶段,将第一阶段计算得到的最终表,除去人工变量,将目标函数行的系数换为原问题的目标函数系数,作为第二阶段计算的初始单纯形表进行计算.例3.4 用两阶段法求解线性规划问题12312312313123min ()3211423.210f X x x x x x x x x x s t x x x x x =-++-+≤⎧⎪-++≥⎪⎨-+=⎪⎪≥⎩,,,,,,. 解 第一阶段,标准化并引入人工变量,得如下的线性规划=)(min X g 76x x +,1234123561371234567211423.210x x x x x x x x x s t x x x x x x x x x x -++=⎧⎪-++-+=⎪⎨-++=⎪⎪≥⎩,,,,,,,,,. 用单纯形法计算该线性规划(见表 3.4),最优解为*[011120000]T X =,,,,,,,,最优值0)(*=X g .表3.4由于人工变量076==X X ,所以得原问题的基可行解为[011120]T X =,,,,.于是进入第二阶段计算(见表3.5),最优解为*[41900]T X =,,,,,最优值2)(*-=X f ,于是原问题的最优解为*[419]T X =,,,最优值为2)(*-=X f .§3.3 对偶问题的基本原理一、对偶问题的提出对偶性是线性规划的重要内容之一,每一个线性规划问题必然有与之相伴而生的另一个线性规划问题,我们称一个叫原问题,另一个叫对偶问题,这两个问题有着非常密切的关系,让我们先分析一个实际的线性规划模型与其对偶线性规划问题的经济意义.例3.5 某工厂计划在下一生产周期生产3种产品1A ,2A ,3A ,这些产品都要在甲、乙、丙、丁4种设备上加工,根据设备性能和以往的生产情况知道单位产品的加工工时,各种设备的最大加工工时限制,以及每种产品的单位利润(单位:千元),如表3.6所示,问如何安排生产计划,才能使工厂得到最大利润?解 设321x x x ,,分别为产品321A A A ,,的产量,构造此问题的线性规划模型为1231231231312123max ()8102237042280..3152250,,0f X x x x x x x x x x s t x x x x x x x =++++≤⎧⎪++≤⎪⎪+≤⎨⎪+≤⎪⎪≥⎩,,,,,.现在从另一个角度来讨论该问题.假设工厂考虑不安排生产,而准备将所有设备出租,收取租费.于是,需要为每种设备的台时进行估价.设4321y y y y ,,,分别表示甲、乙、丙、丁4种设备的台时估价.由表3.6可知,生产一件产品1A 需用各设备台时分别为h h h h 2342,,,,如果将h h h h 2342,,,不用于生产产品1A ,而是用于出租,那么将得到租费43212342y y y y +++.当然,工厂为了不至于蚀本,在为设备定价时,保证用于生产产品1A 的各设备台时得到的租费,不能低于产品1A 的单位利润8千元,即823424321≥+++y y y y .按照同样分析,用于生产一件产品2A 的各设备台时h 1,h 2,0,h 2所得的租费,不能低于产品2A 的单位利润10千元,即1022421≥++y y y .同理,还有223321≥++y y y .另外,价格显然不能为负值,所以01234iy i ≥=,,,,. 企业现在设备的总以时数为70h ,80h ,15h ,50h ,如果将这些台时都用于出租,企业的总收入为422150158070)(y y y y Y g +++=.企业为了能够得到租用设备的用户,使出租设备的计划成交,在价格满足上述约束的条件下,应将设备价值定得尽可能低,因此取)(Y g 的最小值,综合上述分析,可得到一个与例3.5相对应的线性规划,即123412341231231234min ()70801550243282210..3220g Y y y y y y y y y y y y s t y y y y y y y =++++++≥⎧⎪++≥⎪⎨++≥⎪⎪≥⎩,,,,,,,.称后一个规划问题为前一个规划问题的对偶问题,反之,也称前一个规划问题是后一个规划问题的对偶问题.二、原问题与对偶问题的表达形式和关系在线性规划的对偶理论中,把如下线性规划形式称为原问题的标准形式11221111221121122222112212min ()..0n n n n n n m m mn n mn f X c x c x c x a x a x a x b a x a x a x b s t a x a x a x b x x x =++++++≥⎧⎪+++≥⎪⎪⎨⎪+++≥⎪⎪≥⎩,,,,,,,. 而把如下线性规划形式称为对偶问题的标准形式11221111221121122222112212max ()..0n n m m m m n n mn m nm g Y b y b y b y a y a y a y c a y a y a y c s t a y a y a y c y y y =++++++≥⎧⎪+++≥⎪⎪⎨⎪+++≥⎪⎪≥⎩,,,,,,,. 若用矩阵形式表示,则原问题和对偶问题分别可写成如下形式:原问题min ()..0f X CX AX b s t X =≥⎧⎨≥⎩,,.(3.6)对偶问题max ()..0g Y Yb YA C s t Y =≤⎧⎨≥⎩,,.(3.7)原问题与对偶问题的关系见表3.7.例3.6 求下面线性规划问题的对偶问题123412341342341234min ()23535224..600f X x x x x x x x x x x x s t x x x x x x x =+-++-+≥⎧⎪+-≤⎪⎨++=⎪⎪≤≥⎩,,,,,,,无约束. 解:根据表3.7可直接写出上述问题的对偶问题12312131********max ()546223..325100g Y y y y y y y y s t y y y y y y y y y =+++≥⎧⎪+≤⎪⎪-++≤-⎨⎪-+=⎪⎪≥≤⎩,,,,,,,无约束. 三、对偶理论定理3.3(弱对偶定理) 对偶问题(max )的任何可行解︒Y ,其目标函数值总是不大于原问题(min )任何可行解︒X 的目标函数值.证 由定理所设及问题(3.6)和问题(3.7)容易看出︒︒︒︒≤≤CX AX Y b Y .定理3.4(对偶定理) 假如原问题或对偶问题之一具有有限的最优解,则另一问题也具有有限的最优解,且两者相应的目标函数值相等.假如一个问题的目标函数值是无界的,则另一问题没有可行解.证明从略.定理3.5(互补松驰定理) 假如︒X 和︒Y 分别是原问题(3.6)和对偶问题(3.7)的可行解,︒U 是原问题剩余变量的值,︒V 是对偶问题松驰变量的值,则︒X 、︒Y 分别是原问题和对偶问题最优解的充要条件是0=+︒︒︒︒X V U Y .证 由定理所设,可知有0AX U b X U ︒︒︒-=︒≥,,,(3.8) 0Y A V C Y V ︒︒︒︒︒+=≥,,.(3.9)分别以︒Y 左乘式(3.8),以︒X 右乘式(3.9),两式相减,得b Y CX X U U Y ︒︒︒︒︒︒-=+.若0=+︒︒︒︒X V U Y ,根据弱对偶定理知CX b Y CX Yb ≤=≤︒︒.这说明︒X ,︒Y 分别是原问题和对偶问题最优解,反之亦然.根据互补松驰定理和决策变量满足非负条件可知,在最优解时,︒︒U Y 和︒︒X V 同时等于0,所以有)21(000n j x v j j ,,, ==, )21(000m i u y i i ,,, ==. 于是,互补松驰定理也可以这样叙述:最优化时,假如一个问题的某个变量取正数,则相应的另一个问题的约束条件必取等式;或者一个问题中的约束条件不取等式,则相应于另一问题中的变量必为零.例3.7 已知线性规划问题123451234512445min ()23523234.2330125jf X x x x x x x x x x x s t x x x x x x j =++++⎧++++≥⎪-+++≥⎨⎪≥=⎩,,,,,,,.已知其对偶问题的最优解为5)(5/35/4**2*1===Y g y y ,,,试用对偶理论找出原问题的最优解.解:先写出它的对偶问题12121212121212max ()4322(1)3(2)235(3)..2(4)33(5)0g Y y y y y y y y y s t y y y y y y =++≤⎧⎪-≤⎪⎪+≤⎪⎨+≤⎪⎪+≤⎪≥⎪⎩,,,,,,,.将*2*1y y ,的值代入约束条件,得(2),(3),(4)为严格不等式,由互补松驰定理得***2340x x x ===,因021≥y y ,,原问题的两个约束条件应取等式,故有**1534x x +=, **1523x x +=.求解后得到**1511x x ==,,故原问题的最优解为 **10001()5TX f X ==[,,,,],.四、对偶问题的迭代算法对偶单纯形法是对偶问题的迭代算法,其基本思想是:从原问题的一个基本解出发,此基本解不一定是可行解,但它对应着对偶问题的一个可行解;然后检验原问题的基本解是否可行,即是否有负的分量.如果有小于零的分量,则进行迭代,求另一个基本解,此基本解对应着另一个对偶可行解.如果得到的基本解的分量皆非负,则该基本解为最优解.也就是说,对偶单纯形法在迭代过程中始终保持对偶解的可行解,使原问题的基本解由不可行逐步变为可行.当同时得到对偶问题与原问题的可行解时,便得到原问题的最优解.对线性规划问题的标准形式min ()..0f X CX AX b s t X =≥⎧⎨≥⎩,,.对偶单纯形法的计算步骤如下:(1)找出原问题的一个基,构成初始对偶基可行解,使所有检验数0≥j σ,构成初始对偶单纯形表.(2)若所有0≥i b ,则当前的解是最优解,停止计算,否则计算min{|0}l i i b b b =<,则l 行为主行,该行对应的基变量为换出变量.(3)若所有0≥lj a ,则对偶问题无界,原问题无解,停止计算,否则计算min |0j k lj lj lka a a σσθ⎧⎫⎪⎪=<=⎨⎬--⎪⎪⎩⎭,则k 列为主列,该列对应的基变量为换入变量.(4)以lk a 为主元素进行迭代,然后转回步骤(2). 对偶单纯形法的流程图如图3.3所示.例3.8 用对偶单纯形法求解下述线性规划问题123123123123min ()23423..2340f X x x x x x x s t x x x x x x =++++≥⎧⎪-+≥⎨⎪≥⎩,,,,,.解:首先将“≥”约束条件两边反号,再加入松驰变量,可得原问题的一个基123451234123512345min ()2340023..2340f X x x x x x x x x x s t x x x x x x x x x =++++---+=-⎧⎪-+-+=-⎨⎪≥⎩,,,,,,,.图3.3从表3.8看出,所有检验数0≥j σ,则对应对偶问题的解是可行的,因b 列数字为负,需进行迭代,计算min 344--=-{,}.所以5x 为换出变量.又因为24min 123θ⎧⎫=-=⎨⎬⎩⎭,,,所以1x 为换入变量,以换入、换出变量所在行列交叉处元素“-2”为主元素,按单纯形法计算步骤进行迭代,得表3.9.由表3.9的最后一行看出,所有检验数0≥j σ,故原问题的最优解为*[11/52/50]T X =,,.若对应两个约束条件对偶变量为1y ,2y ,则可得对偶问题的最优解为*[8/51/5]T Y =,.§3.4 线性规划问题灵敏度在建立实际的线性规划模型时,所收集到的数据不是很精确;另一方面在实际应用中,各种信息瞬息万变,已形成的数学模型中的某些数据需要随之而变.因此,对于一个线性规划问题,研究当数据发生变动时解的变化情况是很重要的.下面仅介绍两种数据变化而导致解的变化的情况,这就是灵敏度分析问题.一、价值系数的变化假设只有一个系数k C 变化,其它系数保持不变 ,k C 的变化只影响检验解而不影响解的非负定性,下面分别就k C 是非基变量系数和基变量系数两种情况进行讨论.(1)k C 是非基变量的系数由于B C 不变,因而j Z 对任何j 都不变.这时非基变量的系数k C 的变化只影响与k C 有关的一个检验数k σ的变化,而对其它j σ没有影响,设系数从k C 变化到k C ',这时检验数k k k Z C -=σ被k k kZ C -'='σ所代替,在当前解是原问题的最优解时,有0≥-=k k k Z C σ,假如()(k k k k k k C Z C Z C σ'''=-=-+)0k C -<,则k X 必须引进基,单纯形法继续进行,否则原解仍是k C 变化后的新问题的最优解,最优解不变相当于k C '变化的界限为)(k k k kZ C C C --≥'. (2)k C 为基变量的系数当k C 被k C '所代替时,j Z 变成j Z ',j j Z C '-可计算为kj k kj j j j a C C Z C Z C )(-'--='-. (3.10)特别是当k j =时,0=-k k Z C ,且1=kk a ,因此k k k k C C Z C -'='-,仍为零.由式(3.10)知,基变量k x 的价值系数k C 的变化会引起整个价值系数行的变化,变化值为)(k k C C -'-乘以最终表相应该基变量k x 所在的k 行的数值kj a .k 列本身则调整为0='-'k k Z C .由式(3.10)可看出,当对某个非基变量j x ,式(3.10)为负时会引起基的变化,若要保持最优解不变,分析变化值)(k k C C -'且大于或小于零以及kj a 值是正或负的情况,得出会保持最优解不变的k C '的变化界限为max 0min 0j j j j k kj k k kj j jkj kj C Z C Z C a C C a a a ⎧⎫⎧⎫--⎪⎪⎪⎪'+<≤≤+>⎨⎬⎨⎬⎪⎪⎪⎪⎩⎭⎩⎭.例3.8 以例3.2的最终表为例,设基变量2x 的系数2C 变化2C ∆,在原最优解不变条件下,确定2C ∆的变化范围.解 此时例3.2的最终表便成为表3.10为了保持原最优解不变,则2x 的检验数应当为零,进行行初等变换,得表3.11.从表(3.11)可得02232≥∆-C 且08812≥∆+C . 由此可得2C ∆的变化范围为312≤∆≤-C ,即2x 的价值系数2C 可以在[0,4]之间变化,而不影响原最优解.二、资源系数的变化假设资源系数k b 变化为k b ',k b 的变化将会影响解的可行性,但不会引起检验数的符号变化.根据基可行解的矩阵表示可知,b B X B 1-=,所以只要k b 变化必定会导致最优解的数值发生变化,最优解的变化分为两类:一类是保持01≥-b B ,最优基B 不变;另一类是b B 1-中出现负分量,这将使最优基B 变化,若最优基不变,则只需将变化后的k b 代入B X 的表达式重新计算即可;若b B 1-中出现负分量,则要通过迭代求解新的最优基和最优解.设系数k b 变化到k k k b b b ∆+=',而其它系数都不变,这样使最终表中原问题的解相应变化为11111100k B k k k k m mk m b a b X B b b B b B b b b a b ---⎡⎤⎡⎤⎢⎥⎢⎥'⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥'=+∆=+∆=+∆⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥'⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦, 其中B X 为原最优解,i b '为B X 的第i 个分量,ik a 为1-B 的第i 行第k 列元素,为了保持最优基不变,应使0≥'B X ,即110k k m mk a b b b a '⎡⎤⎡⎤⎢⎥⎢⎥+∆≥⎢⎥⎢⎥⎢⎥⎢⎥'⎣⎦⎣⎦. 由此可得到保持最优基不变时,资源系数的变化界限为max 0min 0i i k ik k k ik ik ik b b b a b b a a a ⎧⎫⎧⎫''--⎪⎪⎪⎪'+>≤≤+<⎨⎬⎨⎬⎪⎪⎪⎪⎩⎭⎩⎭.例3.9 若例3.2的第二个约束条件中2b 变化为22b b ∆+,在最优解不变的条件下,求2b ∆的变化范围.解 计算⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡≥∆⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡∆+--000812141244002211b b B b B可得2224/(1/4)164/(1/2)82/(1/8)16b b b ∆≥-=-∆≥-=-∆≤--=,,.所以2b ∆的变化范围是(-8,16).显然2b 的变化范围是(8,32).。