AI Application (level 5&6)

Boids w/ Genetic Algorithm

AI applications were 2 AI modules that I studied with a total of 4 projects starting with a boids simulation with biods simulating group flocking behaviours using seperation, alignment and cohesion. This was also given a predator that would chase boids and destroy them on contact with the boids also having a flee behaviour to avoid predators. This project also has genetic algorithms to allow the boids to adapt to avoid the predator better over time. (Github)

Tower Defence AI with Genetic Algorithms

This was a Tower Defence AI that would use a genetic algorithm to encode where to place a tower on the game map as well as which one to place giving the AI a strategy plan for how to place the towers. While the strategy was successful at completing many waves the lack of threading made testing slow often taking hours per generation of AI (Github)

Chess MinMax

A chess oppenent AI was developed using a MinMax stragy to predict the best possible move to make over many turns using a heuristic algorithm that gave points to the AI to encourage them to take pieces and advantagous positions. To optimize the AI alpha-beta pruning was used to remove poor performing branches of possible moves. (Github)

Neural Network Flappy Bird AI

A neural network has been developed to play flappy with an improvement on the other training examples of multiple instances being played concurrently. There were issues during the development of this system with the back propergation required to allow the AI to train correctly. (Github)