资源描述
优化建模,*,*,第,*,页,生产与,服,服务运,作,作管理,中,中的优,化,化问题,优化建,模,模与LINDO/LINGO软件,第5章,内容提,要,要,5.1 生,产,产与销,售,售计划,问,问题,5.2 有,瓶,瓶颈设,备,备的多,级,级生产,计,计划问,题,题,5.3 下,料,料问题,5.4 面,试,试顺序,与,与消防,车,车调度,问,问题,5.5 飞,机,机定位,和,和飞行,计,计划问,题,题,5.1 生,产,产与销,售,售计划,问,问题,5.1.1,问,问题实,例,例,例5.1某公,司,司用两,种,种原油,(,(A和B)混,合,合加工,成,成两种,汽,汽油(,甲,甲和乙,),)。甲,、,、乙两,种,种汽油,含,含原油A的最,低,低比例,分,分别为50%,和,和60%,每,吨,吨售价,分,分别为4800元和5600元。,该,该公司,现,现有原,油,油A和B的库,存,存量分,别,别为500吨,和,和1000吨,,,,还可,以,以从市,场,场上买,到,到不超,过,过1500吨,的,的原油A。原,油,油A的,市,市场价,为,为:购,买,买量不,超,超过500吨,时,时的单,价,价为10000元/,吨,吨;购,买,买量超,过,过500吨但,不,不超过1000吨时,,,,超过500,吨,吨的部,分,分8000元/吨;,购,购买量,超,超过1000,吨,吨时,,超,超过1000,吨,吨的部,分,分6000元/吨。,该,该公司,应,应如何,安,安排原,油,油的采,购,购和加,工,工。,5.1.2,建,建立模,型,型,问题分,析,析,安排原,油,油采购,、,、加工,的,的目标,是,是利润,最,最大,,题,题目中,给,给出的,是,是两种,汽,汽油的,售,售价和,原,原油A,的,的采购,价,价,利,润,润为销,售,售汽油,的,的收入,与,与购买,原,原油A,的,的支出,之,之差。,这,这里的,难,难点在,于,于原油A的采,购,购价与,购,购买量,的,的关系,比,比较复,杂,杂,是,分,分段函,数,数关系,,,,能否,及,及如何,用,用线性,规,规划、,整,整数规,划,划模型,加,加以处,理,理是关,键,键所在,。,。,模型建,立,立设原,油,油A的,购,购买量,为,为x(,吨,吨),,根,根据题,目,目所给,数,数据,,采购的,支,支出c(x),可,可表为,如,如下的,分,分段线,性,性函数,(,(以下,价,价格以,千元/,吨,吨为单,位,位):,(1),设原油A用于,生,生产甲,、,、乙两,种,种汽油,的,的数量,分,分别为,x,11,和,x,12,(吨),,,,,原油B,用,用于生,产,产甲、,乙,乙两种,汽,汽油的,数,数量分,别,别为,x,21,和,x,22,(吨),,,,,则总的收入,为,为4.8(,x,11,+,x,21,)+5.6(,x,12,+,x,22,)(千元),。,。,于是本例的,目,目标函数(,利,利润)为,(2),约束条件包,括,括加工两种,汽,汽油用的原,油,油A、原油B库存量的,限,限制,,和原油A购,买,买量的限制,,,,以及两种,汽,汽油含原油A的比例限,制,制,,它们表示为,(3),(4),(5),(6),(7),(8),由于(1),式,式中的,c,(,x,)不是线性,函,函数,(1,),)(8),给,给出的是,一个非线性,规,规划。而且,,,,对于这样,用,用分段函数,定,定义的,c,(,x,),,一般的非线,性,性规划软件,也,也难以输入,和,和求解。能,不,不能想办法,将该模型化,简,简,从而用,现,现成的软件,求,求解呢?,5.1.3 求解模,型,型,3种解法,第1种解法将原油A的,采,采购量,x,分解为三个,量,量,即用,x,1,,,x,2,,,x,3,分别表示以,价,价格10、8、6千元/吨采购的,原,原油A的吨,数,数,总支出,为,为,c,(,x,) = 10,x,1,+8,x,2,+6,x,3,,且,(9),这时目标函,数,数(2)变,为,为线性函数,:,:,(10),应该注意到,,,,只有当以10千元/,吨,吨的价格购,买,买,x,1,=500(,吨,吨)时,才,能,能以8千元/吨的价格,购,购买,x,2,(0),,这,这个条件可,以,以表示为,(11),同理,只有,当,当以8千元/吨的价格,购,购买,x,2,=500(,吨,吨)时,,才能以6千,元,元/吨的价,格,格购买,x,3,(0),,于,于是,(12),此外,,x,1,,,x,2,,,x,3,的取值范围,是,是,(13),由于有非线,性,性约束(11),(12),(3)(13)构成非线,性,性规划模型,。,。LINGO程序:,Model:,Max=4.8*x11 +4.8*x21 +5.6*x12 +5.6*x22 -10*x1- 8*x2 -6*x3;,x11+x12 x + 500;,x21+x22 0;,0.4*x12 -0.6*x22 0;,x=x1+x2+x3;,(x1 -500)* x2=0;,(x2 -500)* x3=0;,bnd(0,x1,500);,bnd(0,x2,500);,bnd(0,x3,500);,end,将文件存储,并,并命名为exam0501a.lg4,,执行菜单命,令,令“LINGO|Solve”,,运,运行该程序,得,得到:,Localoptimal solution found.,Objectivevalue:4800.000,Totalsolver iterations:26,VariableValueReduced Cost,X11500.00000.000000,X21500.00000.000000,X120.0000000.000000,X220.0000000.000000,X10.0000000.000000,X20.0000000.000000,X30.0000000.000000,X0.0000000.000000,最优解:,用,用库存的500吨原油A、500,吨,吨原油B生,产,产1000,吨,吨汽油甲,,不,不购买新的,原,原油A,利,润,润为4800(千元),但是此时LINGO得,到,到的结果只,是,是一个局部最优解,可以用菜单,命,命令“LINGO|Options”在“GlobalSolver”选项,卡,卡上启动全,局,局优化(Use GlobalSolver)选项,,然,然后重新执,行,行菜单命令,“,“LINGO|Solve” ,得,得到:,Global optimalsolution found.,Objectivevalue:5000.002,Extended solversteps:3,Totalsolver iterations:187,VariableValueReducedCost,X110.0000000.000000,X210.0000000.000000,X121500.0000.000000,X221000.0000.000000,X1500.00000.000000,X2499.99900.000000,X30.9536707E-030.000000,X1000.0000.000000,此时LINGO得到的,结,结果是一个全局最优解(,Global optimalsolution,):购买1000吨原,油,油A,与库,存,存的500,吨,吨原油A和1000吨,原,原油B一起,,,,共生产2500吨汽,油,油乙,利润,为,为5000,(,(千元),,高,高于刚刚得,到,到的局部最,优,优解对应的,利,利润4800(千元),。,。,第2种解法:,引入0-1,变,变量将(11)和(12)转化为,线,线性约束,令,y,1,=1,,y,2,=1,,y,3,=1分别表,示,示以10千,元,元/吨、8,千,千元/吨、6千元/吨,的,的价格采购,原,原油A,则,约,约束(11,),)和(12,),)可以替换,为,为,(14),(15),(16),y,1,,,y,2,,,y,3,=0或1,(17),(3),(,(10),,,,(13,),)(17)构成,混,混合整数,线,线性规划,模,模型,将,它,它输入LINDO,软,软件:,Max4.8x11+4.8x21+5.6x12+5.6x22-10x1-8x2-6x3,st,x-x1-x2-x3=0,x11+x12-x500,x21+x220,0.4x12-0.6x220,x1-500y10,x2-500y20,x3-500y30,x2-500y30,end,inty1,inty2,inty3,运行该程,序,序得到,:,OBJECTIVE FUNCTION VALUE,1)5000.000,VARIABLEVALUEREDUCED COST,Y11.0000000.000000,Y21.0000002200.000000,Y31.0000001200.000000,X110.0000000.800000,X210.0000000.800000,X121500.0000000.000000,X221000.0000000.000000,X1500.0000000.000000,X2500.0000000.000000,X30.0000000.400000,X1000.0000000.000000,这个结果,与,与前面非,线,线性规划,模,模型用全,局,局优化得,到,到的结果,相,相同。,第3种解,法,法,直接处理,分,分段线性,函,函数,c,(,x,)。,(1)式,表,表示的函,数,数,c,(,x,)如图5-1。,c,(,x,),x,12000,9000,5000,0,500,1000,1500,图5-1 分段线性函数,c,(,x,)图形,记,x,轴上的分,点,点为,b,1,=0,b,2,=500,b,3,=1000,b,4,=1500。当,x,在第1个,小,小区间,b,1,b,2,时,记,x,=,z,1,b,1,+,z,2,b,2,,,z,1,+,z,2,=1,,z,1,z,2,0,因为,c,(,x,)在,b,1,b,2,是线性,的,的,所以,c,(,x,)=,z,1,c,(,b,1,)+,z,2,c,(,b,2,)。同样,,,,当,x,在第2个,小,小区间,b,2,b,3,时,,x,=,z,2,b,2,+,z,3,b,3,,,z,2,+,z,3,=1,,,,,z,2,z,3,0,c,(,x,)=,z,2,c,(,b,2,)+,z,3,c,(,b,3,),。,。,当,当,x,在,第,第3,个,个,小,小,区,区,间,间,b,3,b,4,时,时,,,,,x,=,z,3,b,3,+,z,4,b,4,,,z,3,+,z,4,=1,,,,,z,3,z,4,0,c,(,x,)=,z,3,c,(,b,3,)+,z,4,c,(,b,4,),。,。,为,为,了,了,表,表,示,示,x,在,哪,哪,个,个,小,小,区,区,间,间,,,,,引,引,入,入0-1,变,变,量,量,y,k,(,k,=1,2,3),,,,,当,当,x,在,第,第,k,个,小,小,区,区,间,间,时,时,,,,,y,k,=1,,,,,否,否,则,则,,,,,y,k,=0,。,。,这,这,样,样,z,1,z,2,z,3,z,4,y,1,y,2,y,3,应,满,满,足,足,(18),(19),(20),此,时,时,x,和,c,(,x,),可,可,以,以,统,统,一,一,地,地,表,表,示,示,为,为,(2,),),(,(10,),),,,,,(,(18,),),(,(22,),),也,也,构,构,成,成,一,一,个,个,混,混,合,合,整,整,数,数,线,线,性,性,规,规,划,划,模,模,型,型,,,,,可,可,以,以,用,用LINDO,求,求,解,解,。,。,不,不,过,过,,,,,我,我,们,们,还,还,是,是,将,将,它,它,输,输,入,入LINGO,软,软,件,件,,,,,因,因,为,为,其,其,扩,扩,展,展,性,性,更,更,好,好,(,(,即,即,当,当,分,分,段,段,函,函,数,数,的,的,分,分,段,段,数,数,更,更,多,多,时,时,,,,,只,只,需,需,要,要,对,对,下,下,面,面,程,程,序,序,作,作,很,很,小,小,的,的,改,改,动,动,),),。,。,输,输,入,入,的,的LINGO,模,模,型,型,如,如,下,下,:,:,(22),输入的LINGO模,型,型如下,:,:,Model:,SETS:,Points/1.4/: b, c, y, z;!,端,端点,数,数为4,,,,即分,段,段数为3;,ENDSETS,DATA:,b=0500 10001500;,c=050009000 12000;,y=,0;!,增,增加,的,的虚拟,变,变量y(4)=0;,ENDDATA,Max= 4.8*x11+4.8*x21 +5.6*x12+ 5.6*x22-sum(Points:c*z);,x11+x12 x+ 500;,x21+x22 0;,0.4*x12 -0.6*x22 0;,sum(Points:b*z)=x;,for(Points(i)|i#eq#1: z(i)=y(i);,for(Points(i)|i#ne#1: z(i)0时取,值,值1,否,否则取值0.,在上述数学符号中,只有,为决策变量,;,其余均为,已,已知的计,划,划参数。,目标函数,这个问题,的,的目标是,使,使生产准,备,备费用和,库,库存费用,的,的总和最,小,小。因此,,,,目标函,数,数应该是,每,每个项目,在,在每个时,段,段上的生,产,产准备费,用,用和库存,费,费用的总,和,和,即,(28),约束条,件,件,这个问,题,题中的,约,约束有,这,这么几,类,类:每,个,个项目,的,的物流,应,应该守,恒,恒、资,源,源能力,限,限制应,该,该满足,、,、每时,段,段生产,某,某项目,前,前必须,经,经过生,产,产准备,和,和非负,约,约束,(,(对,Y,i,j,是0-1约束,),)。,(29),资源能,力,力限制,比,比较容,易,易理解,,,,即,(30),所谓物,流,流守恒,(,(假设,I,i,0,=0),(31),每时段,生,生产某,项,项目前,必,必须经,过,过生产,准,准备,,也,也就是,说,说当,X,it,=0时,Y,it,=0;,X,it,0时,Y,it,=1。,这,这本来,是,是一个,非,非线性,约,约束,,但,但是通,过,过引入,参,参数,M,(很大,的,的正数,,,,表示,每,每个项,目,目每个,时,时段的,最,最大产,量,量)可,以,以化成,线,线性约,束,束,即,:,:,总结:,这,这,个,个问题,的,的优化,模,模型就,是,是在约,束,束(29)(30),(,(31,),)下使,目,目标函,数,数(28)达,到,到最小,。,。,5.2.3,求,求解,模,模型,本例生,产,产项目,总,总数,N,=7(A、B,、,、C、D、E,、,、F、G),,,,计划,期,期长度,T,=6(,周,周),,瓶,瓶颈资,源,源种类,数,数,K,=1。,只,只有A,有,有外部,需,需求,,所,所以,d,i,t,中只有,d,1,t,可以取,非,非零需,求,求,即,表,表5-1中的,第,第2行,的,的数据,,,,其他,全,全部为,零,零。,参,参数,s,i,t,、,h,i,t,只与项,目,目,i,有关,,而,而不随,时,时段,t,变化,,所,所以可,以,以略去,下,下标,t,,其数,值,值就是,表,表5-1中的,最,最后两,行,行数据,。,。,由于只,有,有一种,资,资源,,参,参数,C,k,t,可以略,去,去下标,k,,其数,值,值就是,表,表5-1中的,第,第3行,的,的数据,;,;而,a,k,I,t,只与项,目,目,i,有关,,而,而不随,时,时段,t,变化,,所,所以可,以,以同时,略,略去下,标,标,k,和,t,,即,a,2,=5,,a,3,=8(,其,其他,a,i,为0),。,。从图6-2,中,中容易,得,得到项,目,目,i,的直接,后,后继项,目,目集合,S,(,i,)和消,耗,耗系数,。,。,准备以,下,下的数,据,据文件,(,(文本,文,文件exam0502.LDT,,可,可以看,到,到其中,也,也可以,含,含有注,释,释语句,),):,! 项,目,目集合;,ABCDEFG,! 计,划,划期集,合,合;,123456,! 需,求,求;,40010009010,000000,000000,000000,000000,000000,000000,! 能,力,力;,1000005000500010001000,! 生,产,产准备,费,费;,4005001000300200400100,! 库,存,存费;,120.61.00.040.030.040.04,! 对,能,能力的,消,消耗系,数,数;,0580000,! 项,目,目间的,消,消耗系,数,数:req(i,j)表,示,示j用,到,到多少i;,0000000,5000000,7000000,0900000,01100000,00130000,00150000,! 数,据,据结束;,对本例,,,,A的,外,外部总,需,需求为240,,,,所以,任,任何项,目,目的产,量,量不会,超,超过24071525000(从,图,图6-2可以,知,知道,,这,这里7,15,已,已经是,每,每件产,品,品A对,任,任意一,个,个项目,的,的最大,的,的消耗,系,系数了,),),所,以,以取M=25000,就,就已经,足,足够了,。,。,本例中,的,的具体,模,模型可,以,以如下,输,输入LINGO软件,:,:,MODEL:,TITLE,瓶,瓶颈设,备,备的多,级,级生产,计,计划;,! 从,文,文本文,件,件exam0502.LDT中读,取,取数据;,SETS:,! PART=,项,项目集,合,合,Setup= 生,产,产准备,费,费,Hold=,单,单件库,存,存成本,,,,,A =,对,对瓶,颈,颈资源,的,的消耗,系,系数;,PART/FILE(exam0502.LDT)/: Setup,Hold,A;,! TIME=,计,计划期,集,集合,Capacity= 瓶,颈,颈设备,的,的能力;,TIME /FILE( exam0502.LDT)/:Capacity;,! USES=,项,项目结,构,构关系,,,,Req =,项,项目,之,之间的,消,消耗系,数,数;,USES(PART,PART): Req;,! PXT= 项,目,目与时,间,间的派,生,生集合,,,,Demand =,外,外部,需,需求,X =,产,产量,(,(批量,),),Y =0/1变量,,,,INV =,库,库存;,PXT(PART,TIME): Demand,X, Y, Inv;,ENDSETS,! 目标函,数,数;,OBJMin= sum(PXT(i,t):,setup(i)*Y(i,t)+ hold(i)*Inv(i,t);,!,物流平衡方,程,程,;,FOR(PXT(i, t)| t#NE#1 : Bal,Inv(i,t-1)+X(i,t)-Inv(i,t) = Demand(i, t) +,SUM(USES(i,j): Req(i,j)*X(j,t) );,FOR(PXT(i, t)| t#eq#1 : Ba0,X(i,t)-Inv(i,t)= Demand(i, t)+,SUM(USES(i,j): Req(i,j)*X(j,t) );,! 能力约,束,束;,FOR(TIME(t):,CapSUM( PART(i):A(i)*X(i,t) ) Capacity(t) );,! 其他约,束,束;,M = 25000;,FOR(PXT(i,t):X(i,t) = 50,x2 +2x4 +x5 +3x6=20,x3+ x5+ 2x7 =15,end,gin 7,求解可以得,到,到最优解如,下,下:,OBJECTIVEFUNCTION VALUE,1)27.00000,VARIABLEVALUEREDUCED COST,X10.0000003.000000,X212.0000001.000000,X30.0000003.000000,X40.0000003.000000,X515.0000001.000000,X60.0000001.000000,X70.0000003.000000,即按照模式2切割12,根,根原料钢管,,,,按照模式5切割15,根,根原料钢管,,,,共27根,,,,总余料量,为,为27米。,显,显然,在总,余,余料量最小,的,的目标下,,最,最优解将是,使,使用余料尽,可,可能小的切,割,割模式(模,式,式2和5的,余,余料为1米,),),这会导,致,致切割原料,钢,钢管的总根,数,数较多。,2.,将,将,(,(33,),),(,(36,),),构,构,成,成,的,的,整,整,数,数,线,线,性,性,规,规,划,划,模,模,型,型,(,(,加,加,上,上,整,整,数,数,约,约,束,束,),),输,输,入,入LINDO,:,:,Title,钢,钢,管,管,下,下,料,料-,最,最,小,小,化,化,钢,钢,管,管,根,根,数,数,Minx1+x2+x3+x4+x5+x6+x7,s.t.,4x1+3x2+2x3+x4+x5=50,x2+2x4+x5+3x6=20,x3+x5+2x7=15,end,gin7,求,解,解,,,,,可,可,以,以,得,得,到,到,最,最,优,优,解,解,如,如,下,下,:,:,OBJECTIVEFUNCTIONVALUE,1)25.00000,VARIABLEVALUEREDUCEDCOST,X10.0000001.000000,X215.0000001.000000,X30.0000001.000000,X40.0000001.000000,X55.0000001.000000,X60.0000001.000000,X75.0000001.000000,即,按,按,照,照,模,模,式,式2,切,切,割,割15,根,根,原,原,料,料,钢,钢,管,管,,,,,按,按,模,模,式,式5,切,切,割,割5,根,根,,,,,按,按,模,模,式,式7,切,切,割,割5,根,根,,,,,共,共27,根,根,,,,,可,可,算,算,出,出,总,总,余,余,料,料,量,量,为,为35,米,米,。,。,与,与,上,上,面,面,得,得,到,到,的,的,结,结,果,果,相,相,比,比,,,,,总,总,余,余,料,料,量,量,增,增,加,加,了,了8,米,米,,,,,但,但,是,是,所,所,用,用,的,的,原,原,料,料,钢,钢,管,管,的,的,总,总,根,根,数,数,减,减,少,少,了,了2,根,根,。,。,在,在,余,余,料,料,没,没,有,有,什,什,么,么,用,用,途,途,的,的,情,情,况,况,下,下,,,,,通,通,常,常,选,选,择,择,总,总,根,根,数,数,最,最,少,少,为,为,目,目,标,标,。,。,问题2,),)的求,解,解,问题分,析,析,按,按照解,问,问题1,),)的思,路,路,可,以,以通过,枚,枚举法,首,首先确,定,定哪些,切,切割模,式,式是可,行,行的。,但,但由于,需,需求的,钢,钢管规,格,格增加,到,到4种,,,,所以,枚,枚举法,的,的工作,量,量较大,。,。下面,介,介绍的,整,整数非,线,线性规,划,划模型,,,,可以,同,同时确,定,定切割,模,模式和,切,切割计,划,划,是,带,带有普,遍,遍性的,方,方法。,同1),类,类似,,一,一个合,理,理的切,割,割模式,的,的余料,不,不应该,大,大于或,等,等于客,户,户需要,的,的钢管,的,的最小,尺,尺寸(,本,本题中,为,为4米,),),切,割,割计划,中,中只使,用,用合理,的,的切割,模,模式,,而,而由于,本,本题中,参,参数都,是,是整数,,,,所以,合,合理的,切,切割模,式,式的余,量,量不能,大,大于3,米,米。此,外,外,这,里,里我们,仅,仅选择,总,总根数,最,最少为,目,目标进,行,行求解,。,。,模型建,立,立,决策变,量,量,由,由于不,同,同切割,模,模式不,能,能超过3种,,可,可以用,x,i,表示按,照,照第,i,种模式,(,(,i,=1,2,3),切,切割的,原,原料钢,管,管的根,数,数,显,然,然它们,应,应当是,非,非负整,数,数。,设,所使用,的,的第,i,种切割,模,模式下,每,每根原,料,料钢管,生,生产4,米,米长、5米长,、,、6米,长,长和8,米,米长的,钢,钢管数,量,量分别,为,为,r,1,i,r,2,i,r,3,i,r,4,i,(,非负整,数,数,)。,决策目,标,标,以,以切割,原,原料钢,管,管的总,根,根数最,少,少为目,标,标,即,目,目标为,(37,),),约束条,件,件,为,为满足,客,客户的,需,需求,,应,应有,(38),(39),(40),(41),每一种,切,切割模,式,式必须,可,可行、,合,合理,,所,所以每,根,根原料,钢,钢管的,成,成品量,不,不能超,过,过19,米,米,也,不,不能少,于,于16,米,米(余,量,量不能,大,大于3,米,米),,于,于是,(42),(43),(44),模型求,解,解,(37,),)(44),构,构成这,个,个问题,的,的优化,模,模型。,由,由于在,(,(38,),)(41),式,式中出,现,现了决,策,策变量,的,的乘积,,,,所以,这,这是一,个,个整数,非,非线性,规,规划模,型,型,虽,然,然用LINGO软件,可,可以直,接,接求解,,,,但我,们,们发现,在,在较低,版,版本的LINGO软,件,件中需,要,要运行,很,很长时,间,间也难,以,以得到,最,最优解,。,。为了,减,减少运,行,行时间,,,,可以,增,增加一,些,些显然,的,的约束,条,条件,,从,从而缩,小,小可行,解,解的搜,索,索范围,。,。,例如,,由,由于3,种,种切割,模,模式的,排,排列顺,序,序是无,关,关紧要,的,的,所,以,以不妨,增,增加以,下,下约束,:,:,(45,),),又例如,,,,我们,注,注意到,所,所需原,料,料钢管,的,的总根,数,数有着,明,明显的,上,上界和,下,下界。,首,首先,,无,无论如,何,何,原,料,料钢管,的,的总根,数,数不可,能,能少于,(根),其次,,考,考虑一,种,种非常,特,特殊的,生,生产计,划,划:第,一,一种切,割,割模式,下,下只生,产,产4米,钢,钢管,,一,一根原,料,料钢管,切,切割成4根4,米,米钢管,,,,为满,足,足50,根,根4米,钢,钢管的,需,需求,,需,需要13根原,料,料钢管,;,;第二,种,种切割,模,模式下,只,只生产5米、6米钢,管,管,一,根,根原料,钢,钢管切,割,割成1,根,根5米,钢,钢管和2根6,米,米钢管,,,,为满,足,足10,根,根5米,和,和20,根,根6米,钢,钢管的,需,需求,,需,需要10根原,料,料钢管,;,;,第三种切,割,割模式下,只,只生产8,米,米钢管,,一,一根原料,钢,钢管切割,成,成2根8,米,米钢管,,为,为满足15根8米,钢,钢管的需,求,求,需要8根原料,钢,钢管。于,是,是满足要,求,求的这种,生,生产计划,共,共需13+10+8=31,根,根原料钢,管,管,这就,得,得到了最,优,优解的一,个,个上界。,所,所以可增,加,加以下约,束,束:,(46),将(37,),)(46)构成,的,的模型输,入,入LINGO如下,:,:,将(37,),)(46)构成,的,的模型输,入,入LINGO如下,:,:,model:,Title 钢管,下,下料 -,最,最小化,钢,钢管根数,的,的LINGO模型;,min=x1+x2+x3;,x1*r11+x2*r12+x3*r13=50;,x1*r21+x2*r22+x3*r23=10;,x1*r31+x2*r32+x3*r33=20;,x1*r41+x2*r42+x3*r43=15;,4*r11+5*r21+6*r31+8*r41=19;,4*r12+5*r22+6*r32+8*r42=19;,4*r13+5*r23+6*r33+8*r43=16;,4*r12+5*r22+6*r32+8*r42=16;,4*r13+5*r23+6*r33+8*r43=16;,x1+x2+x3=26;,x1+x2+x3=x2;,x2=x3;,gin(x1); gin(x2);gin(x3);,gin(r11);gin(r12);gin(r13);,gin(r21);gin(r22);gin(r23);,gin(r31);gin(r32);gin(r33);,gin(r41);gin(r42);gin(r43);,end,经过LINGO求,解,解,得到,输,输出如下,:,:,Local optimal solution found.,Objective value:28.00000,Extendedsolversteps:72,Total solveriterations:3404,Model Title:,钢,钢管下,料,料-最小,化,化钢管根,数,数的LINGO模,型,型,VariableValueReduced Cost,X110.000001.000000,X210.000001.000000,X38.0000001.000000,R112.0000000.000000,R123.0000000.000000,R130.0000000.000000,R211.0000000.000000,R220.0000000.000000,R230.0000000.000000,R311.0000000.000000,R321.0000000.000000,R330.0000000.000000,R410.0000000.000000,R420.0000000.000000,R432.0000000.000000,即按照模,式,式1、2,、,、3分别,切,切割10,、,、10、8根原料,钢,钢管,使,用,用原料钢,管,管总根数,为,为28根,。,。第一种,切,切割模式,下,下一根原,料,料钢管切,割,割成3根4米钢管,和,和1根6,米,米钢管;,第,第二种切,割,割模式下,一,一根原料,钢,钢管切割,成,成2根4,米,米钢管、1根5米,钢,钢管和1,根,根6米钢,管,管;第三,种,种切割模,式,式下一根,原,原料钢管,切,切割成2,根,根8米钢,管,管。,如果充分,利,利用LINGO建,模,模语言的,能,能力,使,用,用集合和,属,属性的概,念,念,可以,编,编写以下LINGO程序,,这,这种方法,更,更具有一,般,般的通用,性,性,并有,利,利于输入,更,更大规模,的,的下料问,题,题的优化,模,模型:,model:,Title,钢管下料,-,最小化钢,管,管根数的,LINGO,模型;,SETS:,NEEDS/1.4/:LENGTH,NUM;,!,定义基本,集,集合,NEEDS,及其属性,LENGTH,NUM;,CUTS/1.3/:X;,!,定义基本,集,集合,CUTS,及其属性,X;,PATTERNS(NEEDS,CUTS):R;,!,定义派生,集,集合,PATTERNS,(这是一,个,个稠密集,合,合)及其,属,属性,R;,ENDSETS,DATA:,LENGTH=45 68;,NUM=50 10 2015;,CAPACITY=19;,ENDDATA,min=SUM(CUTS(I): X(I) );,!,目标函数,;,FOR(NEEDS(I): SUM(CUTS(J):X(J)*R(I,J) NUM(I) );,!,满足需求,约,约束,;,FOR(CUTS(J): SUM(NEEDS(I):LENGTH(I)*R(I,J) )CAPACITY,-MIN(NEEDS(I):LENGTH(I) );,!,合理切割,模,模式约束,;,SUM(CUTS(I): X(I) )26; SUM(CUTS(I):X(I) X(I+1) );,!,人为增加,约,约束,;,FOR(CUTS(J): GIN(X(J) ;,FOR(PATTERNS(I,J):GIN(R(I,J);,end,求,解,解,这,这,个,个,模,模,型,型,,,,,得,得,到,到,的,的,结,结,果,果,与,与,前,前,面,面,的,的,结,结,果,果,完,完,全,全,相,相,同,同,。,。,5.3.2,易,易,拉,拉,罐,罐,下,下,料,料,问,问,题,题,例5.4,某,某,公,公,司,司,采,采,用,用,一,一,套,套,冲,冲,压,压,设,设,备,备,生,生,产,产,一,一,种,种,罐,罐,装,装,饮,饮,料,料,的,的,易,易,拉,拉,罐,罐,,,,,这,这,种,种,易,易,拉,拉,罐,罐,是,是,用,用,镀,镀,锡,锡,板,板,冲,冲,压,压,制,制,成,成,的,的,(,(,
展开阅读全文