Submitting to the Deepdrive leaderboard
Overview
First-off we'll get you on the leaderboard with the default bot, so you can get familiar with the submission process. The Deepdrive leaderboard uses Botleague to evaluate submissions. To place an agent on the leaderboards, you just need to submit a bot.json file to the league repo via pull request.
Est. time (5-15 minutes depending on your internet connection)
Step 1: Fork botleague
Login to your GitHub account and fork the botleague repo with the fork button on the top right.
Step 2: Clone your fork
Step 3: Create a bot.json
Create a bots/<YOUR-GITHUB-NAME>/forward-agent/bot.json
in your fork with the following JSON.
NOTE: Here
crizcraig/forward-agent
is the default docker image for the forward-agent bot. Later on, when you modify your bot, you will replace this docker tag with a repo you have push access to.
Step 4: Commit and push your bot.json
Step 5: Click Pull Request on your repo's page
Step 6: Create your pull request
Step 7: Confirm that botleague has started your evaluation
Your pull request status should update to something similar to the following
Step 8: Wait for your bots evaluation to complete
Grab a coffee! This will take 5-10 minutes.
Step 9: Check that your pull request is merged
Once your evaluation is complete, it will be automatically merged as displayed in the image below. You may need to refresh the page. If you see an error, contact craig@voyage.auto, or file a GitHub issue. We are automatically notified of these errors as well.
Step 10: Go to the leaderboard!
Finally, check the leaderboards to see your bot's score and video ranked among the others.
Next steps
Local development of your bot
To test your bot locally, it's ideal to run the sim and agent on your local machine as in our examples. You can see what your bot scores locally by passing the same parameters to main.py
as we do on the evaluation server excluding the --server
parameter.
Next you can run the sim in server mode locally with those same parameters again, but this time, keeping --server
in the params passed to main.py
.
Now make sure your bot runs as a docker container against the official scenario container. For the case of unprotected_left
, for example, the docker image would be deepdriveio/deepdrive:problem_unprotected_left
. You can see how our scenario problem images are built and run here.
Then to build your bot container, refer to how our baseline agent bot containers are built here.
Finally, to submit your bot, create a pull request as we did above, pointing to your bot's docker image. If the image is the same, you can just add whitespace, or change some comment text to allow for the pull request.
Last updated