This repository is no longer supported. For a higher quality Python implementation, see this repository
This repository contains a python implementation of Human-Level Control through Deep Reinforcement Learning using Python and Tensorflow. This is done in the Arcade Learning Environment, as in the original paper.
The status of this repository is 'Working'. There are a few details that are different from the Deepmind implementation that are work in progress, but the implementation is correct.
- Python 2.7
- Arcade Learning Environment
- SciPy
- TensorFlow 0.12.0
- opencv-python-3.2.0.6
- ImageMagick (often doesn't need to be installed)
Contains the core training loop. This is where the program enters.
Contains the agent. This file has the action selection. This is where the training step is called, and where the training inputs are passed in. This file also loads the saved networks and creates the networks.
Contains the network architecture and the the RMSProp training step.
I used a number of references in building this. I apologize for any references I may have excluded.
- Original Deepmind Code
- alewrap
- deep_q_rl
- DQN-tensorflow
- DeepMind-Atari-Deep-Q-Learner
- simple_dqn
- DRL
- Discussion
These results are obtained after training for a few million frames on The Texas Advanced Computing Center's Maverick System, on an NVIDIA Tesla K40 GPU.
MIT License.