Neuroevolution of augmenting topologies

Neuroevolution of augmenting topologies

NeuroEvolution of Augmenting Topologies (NEAT) is a genetic algorithm for the generation of evolving artificial neural networks (a neuroevolution technique) developed by Ken Stanley in 2002 while at The University of Texas at Austin. It alters both the weighting parameters and structures of networks, attempting to find a balance between the fitness of evolved solutions and their diversity. It is based on applying three key techniques: tracking genes with history markers to allow crossover among topologies, applying speciation (the evolution of species) to preserve innovations, and developing topologies incrementally from simple initial structures ("complexifying").

Contents

Performance

On simple control tasks, the NEAT algorithm often arrives at effective networks more quickly than other contemporary neuro-evolutionary techniques and reinforcement learning methods.[1][2]

Complexification

Ordinarily, a neural network topology is designed by a human experimenter, and a genetic algorithm is used to try out effective connection weights for it[citation needed]. The topology of the network remains unaltered.

The NEAT approach begins with a perceptron-like feed-forward network of only input neurons and output neurons. As evolution progresses through discrete steps, the complexity of the network's topology may grow, either by inserting a new neuron into a connection path, or by creating a new connection between (formerly unconnected) neurons.

Implementation

The original implementation by Ken Stanley is published under the GPL. It integrates with Guile, a GNU scheme interpreter. This implementation of NEAT is considered the conventional basic starting point for implementations of the NEAT algorithm.

Extensions to NEAT

rtNEAT

In 2003 Stanley devised an extension to NEAT that allows evolution to occur in real time rather than through the iteration of generations as used by most genetic algorithms. The basic idea is to put the population under constant evaluation with a "lifetime" timer on each individual in the population. When a network's timer expires its current fitness measure is examined to see whether it falls near the bottom of the population, and if so it is discarded and replaced by a new network bred from two high-fitness parents. A timer is set for the new network and it is placed in the population to participate in the ongoing evaluations.

The first application of rtNEAT is a video game called Neuro-Evolving Robotic Operatives, or NERO. In the first phase of the game, individual players deploy robots in a 'sandbox' and train them to some desired tactical doctrine. Once a collection of robots has been trained, a second phase of play allows players to pit their robots in a battle against robots trained by some other player, to see how well their training regimens prepared their robots for battle.

Phased Pruning

An extension of Ken Stanley's NEAT, developed by Colin Green, adds periodic pruning of the network topologies of candidate solutions during the evolution process. This addition addressed concern that unbounded automated growth would generate unnecessary structure.

HyperNEAT

HyperNEAT is specialized to evolve large scale structures. It was originally based on the CPPN theory and is an active field of research.

cgNEAT

Content-Generating NEAT (cgNEAT) evolves custom video game content based on user preferences. The first video game to implement cgNEAT is Galactic Arms Race, a space-shooter game in which unique particle system weapons are evolved based player usage statistics.[3] Each particle system weapon in the game is controlled by an evolved CPPN, similarly to the evolution technique in the NEAT Particles interactive art program.

See also

References

  1. ^ Kenneth O. Stanley and Risto Miikkulainen (2002). "Evolving Neural Networks Through Augmenting Topologies". Evolutionary Computation 10 (2): 99-127
  2. ^ Matthew E. Taylor, Shimon Whiteson, and Peter Stone (2006). "Comparing Evolutionary and Temporal Difference Methods in a Reinforcement Learning Domain". GECCO 2006: Proceedings of the Genetic and Evolutionary Computation Conference.
  3. ^ Erin J. Hastings, Ratan K. Guha, and Kenneth O. Stanley (2009). "Automatic Content Generation in the Galactic Arms Race Video Game ". IEEE Transactions on Computational Intelligence and AI in Games, volume 4, number 1, pages 245-263, New York: IEEE Press, 2009.

Bibliography

Implementations

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Neuroevolution — Not to be confused with Evolution of nervous systems or Neural development. Neuroevolution, or neuro evolution, is a form of machine learning that uses evolutionary algorithms to train artificial neural networks. It is useful for… …   Wikipedia

  • Compositional pattern-producing network — Compositional pattern producing networks (CPPNs), are a variation of artificial neural networks (ANNs) which differ in their set of activation functions and how they are applied. While ANNs often contain only sigmoid functions (and sometimes… …   Wikipedia

  • NEAT Particles — is an Interactive evolutionary computation program that enables users to evolve particle systems intended for use as special effects in video games or movie graphics. Rather than being hand coded like typical particle systems, the behaviors of… …   Wikipedia

  • Nero (Computerspiel) — Nero (für „Neuro Evolving Robotic Operatives“) ist ein in 2003 von der Universität Austin (Texas) entwickeltes Computerspiel, das aktuelle Forschung im Gebiet des maschinellen Lernens durch einen sogenannten neuro evolutionären Algorithmus… …   Deutsch Wikipedia

  • NEAT — may stand for: Near Earth Asteroid Tracking, a program run by NASA and the JPL to discover near Earth objects Neuroevolution of augmenting topologies,a genetic algorithm for the generation of evolving artificial neural networks Neue Eisenbahn… …   Wikipedia

  • Nero (disambiguation) — Nero is the Italian word for black and it may refer to: People: Nero, Roman emperor Nero (son of Germanicus), related to some emperors Gaius Claudius Nero, Roman consul and hero of The Battle of the Metaurus in 207 BC Nero Hawley, freed slave and …   Wikipedia

  • NEAT — NEAT  аббревиатура, которая может означать: Проект Near Earth Asteroid Tracking ; Алгоритм нейроэволюции нарастающей топологии (англ. Neuroevolution of augmenting topologies) …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”