Unity Machine Learning Agents (Unity ML-Agents) is a collection of machine learning tools meant to help AI researchers and designers to quickly and efficiently make advances in game development, robotics, and more.
Agents can be trained using reinforcement learning, imitation learning, neuroevolution, or other machine learning methods through a simple-to-use Python API. Unity additionally offers implementations (based on TensorFlow) of state-of-the-art algorithms to enable game developers and hobbyists to easily train intelligent agents for 2D, 3D and VR/AR games. These trained agents can be used for multiple purposes, including controlling NPC (non-player character) behavior (in a variety of settings such as multi-agent and adversarial), automated testing of game builds and evaluating different game design decisions pre-release.
Unity ML-Agents can benefit:
- Academic researchers interested in studying complex multi-agent behavior in realistic competitive and cooperative scenarios.
- Industry researchers interested in large-scale parallel training regimes for robotics, autonomous vehicle, and other industrial applications.
- Game developers interested in filling virtual worlds with intelligent agents each acting with dynamic and engaging behavior.
The Unity ML-Agent Toolkit is an open-source solution with the following features:
- Unity environment control from Python
- 10+ sample Unity environments
- Support for multiple environment configurations and training scenarios
- Train memory-enhanced agents using deep reinforcement learning
- Easily definable Curriculum Learning scenarios
- Broadcasting of agent behavior for supervised learning
- Built-in support for Imitation Learning
- Flexible agent control with On Demand Decision Making
- Visualizing network outputs within the environment
- Simplified set-up with Docker
- Wrap learning environments as a gym
Introducing: Unity Machine Learning Agents Toolkit - Unity Blog
The Obstacle Tower Challenge is live! - Unity Blog
Unity and DeepMind partner to advance AI research - Unity Blog
Documentaries, videos and podcasts
Unity Machine Learning Agents
September 19, 2017
Unity Obstacle Tower Challenge
February 8, 2019
- Machine learningA field of computer science enabling computers to learn.
- Unity TechnologiesSoftware company with a real-time engine and flexible real-time tools used by game developers and creators across industries and applications in 2D, 3D, VR, and AR.
- TensorFlow Agentsan open-source infrastructure paradigm for building parallel reinforcement learning algorithms in TensorFlow, allowing new algorithms to be developed and trained efficiently
- Reinforcement LearningAn area of machine learning focusing on how machines and software agents react in a specific context to maximize performance and achieve reward known as reinforcement signal.
- VideoGames & Computer Entertainment