Deep convolutional Q-Learning project powered by gym.
The project provides a customizable AI that applies n-step Q-Learning to Open-ai gym environments.
This work is an extension and an improvement of the now deprecated files provided by Achronus for the Doom gym environment.
In its actual state the software its runs on Python 2.7 and it is designed to works with some of old Atari games, gym-doom and gym-super-mario-bros. In particular the last two environment packages are not required in order to start the program.
Launch these commands in your Python environment (2.7) in order to install the required packages:
pip install gym
pip install Pillow
pip install scipy
pip install numpy
pip install pytorch
pip install superjson
The following software have also to be installed on your environment:
- boost,
- boost-python,
- torch,
- torchvision,
- cudatoolkit,
- cudann.
pip install gym[atari]
pip install ppaquette-gym-doom
pip install gym-super-mario-bros
#After 7.0.1 nes-py lost some core functions used by the algorithms
pip install nes-py==7.0.1
Just modify configuration_parameters.py in order to change the Enviroment, the Learning parameters and some additional Running functions.
If you want to change the CNNs consider the default-nns.py file and follow the translations as described in the custom-nns.py file.
Simply launch the main.py file using python in a terminal opened in the project directory:
python main.py
The program can work also on Google Colab enviroments.
Remember to set in configuration_parameters.py :
PLOT_CREATION=False
RENDER=False
to avoid problems as rendering isn't admitted (creation of the plot takes place silently and in an autonomous way).
- Federico Alfano - federicoalfano
- Luca Vargiu - bersa125