Preamble
In the current self-driving vehicle application development industry, there are lots of applications that are being designed, developed, integrated, and tested before deployment over the roads. We are all well aware that the integration and testing of the various modules such as navigation, perception, localization, and also for various kinds of critical scenarios are very difficult in the real-time environment as this requires a huge amount of effort, time, and cost.
To avoid wasting efforts in testing the functions of self-driving applications with various ODD features, the digital twin approaches can be utilized by enabling the various market available self-driving vehicle application simulators.
Abstract
As mentioned above, rigorous and comprehensive testing plays a key role in enabling self-driving cars to handle a variety of situations that they are expected to see on public roads. Physical testing on public roads is unsafe, costly, and not always reproducible. This is where testing in simulation by SIL and HIL helps fill the gap, however, the problem with simulation testing is that it is only as good as the simulator used for testing and how representative the simulated scenarios are of the real environment.
Simulators
There are industry-acknowledged open and proprietary self-driving vehicle application simulators available in the market. I would like to share the information that I have come across related to various available simulators for testing self-driving vehicle applications and scenarios. As part of the work, I have been using the webots (Very old) LGSVL (recent), and Gazebo (recent) simulators for the scenarios testing of various algorithms and functionalities
Open Source – Simulators
I would like to highlight the various industry-acknowledged open-sourced self-driving application simulators
Carla
Apart from the open-source code and protocols, This simulator provides open digital assets, such as urban layouts, buildings, and vehicles. The Carla features include scalability via a server multi-client architecture, autonomous driving sensor suite, flexible API, fast simulation for planning and control, maps generation, traffic scenarios simulation, ROS integration, and autonomous driving baselines.
References: https://carla.org/
LGSVL
This simulator is an open-source autonomous vehicle simulator developed by LG Electronics America R&D Centre. It is an HDRP Unity-based multi-robot simulator for autonomous vehicle developers that provide an out-of-the-box solution that can meet developers’ needs to focus on testing their autonomous vehicle algorithms.
References: https://www.lgsvlsimulator.com/blog/
Deepdrive
This simulator is an open simulation platform built to accelerate progress and increase transparency in self-driving. The features of Deepdrive include support for Linux and Windows, an interface through the Gym API using a reward function based on speed, safety, legality, and comfort, a pre-trained example agent, training code, and a dataset to get started building AI models.
References: https://deepdrive.io/index.html
PGDrive
This is an open-ended driving simulator with infinite scenes, the following are the various features that are being provided for the self-driving vehicle application testing
· Lightweight: Extremely easy to download, install and run on almost all platforms.
· Realistic: Accurate physics simulation and multiple sensory inputs.
· Efficient: Up to 500 simulation steps per second and easy to parallel.
· Open-ended: Support generating infinite scenes and configuring various traffic, vehicle, and environmental settings.
Reference: https://github.com/decisionforce/pgdrive
Airsim
This is a simulator for drones, cars, and more, built on Unreal Engine (we now also have an experimental Unity release). It is open-source, cross-platform, and supports software-in-the-loop simulation with popular flight controllers such as PX4 & ArduPilot and hardware-in-loop with PX4 for physically and visually realistic simulations.
Reference: https://microsoft.github.io/AirSim/
Flow
Flow is a traffic control benchmarking framework. It provides a suite of traffic control scenarios (benchmarks), tools for designing custom traffic scenarios, and integration with deep reinforcement learning and traffic microsimulation libraries. Traffic systems can often be modeled by complex (nonlinear and coupled) dynamical systems for which classical analysis tools struggle to provide the understanding sought by transportation agencies, planners, and control engineers, mostly because of the difficulty to provide analytical results on these.
References: https://flow-project.github.io/
Summit
This is an open-source simulator with a focus on generating high-fidelity, interactive data for unregulated, dense urban traffic on complex real-world maps. It works with map data in the form of OSM files and SUMO networks to generate crowds of heterogeneous traffic agents with sophisticated and realistic unregulated behaviors. SUMMIT can work with map data fetched from online sources, providing a virtually unlimited source of complex environments.
References: https://adacompnus.github.io/summit-docs/getting_started/introduction/
Proprietary Simulators
Nvidia Drive Sim
This is an end-to-end simulation platform, architected from the ground up to run large-scale, physically accurate multi-sensor simulation. It’s open, scalable, modular, and supports AV development and validation from concept to deployment, improving developer productivity and accelerating time to market.
References: https://developer.nvidia.com/drive/drive-sim
SDV
Wipro’s driverless car simulator (also known as SDV in a box or self-driving car in a box) is a global-scale simulator used to test and validate the navigation algorithms of autonomous vehicles. It acts as a testing ground for the vehicle before being rolled out onto the roads. The simulator is capable of taking the vehicle to its limits of operations by navigating it through challenging real-life scenarios.
RfPro
This is a driving simulation software used by racing teams and car manufacturers for advanced driver-assistance systems, self-driving cars, and vehicle dynamics. This Pro was created in 2007 as a project of an F1 racing team, using Image Space Incorporated‘s this as a codebase. It was originally developed for driver-in-the-Loop simulations but has since been used for autonomous vehicle training as well. It is not licensed to consumers.
References: https://rfpro.com/about/
CarCraft by Waymo
In a corner of Alphabet’s campus, there is a team working on a piece of software that may be the key to self-driving cars. No journalist has ever seen it in action until now. They call it Carcraft, after the popular game World of Warcraft.
SurfelGAN by Waymo
Autonomous driving is an important application area of deep learning. After years of accumulation, there are now a large number of public data sets on the Internet for researchers to verify and improve their AI algorithms. But for autonomous driving technology on open roads, safety is the most important factor in front of us. Therefore, even if the accuracy of autonomous driving AI is trained to 99.99%, it still cannot meet the conditions for unmanned operation on the road.
Recommendation
Based on my current experience in evaluating the simulators and also working with features from the simulators, a single simulator will never be able to fulfill the need for self-driving vehicle application scenario testing. I recommend choosing the relevant simulators for the required and specific scenarios testing of the vehicle.