Genetic Algorithm - Neural Networks Demo

Javascript   phaser   bots   neural networks   games   machine learning  

The goal of this experiment was to create usable and efficient Javascript NEAT (Neuroevolution of Augmenting Topologies) library and to test applicability of the NEAT Algorithm for use with various Machine Learning projects.

Each simulation is inspired by actual genetic evolution. It starts of with a very simple pre-generated Neural Network then it breeds the most successful genomes  (longest surviving) and creates mutations to create new behaviours.

This approach creates surprisingly good results in a very short time - sometimes as little as 20 generations. Of course this is a very simple example where the 'creatures' interact with the world by collecting food, however it can be applied to much more complex scenarios with many more variables. This algorithm learns in a natural way by interacting with the environment. Possible applications could be self-driving cars, playing games or interacting with any environment that is reward based.

You can see the interactive demo here: