Welcome to NEAT-Python’s documentation!

NEAT is a method developed by Kenneth O. Stanley for evolving arbitrary neural networks. NEAT-Python is a pure Python implementation of NEAT, with no dependencies other than the Python standard library.


Some of the example code has other dependencies; please see each sample’s README file for additional details and installation/setup instructions. In addition to dependencies varying depending on the example, visualization of the results (via visualize.py modules) frequently requires graphviz and/or matplotlib.

Support for HyperNEAT and other extensions to NEAT is planned once the fundamental NEAT implementation is more complete and stable.

For further information regarding general concepts and theory, please see Selected Publications on Stanley’s website, or his recent AMA on Reddit.

If you encounter any confusing or incorrect information in this documentation, please open an issue in the GitHub project.


Indices and tables