Evolving Neural Networks Through Augmenting Topologies (2002)

An important question in neuroevolution is how to gain an advantage from evolving neural network topologies along with weights. We present a method, NeuroEvolution of Augmenting Topologies (NEAT) that outperforms the best fixed-topology method on a challenging benchmark reinforcement learning task. We claim that the increased efficiency is due to (1) employing a principled method of crossover of different topologies, (2) protecting structural innovation using speciation, and (3) incrementally growing from minimal structure. We test this claim through a series of ablation studies that demonstrate that each component is necessary to the system as a whole and to each other. What results is significantly faster learning. NEAT is also an important contribution to GAs because it shows how it is possible for evolution to both optimize

*and complexify*solutions simultaneously, offering the possibility of evolving increasingly complex solutions over generations, and strengthening the analogy with biological evolution.
Outstanding Paper of the Decade (2002-2012) award of the International Society for Artificial Life

[ The pdf file is made available by MIT Press ]

View:

PDF
Citation:

*Evolutionary Computation*, Vol. 10, 2 (2002), pp. 99-127.

Bibtex:

Risto Miikkulainen | Faculty | risto [at] cs utexas edu |

Kenneth Stanley | Postdoctoral Alumni | kstanley [at] cs ucf edu |

NEAT C++ | The NEAT package contains source code implementing the NeuroEvolution of Augmenting Topologies method. The source code i... | 2010 |

NEAT C# | The SharpNEAT package contains C# source code for the NeuroEvolution of Augmenting Topologies method (see the original <... | 2003 |

NEAT Delphi | The Delphi NEAT package contains Delphi source code for the NeuroEvolution of Augmenting Topologies method (see the orig... | 2003 |

NEAT Matlab | The Matlab NEAT package contains Matlab source code for the NeuroEvolution of Augmenting Topologies method (see the orig... | 2003 |

NEAT C++ for Microsoft Windows | The Windows NEAT package contains C++ source code for the NeuroEvolution of Augmenting Topologies method (see the origin... | 2002 |

NEAT Java (JNEAT) | The JNEAT package contains Java source code for the NeuroEvolution of Augmenting Topologies method (see the original | 2002 |