Microsoft AirSim, a Simulator for Drones and Robots
Microsoft has developed and open sourced AirSim, a tool that can be used to simulate the flight of drones around the world. The simulator is built on the Unreal Engine and Microsoft will soon add support for robots and other types of vehicles.
Microsoft has developed internally the Aerial Informatics and Robotics Platform, a research project meant to understand how autonomous vehicles move in the real world. The platform uses deep learning to figure out how these vehicles behave in various circumstances in order to improve them. The vast amount of data needed for deep learning makes it difficult to run thousands of real experiments, which can crash the vehicles; Microsoft instead has created AirSim, a realistic simulator based on the Unreal Engine.
At this point, AirSim can simulate the flight of MAVLink and DJI drones and supports Pixhawk controllers. The framework is modular, enabling adding support for other types of vehicles and controllers. Microsoft plans to add support for some robots soon, and invites the community to contribute code if they want to extend to platform to support other types of hardware. The framework could be used to simulate the movement of any type of autonomous vehicle.
The simulation framework includes an API for downloading data collected from GPS and other sensors, including visual data, and to control vehicles. The project includes Windows builds, and Microsoft will soon make Linux ones available. Other platforms are easily supported because the code is built with cross-platform in mind, making use of CMake. Microsoft works on supporting ZeroMQ and Protobuf, and other languages such as Python.