NEAT from Scratch

Machine Learning
Reinforcement Learning
from_scratch
NEAT from Scratch

Demo Video

Tech Stack

Python

Description

Implemented NEAT (NeuroEvolution of Augmenting Topologies) from scratch in Python to gain a deeper understanding of the underlying algorithm.

Used the implementation to train agents for Flappy Bird and Pong, then pitted the self-built Pong agent against one trained with neat-python.

  • Implemented the NEAT algorithm from scratch, covering genome mutation, population selection, and agent decision-making.

  • Trained a NEAT agent to play Flappy Bird.

  • Ported the implementation to Pong and benchmarked it against a neat-python-based agent.

Page Info

Flappy Bird Agent

NEAT-trained agent playing Flappy Bird

Pong Agent Battle

From-scratch NEAT agent vs. neat-python agent