《数学建模送货线路设计问题-答案仅供参考》由会员分享,可在线阅读,更多相关《数学建模送货线路设计问题-答案仅供参考(37页珍藏版)》请在金锄头文库上搜索。
1、装 订 线第九届西安电子科技大学数学建模竞赛暨全国大学生数学建模竞赛选拔赛题目A (B)题密封号2010年5月4日剪 切 线密封号2010年5月4日 通信工程 学院 第 队队员1队员2队员3姓名邓晓光谭正中刘春燕班级请预览后下载!送货路线设计问题1、 问题重述现今社会网络越来越普及,网购已成为一种常见的消费方式,随之物流行业也渐渐兴盛,每个送货员需要以最快的速度及时将货物送达,而且他们往往一人送多个地方,请设计方案使其耗时最少。现有一快递公司,库房在图1中的O点,一送货员需将货物送至城市内多处,请设计送货方案,使所用时间最少。该地形图的示意图见图1,各点连通信息见表3,假定送货员只能沿这些连通
2、线路行走,而不能走其它任何路线。各件货物的相关信息见表1,50个位置点的坐标见表2。 假定送货员最大载重50公斤,所带货物最大体积1立方米。送货员的平均速度为24公里/小时。假定每件货物交接花费3分钟,为简化起见,同一地点有多件货物也简单按照每件3分钟交接计算。现在送货员要将100件货物送到50个地点。请完成以下问题。1. 若将130号货物送到指定地点并返回。设计最快完成路线与方式。给出结果。要求标出送货线路。2. 假定该送货员从早上8点上班开始送货,要将130号货物的送达时间不能超过指定时间,请设计最快完成路线与方式。要求标出送货线路。3. 若不需要考虑所有货物送达时间限制(包括前30件货物
3、),现在要将100件货物全部送到指定地点并返回。设计最快完成路线与方式。要求标出送货线路,给出送完所有快件的时间。由于受重量和体积限制,送货员可中途返回取货。可不考虑中午休息时间。2、 问题分析送货路线问题可以理解为:已知起点和终点的图的遍历问题的合理优化的路线设计。图的遍历问题的指标:路程和到达的时间,货物的质量和体积,以及最大可以负载的质量和体积。在路线的安排问题中,考虑所走的路程的最短即为最合理的优化指标。对于问题二要考虑到所到的点的时间的要求是否满足题意即采用多次分区域的假设模型从而找出最优的解对于问题三则要考虑到体积和质量的双重影响,每次到达后找到达到最大的请预览后下载!体积和质量的
4、点然后返回,再依次分析各个步骤中可能存在的不合理因素达到模型的进一步合理优化得到最合理的解。3、 模型假设与符号说明3.1、模型的假设(1)、到同一地点的货物要一次拿上,即不考虑再以后又经过时再带些货物(2)、要求达到不超过的时间不包括此次在该点交易的时间。(3)、所用的距离数据都精确到米而时间则精确到0.0001h(4)、同一地点有多件货物也简单按照每件3分钟交接计算。3.2、符号说明其中i,j=1、2、350并且M=50kg V=1m34、 模型的建立及求解模型四模型三模型二模型一最短路径模型图的遍历模型多区域最短路多阶段最短路任意两点之间的最短路距离由起始点遍历路径回到原点多区域无返回起
5、点的最短路多阶段有返回起点的最短路请预览后下载!模型一1.1模型的建立我们为了求出各个点的之间的最短的路径,使用Dijstra算法求解。 Dijkstra算法是图论中非常有名的一个算法。图采用邻接矩阵的形式描述,w(i,j)表示结点i到结点j间的最短距离,如果没有直接连通,则为无穷大,计算机中可以用一个很大的数据代替(如matlab中的inf)。但dijkstra算法只能求出从结点i到其它各结点的最短路径。算法引入这样两个集合s和t,s是那些已经确定了到i结点的最短路径的结点,t为全集u和s的差集,即那些还未确定最短路径的结点。而且s的初值是i,t的初值是u-i。另外再引入一个标记数组dn,其
6、中在某一步dk表示当前从i到k的较短路径,dk的初值为w(i,k)。整个算法过程如下:、 在t中选择一个dk最小的结点k,将k并入s,并从t中去掉,如果t为则转到;、 用k结点和t中其余结点进行一遍比较,如果didk+mki,则用dk+mki取代原来的di,重复;、 算法结束,此时dk中保存的就是从i到k结点的最短路径。算法就以这样非常简单的形式完成了求解,时间复杂度是O(n2),确定了从i到其余各结点的最短路径。1.2模型的求解根据算法和相邻的点的距离可以用dijkstra求出任意两点的最短路径。请预览后下载!图1相邻的点的距离使用循环的结构求出1-50各个点之间的最短距离。程序1见附录2.
7、1可以求出w和aa为最短路径是的所过的的地点如从O开始到其余50个点的a(0)= 0 7 4 8 3 15 1 18 12 14 18 13 13 18 21 12 23 21 0 24 22 0 29 17 31 19 0 31 30 25 22 26 23 28 31 38 21 40 36 27 34 37 43 38 41 36 41 40 46 42 40要从O点到16点则要先到23即0-23-16要从O点到23点则要先到17即0-17-23-16要从o点到17点则要先到21即0-21-17-23-16而O可以直接到21所以从0到16的最优路径是0-21-17-23-16最短的距离是
8、w(0,16)=7493m模型二 对于问题一的求解2.1模型的建立由前30件货物可以到达的地点可以知道i,j= 13、14、16、17、18、21、23、24、26、27、31、32、34、36、38、39、40、42、43、45、49。图2需要达到的点(红点标注的)请预览后下载!其中共经过21个点,运送30件货物该30件货物m=47.3kg50kg v=0.8371m3,所以可以一次把货物携带进行运送。由T与W关系可知要使所用的时间最小即所走的距离最短。即目标函数是:T=WV+t030 约束条件是:必须全部遍历回到0点即求出从O出发遍历这图的21个点的并回到o的最短的距离要距离最短则每一步也
9、要最短,即从O开始找最短的点到达后继续找未遍历的最短的点则可求出最短的距离。本题要求出回到O点则可以看到两个开始最短遍历的点在某点重合即可完成最短的遍历。2.2模型的求解由图可以明显得出距离O最近的点是21点和26点。由于32点到38点的距离小于32点到16点的距离为使从21点出来的线遍历右下的点完后再和26点出来的汇合则安排32点到35点断开。有程序2(附录2.2)可得:013112132321314334141643615175381618639172174018238421924943202610452127114922请预览后下载!遍历节点路线是:0-21-17-23-32-16-14
10、-18-13-24-34-40-45-49-42-43-38-36-39-27-31-26-0最优的路线是:0-21-17-23-32-23-16-14-21-18-13-19-24-31-34-40-45-42-49-42-43-38-36-27-39-27-31-26-0总路程是:W=53787m 最优时间是:T=3.7411h模型三 对于问题二的求解3.1模型的建立 由第一个模型建立的可以求出到达24时所用的时间是:可知到24点的时间是:t(24)=2.0880由表2.1可知必须在9点之前把货物送到24点即t(24)1,到45点时必须在9点半之前到达而1.74121.5故分成两个阶段不成
11、功,所以分四个阶段,求出各个阶段的最短距离和到达时的时间即可。目标函数:ti=Wiv+t0约束条件是:T到个点的时间最大值3.2模型的求解请预览后下载!图4.4个阶段的圈图对四个阶段分别求出到达的时间,由程序4(附录2.4)可知l 分4个阶段3180.09092130.27064240.55871. 从0出发经过13、18到24。满足t1的条件故路线为:0-18-13-242310.73293340.92974401.04775451.23172. 从24出发经过31、34、40到45。 满足t1.5故路线为:24-31-34-40-453421.42975491.56184431.73222
12、381.89133. 从45出发经过38、42、43到49。满足t2.25请预览后下载!所以路线为:45-42-49-43-384. 从38出发经过14、16、17、21、23、26、27、32、36、39回到O。10362.00548272.147211392.32147262.55405212.74544172.87146232.99539323.15003163.44202143.6007满足t4故路线为:38-36-27-39-27-31-26-21-17-23-32-16-14-21-0所以总的遍历点顺序是:0-18-13-24-31-34-40-45-42-49-43-38-36-27-39-26-21-17-23-32-16-14-0总时间是T=3.9130h总距离是W=57912m最优路线是:0-18-13-19-24-31-34-40-45-42-49-42-43-38-36-27-39-27-31-26-21-17-23-32-23-16-14-21-0到每个点的时间见附录1.4模型四 对于问题三的求解4.1模型的建立本题中要遍历所有的50个点但由于M总=147kg,v 总 =2.8m3而M50kg,V1m3故应该以M50kg和V1m3判断的