救灾物资调运最优化问题_第1页
救灾物资调运最优化问题_第2页
救灾物资调运最优化问题_第3页
救灾物资调运最优化问题_第4页
救灾物资调运最优化问题_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/论文题目:救灾物资调运问题救灾物资调运问题摘要本题将救灾物资调运问题转化为求最短最优路径问题。在附件2的图中,将每个点看作图中的一个顶点,各点之间的公路看作图中对应节点相连的边,各条公路的长度与运输单价的乘积的值看作对应边的权,所给网就转化为加权网络图,所求问题就转化为图论问题。根据Dijkstra算法,利用Matlab编程求出各企业、储备库到各发放点的最小费用路径及最小费用值。依次得出从企业1调物资到发放点1—8;从企业2调物资到发放点1—8;从企业3调物资到发放点1-8;储备库1,2到发放点1—8的各个最短最优路径。求出最优路径后,考虑时间第一位,计算出最短调运时间为8天,再以调运物资的花费最少为目标函数,附件1中的各个条件为约束条件,利用线性规划方法,,利用LINGO软件求得结果,得到最佳调运方案。即:企业1往发放点2调运140百件,往发放点5调运300百件;企业2往发放点1调运300百件;企业3往发放点8调运240百件;储备库1往发放点2调运410百件,往发放点4调运320百件,往发放点6调运260百件;储备库2往发放点1调运160百件,往发放点3调运280百件,往发放点7调运470百件,往发放点8调运290百件.运费为元,最优运输路线见第一问的解答。再根据目标函数,把天数改为20天,修改约束条件,利用LINGO软件求得结果,得到最优调运方案。即:企业1往发放点2调运480百件,往发放点5调运440百件;企业2往发放点1调运660百件;企业3往发放点3调运280百件,往发放点8调运200百件;储备库1往发放点2调运370百件,往发放点4调运370百件,往发放点6调运260百件;储备库2往发放点1调运100百件,往发放点7调运570百件,往发放点8调运530百件。运费为元,最优运输路线见第二问的解答。经过计算25天各企业的产量,无法满足各发放点的实际需求。给出的解决方案是让企业增产,增设三个企业日产量为变量,增加约束条件,利用LINGO软件求得结果,得到解决方案和最优调运方案。解决方案为企业3的日产量增至40.4百件。运费为元,调运方案见第三问的解答。当灾害发生时,发生部分交通线路中断,故不能沿用原来的模型,需重新计算最优路径,但基本思想不变。再根据原有的细想及算法得出最优路线。具体调运方案见第四问的解答.最后按照就近原则提出分区模型,对模型进行简化,并根据实际情况,做出针对性建议。关键词:物资调运线性规划最短路问题重述我国地域辽阔,自然灾害频频发生,给国家和人民财产带来重大损失,建立应急预案是各级政府的一项重要工作。应急预案的一项重要内容是在灾害发生时应急物质的运输调度方案的制定。在某地区有生产某种救灾物质的企业有三家,设置物资发放点八个,储备仓库两个.在灾害发生时,已知企业、各物资发放地点、储备仓库的库存情况,及各发放点的最低需求和实际需求情况,还有企业、发放点、仓库及道路分布情况.设该种物资的运输成本为高等级公路20元/公里•百件,普通公路12元/公里•百件。研究以下问题:(1)预案要求尽快满足各发放点对救灾物质的最低需求,并尽量使运输成本降低。建立数学模型,给出所需要的时间,物资的调运方案,包括调运量和调运路线.(2)在20天内,按均衡配给的原则,各发放点可以得到多少物资?给出相应的调运方案。(3)能否在25天内满足各发放点的实际需求?怎样才能满足各发放点的实际需求?并给出相应的调运方案。31,927,2623,25,11--14--(4)在灾害发生时可能造成交通中断,以中断路段:31,927,2623,25,11--14--为例,重新讨论上述三个问题。二、问题分析1。根据题目及附件2的数据信息加以分析,把曲线图转化为理想的纯数学图,每公里每百件的运费和路程数相乘的结果构成每条边上的权数,根据图论知识,将问题转化为最短路问题。第一问:要求尽快满足发放点对物资的最低需求,并且尽量使运输成本降低.这就有两个目标,一是时间最短,二是运费成本低,显然这两个目标是不能同时达到的.考虑到在灾害来临时,时间是第一位的,国家及各部门也会先考虑第一时间满足灾区人们的最低需求,再考虑运费成本问题,所以先考虑在满足最短时间满足各发放点最低需求的前提下,再考虑使运费最小的运输方案,这是一个线性规划问题。此外,为处理方便,将储备库看成没有生产能力的企业,这样储备库1和储备库2可分别看成企业4和企业5.2。第二问:求20天后各发放点收到物资的情况以及最佳运输方案,同样是线性规划的问题,让模型中的t=20,再对约束条件稍作修改,使“库存+生产=发放”,得出最优答案.3.第三问:25天之内能否满足各发放点的实际需求,经过计算25天各企业的生产量、所有库存量之和,与各发放点的实际需求总量进行比较,并没有达到需求。解决办法是让企业增产,使之满足各发放点的最高需求,再用线性规划模型求解最佳运输方案。4.第四问:假设指定路段中断后,以上所建立模型是否可用。对于该问题,只需要检验前面建立的模型中所得出的调运路线是否经过该路段,如果不经过,说明这些中断路线对我们的模型没有影响。如果有影响,可以将路段中断后的图采用第一步相同的处理程序重新进行计算,分别求解出最佳运输方案。三、基本假设1.假设道路的运输能力足够大,没有运输限制;2.假设企业的仓库和储备仓库的库存能力无限大;3.不考虑各点间的调运时间长短,假设物资调运瞬时到达;4.假设调运过程中没有衍生灾害,各个路段道路畅通,即调运过程不受阻;除第四问已知中断路径外,其他路径均不受影响.四、符号说明SKIPIF1〈0:企业SKIPIF1<0调往发放点SKIPIF1<0的货物量,单位为百件SKIPIF1〈0:货物从企业SKIPIF1<0到发放点SKIPIF1<0所经过路段的每百件费用之和,单位为元/百件SKIPIF1〈0:企业SKIPIF1〈0的库存货物量,单位为百件SKIPIF1〈0:企业SKIPIF1〈0的日产量,单位为百件,其中SKIPIF1〈0=SKIPIF1〈0=0SKIPIF1<0:发放点SKIPIF1<0的最低需求,单位为百件SKIPIF1〈0:发放点SKIPIF1<0的最高需求,单位为百件SKIPIF1〈0:发放点SKIPIF1<0原来的库存,单位为百件SKIPIF1<0:公路区间调运每百件货物的运费,单位为元/百件SKIPIF1〈0:公路区间调运货物每公里每百件的运费,高等级公路为20元/公里•百件,普通公路为12元/公里•百件SKIPIF1<0:公路区间距离,单位为公里SKIPIF1<0:生产的天数,单位为天SKIPIF1<0=1,2,3,4,5;SKIPIF1〈0=1,2,3,4,5,6,,7,8五、模型的建立与求解5。1预处理将各个节点以及节点间的公路分别用点和直线表示,抽象成纯数学的图形,形成一个连通的无向图,记为SKIPIF1<0。由于假设各点间的物资瞬时调运,故不关心各点间的路程长短,而是关心各点间的运费多少,所以将距离和每公里每百件的运费相乘得到该段公路上调运每百件货物的运费,即SKIPIF1<0将SKIPIF1<0作为各段公路上的权数,则题目附件2的生产企业,发放地点及储备库分布图就转化成如下的赋权图。5.2模型的建立由于灾害发生后时间的紧迫性,要在第一时间将货物调运到发放点,故只考虑企业SKIPIF1<0发放点、储备库SKIPIF1〈0发放点之间的调运,不考虑企业SKIPIF1<0储备库之间的调运。要使运费最小,可以建立线性规划模型。设SKIPIF1<0为企业SKIPIF1〈0调往发放点SKIPIF1〈0的货物量,SKIPIF1〈0为货物从企业SKIPIF1<0到发放点SKIPIF1<0所经过路段的每百件费用之和,SKIPIF1<0所有运输费用的和,假设经过SKIPIF1<0天.目标是使所有运输费用最小,故目标函数为:SKIPIF1<0对于企业的运量有约束,从企业运出去的货物量不能大于该企业的储存量和产量之和,即SKIPIF1<0,SKIPIF1〈0=1,2,3,4,5;(1)对各发放点也有约束条件,运到每个发放点的货物量应大于或等于它们的最低需求,小于或等于它们的最高需求,即SKIPIF1<0,SKIPIF1<0=1,2,3,4,5,6,,7,8;(2)还有各调运量的非负约束,即SKIPIF1〈0,SKIPIF1<0=1,2,3,4,5;SKIPIF1<0=1,2,3,4,5,6,,7,8;5.3模型的求解5.3。1第一问:(1)利用求最短路的算法求各企业到各发放点的单位最少运费SKIPIF1<0这是求上述赋权图上两点间的最短路问题,将上述赋权图中第SKIPIF1〈0个顶点到第SKIPIF1〈0个顶点之间的权数写在矩阵的第SKIPIF1<0行第SKIPIF1<0列的位置上,对应成一个权数矩阵。利用Dijkstra算法对赋权图求最短路。Dijkstra算法是一种标号法,它的基本思想是从起点SKIPIF1<0出发,逐步向外探寻最短路,执行过程中,给每一个顶点SKIPIF1〈0标号SKIPIF1〈0,其中SKIPIF1<0是正整数,表示获得此标号的前一点的下标;SKIPIF1〈0或表示起点到该点的最短路的权(记为P标号),或表示从起点到该点的最短路的权的上界(记为T标号)。方法的每一步是去修改T标号,并且把某一个具有T标号的点改变为具有P标号的点,从而使G中具有P标号的顶点数多一个.这样经过至多p-1步,就可以求得从起点到各点的最短路,再根据每个点标号的第一个数SKIPIF1〈0反向追踪找出最短路。编写Dijkstra算法的程序(源程序见附录1),在Matlab中实现,得到结果,整理出各个企业到各发放点的最小运费单价如下表所示:各业到各发放点的最小单位运费表(单位:元/百件)发放1发放2发放3发放4发放5发放6发放7发放8企业118481500408023041560344425683720企业26961884367218962472303614163312企业32688398414769004044174019681116储备122721980288011042040224421602520储备21464342021001524400826767441740(2)求时间SKIPIF1<0由于不考虑各点间的运输时间,故尽快达到各发放点最低需求的时间限制就是各企业的生产时间,要使这个时间最短,则所有的库存就要都被充分利用,这样需要生产的帐篷才会最少,生产时间也就最短。从这一原则出发,我们计算最短时间。由题目中附件1的数据可得:发放点的最低需求总和=500+600+300+350+400+300+500+600=3550;所有库存量=120+60+80+40+50+20+30+100+40+30+70+1000+1200=2840;故需要企业耗时间生产的帐篷数量=3550—2840=710三企业每天的总日产量=40+30+20=90最小天数=710/90=7.9因为天数取整数,所以取最小时间SKIPIF1〈0=8。(3)运输方案的求解将上面求出来的各企业到各发放点的单位最少运费SKIPIF1〈0和最小时间SKIPIF1<0,还有题目附件1中的已知数据代入模型,编写Lingo程序,利用Lingo求解(源程序和运行结果见附录2),得到最优值为元;最优解为:SKIPIF1〈0;SKIPIF1<0;SKIPIF1<0;SKIPIF1〈0SKIPIF1<0;SKIPIF1<0;SKIPIF1〈0SKIPIF1<0;SKIPIF1<0;SKIPIF1〈0;SKIPIF1<0运输方案如下:第一问运量表(单位:百件)发放1发放2发放3发放4发放5发放6发放7发放8企业1140300企业2300企业3240储备1410320260储备2160280470290运输路线如下:企业1SKIPIF1<0eq\o\ac(○,26)SKIPIF1〈0eq\o\ac(○,19)SKIPIF1〈0eq\o\ac(○,18)SKIPIF1<0发放点2;企业1SKIPIF1〈0eq\o\ac(○,20)SKIPIF1<0发放点5;企业2SKIPIF1<0eq\o\ac(○,42)SKIPIF1<0发放点1;企业2SKIPIF1〈0eq\o\ac(○,42)SKIPIF1<0eq\o\ac(○,28)SKIPIF1<0发放点7;企业3SKIPIF1〈0eq\o\ac(○,32)SKIPIF1<0发放3;企业3SKIPIF1〈0eq\o\ac(○,32)SKIPIF1<0发放4;企业3SKIPIF1<0eq\o\ac(○,1)SKIPIF1<0eq\o\ac(○,33)SKIPIF1<0发放6;企业3SKIPIF1〈0eq\o\ac(○,32)SKIPIF1〈0发放8;储备1SKIPIF1〈0eq\o\ac(○,26)SKIPIF1〈0eq\o\ac(○,19)SKIPIF1〈0eq\o\ac(○,18)SKIPIF1<0发放2;储备1SKIPIF1<0eq\o\ac(○,9)SKIPIF1〈0发放4;储备1SKIPIF1<0eq\o\ac(○,26)SKIPIF1〈0eq\o\ac(○,19)SKIPIF1<0发放5;储备1SKIPIF1〈0eq\o\ac(○,9)SKIPIF1<0eq\o\ac(○,2)SKIPIF1〈0eq\o\ac(○,3)SKIPIF1〈0发放6;储备2SKIPIF1〈0eq\o\ac(○,29)SKIPIF1<0发放1;储备2SKIPIF1<0eq\o\ac(○,39)SKIPIF1〈0eq\o\ac(○,32)SKIPIF1<0发放点3;储备2SKIPIF1<0发放点7;eq\o\ac(○,1)储备2SKIPIF1<0eq\o\ac(○,39)SKIPIF1〈0eq\o\ac(○,32)SKIPIF1〈0发放点85.3。2第二问此问中t=20,由第一问可看出生产8天就可以满足各发放点的最低需求,现在生产20天,肯定能满足各发放点的最低需求,如果还采用上题的模型,目标是运费最少,货物越少运费就越少,那在上题的约束条件下求出来的解肯定是满足最低需求的最少运量,这让各发放点仅仅达到最低需求,而各企业还有库存不向发放点调配,这不符合实际。为了克服这个问题,让各企业在发放点没有达到实际需求时有库存就都要往发放点调运。根据这个原则,修改约束条件(1),将小于或等于改成等于,即SKIPIF1〈0;SKIPIF1<0=1,2,3,4,5;同时修改Lingo程序,利用Lingo10.0重新求解(源程序和运行结果见附录3),得到最优值为元;最优解为:SKIPIF1<0;SKIPIF1<0;SKIPIF1<0;SKIPIF1<0;SKIPIF1<0SKIPIF1<0;SKIPIF1〈0;SKIPIF1<0SKIPIF1<0;SKIPIF1<0;SKIPIF1<0最优调运方案如下:第二问运量表(单位:百件)发放1发放2发放3发放4发放5发放6发放7发放8企业1480440企业2660企业3280200储备1370370260储备2100570530运输路线:企业1SKIPIF1〈0eq\o\ac(○,26)SKIPIF1<0eq\o\ac(○,19)SKIPIF1〈0eq\o\ac(○,18)SKIPIF1<0发放点2;企业1SKIPIF1<0eq\o\ac(○,20)SKIPIF1<0发放点5;企业2SKIPIF1<0eq\o\ac(○,42)SKIPIF1〈0发放点1;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1〈0发放3;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1〈0发放8;储备1SKIPIF1〈0eq\o\ac(○,26)SKIPIF1<0eq\o\ac(○,19)SKIPIF1<0eq\o\ac(○,18)SKIPIF1<0发放2;储备1SKIPIF1〈0eq\o\ac(○,9)SKIPIF1<0发放4;储备1SKIPIF1<0eq\o\ac(○,9)SKIPIF1〈0eq\o\ac(○,2)SKIPIF1〈0eq\o\ac(○,3)SKIPIF1〈0发放6;储备2SKIPIF1〈0eq\o\ac(○,29)SKIPIF1〈0发放1;储备2SKIPIF1〈0发放点7;eq\o\ac(○,1)储备2SKIPIF1<0eq\o\ac(○,39)SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点85.3.3第三问问题三研究的是能否在25天内满足各发放点的实际需求,通过计算,25天各企业生产总量=90*25=2250各发放点总的实际需求=800+900+600+400+1000+500+600+800=5600总储备量=2840总产量+总储备量=2250+2840=5090<5600故25天之内是满足不了各发放点的实际需求的。解决的办法可以让企业增产。设增产后企业1、2、3的产量分别为x、y、z,增加约束条件SKIPIF1<0;SKIPIF1〈0;SKIPIF1〈0;将约束条件(2)改成SKIPIF1<0,SKIPIF1<0=1,2,3,4,5,6,,7,8;重新编写Lingo程序,利用Lingo求解(源程序和运行结果见附录4),得到解决方案为让企业3增产,日产量由原来的20百件增加到40.4百件,得到最优值为元;最优解为:x=40;y=30;z=40。4;SKIPIF1<0;SKIPIF1〈0;SKIPIF1〈0;SKIPIF1〈0;SKIPIF1<0;SKIPIF1<0;SKIPIF1〈0SKIPIF1<0;SKIPIF1<0;SKIPIF1<0SKIPIF1<0;SKIPIF1<0;最优运输方案为:第三问运量表(单位:百件)发放1发放2发放3发放4发放5发放6发放7发放8企业1800320企业276050企业3580410100储备137058050储备2570630运输路线:企业1SKIPIF1〈0eq\o\ac(○,26)SKIPIF1<0eq\o\ac(○,19)SKIPIF1<0eq\o\ac(○,18)SKIPIF1<0发放点2;企业1SKIPIF1<0eq\o\ac(○,20)SKIPIF1<0发放点5;企业2SKIPIF1〈0eq\o\ac(○,42)SKIPIF1〈0发放点1;企业2SKIPIF1<0eq\o\ac(○,42)SKIPIF1〈0eq\o\ac(○,15)SKIPIF1〈0eq\o\ac(○,18)SKIPIF1〈0发放点2;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放3;企业3SKIPIF1〈0eq\o\ac(○,1)SKIPIF1<0eq\o\ac(○,33)SKIPIF1<0发放6;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放8;储备1SKIPIF1〈0eq\o\ac(○,9)SKIPIF1〈0发放4;储备1SKIPIF1<0eq\o\ac(○,26)SKIPIF1<0eq\o\ac(○,19)SKIPIF1<0发放5;储备1SKIPIF1<0eq\o\ac(○,9)SKIPIF1<0eq\o\ac(○,2)SKIPIF1<0eq\o\ac(○,3)SKIPIF1<0发放6;储备2SKIPIF1〈0发放点7;eq\o\ac(○,1)储备2SKIPIF1<0eq\o\ac(○,39)SKIPIF1<0eq\o\ac(○,32)SKIPIF1〈0发放点85。3。4第四问31,927,2623,25,11--14--第四问考虑的是灾害发生时可能造成交通中断,以下四段路段交通中断:31,927,2623,25,11--14--前三问中只涉及到了eq\o\ac(○,26)到eq\o\ac(○,27)、eq\o\ac(○,9)到eq\o\ac(○,31)这两段路中断,其余的路都没有中断,而其余两条中断的路前面的方案中也不经过。考虑中断的两条运输路线:储备1SKIPIF1<0eq\o\ac(○,26)SKIPIF1<0eq\o\ac(○,19)SKIPIF1〈0发放5;储备1SKIPIF1<0eq\o\ac(○,9)SKIPIF1〈0发放4;找储备1到发放5,储备1到发放4的次最短路,发现和原来相差很大,即找的新路线运费和原来相差很大,这可能会引起运输方案的改变,如果继续用原方案计算的话,误差将会很大,所以考虑修改权数矩阵,重新计算前三问。重新修改Lingo程序,利用Lingo求解,第一问的源程序和运行结果见附录5,第二问的源程序和运行结果附录6,第三问的源程序和运行结果附录7,得到如下运输方案.第一问答案:最少运费:元运量表(单位:百件)发放1发放2发放3发放4发放5发放6发放7发放8企业1440企业2300企业3240储备1160110300260160储备228080310530运输路线:企业1SKIPIF1〈0eq\o\ac(○,26)SKIPIF1〈0eq\o\ac(○,19)SKIPIF1<0eq\o\ac(○,18)SKIPIF1<0发放点2;企业2SKIPIF1<0eq\o\ac(○,42)SKIPIF1<0发放点1;企业2SKIPIF1〈0eq\o\ac(○,42)SKIPIF1<0eq\o\ac(○,28)SKIPIF1〈0发放点7;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1〈0发放4;企业3SKIPIF1〈0eq\o\ac(○,1)SKIPIF1<0eq\o\ac(○,33)SKIPIF1<0发放点6;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点8;储备1SKIPIF1<0eq\o\ac(○,40)SKIPIF1<0eq\o\ac(○,6)SKIPIF1<0eq\o\ac(○,41)SKIPIF1〈0eq\o\ac(○,42)SKIPIF1<0发放点1;储备1SKIPIF1〈0eq\o\ac(○,26)SKIPIF1<0eq\o\ac(○,19)SKIPIF1〈0eq\o\ac(○,18)SKIPIF1〈0发放点2;储备1SKIPIF1<0eq\o\ac(○,26)SKIPIF1〈0eq\o\ac(○,19)SKIPIF1〈0发放点5;储备1SKIPIF1〈0eq\o\ac(○,9)SKIPIF1〈0eq\o\ac(○,2)SKIPIF1<0eq\o\ac(○,3)SKIPIF1<0发放点6;储备1SKIPIF1<0eq\o\ac(○,40)SKIPIF1<0eq\o\ac(○,6)SKIPIF1<0eq\o\ac(○,4)SKIPIF1<0发放点7;储备2SKIPIF1<0eq\o\ac(○,39)SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点3;储备2SKIPIF1<0eq\o\ac(○,39)SKIPIF1<0eq\o\ac(○,32)SKIPIF1〈0发放点4;储备2SKIPIF1<0发放点7;eq\o\ac(○,1)储备2SKIPIF1〈0eq\o\ac(○,39)SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点8第二问答案:最少运费:元运量表(单位:百件)发放1发放2发放3发放4发放5发放6发放7发放8企业185070企业2660企业3160320储备110042046020储备2120550530运输路线:企业1SKIPIF1<0eq\o\ac(○,26)SKIPIF1<0eq\o\ac(○,19)SKIPIF1〈0eq\o\ac(○,18)SKIPIF1〈0发放点2;企业1SKIPIF1〈0eq\o\ac(○,20)SKIPIF1<0发放点5;企业2SKIPIF1<0eq\o\ac(○,42)SKIPIF1〈0发放点1;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1〈0发放点3;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点4;储备1SKIPIF1〈0eq\o\ac(○,40)SKIPIF1<0eq\o\ac(○,6)SKIPIF1〈0eq\o\ac(○,41)SKIPIF1<0eq\o\ac(○,42)SKIPIF1<0发放点1;储备1SKIPIF1<0eq\o\ac(○,26)SKIPIF1<0eq\o\ac(○,19)SKIPIF1<0发放点5;储备1SKIPIF1<0eq\o\ac(○,9)SKIPIF1<0eq\o\ac(○,2)SKIPIF1〈0eq\o\ac(○,3)SKIPIF1<0发放点6;储备1SKIPIF1〈0eq\o\ac(○,40)SKIPIF1<0eq\o\ac(○,6)SKIPIF1〈0eq\o\ac(○,4)SKIPIF1〈0发放点7;储备2SKIPIF1<0eq\o\ac(○,39)SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点3;储备2SKIPIF1〈0发放点7;eq\o\ac(○,1)储备2SKIPIF1〈0eq\o\ac(○,39)SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点8第三问答案:最少运费:元运量表(单位:百件)发放1发放2发放3发放4发放5发放6发放7发放8企业1800360企业276050企业3370680储备1540460储备258057050运输路线:企业1SKIPIF1<0eq\o\ac(○,26)SKIPIF1〈0eq\o\ac(○,19)SKIPIF1<0eq\o\ac(○,18)SKIPIF1<0发放点2;企业1SKIPIF1<0eq\o\ac(○,20)SKIPIF1〈0发放点5;企业2SKIPIF1<0eq\o\ac(○,42)SKIPIF1〈0发放点1;企业2SKIPIF1<0eq\o\ac(○,42)SKIPIF1<0eq\o\ac(○,15)SKIPIF1〈0eq\o\ac(○,18)SKIPIF1〈0发放点2企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点4;企业3SKIPIF1<0eq\o\ac(○,32)SKIPIF1<0发放点8;储备1SKIPIF1<0eq\o\ac(○,26)SKIPIF1〈0eq\o\ac(○,19)SKIPIF1<0发放点5;储备1SKIPIF1<0eq\o\ac(○,9)SKIPIF1<0eq\o\ac(○,2)SKIPIF1〈0eq\o\ac(○,3)SKIPIF1<0发放点6;储备2SKIPIF1<0eq\o\ac(○,39)SKIPIF1〈0eq\o\ac(○,32)SKIPIF1<0发放点3;储备2SKIPIF1<0发放点7;eq\o\ac(○,1)储备2SKIPIF1〈0eq\o\ac(○,39)SKIPIF1<0eq\o\ac(○,32)SKIPIF1〈0发放点8六、模型改进与分析6.1模型的改进观察生产企业,发放地点及储备库分布图,可看出有些企业与发放点之间的距离很远运费也很贵,在实际情况中要求尽快和尽量少的运费,也不会从这些企业调运货物到离它很远的发放点。所以我们考虑根据就近原则,对各发放点和企业区域划分。分区原则:按照权数图中各发放点到各企业的最少运费相比较,离哪个企业的运费最少就把该发放点归到那个企业所在区,这样可以按企业所在地将发放点分成三个区;同理,可以按储备库将发放点分成两个区。分区结果:企业1企业1发放点2、5企业2企业3储备库4储备库5发放点1、7发放点3、4、6、8发放点2、4、5、6发放点1、3、7、8分完区以后,就认为每个发放点的物资只从同一区的企业或储备库调运,每个企业或储备库之调运货物到同一个区的发放点,即物资调运只发生在同一个区的企业或储备库到发放点之间。这样就可以减少所设的变量,减少运算量,从而达到简化模型的目的。仅设SKIPIF1〈0,SKIPIF1<0,SKIPIF1〈0,SKIPIF1<0等16个变量,比原来的40个变量减少了一半以上,根据所设变量,以第一问为例,编写Lingo程序(第一问的源程序和运行结果见附录8),利用Lingo求解,结果与第一问相同,区域划分效果很好。6.2模型的分析利用图论有关知识把复杂的交通路线图简化为带权图,再根据权的大小及Dijkstra算法求得两点的最短路径,即为调运路线,既有理论依据,又符合实际要求.假设企业与储备库之间没有调运,可能忽略了其它的调运路线,使得调运方案具有局限性,从而使总路费存在误差。考虑在调运过程中与时间无关的情况,但是在实际情况中,如果遇到紧急情况时,可能使得救灾物资短缺或者路段损毁,从而被迫改变调运路线,导致运费改变。七、意见和建议在对救灾物资的调运方案的优化问题的研究过程中,我们发现了应对灾害的紧急调运物资的一些可行的措施,故在此给出建议。增加物资的战略储备。灾害的发生属于突发事件,准确预测灾害的发生比较困难,所以增加战略储备,有助于政府能够及时应对灾害的发生。合理布局储备库的分布。合理的储备库分布可以减少物资的运输时间,提高其运输效率.提倡直线运输。按照实际情况选择最短的运输路线,避免物资的迂回倒流等不合理现象,减少运输的中间环节。开辟绿色通道保证物资运输的畅通.参考文献:[1]邓成梁《运筹学的原理和方法》华中科技大学出版社2001年版[2]朱道元《数学建模案例精选》科学出版社2003年版[3]湖北大学生建模竞赛专家组《数学建模》华中科技大学出版社2006年版[4]王国丰《粮食应急运输调度问题研究》河南工业大学学报2008年3月版[5]袁新生《lingo和excel在数学建模中的应用》科学出版社2007年版附录:附录1:Dijkstra算法求最短路源程序W=[……]%W为的权数矩阵n=size(W,1);for(i=1:n)l(i)=W(1,i);z(i)=1;endfor(i=1:n)for(j=1:n)if(l(i)〉l(j)+W(j,i))l(i)=l(j)+W(j,i);z(i)=j;end;end;endlz附录2:第一问Lingo程序方法1:model:!5发点8收点运输问题;sets:warehouses/wh1。。wh5/:capacity;vendors/v1。.v8/:demand;links(warehouses,vendors):cost,volume;endsets!目标函数;min=@sum(links:cost*volume);!需求约束;@for(vendors(J):@sum(warehouses(I):volume(I,J))>=demand(J));!产量约束;@for(warehouses(I):@sum(vendors(J):volume(I,J))〈=capacity(I));!这里是数据;data:capacity=44030024010001200;demand=460550280320300260470530;cost=1848150040802304156034442568372069618843672189624723036141633122688398414769004044174019681116227219802880110420402244216025201464342021001524400826767441740;enddataend方法2:min=1848*x11+1500*x12+4080*x13+2304*x14+1560*x15+3444*x16+2568*x17+3720*x18+696*x21+1884*x22+3672*x23+1896*x24+2472*x25+3036*x26+1416*x27+3312*x28+2688*x31+3984*x32+1476*x33+900*x34+4044*x35+1740*x36+1968*x37+1116*x38+2272*x41+1980*x42+2880*x43+1104*x44+2040*x45+2244*x46+2160*x47+2520*x48+1464*x51+3420*x52+2100*x53+1524*x54+4008*x55+2964*x56+744*x57+1740*x58;t=8;x11+x12+x13+x14+x15+x16+x17+x18<=120+40*t;x21+x22+x23+x24+x25+x26+x27+x28〈=60+30*t;x31+x32+x33+x34+x35+x36+x37+x38〈=80+20*t;x41+x42+x43+x44+x45+x46+x47+x48〈=1000;x51+x52+x53+x54+x55+x56+x57+x58<=1200;x11+x21+x31+x41+x51〉=500-40;x12+x22+x32+x42+x52>=600-50;x13+x23+x33+x43+x53>=300-20;x14+x24+x34+x44+x54>=350—30;x15+x25+x35+x45+x55〉=400-100;x16+x26+x36+x46+x56>=300-40;x17+x27+x37+x47+x57〉=500-30;x18+x28+x38+x48+x58〉=600-70;x11+x21+x31+x41+x51<=800-40;x12+x22+x32+x42+x52<=900-50;x13+x23+x33+x43+x53〈=600-20;x14+x24+x34+x44+x54〈=400—30;x15+x25+x35+x45+x55<=1000—100;x16+x26+x36+x46+x56<=500-40;x17+x27+x37+x47+x57<=600—30;x18+x28+x38+x48+x58<=800-70;运行结果:附录3:第二问Lingo程序min=1848*x11+1500*x12+4080*x13+2304*x14+1560*x15+3444*x16+2568*x17+3720*x18+696*x21+1884*x22+3672*x23+1896*x24+2472*x25+3036*x26+1416*x27+3312*x28+2688*x31+3984*x32+1476*x33+900*x34+4044*x35+1740*x36+1968*x37+1116*x38+2272*x41+1980*x42+2880*x43+1104*x44+2040*x45+2244*x46+2160*x47+2520*x48+1464*x51+3420*x52+2100*x53+1524*x54+4008*x55+2964*x56+744*x57+1740*x58;t=20;x11+x12+x13+x14+x15+x16+x17+x18=120+40*t;x21+x22+x23+x24+x25+x26+x27+x28=60+30*t;x31+x32+x33+x34+x35+x36+x37+x38=80+20*t;x41+x42+x43+x44+x45+x46+x47+x48=1000;x51+x52+x53+x54+x55+x56+x57+x58=1200;x11+x21+x31+x41+x51〉=500-40;x12+x22+x32+x42+x52>=600-50;x13+x23+x33+x43+x53>=300-20;x14+x24+x34+x44+x54〉=350-30;x15+x25+x35+x45+x55〉=400-100;x16+x26+x36+x46+x56>=300—40;x17+x27+x37+x47+x57〉=500—30;x18+x28+x38+x48+x58>=600-70;x11+x21+x31+x41+x51<=800-40;x12+x22+x32+x42+x52<=900-50;x13+x23+x33+x43+x53〈=600-20;x14+x24+x34+x44+x54<=400-30;x15+x25+x35+x45+x55〈=1000—100;x16+x26+x36+x46+x56<=500-40;x17+x27+x37+x47+x57<=600—30;x18+x28+x38+x48+x58<=800-70;运行结果:Globaloptimalsolutionfound。Objectivevalue:5719440。Totalsolveriterations:17VariableValueReducedCostX110.000000564。0000X12480.00000。000000X130.0000002160。000X140.0000001680.000X15440.00000。000000X160。0000001680。000X170.0000002004。000X180。0000002160.000X21660.00000.000000X220.000000972。0000X230.0000002340.000X240.0000001860。000X250.0000001500。000X260.0000001860.000X270。0000001440。000X280.0000002340。000X310.0000001848.000X320.0000002928.000X33280。00000。000000X340.000000720。0000X350.0000002928。000X360.000000420。0000X370.0000001848.000X38200.00000。000000X410。000000508.0000X42370。00000.000000X430。000000480.0000X44370.00000。000000X450.0000000。000000X46260.00000.000000X470.0000001116.000X480。000000480.0000X51100.00000.000000X520.0000001740.000X530.0000000.000000X540.000000720.0000X550.0000002268.000X560.0000001020.000X57570.00000。000000X58530。00000.000000T20。000000。000000附录4:第三问Lingo程序min=1848*x11+1500*x12+4080*x13+2304*x14+1560*x15+3444*x16+2568*x17+3720*x18+696*x21+1884*x22+3672*x23+1896*x24+2472*x25+3036*x26+1416*x27+3312*x28+2688*x31+3984*x32+1476*x33+900*x34+4044*x35+1740*x36+1968*x37+1116*x38+2272*x41+1980*x42+2880*x43+1104*x44+2040*x45+2244*x46+2160*x47+2520*x48+1464*x51+3420*x52+2100*x53+1524*x54+4008*x55+2964*x56+744*x57+1740*x58;t=25;x>=40;y>=30;z〉=20;x11+x12+x13+x14+x15+x16+x17+x18=120+x*t;x21+x22+x23+x24+x25+x26+x27+x28=60+y*t;x31+x32+x33+x34+x35+x36+x37+x38=80+z*t;x41+x42+x43+x44+x45+x46+x47+x48=1000;x51+x52+x53+x54+x55+x56+x57+x58=1200;x11+x21+x31+x41+x51=800—40;x12+x22+x32+x42+x52=900-50;x13+x23+x33+x43+x53=600-20;x14+x24+x34+x44+x54=400-30;x15+x25+x35+x45+x55=1000-100;x16+x26+x36+x46+x56=500-40;x17+x27+x37+x47+x57=600—30;x18+x28+x38+x48+x58=800-70;运行结果:Globaloptimalsolutionfound。Objectivevalue:7227600。Totalsolveriterations:15VariableValueReducedCostX110。0000001536。000X12800.00000.000000X130.0000002580。000X140。0000001680.000X15320。00000.000000X160。0000001680。000X170.0000002424.000X180.0000002580.000X21760.00000。000000X2250.000000。000000X230.0000001788。000X240。000000888。0000X250.000000528.0000X260。000000888.0000X270.000000888。0000X280。0000001788.000X310。0000002400.000X320.0000002508。000X33580.00000.000000X340.000000300.0000X350。0000002508.000X36410.00000。000000X370.0000001848。000X38100.00000.000000X410.0000001480.000X420.0000000.000000X430.000000900.0000X44370。00000。000000X45580。00000.000000X4650.000000.000000X470.0000001536.000X480。000000900。0000X510.000000552。0000X520。0000001320.000X530.0000000.000000X540.000000300。0000X550。0000001848.000X560.000000600.0000X57570。00000.000000X58630.00000。000000T25.000000.000000X40.000000。000000Y30。000000.000000Z40。400000.000000附录5:第四问中8天的程序min=1848*x11+1500*x12+5412*x13+4836*x14+1560*x15+4104*x16+2568*x17+5052*x18+696*x21+1884*x22+3876*x23+3300*x24+2472*x25+3036*x26+1416*x27+3516*x28+2688*x31+4644*x32+1476*x33+900*x34+5020*x35+1740*x36+1968*x37+1116*x38+2272*x41+3316*x42+3720*x43+3144*x44+2776*x45+2244*x46+2160*x47+3300*x48+1464*x51+3420*x52+2100*x53+1524*x54+4008*x55+2964*x56+744*x57+1740*x58;t=8;x11+x12+x13+x14+x15+x16+x17+x18<=120+40*t;x21+x22+x23+x24+x25+x26+x27+x28〈=60+30*t;x31+x32+x33+x34+x35+x36+x37+x38<=80+20*t;x41+x42+x43+x44+x45+x46+x47+x48<=1000;x51+x52+x53+x54+x55+x56+x57+x58〈=1200;x11+x21+x31+x41+x51〉=500-40;x12+x22+x32+x42+x52>=600—50;x13+x23+x33+x43+x53〉=300—20;x14+x24+x34+x44+x54〉=350-30;x15+x25+x35+x45+x55〉=400-100;x16+x26+x36+x46+x56>=300-40;x17+x27+x37+x47+x57>=500-30;x18+x28+x38+x48+x58〉=600-70;x11+x21+x31+x41+x51〈=800—40;x12+x22+x32+x42+x52<=900-50;x13+x23+x33+x43+x53

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论