Lecture
Neuroevolution is a form of machine learning that uses evolutionary algorithms to train a neural network. This approach is used in industries like games and robot drive control. In these cases, it is sufficient to simply measure the performance of the neural network, while it is very difficult or almost impossible to implement training with a teacher. This teaching method belongs to the category of reinforced learning methods.
There are a large number of neuroevolutionary algorithms, which are divided into two groups. The first includes algorithms that produce the evolution of weights for a given network topology, the other - algorithms that, in addition to the evolution of weights, also produce an evolution of the network topology. Although there are no generally accepted conditions for making distinctions, it is accepted that adding or removing links in a network during evolution is called complication or simplification, respectively. The networks in which the evolution of both connections and topologies is carried out are called TWEANNs (Topology & Weight Evolving Artificial Neural Networks).
Evolutionary algorithms manipulate a variety of genotypes. In neuroevolution, a genotype is a representation of a neural network. In the scheme with direct coding, the genotype is equivalent to the phenotype, neurons and connections are directly indicated in the genotype. On the contrary, in the scheme with indirect coding in the genotype, the rules and structures for creating a neural network are indicated.
Indirect coding is used to achieve the following goals:
Comments
To leave a comment
Evolutionary algorithms
Terms: Evolutionary algorithms