您好,欢迎访问三七文档
当前位置:首页 > 金融/证券 > 金融资料 > 中国银行601988跟踪调研快报(PDF4)蓄势待发的银行业龙头(1)
垃圾运输问题10601010121王凌竹10601010118于仁富10607020133杨文刚垃圾运输问题摘要:该题我们的主要解题思路分三阶段:第一阶段,我们先根据题设条件和基本假设画出该题的图。第二阶段,我们根据图和点的位置关系结合题设,归纳出一些最基本的确定路线的原则:在仔细分析该题后,我们认为该题为一个单目标规划题。我们先抛开空载费用,若要把所有的垃圾运回垃圾处理站,这部分有效工的费用为∑1.8*|Xi|*Yi(|Xi|为垃圾点Xi到原点的距离,Yi为垃圾点的垃圾量),是恒定不变的。只要我们能保证空载路线最小,则所花的时间和费用都最小。因此解题的关键在于找出一个调度方案,使空载行驶的线路最小。第三阶段则是编制程序阶段,采用计算机模拟搜索的计算方法,搜索出运输车投入辆数以及运输车最佳调配方案,使得在不考虑铲车的情况下运营费用最低。总运营费用为运输车空载费与实际运输费之和。问题的解答如下:第一问,求得所需总费用为2345.4元,所需总时间为22.5小时,路线分配图见正文;第二问,求得需3辆铲车,铲车费用为81.6元,分配图及运输车调度表见正文;第三问,运营总费用为:2325.8,其中8吨、6吨、4吨载重量的运输车各需5、2、3辆,路线分配图见正文。关键词:单目标优化计算机搜索一.问题的重述某城区有36个垃圾集中点,每天都要从垃圾处理厂(第37号节点)出发将垃圾运回。现有一种载重6吨的运输车。每个垃圾点需要用10分钟的时间装车,运输车平均速度为40公里/小时(夜里运输,不考虑塞车现象);每台车每日平均工作4小时。运输车重载运费1.8元/吨公里;运输车和装垃圾用的铲车空载费用0.4元/公里;并且假定街道方向均平行于坐标轴。请你给出满意的运输调度方案以及计算程序。问题:1.运输车应如何调度(需要投入多少台运输车,每台车的调度方案,运营费用)2.铲车应如何调度(需要多少台铲车,每台铲车的行走路线,运营费用)3.如果有载重量为4吨、6吨、8吨三种运输车,又如何调度?(垃圾点地理坐标数据表见附录一)二.模型的假设1.车辆在拐弯时的时间损耗忽略。2.车辆在任意两站点中途不停车,保持稳定的速率。3.只要平行于坐标轴即有街道存在。4.无论垃圾量多少,都能在十分钟内装上运输车。5.每个垃圾站点的垃圾只能由一辆运输车运载。6.假设运输车、铲车从A垃圾站到B垃圾站总走最短路线。7.任意两垃圾站间的最短路线为以两垃圾站连线为斜边的直角三角形的两直角边之和。8.建设在运输垃圾过程中没有新垃圾入站。9.假设铲车、运输车载工作途中不发生意外也不遇到意外;10.各垃圾站每天的垃圾量相对稳定。三.主要变量的说明|A|表示A点到原点的距离,恒正|B|表示B点到原点的距离,恒正|A-B|表示A,B两点之间的距离,恒正Ta表示A点所在地的垃圾量cost:运费;time:时间消耗;装的足够多运输车当前的载重离限载不大于0.55吨(垃圾点的最小垃圾量)序数号所在点的编号四.问题的分析与模型的建立垃圾运输问题最终可以归结为最优路径搜索问题,但注意到此图为森林而不是树,不能直接套用Krusal,Prim等现成算法,于是根据具体问题设计出随机下山法,用计算模拟搜索,可以搜寻到令人满意的可行解。先注意到两点的情况,设两点分别为A(x1,y1),B(x2,y2)。主要有以下两种情况:一.A,B明显有先后次序。--递减状态(如图1)不妨设x1x2,y1y2,不难看出A在B的后方,即A比B远。对于前方参考点O,要将A,B对应垃圾点的垃圾全部取回再返回O,一共有三种方式:1.OAO,OBO单独运输。这种情况下,总的路程消费等于空载运行费用(0.4元/公里)与装载时运行费用(1.8元/公里吨)的总和。所需的总时间等于车辆所走过的总路程与速度(40公里/小时)的比值再加上在A,B两点停留的时间(每个垃圾点上停留了10分钟,1/6小时),于是有:Cost=0.4*|A|+1.8*|A|*Ta+0.4*|B|+1.8*|B|*TbTime=(2*|A|+2*|B|)/40+1/6*22.OABO先远点再近点,即先空载至最远处,装完A点垃圾后再返回至B,再回O点,有:Cost=0.4*|A|+1.8*|A-B|*Ta+1.8*|B|*(Ta+Tb)=0.4*|A|+1.8*|A|*Ta+1.8*|B|*TbTime=2*|A|/40+1/6*23.OBAO先近点在远点,即先装B点垃圾,然后载着B点的垃圾奔至A点,再回O点,有:Cost=0.4*|B|+1.8*|A-B|*Tb+1.8*|A|*(Ta+Tb)=0.4*|B|+1.8*|A|*Ta+1.8*|B|*Tb+1.8*|A-B|*2*TbTime=2*|A|/40+1/6*2比较以上三种情况,远近点的遍历顺序,可以看出,“先远后近”绝对比“先近后远”在花费钱的数量上要少的多,省出1.8*|A-B|*2*Tb这部分的钱主要是车载着B点的垃圾奔到A点再返回B点。而又注意到两者的时间花费是相等的。所以在其余同等的情况下选择“先远后近”。考虑到时间上单独运输比其余的两种运输要大的多,多一一倍,而且花费的钱仍不比“先远后近”省,还多了0.4*|B|,所以一般情况下,不采用单独运输。二.A,B两点没有明显先后顺序。--并邻状态(如图2)还是一共有三种情况:1.OAO,OBO单独运输。这种情况下,跟A,B两点有先后顺序中的情况完全相同,即有:Cost=0.4*|A|+1.8*|A|*Ta+0.4*|B|+1.8*|B|*Tbtime=(2*|A|+2*|B|)/40+1/6*22.OABOCost=0.4*|A|+1.8*|A-B|*Ta+1.8*|B|*(Ta+Tb)----〈1〉Time=(|A|+|A-B|+|B|)/40+1/6*23.OBAOCost=0.4*|B|+1.8*|A-B|*Tb+1.8*|A|*(Ta+Tb)----〈2〉Time=(|A|+|A-B|+|B|)/40+1/6*2相比之下,清晰可见并邻状态下的单独运输所花的费用最少,所以在不要求时间的情况下对于并邻两点,采用单独运输的方式最节约钱。用1式与2式相减除以1.8,得到如下判断式:|A-B|*(Ta-Tb)+(Ta+Tb)*(|B|-|A|)----3上式0时,选0ABO;上式0时,选OBAO;上式=0时,任意选上述两路线。三.两点选择趋势的讨论。(如图3)由图中看到B,C两点没有明显的先后顺序,属于并邻点。因为当运输车载重行驶时费用会成倍的增长,比其空载时所花费用要大的多,所以排除ABC或ACB这样的一次经过3点的往返路线,仅选择B,C中的某一点与A完成此次运输,将另一点留到下次。那么A点选择B还是C呢?不妨假设|B||C|,即B点离原点的距离比C点的更远,因为A在B,C之后,所以也就是B点离A点更近。这样,此次的运输我们更趋向于选择AB,因为就这三点而论,A无论是选B还是C,三点的垃圾总要运完,所以花费的钱是一样的。但选择AB后,下次运输车运C点垃圾时就无需跑的更远。四.关于垃圾点的垃圾是否一次清除的讨论(以6吨车例)由假设2知,每天的垃圾必须清除完毕,全部运往37点。这里说的一次清除问题不是指一天,而是指当一辆运输车已经装载了足够多的垃圾,不能完全清理下一个垃圾点的时候,车在下一个站点“停还是不停”的问题。例如,一辆运输车选择了3026183520的路线(即先将空车开往30,清理装载30点的垃圾,然后依次到26,18,35,20),它从20返回时车已经装载了5.8吨垃圾,仍可以装0.2吨(小于垃圾点垃圾量的最小值0.5,称这种情况为“装的足够多”)。在20点下方仍有不少的点,但肯定不能将下面的任意点的垃圾装完,那么此车是直接返回37点呢,还是继续装直至车装满为止呢?我们判断前者更好,就是车在装的足够多的情况下应该直接返回原点(37点)。这是因为对于下一垃圾点(假设为A点)内的垃圾而言,无论是一次装完还是分两次装完,将它们运回所花费用是恒定的,等于1.8*Ta*|A|。整体而言,两者花费的钱是相等的,但分两次装要多花10分钟的装车时间,所以选择前者。综上所述,得出搜索的基本原则:1.在两点递减的情况下,不采用单独运输;2.在其余同等的情况下选择“先远后近”;3.不要求时间的情况下对于并邻两点,采用单独运输的方式最节约钱;一般情况下用式3〉作判断;4.车在装的足够多的情况下应该直接返回原点(37点);5.每一次布局和每条线路的搜索不妨由剩下未搜点中的最大值开始。五.模型的求解问题一.在不考虑铲车的情况下。首先根据题所给的数据画出散点图:求得总运营费用为2345.4元,总时间为22.5小时,求解程序如附录二,运输车的最优路线如下图所示:05101520253002468101214161820P1P2P3P4P5P6P7P8P9P10P11P12P13P14P15P16P17P18P19P20P21P22P23P24P25P26P27P28P29P30P31P32P33P34P35P36P37站点序号空载费用所花时间一号线0-30-29-27-3-018.42.3+2/3二号线0-28-26-32-25-5-017.62.2+5/6三号线0-36-23-33-21-016.82.1+2/3四号线0-24-18-35-15-013.61.7+2/3五号线0-34-17-16-2-0121.45+2/3六号线0-20-11-10-011.21.4+1/2七号线0-19-13-8-010.81.35+1/2八号线0-14-7-4-1-08.81.1+1/2九号线0-22-08.41.05+1/6十号线0-12-9-081+1/3十一号线0-31-6-06.80.85+1/3问题二.铲车加入后的讨论当加入铲车后,我们应该让铲车将就运输车,因为铲车的空载费用为0.4元/小时.铲车加入垃圾后为1.8元/公里小时.若改变一条线,则会造成几公里的误差,甚至十几公里的误差,这一项的数目就很大.若是铲车将就运输车,则即使路线误差大一点,但所需费用也不会变得很大.故我们以第一个方案的路线为准.这时我们只要保证前一条线路的末节点,与后一条线路的首节点的路程差分别相加之和最小即可.根据这一思路.我们设一个结构数组变量,他有11个元素(代表11条元素).其中每个元素里面有两个结构成员,这样一个元素就代表一条线路.对这11个元素进行排列,这样每一个排列就是一个线路方案.这样便能通过排列,遍历每种方案.就求出最优解.再考虑了最短路径的情况下,由于要考虑和各车在时间地衔接,以及尽量要在规定的时间内作完,我们进行相应的调整。这部分由于考虑到计算复杂性,我们用手工调整,由于前面有最短路径的保证,我们调整的结果接近最优解。程序代码如附录三【源码】程序运行结果见附录三【结果】05101520253002468101214161820P1P2P3P4P5P6P7P8P9P10P11P12P13P14P15P16P17P18P19P20P21P22P23P24P25P26P27P28P29P30P31P32P33P34P35P36P37线路时间0-30-29-27-3-02.3+4/60-28-26-32-25-5-02.2+5/60-36-23-33-21-02.1+4/60-24-18-35-15-01.7+4/60-34-17-16-2-01.45+2/30-19-13-8-01.35+1/20-20-12-9-01.0+1/20-11-10-00.7+1/30-31-6-00.7+1/30-14-7-4-1-00.55+4/613.5小时根据总时间和个线路的耗时,依平均工作6小时为条件得出需要三量铲车,三辆铲车的起始点分别为36,31,28;因为运输车时速为40km/h,则铲车速度无须大于40km/h.若速度小于40km/h,则至少要多买一辆铲车,这样造成重复,故最好多花点钱买大功率的铲车.为
本文标题:中国银行601988跟踪调研快报(PDF4)蓄势待发的银行业龙头(1)
链接地址:https://www.777doc.com/doc-227700 .html