This project uses Q-Learning, Hamiltonian Cycles (2016, Alhalabi et al) and Breadth First Search to play Snake. Mazes can also be drawn for the snake to navigate through.
The app can be found here: https://immodal.github.io/snake/
Figure 1: Hamiltonian Cycle
Figure 2: Q-Learning with policy arrows enabled
Figure 3: Snake navigating custom maze