最优化方法第二章整数规划

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1第四讲整数规划(IP)整数规划的模型分枝定界法割平面法0-1整数规划指派问题21、整数规划(IntegerProgramming)问题实例合理下料问题4.1整数规划的模型建厂问题机床分配问题3例1、合理下料问题设用某型号的圆钢下零件A1,A2,…,Am的毛坯。在一根圆钢上下料的方式有B1,B2,…Bn种,每种下料方式可以得到各种零件的毛坯数以及每种零件的需要量,如表所示。问怎样安排下料方式,使得即满足需要,所用的原材料又最少?零件方个数式零件零件毛坯数nBB1mAA1mbb1mnmnaaaa1111设:xj表示用Bj(j=1.2…n)种方式下料根数.模型:且为整数n)1.2(j0)2.1(min11jnjijijnjjxmibxaxZ4例2、(建厂问题)某公司计划在m个地点建厂,可供选择的地点有A1,A2…Am,他们的生产能力分别是a1,a2,…am(假设生产同一产品)。第i个工厂的建设费用为fi(i=1.2…m),又有n个地点B1,B2,…Bn需要销售这种产品,其销量分别为b1.b2…bn。从工厂运往销地的单位运费为Cij。试决定应在哪些地方建厂,即满足各地需要,又使总建设费用和总运输费用最省?销量建设费用生产能力单销地厂址价nmmmnmmmnnbbbfacccAfacccAfacccABnBB21212222221211112111215设:xij表示从工厂运往销地的运量(i=1.2…m、j=1.2…n),1在Ai建厂又设Yi=(i=1.2…m)0不在Ai建厂模型:n)1.2jm1.2(i10,0n)1.2(j)2.1(min111、或iijmijijnjiiijmiiiijijyxbxmiyaxyfxcZ6例3、机床分配问题设有m台同类机床,要加工n种零件。已知各种零件的加工时间分别为a1,a2,…an,问如何分配,使各机床的总加工任务相等,或者说尽可能平衡。设:1分配第i台机床加工第j种零件;xij=(i=1.2…m,j=1.2…n)0相反。于是,第i台机床加工各种零件的总时间为:njijjmixa1)2.1(又由于一个零件只能在一台机床上加工,所以有miijmix1)2.1(17因此,求xij,使得n)1.2jm,1.2(i10n)1.2(j1),max(min111121或ijmiijnjnjnjmjjjjjjxxxaxanxaZ82、整数规划的数学模型一般形式且部分或全部为整数或n)1.2(j0)2.1()max(min11jnjijijnjjjxmibxaxcZZ依照决策变量取整要求的不同,整数规划可分为纯整数规划、全整数规划、混合整数规划、0-1整数规划。9纯整数规划:所有决策变量要求取非负整数(这时引进的松弛变量和剩余变量可以不要求取整数)。全整数规划:除了所有决策变量要求取非负整数外,系数aij和常数bi也要求取整数(这时引进的松弛变量和剩余变量也必须是整数)。混合整数规划:只有一部分的决策变量要求取非负整数,另一部分可以取非负实数。0-1整数规划:所有决策变量只能取0或1两个整数。103、整数规划与线性规划的关系从数学模型上看整数规划似乎是线性规划的一种特殊形式,求解只需在线性规划的基础上,通过舍入取整,寻求满足整数要求的解即可。但实际上两者却有很大的不同,通过舍入得到的解(整数)也不一定就是最优解,有时甚至不能保证所得到的解是整数可行解。举例说明。11例:设整数规划问题如下且为整数0,13651914max21212121xxxxxxxxz首先不考虑整数约束,得到线性规划问题(一般称为松弛问题或伴随问题)。0,13651914max21212121xxxxxxxxz12用图解法求出最优解x1=3/2,x2=10/3且有=29/6x1x2⑴⑵33(3/2,10/3)现求整数解(最优解):如用“舍入取整法”可得到4个点即(1,3)(2,3)(1,4)(2,4)。显然,它们都不可能是整数规划的最优解。按整数规划约束条件,其可行解肯定在线性规划问题的可行域内且为整数点。故整数规划问题的可行解集是一个有限集,如图所示。z13因此,可将集合内的整数点一一找出,其最大目标函数的值为最优解,此法为完全枚举法。如上例:其中(2,2)(3,1)点为最大值,=4。目前,常用的求解整数规划的方法有:分枝定界法和割平面法;对于特别的0-1规划问题采用隐枚举法和匈牙利法。x1x2⑴⑵33(3/2,10/3)z141、基本思路且为整数)2.1(,0)2.1()IP(min11mjxmibxaxczjnjijijnjjj考虑纯整数问题:),2.1(,0),2.1()LP(min11mjxmibxaxczjnjijijnjjj整数问题的伴随(松弛)问题:4.2分枝定界法15(1)先不考虑整数约束,解(IP)的松弛问题(LP),可能得到以下情况之一:①若(LP)没有可行解,则(IP)也没有可行解,停止计算。②若(LP)有最优解,并符合(IP)的整数条件,则(LP)的最优解即为(IP)的最优解,停止计算。③若(LP)有最优解,但不符合(IP)的整数条件,转入下一步。为讨论方便,设(LP)的最优解为:不全为整数其中目标函数最优值为),,2,1(.)0,,0,,,,,,()0(21)0(mibzbbbbXiTmr16记(IP)的目标函数最优值为,以作为的下界,记为。令,则有(2)定界:在(LP)的最优解X(0)中,任选一个不符合整数条件的变量,例如xr=br’(不为整数),以[br’]表示不超过br’的最大整数。构造两个约束条件xr≤[br’]和xr≥[br’]+1将这两个约束条件分别加入问题(IP),形成两个子问题(IP1)和(IP2),再解这两个子问题的松弛问题(LP1)和(LP2)。(3)分枝:zzz*)0(zz*z)0(zz*z17如此反复进行,直到得到为止,即得最优解X*。(4)修改上、下界:按照以下两点规则进行。①在各分枝问题中,找出目标函数值最小者作为新的下界;②从已符合整数条件的分枝中,找出目标函数值最小者作为新的上界。(5)比较与剪枝:各分枝的目标函数值中,若有大于者,则剪掉此枝,表明此子问题已经探清,不必再分枝了;否则继续分枝。(1)先不考虑整数约束,解(IP)的松弛问题(LP):(2)定界:(3)分枝:zzz*z18例1:用分枝定界法求解整数规划问题(用图解法计算)且全为整数0,4306525min211212121xxxxxxxxxZ记为(IP)解:首先去掉整数约束,变成一般线性规划问题0,4306525min211212121xxxxxxxxxZ记为(LP)2、例题19用图解法求(LP)的最优解,如图所示。x1x2⑴⑵33(18/11,40/11)⑶对于x1=18/11≈1.64,取值x1≤1,x1≥2(对于x2=40/11≈3.64,取值x2≤3,x2≥4)先取x1≤1,x1≥2,将(LP)划分为(LP1)和(LP2),x1=18/11,x2=40/11Z(0)=-218/11≈(-19.8)即Z(0)也是(IP)最小值的下限。20有下式:且为整数0,1430652)1(5min2111212121xxxxxxxxIPxxZ且为整数0,2430652)2(5min2111212121xxxxxxxxIPxxZ现在只要求出(LP1)和(LP2)的最优解即可。21同理求(LP2),如图所示。在C点取得最优解。即∵∴原问题有比-16更小的最优解,但x2不是整数,故利用3≥10/3≥4加入条件。(问题:假如,会得出什么结论?)x1x2⑴⑵33⑶先求(LP1),如图所示。此时B在点取得最优解。找到整数解,问题已探明,此枝停止计算。11BAC16,3,1)1(21zxx7.183/56,3/10,2)2(21zxx16)1()2(zz16)1()2(zz22加入条件:x2≤3,x2≥4有下式:且为整数0,32430652)3IP(5min21211212121xxxxxxxxxxxZ且为整数0,42430652)4IP(5min21211212121xxxxxxxxxxxZ只要求出(LP3)和(LP4)的最优解即可。23x1x2⑴⑵33⑶11BAC先求(LP3),如图所示。此时D在点取得最优解。即D求(LP4),如图所示。无可行解,不再分枝。8.194.175/87,3,4.25/12)0()3(21zzxx但不是整数,可继续分枝。即5/121x2,311xx24在(LP3)的基础上继续分枝。加入条件:且为整数0,232430652)5IP(5min211211212121xxxxxxxxxxxxZ且为整数0,332430652)6IP(5min211211212121xxxxxxxxxxxxZ只要求出(LP5)和(LP6)的最优解即可。2,311xx25x1x2⑴⑵33⑶11BACD先求(LP5),如图所示。此时在E点取得最优解。即x1=2,x2=3,Z(5)=-17找到整数解,问题已探明,此枝停止计算。E求(LP6),如图所示。此时F在点取得最优解。x1=3,x2=2.5,Z(6)=-31/2≈-15.5Z(5)F如对Z(6)继续分解,其最小值也不会低于-15.5,问题探明,剪枝。26至此,原问题(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,x2=5/2Z(6)=-15.5x1≤1x1≥2x2≤3x2≥4x1≤2x1≥327且为整数0,143292)IP(23max21212121xxxxxxxxz3200CBXBbx1x2x3x40x3921109/20x414230114/2-Z032003200CBXBbx1x2x3x43x113/4103/4-1/42x25/201-1/21/2-Z-59/400-5/4-1/4解:用单纯形法解对应的(LP)问题,如表所示,获得最优解。初始表最终表例2、用分枝定界法求解整数规划问题(单纯形法)28选进行分枝,即增加两个约束,有下式:且为整数0,2143292)1IP(23max212212121xxxxxxxxxZ且为整数0,3143292)2IP(23max212212121xxxxxxxxxZ分别在(LP1)和(LP2)中引入松弛变量x5和x6,将新加约束条件加入上表计算。即x2+x5=2,-x2+x6=-3得下表:75.144/59,2/5,4/13)0(21zxx2x2,322xx2932000CBXBbx1x2x3x4x53x113/4103/4-1/402x25/201-1/21/200x5201001-Z-59/400-5/4-1/403x113/4103/

1 / 91
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功