Marionette is designed to train neural networks to play NES game, in a fashion akin to a marionette. The name is also a play on the words "Mario" and "Net", referencing the first supported NES game. Eventually, I hope to train neural networks on the raw visual data, instead of the contents of the NES's RAM.
Marionette uses the NEAT algorithm detailed in Kenneth Stanley's paper, "Evolving Neural Networks through Augmenting Topologies".
Supported Games:
- Super Mario Bros. (1987)
This project must be built with Java-NEAT, JNSGA-II, and halfnes-headless. I organize it by making a Gradle super-project to build all modules together.