《运筹学大作业.docx》由会员分享,可在线阅读,更多相关《运筹学大作业.docx(8页珍藏版)》请在优知文库上搜索。
1、运筹学大作业例题1在法国西南部有一家公司,这家公司需要将180吨存放于仓库Dl到D4中的化学产品运输到3个回收中心Cl,C2和C3。仓库Dl到D4分别储存有50,40,35和65吨化学产品,总计为190吨。可以选用两种运输方式:公路运输和铁路运输仓库Dl只能通过公路向回收中心Cl和C2进行运输,运费分别为12欧元/吨和14欧元/吨。仓库D2只能向回收中心C2运输,可以选择通过铁路或公路,运费分别为12欧元/吨和14欧元/吨。仓库D3可以通过公路向回收中心C2运输(9欧元/吨),或通过铁路或公路向回收中心C3运输,运费分别为4欧元/吨和5欧元/吨。仓库D4可以通过铁路或公路向回收中心C2运输,运
2、费分别为11欧元/吨和14欧元/吨,或者通过铁路或公路向回收中心C3运输,运费分别为10欧元/吨和14欧元/吨。此公司与铁路公司签订的化学物品运输合同规定,每次运输量至少应为10吨,最多为50吨。除了标准的安全规章之外,对公路运输不存在其他特殊的限制。那么此公司应如何运输这180吨化学物品才能够使总运费最低?H1 .仓库Dl到回收中心Cl和C2的最低运费:- 仓库Dl只能通过公路运输。- 到回收中心Cl的运费:180吨*12欧元/吨=2160欧元。- 到回收中心C2的运费:180吨*14欧元/吨=2520欧元。2 .仓库D2到回收中心C2的最低运费:-仓库D2可以通过铁路或公路运输。-通过铁路
3、运输:180吨*12欧元/吨=2160欧元。3 .仓库D3到回收中心C2和C3的最低运费:- 仓库D3可以通过铁路或公路运输。- 到回收中心C2的运费:180吨*9欧元/吨=1620欧元。- 到回收中心C3的运费:180吨*4欧元/吨=720欧元。4 .仓库D4到回收中心C2和C3的最低运费:- 仓库D4可以通过铁路或公路运输。- 到回收中心C2的运费:180吨*11欧元/吨=1980欧元。- 到回收中心C3的运费:180吨*10欧元/吨=1800欧元。总共需要运输的化学产品量为180吨,而且每次运输的量必须在10吨到50吨之间。因此,可以尝试以每次50吨的量来计算,这样可以最大程度地减少来回
4、的次数。制定总体的最低运费方案:1 .仓库D1:-将50吨化学产品通过公路运输至回收中心Cl,每吨运费为12欧元。2 .仓库D2:-将50吨化学产品通过铁路运输至回收中心C2,每吨运费为12欧元。3 .仓库D3:-将50吨化学产品通过铁路运输至回收中心C3,每吨运费为4欧元。4 .仓库D4:-将50吨化学产品通过铁路运输至回收中心C3,每吨运费为10欧元。通过上述方案,我们可以覆盖全部180吨的化学产品,并且以最低的运输费用来完成。仓库目的地运输方式运费(欧元/吨)运输量(吨)运费总额(欧元)DlCl公路1250600DlC2公路1450700D2C2铁路1240480D3C2公路935315
5、D3C3铁路435140D4C3铁路1035350总计245这个表格描述了最优方案:从仓库DI通过公路将50吨运往回收中心Cl,再从Dl通过公路将剩余的50吨运往回收中心C2,从仓库D2通过铁路将40吨运往回收中心C2,从仓库D3通过公路将35吨运往回收中心C2,再从D3通过铁路将35吨运往回收中心C3,最后从仓库D4通过铁路将剩余的35吨运往回收中心C3o利用Matlab%定义各个仓库的存储量warehouse_capacity=50,40,35,65;%定义各个仓库到回收中心的运费矩阵%行表示仓库,列表示回收中心,值表示运费transport_cost=Int12zInf;%从仓库D2到C
6、lzC2,C3的运费9,4,5;%从仓库D3到Cl,C2,C3的运费Inf,11,10%从仓库D4到Cl,C2,C3的运费1;%设置每次运输的最小和最大量min_transport=10;max_transport=50;%初始化总运输费用total_cost=0;%遍历每个仓库fori=lzsize(transport-cost,1)%遍历每个回收中心forj=lzsize(transport-cost,2)%如果运费不为无穷大,表示可以运输iftransport-cost(izj)=Inf%计算从仓库i到回收中心j的最大可运输量max_shipment=min(warehouse_capa
7、city(i),ma-transport);%计算从仓库i到回收中心j的实际运输量shipment=min(max_shipment,180);%计算运输费用并累加到总费用total_cost=total_cost+transport-cost(izj)*shipment;%减去已经运输的量warehouse_capacity(i)=warehouse_capacity(i)-shipment;%更新剩余需要运输的量remaining=180-shipment;%如果剩余需要运输的量为0,结束循环ifremaining=0break;endendendenddisp(总运输费用为:,num2s
8、tr(total-cost)z,欧元,);这段代码首先定义了仓库的存储量和仓库到回收中心的运费矩阵。然后,它遍历了每个仓库和每个回收中心,找到每次运输的最大量,并计算了运输费用。最后,它输出了总运输费用。运行结果为总运输费用为:2230欧元例题2石油精炼厂将使用两种原油生产出丁烷(butane),汽油(PetroI),柴油(dieseoil),以及民用燃料油(heatingoi)。为生产出这些产品,需要四道工序:分离,转化,提纯,和混合。在分离工序中将把原材料进行分储,使其分离为丁烷(butane),石脑油(aphtha),轻柴油(gasoi),以及残渣。残渣然后将进行化裂解以获得较轻的产品。
9、从分储工序得到的各种产品将进行提纯(脱硫),或通过重整工艺增加其辛烷值。最终,为获得可以出售的最终产品,精练厂需要将若干种中间产物进行混合,以满足商业产品所要求的各种属性。下图中是对此精练厂的生产过程的简单的示意。在分储之后,原油1能够得到3%的丁烷,15%的石脑油,40%的轻柴油,以及15%的残渣。原油2能够得到5%的丁烷,20%的石脑油,25%的轻柴油,以及10%的残渣。对石脑油进行重整能够得到15%的丁烷和85%的重整油(重整石脑油)。对残渣的催化裂解可以生成45%的裂解石脑油和35%的裂解轻柴油(注意,由于在此工艺中也将生成15%的气体和5%的石油焦以及其他另一种无法计入我们的例子中的
10、残余物,因此这两个百分比之和不等于1)。汽油由三种成分混合而成:重组石脑油(重组油),丁烷,以及裂解石脑油。柴油可以通过将脱硫轻柴油,裂解轻柴油,以及裂解石脑油混合得到。民用燃料油由轻柴油及裂解石脑油组成,对其成分含量没有要求。n.2.石油修他化源国法律规定了一些汽油和柴油的规格指标。对于汽油有三项重要指标:辛烷值,蒸汽压,以及挥发性。辛烷值是对汽油的抗爆能力的度量。蒸汽压能够反映出汽油储存过程中发生爆炸的风险,尤其在炎热气候条件下。挥发性能够决定在寒冷气候条件下发动机是否能够容易启动。空气污染法规对柴油的含硫量进行了规定。下面的表格中列出了最终产品的规格指标和中间产品的成分组成。如果对某一项
11、没有限制,则对应域保留为空。我们假定所有这些成分都将按照质量线性混合(实际上只有含硫量才如此)。表格6.7.中间产物和终产品规格性规格丁烷K筌油裂解石Ml油裳解轻柴油去硫轻柴油汽油柴油辛分值12010074一=94一汽压602.64.1-三17一一0.120.760.03=0.05下个月此精炼厂需要生产20,000吨丁烷,40,000吨汽油,30.000吨柴油,42,000吨燃料油。可用原油分别为250,000吨原油1,500,000吨原油2。重整炉每月加工能力为30,000吨,脱工艺每月加工能力为40,000吨,裂解工艺每月加工能力为50,000吨。各个工艺的成本取决于其中使用的燃料和催化剂
12、。整流,重整,脱,和裂解的成本分别为每吨2.10,4.18,2.04,0.60欧元问题:确定各个产品的使用量,使总成本最小。Matlab代码:%原料价格COSt=2.10;2.10;4.18;2.04;0.60;%产品需求demand=20000;40000;30000;42000;%原料库存supply=250000;500000;%生产能力capacity=30000;40000;50000;%系数矩阵Aeq=1,1,0,0,0;%丁烷0,0,1,0,0;%重整丁烷0,0,0,1,0;%裂解石脑油0,0,0,Oz1;%裂解轻柴油;beq=demand;A=(I1O;%原油10,1;%原油2
13、;b=supply;Ib=zeros(5,1);%所有产量非负tfvalzexitflag,output=linprog(cost,Aeqzbeq,lb,口,口,optimset(Displayiter,);这个脚本首先定义了成本、需求、供应和生产能力等参数。然后,它设置了线性规划问题的约束条件和目标函数,并调用了Iinprog函数来求解线性规划问题。最后,它输出了最优解X、最优值fvak退出标志exitflag和输出信息outputo运行结果为:Optimizationcompletedbecausetheobjectivefunctionisnon-decreasinginfeasible
14、directions,towithinthevalueoftheoptimalitytolerance,andconstraintsaresatisfiedtowithinthevalueoftheconstrainttolerance.x=1.0e+04*1.43941.56062.00001.96000.0000fval=1.6549e+05exitflag=1output=structwithfields:iterations:5algorithm:,interior-point-legacy,message:Optimizationterminated:averagechangeintheobjectivefunctionvalueatthefinalthreeiterationsislessthanoptions.TolFun.,Constrviolation:Ostepsize:5.4545e-05Issteplength:1:最优解向量,表示每种产品的最优生产数量。fval:目标函数的最优值,即总成本的最小值。exitflag:退出标志,值为1表示优化成功。output:包含有关优化过程的其他信息,如迭代次数、算法、消息等。最优解向量X表示丁烷、石脑油、轻柴油、残渣和重整丁烷的最优生产数量分别为1.0e