Obstacle Tower (Source code)
The Obstacle Tower is a procedurally generated environment consisting of an endless number of floors to be solved by a learning agent. It is designed to examine how machines operate in a variety of areas, including computer vision, locomotion skills, and high-level planning. It combines platforming-style gameplay with puzzles and planning problems, all in a tower with an endless number of floors for agents to learn to solve. Critically, the floors become progressively more difficult as the agent progresses.
Within each floor, the goal of the agent is to arrive at the set of stairs leading to the next level of the tower. These floors are composed of multiple rooms, each which can contain their own unique challenges. Furthermore, each floor contains a number of procedurally generated elements, such as visual appearance, puzzle configuration, and floor layout. This ensures that in order for an agent to be successful at the Obstacle Tower task, they must be able to generalize to new and unseen combinations of conditions.
Reference paper
To learn more, please read our IJCAI 2019 paper:
Obstacle Tower: A Generalization Challenge in Vision, Control, and Planning.
If you use Obstacle Tower in your research, we ask that you cite the paper above.
Training agents with a pre-built environment
If you are interested primarily in AI research using Obstacle Tower without the need to modify the environment itself, we provide pre-built binaries and a gym wrapper to interact with the environment. It is available here.
Requirements
Opening the project
- Open Unity Editor and load project from the root of this directory.
- From editor, load
Procedural
scene, located inAssets/ObstacleTower/Scenes
. - Click on
Play
button in Editor to run environment with player controls.
Understanding and extending the project
To learn more about the project and how to extend Obstacle Tower for your own custom research, see here.
Obstacle Tower Challenge
On February 11, 2019, Unity Technologies launched a challenge using the Obstacle Tower. The challenge ended on July 15, 2019. See below for more information on the Obstacle Tower Challenge.
- AICrowd Site and Final Leaderboard
- Obstacle Tower Challenge Environment Repository
- Obstacle Tower Challenge Starter Kit Repository
- Obstacle Tower Challenge: Test the limits of intelligence systems
- The Obstacle Tower Challenge is live!
- Obstacle Tower Challenge Round 2 begins today
- Announcing the Obstacle Tower Challenge winners and open source release