Playing Atari games with a DQN and its variants
Now, let's learn how to create a DQN to play Atari games with Stable Baselines. First, let's import the necessary modules:
from stable_baselines import DQN
Since we are dealing with Atari games, we can use a convolutional neural network instead of a vanilla neural network. So, we use CnnPolicy
:
from stable_baselines.deepq.policies import CnnPolicy
We learned that we preprocess the game screen before feeding it to the agent. With Stable Baselines, we don't have to preprocess manually; instead, we can make use of the make_atari
module, which takes care of preprocessing the game screen:
from stable_baselines.common.atari_wrappers import make_atari
Now, let's create an Atari game environment. Let's create the Ice Hockey game environment:
env = make_atari('IceHockeyNoFrameskip-v4')
Instantiate the agent:
agent = DQN(CnnPolicy, env, verbose=1)
Train the agent...