Car racing
So far, we have seen how to build a dueling DQN. Now, we will see how to make use of our dueling DQN when playing the car racing game.
First, let's import our necessary libraries:
import gym import time import logging import os import sys import tensorflow as tf
Initialize all of the necessary variables:
ENV_NAME = 'Seaquest-v0' TOTAL_FRAMES = 20000000 MAX_TRAINING_STEPS = 20*60*60/3 TESTING_GAMES = 30 MAX_TESTING_STEPS = 5*60*60/3 TRAIN_AFTER_FRAMES = 50000 epoch_size = 50000 MAX_NOOP_START = 30 LOG_DIR = 'logs' outdir = 'results' logger = tf.train.SummaryWriter(LOG_DIR) # Intialize tensorflow session session = tf.InteractiveSession()
Build the agent:
agent = DQN(state_size=env.observation_space.shape, action_size=env.action_space.n, session=session, summary_writer = logger, exploration_period = 1000000, minibatch_size = 32, discount_factor = 0.99, experience_replay_buffer = 1000000, target_qnet_update_frequency = 20000, initial_exploration_epsilon = 1.0, final_exploration_epsilon...