




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、整整 数数 规规 划划(Integer Programming)整数规划的模型整数规划的模型分支定界法分支定界法割平面法割平面法0 01 1 整数规划整数规划指派问题指派问题(一)、整数规划问题实例(一)、整数规划问题实例 例一、合理下料问题例一、合理下料问题设用某型号的圆钢下零件设用某型号的圆钢下零件A1, A2,Am 的毛坯。在一根圆钢的毛坯。在一根圆钢上下料的方式有上下料的方式有B1,B2, Bn 种,每种下料方式可以得到各种,每种下料方式可以得到各种零件的毛坯数以及每种零件的需要量,如表所示。问怎种零件的毛坯数以及每种零件的需要量,如表所示。问怎样安排下料方式,使得即满足需要,所用的原
2、材料又最少?样安排下料方式,使得即满足需要,所用的原材料又最少?零件 方 个数 式零件零 件毛坯数nBB 1mAA 1mbb 1mnmnaaaa 1111一、整数规划的模型一、整数规划的模型 设:设:xj 表示用表示用Bj (j=1.2n) 种方式下料根数种方式下料根数 模型:模型:且且为为整整数数n)1.2(j 0)2 . 1( min11jnjijijnjjxmibxaxZ例二、例二、某公司计划在某公司计划在m个地点建厂,可供选择的地点个地点建厂,可供选择的地点有有A1,A2Am ,他们的生产能力分别是他们的生产能力分别是a1,a2,am(假设(假设生产同一产品)。第生产同一产品)。第i
3、i个工厂的建设费用为个工厂的建设费用为fi (i=1.2m),又有又有n个地点个地点B1,B2, Bn 需要销售这种产品,需要销售这种产品,其销量分别为其销量分别为b1.b2bn 。从工厂运往销地的单位运费。从工厂运往销地的单位运费为为Cij。试决定应在哪些地方建厂,即满足各地需要,。试决定应在哪些地方建厂,即满足各地需要,又使总建设费用和总运输费用最省?又使总建设费用和总运输费用最省?单 销地厂址 价生产能力建设费用销量nmmmnmmmnnnbbbfacccAfacccAfacccABBB 2121222222121111211121 设:设: xij 表示从工厂运往销地的运量表示从工厂运往
4、销地的运量( (i=1.2m、j=1.2n), 1 ), 1 在在Ai建厂建厂 又设又设 Yi (i=1.2m) 0 0 不在不在Ai建厂建厂 模型:模型:n)1.2jm1.2(i 1 0, 0n)1.2(j )2 . 1( min111、或或iijmijijnjiiijmiiiijijyxbxmiyaxyfxcZ 例三、机床分配问题例三、机床分配问题 设有设有m台同类机床,要加工台同类机床,要加工n种零件。已知各种零件种零件。已知各种零件的加工时间分别为的加工时间分别为a1,a2,an ,问如何分配,使各机床,问如何分配,使各机床的总加工任务相等,或者说尽可能平衡。的总加工任务相等,或者说尽
5、可能平衡。设:设: 1 1 分配第分配第i台机床加工第台机床加工第j j种零件;种零件; xij (i i=1.2m,=1.2m,j j=1.2n=1.2n) 0 0 相反。相反。于是,第于是,第i台机床加工各种零件的总时间为:台机床加工各种零件的总时间为:njijjmixa1)2 . 1( 又由于一个零件只能在一台机床上加工,所以有又由于一个零件只能在一台机床上加工,所以有miijmix1)2 . 1( 1 因此,求因此,求xij ,使得,使得121111minmax(,)1 (j1.2n)0 1 (i1.2m,j1.2n)nnnjjjjjmjjjjmijiijZa xa xa xxx或(二
6、)、整数规划的数学模型(二)、整数规划的数学模型一般形式一般形式且且部部分分或或全全部部为为整整数数或或 n)1.2(j 0)2 . 1( )min(max11jnjijijnjjjxmibxaxcZZ 依照决策变量取整要求的不同,整数规划可分为纯整依照决策变量取整要求的不同,整数规划可分为纯整数规划、全整数规划、混合整数规划、数规划、全整数规划、混合整数规划、0 01 1整数规划。整数规划。 纯整数规划:纯整数规划:所有决策变量要求取非负整所有决策变量要求取非负整数(这时引进的松弛变量可以不要求取整数)。数(这时引进的松弛变量可以不要求取整数)。 全整数规划:全整数规划:除了所有决策变量要求
7、取非负除了所有决策变量要求取非负整数外,系数整数外,系数aij和常数和常数bi也要求取整数(这时引也要求取整数(这时引进的松弛变量也必须是整数)。进的松弛变量也必须是整数)。 混合整数规划:混合整数规划:只有一部分的决策变量要只有一部分的决策变量要求取非负整数,另一部分可以取非负实数。求取非负整数,另一部分可以取非负实数。 01整数规划:整数规划:所有决策变量只能取所有决策变量只能取 0 或或 1 两个整数两个整数。(三)、整数规划与线性规划的关系(三)、整数规划与线性规划的关系 从数学模型上看整数规划似乎是线从数学模型上看整数规划似乎是线性规划的一种特殊形式,求解只需在线性规划的一种特殊形式
8、,求解只需在线性规划的基础上,通过舍入取整,寻求性规划的基础上,通过舍入取整,寻求满足整数要求的解即可。但实际上两者满足整数要求的解即可。但实际上两者却有很大的不同,通过舍入得到的解却有很大的不同,通过舍入得到的解(整数)也不一定就是最优解,有时甚(整数)也不一定就是最优解,有时甚至不能保证所得到的解是整数可行解。至不能保证所得到的解是整数可行解。举例说明。举例说明。例:设整数规划问题如下例:设整数规划问题如下 且为整数0,13651914max21212121xxxxxxxxZ 首先不考虑整数约束,得到线性规划问题(一般称首先不考虑整数约束,得到线性规划问题(一般称为松弛问题)。为松弛问题)
9、。0,13651914max21212121xxxxxxxxZ用用 解法求出最优解解法求出最优解x13/2, x2 = 10/3且有且有Z = 29/6x1x233(3/2,10/3) 现求整数解(最优解):现求整数解(最优解):如用如用“舍入取整法舍入取整法”可可得到得到4个点即个点即(1,3) (2,3)(1,4)(2,4)。显然,。显然,它们都不可能是整数规它们都不可能是整数规划的最优解。划的最优解。 按整数规划约束条件,其可行解肯定在线性规划问题按整数规划约束条件,其可行解肯定在线性规划问题的可行域内且为整数点。故整数规划问题的可行解集的可行域内且为整数点。故整数规划问题的可行解集是一
10、个有限集,如图所示。是一个有限集,如图所示。图图 因此,可将集合内的整数点一一找出,其最因此,可将集合内的整数点一一找出,其最大目标函数的值为最优解,此法为完全枚举法。大目标函数的值为最优解,此法为完全枚举法。 如上例:其中如上例:其中(2,2)()(3,1)点为最点为最大值,大值,Z=4。 目前,常用的求解整数规划的方法有:目前,常用的求解整数规划的方法有: 分支定界法和割平面法;分支定界法和割平面法; 对于特别的对于特别的0 01 1规划问题采用隐枚举法和匈规划问题采用隐枚举法和匈牙利法。牙利法。(一)、基本思路(一)、基本思路 且为整数且为整数)2 . 1( , 0)2 . 1( )(m
11、ax11mjxmibxaIPxcZjnjijijnjjj考虑纯整数问题:考虑纯整数问题:)2 . 1( , 0)2 . 1( )(max11mjxmibxaLPxcZjnjijijnjjj整数问题的松弛问题:整数问题的松弛问题:二、分枝定界法二、分枝定界法 1、先不考虑整数约束,解、先不考虑整数约束,解( IP )的松弛问题的松弛问题( LP ),可能得到以下情况之一:可能得到以下情况之一: .若若( LP )没有可行解,则没有可行解,则( IP )也没有可行解,停止也没有可行解,停止计算。计算。 .若若( LP )有最优解,并符合有最优解,并符合( IP )的整数条件,则的整数条件,则( L
12、P )的最优解即为的最优解即为( IP )的最优解,停止计算。的最优解,停止计算。 .若若( LP )有最优解,但不符合有最优解,但不符合( IP )的整数条件,转的整数条件,转入下一步。为讨论方便,设入下一步。为讨论方便,设( LP )的最优解为:的最优解为: 不不全全为为整整数数其其中中目目标标函函数数最最优优值值为为), 2 , 1(.Z)0 , 0 ,( (0)21)0(mibbbbbXiTmr 2、定界:、定界: 记记( IP )的目标函数最优值为的目标函数最优值为Z* ,以以Z(0) 作为作为Z* 的上界,的上界,记为记为 Z(0) 。再用观察法找的一个整数可行解。再用观察法找的一
13、个整数可行解 X,并以其相应的目标函数值并以其相应的目标函数值 Z作为作为Z* 的下界,记为的下界,记为Z Z,也可以令也可以令Z,则有:,则有: Z Z* 3、分枝:分枝: 在在( LP )的最优解的最优解 X(0)中,任选一个不符合整数条件中,任选一个不符合整数条件的变量,例如的变量,例如xr= = (不为整数),以(不为整数),以 表示不超过表示不超过 的最大整数。构造两个约束条件的最大整数。构造两个约束条件 xr 和和xr 1 1rbrbrbrbrbZZ如此反复进行,直到得到如此反复进行,直到得到ZZ* 为止,即得最优解为止,即得最优解 X* 。 将这两个约束条件分别加入问题将这两个约
14、束条件分别加入问题( IP ) ,形成两个子,形成两个子问题问题( IP1)和和( IP2 ) ,再解这两个问题的松弛问题,再解这两个问题的松弛问题( LP1)和和( LP2) 。 4、修改上、下界:按照以下两点规则进行。修改上、下界:按照以下两点规则进行。 . .在各分枝问题中,找出目标函数值最大者作为在各分枝问题中,找出目标函数值最大者作为新的上界;新的上界; . .从已符合整数条件的分枝中,找出目标函数值从已符合整数条件的分枝中,找出目标函数值最大者作为新的下界。最大者作为新的下界。 5、比较与剪枝比较与剪枝 : 各分枝的目标函数值中,若有小于各分枝的目标函数值中,若有小于Z 者,则剪掉
15、此者,则剪掉此枝,表明此子问题已经探清,不必再分枝了枝,表明此子问题已经探清,不必再分枝了;否则继续否则继续分枝。分枝。 Z例一:用分枝定界法求解整数规划问题(用图解法计算)例一:用分枝定界法求解整数规划问题(用图解法计算)且且全全为为整整数数0,4 30 652 5min211212121xxxxxxxxxZ记为(记为(IP)解:首先去掉整数约束,变成一般线性规划问题解:首先去掉整数约束,变成一般线性规划问题0,4 30 652 5min211212121xxxxxxxxxZ记为(记为(LP)(二)、例题(二)、例题用图解法求用图解法求(LP)的最的最优解,如图所示。优解,如图所示。x1x2
16、33(18/11,40/11)对于对于x118/111.64, 取值取值x1 1, x1 2对于对于x2 =40/11 3.64,取值取值x2 3 ,x2 4先将先将(LP)划分为()划分为(LP1)和()和(LP2), ,取取x1 1, x1 2 x118/11, x2 =40/11 Z(0) =218/11(19.8)即即Z 也是也是(IP)最小值的下最小值的下限。限。有下式:有下式:且且为为整整数数0,1 4 30 652 )1(5min2111212121xxxxxxxxIPxxZ且且为为整整数数0,2 4 30 652 )2(5min2111212121xxxxxxxxIPxxZ 现
17、在只要求出(现在只要求出(LP1)和()和(LP2)的最优解即可。)的最优解即可。x1x233(18/11,40/11) 先求先求(LP1), ,如图所示。如图所示。此时此时B 在点取得最优解。在点取得最优解。x11, x2 =3, Z(1)16找到整数解,问题已探找到整数解,问题已探明,此枝停止计算。明,此枝停止计算。11同理求同理求(LP2) ,如图所示。如图所示。在在C 点取得最优解。点取得最优解。即即x12, x2 =10/3, Z(2) 56/318.7 Z2 Z116 原问题有比原问题有比(16)更小的最优解,但)更小的最优解,但 x2 不是整数,故利用不是整数,故利用 3 10/
18、34 加入条件。加入条件。BAC加入条件:加入条件: x23, x24 有下式:有下式:且且为为整整数数0,3 2 4 30 652 )3(5min21211212121xxxxxxxxxIPxxZ且且为为整整数数0,4 2 4 30 652 )4(5min21211212121xxxxxxxxxIPxxZ只要求出(只要求出(LP3)和()和(LP4)的最优解即可。)的最优解即可。x1x233(18/11,40/11)11BAC先求先求(LP3), ,如图所示。如图所示。此时此时D 在点取得最优解。在点取得最优解。即即 x112/52.4, x2 =3, Z(3)-87/5-17.4 Z(5)
19、 F 如对如对 Z(6) 继续分解,其最小值也不会低于继续分解,其最小值也不会低于15.5 ,问题探明问题探明, ,剪枝。剪枝。 至此,原问至此,原问题(题(IP)的最优)的最优解为:解为: x1=2, x2 =3, Z* = Z(5) 17以上的求解过程以上的求解过程可以用一个树形可以用一个树形图表示如右:图表示如右:LP1x1=1, x2=3Z(1) 16LPx1=18/11, x2=40/11Z(0) 19.8LP2x1=2, x2=10/3Z(2) 18.5LP3x1=12/5, x2=3Z(3) 17.4LP4无可无可行解行解LP5x1=2, x2=3Z(5) 17LP6x1=3,
20、x2=5/2Z(6) 15.5x11x12x23x24x12x13 且全为整数且全为整数0,13651914max21212121xxxxxxxxZ练习:用分枝定界法求解整数规划问题练习:用分枝定界法求解整数规划问题 (图解法)(图解法)LP1x1=1, x2=7/3Z(1) 10/3LPx1=3/2, x2=10/3Z(0) 29/6LP2x1=2, x2=23/9Z(2) 41/9x11x12LP5x1=1, x2=2Z(5) 3LP6无可无可行解行解x22x23LP3x1=33/14, x2=2Z(3) 61/14LP4无可无可行解行解x22x23LP7x1=2, x2=2Z(7) 4L
21、P8x1=3, x2=1Z(8) 4x12x13LP1x1=1, x2=7/3Z(1) 10/3LPx1=2/3, x2=10/3Z(0) 29/6LP2x1=2, x2=23/9Z(2) 41/9LP3x1=33/14, x2=2Z(3) 61/14LP4无可无可行解行解LP7x1=2, x2=2Z(7) 4LP8x1=3, x2=1Z(8) 4x11x12x22x23x12x13且且为为整整数数0,143292)(23max21212121xxxxxxIPxxZ3200CB XB b x1x2x3x40 x3921109/20 x414230114/2-Z032003200CB XB b
22、x1x2x3x43x113/4103/4-1/42x25/201-1/21/2-Z-59/400-5/4 -1/4解解:用单纯形法解对应的用单纯形法解对应的(LP)问题问题,如表所示如表所示,获得最优解。获得最优解。初始表初始表最终表最终表例二、用分枝定界法求解整数规划问题(单纯形法)例二、用分枝定界法求解整数规划问题(单纯形法) x1=13/4 x2=5/2 Z(0) =59/414.75选选 x2 进行分枝,即增加两个约束,进行分枝,即增加两个约束,x2 2, x2 3 有下式:有下式:且且为为整整数数0,2 14329 2) 1(23max212212121xxxxxxxIPxxZ且且为
23、为整整数数0,3 14329 2)2(23max212212121xxxxxxxIPxxZ 分别在分别在(LP1)和和(LP2)中引入松弛变量中引入松弛变量x5和和x6 ,将新加,将新加约束条件加入上表计算。即约束条件加入上表计算。即 x2+ x5= 2 , x2+x6=3 得得下表下表:32000CB XB b x1x2x3x4x53x113/4103/4-1/402x25/201-1/21/200 x5201001-Z-59/400-5/4-1/403x113/4103/4-1/402x25/201-1/21/200 x5-1/2001/2 -1/21-Z-59/400-5/4-1/403
24、x17/2101/20-1/22x22010010 x4100-11-2-Z-29/200-3/20-1/2x1=7/2, x2=2 Z(1) =29/2=14.5继续分枝,加继续分枝,加入约束入约束 x1 3 , x1 4LP132000CB XB b x1x2x3x4x63x113/4103/4-1/402x25/201-1/21/200 x6-30-1001-Z-59/400-5/4-1/403x113/4103/4-1/402x25/201-1/21/200 x6-1/200-1/2 1/21-Z-59/400-5/4-1/403x15/21001/23/22x230100-10 x3
25、1001-1-2-Z-27/2000-3/2-5/2LP2x1=5/2, x2=3 Z(2) =27/2=13.5 Z(2) Z(1) 先不考虑分枝先不考虑分枝接接(LP1)继续分枝,加入约束继续分枝,加入约束 x1 3, x1 4有下式:有下式:且且为为整整数数0,3 2 14329 2)3(23max2112212121xxxxxxxxIPxxZ且且为为整整数数0,4 2 14329 2)4(23max2112212121xxxxxxxxIPxxZ分别引入松弛变量分别引入松弛变量x7 和和 x8 ,然后进行计算。,然后进行计算。CB XB b x1x2x3x4x5x73x17/2101/2
26、0-1/202x220100100 x4100-11-200 x73100001-Z-29/200-3/20-1/203x17/2101/20-1/202x220100100 x4100-11-200 x7-1/200-1/201/21-Z-29/200-3/20-1/203x131000012x220100100 x420001-3-20 x310010-1-2-Z-130000-2-3 x1=3, x2=2 Z(3) =13找到整数解,找到整数解,问题已探明,问题已探明,停止计算。停止计算。LP3CB XB b x1x2x3x4x5x83x17/2101/20-1/202x22010010
27、0 x4100-11-200 x8-4-100001-Z-29/200-3/20-1/203x17/2101/20-1/202x220100100 x4100-11-200 x8-1/2001/20-1/21-Z-29/200-3/20-1/203x1410000-12x210110020 x4300-310-40 x5100-101-2-Z-1400-200-1 x1=4, x2=1 Z(4) =14找到整数解,找到整数解,问题已探明,问题已探明,停止计算。停止计算。LP4树形图如下:树形图如下:LP1x1=7/2, x2=2Z(1)29/2=14.5LPx1=13/4, x2=5/2Z(0
28、) 59/4=14.75LP2x1=5/2, x2=3Z(2)27/2=13.5LP3x1=3, x2=2Z(3) 13LP4x1=4, x2=1Z(4) 14x22x23x13x14 且且全全为为整整数数0,4 30 652 5min211212121xxxxxxxxxZ练习:用分枝定界法求解整数规划问题练习:用分枝定界法求解整数规划问题 (单纯形法)(单纯形法)cj-1-5000cBxBbx1x2x3x4x50 x32-111000 x4 30560100 x5410001-Z-1-5000cj-1-5000cBxBbx1x2x3x4x5-5x240/11011/115/110-1x1 1
29、8/11101/11-6/1100 x526/1100-1/116/111-Z218/11006/1119/110LP1x1=1, x2=3Z(1) 16LPx1=18/11, x2=40/11Z(0) 19.8LP2x1=2, x2=10/3Z(2) 18.5LP3x1=12/5, x2=3Z(3) 17.4LP4无可无可行解行解LP5x1=2, x2=3Z(5) 17LP6x1=3, x2=5/2Z(6) 15.5x11x12x23x24x12x13(一)、计算步骤:(一)、计算步骤:1、用单纯形法求解、用单纯形法求解( IP )对应的松弛问题对应的松弛问题( LP ): .若若( LP
30、)没有可行解,则没有可行解,则( IP )也没有可行解,停止也没有可行解,停止计算。计算。 .若若( LP )有最优解,并符合有最优解,并符合( IP )的整数条件,则的整数条件,则( LP )的最优解即为的最优解即为( IP )的最优解,停止计算。的最优解,停止计算。 .若若( LP )有最优解,但不符合有最优解,但不符合( IP )的整数条件,转的整数条件,转入下一步。入下一步。 三、割平面法三、割平面法 2 2、从、从( (LP) )的最优解中,任选一个不为整数的分量的最优解中,任选一个不为整数的分量x xr,r, ,将最优单纯形表中该行的系数将最优单纯形表中该行的系数 和和 分解为整数
31、分解为整数部分和小数部分之和,并以该行为源行,按下式作割部分和小数部分之和,并以该行为源行,按下式作割平面方程:平面方程:rjarb nmjjrjrxff10 3 3、将所得的割平面方程作为一个新的约束条件置于、将所得的割平面方程作为一个新的约束条件置于最优单纯形表中(同时增加一个单位列向量),用对最优单纯形表中(同时增加一个单位列向量),用对偶单纯形法求出新的最优解,返回偶单纯形法求出新的最优解,返回1 1。的小数部分的小数部分的小数部分的小数部分rjarb例一:用割平面法求解整数规划问题例一:用割平面法求解整数规划问题 且且为为整整数数0,023623 max2121212xxxxxxxZ
32、解:增加松弛变量解:增加松弛变量x3和和x4 ,得到,得到(LP)的初始单纯形表和的初始单纯形表和最优单纯形表:最优单纯形表:Cj0100CBXBbx1x2x3x40 x3632100 x40-3201Z00100Cj0100CBXBbx1x2x3x40 x11101/6-1/61x23/2011/41/4Z-3/2 00 -1/4 -1/4 此题的最优解为:此题的最优解为:X =(1 , 3/2) Z = 3/2 但不是但不是整数最优解,引入割平面。以整数最优解,引入割平面。以x2 为源行生成割平面,为源行生成割平面,由于由于 1/4=0+1/4, 3/2=1+1/2, 我们已将所需要的数分
33、解我们已将所需要的数分解为整数和分数,所以,生成割平面的条件为为整数和分数,所以,生成割平面的条件为: 21414143 xx也即:也即:)4141(2112114141234141432432432xxxxxxxxx0)4141(21 43 xx将将 x3=6-3x1-2x2 , x4=3x1-2x2 ,带入带入 中,中,得到等价的割平面条件:得到等价的割平面条件: x2 1 见下图。见下图。21414143 xxx1x233第一个割平面第一个割平面Cj01000CBXBbx1x2x3x4s10 x11101/6-1/601x23/2011/41/400s1-1/200-1/4-1/41Z-
34、3/200-1/4-1/40现将生成的割平面条件加入松弛变量,然后加到表中:现将生成的割平面条件加入松弛变量,然后加到表中:214141143 sxxCBXBbx1x2x3x4s10 x12/3100-1/32/31x21010010 x320011-4Z-10000-1 此时,此时,X1 (2/3, 1), Z=1,仍不是整数解。继续以仍不是整数解。继续以x1为源为源行生成割平面,其条件为:行生成割平面,其条件为:32323214 sx 用上表的约束解出用上表的约束解出x4 和和s1 ,将它们带入上式得到等价,将它们带入上式得到等价的割平面条件:的割平面条件:x1 x2 ,见图:,见图:x1
35、x233第一个割平面第一个割平面第二个割平面第二个割平面将生成的割平面条件加入松弛变量,然后加到表中:将生成的割平面条件加入松弛变量,然后加到表中:323232214 ssxCBXBbx1x2x3x4s1s20 x12/3100-1/32/301x210100100 x320011-400s2-2/3000-2/3-2/31Z-10000-10CBXBbx1x2x3x4s1s20 x10100-1011x20010-103/20 x3600150-60s1100011-3/2Z000010-3/2CBXBbx1x2x3x4s1s20 x1110001-1/21x210100100 x31001
36、0-53/20 x4100011-3/2Z-10000-10 至此得到最优表,其最优解为至此得到最优表,其最优解为 X= (1 , 1) , Z = 1, 这这也是原问题的最优解。也是原问题的最优解。 有以上解题过程可见,表中含有分数元素且算法过有以上解题过程可见,表中含有分数元素且算法过程中始终保持对偶可行性,因此,这个算法也称为分程中始终保持对偶可行性,因此,这个算法也称为分数对偶割平面算法。数对偶割平面算法。例二:用割平面法求解整数规划问题例二:用割平面法求解整数规划问题 且且为为整整数数0, 205462max21212121xxxxxxxxZCj1100CBXBbx1x2x3x40
37、x3621100 x4204501Z1100CBXBbx1x2x3x41 x15/3105/61/61x28/3012/31/3Z-13/3001/61/6初初始始表表最最优优表表在松弛问题最优解中,在松弛问题最优解中,x1, x2 均为非整数解,由上表均为非整数解,由上表有:有:383132356165432431 xxxxxx将系数和常数都分解成整数和非负真分数之和将系数和常数都分解成整数和非负真分数之和 32231)311(321)651(65432431 xxxxxx 以上式子只须考虑一个即可,解题经验表明,考虑以上式子只须考虑一个即可,解题经验表明,考虑式子右端最大真分数的式子,往往
38、会较快地找到所需式子右端最大真分数的式子,往往会较快地找到所需割平面约束条件。以上两个式子右端真分数相等,可割平面约束条件。以上两个式子右端真分数相等,可任选一个考虑。现选第二个式子,并将真分数移到右任选一个考虑。现选第二个式子,并将真分数移到右边得:边得: )(313224332xxxx 32)(3143 xx引入松弛变量引入松弛变量s1 后得到下式,将此约束条件加到上表后得到下式,将此约束条件加到上表中,继续求解。中,继续求解。 323131143 sxxCj11000CBXBbx1x2x3x4s11 x15/3105/61/601x28/3012/31/300s12/3001/31/31
39、Z13/3001/61/60Cj11000CBXBbx1x2x3x4s11 x10100101x24010120 x3200113Z400001/2 得到整数最优解,即为整数规划的最优解,而且此整数规划得到整数最优解,即为整数规划的最优解,而且此整数规划有两个最优解:有两个最优解: X= (0, 4), Z = 4, 或 X= (2, 2), Z = 4。 且且为为整整数数练练习习:0,421625421411max2121212121xxxxxxxxxxZCBXBbx1x2x3x4x50 x34001-1/34/34x24/30102/9-5/911x18/31001/92/9Z000-19
40、/9-2/9CBXBbx1x2x3x4x5s10 x30001-1064x230101/20-5/211x121000010 x530001/21-9/2Z000-20-1(2 ,3) 01 整数规划是一种特殊形式的整数规划,这时的整数规划是一种特殊形式的整数规划,这时的决策变量决策变量xi 只取两个值只取两个值0或或1,一般的解法为隐枚举法。,一般的解法为隐枚举法。例一、求解下列例一、求解下列01 规划问题规划问题 10,(4) 64 (3) 3 (2) 44(1) 22523max3213221321321321或或xxxxxxxxxxxxxxxxZ四、四、0 01 1 整数规划整数规划
41、解:对于解:对于01 规划问题,由于每个变量只取规划问题,由于每个变量只取0,1两两个值,一般会用穷举法来解,即将所有的个值,一般会用穷举法来解,即将所有的0,1 组合找组合找出,使目标函数达到极值要求就可求得最优解。但此出,使目标函数达到极值要求就可求得最优解。但此法太繁琐,工作量相当大。而隐枚举法就是在此基础法太繁琐,工作量相当大。而隐枚举法就是在此基础上,通过加入一定的条件,就能较快的求得最优解。上,通过加入一定的条件,就能较快的求得最优解。x1 . x2. x3约束条件约束条件满足条件满足条件Z 值值 (1) (2) (3) (4)是是 否否( 0. 0. 0 ) 0 0 0 00(
42、0. 0. 1 ) 1 1 0 15( 0. 1. 0 ) 2 4 1 42( 1. 0. 0 ) 1 1 1 03( 0. 1. 1 ) 1 5( 1. 0. 1 ) 0 2 1 18( 1. 1. 0 ) 3( 1. 1. 1 ) 2 6 由上表可知,问题的最优解为由上表可知,问题的最优解为 X*=( x1 =1 x2=0 x3=1 )由上表可知:由上表可知: x1 =0 x2=0 x3=1 是一个可行解,为尽快是一个可行解,为尽快找到最优解,可将找到最优解,可将3 x12 x25 x3 5 作为一个约束,作为一个约束,凡是目标函数值小于凡是目标函数值小于5 的组合不必讨论,如下表。的组合
43、不必讨论,如下表。x1 . x2. x3约束条件约束条件满足条件满足条件Z 值值(0) (1) (2) (3) (4)是是 否否( 0. 0. 0 ) 00( 0. 0. 1 ) 5 1 1 0 15( 0. 1. 0 )-2( 0. 1. 1 ) 3( 1. 0. 0 ) 3( 1. 0. 1 ) 8 0 2 1 18( 1. 1. 0 ) 1( 1. 1. 1 ) 4 例二、求解下列例二、求解下列01 规划问题规划问题4 . 3 . 2 . 1 1 , 05 35646 1 273max421432143214321jxxxxxxxxxxxxxxxxZj 解:由于目标函数中变量解:由于目标
44、函数中变量x1, x2 , x4 的系数均为负数,的系数均为负数,可作如下变换:可作如下变换: 令令 x1 1 x1 , x2 =1- x2, x3= x3, x4 =1- x4带入原题带入原题中,但需重新调整变量编号。令中,但需重新调整变量编号。令 x3 = x1, x4 = x2得到下式。得到下式。 1 0,435 2 461 2 1173max4321432432143214321或或xxxxxxxxxxxxxxxxxxxZ 可以从可以从( 1.1.1.1 )开始试算,开始试算, x(3)( 1.1.0.1 )最优解。最优解。 x(3)( 1.0.1.0 )是原问题的最优解,是原问题的最
45、优解,Z* =2例三、求解下列例三、求解下列01 规划问题规划问题 )5 . 4 . 3 . 2 . 1( 1054 24423 248510min543215432154321jxxxxxxxxxxxxxxxxZj或或令令 y1=x5, y2=x4, y3=x2, y4=x3, y5=x1 得到下式得到下式 )5 . 4 . 3 . 2 . 1( 10(2) 524(1) 4342 108542min543215432154321jyyyyyyyyyyyyyyyyZj或或y1 . y2. y3 . y4. y5约束条件约束条件满足条件满足条件Z 值值 (1) (2)是是 否否( 0. 0.
46、0. 0. 0 ) 0 0( 1. 0. 0. 0. 0 ) 1 -1( 0. 1. 0. 0. 0 ) -1 1 ( 0. 0. 1. 0. 0 ) -2 1( 0. 0. 0. 1. 0 ) 4 -48( 0. 0. 0. 0. 1 ) 3 -2 所以,所以, Y*= (0.0.0.1.0),原问题的最优解为:),原问题的最优解为: X* (0.0.1.0.0),),Z* =8 )5 , 2 , 1( 1 01 2 02236224 53 31075min5432543215432154321jxxxxxxxxxxxxxxxxxxxxZj或或(0 . 1 . 1 . 0 . 0)练习:用隐
47、枚举法求解练习:用隐枚举法求解0101规划问题规划问题 在实际中经常会遇到这样的问题,有在实际中经常会遇到这样的问题,有n 项不同的任项不同的任务,需要务,需要n 个人分别完成其中的一项,但由于任务的个人分别完成其中的一项,但由于任务的性质和各人的专长不同,因此各人去完成不同的任务性质和各人的专长不同,因此各人去完成不同的任务的效率(或花费的时间或费用)也就不同。于是产生的效率(或花费的时间或费用)也就不同。于是产生了一个问题,应指派哪个人去完成哪项任务,使完成了一个问题,应指派哪个人去完成哪项任务,使完成 n 项任务的总效率最高(或所需时间最少),这类问项任务的总效率最高(或所需时间最少),
48、这类问题称为指派问题或分派问题。题称为指派问题或分派问题。 (一)、指派问题的数学模型(一)、指派问题的数学模型 设设n 个人被分配去做个人被分配去做n 件工作,规定每个人只做一件工作,规定每个人只做一件工作,每件工作只有一个人去做。已知第件工作,每件工作只有一个人去做。已知第i 个人去做个人去做第第j 件工作的的效率(件工作的的效率( 时间或费用)为时间或费用)为Cij(i=1.2n;j=1.2n)并假设并假设Cij 0。问应如何分配才。问应如何分配才能使总效率(能使总效率( 时间或费用)最高?时间或费用)最高?五、指派问题五、指派问题设决策变量设决策变量 1 分配第分配第i 个人去做第个人
49、去做第j 件工作件工作 xij = 0 相反相反 ( I,j=1.2. n )其数学模型为:其数学模型为: ).2.1,1(0).2.1( 1).2.1( 1min1111njixnjxnixxcZijniijnjijninjijij或或 (二)、解题步骤:(二)、解题步骤: 指派问题是指派问题是0-1 规划的特例,也是运输问题的特例,规划的特例,也是运输问题的特例,当然可用整数规划,当然可用整数规划,0-1 规划或运输问题的解法去求规划或运输问题的解法去求解,这就如同用单纯型法求解运输问题一样是不合算解,这就如同用单纯型法求解运输问题一样是不合算的。利用指派问题的特点可有更简便的解法,这就是
50、的。利用指派问题的特点可有更简便的解法,这就是匈牙利法,即匈牙利法,即系数矩阵中独立系数矩阵中独立 0 0 元素的最多个数等于元素的最多个数等于能覆盖所有能覆盖所有 0 0 元素的最少直线数。元素的最少直线数。 第一步:变换指派问题的系数矩阵(第一步:变换指派问题的系数矩阵(cij)为)为(bij),使,使在在(bij)的各行各列中都出现的各行各列中都出现0元素,即元素,即 (1) 从(从(cij)的每行元素都减去该行的最小元素;)的每行元素都减去该行的最小元素; (2) 再从所得新系数矩阵的每列元素中减去该列的最再从所得新系数矩阵的每列元素中减去该列的最小元素。小元素。 第二步:进行试指派,
51、以寻求最优解。第二步:进行试指派,以寻求最优解。 在在(bij)中找尽可能多的独立中找尽可能多的独立0元素,若能找出元素,若能找出n个独个独立立0元素,就以这元素,就以这n个独立个独立0元素对应解矩阵元素对应解矩阵(xij)中的元中的元素为素为1,其余为,其余为0,这就得到最优解。找独立,这就得到最优解。找独立0元素,常元素,常用的步骤为:用的步骤为: (1)从只有一个从只有一个0元素的行元素的行(列列)开始,给这个开始,给这个0元素加元素加圈,记作圈,记作 。然后划去。然后划去 所在列所在列(行行)的其它的其它0元素,记元素,记作作 ;这表示这列所代表的任务已指派完,不必再考;这表示这列所代
52、表的任务已指派完,不必再考虑别人了。虑别人了。 (2)给只有一个给只有一个0元素的列元素的列(行行)中的中的0元素加圈,记作元素加圈,记作;然后划去;然后划去 所在行的所在行的0元素,记作元素,记作 (3)反复进行反复进行(1),(2)两步,直到尽可能多的两步,直到尽可能多的0元素都元素都被圈出和划掉为止。被圈出和划掉为止。 (4)若仍有没有划圈的若仍有没有划圈的0元素,且同行元素,且同行(列列)的的0元素至元素至少有两个,则从剩有少有两个,则从剩有0元素最少的行元素最少的行(列列)开始,比较这开始,比较这行各行各0元素所在列中元素所在列中0元素的数目,选择元素的数目,选择0元素少的那列元素少
53、的那列的这个的这个0元素加圈元素加圈(表示选择性多的要表示选择性多的要“礼让礼让”选择性选择性少的少的)。然后划掉同行同列的其它。然后划掉同行同列的其它0元素。可反复进行,元素。可反复进行,直到所有直到所有0元素都已圈出和划掉为止。元素都已圈出和划掉为止。 (5)若)若 元素的数目元素的数目m 等于矩阵的阶数等于矩阵的阶数n,那么这指,那么这指派问题的最优解已得到。若派问题的最优解已得到。若m n, 则转入下一步。则转入下一步。 第三步:作最少的直线覆盖所有第三步:作最少的直线覆盖所有0元素。元素。 (1)对没有对没有的行打的行打号;号; (2)对已打对已打号的行中所有含号的行中所有含元素的列
54、打元素的列打号;号; (3)再对打有再对打有号的列中含号的列中含 元素的行打元素的行打号;号; (4)重复重复(2),(3)直到得不出新的打直到得不出新的打号的行、列为止;号的行、列为止; (5)对没有打对没有打号的行画横线,有打号的行画横线,有打号的列画纵线,号的列画纵线,这就得到覆盖所有这就得到覆盖所有0元素的最少直线数元素的最少直线数 l 。l 应等于应等于m,若不相等,说明试指派过程有误,回到第二步若不相等,说明试指派过程有误,回到第二步(4),另,另行试指派;若行试指派;若 lm n,须再变换当前的系数矩阵,须再变换当前的系数矩阵,以找到以找到n个独立的个独立的0元素,为此转第四步。
55、元素,为此转第四步。第四步:变换矩阵第四步:变换矩阵(bij)以增加以增加0元素。元素。在没有被直线覆盖的所有元素中找出最小元素,然后在没有被直线覆盖的所有元素中找出最小元素,然后打打各行都减去这最小元素;打各行都减去这最小元素;打各列都加上这最小元各列都加上这最小元素(以保证系数矩阵中不出现负元素)。新系数矩阵素(以保证系数矩阵中不出现负元素)。新系数矩阵的最优解和原问题仍相同。转回第二步。的最优解和原问题仍相同。转回第二步。 例一:例一: 任务任务人员人员ABCD甲甲215134乙乙1041415丙丙9141613丁丁78119 9118713161491514410413152 2410
56、47501110062111302497 00102350960607130 2410475011100621113042 00102350960607130 0100000100101000 有一份中文说明书,需译成英、日、德、俄四种有一份中文说明书,需译成英、日、德、俄四种文字,分别记作文字,分别记作A、B、C、D。现有甲、乙、丙、丁四。现有甲、乙、丙、丁四人,他们将中文说明书译成不同语种的说明书所需时人,他们将中文说明书译成不同语种的说明书所需时间如下表所示,问如何分派任务,可使总时间最少?间如下表所示,问如何分派任务,可使总时间最少? 任务任务人员人员ABCD甲甲67112乙乙4598
57、丙丙31104丁丁5982例二、例二、求解过程如下:求解过程如下:第一步,变换系数矩阵:第一步,变换系数矩阵:2142 289541013895421176)( ijc 0673390245100954 01733402401004545第二步,试指派:第二步,试指派:找到找到 3 3 个独立零元素个独立零元素 但但 m m = 3 3 n = 4 第三步,作最少的直线覆盖所有第三步,作最少的直线覆盖所有0 0元素:元素:立零元素的个数独立零元素的个数m等于最少直线数等于最少直线数l,即,即lm=3n=4; 第四步,变换矩阵第四步,变换矩阵(
58、 (bij) )以增加以增加0 0元素:没有被直线元素:没有被直线覆盖的所有元素中的最小元素为覆盖的所有元素中的最小元素为1 1,然后打,然后打各行都减各行都减去去1 1;打;打各列都加上各列都加上1 1,得如下矩阵,并转第二步进,得如下矩阵,并转第二步进行试指派:行试指派: 6244251343000 0 00 0100001000011000得到得到4 4个独个独立零元素,立零元素, 所以最优解所以最优解矩阵为:矩阵为:0624425134315 6244251343练习:练习:115764戊戊69637丁丁86458丙丙9117129乙乙118957甲甲EDCBA费费 工作工作 用用人员人员43475115764696379645891171291
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗设备开发采购合同范例
- 上海房产抵押合同范例
- 占补项目合同范例
- 人工聘请合同范例
- 发包搬运劳务合同范例
- 医院健康服务合同范例
- 保镖雇佣合同范例
- 加盟品牌解约合同范例
- 书籍赠予合同范例
- 劳动合同范例纠错
- 医院工程材料采购合同范本
- 2025年安徽中医药高等专科学校单招职业适应性测试题库有答案
- DeepSeek+DeepResearch-让科研像聊天一样简单(内含AI学术工具公测版)
- 宋代农书研究出版对宋代农业研究的价值4篇
- 5.2《稻》教案-【中职专用】高二语文同步教学(高教版2023·拓展模块下册)
- 2025年超长期特别国债申报工作及成功案例
- 电梯困人培训课件
- 熔化焊接与热切割作业题库题库(1455道)
- 金属冶炼中的铍冶炼与铍合金生产
- 2025年中国中煤华东分公司招聘笔试参考题库含答案解析
- 铁路运输碳排放分析-洞察分析
评论
0/150
提交评论