Skip to content
A simulator to learn walking and backflips using neural networks and genetic evolution.
Branch: master
Clone or download
Latest commit e1470a8 Aug 19, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
images Provide starting xy values and calculate head position Oct 6, 2017
jerry Change window title, add gif Oct 15, 2017
.gitignore Creates new folder to store saved runs, updated gitignore Nov 30, 2016
LICENSE Initial commit Jun 12, 2016
backflip.gif Change window title, add gif Oct 15, 2017
requirements.txt Update pymunk dependency Oct 2, 2017
screenshot.png Add basic setup file Sep 12, 2017

Jerry Learns

This simulation of Jerry Smith can be taught to walk or backflip using a NEAT genetic algorithm.



Jerry Learns uses Pymunk for its physics simulation and Pygame for graphics. Each joint is simulated as a pivot constraint, rotary limit, and a motor to provide motion.


Jerry's brain is simulated with a simple neural network that takes his current body state and outputs the desired torque for each of his joints. NEAT-python generates a population of neural networks and evolves them over time.

Creating New Behaviors

In order to create a behavior of your own, extend the Config class. This class is responsible for returning a fitness calculator, motion calculator, NEAT config, and starting joint angles.

You can’t perform that action at this time.