Neural Networks
In this research project done in pairs, we wanted to study about Neural Networks, how did they work and which applications could they have in Video Game development.
During our research we discovered Neural Networks trained by Genetic Algorithms, which are capable of progressively learning to solve a certain task by giving it rewards and punishments in the form of a score.
We wanted to test if it was possible to create Enemy AI behaviors for videogames using exclusively this approach instead of classical AI structures such as state machines or behavior trees. And finally compare both approaches to see which one is best suited for Video Game development.
For this research we implemented a Pong AI using this method, and later would expand the investigation into a larger set of data and choices by creating a version of Pac-Man which Ghosts have been trained by a Neural Network (spoiler of the paper: they also needed a Pac-Man player trained by a Neural Network in order to be trained in the first place)
Pong was too simple of a game, the Neural Network Mastered it very soon.
After an initial training attempt for Pac-Man, we used it to train the ghost’s AI
We then used this better ghost AI to train Pac-Man again