原创不易,大家多多鼓励呦,OpenDILab继续出精品。错过上次评测推送的,可戳如下链接。
可能是最全的 | 适合决策AI研究的自动驾驶模拟器评测(上篇)_m0_55289267的博客-CSDN博客本文从决策 AI 研究的角度评测当下各种常见的开源自动驾驶仿真软件,从各个角度帮助读者分析和挑选适用于不同任务和场景的自动驾驶仿真器。https://blog.csdn.net/m0_55289267/article/details/123386162?spm=1001.2014.3001.5502
上期我们的评测总结如下:
CarSim是目前最接近真实世界的驾驶模拟器之一,是考虑车辆动力学模型下最适用于自动驾驶仿真研究的模拟器,主要用于车辆机械结构、传导和动力系统、能源消耗等车辆工程问题;
Carla是由英特尔实验室联合巴塞罗那计算机视觉中心开发的自动驾驶仿真模拟器,主要针对单车视角的城市驾驶环境,用于从传感信息出发,训练驾驶策略得到控制信号。Carla是目前学术界关注最多,也是研究领域使用并产出最多的自动驾驶仿真软件,一些由Carla团队或其他团队开发代码库在基本功能上继续扩展了其他内容,如支持场景构造和测试的Scenario Runner、强化学习环境Gym-Carla、全面的决策AI自动驾驶训练和测试平台DI-drive等;
SUMO 的全称是Simulation of Urban Mobility,是一款路网交通仿真模拟器。SUMO主要是从交通路网和车流的层面出发,进行自动驾驶和交通流的仿真,支持对道路和车道的编辑,车流和信号灯的定义等。
本期继续为大家介绍其它几种自动驾驶模拟器
AirSim是微软开发的另一个基于Unreal Engine 4,贴近真实的自动驾驶仿真软件,开始是针对四旋翼飞行器的模拟器,后来添加了对自动驾驶的支持。AirSim支持多种车辆物理模型,具有逼真的虚拟环境,多种基于图像的传感器和惯导、地磁、气压、雷达等传感器,简单方便的Python和C++ 等接口,可以运行在PSX等平台上进行手动控制。最新的AirSim还提供了Unity引擎的版本,拓展了系统支持,降低了修改难度。
AirSim是一款主要针对单车视角的,基于城市和野外环境的驾驶仿真软件,在多种传感器信息的基础上,开发自动驾驶策略,得到车辆控制信号,驱动单车完成巡线任务。
AirSim运行示例
与Carla一样,AirSim对环境的逼真渲染需要对系统和计算资源,尤其是显卡性能有一定要求。相比起Carla,AirSim相对缺少针对AI研究的一些基建和学术氛围,AirSim里面和自动驾驶决策AI有关的模块较少,如强化学习环境构件、巡线信息和周围环境的一些语义化信息获取等,目前主要支持端到端的策略训练,更复杂的实验需要进行较多的开发。AirSim上也缺少一些已有的实验结果和Baseline方法以及标准测试场景以供对比。
AirSim官网链接:
https://microsoft.github.io/AirSim/
TORCS的全称是The Open Racing Car Simulator,是一款开源的赛车模拟软件。TORCS 最早被用来进行不同赛车AI之间的竞速比赛,现在被越来越多地用于自动驾驶算法研究。TORCS包含若干数量的车辆和赛道,具备图形化界面和简单的3D渲染,还有一些包含环境语义信息的传感器等。TORCS的场景相对丰富,有城市、乡村等不同地图,但道路主要是竞速赛道,不包含驾驶任务常遇到的交叉口、并道等场景,他车也主要是以竞速为目标而非一般的驾驶行为。
TORCS底层由C/C++实现,用户可以查阅API以定制不同驾驶策略,从而与驾驶环境交互,获取传感信息等。TORCS的3D渲染相对简单,主要用于可视化而非作为驾驶AI的感知输入信号。TORCS的设计初衷是提供一个以竞速为目标的驾驶算法开发和对战平台,其对环境和感知信息的设计、地图设计以及完成指标更加接近于赛车任务。但竞速驾驶也可以被视作是自动驾驶的一个应用方向,自动驾驶算法的有效性和性能上限也可以在竞速驾驶任务中得到验证。
TORCS运行示例
TORCS官网链接:
http://torcs.sourceforge.net
VISSIM是德国PTV 公司开发的一款交通流仿真软件。比起SUMO,VISSIM拥有更美观的仿真界面,可以建立各种复杂的交通环境,如Highway、Parking、Roundabout等,支持导入真实的地图和路网场景。VISSIM还拥有各种不同类型的车辆以及行人,可以在非常贴近真实的仿真场景中,对交通流、交通设施以及一些局部变化对交通产生的影响等进行测试。VISSIM可以通过Python、MATLAB等开发接口同环境进行交互,支持不同角度的可视化,可以对结果进行评价和分析。VISSIM也可以控制单车来进行自动驾驶算法的研究。
VISSIM是目前工业界在交通领域应用最广泛的仿真软件,其缺点是尚未开源,正版价格昂贵,在一些细节使用上不够灵活,仿真速度也没有SUMO快。同SUMO一样,VISSIM的驾驶模型相对简单,想实现针对单车的精细规划和控制需要额外的开发工作。
VISSIM官网链接:
https://www.ptvgroup.com/en/solutions/products/ptv-vissim/
VISSIM使用示例
MetaDrive是今年8月新发布的一款轻量且易于安装,为决策AI方法在自动驾驶问题上应用而准备的模拟器。MetaDrive的前身是PGDrive,是依靠大量过程生成(Procedural Generated)的场景进行强化学习驾驶训练的工作。MetaDrive在其基础上改进成为了一个更易于其他自动驾驶任务使用的仿真器。MetaDrive保留了PGDrive的优点,包括近乎无限数目的路网和车流,并且能够导入真实数据进行训练。MetaDrive拥有简单的驾驶模型,具备3D渲染和可视化界面,比起Carla和AirSim,MetaDrive的环境渲染不包括道路以外的物体,因此更快更小,性能更强大。
MetaDrive包含若干标准的强化学习环境接口,提供完备的编造功能,通过Python拓展,算法研究者可以迅速搭建自己想要的场景,自定义奖励和观测形式(Lidar、相机、俯视语义图等),和引入新的车辆和物体,以研究Multi-agent、Safety RL、Multi-modality等各式各样的强化学习研究问题。
MetaDrive非常轻量化,整个库大小为50mb,可以通过pip一键安装,立即使用。基于Panda3D及其内置的Bullet引擎,MetaDrive还可以在保证车辆动力学的基础上实现300+FPS(单智能体)或80+FPS(40个智能体)的仿真效率。
MetaDrive的缺陷是道路之外的环境和渲染相对低级,图像传感的真实性较低,不适合做从图像传感出发的驾驶策略训练。
MetaDrive运行示例
MataDrive官网链接:
https://github.com/decisionforce/metadrive
总结
以上针对各种单车、多车、竞速、底层动力驾驶仿真器进行了详细的对比与分析。从个人研究者角度出发,我们认为最合适做单车驾驶仿真的是CARLA、MetaDrive仿真器,最适合做交通流驾驶仿真的是SUMO仿真器。
当然,这些仿真器都各有优缺点,应对具体任务进行分析和调研,选取最合适的仿真器来进行实验。
github.com/opendilab/
进入opendilab了解更多开源信息~