最佳路径选择方案的优化模型数学建模论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最佳路径选择方案的优化模型
摘要
本文对乘公交、看奥运这一实际问题进行了深入的研究,首先对公交乘客进行了心理分析,得出影响乘客出行的三个主要因素分别为:换乘次数、出行时间、出行费用,通过调查研究,得出换乘次数最少是乘客出行考虑的最主要因素,其次是出行时间和出行费用。
然后利用公交乘客的出行过程抽象为站点—线路的交替转换的思想,建立了站点—线路序列模型,从而确定了出行者对路线的所有选择方案。
针对问题一:仅考虑公汽的情况下,以换乘次数最少为第一目标、出行时间为第二目标建立了优化模型一,再以换乘次数最少为第一目标、出行费用为第二目标建立了优化模型二,从而满足了两类不同乘客的需求。
并依靠站点—线路序列模型采用图论中计算方法,分别得到了公交乘客的最少换乘次数,所经过的站点,出行时间、出行费用以及相应的算法。
针对问题二:在问题一的基础上再考虑地铁线路,建立了对应的两组优化模型,并推导出相应的改进算法。
针对问题三:在问题一、二的基础上,考虑出行者可以通过步行到达相邻的公交站点的情况,同样建立了两组相应的优化模型,并给出了相应的计算方法。
然后利用基于换乘次数最少的最优路径改进算法思想,借助MATLAB软件编程分别对问题一和二进行了求解,得到的结果见模型的求解(正文第21、22页)。
最后对所求得的结果进行了对比分析和检验,根据各参数的变化关系,进行了灵敏性分析,本模型主要抓住了乘客的心理需求,实用性强,具有较强的现实意义。
关键词:站点—线路序列最优路径改进算法公交
一、问题的提出
1.1基本情况
我国人民翘首企盼的第29届奥运会明年8月将在北京举行,届时有大量观众到现场观看奥运比赛,其中大部分人将会乘坐公共交通工具(简称公交,包括公汽、地铁等)出行。
这些年来,城市的公交系统有了很大发展,北京市的公交线路已达800条以上,使得公众的出行更加通畅、便利,但同时也面临多条线路的选择(包括不同线路上的换乘交通工具的路径选择等)问题。
针对市场需求,某公司准备研制开发一个解决公交线路选择问题的自主查询计算机系统。
1.2基本参数设定:
1)相邻公汽站平均行驶时间(包括停站时间):3分钟;
2)相邻地铁站平均行驶时间(包括停站时间):2.5分钟;
3)公汽换乘公汽平均耗时:5分钟(其中步行时间2分钟);
4)地铁换乘地铁平均耗时:4分钟(其中步行时间2分钟);
5)地铁换乘公汽平均耗时:7分钟(其中步行时间4分钟);
6)公汽换乘地铁平均耗时:6分钟(其中步行时间4分钟);
7)公汽票价:分为单一票价与分段计价两种,标记于线路后;其中分段计价的票价为:0~20站:1元;21~40站:2元;40站以上:3元。
地铁票价:3元(无论地铁线路间是否换乘)。
注:以上参数均为简化问题而作的假设,未必与实际数据完全吻合。
1.3相关信息(详见附件)
【附件1】公汽和地铁线路信息数据文件格式说明;
【附件1.1】公汽线路及相关信息;
【附件1.2】地铁线路及相关信息;
【附件2】地铁换乘公汽信息数据文件格式说明;
【附件2.1】地铁T1线换乘公汽信息;
【附件2.2】地铁T2线换乘公汽信息。
1.4需解决的问题
为了设计这样一个公交线路选择的自助查询计算机系统,其核心是线路选择的模型
与算法,应该从实际情况出发考虑,以满足查询者的各种不同需求。
进而需要解决如下问题:
问题一、仅考虑公汽线路,给出任意两公汽站点之间线路选择问题的一般数学模型与算法。
并根据附件中的相关数据,利用所得到的模型与算法,求出以下6对起始站→终到站之间的最佳路线(要有清晰的评价说明)。
(1)、S3359→S1828 (2)、S1557→S0481 (3)、S0971→S0485
(4)、S0008→S0073 (5)、S0148→S0485 (6)、S0087→S3676
问题二、同时考虑公汽与地铁线路,解决以上问题。
问题三、假设又知道所有站点之间的步行时间,请你给出任意两站点之间线路选择问题的数学模型。
二、基本假设
2.1出行者对公交线路的选择是理性的且能够顺利正常的到达目的地。
2.2出行者在所经过的站点中,不允许两次经过相同的站点。
2.3公交与地铁换乘距离固定,换乘步行时间为常数。
2.4同一地铁站对应的任意两个公汽站之间可以通过地铁站换乘且无需支付地铁费。
2.5出行者换乘时,不受人群拥挤、交通堵塞等现象的影响且均能乘到相应线路的公汽
或地铁。
2.6出行者换乘交通工具时的平均耗时包括出行者到站的等待时间和换乘的步行时间;
2.7公汽线路上的单一制票价为1元,分段计价的票价为:0~20个站:1元;21~40站:
2元;40站以上:3元;地铁票价:3元(无论地铁线路间是否换乘)。
2.8附件所给数据准确无误。
(注:本文中针对相应问题的假设将在后文中陆续给出)
三、问题分析与模型建立
观看2008年8月在北京举行的奥运会是我国人民翘首企盼的盛事,届时将会有大量的观众需要到现场观看奥运比赛,公交也将成为主要的交通工具,因此观看比赛的首要问题应当是解决每位观众如何去的路线问题。
本文需要设计乘客对路线的选择方案,在探讨选择公交线路的数学模型和最优路径算法时,有必要先了解公交乘客出行时所考虑的因素,通过对公交乘客出行心理、行为的研究来确定模型的优化目标和约束条件。
3.1对公交乘客的心理研究
“出行经历的总站数”、通常乘客出行时,主要考虑以下几个主要因素[1]:
“换乘次数”、
“出行耗时”、“出行费用”、“存在的步行时间”等。
就乘客本身而言,公交乘客出行更多考虑的是出行的方便性和舒适性,下面就影响公交乘客出行的各因素进行具体分析,不妨将以上影响因素作如下归纳解释:
(1)换乘次数:出行者完成一次从出发点到终点出行过程中所换车的次数。
(2)出行经历的总站数:由起点到终点所经历的站点总数。
(3)出行耗时:出行者在一次乘公交出行过程中所用的总时间。
(4)出行费用:出行者在完成一次由起点到达目的地过程中所花的车费。
(5)存在的步行时间:出行者由起点到终点所有步行时间的总和。
从实际生活可知,上述几个因素是相互关联,相互影响的,因此影响乘客出行的因素可以通过对比后进行简化。
比如“换乘次数”与“出行费用”和“存在的步行时间”都具有一定的正相关性,一般说来,当乘客的换乘次数越多,出行费用将更高,通过换乘而步行的时间也就越多,这在单一的公汽票价上最容易体现与费用的相关性;“出行经历的总站数”与“出行耗时”也具有一定的正相关性,尤其是不需要经过换乘就能到达的目的地。
而“换乘次数”与“出行经历的总站数”在一般情况下,将不会存在绝对的相关性。
因此,可认为“换乘次数”和“出行耗时”是影响出行者的两个独立的因素,经研究表明多数的公交乘客希望换乘次数最少,况且公交公司对公交线路的设计也是尽量减少乘客的平均换乘次数[2];而且公交乘客出行时还受到行李、地理位置等客观因素的影响,这样更不希望有较多的换乘。
其次对于看奥运非常心切的出行者来讲,出行耗时对他们也许是比较关键的。
在此当给出供乘客选择的公交路线也应当尽可能的满足公交乘客的需求,那么什么样的出行路线又是出行者最需要的呢?这除了对个别的公交乘客进行心理分析得到不同的需求结果之外,还应当使得众多的公交乘客在选择上得到满意,为权衡这两方面的独立因素,有必要对看奥运的公交乘客进行心理调查,介于竞赛期间的时间关系本文对出行看奥运的出行者的心理调查就不作单独的深入研究,现参考在南京市做的一个公交乘客出行心里调查统计结果[1],该调查主要对3个因素做了统计:换成次数,出行距离,出行耗时。
其记录结果如下图(图3-2)所示:
图3-2 公交乘客出行心理分析图
从图中统计的心理分析结果可以看出,有%
41的出行者在选择出行路径时,首
16
.
先考虑的是换乘次数最少,其次考虑的是时间最短。
在实际生活中,出行者往往受到行李、地理位置、天气等诸多因素的影响,选择最少换乘次数的公交路线往往能最大限度地解决某些因出行带来的麻烦,并且从一条线路换乘到另一条线路是费时又费力的,这也是大多数公交乘客希望换乘最少而与实际生活调查相吻合的主要原因。
因此公交乘客在选择最优路线时应当是以换乘次数最少为第一目标。
另外,对于一个以出行看奥运为目的的出行者来说,达到目的地的出行总费用远不足以作为主要因素。
并且出行费用受换乘次数的影响较显著,当不考虑地铁、较多站数的分段计价线路的公汽是不会有多大影响的,因此这不比作为主要目标加以考虑。
综上所述,可以以换乘次数最少为第一目标,以选择乘车所用时间最少为第二目标建立相应的线路选择的优化模型。
但对这些目标函数和约束条件的具体考证和检验还需要进一步挖掘附件中的相关信息。
3.2分析附件中的主要相关信息
3.2.1直观统计结果
作为需要乘坐公交工具去看奥运的行者来说,了解乘车路线的相关信息同样是最重要的;由EXCEL软件统计【附件1.1】和【附件1.2】中的公交线路系统数据,得到如下信息:
(1)该公交系统共有公汽线路520条。
其中票价信息为分段计价的线路283条,单一票制1元的线路237条;
上下行路径不同的线路409条,上下行路径相同的线路89条,环行线路22条。
(2) 该公交系统共有公汽站点3957个。
(3) 该公交系统共有地铁线路2条。
其中直行线路1条,环行线路1条;
(4) 该公交系统共有地铁站点39个。
3.2.2信息处理
对于上述统计的直观信息,结合本文1.2节基本参数设定中的票价信息,结合上述第(1)条统计结果中的分段计价线路进行综合考虑,可得:
在分段计价路线中,共有27条的公汽站点数不超过20,有148条的公汽站点数在21~40之间,公汽站点数超过40的线路有108条。
因此,从单独的计算角度来考虑,可以将分段计价中站数不超过20的线路归为单一票制1元的线路,因此上述信息(1)可修正为:票价信息为单一票制1元的线路264条;在分段计价的路线中,共有256条,其中有148条的公汽站点数在21~40之间,公汽站点数超过40的线路有108条。
从上述处理结果可以看到,在公汽的运行系统中“出行费用”的增长将胜过换乘次数的增长,其原因是出行者在乘坐分段计价的公汽线路时,将可能被多耗费用,所以将费用计算出来共乘客参考也是有必要的。
为给出行者提供乘车路程,考虑到22条环行路线中,存在一定数量的单一票价制线路,因此还需要计算出所经历的相应站点总数。
同样,当条件对步行时间给予强调时,步行时间应是为不便于步行的公交乘客所参考的。
为进一步简化问题,同时也便于统一变量所表示的含义。
不妨对附件中的相关信息进行如下符号约定:
公汽站点 ik v : S v ik ∈;ik v 表示出行者选择第i 条公交线路所经过的第k 个站点。
公汽站点集 S :
{}395700020001,,,S S S S = 公汽线路 ik P : L P ik ∈;ik P 表示出行者选择第i 条公交线路所乘坐的第k 辆公交工具。
公汽线路集 L :
{}520002001,,,L L L L = 地铁站点 ik v : D v ik ∈;ik v 表示出行者选择第i 条公交线路所经过的第k 个站点。
地铁站点集 D :
{}390201,,,D D D D = 地铁线路 ik P : T P ik ∈;ik P 表示出行者选择第i 条公交线路所乘坐的第k 辆公交工具。
地铁线路集 T : {}21,T T T =
从上述信息可知,分析公交乘客的心理而得到出行者对路线选择目标的重要性是至关重要的,但还不能完全解决此类问题。
可见要直接建立一个全面的,能快速选择任意两站点之间最优乘车路线的模型是比较困难的。
同时就是能得到具体的出行线路,也还必须依赖于具体的公交行车路线和大范围的公交站点。
根据解决问题的时应当采取化繁为简,先易后难的原则,本文在此不妨对所研究的问题进行重难点分析以得到相应的建模思路。
3.3重点、难点分析与建模思路
首先,对公交系统中乘客给出的任意一对起始站→终到站,如何确定其最优乘车方案是本文讨论的中心。
所谓乘车方案即可看着是一个站点、线路的交替序列[1],该序列说明从起点出发乘坐何种路线,途中如何换乘,直至到达终到站。
因此,从前文的分析可以看出,建立站点、线路的交替序列[1]模型是分析公交线路选择问题的关键和出发点,也是本文所有问题讨论的基础。
其次,在站点上放置一个便于乘客查询到达目的地的理想乘车方案的计算机系统,必须让计算机收集到本站到其他任意一站的路径与换乘信息,因此单独设计这样的算法是相当困难的,而且算法的精度要求也比较高。
对本文附件中的公交系统中所列的3957个公汽站点和39个地铁站点来说,直接要得到所有任意两站点之间的最优公交路径的计算量是相当大的。
当面对这样一个密集的交通网络来说,对路线的选择主要是将面临一个P 类问题[4],根据P 类问题的处理特点,可以用某种主次改进的方法来求解。
由于每次改进中的计算量都是多项式界的,改进的次数也是多项式界的。
目前已找到具有这种特性的算法,如椭球算法,卡马卡算法,但都相当复杂。
因此要满足出行者的路线需求,则有必要对目标进行归类筛选,以降低不必要的选择、计算与搜索。
不妨采用改进的广度优先搜索算法,基于改进次数为多项式界的算法理论,本文选择从某次乘公交的起点和终点的两端进行同时搜索,在满足换乘次数最少的条件下寻找不同线路中的共同站点或不同站点之间的相同线路,并计算其总路线的中的乘车时间和站点数。
3.4预备知识
据问题提出的相关信息可知,本文所要解决的根本问题是设计一个公交线路选择的自助查询的计算机系统,并从实际情况出发考虑,以满足查询者的各种不同需求。
设计该系统的核心是线路选择的模型与算法。
由附件中的统计信息可以知道,任意一个公交站点都不是孤立的,即连接任意两公交站点之间的公交路径都是存在的。
当然这样的路径可能只有一条,也可能有多条,不妨记出行者所选择出行的起始站为0v ,终到站为d v ,从0v 到d v 的所有路径的集合也不妨记为TR ,其中第i 条路径为i TR 。
进一步分析和考虑
出行者乘公交的具体情况,一个出行者的出行可简单描述为如下路径(图3-1):
图3-1 出行者选乘公交路径规律分析示意图
注:图中i N 表示某出行者的换乘次数
从图中内容也可以反应,出行者出行乘公交的路径可看着是站点、车次、站点、车次的交替进行,直至到达终到站。
为区别前后的车次或站点,使得前后排列的站点与车次都有一定的顺序,不妨设出行者选择第i 条路径i TR 时,所乘坐的第k 节公交工具为ik p ,第k 个换乘站点(中转站)记为ik v ,由于出行者不能在同一站点上出现两次,即ik v 各不相同,特别地令00v v i =,d N i v v i =+1;于是可以得到从0v 到d v 的所有路径集TR 中的第i 条路径为i TR :
>=<d i i i i v p v p v TR ,,,,,2110
因此将所有路径i TR 集在一起,可得:
{}>=<=d i i i i i i v v p v p v TR TR TR ,,,,,,|22110
由此而来,对任何一个出行者来说,只要知道他的出行起始站0v 和终到站d v 之后,便可以在路径集TR 中找到他最需要的出行路线,据此可以得到站点—线路交替序列的一般模型。
3.4.1站点—线路交替序列模型
通过前文的逐步分析,设出行者仅通过公汽及换乘从起始点0v 到达终到点d v ,出行者选择第i 条线路上的第k 次乘车的公交线为ik p ,经过的第k 个站点为ik v ,则该条选择
结束 选择路线
乘第3节公交
线路上的站点—线路交替序列i TR 为:
>=<d i i i i i v v p v p v TR ,,,,,,22110
其中站点—线路交替序列i TR 表示从起始点0v 选择线路11i i v p 到达,换乘2i p 到达2i v ,……,最终到达d v 的第i 种路径。
不妨将所有的站点—线路交替序列i TR 集在一起,可得到相应的从起始站0v 到达终到站d v 的公交线路选择集TR ,即:
{}>=<=d i i i i i i v v p v p v TR TR TR ,,,,,,|22110
可见本模型对路线的选择范围确定了界限,这样也明确了寻求最优线路的讨论范围,即搜索的路径(公交线路ik p )和节点(公交站点ik v )都是相互关联的。
3.4.2多目标优化函数的提出
通过前文对公交乘客的心理分析,已经得到设计出以换乘次数最少为第一目标,以出行时间最短为第二目标所建立的数学模型是比较合理的,因此这需要提出一个针对该种情况下的多目标函数。
设出行者选择第i 条路线时的换乘次数为i N ;出行者选择第i 条路线时所消耗的总时间为i t ;则在有序约束集TR 中,选择在满足换乘次数最少的情况下的出行时间最短的目标函数为:
),(min i i TR t N U i
在这里,),(i i t N U 是指一个目标优先的二元目标函数集,即首先满足i N 达到目标后,
再使得i t 达到目标的最优方案集。
相应地,i TR 表示出行者选择第i 条路线时的有序路径集
当然对所得的目标函数还必须赋予一定的函数性质,否则该目标函数将不会有任何实际意义。
根据以上分析,可知),(i i t N U 应当满足:
i i i i t U N U t U N U ∂∂>>∂∂>∂∂>∂∂,0,0
同理,可将上述原理作一般性推广,如当需要建立以换乘次数最少为第一目标,出
行所消耗的时间为第二目标,所支付的公交费用为第三目标时的目标函数,可表示为:
),,(min i i i TR Q t N U i
其中,i i i i i i Q U t U N U Q U t U N U ∂∂>>∂∂>>∂∂>∂∂>∂∂>∂∂,0,0,0
i Q 表示出行者选择第i 条公交线路从起始站到达终到站所应当支付的所有费用。
注:在本文中,后面所用到的上述目标优化函数,不作特别说明,都默认为分别具有相应的函数性质。
3.5针对问题一的分析与建模
在问题一中,要求仅考虑公汽线路,给出任意两公汽站点之间线路选择问题的一般数学模型。
根据前文对公交乘客的出行心理分析,以选择换乘次数最少为第一目标,以选择乘车所用时间最少为第二目标可得到相应的目标函数,而具体的约束条件则需要另外求得。
对于换乘次数,联系被选择线路上的站点—线路交替序列i TR 的元素个数可以表示出来;站点总数则采用给同一线路上的站点排序的方法也可以求到,由于只考虑了公汽之间的换乘,则出行时间只与换乘次数和所历站数有关;对于出行费用则在换乘次数的基础上,引入分段计价的加价函数也可求得。
3.5.1模型1:公汽路线选择的通用模型
在问题的分析中,我们已经初步地得到了寻求线路最优的双目标函数选择的优化模型,现归纳如下:
目标函数:
若以换乘次数最少为第一目标,以选择乘车所用时间最少为第二目标可得总体的目标函数,),(min i i TR t N U i
约束条件:
(1)当选择总目标),(i i t N U 取最小时,而换乘次数和乘车所用时间也都同样在要求最少,因此U 与i N 是正相关的;即,,0>∂∂i
N U (2)同样U 与i t 也是正相关的,即:
,0>∂∂i t U (3)由于在优先选择权上,按相应条件,在目标函数),(i i t N U 中,i N 应优于i t ,
即:i
i t U N U ∂∂>>∂∂; 很明显,上述优化函数满足多目标优化的条件,因此可转化为多目标求解。
单由上述模型提供的总目标选择,还不能全面地选择出相应的全程公交线路;因此,需要进一步对目标函数中的相关子目标进行细化和计算。
同时考虑该最优目标下的约束条件应是强约束的,而出行者所乘坐公交时的换乘次数与出行者乘公交所用时间不存在明显的相关性,因此这需要将两方面进行独立考虑,根据前文的分析与叙述已经知道,需要在满足i N 取最小值时,再进行其它变量的确定与计算,才能选择到相应的目标。
即需要在可行域{}>=<=d i i i i i i v v p v p v TR TR TR ,,,,,,|22110 中进行优先性的条件搜索。
(1)换乘次数
不妨设i R 表示有序集>=<d i i i i i v v p v p v TR ,,,,,,22110 中的元素的个数,为便于区别,现标记i i
i TR Card R =, 于是换乘次数的计算公式可简单归纳为:
121--=i i R N
(2)所通过的总站数
设非环行线路ik p 上的两个站点1-k i v 和k i v 在沿着公交工具行进方向上的站数按照
正整数从小到大的排序分别为),(1-k i ik v p k 和),(k i ik v p k ,其中仍然记00v v i =;
d N i v v i =+1,于是由附件中的相关统计结果可知:
86),(),(11≤≤≤-k i ik k i ik v p k v p k
当线路ik p 为环行线路时,设该环行路线上的总站数为ik K ,1i v 为ik p 上的任意一站,0i v ,2i v 分别为公交工具在沿着ik p 行进方向上的最后一站和前一站,于是可标记
ik i ik K v p k =),(0;1),(1=i ik v p k ;2),(2=i ik v p k ;…;j v p k ij ik =),(;…
所以出行者乘坐ik p 线路的公交所经过的站点数目为:
⎪⎩⎪⎨⎧+--=---.),(),(),(),(),(111为环行线路为非环行线路;ik ik k i ik k i ik ik k i ik k i ik ik k i ik p K v p k v p k p v p k v p k v v p
所以,出行者途经的总站数为共条行车路线上车站数的总和,即
∑+=-=1
11),(i N k k i k i ik i v v p S
(3)出行者所用时间
由于在只有公汽交通的线路中,仅存在公汽线路之间的换乘消耗时间和在公汽上的运行时间,于是由问题中的参数设定可以得到:
相邻公汽站平均行驶时间(包括停站时间): 3分钟;
公汽换乘公汽平均耗时: 5分钟(其中步行时间2分钟);
不妨设出行者选择第i 条线路从起始站0v 到达终到站d v 所耗的平均总时间为i t ,换乘一次所耗的平均时间为o t =5分钟,相邻两站点之间乘车的平均时间为*
o t =3分钟。
则有 )1(*
00-+=i i i S t N t t
(4)乘车总费用
由问题中的参数设定容易知道,乘车的总体花费会受到出行者换乘次数,乘坐分段计价车时通过的站数的影响,在附件统计信息已经得到,公汽线路上的单一制票价为1元,分段计价的票价标准为出行者通过本线路0~20个站:1元;21~40站:2元;40站以上:3元。
不妨令公汽的单一票价为0i Q ,出行者在所选择的出行线路中所应支付的车旅费为i Q ,所乘同一公交线路上的最高收费为1i Q ,分段计价时加价的最少站数为0L ,于是有: ∑=-⎪⎭⎪⎬⎫⎪⎩⎪⎨⎧-⎥⎦⎥⎢⎣⎢⋅++⋅=i
N k i k i k i ik ik i i i Q L v v p p L N Q Q 1101*01),(min )()1(, 其中⎣⎦A 表示取不超过A 的最大整数,参数:10=i Q (元),31=i Q (元),200=L .
⎩⎨⎧=.10)(*
为分段记价线路线路为单一票制线路;线路ik ik ik p p p L 综上所述,根据不同目标因素的优先性可建立不同的线路选择方案模型;当然针对不同的出行者的选择要求,将会有更多的选择方案的模型,但是无论优选目标顺序如何变化,它们的基本约束条件都是相同的,不妨记问题一中的约束条件集为1R ,则有:
(1)以换乘次数最少为第一目标,乘车所用时间最少为第二目标所建立的模型为:。