-
随着大数据、人工智能、物联网等新兴技术的发展,智慧交通已成为智慧城市建设的关键环节,面向智慧交通的虚拟仿真实验也成为国家虚拟仿真实验教学项目的重要组成部分。在城市管理、交通工程、交通运输等专业的教学实验中,往往需要开展单路口、单道路、区域路网甚至城市路网的复杂交通实验。然而,通过在实际交通环境中调整交通信号灯、改变路网结构、增减车道数量等路网参数来开展以上实验,成本高、影响大,绝大多数情况下不可行。为此,往往需要借助道路交通虚拟仿真系统,运用计算机仿真技术,模拟道路交通复杂状况,揭示交通流时空变化规律,有利于用户掌握道路交通设计、预测、控制、诱导等知识与技术。
目前的交通仿真软件如Aimsun next[1]、TransModeler[2]、Paramics[3]、Vissim[4]、CORSIM[5]、Matsim[6]、MITSim[7]等都只是对具体场景进行仿真,不能满足虚拟仿真教学实验需求,即使是开源的SUMO[8]也不支持实时在线仿真以及在指定路网中进行不同类别的仿真实验。
-
交通仿真作为计算机仿真的一个分支,起源于20世纪50年代[9],该技术能够在计算机上实现对真实路网及车流状况的模拟,用以对交通态势随时间和空间的变化进行跟踪描述。
本文对10个具有代表性的交通仿真系统从仿真类型、代码开源、仿真功能、仿真地图、车辆行为模型、在线仿真、仿真控制等几个方面进行比较,结果如表1所示。目前的交通仿真软件[10-20]都只是对具体场景进行仿真且功能较少,并不能满足虚拟仿真教学实验的要求,不支持实时在线仿真以及在指定路网中进行不同类别的仿真实验,并且这些仿真系统操作起来都非常复杂。
针对以上这些问题,本文首次研究并设计了一种面向多用户的微观交通仿真实验系统(http://its.uestc.cn),具体贡献如下:
1)设计并实现了一种微观交通仿真引擎,该仿真引擎具有消耗低、易扩展等特点,支持独立运行和分布式通信;
2) 设计并实现了一种面向多用户的微观交通仿真实验系统,该系统采用分布式计算、分布式消息通信等技术,支持多个仿真引擎、多个仿真任务并发执行;
3) 本文对面向多用户的微观交通仿真实验系统进行了性能测试,测试结果表明微观交通仿真引擎的性能与仿真车辆数和仿真加速比成正比,并且在单台服务器上,该仿真实验系统能够支持多个仿真引擎、多个仿真任务的并发执行。
表 1 交通仿真系统对比
仿真系统 仿真类型 代码开源 仿真功能 仿真地图 车辆行为模型 在线仿真 仿真控制 Aimsun[10] 微观/介观/宏观 否 评估交通仿真、交通需求管理策略评估 支持路网导入并提供路网编辑功能 Gipps的安全距离模型改进Gipps的换道模型改进 否 是 TransModeler[11] 微观/介观/宏观 否 交通仿真和交通规划,与交通预测软件结合等 支持路网导入并提供路网编辑功能 心理-生理跟驰模型基于规则的换道模型 否 是 Paramics[12] 微观 否 交通仿真模拟,协助交通评估等 支持路网导入并提供路网编辑功能 基于规则的换道模型 否 是 PTV Vissim[13] 微观 否 交通分析和预测,信号优化等 支持路网导入并提供路网编辑功能 基于规则的换道模型 否 是 SUMO[14] 微观/介观/宏观 是 提供自定义模型,离散时间下的微观交通仿真 支持路网导入并提供路网编辑功能 Stefan Krauß模型的拓展SUMO自带的换道模型 否 是 Corsim[15] 微观/介观/宏观 否 交通仿真,提供多种车道方案 支持路网导入并提供路网编辑功能 Pitt跟驰模型Pitt换道模型 否 是 Matsim[16] 微观 是 需求建模、公共交通、多功能分析,提供基于代理的动态交通仿真等 开源api,提供路网编辑功能 多代理交通模型 否 是 MITsim[18] 微观 是 交通仿真可模拟监视能力,支持需求建模、公共交通、多功能分析等 提供路网编辑功能 心理-生理模型与GHR模型基于规则的换道模型 否 是 TJTS[18] 微观 否 微观交通仿真,基于仿真数据的评估功能,提供城市道路实验和测试平台 / / 否 是 SUTSS[19] 微观/介观/宏观 否 提供交通规划、交通建设、运行管理等 / / 否 是 本系统 微观 否 在线交通微观仿真 提供路网编辑模块 自带的换道模型/换道模型 是 是 -
根据本文所提出的微观交通仿真实验系统设计思路,需要达到面向多用户并发执行仿真任务的目的,为此,本文首先对该微观交通仿真实验系统进行性能分析。
根据所描述的仿真引擎设计,在本文微观交通仿真引擎设计中,所有仿真车辆的每一步仿真计算方式都是相同的。由此可以分析出,本文所设计的微观交通仿真引擎的计算消耗与仿真车辆数强相关,仿真车辆数越大,每一步仿真计算的消耗就越大,其时间复杂度为step×O(n),其中,step为仿真加速比(即仿真步数),n为仿真车辆数。同时,在本文所设计的微观交通仿真引擎中,每个仿真车辆占用的内存为100 B左右,100万仿真车辆占用的内存仅100 M。
根据以上分析,本文所设计的微观交通仿真引擎对CPU的计算消耗需求大,对内存的消耗可忽略不计。同时,本文所设计的微观交通仿真引擎的计算时间复杂度为step×O(n),即与仿真加速比和仿真车辆数相关。因此,本文设计了单仿真引擎仿真车辆数变化、单仿真引擎仿真加速比变化和多仿真引擎并发执行3种实验来测试性能。
本文所设计的微观交通仿真引擎性能测试的实验环境如表2所示。
表 2 微观交通仿真引擎性能测试实验环境
实验环境 实验环境描述 CPU Intel(R) Xeon(R) Silver 4110 CPU @ 2.10GHz 内存/GB 64 操作系统 Windows 专业版 空闲CPU占用率/% 6~7 -
单仿真引擎仿真车辆数变化主要测试仿真车辆数对计算资源的消耗。本文选取双向8车道的9个十字路口地图作为仿真地图,该仿真地图的最大容量为2400辆仿真车辆。在单仿真引擎仿真车辆数测试实验中,车辆生成速率设置为50,仿真加速比固定设置为20,通过仿真车辆数的变化观察单仿真引擎的CPU资源消耗变化。测试结果如表3、图4、图5、图6所示。
表 3 单仿真引擎仿真车辆数性能测试
仿真步数 仿真车辆数 CPU占用率/% 仿真计算耗时/ms 10 213 10.0 438 30 404 10.5 609 50 596 10.9 719 70 778 12.5 828 90 920 12.8 906 110 1071 14.3 1016 130 1214 14.2 1125 150 1370 15.3 1234 170 1471 15.8 1375 190 1589 16.6 1344 210 1669 17.0 1453 230 1744 16.9 1485 250 1813 17.1 1546 270 1875 17.3 1515 290 1940 17.7 1594 310 1992 18.3 1657 330 2027 18.6 1703 350 2051 18.6 1766 370 2089 18.7 1703 390 2125 18.6 1672 410 2136 18.8 1703 430 2164 19.4 1750 450 2158 19.5 1766 470 2174 19.4 1796 可以看出,随着仿真车辆数的增加,单仿真引擎所占用的CPU与仿真计算耗时也随之增加,增长趋势基本相符,与仿真引擎的性能分析结果一致。
-
单仿真引擎仿真加速比主要测试仿真加速比对仿真计算资源的消耗。本文选取双向8车道的十字路口地图作为仿真地图,该仿真地图的最大容量为380辆仿真车辆。实验中,仿真车辆生成速率设置为50,当仿真车辆数达到仿真地图最大容量时,通过调整仿真加速比来观察CPU资源消耗的情况。测试结果如表4、图7、图8所示。
表 4 单仿真引擎仿真加速比变化性能测试
仿真加数比 仿真车辆数 CPU占用率/% 仿真计算耗时/ms 10 363 8.5 203 20 366 9.1 360 30 364 10.4 578 40 362 11.6 781 50 370 12.4 906 60 373 14.0 1218 70 374 14.8 1375 80 368 16.2 1578 90 363 18.2 1844 100 365 18.0 1984 从表4、图7、图8所展示的结果可以看出,随着仿真加速比的增加,单仿真引擎所占用的CPU与仿真计算耗时也随之增加,与仿真引擎的性能分析结果一致。
-
本文在如表2所示的单台服务器上,对面向多用户的微观交通仿真实验系统进行了多仿真引擎并发执行的性能测试。本文选取双向8车道的单十字路口地图作为仿真地图,该仿真地图的最大容量为380辆仿真车辆,通过对仿真引擎数的增加来观察仿真任务并发执行数对服务器CPU资源消耗的影响,测试结果如表5、图9所示。
表 5 多仿真引擎并发执行性能测试
并发仿真
引擎数CPU最高占用率
(无任务)/%CPU最高占用率
(任务并发执行)/%0 4 18 1 11 25 2 18 36 3 25 44 4 32 51 5 38 59 6 45 68 7 52 79 8 60 87 9 67 93 10 76 100 从表5、图9所展示的结果可以看出,在无仿真任务和仿真任务并发执行的情况下,CPU占用率与仿真引擎的数量成线性比例增长。在单台服务器上,本文所实现的一种面向多用户的微观交通仿真系统可以支持多个仿真引擎、多个仿真任务的并发执行。并且,还可以通过增加服务器的数量来支持更多的仿真任务并发执行。
同时,由于仿真引擎只有在请求仿真任务的时候才会增加对CPU的消耗,而且仿真任务的执行时长是根据仿真请求步数确定的,不会无限地执行下去,会有一定的空闲期。因此,在实际的应用过程中,出现多个仿真任务并发执行的情况相对较少,从理论上讲,单台服务器可以支持更多的仿真引擎和仿真任务执行。
Design and Research of Multi-User Oriented Micro Traffic Simulation Experiment System
-
摘要: 针对现有交通虚拟仿真系统既无法支持多用户同时在线仿真,又无法满足实际的虚拟仿真教学实验需求,也难以大规模扩展等问题,该文首次从系统架构和仿真引擎方面设计并实现了一种面向多用户的微观交通仿真实验系统。并且从单仿真引擎仿真车辆数变化、单仿真引擎仿真加速比变化和多仿真引擎并发执行3个性能指标对该系统进行测试。测试结果表明,该文所实现的交通虚拟仿真系统能够支持多仿真引擎、多仿真任务的并发执行,满足多用户的同时在线仿真需求。Abstract: In view of the problems that the existing traffic virtual simulation systems have, such as they can neither simultaneously support real-time online simulation for multiple users, nor meet the practical requirements of virtual simulation teaching experiment and even be difficult to expand on a large scale. In this paper, from the aspects of system architecture and simulation engine, a multi-user-oriented micro-traffic simulation experiment system is for the first time investigated and devised. Furthermore, this paper tests the designed system from three performance indicators including the vehicle number change of single simulation engine simulation, the acceleration ratio change of single simulation engine simulation, and the concurrent execution of multiple simulation engines. The experimental results indicate that the traffic virtual simulation system devised in this paper can support the concurrent execution of multiple simulation engines and multiple simulation tasks as well as meet the simultaneous online simulation needs of multiple users.
-
Key words:
- concurrent execution /
- distribution /
- multi-user /
- simulation engine /
- traffic simulation
-
表 1 交通仿真系统对比
仿真系统 仿真类型 代码开源 仿真功能 仿真地图 车辆行为模型 在线仿真 仿真控制 Aimsun[10] 微观/介观/宏观 否 评估交通仿真、交通需求管理策略评估 支持路网导入并提供路网编辑功能 Gipps的安全距离模型改进Gipps的换道模型改进 否 是 TransModeler[11] 微观/介观/宏观 否 交通仿真和交通规划,与交通预测软件结合等 支持路网导入并提供路网编辑功能 心理-生理跟驰模型基于规则的换道模型 否 是 Paramics[12] 微观 否 交通仿真模拟,协助交通评估等 支持路网导入并提供路网编辑功能 基于规则的换道模型 否 是 PTV Vissim[13] 微观 否 交通分析和预测,信号优化等 支持路网导入并提供路网编辑功能 基于规则的换道模型 否 是 SUMO[14] 微观/介观/宏观 是 提供自定义模型,离散时间下的微观交通仿真 支持路网导入并提供路网编辑功能 Stefan Krauß模型的拓展SUMO自带的换道模型 否 是 Corsim[15] 微观/介观/宏观 否 交通仿真,提供多种车道方案 支持路网导入并提供路网编辑功能 Pitt跟驰模型Pitt换道模型 否 是 Matsim[16] 微观 是 需求建模、公共交通、多功能分析,提供基于代理的动态交通仿真等 开源api,提供路网编辑功能 多代理交通模型 否 是 MITsim[18] 微观 是 交通仿真可模拟监视能力,支持需求建模、公共交通、多功能分析等 提供路网编辑功能 心理-生理模型与GHR模型基于规则的换道模型 否 是 TJTS[18] 微观 否 微观交通仿真,基于仿真数据的评估功能,提供城市道路实验和测试平台 / / 否 是 SUTSS[19] 微观/介观/宏观 否 提供交通规划、交通建设、运行管理等 / / 否 是 本系统 微观 否 在线交通微观仿真 提供路网编辑模块 自带的换道模型/换道模型 是 是 表 2 微观交通仿真引擎性能测试实验环境
实验环境 实验环境描述 CPU Intel(R) Xeon(R) Silver 4110 CPU @ 2.10GHz 内存/GB 64 操作系统 Windows 专业版 空闲CPU占用率/% 6~7 表 3 单仿真引擎仿真车辆数性能测试
仿真步数 仿真车辆数 CPU占用率/% 仿真计算耗时/ms 10 213 10.0 438 30 404 10.5 609 50 596 10.9 719 70 778 12.5 828 90 920 12.8 906 110 1071 14.3 1016 130 1214 14.2 1125 150 1370 15.3 1234 170 1471 15.8 1375 190 1589 16.6 1344 210 1669 17.0 1453 230 1744 16.9 1485 250 1813 17.1 1546 270 1875 17.3 1515 290 1940 17.7 1594 310 1992 18.3 1657 330 2027 18.6 1703 350 2051 18.6 1766 370 2089 18.7 1703 390 2125 18.6 1672 410 2136 18.8 1703 430 2164 19.4 1750 450 2158 19.5 1766 470 2174 19.4 1796 表 4 单仿真引擎仿真加速比变化性能测试
仿真加数比 仿真车辆数 CPU占用率/% 仿真计算耗时/ms 10 363 8.5 203 20 366 9.1 360 30 364 10.4 578 40 362 11.6 781 50 370 12.4 906 60 373 14.0 1218 70 374 14.8 1375 80 368 16.2 1578 90 363 18.2 1844 100 365 18.0 1984 表 5 多仿真引擎并发执行性能测试
并发仿真
引擎数CPU最高占用率
(无任务)/%CPU最高占用率
(任务并发执行)/%0 4 18 1 11 25 2 18 36 3 25 44 4 32 51 5 38 59 6 45 68 7 52 79 8 60 87 9 67 93 10 76 100 -
[1] ANYA A R, ROUPHAIL N M, FREY H C, et al. Application of AIMSUN microsimulation model to estimate emissions on signalized arterial corridors[J]. Transportation Research Record Journal of the Transportation Research Board, 2014, 2428: 75-86. doi: 10.3141/2428-09 [2] 韦栋, 郑淑鉴, 佘文晟. 基于TransModeler的中观仿真模型研究与应用[J]. 交通科技与经济, 2015, 17(2): 50-55. doi: 10.3969/j.issn.1008-5696.2015.02.012 WEI Dong, ZHENG Shu-jian, SHE Wen-sheng. Research and application of microscopic traffic simulation model based on trans modeler software[J]. Technology & Economy in Areas of Communications, 2015, 17(2): 50-55. doi: 10.3969/j.issn.1008-5696.2015.02.012 [3] CAMERON G, WYLIE B J N, MCARTHUR D. PARAMICS-moving vehicles on the connection machine[C]//Proceedings of the 1994 ACM/IEEE Conference on Supercomputing. Washington: IEEE, 1994: 291-300. [4] 盖春英. VISSIM微观仿真系统及在道路交通中的应用[J]. 公路, 2005(8): 118-121. doi: 10.3969/j.issn.0451-0712.2005.08.029 GAI Chun-ying. Microscopic simulation system VISSIM and its application to road and transportation[J]. Highway, 2005(8): 118-121. doi: 10.3969/j.issn.0451-0712.2005.08.029 [5] 吴亦政, 孙健, 彭春露, 等. Vissim和Corsim在城市道路微观仿真中的对比研究[J]. 交通信息与安全, 2012, 4: 116-121. doi: 10.3963/j.issn.1674-4861.2012.04.026 WU Yi-zheng, SUN Jian, PENG Chun-lu, et al. Comparative study of micro-simulation performances for urban road network between Vissim and Corsim[J]. Journal of Transport Information and Safety, 2012, 4: 116-121. doi: 10.3963/j.issn.1674-4861.2012.04.026 [6] SERRAS J. The multi-agent transport simulation MATSim[M]. London: Ubiquity Press, 2016. [7] CHEN Chen-yi, HU Jian-ming, GENG Chen-yao. Calibration of MITSIM and IDM car-following model based on NGSIM trajectory datasets[C]//Proceedings of 2010 IEEE International Conference on Vehicular Electronics and Safety. [S.l.]: IEEE, 2010: 48-53. [8] 韩光辉, 陈笑蓉, 俞洋, 等. 基于SUMO平台的微观交通仿真研究[J]. 计算机工程与科学, 2012, 7: 195-198. doi: 10.3969/j.issn.1007-130X.2012.07.036 HAN Guang-hui, CHEN Fu-rong, YU Yang, et al. A study of microscopic traffic simulation based on the SUMO platform[J]. Computer Engineering & Science, 2012, 7: 195-198. doi: 10.3969/j.issn.1007-130X.2012.07.036 [9] 刘运通. 交通系统仿真技术[M]. 北京: 人民交通出版社, 2002. LIU Yun-tong. Traffic system simulation technology[M]. Beijing: China Communications Press, 2002. [10] 申丽君, 董悦, 周超雄, 等. 基于AIMSUN的城市交叉口优化方法仿真研究[J]. 公路交通科技, 2010, 10: 265-268. SHEN Li-jun, DONG Yue, ZHOU Chao-xiong, et al. Simulation research on urban intersection optimization method based on AIMSUN[J]. Journal of Highway and Transportation Research and Development, 2010, 10: 265-268. [11] 杨慧, 成卫, 肖海承, 等. 基于TransModeler的拥堵区域交通流量调控方法研究[J]. 科学技术与工程, 2011, 8: 1746-1750. doi: 10.3969/j.issn.1671-1815.2011.08.021 YANG Hui, CHENG Wei, XIAO Hai-chen. Study of traffic flow adjustment methods to congestion area based on trans modeler[J]. Science Technology and Engineering, 2011, 8: 1746-1750. doi: 10.3969/j.issn.1671-1815.2011.08.021 [12] 李伦. 微观交通仿真软件Paramics的工程应用实例[J]. 交通世界, 2018, 9: 42-44. LI Lun. Engineering application examples of microscopic traffic simulation software Paramics[J]. Transpoworld, 2018, 9: 42-44. [13] 虞笑晨, 陈怡立, 王崇伟. 基于Vissim微观交通仿真的交叉口优化分析与研究[J]. 交通世界, 2019, 2: 12-15. YU Xiao-cheng, CHEN Yi-li, WANG Chong-wei. Analysis and research on intersection optimization based on vissim microscopic traffic simulation[J]. Transpoworld, 2019, 2: 12-15. [14] ERDMANN J. Lane-changing model in SUMO[C]//Proceedings of the SUMO2014 Modeling Mobility with Open Data. Berlin: [s.n.], 2014, 24: 77-88. [15] OWEN L E, ZHANG Yun-long, RAO Lei, et al. Traffic flow simulation using CORSIM[C]//Winter Simulation Conference. [S.l.]: IEEE, 2000: 1143-1147. [16] 潘莹, 陈家琪. 基于Multi-Agent仿真的动态车辆路径算法研究[J]. 信息技术, 2015, 5: 121-124. PAN Yin, CHEN Jia-qi. Dynamic vehicle routing algorithm based on Multi-Agent simulation[J]. Information Technology, 2015, 5: 121-124. [17] 谢寒. 换车道模型研究[J]. 知识经济, 2010, 17: 5. XIE Han. Research on lane change model[J]. Knowledge Economy, 2010, 17: 5. [18] 邹智军, 杨东援. 城市道路交通仿真系统软件设计[J]. 交通运输工程学报, 2001, 1(3): 86-88. doi: 10.3321/j.issn:1671-1637.2001.03.021 ZHOU Zhi-jun, YANG Dong-yuan. Software design of urban road traffic simulation system[J]. Journal of Traffic and Transportation Engineering, 2001, 1(3): 86-88. doi: 10.3321/j.issn:1671-1637.2001.03.021 [19] CHEN Jian-kai, GAO Zuo-gang. Urban transport simulation system based shenzhen integrated traffic information services research[J]. Traffic & Transportation, 2013, 1: 62-64. [20] 邹智军. 新一代交通仿真技术综述[J]. 系统仿真学报, 2010, 9: 2037-2042. ZHOU Zhi-jun. Journal of system simulation[J]. Journal of System Simulation, 2010, 9: 2037-2042.