收藏 分享(赏)

乘公交,看奥运.doc

上传人:精品资料 文档编号:9607825 上传时间:2019-08-18 格式:DOC 页数:13 大小:151KB
下载 相关 举报
乘公交,看奥运.doc_第1页
第1页 / 共13页
乘公交,看奥运.doc_第2页
第2页 / 共13页
乘公交,看奥运.doc_第3页
第3页 / 共13页
乘公交,看奥运.doc_第4页
第4页 / 共13页
乘公交,看奥运.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、乘公交,看奥运数学模型摘要一、问题的重述问题的背景我国人民翘首企盼的第 29 届奥运会明年 8 月将在北京举行,届时有大量观众到现场观看奥运比赛,其中大部分人将会乘坐公共交通工具(简称公交,包括公汽、地铁等)出行。这些年来,城市的公交系统有了很大发展,北京市的公交线路已达 800 条以上,使得公众的出行更加通畅、便利,但同时也面临多条线路的选择问题。针对市场需求,某公司准备研制开发一个解决公交线路选择问题的自主查询计算机系统。问题的提出为了设计这样一个系统,其核心是线路选择的模型与算法,应该从实际情况出发考虑,满足查询者的各种不同需求。我们需要解决如下问题:1、仅考虑公汽线路,给出任意两公汽站

2、点之间线路选择问题的一般数学模型与算法。并根据附录数据,利用建立的模型与算法,求出以下 6 对起始站终到站之间的最佳路线(要有清晰的评价说明) 。(1)、S3769S2857 (2)、S1557S0481 (3)、S1879S2322(4)、S0008S0073 (5)、S0148S0485 (6)、S0087S36762、同时考虑公汽与地铁线路,解决以上问题。3、假设又知道所有站点之间的步行时间,给出任意两站点之间线路选择问题的数学模型。基本参数假设相邻公汽站平均行驶时间(包括停站时间): 3 分钟相邻地铁站平均行驶时间(包括停站时间): 2.5 分钟公汽换乘公汽平均耗时: 6 分钟(其中步

3、行时间 2 分钟)地铁换乘地铁平均耗时: 5 分钟(其中步行时间 2 分钟)地铁换乘公汽平均耗时: 8 分钟(其中步行时间 4 分钟)公汽换乘地铁平均耗时: 6 分钟(其中步行时间 4 分钟)公汽票价:分为单一票价与分段计价两种,标记于线路后;其中分段计价的票价为:020 站:1 元;2140 站:2 元;40 站以上:3 元地铁票价:3 元(无论地铁线路间是否换乘)二、问题的假设1、附录中的基本参数和线路信息都是真实可靠的2、公交的运行状况良好,不受天气、路况等其他因素的影响3、假设环行的运行情况如下:环行可以正反两个方向通行,但是在始发站和终点站必须换乘车辆。三、问题的分析本题主要是解决公

4、交线路的选择问题,根据查询者的各种不同需求建立不同的模型。从实际情况出发考虑,不同人群的出行心理也不同。总体来看,乘客出行时最看重三类因素:换成次数最少、时间最少和费用最低。于是我们将这三个因素作为优化目标,建立不同的模型,满足不同人群的需求。由于本题的数据量很大,我们首先对数据进行分析、筛选、整合等处理,便于模型的建立。通过对数据的处理发现,在此公交系统中,共有 520 条线路,3957 个站点,其中线路还分单行道、双行道(上行、下行)和环行道,计费也分为单一票制和分段计费两种。问题一:仅考虑公汽线路,要寻找任意两公汽站点之间最佳公交线路,就要满足乘客的不同需求,比如换成次数最少、时间最少、

5、费用最低、路程最短等。为了简化问题,根据乘客最关心的问题,我们仅考虑在换成次数最少、时间最少、费用最低的条件下确定最佳公交线路。问题二:问题一仅考虑公汽线路,而问题二在问题一的基础上同时考虑公汽与地铁线路。这就使得转乘不仅仅是公汽转公汽,还包括公汽转地铁,地铁转地铁,地铁转公汽,使得转乘问题复杂化。为了得到用时最少的线路,我们可考虑建立了分步规划模型进行求解,将总用时最少这一规划问题,分成在每次搭乘都用时最少的分布规划问题。从而在综合考虑公汽与地铁的情况下确定了最佳线路。问题三:此问题在前两个问题的基础上又考虑了步行因素,四、符号的设定矩阵 B:直达时两公汽站点的时间矩阵 C:直达时两公汽站点

