An OpenAI Gym environment for games written in the Video Game Description Language, including the Generic Video Game Competition framework.
The framework, along with some initial reinforcement learning results, is covered in the paper Deep Reinforcement Learning for General Video Game AI. This paper should be cited if code from this project is used in any way:
@inproceedings{torrado2018deep,
title={Deep Reinforcement Learning for General Video Game AI},
author={Torrado, Ruben Rodriguez and Bontrager, Philip and Togelius, Julian and Liu, Jialin and Perez-Liebana, Diego},
booktitle={Computational Intelligence and Games (CIG), 2018 IEEE Conference on},
year={2018},
organization={IEEE}
}
- Clone this repository to your local machine.
- To install the package, run
pip install -e <package-location>
(This should install OpenAI Gym automatically, otherwise it can be installed here - Install a Java compiler
javac
(e.g.sudo apt install openjdk-9-jdk-headless
)
Demo video on YouTube
Once installed, it can be used like any OpenAI Gym environment.
Run the following line to get a list of all GVGAI environments.
[env.id for env in gym.envs.registry.all() if env.id.startswith('gvgai')]
Bug reports and pull requests are welcome on GitHub at https://github.com/rubenrtorrado/GVGAI_GYM.
This code is available as open source under the terms of the Apache License 2.0.
The 2nd GVGAI Single-Player Competition will be organised at the IEEE’s 2018 Conference on Computational Intelligence and Games (CIG18).
Important notice: A new GVGAI-Gym will be used in this competition from last year. The competition rules have been changed.
Due to the long training time, the GVGAI server won’t be used for training your agent. Please train your agent using your own machine or server.
Download and set up the new GVGAI-Gym framework on your machine/server.
Demo video on YouTube
Program your agent and train it
- on as many games/levels as you want;
- using as much time as you want for deciding an action per game tick;
- using as much time as you want for training.
- On 4 July 2018, we will release 3 games (G1, G2 and G3) and 2 levels each for training. Unknown levels of the same 3 games will be used for validation.
- Train your agent on the given levels of given games using as much time as you want.
The released game are named as:
- testgame1
- testgame2
- testgame3
- Zip your trained agent.
- Submit your agent to the competition.
- Submission will be opened from 4 July 2018 and closed at 29 July 2018 23:59 (GMT).
Remark: no feedback will be given until the bug report phase will start.
- Submission will be closed at 29 July 2018 23:59 (GMT).
- You will be contacted if we have problems running your agent on our server.
Your agent will play the same games (G1, G2 and G3) that we have released for training, multiple times, but on private levels. At this phase, your agent should return a legal action in no more than 100ms per game tick.
- Release games for competition:
2 July 2018Released on 4 July 2018 - Submission deadline:
22 July 2018 23:59 (GMT)29 July 2018 23:59 (GMT) - Testing on server:
23-27 July 2018 23:59 (GMT)30 July-3 August 2018 23:59 (GMT) - Starting validation on server:
28 July 20184 August 2018 - Announcement of results: during the CIG18