微观交通仿真系统TESS NG融合了交通工程、软件工程、系统仿真等交叉学科领域的最新技术研发而成,具有全道路场景仿真,多模式交通仿真,智能交通系统仿真等多重功能。主要特点为:完全自主知识产权、专门针对中国驾驶者及交通流特征、便捷快速的建模能力、开放的外部接口模块、定制化的用户服务等
TESS仿真系统是同济大学孙剑教授于2006年主持开发的第一代道路交通仿真系统。自此之后,历经十年,孙剑教授课题组针对中国混合交通流运行特征开展了100多项模型创新和仿真系统应用实践。
TESS NG软件模型具有适应高密度车流,
短距离需求环境的车辆变道行为;模型高度拟人化,
将行为划分为车道选择,间隙选择,动态博弈,间隙接受及轨迹执行;
适应高密度情况下的车流交互行为。
软件能够在交叉口、干道、路网等多种空间尺度下进行仿真,可以模拟大型立交、环岛、匝道、收费站、机场等多种交通场景。
宏微观路网的路段Link匹配技术;宏微观路网交叉口节点Node匹配技术;
不同高程路网匹配;
宏观路径导入微观路网仿真;
大规模路网的出行路径重构;
50000+辆车实时运行计算;
断面流量,路口延误的仿真精度>85%6。
TESS NG轨道交通仿真版本可以仿真高铁枢纽场站,
有轨电车,地铁运行系统等;
软件可展示多模式交通下的各类交通枢纽运行状态,
并进行仿真运行结果的微观评价指标输出等。
仿真可针对不同车型、不同区域实时生成不同类型的排放指标;
指标内容包含常见污染物NOx、THC、CO、PM2.5,以及温室气体C02;
在仿真路网上可实时展示排放结果分布的热力图。
三维模型加载支持BIM,OBJ,倾斜摄影OSGB等格式:
支持二维仿真路网自动构建三维路网,并可视化三维对象,无需用户手工三维建模,支持批量化构建三维模型;
支持对阴、晴、雨、雪、雾天气系统,昼夜建筑光影光照系统的可视化;
支持飞行视角,跟车视角,车内视角多角度呈现,并支持视频录制。
在车路协同模块中可以设置施工区、事故区的运行状态,不同车辆的激进程度比例;
可设置包括路侧RSU设备及检测范围、联网车辆比例及数目,用于仿真智能网联车的运行状态;通过车路协同模块可实时查看,输出各RSU设备范围内的预警信息。
全道路场景仿真
城市交叉口/干道/路网环境/立交/环岛/匝道/收费站/机场/枢纽
多模式交通仿真
公交系统仿真/机动车/非机动车仿真/飞机/特殊车辆仿真
智能交通系统仿真
信号控制系统公交优先系统/限速区/事故区/专用车道/ETC等
可视化评估
排队长度/行程时间/数据采集点样本/集计数据/高精度轨迹数据
二次开发接口
宏观的路径数据导入/检测器数据/信号控制数据/其它相关数据接口
其它功能
轨迹数据的3D场景构建/与交通大脑、可计算路网一体化整合/与BIM、CIM、智能汽车等跨行业应用
1.适应中国高密度交通流环境
2.Opendrive/shp/BIM等文件读入
3.共享空间二维仿真模型
4.多模式交通仿真
5.各类交通冲突便捷设置及处理
6.快捷友好的全局路径设置
7.各类动态指标实时展示查看
8.功能强大的API二次开发接口
9.支持各类前端跨平台应用
10.支持各类自动驾驶联合仿真应用
1.高度拟人化的车辆跟驰行为模型
2.高密度短距离需求环境车辆变道模型
3.基于随机效用理论的汇入行为模型
4.交叉口机动车辆自动穿越行为模型
5.非机动车二维智能体模型
6.机非交互路段行为模型
7.公交车辆与社会车辆交互模型
8.紧急事件识别反应模型
9.混合流交叉口机非交互模型
10.信号控制反应模型
1.研发背景
TESS NG微观交通仿真系统融合了交通工程、软件工程、系统仿真等交叉学科领域的最新技术研发而成,主要特点为:完全自主知识产权、便捷快速的建模能力,开放的外部接口模块以及定制化的用户服务等。
TESS NG强化设计,在软件功能扩展、项目建设过程中对大量功能的实现进行抽象,将抽象的逻辑过程在TESS NG内部与核心功能相融合。这些抽象的逻辑细化成接口方法,抽象接口方法的具体实现留给具体运用。在此架构设计下,开发出车路协同、在线仿真、微宏观一体化仿真等插件模块。目前这些抽象接口的设计和运用已经成熟。
TESS NG的二次开发通过用户编写代码与TESS NG交互来实现能力扩张与功能定制。
TESS NG python API与C++API功能完全一致。python API是在C++API基础上封装的,由于python语法与C++相比存在一些差别,为了使python API 的调用方式尽可能与C++ API调用方式保持一致,对少数几个C++ 方法进行了调整,最终C++ API 与 python API 在功能上完全一致,只是python少数几个方法名不同(避免重载带来复杂性)。
用户可以通过二次开发实现高度自动化,定制化的业务场景仿真,是实现交通数字孪生,学术实验的有效方法之一。
2.API支持语言
TESSNG 目前支持C++, Python两种语言的二次开发接口;其中python版本建议使用python3.6。
3.接口架构
TESS NG和插件相互调用,实现对TESS NG运行过程从精细到粗放各个层次的控制。
TESS NG通过实现TessInterface及其三个子接口,将自身主要功能暴露给用户,用户启动TESS NG后可以通过tessngIFace()方法获取TESS NG的顶层接口,再通过顶层接口获取三个子接口,调用子接口方法。TESS NG加载插件后可以调用python实现的插件接口方法,用户可以在插件方法中通过TessInterface及其子接口控制仿真运行,及仿真过程中车辆驾驶行为、信号灯色、路径车辆分配等等。
4.范例说明
范例“TESS NG PYAPI EXAMPLE”展示了在窗体界面、路网展示、仿真过程三个方面如何对TESS NG施加影响。
范例启动时从内存加载插件,企业版用户可成功加载插件,之后加载路网。如果成功加载了插件,插件会检测路网上的路段数,如果没有路段会创建几条路段、连接段以及发车点。之后TESS NG 再根据config参数"__simuafterload"值决定是否起动仿真。
5.增加窗体控件
在窗体界面上的影响:范例在窗体放置一个QDockWidget对象,QDockWidget对象包含了自定义界面,自定义界面上放置一些控件,通过这些控件操作TESS NG的路网加载、仿真运行,如下图如示:
6.改变路网元素展示内容
在路网展示上的影响:范例在加载路网后判断路网上是否有路段,如果没有则创建几条路段、连接段和几个发车点。其中名称为“曹安路”的路段的标签显示路段名,其它路段标签显示ID,连接段标签显示的都是名称,如下图所示:
7.控制车辆驾驶行为
在仿真过程上的影响:范例在仿真过程的影响包括初始化车辆车道、位置、速度,从几个方面改变车辆速度,以及控制自由变道,如下图所示:
通过车辆对象设置车辆长度函数setLength(self, len:float, bRestWidth:bool)中,如果bRestWidth为“True”,则车身宽度会随长度等比例变化,如果设为False,则车身宽度不会改变。
8.在路段和连接段中间任意位置发车
在仿真过程上的影响:范例在仿真过程动态从路段及连接段上距起点一定距离的位置发车,无需发车点发车,如下图所示: