基于便携设备的城市公交线路查询算法的研究概要.docx
- 文档编号:2987186
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:10
- 大小:25.97KB
基于便携设备的城市公交线路查询算法的研究概要.docx
《基于便携设备的城市公交线路查询算法的研究概要.docx》由会员分享,可在线阅读,更多相关《基于便携设备的城市公交线路查询算法的研究概要.docx(10页珍藏版)》请在冰豆网上搜索。
基于便携设备的城市公交线路查询算法的研究概要
第29卷第23期计算机工程与设计2008年12月V01.29No.23ComputerEngineeringandDesignDec.2008
基于便携设备的城市公交线路查询算法的研究龚翱m,朱宁波1,史长琼3,袁辉勇啦
(1.湖南大学计算机与通信学院,湖南长沙410082;2.湖南人文科技学院计算机科学技术系,
湖南娄底417000;3.长沙理工大学计算机与通信工程学院,湖南长沙410076
摘要:
随着便携式移动设备广泛和深入的应用,相比传统查询方式,基于便携设备的公交查询将显示出其灵活性.分析了用最短路径算法Dijkstra实现基于便携式移动设备的公交查询的缺陷,结合网络路由扩散算法,提出了一种更合适的公交线路查询算法,并通过处理多样化线路、选择换乘代价来优化查询结果。
将该算法应用于实际公交网络进行实验,与传统方案进行比较分析,该算法具有较快的响应速度,取得了较好的效果.
关键词:
城市公共交通;线路查询;换乘;扩散路由算法;便携设备
中图法分类号:
TP302文献标识码:
A文章编号:
1000.7024(200823-6124.03
Studyofcitypublictrafficinquiryalgorithmbasedonportabledevice
GONGAo也,ZHUNing—b01,SHIChang-qion93,YUANHui-yon91’2(1.CollegeofComputerandCommunication,HunanUniversity,Changsha410082,China;2.DepartmentofComputerScienceandTechnology,HunanInstituteofHumanities,Science&Technology,Loudi417000,China;3.CollegeofComputer
andCommunicationEngineering,ChangshaUniversityofScieneeandTechnology,Changsha410076,ChinaAbstract:
Comparedwiththetraditionalways,thecitypublictrafficinquirybasedontheportable
willpresentitsflexibilitywithwideanddeepapplicationofportabledevices.ThewoaknessofrealizingthecitypublictrafficinquirybasedontheportablemobiledevicesbyusingDijkstraAlgorithmisanalyzed.Andamoresuitablewayispresentedbycombiningfloodingalgorithm,anditsresultisoptimizedthroughdealingwithvariousroutesandchoosingtransfer-cost.Finally,whenthealgorithmisexperimentedinactualpublictrafficnet-work,comparedwiththetraditionalways.aquickerresponsespeedandgoodresultsareachieved.
Keywords:
citypublictraffic;inquiryofroute;transfer;floodingalgorithm;portabledevices
O引言
城市公共交通在现代化都市起着越来越重要的作用,快捷、经济的城市公交给人们出行带来了极大的便利,但错综复杂的公交线路却困扰着人们:
即使是长期生活在当地的居民也不一定能清楚的了解任意两地的最佳乘车方案。
因此,迫切需要建立公交查询系统,通过引导乘客合理化选择线路,减少出行延误,从而提高整个公交线网的运行效率和城市信息服务化水平。
目前大多数城市公交查询系统存在以下几方面问题:
①公交线路更改不便。
由于公交数据结构的原因,在大多数查询系统中,如果需要更改或增加线路,则需要对数据库进行重构Ⅲ。
②站点信息有限。
目前大多数系统对车站有特定的命名,当用户输入其它名称时将无法识别,给不熟悉站点的乘客带来了很大困难。
③查询结果不准确。
许多城市的公交线路往返一致,当线路形式多样化时,这些系统的查询结果可能出现误差。
④查询方式落后。
目前大多数系统都基于PC机或站台触摸屏,在窄间上使用受限,缺乏灵活性。
由于集通讯、办公、娱乐等功能于一体的智能手机已成为各移动设备开发商的开发热点Ⅲ。
实现基于手机或PDA等便携设备的公交查询系统,解决了用户在户外使用电脑查询不便的困难。
实现公交线路查询,通常使用Dijkstra算法01,但Di-jkstra算法采用的数据结构以及实现方法,难以应付公交线路网络中的复杂性‘“,加之便携设备的自身缺陷,不宜用该算法实现。
本文提出了改进使用路由扩散算法实现了一个适合不同城市任意两地间的公交线路查询的方案,具有通用性。
l查询最佳线路分析
在公交网络中,对于乘客而言,路程最短的路径不一定是最佳路径,它需要综合考虑出行时间,费用,便利等因素。
据相关资料显示调查乘客出行心理,结果表明:
41.16%的乘客在
收稿日期:
2007—12—01E-mail:
fluxshadow@126.corn
基金项目:
湖南省教育厅基金项目(05C245;湖南省重点学科建设基金项目。
’
作者简介:
龚翱(1981~,男,湖南娄底人,硕士研究生,研究方向为数据库理论及应用、MIS的研究与开发等:
朱宁波(1972--,男.湖南长沙人,博士,副教授,硕士生导师;史长琼(1968--,女,湖南衡阳人,博士研究生,副教授,硕士生导师;袁辉勇(1967--,男,湖南双峰人,硕士研究生。
一6124—
选择出行线路时首先考虑的因素是换乘最少吲,换乘直接影响出行的时间和费用,尤其是便利程度;其次是出行时间和路程最短,出行时间与换乘次数、等车时间、沿途停靠次数以及路程长短等因素密切相关,而同一线路相邻站的跨度一般较稳定,故路程可用沿途经过的车站数来表示。
时间和路程最短,可规约为经过站数最少。
因此,对于最佳线路的求解,本文讨
论的算法选用换乘次数最少为首要约束条件,沿途经过站数最少为第二约束条件。
如果将整个城市看成一个连通图,图中的顶点代表公交站点,边代表公交线路,边的权值为相应点间隔的车站数,问题则等价于求赋权图中两点间的最短路径。
求任意两顶点之间的最短路径算法很多,最经典的是Dijkstra算法,在地理信息系统中得到广泛应用。
但是,Dijkstra算法难以应付公交线路网络中的复杂性Ⅲ,主要表现在:
(1建立数据结构复杂。
使用Dijkstra算法在存储图形和运算时,需定义NxN的数组(N为结点数,当N值较大时,矩阵占用大量计算机内存,对于内存容量和处理速度非常有限的便携移动设备来说,运行是很困难的。
(2查询计算时间长。
Dijkstra算法不仅求得从起点到终点的最短路径,而且最后求得起点到各顶点的最短路径。
特别是在大城市车站数多,线路繁杂的情况下,Dijkstra算法难以在较短的时间内完成计算。
(3部分结果无意义。
由于公交线路查询要求的特殊性,使用Dijkstra算法,结果将是每到一站都考虑换乘,而换乘是要尽量避免的,一般来说,如果不是自驾车出行,需要几次甚至十几次换乘的结果是没有实际意义的。
根据城市公共交通的自身特点,考虑到便携设备本身存在的缺陷,如CPU运算速度低,内存容量小等,不宜采用Di-jkstra算法,而改进利用扩散路由算法,实现在城市中任意两站之间的线路查询。
2扩散路由算法实现公交线路查询
2.1扩散路由算法设计
设城市的所有公交线路,记为尺=懈1皿(2,…尺(f,…面劝7,其中只(f表示第i号公交线路的线路名,记为R(O=(‘,『l,roo…‰…‰,其中~表示i路公交车线路上的第,站名称。
因此,R=(劫一。
假设公交存在如下线路(暂只考虑单程:
Routel:
A—B—C—D
Route2:
D—E—・F
Route3:
B—G—H—D
fRD甜把1彳曰cD1
则R={Route2DEF}。
IRo甜fe3曰G日DJ
R以文本方式存储可快捷的新增、修改信息,其中每行代表一路公交,任一站的全部后续站为它所能直接到达的站,如图1所示,在连通图中表现为邻结点。
路由扩散算法具体的实现是将每一个分组将被发送到除了它进来的那条线路以外的每一条输出线路上阎。
公交网络中可直达的站类似网络中的邻接点,在R中表现为同一行的后继元素。
查询从起点X开始,扩散到除了它过来的那个站点以外的
图l从A开始依次可到达的站点
每一个站点上,然后判断这些站点中是否包括终点Y,否则再从每个扩散到达的站点继续扩散,逐步扩展以X为基点的网络,一直找到Y为止。
扩散深度越大,运算也越复杂,因此深度一般不超过4,即换乘3次。
而现实中如果一个城市的公交足够发达,线路设置较合理的话,极少有换乘超过3次的情况。
很显然,扩散法将会产生大量的重复分组,实际上,需要采取一种办法来抑制扩散过程,否则将有大量无效重复的运算。
选择性扩散是很重要的,在换乘时,问题很突出的表现出来。
假设线路Routel,Route2和Route3如上,且其它任何线路均不经过C地。
考察从B地出发去往F地,易知,需要换乘一次。
由于FlB_{C,D,G,H(其中F.。
的l表示扩散深度,对应乘车的次数,B为扩散点。
因此C,D,G,H均可能成为换乘地点,但经过C的公交线路集Rc={Routel},而经过B的线路集如={RouteI,Route3},Rc.‰∈D,即换乘无意义。
因此扩散只进入D,G和H,到C后应给予抑制,防止进入下一层的扩散。
最后,线路集合中经过结点数最少、总权值最小的路径,即x到Y的最佳路径。
2.2处理多样化线路
分析各种公交查询方案,可以发现大多数计算出任意两地X、Y间往返的最佳路径是一致的,如文献【7】和文献【8】。
这样计算的结果有时并不符合实际情况,其原因是忽视了线路多样化的问题。
为了满足城市公交运行的客观要求,公交线路形式已变得多样化:
除单线往返,还有环行,往返不一等各种形式。
假设有两条路线:
RouteI:
A—t(单线往返;Route2:
D—C(E一B(往返不一,去程D到B经过C,回程B到D经过
E。
按其算法,若由A到B,可以在C换乘;反过来由B到A,因往返路线不一,在C永远等不到Route2。
另外,如果是循环线路,选择方向不当也会浪费大量时间。
改进的办法是,区分非单线和循环路线公交的去程和回程,视为不同、单向行使的两路公交,如:
Route2A:
D—E—B;Route2B:
B—C—D。
A,B分别表示去程和回程。
这样避免了因往返线路不一致而在C、E两地乘客“死等”和在循环线路上“绕圈子”的情况。
2.3选择换乘代价
如图2所示,若存在两条公交线Routel和Route2:
求得从A到E的最佳线路为:
由A乘Routel到达C,再换乘Route2到达E,乘车次数为2,距离为3。
这
样,保证了换乘次数最少的情况下AB
路程最短。
而实际中很多情况会选
择D换乘,距离增加了2。
我们把
这种实际线路与理论计算线路的
路程差(用车站数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 便携 设备 城市 公交线路 查询 算法 研究 概要