全国数学建模优秀论文.docx
- 文档编号:12774785
- 上传时间:2023-04-22
- 格式:DOCX
- 页数:31
- 大小:471.68KB
全国数学建模优秀论文.docx
《全国数学建模优秀论文.docx》由会员分享,可在线阅读,更多相关《全国数学建模优秀论文.docx(31页珍藏版)》请在冰豆网上搜索。
全国数学建模优秀论文
2013高教社杯全国大学生数学建模竞赛
承诺书
我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。
如有违反竞赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写):
B
我们的参赛报名号为(如果赛区设置报名号的话):
J2019
所属学校(请填写完整的全名):
参赛队员(打印并签名):
1.
2.
3.
指导教师或指导教师组负责人(打印并签名):
日期:
2013年9月16日
赛区评阅编号(由赛区组委会评阅前进行编号):
2013高教社杯全国大学生数学建模竞赛
编号专用页
赛区评阅编号(由赛区组委会评阅前进行编号):
赛区评阅记录(可供赛区评阅时使用):
评
阅
人
评
分
备
注
全国统一编号(由赛区组委会送交全国前编号):
全国评阅编号(由全国组委会评阅前进行编号):
送货路线设计问题
摘要
本文针对送货路线优化设计问题进行研究,建立了求最小Hamilton圈模型。
借助Matlab,Lingo,VC6.0软件,利用C语言、Floyd算法、穷举法、最远送货点优先法、最近送货优先法求解,较好的实现了送货路线的设计优化。
首先,针对将1~30号货物以最快时间送达问题,将此问题简化为TSP问题,即寻找一个最小Hamilton圈。
利用Floyd算法求出任意两点间距离,借助Matalb、Lingo软件求解最小的Hamilton圈,求出最优路线如下:
O—>26—>21—>17—>14—>16—>23—>32—>35—>38—>36—>38—>43—>42—>49—>42—>45—>4—>34—>31—>27—>39—>27—>31—>24—>19—>13—>18—>O。
其次,在问题一的基础上,考虑到送达点的时间的要求,我们按照送货时间的限制,将送达点分四个阶段,在每个阶段内利用穷举法求解每一阶段的最佳路径,并判断其总的送货时间是否满足指定的时间。
最终求出最优路线如下:
O->18->13->19->24->31->27->27->39->27->31->31->34->40->45->45->45->42->49->42->43->43->38->36->38->35->32->32->32->23->23->16->14->17->21->26->26->O。
最后,针对将100件货物以最快时间送达的问题,选择一条最优的路径,我们分别采用最远送货点优先法和最近送货点优先两种方法,分别得出两种方案,最后将两种方案进行比较,方案一优于方案二,因此,在考虑载重量及载重体积情况下,完成100件送货任务,我们选择最远送货点优先法,即方案一。
关键词:
送货路线优化设计最小Hamilton圈Floyd算法最远送货点优先matlab软件
一、问题重述
现今社会网络越来越普及,网购已成为一种常见的消费方式,随之物流行业也渐渐兴盛,每个送货员需要以最快的速度及时将货物送达,而且他们往往一人送多个地方,要设计方案使其耗时最少。
现有一快递公司,库房在图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.1问题一
由附表1可以得到30个包裹的总重量不超过(
)50kg,且总体积(
)不超过1
,则送货员可一次携带30个包裹送货到指定地点并返回。
对于问题一,要求送货员以最快的方式将1~30货物送达指定的地点并返回。
因此,可以将问题简化为TSP(旅行商)进行求解(本题可以重复经过某顶点),因此最佳运送方案等价于找出一个遍历所有目的顶点并返回出发点的最短路线,送达的顶点间的最短路径及距离,即寻找一个最小的Hamilton圈。
2.2问题二
问题二中要求将1~30号货物的送达时间不能超过指定时间,考虑到所到的点的时间的要求是否满足题意即采用多次分区域的假设模型从而找出最优的解。
由题目所给的附表1可知,根据指定时间的先后,分四个阶段去送货(划分见附录2)。
从而最佳运送方案是找出每个阶段的起点
到终点
(距离下一个区域最近的点)的最短路径,即寻找出每个阶段的最短路径。
应用局部全排列穷举法求解每一块的最佳路径。
2.2问题三
在不考虑送货时间限制的情况下,将体积与重量两个因素考虑在内,允许送货员可以往返取货,要求送货员以最快的方式将货物送达指定地点并返回。
由于所有100个包裹物体的总重量是
,总体积为
,送货员的最大载货量为50kg,最大载货体积为1
,所以送货员会往返三次取货,因此可以将所有的送货地点分为三块。
对于所有送货地点的分块,可以采用2种方案——寻找离始发点最远的点,逐次加入次远点,直至达到送货员的最大载货量;寻找离始发点最近的点,逐次加入次近点,直至达到送货员的最大载货量。
三、基本假设和符号说明
3.1基本假设
1.假设送货员的行进速度与所送货物的重量无关,速度均为24公里/小时;
2.假设送货员只能沿如图路线图行驶,不能走其他的任何路线。
且在联通路线中,送货员可自由选择;
3.假设送货员保持24km/h,不考虑堵车及发生意外的情况;
4.送货员在送货期间无塞车现象,即业务员送快递途中不受任何外界因素影响;
.送货的每一条路、每个地点可以重复经过。
3.2符号说明
符号
符号说明
i,j
送货点的标号
30个包裹的总重量
100个包裹的总重量
30个包裹的总体积
100个包裹的总体积
W
从o开始回到o的总路线
T
从o开始回到o的总路线
四、模型的建立与求解
4.1模型准备
1)根据已知点的坐标和连接情况,使用matlab做出各点位置如图所示:
图1送货地点示意图
2)根据已知各点坐标,利用C语言编程求得图中相邻连通点间的距离如下表(附录一)
3)利用Floyd算法求出任意两个顶点Vi,Vj之间的距离(附录一):
4.2问题一模型的建立与求解
4.2.1模型的建立
由附表1可以得到30个包裹的总重量不超过(
)50kg,且总体积(
)不超过1
,则送货员可一次携带30个包裹送货到指定地点并返回。
30个包裹的送达地点总共有22个,分别为:
131416171821232426273132343638394042434549;
4.2.2模型的求解
利用VC6.0编程,先计算出相邻顶点(vi,vj)之间的距离(附录一),并赋为边的权值,然后floyd算法求出任意两点间最短路径(附录二)。
构造连接各顶点的哈密尔顿圈(附录三),求出最优解送货路线如下:
O—>26—>21—>17—>14—>16—>23—>32—>35—>38—>36—>38—>43—>42—>49—>42—>45—>40—>34—>31—>27—>39—>27—>31—>24—>19—>13—>18—>O
如图所示:
图2最短送货路线路径
从而,得到最短送货路线的总长d=54707.47m
4.3问题二模型的建立与求解
4.3.1模型的建立
由于考虑到送货时间运输限制,我们优先考虑送货时间。
根据指定时间的先后,分四个阶段去送货,应用局部全排列穷举法求解每一块的最佳路径。
即以送货时间对所有货物进行分块,并在每一块内部采用局部全排列穷举法求取路径,并判断其总的送货时间是否满足指定的时间。
4.3.2模型的求解
基本步骤如下:
(1)第一时间段为8:
00——9:
00之间送到的站点为:
13、18、39、27、24、27,不计重复站点,总共有5个站点,利用穷举法比较次得到最佳路径为:
18->13->24->27->39,考虑交货时间在内总时间为57.1分。
(2)第二时间段为9:
00——9:
30之间送到的站点为:
31、31、34、40、45、45、45,不计重复站点,总共有4个站点,利用穷举法比较次得到最佳路径为:
31->34->40->45,考虑交货时间在内总时间为46.05分。
(3)第三时间段为9:
30——10:
15之间送到的站点为:
42、49、43、43、38,不计重复站点,总共有4个站点,利用穷举法比较次得到最佳路径为:
42->49->43->43->38,考虑交货时间在内总时间为39.58分。
(4)第四时间段为10:
15——12:
00之间送到的站点为:
36、32、23、16、14、17、21、26,不计重复站点,总共有8个站点,利用穷举法比较次得到最佳路径为:
36->32->23->16->14->17->21->26,考虑交货时间在内总时间为81.97分。
按照时间分段得到站点分块表,如下表所示:
表1站点分块表
第
一
时
间
段
货物号
送达地点
重量
体积
时间
最佳路径
时间(含交货时间)/分
1
13
2.5
0.0316
9:
00
18
57.1
2
18
0.5
0.0354
9:
00
13
13
39
2.56
0.0595
9:
00
24
19
27
2.45
0.0545
9:
00
27
20
24
2.93
0.052
9:
00
27
22
27
2.25
0.0018
9:
00
39
第
二
时
间
段
3
31
1.18
0.0268
9:
30
31
46.05
11
45
1.1
0.0287
9:
30
31
14
45
2.28
0.0501
9:
30
34
21
31
0.8
0.0108
9:
30
40
24
34
2.8
0.0103
9:
30
45
25
40
2.14
0.0155
9:
30
45
26
45
0.68
0.0682
9:
30
45
第
三
时
间
段
10
38
1.33
0.0319
10:
15
42
39.58
12
43
0.95
0.0228
10:
15
49
15
42
2.85
0.019
10:
15
43
16
43
1.7
0.0782
10:
15
43
27
49
1.35
0.0144
10:
15
38
第
四
时
间
段
4
26
1.56
0.035
12:
00
36
85.45
5
21
2.15
0.0377
12:
00
32
6
14
1.72
0.01
12:
00
32
7
17
1.38
0.0109
12:
00
32
8
23
1.4
0.0426
12:
00
23
9
32
0.7
0.0481
12:
00
23
17
32
0.25
0.0512
12:
00
16
18
36
1.79
0.0184
12:
00
14
23
26
1.57
0.021
12:
00
17
28
32
0.52
0.002
12:
00
21
29
23
2.91
0.0587
12:
00
26
30
16
1.2
0.0429
12:
00
26
因此,由以上时间段得到的路径各时间分段路线图,如下:
图3各时间分段路线图
综上得到最佳路径为:
O->18->13->19->24->31->27->27->39->27->31->31->34->40->45->45->45->42->49->42->43->43->38->36->38->35->32->32->32->23->23->16->14->17->21->26->26->O
4.4问题三模型的建立与求解
4.3.1模型的建立
在考虑送货员所载货物重量及体积限制,不考虑送货时间限制的前提下,设计将货物最快送到指定地点的往返路线。
由于所有物体的总重量是148公斤,总体积为2.98立方米,送货员的最大载货量为50公斤,最大载货体积为1立方米,所以送货员会往返三次取货,因此最少要将所有的送货地点分为三块。
本题我们采用两种分块方案,分别为最远送货点优先法和最近送货点优先法;
4.3.2模型的求解
(1)最远送货点优先法
寻找离始发点O点最远的点,以此点为中心寻找周围离其最近的点,直至达到送货员的最大载货量和最大载货体积,在剩余点钟再以距离O的次远点为中心寻找其周围的点,直至达到送货员的最大载货量和最大载货体积,直到所有货物运送结束为止。
有题目数据计算可得,距离O点最远点为2号点,因此以2号点为中心的一组送货点分块数据为:
2、3、4、5、8、15、15、1、6、7、7、11、11、12、12、13、13、10、10、18、18、20、20、22、25、25、25、29、30、28、9、33、33、14、14,共35个站点,送货员运送的总重量为48.54公斤,总体积为0.9857立方米,不计重复站点,共有23个送货点,将前12个站点作为一部分,后11个站点作为一部分,利用穷举法得到其最佳路径为:
18->13->11->12->15->25->29->22->20->22->30->28->33->28->30->22->15->5->2->4->3->8->1->6->1->7->10->9->14,其总时间为167.48分。
除去此23个站点,由计算可知,距离O点最远的点为48号点,以此点为中心的一组送货点数据为:
48、44、46、46、46、41、41、50、47、40、40、37、37、34、34、19、19、24、24、45、45、45、45、31、31、31、27、27、27、39、39,共31个站点,送货员运送的总重量为50公斤,总体积为0.9573立方米,不计重复站点,共有15个送货点,将前11个站点作为一部分,后4个站点作为一部分,利用穷举法得到其最佳路径为:
19->24->31->34->40->47->40->37->41->46->48->44->50->45->36->27->39,其总时间为141.82分。
除去前两部的站点后,经计算的离O点最远的站点时17号点,以此点为中心的一组送货点数据为:
16、16、17、17、17、23、23、23、23、32、32、32、32、32、32、35、38、38、38、36、36、36、21、21、43、43、43、42、42、49、49,共31个站点,送货员运送的总重量为45.07公斤,总体积为0.9751立方米,不计重复站点,共有11个送货点,利用穷举法得到其最佳路径为:
17->23->16->23->32->35->38->43->42->49->42->43->38->36->21,其总时间为78.04分。
最后以26、26、26为一组送回点数据,共3个站点,送货员运送的总重量为4.39公斤,总体积为0.0619立方米,不计重复只有1个站点,其总时间为6.96分。
综合此四块的数据可知,总的运送时间为394.3分。
(2)最近送货点优先法
寻找离始发点最近的点,逐次加入次近点,直至达到送货员的最大载货量和最大载货体积,再在剩余点中寻找距离O点最近的点直至达到送货员的最大载货量和最大载货体积,直到所有货物运送结束为止。
由题目数据计算可得,距离O点最近点为26号点,因此以26号点为起始心的一组送货点分块数据为:
26、26、26、18、18、21、21、23、23、23、23、27、27、27、31、31、31、34、34、36、36、36、39、39、24、24、17、17、17、17、11,共31个站点,送货员运送的总重量为45.77公斤,总体积为0.936立方米,不计重复只有11个站点,利用穷举法得到其最佳路径为:
26->21->17->23->36->27->39->31->34->24->18,总时间为81.12分。
除去此11个站点外,由计算可得,剩余点中离O点最近的点为25号点,以此点为起始心的一组送货点分块数据为:
25、25、25、37、37、42、42、43、43、43、50、1、47、3、6、15、15、29、22、30、49、49、41、41、28、20、20、44、4、4、4、4、20,总共有33个点,送货员运送的总重量为44.55公斤,总体积为0.8004立方米,不计重复只有20个站点,将前12个站点作为一部分,后8个站点作为一部分,利用穷举法得到其最佳路径为:
25->29->22->30->33->28->20->15->4->3->1->6->47->37->41->44->50->49->42->43,总时间为219.5分。
除去此31个点外,由计算可得,剩余的点中距离O点最近的点为38号点,以此点为起始点的一组分块数据为:
38、38、38、9、11、11、12、12、13、13、14、14、16、16、19、19、32、32、32、32、32、32、35、40、40、45、45、45、45、45、8、10、10、7、7、15,总共有35个点,送货员运送的总重量为48.73公斤,总体积为0.9839立方米,不计重复只有15个站点,将前10个站点作为一部分,后5个站点作为一部分,利用穷举法得到其最佳路径为:
19->13->11->12->8->7->10->9->14->16->32->35->38->45->40,总时间为:
125.35
剩余点中,由计算可得2号点距离O点最近,依此点作为起始点的一组分块数据为:
2、5、48、46、46、46,共6个站点,送货员运送的总重量为8.95公斤,总体积为0.2597立方米,不计重复只有4个站点,利用穷举法得到其最佳路径为:
2->5->48->46,总时间为:
125.55分。
综合此四块的数据可知其总时间为:
551.52分。
综上所述:
有计算结果可知:
应用方案一所得总的送货时间为:
394.3分;应用方案二所得总的送货时间为551.52分,方案一优于方案二,因此,在考虑载重量及载重体积情况下,完成100件送货任务的最优路径为:
第一趟
0->18->13->11->12->15->25->29->22->20->22->30->28->33->28->30->22->15->5->2->4->3->8->1->6->1->7->10->9->14->18->0
第二趟:
0->26->31->19->24->31->34->40->47->40->37->41->46->48->44->50->45->36->27->39->27->31->26->0
第三趟:
0->21->17->23->16->23->32->35->38->43->42->49->42->43->38->36->21->0
第四趟:
0->26->26->26->0
总时间为:
394.3分。
则完成100件送货任务的路线图如下:
图4各分段路线图
第一趟
0->18->13->11->12->15->25->29->22->20->22->30->28->33->28->30->22->15->5->2->4->3->8->1->6->1->7->10->9->14->18->0
第二趟:
0->26->31->19->24->31->34->40->47->40->37->41->46->48->44->50->45->36->27->39->27->31->26->0
第三趟:
0->21->17->23->16->23->32->35->38->43->42->49->42->43->38->36->21->0
第四趟:
0->26->26->26->0
总时间为:
394.3分。
五、模型的评价
5.1模型的优缺点
5.1.1模型的优点
问题一建立的单旅行商的模型,是被认为解决这类型的通用算法。
本模型将最快完成任务,转化为寻找最短路径,借助LINGO软件得到最小Hamilton圈,进而得到问题的最优解,这种方法有严格的理论基础,并且更具普遍性。
问题二在问题一的求解基础上,添加了时间限制,要寻找到一条路线使得送货员在规定的时间内,完成任务。
我们根据题目所给定的运货时间将前30件货物的运达地点分为四块,使得数据量减小,因此可以利用穷举法将每一时间段的运送路径精确地表示出来,再根据每一时间段首尾衔接的站点可以得到最终的最佳路径。
根据问题三已知的送货员最大运载量及最大运载体积的限制条件,至少要将所有的货物分为三组,往返三次送达最终地点。
根据分组方案的不同得到不同的结果。
本题我们分两种方案,即最远点优先法和最近点优先法进行计算,并通过比较得到结果,这样可使结果更具说服力。
5.1.2模型的缺点
1.对于典型TSP问题虽然我们用计算机模拟技术,得到了近似优解,但跟实际存在的最优解直接仍然有一定差距。
2.对于求解问题中,对于一些问题我们基于一些假设,但是还是缺少证明,同时还应该加入一些数据修整的优化方法。
六、参考文献
【1】RichardJohnsonbaugh,MarcusSchaefer著,大学算法教程[M],清华大学出版社
【2】黄厚生,求解TSP问题的新方法[J],天津大学硕士学位论文
【3】谭永基.数学模型.上海:
复旦大学出版社,2005
【4】姜启源,数学模型,北京:
高等教育出版社,2004
七、附录
附录一:
序号
位置点1
位置点2
距离(m)
序号
位置点1
位置点2
距离(m)
1
1
3
1916.28
43
25
19
1966.21
2
1
8
2863.78
44
25
29
1885.90
3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国 数学 建模 优秀论文
![提示](https://static.bdocx.com/images/bang_tan.gif)