打开网易新闻 查看精彩图片

上海济达交通科技有限公司是国产TESS NG微观交通仿真软件研发商。前期,团队在Linux环境对软件底层开发程序及Python二次开发接口内容进行了编译,并且在诸多项目中进行了测试应用,验证了版本功能的稳定性和有效性。推出了TESS NG Linux二次开发版本。后续团队将会继续融合升级,支持更多语言版本调用,推出更多二次开发案例以及实际应用。用户可以通过文末链接,或者官网www.jidatraffic.com下载试用。用户可以在Example文件夹下的Python范例文件夹查看所有案例场景,不受软件试用期的限制。二次开发的主要功能可以参见用户手册。

用户可以直接用Linux版TESS NG_Pyapi打开在已在Windows系统下开发完的项目,也可以直接打开在Windows或Linux中绘制的TESS路网文件。Linux版TESS NG_Pyapi支持所有Windows系统版TESS NG_Pyapi的功能。

01 Linux版TESS_Pyapi运行界面

TESS NG的Python二次开发支持Ubuntu20.04,Ubuntu18.04,Ubuntu16.04三类不同的操作环境。

打开网易新闻 查看精彩图片

Ubuntu20.04 TESS_Pyapi运行界面

打开网易新闻 查看精彩图片

Ubuntu18.04 TESS_Pyapi运行界面

打开网易新闻 查看精彩图片

Ubuntu16.04 TESS_Pyapi运行界面

02 运行环境说明

2.1 运行配置环境

当前支持稳定运行的Linux发行版为Ubuntu16.04LTS、Ubuntu18.04LTS、Ubuntu20.04LTS。能够运行TESS_Pyapi的python版本为Python3.6,所必要的python依赖库为pyside2。

2.2 安装

TESS NG Linux二次开发版操作与Windows二次开发版本大致相同。首先用户需要将下载的压缩包解压并放到Documents文件夹下。打开终端输入命令“sudo chmod -R 777 .”赋予TESSNG_Pyapi_Ubuntu下所有文件最高权限。RunPython.sh为启动程序。

TESSNG_Pyapi_Ubuntu文件夹
打开网易新闻 查看精彩图片
TESSNG_Pyapi_Ubuntu文件夹

2.3 配置启动环境

在TESSNG_Pyapi_Ubuntu目录下,输入“sudo vim RunPython.sh”使用sudo命令修改shell启动程序。因为当前TESS_Pyapi只能稳定支持python3.6版本,用户需要修改shell程序中python main.py为python3.6 main.py。

修改shell程序
打开网易新闻 查看精彩图片
修改shell程序
TESS_Pyapi启动程序
打开网易新闻 查看精彩图片
TESS_Pyapi启动程序

2.4 python环境安装

除Ubuntu18.04自带python3.6,Ubuntu20.04以及Ubuntu16.04需要用户手动下载python3.6版本。下载完毕后还需要安装pyside2依赖库。

Python3.6安装成功
打开网易新闻 查看精彩图片
Python3.6安装成功
为python3.6安装 match pyside2
打开网易新闻 查看精彩图片
为python3.6安装 match pyside2

2.5 TESS Pyapi运行及激活

完成上述步骤后,在终端输入“sudo ./RunPython.sh”即可成功运行TESS_Pyapi。运行成功后,用户需要导入激活码进行激活。

点击帮助->软件激活
打开网易新闻 查看精彩图片
点击帮助->软件激活
点击导入激活码
打开网易新闻 查看精彩图片
点击导入激活码
点击激活即可激活TESS NG
打开网易新闻 查看精彩图片
点击激活即可激活TESS NG

03 TESS NG_Pyapi开发案例

用户可以运行所有在Windows系统下已完成的二次开发案例,目前相关案例已经打包在安装包TESSNG_PyApi_Ubuntu/TESS_PythonApi_Linux_Example中。

3.1 公交优先案例

在信号控制优化模块中,TESS NG二次开发接口模块同时还可以进行各类感应控制方案的开发测试,包括绿灯延长,红灯早断,相位搭接等方案测试,设置绿灯延长时间,最大绿灯关键参数,其中各类感应控制和检测设施可以有效感知所有或某类车辆的通行特征,从而动态的控制信号灯的变化,如下所示范例即为公交信号控制优先的场景,公交车辆在进入区域后,有感应控制模块的信号控制方案会实现红灯的早断和绿灯的延长,保障公交系统的顺利运行。同时该模块还可以进行干线绿波等控制方式的仿真测试。

