TensorFlow.js Reinforcement Learning: Snake DQN

Deep Q-Network for the Snake Game


This page loads a trained Deep Q-Network (DQN) and use it to play the snake game. The training is done in Node.js using tfjs-node. See train.js.


A DQN is trained to estimate the value of actions given the current game state. The DQN is a 2D convolutional network. See dqn.js. The epsilon-greedy algorithm is used to balance exploration and exploitation during training.

Show Q-values
Game started.