Search Unity

Unity と Microsoft の提携により、自動運転車シミュレーター「AirSim」が Unity でも使えるようになりました。この提携は、Unity の高性能エンジンと、使いやすい C# 開発環境、および、Unity アセットストアの質の高いコンテンツによって、自動運転車とドローンの開発の民主化を推進するものです。

AirSim on Unity

AirSim は、Microsoft AI & Research Group のチームが開発した自動運転システムのためのオープンソースシミュレーターです。これは、リアリスティックな環境と車両力学を用いたプラットフォームで、AI や深層学習、強化学習、コンピュータービジョンの実験を行うことができます。AirSim on Unity は、まったく新しいエコシステムとプラットフォームを使った制作とイノベーションを可能にします。

「AirSim on Unity の目標は、自動運転車 AI と深層学習を発展させるメーカーやリサーチャーを支援することです。Unity はその OEM クライアントに対し、コスト効率の高い方法でリアリスティックなバーチャル環境を開発する手段と、自律学習および深層学習の世界を探索するための新しい方法を提供します。」

― Ashish Kapoor 氏(Microsoft Research & AI の Principal Researcher

強力・高性能

Unity では常にパフォーマンスに重点を置いた取り組みを進めて来ました。その賜物として高フレームレートで快適なパフォーマンスを提供する AirSim on Unity が実現されました。Visual Studio との併用によって、真に統合された、使い勝手の良い究極の開発環境を得ることができます。

クロスプラットフォーム対応

シームレスなクロスプラットフォーム対応は Unity の基本方針のひとつです。したがって、今回の AirSim for Windows のリリース後まもなく、Linux への対応も予定されています。Linux 版のリリースによって、高性能なシミュレーションがすべてのプラットフォームで実行可能になります。

ML-Agents を試してみよう

Unity 独自の機械学習イニシアチブである ML-Agents を AirSim 機能に統合すれば、さらに一歩進んだ試みが可能となります。オープンソースの ML-Agents は GitHub から入手可能で、高評を博しており 4,000 個を超えるスターを獲得しています。AirSim on Unity のリリースにより、この 2 つのコミュニティが共に模索・開発・進化していくための共通の土台が生まれました。

「現実世界で何日間・何週間もかけてトレーニングを行っていたのですが、新しい AirSim のツールを導入することで、Unity 内でたった数時間で無人航空機用の ML-Agents のトレーニングと評価ができました。」

― Anurag Rana 氏(Threye の最高経営責任者)

環境を素早く構築

Unity アセットストア には、シミュレーション用の複雑なバーチャル環境を素早く簡単に構築するために使用できる高品質なコンテンツが、幅広く提供されています。

すぐに始めていただけるように、Unity アセットストアで Windridge City を無料でダウンロードできるようにしました。この美しい環境には都市・郊外・田舎のエリアが含まれ、車両とドローンの両方に対応しています。Windridge City は AirSim と同様オープンソースですので、自由に修正を加えてお使いいただけます。

Windridge City を作り上げた NatureManufactureIndago 両スタジオに感謝の意を表します。彼らは独自のリソースと Unity アセットストアのツール(Unity Terrain Tools 制作の「EasyRoads3D」Procedural Worlds 制作の「Gaia」 ほか)を活用して本作を制作しました。また AirSim ラッパーコードの作成にあたっては Rythmos の協力を得ました。この 3 つのスタジオは私達のパートナーとして、自動運転シミュレーション研究の発展に対する情熱を共有し、Unity のエコシステムに参加する企業として相応しい資質と多様性を備えています。

AirSim on Unity の使用を開始する

AirSim API には変更が加えられておらず、サンプルデモプロジェクトと Windridge City が無料ダウンロードとして提供されていることから、AirSim の使用は簡単に開始していただけるようになっています。以下の資料(英語)を参考としてご活用ください。

GitHub レポジトリにある新しい Unity フォルダーには、AirSim ラッパーコード、車とドローンのデモプロジェクト、ドキュメンテーションが含まれています。車とドローンのプロジェクトは GitHub レポジトリ内で入手可能な既存のサンプルスクリプト(HelloCar.py と HelloDrone.py を含む)と併用可能です。

Windridge City は Unity アセットストアから入手可能です。ご利用にはポストプロセッシングスタック v2 が必要です。ポストプロセッシングスタック v2 はこちらのインストラクション(英語) に従って Unity パッケージマネージャー経由でインストールしていただけます。

初回リリースである今回の Windows 版は「ベータ版」です。Linux への対応は近日中に予定されています。AirSim はコア API に対応していますが、その可能性を最大限に発揮させるため、Unity コミュニティの皆様にご試用いただけることを楽しみにしています。

是非、GitHub のレポジトリに直接フィードバックをお寄せください。本ブログへのコメントもお待ちしております!

21 コメント

コメントの配信登録

コメント受付を終了しました。

  1. Hello Everyone,
    For my project we need a simulation software, basically the task is a simple pick-and-place (with a robot manipulator), but in outdoor environments.
    The sensors we are gonna use are: Camera, IMU, Torque, Pressure, Force and one different kind of orientation (1D) sensor.

    I tried VREP, it is easy to use and also it supports all the sensors, but the environment rendering is really bad (even the resolution is not good, when streaming from the visual sensor).

    I checked some tutorials of AirSIM and the environment modelling is very realistic with shadows and weather effetcs (which suits perfectly for the project) , however as far I know AirSIM only supports Camera, GPS, IMU and Barometer, also it has no Robot manipulator models (I do know that it’s main focus is on UAV’s).

    So I just wanted to know whether it is at all possible to import urdf model from ROS (as AirSIM have ROS support), also can one model and incorporate these other sensors.

    Any suggestions and advice is much appreciated.

    Thank You.

  2. As soon as I hit play in Unity, the app crashes immediately, with no log that i can find.

    1. Jose De Oliveira

      11月 26, 2018 10:01 pm

      Hi Jason,
      Sorry for the inconvenience. This feels like a settings.json issue.
      Probably best if you could post this question to AirSim’s Forum, here: https://github.com/Microsoft/AirSim/issues
      Thanks!

    2. Yeah, you just need to add this line : « “SimMode”: “Multirotor”, » to settings.json
      In Windows this file will be created for you under “My Documents\AirSim\” just after you run one of the demos binaries found over here https://github.com/Microsoft/AirSim/releases

  3. Hello, Do you have a scene for your windridge city that i can use in unity? I’ve gone through all folders and can’t see a scene file. How do i replicate your picture? Thanks

    1. Jose De Oliveira

      11月 16, 2018 6:03 pm

      Hi kingz,
      The Windridge City package can be freely downloaded directly from Unity’s Asset Store. The blog had a hyperlink for it on the package name, but it gets a little obscured in a large text like that.
      Here’s the direct link: https://assetstore.unity.com/packages/3d/environments/roadways/windridge-city-132222
      I hope you enjoy it!
      Thanks!

      1. Hi Jose, Thanks for your response. I may not have been clear in my question. I have already downloaded the windridge unity asset. I was asking how to I put the scene you have in my scene. Thanks

        1. Nevermind, i think the asset i downloaded are missing some files. I will re-download it again. Thanks

      2. Saad Siddiqui

        11月 30, 2018 10:18 am

        really Good assets nice work but men i don’t have latest version of unity i have unity 2018 1.1f1 but please don,t delete this assets soon i will download latest version of unity and also i gave you five stars soon by the way your are such a good designer

  4. Jason Bartlett

    11月 15, 2018 5:20 am

    Oh, one more question: Why not controller support instead of just keyboard?

    1. Jose De Oliveira

      11月 16, 2018 6:01 pm

      Hi Jason
      Excellent questions!
      We are trying to keep the more technical questions like yours centralized in AirSim’s discussion forum, here: https://github.com/Microsoft/AirSim/issues
      Would you mind re-posting those there?
      Thanks a bunch!

      1. Jason Bartlett

        11月 20, 2018 6:34 pm

        Yes sir. Will look at that. This is great! Thanks!

  5. Jason Bartlett

    11月 15, 2018 5:11 am

    Hi, This is great!. A few questions:
    1. Will this run in Unity with the same performance as it runs in Unreal? Or does does the wrapper add some overhead that will slow things down?
    2. Will this support multi-agent simulations for reinforcement training of several autonomous drones at once? For example running batches of 10 or 20 at a time.
    3. I was testing this out and the colliders don’t always prevent the drone from going through the ground. Is this a bug or is there something I’m not setting up right with colliers and collision detection. How do collisions register to Airsim lib? Do you have any optimization tips?
    4. Will this support SITL? If so, can you explain how to set that up?
    5. What is the best place for researchers to post questions like this? (Things related specifically to AirSim on Unity.)

  6. Unity’s going mad…

    1. SABARNO MAJUMDAR

      11月 20, 2018 1:25 pm

      Hello All,

      As a part of my little project, Im trying to build this simulator on Unity to make it work with MiddleVR. I was having issues earlier since I was dealing with Unreal Engine, but since thats out of the way, I am facing some issues in running the ‘ Cardemo’ .
      To Start with, its mentioned in the GitHub to get Unity 2018.2.15. I was able to build,cmd but when I ran the game it said the game was built on 2018.2.14. So I got the .14 version and ran the car demo but I didnt see any sort of map to play in, just an instance of a floor with the camera settings for the prefabs. Also, when I pressed play, Unity Immediately crashed(Tried it a few times). Anyone facing the same Issue?? I was also thinking of importing traffic simualted data that I created on SUMO Simulator using the TraCi protocol. Is it pssible on Airsim ?
      Regardless, v4z

  7. LOL I recall a forum conversation where I proposed using Unity, Navmesh and Google Maps to get a car to drive you where you wanted!

  8. Why does this talk about ECS and the Job system when neither are production ready or compatible with any of the assets you talk about? The screenshot you include is also clearly not using ECS. Have you been told to throw those terms in to every blog post you do?

    1. Jose De Oliveira

      11月 14, 2018 8:50 pm

      Hi Ed,
      Thanks a lot for raising this! My original intent was to list those as examples of Unity’s commitment to performance, but I obviously didn’t phrase it that way.
      That said, whatever you build for your simulation scenarios on this virtual world – traffic, pedestrians, etc – can and should benefit from increased performance coming from leveraging ECS and the Job System. But, as it was stated, and as you correctly caught, AirSim is not taking advantage of that on this initial release.
      Super thanks for the feedback!

      1. Thanks Jose – appologies if I came across a bit harshly!

        1. Jose De Oliveira

          11月 15, 2018 9:35 pm

          No worries! You pointed out something that didn’t look right and, with that, helped the blog to convey the right info. It’s a great outcome in my POV and I super thank you!