1. 引言
近年来,随着经济的飞速发展,城市规模急剧扩大,城市道路的拥堵问题日益严重。除了加强交通基础设施建设外,优化道路设施及交通组织也是缓解城市交通拥堵的重要途径。交通仿真是运用现代计算机技术再现实际交通系统的特性、分析交通系统在各种设定条件下的可能行为,以寻求现实交通问题最优解的一种手段,也是评价运输设施各类运用设计方案效果的有效方法 [1],高效率的交通仿真实验分析对于交通系统的设计和发展都是极其重要的 [2]。
在道路交通仿真方面,目前有很多学者基于微观仿真做了大量的研究工作。通过增强几何表达和拓扑表达能力的面向智能交通系统的仿真路网模型 [3] 来提高交通仿真基础路网建模的效率;从满足微观交通仿真需求角度分析路网建模的要点,设计面向微观交通仿真的车道级基础路网数据模型 [4] ;秦天保等 [5] 通过建立集装箱码头堆场的整体仿真模型,并结合交叉口道路通行能力计算,对码头堆场的道路规划进行了研究。另外,还有研究通过将微观动态交通模型与瞬时排放模型相结合,来仿真在不同拥挤程度的城市道路上行驶的车辆的油耗 [6]。Claudio Feliciani等 [7] 为了仿真车辆和行人之间的碰撞导致的每年行人死亡人数,提出了一个无信号人行横道的模拟模型。Mubasher [8] 则开发了一个集成车辆交通仿真环境用于以综合方式模拟道路基础设施和车辆交通。
城市道路交通系统,作为一种典型的复杂巨系统,目前的仿真模型对复杂的实际网络的适用性较差。随着复杂适应系统理论提出和发展,基于多智能体的仿真技术为交通系统仿真提供了新的途径。2010年Macal提出了基于智能体的建模与仿真的基本概念 [9]。Itami基于智能体的概念,模拟了人类运动与户外休闲环境之间复杂的相互作用 [10]。Lv [11] 设计了一个不确定环境下综合客运交通系统的智能体仿真模型,用于对区域客运公共交通系统进行仿真。唐俊 [12] 研究了基于多主体模型的兰州市城市空间演化过程及动态模拟。
本文基于复杂适应系统理论,设计了一个对道路交通状态进行仿真和分析的多主体仿真模型。本文的结构如下,第2节介绍了多主体仿真模型的构建和基于Swarm平台的仿真实现。第3节以成都市二环路为样本集进行了仿真和分析。第4节对研究的结果做了总结。
2. 城市道路交通系统多主体仿真
2.1. 多主体仿真模型
城市作为典型的复杂巨系统,其交通子系统同样具有自适应性、复杂性和多主体性的特点,其演化是道路交通多主体相互作用的过程。为了道路上的通行状态进行仿真,系统中所有主体的行为都模仿真实实体的行为,模型中的每一个智能体是道路上的实际出行者。
在城市道路交通多主体仿真模型中,该系统内每一个出行者都被定义为系统中的一个主体,主体 = {属性、规则、学习算法}。其中,主体的属性包括出行者的空间位置、速度、加速度、出行目的地等。
主体的决策规则为:
1) 每一个主体自身都具有独立自主的决策能力。
2) 主体以一定的概率进入指定的道路成为该仿真系统的输入。
3) 主体离开所仿真的道路时视为离开该系统。
4) 系统内各个主体行为及属性,根据时间序列,模拟旅客的出行行为。
主体的学习算法用于决定每个主体的决策行为。这里通常以主体期望到达目的地的最短时间、最短路线或者最小费用为决策目标。对于主体的决策行为,本文使用了机器学习中的DQN算法来实现。Q-learning是通过不停地探索和更新Q表中的Q值从而计算出智能体行动的最佳路径的,而DQN算法不用Q表记录Q值,而是用神经网络来预测Q值,并通过不断更新神经网络从而学习到最优的行动路径。DQN中有两个神经网络,一个参数相对固定的网络,称为target-net,用来获取Q-目标(Q-target)的数值,另外一个叫做eval_net用来获取Q-评估(Q-eval)的数值。eval_net是反向传播的训练网络。target_net是只做正向传播得到q_target。其基本结构如下图1所示:
![](//html.hanspub.org/file/9-2690388x9_hanspub.png)
Figure 1. The basic structure of Deep Q-Learing
图1. Deep Q-Learing的基本结构
2.2. Swarm仿真软件
Swarm最初是在20世纪90年代由美国圣塔菲研究所在复杂适应系统理论基础上开发的多主体仿真软件工具集。该平台采用多智能体仿真的方法,使主体和元素通过事件进行交互,以实现系统的模拟。Swarm主要包括两个部分:模型Swarm和观察员Swarm。模型Swarm处于核心位置,封装了整个仿真模型,其中的每一个对象都对应于现实世界中的一个主体。模型Swarm主要包括以下三部分:对象、时间表、输入/输出。模型Swarm定义了被仿真的世界,而观察者Swarm是观测结果的工具。观察者Swarm也包括三部分:对象集、行为时间表、输入/输出。观察者Swarm对象的观测集包括模型Swarm和观察仪器等;行为时间表是指模型读取数据以及画出图形的顺序;输入一般是指观测模型的配置,输出则是观测到的结果。其基本结构如下图2所示:
3. 仿真实例与分析
仿真实例的交通数据来自滴滴盖亚数据开放计划。盖亚数据开放计划是滴滴依托于滴滴出行大数据
![](//html.hanspub.org/file/9-2690388x10_hanspub.png)
Figure 2. The basic structure of Swarm
图2. Swarm基本结构
平台,向学术界提供的真实的脱敏数据资源。本仿真实例以成都市2016年10月~11月在二环路上的交通数据作为样本集,该样本集中的数据格式如下表1和表2所示。
![](Images/Table_Tmp.jpg)
Table 1. The fields of order data of Didi Chuxing GAIA Open Dataset
表1. 盖亚数据集车辆订单信息数据数据格式
![](Images/Table_Tmp.jpg)
Table 2. The fields of GPS trajectory data of Didi Chuxing GAIA Open Dataset
表2. 盖亚数据集车辆轨迹信息数据数据格式
表1中的数据每出现一个新的订单即在系统中对应一个出行主体,订单开始时间为主体进入系统时间,下车位置为出行目的地。表2中的数据为该主体实际运行轨迹,对于连续的两个数据点之间的距离li可以定义如下:
(1)
,其中
和
分别是点i在GCJ-02坐标系下的经度和纬度坐标,
车辆在i时的时间,其数据为unix时间戳格式。进一步就可以计算主体的速度和加速度属性。根据(1),我们可以得到车辆在点i和点i − 1之间的平均速度
。
(2)
以及加速度
:
(3)
.
为了检验本仿真方法的有效性,以数据集中2016年10月的数据作为训练的记忆库,完成Deep Q-Learing网络的初始化;以2016年11月的实际数据作为测试集与通过仿真得到的道路通行速度进行比对,所得到仿真数据与实际数据的比较如下面图3所示,其中折线为真实数据,黑点为预测数据。
![](//html.hanspub.org/file/9-2690388x21_hanspub.png)
Figure 3. The comparison between simulated data and actual data
图3. 预测数据与实际数据比较
从图中可以看出预测数据与实际数据的整体趋势基本吻合,在车辆速度较低的区间误差相对较大,在车辆速度超过3 km/h时仿真的预测值与实际值基本接近。结果表明,所设计的基于Swarm和DQN机器学习算法的城市道路交通多主体仿真系统可以有效的对城市道路的通行状态进行仿真。对于3 km/h以下的车辆运行状况的误差预测,一般是由于拥堵和红绿灯时,对车辆的状态判断产生的误差,需要在进一步的机器学习训练中,加强对于车辆运行状态的判段。
4. 结论
本文对城市道路交通系统的微观仿真进行了研究。由于交通系统主体行为固有的复杂性,首先基于复杂适应系统理论,建立了对系统主体行为进行描述的多主体仿真模型。然后,对系统中主体的行为规则采用机器学习中的DQN算法来实现。接下来,基于Swarm软件包实现了所设计的仿真模型。最后,使用滴滴出行盖亚数据开放计划中成都市二环线上2016年10月和11月的数据对所建立的模型进行了仿真和验证分析,结果表明了所设计的基于Swarm和DQN机器学习算法的多主体仿真模型可以有效地对城市道路的通行状态进行仿真。
致 谢
数据来自滴滴出行,数据出处:https://gaia.didichuxing.com。
基金项目
河北省科技计划项目No.15456135。