The Obstacle Tower Challenge has launched! Let’s start by submitting an agent that samples a random action. For this, we will follow the guide provided by Unity.
Unity created the obstacle-tower-challenge repository that serves as a starter kit. We need to clone this repository to start developing and submitting agents.
git clone https://github.com/Unity-Technologies/obstacle-tower-challenge.git git clone [email protected]:Unity-Technologies/obstacle-tower-challenge.git
The first line clones the repository with HTTPS, whereas the second line clones the repository with SSH. Choose whichever method you are more familiar with.
To make sure your agent runs, you also need the Obstacle Tower Environment. Select the correct OS and unzip it to the
After this step, your directory should look something like this:
+ obstacle-tower-challenge/ + ObstacleTower/ - .gitignore - LICENSE - README.md - aicrowd.json - apt.txt - banner.png - build.sh - env.sh - requirements.txt - run.py - run.sh
The repository contains a
run.py script that has a simple
def run_episode(env): done = False reward = 0.0 while not done: action = env.action_space.sample() obs, reward, done, info = env.step(action) return reward
The action is sampled randomly until the episode is finished.
Create GitLab Repository
To make a submission, you need to create a private repository on AICrowd GitLab. Name it
obstacle-tower-challenge and click Create Project.
To submit, we need to push the
obstacle-tower-challenge starter kit in our local computer to this repository. First, let’s add a new remote repository to Git using one of the two commands below. Replace
<YOUR_AICROWD_USER_NAME> with your username on AICrowd.
# Add AICrowd git remote endpoint git remote add aicrowd https://gitlab.aicrowd.com:<YOUR_AICROWD_USER_NAME>/obstacle-tower-challenge.git git remote add aicrowd [email protected]:<YOUR_AICROWD_USER_NAME>/obstacle-tower-challenge.git
Push to GitLab AICrowd repository. To push, you would need to set up credentials. When you visit the CrowdAI website, there should be a notification banner on setting a password (for HTTPS) of setting up SSH (for SSH). After you set up credentials, you can push.
git push aicrowd master
To submit the agent, you need to create a tag for your submission and push.
# Create a tag for your submission and push git tag -am "v0.1" v0.1 git push aicrowd master git push aicrowd v0.1
Congratulations! You have now submitted your first agent! You should be able to see the status of your submission on the Submissions section of the AICrowd website or on the Issues page of the AICrowd GitLab.
Now that we submitted a toy agent, the next step would be to train one of the baseline agents (Rainbow or PPO) and submit it!