网站大量收购闲置独家精品文档,联系QQ:2885784924

数学建模论文-送货线路设计问题.doc

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
送货路线设计问题 问题重述 现今社会网络越来越普及,网购已成为一种常见的消费方式,随之物流行业也渐渐兴盛,每个送货员需要以最快的速度及时将货物送达,而且他们往往一人送多个地方,请设计方案使其耗时最少。 现有一快递公司,库房在图1中的O点,一送货员需将货物送至城市内多处,请设计送货方案,使所用时间最少。该地形图的示意图见图1,各点连通信息见表3,假定送货员只能沿这些连通线路行走,而不能走其它任何路线。各件货物的相关信息见表1,50个位置点的坐标见表2。 假定送货员最大载重50公斤,所带货物最大体积1立方米。送货员的平均速度为24公里/小时。假定每件货物交接花费3分钟,为简化起见,同一地点有多件货物也简单按照每件3分钟交接计算。 现在送货员要将100件货物送到50个地点。请完成以下问题。 1. 若将1~30号货物送到指定地点并返回。设计最快完成路线与方式。给出结果。要求标出送货线路。 2. 假定该送货员从早上8点上班开始送货,要将1~30号货物的送达时间不能超过指定时间,请设计最快完成路线与方式。要求标出送货线路。 3. 若不需要考虑所有货物送达时间限制(包括前30件货物),现在要将100件货物全部送到指定地点并返回。设计最快完成路线与方式。要求标出送货线路,给出送完所有快件的时间。由于受重量和体积限制,送货员可中途返回取货。可不考虑中午休息时间。 问题分析 送货路线问题可以理解为:已知起点和终点的图的遍历问题的合理优化的路线设计。 图的遍历问题的指标:路程和到达的时间,货物的质量和体积,以及最大可以负载的质量和体积。在路线的安排问题中,考虑所走的路程的最短即为最合理的优化指标。 对于问题二要考虑到所到的点的时间的要求是否满足题意即采用多次分区域的假设模型从而找出最优的解 对于问题三则要考虑到体积和质量的双重影响,每次到达后找到达到最大的体积和质量的点然后返回,再依次分析各个步骤中可能存在的不合理因素达到模型的进一步合理优化得到最合理的解。 模型假设与符号说明 3.1、模型的假设 (1)、到同一地点的货物要一次拿上,即不考虑再以后又经过时再带些货物 (2)、要求达到不超过的时间不包括此次在该点交易的时间。 (3)、所用的距离数据都精确到米而时间则精确到0.0001h (4)、同一地点有多件货物也简单按照每件3分钟交接计算。 3.2、符号说明 其中i,j=1、2、3……50 并且 M=50kg V=1 模型的建立及求解 模型一 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}。另外再引入一个标记数组d[n],其中在某一步d[k]表示当前从i到k的较短路径,d[k]的初值为w(i,k)。 整个算法过程如下:  1、 在t中选择一个d[k]最小的结点k,将k并入s,并从t中去掉,如果t为{}则转到3;  2、 用k结点和t中其余结点进行一遍比较,如果d[i]d[k]+m[k][i],则用d[k]+m[k][i]取代原来的d[i],重复1;  3、 算法结束,此时d[k]中保存的就是从i到k结点的最短路径。  算法就以这样非常简单的形式完成了求解,时间复杂度是O(n^2),确定了从i到其余各结点的最短路径。 根据算法和相邻的点的距离可以用dijkstra求出任意两点的最短路径。 图1相邻的点的距离 使用循环的结构求出1-50各个点之间的最短距离。程序1见附录2.1 可以求出w和a a为最短路径是的所过的的地点 如从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] 要从点到16点则要先到23即0-23-16要从点到23点则要先到17即0-17-23-16要从o点到17点则要先到21即0-21-17-23-16而可以直接到21所以路径是0-21-17-23-16最短的距离是w(0,16)=7493m —对于问题一的求解 2.1模型的建立 由前30

您可能关注的文档

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档