AirSim on Unity: Experiment with autonomous vehicle simulation
We’ve partnered with Microsoft to bring the autonomous vehicle simulator AirSim to Unity. This collaboration helps democratize the development capabilities for autonomous vehicles and drones by taking advantage of Unity’s performant engine, easy to use C# development environment, and quality content from the Unity Asset Store.
AirSim on Unity
Created by the team at Microsoft AI & Research, AirSim is an open-source simulator for autonomous systems. It’s a platform comprised of realistic environments and vehicle dynamics that allow for experimentation with AI, deep learning, reinforcement learning, and computer vision. With AirSim on Unity, you have the opportunity to create and innovate on an entirely new ecosystem and platform.
“Our goal with AirSim on Unity is to help manufacturers and researchers advance autonomous vehicle AI and deep learning. Unity gives its OEM clients the ability to develop realistic virtual environments in a cost-efficient manner and new ways to experiment in the world of autonomous and deep learning.”
– Ashish Kapoor, Principal Researcher at Microsoft Research & AI
Powerful and performant
Thanks to the relentless focus on performance at Unity, AirSim on Unity offers smooth overall performance running at high frames per second. Paired with Visual Studio, you get the ultimate development environment that’s truly integrated and easy to use.
We embrace seamless cross-platform support as a core principle, which is why Linux support will soon follow today’s release of AirSim for Windows. With the upcoming Linux release, you will be able to run highly performant simulations no matter which platform you choose.
Experiment with ML-Agents
Unity’s own machine learning initiative ML-Agents can be integrated into AirSim’s capabilities, allowing for even more experimentation. The open source ML-Agents are available through GitHub and have been positively received with well over 4,000 stars. With the release of AirSim on Unity, the two communities now have a common ground to experiment, develop, and evolve together.
“Using the new AirSim tools, we have trained and evaluated our ML agents for unmanned aerial vehicles inside Unity in mere hours vs. training them in the real world over several days and weeks.”
– Anurag Rana, CEO at Threye
Build environments fast
The Unity Asset Store provides an expansive library of high-quality content that you can use to quickly and easily build complex virtual environments for your simulation.
To get you started, we offer the Windridge City environment as a free download from the Unity Asset Store. This beautiful environment supports both automotive and drone experimentation across urban, suburban, and rural locations. Windridge City is open source just like AirSim, so modify and use it freely.
A big thank you goes out to NatureManufacture and Indago for their efforts in bringing Windridge City to life. They used their own resources and leveraged tools from the Unity Asset Store including “EasyRoads3D” by Unity Terrain Tools and “Gaia” by Procedural Worlds. Another thank you goes out to Rythmos who helped create the AirSim wrapper code. These partners share our passion for advancing autonomous simulation research and embody the quality and diversity of companies in our ecosystem.
Get started with AirSim on Unity
By keeping the AirSim API unchanged, providing sample demo projects, and offering Windridge City as a free download, you can quickly get started with AirSim. Here is a list of helpful resources:
- Instructions to get started
- Get AirSim on Unity from GitHub
- Get Windridge City from the Unity Asset Store
The GitHub repository contains a new Unity folder with the AirSim wrapper code, car and drone demo projects, and documentation. The car and drone projects work with existing sample scripts available in the GitHub repository, including HelloCar.py and HelloDrone.py.
Note that this initial Windows release is labeled as “beta” with Linux support coming soon. While AirSim supports the core APIs, we are excited to have the Unity community experiment and help us bring out its full potential.
Feel free to share feedback directly in the GitHub repository or comment here on this blog. Happy experimenting!