张 钰,李 霖, 2,贺 彪,席宇亮
(1.武汉大学 资源与环境科学学院,湖北 武汉 430079;2.武汉大学 地球空间信息技术协同创新中心,湖北 武汉 430079;3.深圳大学 建筑与城市规划学院,广东 深圳 518000)
交通仿真技术具有直观、安全和灵活的特点,是描述复杂道路交通现象的有效手段[1]。根据研究尺度与细节描述程度的不同,可将交通仿真模型分为微观、中观和宏观模型[2]。现有的关于交通仿真的研究主要集中于微观尺度下道路网上车流的模拟[3-6]。然而随着城市轨道交通的发展,地铁已经成为许多大城市中居民通勤的常用交通工具,但目前鲜有对于地铁和公交车两种主要的公共交通出行方式的混合交通流的研究。并且研究城市居民的通勤行为,也不能只关注车流,还要分析乘客流的时空变化规律,对行人进行仿真[7-8]。此外,限制交通仿真准确性的一个重要因素是输入的交通数据的合理性[9],本文采用基于百度地图服务的交通分配方案确定仿真过程中通勤者的出行路径,能够在一定程度上解决这一问题。
交通分配是指将各分区之间出行分布量分配到交通网络的各条边上去的工作过程[10],根据是否要在时间、空间尺度上重新分配交通需求可分为静态交通分配[11]和动态交通分配[12]。本文对居民早高峰时段的通勤行为进行仿真,其居住地和工作地信息分别从政府部门统计的房屋产权信息和企业社保记录中获得,并用于构建反映交通需求的OD矩阵。利用这个OD矩阵,通过事先产生出行计划的方式将交通需求静态地分配到道路网与地铁网。出行计划由出发时间、出行方式、相关站点和换乘计划等组成,用于确定通勤者的出行行为。相关的研究如最优出行路径的计算[13],该方法没有考虑多种交通模式;从公交(或地铁)刷卡数据中提取出行信息,并将其用于准确识别通勤者[14],然而,这些出行信息缺少出行者从家中到起始站点和从目的地站点到工作场所的部分;使用实时GPS行程数据可以有效地获取行程链[15],但是,在使用大量公民的数据进行研究时,必须考虑保护个人隐私(真实位置信息)的问题。因此,本文利用百度地图服务来有效和安全地生成完整的出行路径。百度地图开发平台(BMDP)提供了一系列地图服务给开发人员使用。本文选用了Geocoder和路线规划两种服务用于生成出行计划。原始OD矩阵以详细地址的形式存储居民的家庭和工作地址。Geocoder服务将这些地址转换为特定地理坐标系(通常为WGS84)下的坐标;以坐标对作为输入值,路线规划服务将计算使通勤者到达目的地的最佳解决方案。考虑到地图应用程序与导航服务的普及和便利,该方法生成的出行路径与现实情况具有很高的一致性。
Agent (智能体)指的是能互相通信,感知环境并做出反应的实际或虚拟的实体,它具有自治性,有一定的能力实现自身预定的目标和意愿[16]。基于Agent的仿真能有效处理复杂系统[17](如交通系统)问题,该方法将复杂系统看成是“自底而上”、高度离散化和由一系列可被认为是Agent的实体组成的[18]。基于Agent的交通仿真提供了一种有效的方法来表示大量交通实体(如乘客,车辆)的行为和相互作用,并反映了客流在时空特征上的动态变化,从而可以提取有用的交通特征。
在本研究中,设计和实现了一个基于多智能体的交通仿真框架,以探索高峰时段交通流的分布特征。在这个框架中,“模拟环境”为道路网和地铁网,交通实体则被组织为Agent模型,从而可建立一个多智能体系统(MAS)。框架将1.1节中生成的出行路径作为输入,并具有四层架构,如图1所示。提出的仿真框架是一个事件驱动(Event-driven)的系统,全局维护一个事件队列。车辆需执行的事件为“进站”“出站”;人可能执行的事件包括“出发”“进地铁站”“出地铁站”“上地铁”“下地铁”“进公交站”“出公交站”“上公交”“下公交”和“到达”。事件包含两个基本属性,即“开始时间”和“结束时间”。系统初始化时会生成一些事件,如人“出发”。事件执行过程中可能产生新的事件,比如,假定一个通勤者是以乘地铁的方式出行,那么他执行“出发”事件时会产生“进地铁站”事件。后续事件的“开始时间”由产生它的事件决定,并由此时间将其按时间顺序插入到全局事件队列中等待执行。通过不断地执行与产生新的事件,推动系统运行,该过程如图2所示。
整个系统的运行流程包括初始化,动态模拟,评价打分,重新规划和结果分析5个部分,如图3所示。初始化为系统运行进行一些准备工作,如创建各种实体的Agent模型,加载路网等;动态模拟是车辆开始运行,且所有通勤者出发,以各自规划好的出行方案运动,最后到达工作地的过程;评价打分是以出行时间和距离等指标对本次出行进行评估;打分较低的通勤者需要重新规划出行方案,如提前出发、更换交通工具、更换出行线路等;系统达到稳定状态后可以输出结果,统计交通特征并进行分析。
本文选取深圳市作为案例进行试验。深圳是一个位于中国南部的沿海大都市,位于113°46′E至114°37′E和22°27′N至22°52′N之间,总面积约1 952.84 km2,共有10个行政区,人口接近1 078万,是人口最稠密的城市之一,且交通比较发达,其行政区划如图4所示。它是中国第一个经济特区,被视为改革开放的窗口,具有十分重要的经济地位。此外,公交、地铁和出租车是深圳市最主要的公共交通出行方式,表1记录了这3种公共交通方式近几年的客运量。
图1 仿真系统框架图
图2 事件队列示意图
图3 仿真工作流程
图4 研究区域
百万人次
深圳市道路网发达,共有约55 000多条不同等级的道路,如图5(a)所示。路网由“路段”和“交叉口”组成,“路段”有车道数、方向、限速等属性用于限定车辆的行为与状态;“交叉口”处设置有信号灯,用于调节路口处车辆的通行次序。路网主要为公交车的运动提供环境,通勤者从家到行程起点站和从行程终点站到工作地两部分也是在路网上进行,方式一般为步行。
深圳市地铁网包含8条地铁线路,由地铁线和相关地铁站点组成,如图5(b)。地铁线每两个相邻站点之间的部分是类似于“路段”的“地铁区间”,通过研究“地铁区间”内地铁车辆的载客量可以分析该区间段的拥堵情况。地铁网内的交通与路网上有较大差别。路网上一般更关注于车辆的运行情况与分布规律,而地铁网内地铁车辆的运行一般较为规律,所以地铁内的交通特征一般可从地铁乘客的时空分布规律进行分析。
图5 深圳市道路网和地铁网
深圳市共有900多条公交线路,本文选取了其中5条常用线路(NO 1,10,111,121,13)及其相关站点进行试验,如图6所示。每条公交线路包含车辆始发时间,发车频次和途经站点等信息,用于控制公交车的运行。一条公交线路可与地铁或其他公交线路换乘。
图6 部分公交线路
由于本文仅选取了部分公交线路进行试验,为了尽可能获得有效的出行计划(不乘没有选取的公交线路),采用的方案是选取居住地与工作地均在站点(地铁站和公交站)周边1 000 m范围内的居民参与试验。首先,合并地铁站点与公交站点为“站点”图层,并为其中每个站点作一个半径为1 000 m的缓冲区,然后分别从居民居住地和工作地图层中选出与任一缓冲区相交的记录,最后对两组选出的对象进行关联,选出居住地与工作地均在缓冲区范围内的通勤者进行试验,得到337 000个对象。利用1.1节提到的分配方案调用百度地图服务,生成出行方案,剔除不满足要求的记录,以如下的样本为例说明出行计划的结构。
编号为20 097的通勤者居住地为“深圳市上沙塘晏村7巷18号”,工作地为“深圳市罗湖区人民北路与立新路交汇处新白马商业楼”。调用百度地图服务后返回的结果如下:“20 097|112 197.62,17 339.830 000 001 9|121 123.81,19 996.69|1 103|3 683|步行796 m|上沙村站乘121路(皇岗口岸方向)经过5站到购物公园地铁站|步行213 m|购物公园站(C口)乘3号线(双龙方向)经过8站到晒布站(D3口)|步行366 m|”。其中起止点的坐标信息是由Geocoder服务将详细地址信息转化得到(先转化为WGS84,再转化为本地坐标系),“1103”和“3683”分别为乘私家车和公共交通工具出行的经验时间,详细的乘车方案由路线规划服务得到。
通常对一组OD信息调用百度地图服务返回的出行方案不止一种,本文处理的方式为选择出行花费时间最短的方案。对于所有选出的试验对象,均可获得一个与之类似的出行方案,通过该方案可以预知通勤者出行的路线与行为,静态地将交通需求分配到网络环境中。然而如需了解交通运行的过程与动态以及车辆和出行人员的时空分布规律,还需要考虑“时间”这一因素,可以通过仿真的方式对整个过程进行模拟并提取有价值的交通信息。
基于生成的出行计划,利用1.2节介绍的框架进行交通仿真,该框架旨在按时间顺序模拟所有交通实体的行为。因为研究的是城市居民的通勤行为,因此不允许通勤者“迟到”,即9:00 am前到达工作地是对所有通勤者出行过程的约束。系统的稳定状态定义为所有通勤者按时到达工作地点,在系统达到稳定状态之前,将执行多次迭代,调整迟到人员的出发时间。每个通勤者的出发时间是由百度地图服务在第一次迭代中返回的经验出行时间计算得到。例如,当某人经验出行时间是1 h,那么为了避免迟到,其出发时间应该为8:00am。
式(1)中的Ti+1和Ti分别表示两次相邻迭代的出发时间,δ表示调整的时间间隔。δ被设置为-1,即当某人迟到时,其出发时间需设置为比前一次迭代提前1 min。
Ti+1=Ti+δ.
(1)
在该实验中,经过116次迭代后系统达到稳定状态。输出的结果为所有的交通实体(通勤者、公交和地铁车辆)的交通动态,包括时间,执行的事件,当前时刻的属性等。利用这些信息可以追踪人或车辆的运动过程,也可以统计客流量,网络压力等交通特征。
通过上一节的动态仿真,当系统达到稳定状态时,可以输出必要的文本信息用于了解交通系统的运行过程和统计交通特征。跟踪ID为1 067的通勤者的出行过程得到的结果如下,
Result (PID = 1 067) = “7:52:43, Set out.
7:59:57,Get in metro stop in“前海湾站”, Metro route= 11号线
8:07:33,Leaveoutmetrostop in “前海湾站”, Metro route = 11号线
8:07:34,MetroID = 41fef3b3, Get on metrostop in “前海湾站”, Metro route = 11号线
8:33:38,metroID = 41fef3b3, Get off metrostop in“车公庙站”, Metro route = 11号线
8:33:39, Get in metro stopin“车公庙站”, Metro route = 11号线
8:33:40,Leave out metro stop in“车公庙站”, Metro route= 11号线
8:36:26,Get in bus stop in“招商银行大厦站”, Bus route= 121路, Bus direction = 1
8:42:00,Leave out bus stop in“招商银行大厦站”, Bus route = 121路, Bus direction = 1
8:42:01,BusID = df5e1629, Get on bus stop in“招商银行大厦站”, Bus route = 121路, Bus direction = 1
8:48:22,BusID = df5e1629, Get off bus stop in“园博园站”, Bus route = 121路, Bus direction = 1
8:48:23,Get in bus stopin“园博园站”, Bus route= 121路, Bus direction = 1
8:48:24,Leave out bus stopin“园博园站”, Bus route = 121路, Bus direction = 1
8:57:49,Arrived, Travel time = 1 hour 13 minutes 6 seconds.”
从ID为1 067的通勤者的出行过程记录中可以了解他的出发和到达时间、所乘交通工具、上下车站点、换乘情况以及行程所用时间等信息,从而可以直观地了解这个人的出行动态和时空位置。其他的人和车辆的运动过程也可以用类似方式表达,从而可以描述整个交通系统的动态变化。
地铁区间指的是地铁线路两个相邻站点之间的部分。利用3.1节的交通仿真结果,可以统计地铁系统各区间段内的客流量情况,根据实际情况可分为上行客流与下行客流,在此统计的是包括这两者的总客流量,在仿真的有效时间内,通过某区间的乘客可视为该区间的客流。统计结果如图7所示,从中可以看出地铁客流的空间分布规律和地铁区间段的交通压力大小。3号线、1号线和11号线是客流量较大的线路,其中3号线的一部分(“老街站”到“丹竹头站”)客流量非常大,事实上,这一部分也是经常发生拥堵的区间段。公交的统计方法与地铁类似,由于公交线路众多,因而本实验中选择的几条公交线路各自的客流量不大。
通过交通分配和交通仿真,可以由OD矩阵得到交通系统运行的过程和状态,统计客流量等交通特征。然而,为了更加直观地展示整个交通系统(包括人和车辆)的动态,可以将交通实体的运行轨迹组织为时空数据并以可视化的形式加以展示。为此,本研究中实现了一个居民出行轨迹演示系统,随时间展示居民(小白点)的动态轨迹,图8展示了系统截图。
本文通过对公交车和地铁的混合交通流的仿真模拟研究了城市居民的通勤行为。主要介绍了利用城市居民的居住地与工作地数据构建交通需求,即OD矩阵;然后基于OD矩阵,利用百度地图服务为通勤者分配路径;之后动态仿真这些通勤人员的出行过程以及交通车辆等的时空分布规律;最后根据仿真的结果进行统计分析,揭示城市居民通勤规律与交通系统的状态变化。提出的方法对于公交和地铁两种交通工具的混合交通流进行了模拟,并通过结合基于百度地图服务的交通分配和基于Agent的交通仿真,弥补了以往交通仿真因为输入的交通数据可靠性差而效果不好的不足。混合交通流模式下交通拥堵的预测,通过出行方案动态调整来优化交通系统的运行等将成为本研究未来可能的研究方向。
图7 地铁区间客流量统计
图8 居民出行轨迹演示系统
[1] 耿彦斌,张雪莲.关于我国交通仿真技术发展战略的思考[J].现代交通技术,2010, (4):71-75.
[2] 魏明,杨方廷,曹正清.交通仿真的发展及研究现状[J].系统仿真学报,2003,15(8):1179-1183.
[3] 刘洋.城市微观交通仿真系统研究[D]. 西安:西北工业大学,2006.
[4] 能宁,黄毓瑜,李公立.基于元胞自动机的微观城市道路混合交通仿真[J].系统仿真学报,2005,17(5):1234-1236.
[5] MANLEY E, CHENG T, PENN A, et al. A framework for simulating large-scale complex urban traffic dynamics through hybrid agent-based modelling[J]. Computers Environment & Urban Systems, 2014, 44(1):27-36.
[6] 唐代旻,李响,赵子辉.面向交通微观仿真的道路网络模型[J].南京师大学报(自然科学版),2016, 9(4):38-43.
[7] 胡明伟,史其信.城市轨道交通车站客流组织的仿真和评价[J].交通信息与安全, 2009,27(3):39-42.
[8] 高鹏,徐瑞华.城市轨道交通车站客流仿真中的事件驱动模型[J].系统工程理论与实践,2010,30(11):2121-2128.
[9] 陆海亭,张宁,黄卫,等.短时交通流预测方法研究进展[J].交通运输工程与信息学报, 2009, 7(4):84-91.
[10] 成礼平. GIS技术在城市交通分配中的应用研究[D].南京:东南大学, 2004.
[11] 胡昌君, 陈文斌.静态多路径交通分配模型综述[J]. 现代交通技术, 2014, 1(1):65-69.
[12] 胡婷,于雷,赵娜乐.动态交通分配理论研究综述[J].交通运输研究,2010(9):6-10.
[13] 李庆奎,吕志平, 李昌贵.基于模糊理论的智能最优路径算法[J].测绘工程, 2011,20(4):5-8.
[14] MA X, LIU C, WEN H, et al. Understanding commuting patterns using transit smart card data[J]. Journal of Transport Geography, 2017, 58:135-145.
[15] CROOKS A, CASTLE C, BATTY M. Key challenges in agent-based modelling for geo-spatial simulation[J]. Computers Environment & Urban Systems, 2008, 32(6):417-430.
[16] FERBER J. Multi-Agent Systems: An Introduction to Distributed Artificial Intelligence[M]. Addison-Wesley Longman Publishing Co. Inc. 1999.
[17] 严飞,潘明阳,曹晓东,等. Agent技术在交通仿真中的应用[J]. 电脑开发与应用, 2003,16(8):31-33.
[18] CROOKS A, CASTLE C, BATTY M. Key challenges in agent-based modelling for geo-spatial simulation[J]. Computers Environment & Urban Systems, 2008, 32(6):417-430.