1、数学建模有关紧急调兵和最佳乘车路线问题数学模型与数学软件综合训练论文训练题目:一 紧急调兵问题二 最佳乘车路线学号:* 姓名:刘永旺兰州理工大学计通院信息与计算科学专业2009年春季学期一前言在现实生活中我们有许多实际问题需要解决,而怎么去解决这些问题就成为我们要讨论的主要问题,通常采用建立数学模型的方法,这样如何合理建立所要解决问题的模型就成了关键,所建立的数学模型不仅要在模型假设中通过分析研究能得到所要的结果,而且必须具有可行性,通过模型建立能够最终解决问题,这是我们建立数学模型的目的。 在数学模型的建立过程中分析问题是关键,首先应该搞清楚需要解决什么问题,然后从问题入手考虑通过什么方法用
2、哪些因素能一步得到要求因素,其中会用到我们学过的数学知识,用合适的建立模型的方法,如本模型步中用到的单因素模型,逐步回归模型等模型,通过数据拟合相应函数等方法,通过函数分析并结合图形,判断优化方案,并考虑各组成因素的变化情况,同时考虑各因素的交互效应,这样才能建立出合理的数学模型。在模型建立过程中借助图表,曲线图的功能更加直观,简要易懂,并对所建模型作进一步分析和改进,使得所建模型更能反映实际情况。二紧急调兵问题1论文摘要由于军事上的需要,需将甲地n名战斗人员(不包括驾驶员)紧急调运之乙地。但是由于运输车辆不足,m辆车无法保证每个战斗人员都乘上车。为了使这n名战斗人员以最短的时间到达目的地,必
3、须得有一部分战斗人员紧急行军,这样就可以保证所有人员同时到达目的地。关键词:紧急调兵;人行军;时间最短2问题重述与分析 由于战斗需要,所有人员必须在最短时间里同时到达,才能保证需求。目前是车少人多,所有人不能同时乘车到达目的地,有一部分人需要行军前进。现有m辆车,n人,每辆车可以载b人。车辆先运走一部分行军速度慢的,到达一定的地方,然后这些人行军,车辆返回在后面的行军人中间运走相对行军慢的,以此类推,车辆最后运的人员和所有的战斗人员同时到达目的地。3假设与模型3.1模型假设1)将这n名战斗人员中最后一个运到乙地算完成任务,以部队从甲地出发起,到第n名战斗人员到达乙地的运输时间为目标,不考虑先期
4、到达战斗人员的军事价值;2)车速和人行速均按最大速度计算,不考虑人员劳累和车辆加油问题,也不考虑道路的影响;3)战斗人员上下车的时间可忽略不计;4)设每辆车载b人(不包括驾驶员);车速是人行军速度的k倍(k1);5)设j是大于1的整数,如当j=2时,说明n名战斗人员一分为二,一半乘车,一半行军,到了中途某一点,让乘车人员下车行军前进,车辆返回接另一部分人员,最后和第一批人员同时到达目的地。3.2模型建立设甲地到乙地距离为1个长度单位,人行军速度为1个速度单位,车速为k。设最优方案中人行军路程为y(因同时到达,每个人行军路程都是y),则每个人乘车路程为1-y,0y1。最优方案中人与车同时到达乙地
5、,所用时间相同,所以y+(1-y)=, (1)因为n=mbj,所以车向前时,mb个人乘车,车向后开时,无人乘车;而车向前开的时间为x/k,向后开的时间为(x-1)/k,所以在最优调运方案中,平均乘车人数为 : (2)所以在最有方案中最小平均速度的最大值上界(在车和人同时到达乙地的方案可行时)为: (3)由(3)式可见平均速度大于人行军速度,且k越大平均速度越大,j越大,平均速度越小,显然是合理的。而根据(1)式,最优方案的平均速度为: (4) 由此可得到关于x,y的方程组 解次方程组得:2x-2=(k-1)y, (5) (6)由(6)式可见,其余条件相同情况下车速越快,战斗人员行军路程越短,这
6、也说明公式是正确的。 在达最大速度情况下,人行军路程与车行军路程均已求出,下一步我们考虑实现这一上界的方案。显然使平均速度达(3)式的任一可行方案均为最优方案,但其中某方案使人员上下车次数越少,车辆调整方向次数越少,越方便,实际效果越好。3.3问题求解1)开始让车满载,车和人同时出发;2)当车开到1-y地方,让车商的战斗人员下车行军前进,车辆往回开;3)当返回车辆遇上正在行军的战斗人员时,让其中任意mb个人乘车前进,余下的人继续行军前进;4)当车遇到正在前面行军的战斗人员时,停车,并让车上mb个人下车与这一批人一起行军前进,车辆再返回;5)如此直至最后mb个战斗人员也上车,并与其他战斗人员共同
7、到达乙地。 这样在行进的过程中,一前一后的两个集团,有时共(j-1)mb个人在行军前进,mb个人在这两个集团之间乘车由后往前赶。而当车辆返回时,两大集团共计n个人在行军前进。随着时间的推移,第一集团每次增加mb个人,第二集团每次减少mb个人,直至第二集团完全消失,第一集团达(j-1)mb人,与最后乘车的mb人同时到达乙地。由于n=mbj,显然这一方案是可行的。则只需证明此方案是最优的即可:前已计算最佳方案中每个人应步行的距离为y,应乘车前进的距离是1-y。因每个人不是乘车就是行军前进,故只要乘车距离达到1-y,即达到了理想的平均速度。由方案可知,第一批乘车人员恰好乘车前进1-y,余下行军,路程
8、为y,应y+(1-y)/k时到达。第二批乘车人后来赶上第一批乘车人,表明在出发至相遇这一段时间内平均速度相同。因行军速度与车速一定,故一定乘车时间相同,行军时间相同 ,因而乘车路程也为1-y,加上后来行军路程,总行军路程为y,故实现了最优方案。类似的,前(j-1)批乘车人员都行军y乘车路程为(1-y)。最后一批乘车人在乘车时,车向前走了(j-1)(1-y),第一次车辆后退的距离为: 与最后一批人相遇时共后退:则实际前进了:将y用(6)式代入,得车辆在与最后一批人相遇时,离甲地距离为: 所以最后一批人乘车距离也是1-y,故故n个人与车同时到达乙地,方案确是最优的。三最佳乘车路线1论文摘要利用城市
9、公交网构建了基于公交站点的网络图。把各个站点看作图的节点,站点间的线路看作图的边,站点间到达所需的花费作为边的权值。同时把公汽、地铁、看作两种不同的交通方式来处理。公交线路选择的数学模型是一般图的最短路问题,利用改进的基于广度优先搜索算法,按照乘车次数、乘车费用、乘车时间不同顺序准则给出了各种最优线路方案。关键词:网络图 换乘 公共站点 最短路径问题2问题重述与分析随着社会的高速发展,城市建设也越来越繁华,因此,出门乘车路线的最优选择便成为当代城市人必须面对的一个问题。针对这一问题,建立最佳乘车路线模型系统供人们参考,以满足查询者对线路的各种不同需求。该系统核心是线路选择的数学模型与算法。本文
10、拟解决如下问题:1、仅考虑公汽线路,给出任意两公汽站点之间线路选择问题的一般数学模型与算法。根据数据,利用模型与算法,求出以下6对起始站终到站的最佳路线。 (1)、S3359S1828 (2)、S1557S0481 (3)、S0971S0485 (4)、S0008S0073 (5)、S0148S0485 (6)、S0087S36762、假设又知道所有站点之间的步行时间,给出任意两站点之间线路选择问题的数学模型。3假设与模型3.1模型假设1)在问题一,只在任意两条线路的公共站点进行公汽换乘;2)对转乘次数无限定;3)如果下行线是上行线的原路返回,不考虑上行和下行线路间进行换乘;4)环行线路是双向
11、环路5)线路的换乘中,等车时间 = 平均耗时3.2符号说明Start : 起始站点 End: 目的站点 Fee: 乘车费用BusNum: 乘车次数 Time: 乘车时间C(i,j) : i 站点到j站点的权值,表示乘车费用或者乘车时间或乘车次数,也可表示反映乘车费用和时间及乘车次数的综合信息值EDGE:结构体数组,存储网络图中所有边的信息 Road:存储路径数组 Roadi: 在最优路线 i 节点的前驱 Max:理论上花费最大值,赋值MyMAX3.3模型的建立本题要求在某城市公交网络中, 从给出的起点(Start)出发,根据对线路的不同选择准则(乘车时间最短或转乘次数最少或乘车费用最低),找出
12、一条到达目的地(End)的最优线路。定义一 把站点i到站点j的乘车时间或乘车次数或乘车费用称做i到j的花费。定义二 设有一个有限点集其中称为节点(顶点);弧集其中称为从节点到节点直接连接的弧(或有向边);由点集和弧集A组成的图称为有向图,记为。一条路是指由节点组成的有限序列,其中。当 ,且时,这条路便称为回路。不含回路的图叫做非循环图1; 图公交网络示意图(非真实地理位置图) 在公交网中,我们把每个站点看作图中的一个节点,把站点之间的线路看作图中对应节点的边,如图所示,把各个站点之间所必需的花费看作对应边上的权(权0)。公交网就转化成图论中的加权图。因为存在环行线路,在本题中,此题将图转化成为
13、一般图的图论问题,即在给定的加权一般图中,从起点(Start)出发,沿一条线路到达目的地(End),使花费最少。因此,该问题的数学模型是含有回路的一般有向图的最短路!3.4问题的求解仅考虑公汽线路,给出任意两公汽站点之间线路选择问题的一般数学模型与算法,求出6对起始站终到站之间的最佳路线。1.问题分析: 最佳路线的选择,首先设置一个统一的准则。在一般网络图中,可以利用普通Dijkstra算法进行最短距离求解,但公交网络图节点数目庞大,运算耗时过长,且运算所得结果可能不符合人们的实际需求,所以不宜采用此算法2。在本题中,采用了良好的数据结构并结合改进的算法达到查询所需时间少的要求。2准则: 6
14、种可能的顺序。1)乘车次数 乘车时间 乘车费用 2)乘车次数 乘车费用 乘车时间3)乘车时间 乘车次数 乘车费用 4)乘车时间 乘车费用 乘车次数5)乘车费用 乘车次数 乘车时间 6)乘车费用 乘车时间 乘车次数3 算法: 在本题中,由于网络图结构较复杂,节点数量庞大,简单利用Dijkstra算法效果不好,耗时较长,并且得到的解可能是理论上的最优解,但却不符合实际情况。 发现利用一种较为特殊的数据结构来表达图时,利用根据实际情况得到的推论,结合基于改进的广搜算法,可以得到符合实际的最优解。1)数据结构: 结构体 + 链表 Fee BusNum Time U Bus Nxt Fee: 价钱 Bu
15、sNum: 转乘次数 Time: 耗费时间 u: 边的结点 Bus: 线路 nxt: 在此线路中的u下一个节点 1-1边结构体edge图2 INDEXI表示以I为起始点的第一条边在EDGE中存储的下标位置。 公交线路可能存在的公共边,在结构体数组中首先表现为Bus不同,此外,Fee,BusNum,Time也会相应的不同。这样起点和终点相同的一条边会因为Bus的不同而作为不同的边来处理,但同样都放到邻接表中。算法实现过程中,根据不同的准则只可能去选择其中某一个边。2) 推论: C(i,j)+C(j,k) = C(i,k) C(i,j) 表示节点i到节点j所用最优的乘车次数或时间或费用。 证明:
16、C(i,j)=M C(j,k)=N 乘车次数: 当在j点转乘时, 因为存在一次换车 M+N = C(i,j)+C(j,k) C(i,k) 当在j点不转乘时, C(i,j)+C(j,k) = C(i,k) 乘车时间: 当在j点转乘时, 因为换乘需要耗时 C(i,j)+C(j,k) C(i,k) 当在j点不转乘时C(i,j)+C(j,k) = C(i,k) 乘车费用: 当在j点转乘时, 因为换车要重新上车,肯定要重新付费, C(i,j)+C(j,k) = C(i,k) 当在j点不转乘时 如果线路是一票制C(i,j)+C(j,k) = C(i,k) 如果是分段计价C(i,j)+C(j,k) = C(
17、i,k) 证明完毕。 根据推论,可以得到C(i,k)的最小值,即得到最优解。3) 算法步骤编程实现了对问题的求解。 算法的过程即是C(i,j)矩阵的实现。 (1): 确定矩阵的最初值。以线路为主体,根据费用价格准则和节点间的距离和单位距离的耗时,可以简单的得到同一条线路中的C(i,j)。如果i,j不在同一条线路,则C(i,j)赋值为最大值Max;(2): 确定两个节点集合A和B,A U B为全;部节点集合。 A 中初始节点为所给节点Start;(3): 根据确定的准则和推论,从B中寻找一个节点k,其到A中任意节点的C(i,k) 最小,则C(Start,k)=C(i,k).存储Road(k) =
18、 i; k归入A、B中除去节点k。如果k != End,转(3); 否则转(4);(4):得到最优解即C(Start,k)。用Road(k)及其回溯,可以得到最优路径,结束;4) 问题结果:(以 表示人们对线路选择中各因素的优先级)一 乘车次数最少的路线 表1)乘车次数 乘车费用 乘车时间起始点目的点乘车次数费用时间行车路线S3359S182823106S3359-L436-S1784-L167-S1828S1557S048133111S1557-L84-S1919-L189-S3186-L460-S481S0971S048523139S971-L13-S2322-L417-S485S0008
19、S00732288S8-L355-S2263-L345-S73S0148S048533111S148-L308-S36-L156-S2210-L417-S485S0087S36762270S87-L454-S3496-L209-S3676表2)乘车次数 乘车时间 乘车费用起始点目的点乘车次数时间费用行车路线S3359S182821063S3359-L436-S1784-L167-S1828S1557S048131113S1557-L84-S1919-L189-S3186-L460-S481S0971S048521334S971-L13-S2184-L417-S485S0008S00732823
20、S8-L159-S491-L459-S73S0148S048531113S148-L308-S36-L156-S2210-L417-S485S0087S36762702S87-L454-S3496-L209-S3676二 乘车费用最少的路线 表1) 乘车费用 乘车时间 乘车次数起始点目的点费用时间乘车次数行车路线S3359S18283693S3359-L15-S2903-L485-S1784-L167-S1828S1557S048131113S1557-L84-S1919-L189-S3186-L460-S481S0971S048531083S971-L13-S2517-L290-S2159-
21、L469-S485S0008S00732882S8-L355-S2263-L345-S73S0148S048531113S148-L308-S36-L156-S2210-L417-S485S0087S36762702S87-L454-S3496-L209-S3676表2) 乘车费用 乘车次数 乘车时间起始点目的点费用乘车次数时间行车路线S3359S182832106S3359-L436-S1784-L167-S1828S1557S048133111S1557-L84-S1919-L189-S3186-L460-S481S0971S048532139S971-L13-S2322-L417-S48
22、5S0008S00732288S8-L355-S2263-L345-S73S0148S048533111S148-L308-S36-L156-S2210-L417-S485S0087S36762270S87-L454-S3496-L209-S3676三 乘车费用最小的路线 表1) 乘车时间 转车次数 乘车费用起始点目的点时间乘车次数费用行车路线S3359S18286933S3359-L15-S2903-L485-S1784-L167-S1828S1557S048110444S1557-L84-S1919-L189-S3186-L91-S902-L254-S481S0971S048510833S
23、971-L13-S2517-L290-S2159-L469-S485S0008S00736455S8-L198-S1691-L476-S2085-L17-S609-L328-S525-L103-S73S0148S048510744S148-L308-S3604-L81-S2361-L156-S2210-L417-S485S0087S36765133S87-L206-S88-L231-S427-L97-S3676 表2) 乘车时间 乘车费用 乘车次数起始点目的点时间费用乘车次数行车路线S3359S18286933S3359-L15-S2903-L485-S1784-L167-S1828S1557
24、S048110444S1557-L84-S1919-L189-S3186-L91-S902-L254-S481S0971S048510833S971-L13-S2517-L290-S2159-L469-S485S0008S00736455S8-L198-S1691-L476-S2085-L17-S609-L328-S525-L103-S73S0148S048510744S148-L308-S3604-L81-S2361-L156-S2210-L417-S485S0087S36765133S87-L206-S88-L231-S427-L97-S3676四 总结通过这次数学建模与数学软件综合训练,
25、不仅使我掌握了部分数学软件的使用,特别是像MATLAB、MAPLE等软件已经有了初步的认识和掌握,还有公式编辑器这个数学软件也是我新近接触到的数学软件,通过使用才发现这个软件在编辑数学公式等方面有很大的优势,也使我认识到自己接触的知识面很窄,对于好多数学知识很欠缺。而另一个方面我也真正尝试到了数学建模的乐趣,以前自己因为认识有限,对数学建模根本不了解,现在通过对数学建模课程的学习以及对数学建模的综合训练,使我对数学建模才有了真正的了解,从理论到实践,在整整两星期的时间里,可以说得是苦多于甜,但是我可以学到很多很多的东西,同时也可以巩固了以前所学过的知识,而且还学到了很多在书本上所没有学到过的知
26、识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。五 参考文献1 参考文献一1胡守信,李柏年等,基于MATLAB的数学实验,科学出版社,2004-62徐全智,杨晋浩等,数学建模M,高等教育出版社,2003-73李尚志,数学建模竞赛教程M,江苏教育出版社,1996-62 参考文献二 1俞玉森,数学规划的原理和方法,武汉:华中理工大学出版社,1993.2胡霍真,戴光明,李颖等,公交车网络的最短路径算法及实现,微机发展,Vol.15,No.9:21-22,2005.3杨新苗,王炜,马文腾等,基于GIS 的公交乘客出行路径选择模型J,东南大学学报(自然科学版),(6):8791,2000.4陈家,ARCPINFO 路径寻找功能的拓展:双向比较追索法J,上海师范大学学报(自然科学版),(3):7883,1996.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1