6、的费用矩阵 L:直达时两公汽站点时间最少的线路矩阵 U:直达时两公汽站点费用最低的线路矩阵 B1:转乘一次时两公汽站点的总时间矩阵 C1:转乘一次时两公汽站点的总费用矩阵 L11:时间最少时起始站到中转站的线路矩阵 L12:时间最少时中转站到终点站的线路矩阵 L13:记录时间最少时中转站的站点矩阵 U11:费用最少时起始站到中转站的线路矩阵 U12:费用最少时中转站到终点站的线路矩阵 U13:记录费用最少时中转站的站点五、模型的建立问题一的模型建立与求解根据题目要求寻找任意两公汽站点之间最佳公交线路,不同人群的出行心理也不同。因此,选择最佳公交线路要结合不同人群的需求。从实际情况出发来看,人们

7、出行最看重三类指标:时间、费用和转乘次数。(1)看重时间:公交耗时最少的线路最佳(2)看重费用:公交费用最低的线路最佳(3)看重转乘次数:公交转乘次数最少的线路最佳由于数据量庞大,直接对三者综合考虑会是的计算过于复杂,故将这三类指标分开来计算。一般情况下,如果两站点之间能够直达,人们会首选直达的线路。如果不能直达,人们会选择转乘一次或两次到达目的地。对于转乘三次及三次以上的线路不予考虑,因为转乘三次及三次以上的线路不管从时间还是费用方面考虑,都不是理想的最佳的线路。综上所述,我们建立了三个模型,分别为模型一(时间最少) 、模型二(费用最低)和模型三(转乘次数最少) ,来满足不同人群的需求。同时

8、,在仅考虑公汽线路的条件下,我们要建立公汽站点之间的直达矩阵A、转乘一次矩阵 A1 和转乘两次矩阵 A2,通过这三个矩阵来判断两汽站点之间的直达或转乘情况。模型的建立模型一:时间最少在此模型中,我们将时间作为优化目标。对于比较看重时间的人来说,时间尽可能少使他们选择最佳线路的依据。模型的算法如下:步骤一:通过直达矩阵来判断两公汽站点是否可以直达,若可以直达执行步骤二,否则执行步骤三。步骤二:计算出直达、转乘一次和转乘两次的情况下,时间最少的线路并记录相应的时间和费用等信息。步骤三:利用转乘一次矩阵判断两公汽站点是否通过转乘一次到达目的地,若可以执行步骤四,否则执行步骤五。步骤四:计算出转乘一次

9、和转乘两次的情况下,时间最少的线路并记录相应的时间和费用等信息。步骤五:利用转乘两次矩阵判断两公汽站点是否通过转乘两次到达目的地,若可以执行步骤六,否则停止。步骤六:计算出转乘两次的情况下,时间最少的线路并记录相应的时间和费用等信息。以上的算法可以利用 MATLAB 进行编程,将算法用程序语言表示出来。通过以上的算法,向询者提供不同转乘次数下耗时最少的线路及相应的时间和费用等信息。查询者根据自身需求,综合考虑选择适合自己的最佳线路。其算法的程图如下:输入两公汽站点判断是否直达判断是否能转乘一次判断是否能转乘两次计算时间最少的线路及相关信息计算时间最少的线路及相关信息计算时间最少的线路及相关信息

10、将时间赋值为无穷大将时间赋值为无穷大比较所有的时间,记录时间最少线路及相关信息结束N N NY Y Y模型二:费用最低模型一将时间作为优化目标,为看重时间的人提供了多种选择。在模型二中,我们将费用最为优化目标,尽可能使得起始站到出发地的费用最低。模型二的建模思想和模型一基本相同,仅优化的目标不一样。模型的算法如下:步骤一:通过直达矩阵来判断两公汽站点是否可以直达,若可以直达执行步骤二,否则执行步骤三。步骤二:计算出直达、转乘一次和转乘两次的情况下,费用最少的线路并记录相应的时间和费用等信息。步骤三:利用转乘一次矩阵判断两公汽站点是否通过转乘一次到达目的地,若可以执行步骤四,否则执行步骤五。步骤

11、四:计算出转乘一次和转乘两次的情况下,费用最少的线路并记录相应的时间和费用等信息。步骤五:利用转乘两次矩阵判断两公汽站点是否通过转乘两次到达目的地,若可以执行步骤六,否则停止。步骤六:计算出转乘两次的情况下,费用最少的线路并记录相应的时间和费用等信息。输入两公汽站点判断是否直达判断是否能转乘一次判断是否能转乘两次计算费用最低的线路及相关信息计算费用最少的线路及相关信息计算费用最少的线路及相关信息将费用赋值为无穷大将费用赋值为无穷大比较所有的费用,记录时间最少线路及相关信息结束N N NY Y Y模型三:转乘次数最少转乘次数的多少也会影响人们的公交线路的选择,对于老年人等出行不方便的人群来说,首

