This project implements the classic Flappy Bird game using the NEAT (NeuroEvolution of Augmenting Topologies) algorithm, allowing an AI to learn to play the game autonomously. NEAT is a genetic algorithm that evolves neural networks to perform tasks, in this case, playing Flappy Bird.
git clone https://github.com/Shubhampatel001/Flappy-Bird-With-NEAT-Algorithm
pip install -r requirements.txt
This command will install the necessary dependencies, including neat-python and pygame.
To play Flappy Bird manually:
Open the "Base Model Flappy Bird.ipynb" notebook. Execute the cells to control the bird and navigate through the pipes.
To watch the AI agent train itself:
Open the "NEAT Algo Flappy Bird.ipynb" notebook. Run the cells to train the NEAT algorithm and observe the AI gameplay.
To watch the AI agent play:
Run
python test.py
Ensure that you have Python and Jupyter Notebook installed on your system before running the notebooks.
The feedforward.txt file contains the NEAT configuration parameters. You can adjust these parameters to change the behavior of the NEAT algorithm and experiment with different settings to improve the AI's performance.
Documentations: Contains abstracts, references, and notes related to the implementation.
Visuals: Includes photos, videos, results, graphs, and block diagrams related to the game.
This project is based on the implementation of Flappy Bird by sourabhv. NEAT algorithm implementation is provided by NEAT-Python.