NeatJS

A JavaScript implementation of the Neat Algorithm.
Genome Drawing done using D3.js

Examples

Classification

Using an evolutionary process we eventually get a network that can identify whenever a point is on one side or the other of the line. View it in action.

Pole Balancing

Pole balancing is a control benchmark historically used in engineering. It involves a pole affixed to a cart via a joint which allows movement along a single axis. The cart is able to move along a track of fixed length. Using the Neat Algorithm, we can evolve a network to control the cart. Here it is!

Target Seeking

In this example, we have four different populations, and each population evolves independently and at the end of each generation the best population on average score gets a point. The purpose of each player is to stay in the circle as long as possible. Check it out!