打开网易新闻 查看精彩图片

3.2 智能网联车

目前,应对拥堵瓶颈问题缺乏高效且可行的管控方法,而车路协同及智能网联车辆技术在减少交通事故、缓解交通拥堵、提高道路及车辆利用率方面具有巨大潜能。在智能网联环境下,用户可以自由地设置网联车比例,网联车队类型,车辆数目等。网联车队行为算法通过车路协同的车队超视距感知,使网联车队提前变道,避免二次事故发生,下图即示意某个大货车网联车队在通过弯道时遇到前方事故,提前接收到RSU(Road Side Unit)预警信息而提前变道的效果。一般此类功能较多应用于定制化的场景展示。可以有效表征和评估网联车队等行为决策,对交通系统运行产生的影响。

打开网易新闻 查看精彩图片

3.3 自动循环仿真

强化学习常用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。TESS NG提供快速自动循环仿真的方法,用户可通过自定义目标、条件、以及训练次数来控制TESS NG不断调整仿真参数使得结果不断向目标靠拢,以满足用户对于特定场景下的参数标定和强化学习等需求。同时在单次仿真结束后将保留本次仿真时所采用的仿真参数以及对应的结果,所有仿真数据将在自动循环结束后统一反馈至用户。系统重复仿真的效果如下。

打开网易新闻 查看精彩图片

3.4 单车事故

在精细化的车辆控制模型中,可以设置车辆占用1车道的轻微抛锚事故,或者车辆同时占用多车道的严重碰撞事故等,便于用户测试不同事故状态下的管理效果。事件可以在仿真前离线添加,也可以在仿真过程中动态添加。占用单车道的轻微事故模拟和占用多车道的重大事故模拟具体如下。

3.5 双车事故

打开网易新闻 查看精彩图片

3.6 智能网联车汇入

在智能网联场景下,由于网联车辆能够准确获取到主线上下游车辆的具体位置信息及运行状态,如何利用这些信息对网联车的汇入决策进行有效指导,进而优化整个快速路合流区运行效率,是目前车路协同背景下交通管控的重要方向。其中示范的网联车辆汇入行为决策应用如下:基于TESS NG二次开发接口能够有效模拟在不同可接受间隙下网联车辆汇入行为差异及其对主线交通流的影响。

打开网易新闻 查看精彩图片

3.7 自动驾驶

自动驾驶车辆(AV)自由换道算法由换道决策算法、换道路径规划算法和换道运动控制算法三部分组成。在自动驾驶仿真的测试环境中,可以通过设置不同感知范围内的车流信息、路网信息、通行环境等,综合判断换道行为的收益,进而控制车辆自身的驾驶行为决策,此时可以控制单个车辆的驾驶行为,也可以控制多个车辆,包括ACC车队的驾驶行为。可以控制的车辆驾驶行为包括跟驰行为,变道行为,让行行为等。

同时仿真运行时,可以显示车辆实时感知前方对象范围的探测角度,距离等。

打开网易新闻 查看精彩图片

3.8 智能网联车混合

网联车辆仿真是目前二次开发应用高频的场景,随着自动驾驶网联环境发展下,车辆如何执行编队情况下的驾驶行为,实现快速的变道编队协作,以及编队车辆在网联自动环境与人工驾驶的高效协同驾驶,是目前自动驾驶应用的重要方向。其中示范的自动驾驶编队场景的应用如下:该范例场景中,CV时刻搜索外侧相邻车道上的CV编队或可形成编队的潜在CV对象,完成目标搜索后,CV将执行换道实现编队并入,并在CV完成编队后,其驾驶行为模型也将同步更新,期望速度提升,并采用更为激进的跟驰策略。

打开网易新闻 查看精彩图片

后续济达交通团队将持续发布基于TESS NG(Linux版本)的二次开发案例,丰富应用场景,并支持更多种二次开发语言,若在开发过程中有相关问题,也可以加入用户群与团队交流沟通。