Inspiration
Frogger is a classic and beloved arcade game that is known by everyone. We wanted to see if we could apply machine learning techniques so that a computer could beat the Frogger by itself. So, we utilized neural networks, more specifically the NEAT algorithm, to learn how to play Frogger.
What it does
Our project trains a neural network using the NEAT algorithm to play Frogger. The NEAT algorithm aims to mimic how humans evolve in nature. Ideal behavior is passed down to future generations with mutations to allow them to continuously evolve. Throughout this process, the AI will constantly improve while searching for optimal behavior.
How we built it
This project was built with Python, NumPy, and PyGame.
Challenges we ran into
One challenge we had was determining the inputs to feed the network. It was difficult to figure out how we would calculate the "danger value" that the frog would experience as it crosses roads and other obstacles as it would have to look ahead, to the left, to the right, behind, and its current location. We also faced challenges fine-tuning the network to play correctly.
Accomplishments that we're proud of
We are proud of implementing the NEAT algorithm from scratch and successfully applying it to Frogger. We are also proud of the neural network's ability to consistently improve its game performance across each successive generation.
What we learned
How exactly a neural network functions, how the NEAT algorithm works, and how it can be applied to different applications, which in this case was the game Frogger.
What's next for NEAT Neural Net Frogger
A next step would include deploying the neural network with Frogger so that a download would not be necessary in order to see it play. Additionally, we can continue to further fine-tune the hyperparameters so that the model learns how to play faster.



Log in or sign up for Devpost to join the conversation.