← BACK TO LEVEL SELECT

🎮 Game Dev Origin

NEAT Flappy — Self-Learning AI Birds

A Flappy-Bird clone where nobody plays — a population of neural networks teaches itself to fly via NEAT (NeuroEvolution of Augmenting Topologies), growing more complex each generation.

Overview

A Flappy-Bird clone where nobody touches the keyboard — the birds learn to play themselves. Built in Python + Pygame with NEAT (NeuroEvolution of Augmenting Topologies): a whole population of tiny neural networks flaps, dies, and breeds, and the survivors’ networks evolve — gaining nodes and connections — generation after generation until they clear pipes effortlessly. One of my earliest ML projects, and still one of the most fun to just sit and watch.

Highlights

  • Evolves structure, not just weights — NEAT (via neat-python) starts from minimal networks and augments the topology over generations, so complexity emerges only when it earns its keep.
  • Watch it learn live — a Pygame loop runs the population in real time; average fitness climbs each generation as the weak genomes die off.
  • Genetic-algorithm core — speciation, crossover, and mutation drive a fitness function that rewards distance survived.
  • Replayable champion — the best evolved genome is saved, plus a network visualizer that draws the topology the birds invented.

Why it’s here

It’s a five-year-old repo from the very start of my ML journey — but the idea still holds up: the most effective learning starts simple and grows. A nice origin marker for the road from game loops to production AI.