HOME

TheInfoList



OR:

Cooperative Coevolution (CC) in the field of
biological evolution Evolution is change in the heritable characteristics of biological populations over successive generations. These characteristics are the expressions of genes, which are passed on from parent to offspring during reproduction. Variation te ...
is an
evolutionary computation In computer science, evolutionary computation is a family of algorithms for global optimization inspired by biological evolution, and the subfield of artificial intelligence and soft computing studying these algorithms. In technical terms, ...
method. It divides a large
problem Problem solving is the process of achieving a goal by overcoming obstacles, a frequent part of most activities. Problems in need of solutions range from simple personal tasks (e.g. how to turn on an appliance) to complex issues in business an ...
into subcomponents, and solves them independently in order to solve the large problem. The subcomponents are also called
species In biology, a species is the basic unit of Taxonomy (biology), classification and a taxonomic rank of an organism, as well as a unit of biodiversity. A species is often defined as the largest group of organisms in which any two individuals of ...
. The subcomponents are implemented as subpopulations and the only interaction between subpopulations is in the cooperative evaluation of each individual of the subpopulations. The general CC framework is nature inspired where the individuals of a particular group of species mate amongst themselves, however,
mating In biology, mating is the pairing of either opposite- sex or hermaphroditic organisms for the purposes of sexual reproduction. ''Fertilization'' is the fusion of two gametes. '' Copulation'' is the union of the sex organs of two sexually rep ...
in between different species is not feasible. The cooperative evaluation of each individual in a subpopulation is done by
concatenating In formal language theory and computer programming, string concatenation is the operation of joining character strings end-to-end. For example, the concatenation of "snow" and "ball" is "snowball". In certain formalisations of concatenat ...
the current individual with the best individuals from the rest of the subpopulations as described by M. Potter.Mitchell A. Potter, Kenneth A. De Jong
Cooperative Coevolution: An Architecture for Evolving Coadapted Subcomponents
Evolutionary Computation, v.8 n.1, 2000, p.1-29.
The cooperative
coevolution In biology, coevolution occurs when two or more species reciprocally affect each other's evolution through the process of natural selection. The term sometimes is used for two traits in the same species affecting each other's evolution, as well ...
framework has been applied to real world problems such as
pedestrian A pedestrian is a person traveling on foot, whether walking or running. In modern times, the term usually refers to someone walking on a road or pavement, but this was not the case historically. The meaning of pedestrian is displayed with ...
detection systems, large-scale function optimization and
neural network A neural network is a network or neural circuit, circuit of biological neurons, or, in a modern sense, an artificial neural network, composed of artificial neurons or nodes. Thus, a neural network is either a biological neural network, made up ...
training.García-Pedrajas, N., Hervás-Martínez, C. and Muñoz Pérez, J.
COVNET: a cooperative coevolutionary model for evolving artificial neural networks
IEEE Transactions on Neural Networks. v14 i3. 575-596.
It has also be further extended into another method, called
Constructive cooperative coevolution The constructive cooperative coevolutionary algorithm (also called C3) is a global optimisation algorithm in artificial intelligence based on the multi-start architecture of the greedy randomized adaptive search procedure (GRASP). It incorporates t ...
.


Pseudocode

''i'' := 0 for each subproblem ''S'' do Initialise a subpopulation ''Pop''''0''(''S'') calculate fitness of each member in ''Pop''''0''(''S'') while termination criteria not satisfied do ''i'' := ''i'' + 1 for each subproblem ''S'' do select ''Pop''''i''(''S'') from ''Pop''''i-1''(''S'') apply genetic operators to ''Pop''''i''(''S'') calculate fitness of each member in ''Pop''''i''(''S'')


See also

*
Constructive cooperative coevolution The constructive cooperative coevolutionary algorithm (also called C3) is a global optimisation algorithm in artificial intelligence based on the multi-start architecture of the greedy randomized adaptive search procedure (GRASP). It incorporates t ...
*
Genetic algorithms In computer science and operations research, a genetic algorithm (GA) is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to gene ...
*
Differential evolution In evolutionary computation, differential evolution (DE) is a method that optimizes a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality. Such methods are commonly known as metaheuristics a ...
*
Metaheuristic In computer science and mathematical optimization, a metaheuristic is a higher-level procedure or heuristic designed to find, generate, or select a heuristic (partial search algorithm) that may provide a sufficiently good solution to an optimizatio ...


References

{{Reflist Evolutionary computation