送货线路设计问题标准答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

送货路线设计问题的答案

1、问题重述

现今社会网络越来越普及,网购已成为一种常见的消费方式,随之物流行业也渐渐兴盛,每个送货员需要以最快的速度及时将货物送达,而且他们往往一人送多个地方,请设计方案使其耗时最少。

现有一快递公司,库房在图1中的O点,一送货员需将货物送至城市内多处,请设计送货方案,使所用时间最少。该地形图的示意图见图1,各点连通信息见表3,假定送货员只能沿这些连通线路行走,而不能走其它任何路线。各件货物的相关信息见表1,50个位置点的坐标见表2。

假定送货员最大载重50公斤,所带货物最大体积1立方米。送货员的平均速度为24公里/小时。假定每件货物交接花费3分钟,为简化起见,同一地点有多件货物也简单按照每件3分钟交接计算。

现在送货员要将100件货物送到50个地点。请完成以下问题。

1. 若将1~30号货物送到指定地点并返回。设计最快完成路线与方式。给出结果。要求标出送货线路。

2. 假定该送货员从早上8点上班开始送货,要将1~30号货物的送达时间不能超过指定时间,请设计最快完成路线与方式。

要求标出送货线路。

3. 若不需要考虑所有货物送达时间限制(包括前30件货物),现在要将100件货物全部送到指定地点并返回。设计最快完成路线与方式。要求标出送货线路,给出送完所有快件的时间。由于受重量和体积限制,送货员可中途返回取货。可不考虑中午休息时间。

2、问题分析

送货路线问题可以理解为:已知起点和终点的图的遍历问题的合理优化的路线设计。

图的遍历问题的指标:路程和到达的时间,货物的质量和体积,以及最大可以负载的质量和体积。在路线的安排问题中,考虑所走的路程的最短即为最合理的优化指标。

对于问题二要考虑到所到的点的时间的要求是否满足题意即采用多次分区域的假设模型从而找出最优的解

对于问题三则要考虑到体积和质量的双重影响,每次到达后找到达到最大的体积和质量的点然后返回,再依次分析各个步骤中可能存在的不合理因素达到模型的进一步合理优化得到最合理的解。

3、模型假设与符号说明

3.1、模型的假设

(1)、到同一地点的货物要一次拿上,即不考虑再以后又经过时再带些货物

(2)、要求达到不超过的时间不包括此次在该点交易的时间。(3)、所用的距离数据都精确到米而时间则精确到0.0001h (4)、同一地点有多件货物也简单按照每件3分钟交接计算。

3.2、符号说明

其中i,j=1、2、3……50 并且M=50kg V=1

4、模型的建立及求解

模型一模型二模型三模型四

最短路径模型图的遍

历模型

多区域

最短路

多阶段

最短路

模型一

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到其余各结点的最短路径。

1.2模型的求解

根据算法和相邻的点的距离可以用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]

要从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最短的距离是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件货物=47.3kg<50kg =0.8371,所以可以一次把货物携带进行运送。

由T与W关系可知要使所用的时间最小即所走的距离最短。即

目标函数是:

T=W÷V+×30

约束条件是:必须全部遍历回到0点

即求出从O出发遍历这图的21个点的并回到o的最短的距离

相关文档
最新文档