- Training a vision-based agent with the Deep Q Learning Network (DQN) in Atari's Breakout environment, implementation in Tensorflow.
- < Python 3.7 >
- < OpenAI Gym >
- Install the OpenAI Gym Atari environment:
$ pip3 install opencv-python gym "gym[atari]" - Atari environment used:
BreakoutNoFrameskip-v4
- Install the OpenAI Gym Atari environment:
- < Tensorflow r.1.12.0 >
- Deep Q Learning Network with the following improvements:
- Experience Replay
- Fixed Target Q-Network
- TD error loss function with: Qtarget = reward + (1-terminal) * (gamma * Qmax(sโ)โจ)
- DQN network Settings (in agent_dqn.py):

.
โโโ ./
| โโโ agent_dqn.py โโโโโโโโโโโ DQN model
| โโโ atari_wrapper.py โโโโโโโ Atari wrapper
| โโโ environment.py โโโโโโโโโ Gym wrapper
| โโโ runner.py โโโโโโโโโโโโโโ Main program for training and testing
| โโโ Readme.md โโโโโโโโโโโโโโ This file
โโโ model/
โโโ dqn_learning_curve_compare.png โโโโโโโโ Figure 1
โโโ dqn_best_setting.png โโโโโโโโโโโโโโโโโโ Figure 2
โโโ dqn_learning_curve.png โโโโโโโโโโโโโโโโ Figure 3
โโโ checkpoint โโโโโโโโโโโโโโโโโโโโโโโโโโโโ Tensorflow model check point
โโโ model_dqn-25581.data-00000-of-00001 โโโ Tensorflow model data
โโโ model_dqn-25581.meta โโโโโโโโโโโโโโโโโโ Tensorflow model meta
โโโ model_dqn-25581.index โโโโโโโโโโโโโโโโโ Tensorflow model index
- Traing the DQN Agent:
$ python3 runner.py --train_dqn - Testing the DQN Agent:
$ python3 runner.py --test_dqn - Testing the DQN Agent with gameplay rendering:
$ python3 runner.py --test_dqn --do_render