12、要考虑转乘次数最少。就赶时间的人群来看,他们不会太在意转乘次数,如果转乘次数多一点,但时间相比较其他方式而言大大缩短,他们也会选择转乘次数多的公交线路。要使两公汽站点经过一次转乘能够到达,必须找到一个中转站,而且起始站到中转站、中转站到终点站要是直达的,这样才能满足转乘一次的要求。因此,找到中转站是解题的关键。转乘两次的思想同转乘一次基本相同,不同的是要找到两个中转站。如果两公汽站点之间存在直达、转乘一次和转乘两次的情况,该模型综合模型一和模型二将每种情况下的线路的时间、费用等信息一一列出来,提供给人们参考。六、模型的求解6.1 问题一综上所述,每一种模型的解不一定都是最优解,有可能是次优解,

13、因为每一种模型只优化了单一目标。但是不同人群的需求也不一样,次优解也可以作为最佳路线。乘客可以根据每一种模型列出的结果,找到满足自己需求的最佳路线。以下是运用以上模型对问题一种 6 对起始站终点站之间的最佳路线的求解。利用 MATLAB 编程,得到三种模型的结果如下:起始站- 终点站 优化目标 时间/分钟 费用/元 转乘次数时间最少 21 1 0费用最低 30 1 0S3769S2857转乘次数最少 21 1 0时间最少 108 3 2费用最低 159 3 2S1557S0481转乘次数最少 108 3 2时间最少 30 1 0费用最低 30 1 0S1879S2322转乘次数最少 30 1

14、0时间最少 84 2 1费用最低 84 2 1S0008S0073转乘次数最少 84 2 1时间最少 108 3 2费用最低 117 3 2S0148S0485转乘次数最少 108 3 2时间最少 66 2 1S0087S3676费用最低 72 2 1转乘次数最少 66 2 1由上面的结果可以得出,6 对起始站终点站的最佳路线及相关信息:(1)S3769 S2857耗时 21min,费用 1 元,路线为 L288(2)S1557 S0481耗时 108min,费用 3 元第一个中转站站点:S1919,第二个中转站站点:S3186起始站到第一个中转站的线路 L084 ,第一个中转站到第二个中转站

15、的线路L189,第二个中转站到终点站的线路 L460。(3)S1879 S2322耗时 30min,费用 1 元,路线为 L013(4)S0008 S0073耗时 84min,费用 2 元中转站站点:S0291起始站到中转站的线路 L159,中转站到终点站的线路 L059。(5)S0148 S0485耗时 108min,费用 3 元第一个中转站站点:S0036,第二个中转站站点:S2210起始站到第一个中转站的线路 L308,第一个中转站到第二个中转站的线路L156,第二个中转站到终点站的线路 L417。(6)S0087S3676耗时 66min,费用 2 元中转站站点:S3496起始站到中转

16、站的线路 L454,中转站到终点站的线路 L209。这 6 对起始站终点站的最佳路线的站点见附录一。6.2 问题二6.2.1 问题分析问题一是运用模型求解在仅考虑公交汽车之间相互转换的情况的最佳线路,但是随着公交的不断发展,更应该考虑将地铁加入到整个公交网络中来,形成公汽与公汽的混合网络。此时,问题更贴近实际,但问题也变得更加复杂。尤其是转乘不仅仅是公汽转公汽,还包括公汽转地铁,地铁转地铁,地铁转公汽,使得转乘问题复杂化。通过分析所给数据,我们发现所有的地铁站点都有与之对应的公汽站点,且文中假设同一地铁站对应的任意两个公汽站之间可以通过地铁站换乘,因此我们认为公汽与地铁之间的站点是可以是相互转

17、换的。所以问题二的关键在于如何将所有的地铁线路与站点(和与之对应的公汽站点)转换为统一的公汽站点。6.2.2 问题求解首先,我们将所有的地铁站点 D01 至 D39 和其所对应的公汽站点用统一的公汽站点替代(3958 至 3996) 。再将 T1、T2 的上下行转换成为单一票制为 3元的公汽线路 L521、L522,成为一个新的公汽线路。 例如:将 D01 所对应的公汽站点 S0567,S0042 ,S0025 替换为 S3958L521 上行的所有站点为:39583959 3960.39953996然后,我们参照问题一运用 matlab 变出相应程序,即可求出符合各模型的最佳线路。 (程序参

18、照附录 2)6.2.3 得出结果首先,我们发现在问题一中的 6 对起始站终到站在新的公汽线路中会产生变动。其中第六组 S0087S3676 在新的公汽线路中表示为 S3984S3993. 所得六组数据如下表同时考虑工期和地铁的情况下 6 组数据的最佳路线(注:表中路线名为新公汽路线,521 路、522 路实为 T1、T2 )起始站-终点站 优化目标 时间/分钟 费用/元 转乘次 数 线路 中转站时间最少 21 1 0 288 上行 /费用最低 30 1 0 288 上行 /S3769S2857转乘次数最少 21 1 0 288 上行 /时间最少 108 3 2 84 下行、189 下行、460

