-
Deep Q Network (DQN): Human-level Control Through Deep Reinforcement Learning
-
Dueling DQN: Dueling Network Architectures for Deep Reinforcement Learning
-
Double DQN: Deep Reinforcement Learning with Double Q-Learning
This is an easy to understand and modify the DQN structure as well as memory efficiency implementation that can store 1M transitions using ~8GB memory. The model architecture used in this code is not quite similar to the one described in the original DQN paper. I have tested with Pong, Breakout, and MsPacman so far.
It took ~25 hours of training to reach its first 400 points reward on Breakout evaluation using 1 GTX 1080.
- Python 3.6
- TensorFlow 1.10
- OpenAI Gym 0.10.5
- OpenCV 3.4.2
- mpi4py 3.0.0
Set up hyper-parameters in config.py. To run the program:
python train.py