A convolutional neural network that evaluates states of a simple RTS game (microRTS) and predicts the winner.
This is a replication of the network presented in the paper "Evaluating realtime strategy game states using convolutional neural networks" by authors Marius Stanescu, Nicolas A. Barriga, Andy Hess and Michael Buro.
The data processed by the network is generated by microRTS (https://github.com/santiontanon/microrts).
The convolutional neural network is implemented using PyTorch deep learning framework.
There are two parts in this project:
-
FeaturePlaneExtractor, which contains the java package and its classes, implemented to generate feature planes from recorded games in XML format. This package should be added to microRTS source code in order to generate samples. Note that there are already pre-generated samples in
data
folder. -
the Python scripts that generate the training and validation datasets, create and train the network, load and test a trained network. The Python scripts should be executed in this order:
- generateHdf5Database.py;
- conv_net.py
More information about the replication of the architecture and experiments performerd is available in the following links:
This project was realized as part of a seminar of the class "PGC306C-Machine Learning Applied to Digital Games" in the PhD Program of the Computer Science Faculty (FACOM) of the Federal University of Uberlândia (UFU) in 2022/1.