[Content after page loading]

Motivation

Doom has been considered one of the most influential titles in the game industry since it popularized the first-person shooter (FPS) genre and pioneered immersive 3D graphics. Even though more than 20 years have passed since Doom’s release, the methods for developing AI bots have not improved significantly in newer FPS productions. In particular, bots have still to “cheat” by accessing game’s internal data such as maps, locations of objects and positions of (player or non-player) characters. In contrast, a human can play FPS games using a computer screen as the only source of information. Can AI effectively play Doom using only raw visual input?
Goal

The participants of the Visual Doom AI competition are supposed to submit a controller (C++, Python, or Java) that plays Doom. The provided software gives a real-time access to the screen buffer as the only information the agent can base its decision on. The winner of the competition will be chosen in a deathmatch tournament.
Machine Learning

Although the participants are allowed to use any technique to develop a controller, the design and efficiency of the Visual Doom AI environment allows and encourages participants to use machine learning methods such as reinforcement deep learning.
Competition Tracks
1. Limited deathmatch on a known map.

The only available weapon is the Rocket Launcher, with which the agents start. The agents can also gather Medikits and ammo.
2. Full deathmatch on an unknown map.

Different weapons and items are available. Two maps are provided for training. The final evaluation will take place on three maps unknown to the participants beforehand.
Important Dates

31.05.2016: Warm-up deathmatch submission deadline
15.08.2016: Final deathmatch submission deadline
20-23.09.2016: Results announcement (CIG)

Contact

For announcements and questions subscribe to vizdoom@googlegroups.com
Bugs: Open a new GitHub ticket

Getting started

Download (or compile) the ViZDoom environment.
Follow the instructions.

What will the Deathmatch Look Like?

Your controller will fight against all other controllers for 10 minutes on a single map. Each game will be repeated 12 times for track 1 and 4 times for track 2, which involves three maps. The controllers will be ranked by the number of frags.

In the case of lots of submissions, we will introduce some eliminations.

Technical Information

Each controller will be executed on a separate machine having a single CPU and GPU at its only disposal.
The machine specification: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz + GTX 960 4GB
Operating system: Windows or Ubuntu Linux 15.04

How to Submit my Entry?

To accept your submission we will need the following data:

name of the team
team members and their affiliations
max. 2 pages description of the method used to create the controller (pdf)
a list of (sensible) software requirements for the agent to run (ask beforehand)
a link to the source code of your controller and additional files (max 1GB in total)
an instruction how to build and execute the controller

The form to submit the above data will be provided later.

In the spirit of open science, all submissions will be published on this website after the competition is finished.

Organizers

Wojciech Jaśkowski, Michał Kempka, Marek Wydmuch, Jakub Toczek