19、 下行 3977、3186费用最低 147 3 2 84 下行、348 下行、447 上行 28、3970S1557S0481转乘次数最少 108 3 2 84 下行、189 下行、460 下行 3977、3186时间最少 30 1 0 13 下行 /费用最低 30 1 0 13 下行 /S1879S2322转乘次数最少 30 1 0 13 下行 /时间最少 81 2 1 159 下行、474 上行 3970费用最低 84 2 1S0008S0073转乘次数最少 81 2 1 159 下行、474 上行 3970时间最少 88.5 5 2 24 下行、521 上行、51 上行 3959、397

20、8S0148S0485费用最低 123 3 2 308 上行、157 下行、45 下行 36、1406转乘次数最少 123 3 2 308 上行、157 下行、45 下行 36、1406时间最少 25 3 0 522 上行 /费用最低 72 2 1S3984S3993转乘次数最少 25 3 0 522 上行 /6.3 问题三6.3.1 问题分析6.3.2 问题求解6.3.3 得出结论附录附录一:(1)针对 S3769S2857 最佳路线的选择S3769S2857 耗时 21min,费用 1 元路线为L288:S3769S0132 S0262S3806S3737S1505S2902S2857(2

21、)针对 S1557S0481 最佳路线的选择S1557S0481 耗时 108min,费用 3 元第一个中转站站点:S1919,第二个中转站站点:S3186起始站到第一个中转站的线路L084:S1557S3158S2628S3408S2044S1985 S2563S2682S0028S0029S0055S0051S1919第一个中转站到第二个中转站的线路 L189:S 1919S2840S1402S3186第二个中转站到终点站的线路L460:S3186S3544S2116S2119S1788S1789 S1770S2322S992S2184S2954S3117S2424S1174S902S09

22、03S2101S0481(3)针对 S1879S2322 最佳路线的选择S1879S2322 耗时 30min,费用 1 元路线为L013:S1879S3405 S2517S3117S2954S0531S2184S2182 S0992S2324S2322(4)针对 S0008S0073 最佳路线的选择S0008S0073 耗时 84min,费用 2 元中转站站点:S0291起始站到中转站的线路L159:S0008S3412 S2743S3586S2544S0913S2953S3874 S0630S0854S0400S2633S3053S0408S0145S3138 S2684S2683S029

23、1中转站到终点站的线路L059:S0291S3614 S0491S2559S0990S3315S3898S1855 S0073(5)针对 S0148S0485 最佳路线的选择S0148S0485 耗时 108min,费用 3 元第一个中转站站点:S0036,第二个中转站站点:S2210起始站到第一个中转站的线路L308:S0148S0462 S0361S1797S2221S0302S2222S2737 S1716S0128S2268S1308S1391S2272S0036第一个中转站到第二个中转站的线路L156:S0036S3233 S0618S0617S0721S2057S2361S0608

24、 S0399S2535S2534S0239S0497S2090S2082S2210第二个中转站到终点站的线路 L417:S2210S3332S3351 S0485(6)针对 S0087S3676 最佳路线的选择S0087S3676 耗时 66min,费用 2 元中转站站点:S3496起始站到中转站的线路L454:S0087S0857 S0630S14271426S0541S0978 S3389S1919 S0641S2840S3496中转站到终点站的线路L209:S3496S1883 S1159S2699S2922S3010S0583S1987 S0082S3676附录二:模型一的代码 A=z

25、eros(3957,3957);B=inf(3957,3957);C=inf(3957,3957);L=inf(3957,3957);U=inf(3957,3957);for i=1:1040for j=1:86if a(i,j)=0for k=j+1:86if a(i,k)=0A(a(i,j),a(i,k)=1;m=3*(k-j);if B(a(i,j),a(i,k)mB(a(i,j),a(i,k)=m; L(a(i,j),a(i,k)=ceil(i/2);endif b(i)=1n=1;elseif k-jnC(a(i,j),a(i,k)=n;U(a(i,j),a(i,k)=ceil(i/2);end endendendendend

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报