The goal of this project was to apply evolutionary principles to the famous videogame “Snake”. This historical retro game can serve as an optimal simplified model, to understand the implications of selection and mutation on neural evolution. Before using the evolutionary weight adaption, other methods were tested for comparison and evaluation of the evolutionary model.
The first approach was the development of a rule-based artificial intelligence. This first AI initially could only see one field in front, one to the right and one to the left. Using this field of vision, the AI made the decision to go straight or left. Later the field of vision was extended, so the AI could see all tiles straight ahead, left, right and diagonal. This resulted in efficient movements for food collection.
Furthermore a new neural network was developed, with backpropagation from scratch, without using any existing libraries for neural networks. The weights of this neural network were adjusted retroactively by a reference value. Since this network seemed to be no suitable method, the student team decided to use a neural network that uses evolutionary learning. Multiple neuronal networks were created and the best one was picked out. Based on this network a new generation of networks, with slightly different weights was created. This procedure has a very time-consuming learning phase, thus the student team implemented Reinforcement Learning as another learning method. In this process, the neural networks were rewarded or punished for their decisions.