This project is used for the Generic Video Game Competition (GVGAI) Learning Competition from the year 2019. For more about the competition legs, rules and rank, please visite the AI in Games website, maintained by Hao Tong and Jialin Liu.
This project is forked from GVGAI Gym, which is an OpenAI Gym environment for games written in the Video Game Description Language (VGDL), including the GVGAI framework.
Please refer to the paper Deep Reinforcement Learning for General Video Game AI for more about the GVGAI GYM framework and some initial results of Reinforcement Learning (RL) agents. This paper should be cited if code from this project or the original GVGAI GYM 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}
}
Two competition legs at IEEE CoG2020 and PPSN2020: http://www.aingames.cn/gvgai/ppsn_cog2020
game-level\ RL agents | DQN | A2C | PPO2 |
---|---|---|---|
waterpuzzle-lvl0 | 0 | 0.5 | 0 |
waterpuzzle-lvl1 | 0 | 1 | 0 |
treasurekeeper-lvl0 | 30 | 2.5 | 17 |
treasurekeeper-lvl1 | 2.25 | 2 | 0.75 |
golddigger-lvl0 | -1.7 | 15.9 | -2.9 |
golddigger-lvl1 | 0 | 8.15 | -3.25 |
Table 1: Average score of different RL agents on each game level
game-level\ Planing agents | RS | RHEA | MCTS | OLETS | Random |
---|---|---|---|---|---|
waterpuzzle-lvl0 | 5.5 | 6.5 | 8.5 | 15 | 3.5 |
waterpuzzle-lvl1 | 4.75 | 4.75 | 6.75 | 11 | 2.5 |
treasurekeeper-lvl0 | 2.25 | 2.4 | 2.35 | 0.45 | 0.75 |
treasurekeeper-lvl1 | 1.75 | 2 | 1 | 0 | 0.75 |
golddigger-lvl0 | 149.6 | 130 | 154 | 164.6 | 4.8 |
golddigger-lvl1 | 64.9 | 61.5 | 67.4 | 88.9 | 8.2 |
Table 2: Average score of different planning agents on each game level
- 2020.3.24: We have fixed a bug in the game logic file treasurekeeper.txt . Please use the newly updated version.
- 2020.3.4: The map of level1 in game waterpuzzle has been changed to the same size as level0
Way 1: using Docker
Please refer to the step-by-step guidelines for setting up the framework and RL baselines with Docker (using GPU or CPU only).
Way 2: git clone
- Clone this repository to your local machine
- Run
pip install -e <package-location>
to install the package - Install a Java compiler(e.g.
sudo apt install openjdk-9-jdk-headless
)
- Anaconda: The version published after 2019.10 is recomended
- Java: JDK 9 is recommended
- Python: The version Python3 (3.6 or 3.7 are recomended) is acceptable. (Python2 can't be used!!!)
Bug reports and pull requests are welcome on GitHub at https://github.com/SUSTechGameAI/GVGAI_GYM.
original GVGAI-Gym (master branch)
AI in Games website for more about competition updates
Deep Reinforcement Learning for General Video Game AI published at IEEE CIG2018
- G. Brockman, V. Cheung, L. Pettersson, J. Schneider, J. Schulman, J. Tang, and W. Zaremba, “Openai gym,” 2016.
- A. Hill, A. Raffin, M. Ernestus, A. Gleave, A. Kanervisto, R. Traore, P. Dhariwal, C. Hesse, O. Klimov, A. Nichol, M. Plappert, A. Radford, J. Schulman, S. Sidor, and Y. Wu, “Stable baselines,” https://github.com/hill-a/stable-baselines, 2018.
- R. R. Torrado, P. Bontrager, J. Togelius, J. Liu, and D. Perez-Liebana, “Deep reinforcement learning for general video game ai,” in Computational Intelligence and Games (CIG), 2018 IEEE Conference on. IEEE, 2018.