Evolvability (computer science)
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)(Learn how and when to remove this template message)
The term evolvability is used for a recent framework of computational learning introduced by Leslie Valiant in his paper of the same name and described below. The aim of this theory is to model biological evolution and categorize which types of mechanisms are evolvable. Evolution is an extension of PAC learning and learning from statistical queries.
Let and be collections of functions on variables. Given an ideal function , the goal is to find by local search a representation that closely approximates . This closeness is measured by the performance of with respect to .
As is the case in the biological world, there is a difference between genotype and phenotype. In general, there can be multiple representations (genotypes) that correspond to the same function (phenotype). That is, for some , with , still for all . However, this need not be the case. The goal then, is to find a representation that closely matches the phenotype of the ideal function, and the spirit of the local search is to allow only small changes in the genotype. Let the neighborhood of a representation be the set of possible mutations of .
For simplicity, consider Boolean functions on , and let be a probability distribution on . Define the performance in terms of this. Specifically,
Note that In general, for non-Boolean functions, the performance will not correspond directly to the probability that the functions agree, although it will have some relationship.
Throughout an organism's life, it will only experience a limited number of environments, so its performance cannot be determined exactly. The empirical performance is defined by where is a multiset of independent selections from according to . If is large enough, evidently will be close to the actual performance .
Given an ideal function , initial representation , sample size , and tolerance , the mutator is a random variable defined as follows. Each is classified as beneficial, neutral, or deleterious, depending on its empirical performance. Specifically,
- is a beneficial mutation if ;
- is a neutral mutation if ;
- is a deleterious mutation if .
If there are any beneficial mutations, then is equal to one of these at random. If there are no beneficial mutations, then is equal to a random neutral mutation. In light of the similarity to biology, itself is required to be available as a mutation, so there will always be at least one neutral mutation.
The intention of this definition is that at each stage of evolution, all possible mutations of the current genome are tested in the environment. Out of the ones who thrive, or at least survive, one is chosen to be the candidate for the next stage. Given , we define the sequence by . Thus is a random variable representing what has evolved to after generations.
Let be a class of functions, be a class of representations, and a class of distributions on . We say that is evolvable by over if there exists polynomials , , , and such that for all and all , for all ideal functions and representations , with probability at least ,
where the sizes of neighborhoods for are at most , the sample size is , the tolerance is , and the generation size is .
is evolvable over if it is evolvable by some over .
is evolvable if it is evolvable over all distributions .
The class of conjunctions and the class of disjunctions are evolvable over the uniform distribution for short conjunctions and disjunctions, respectively.
The class of parity functions (which evaluate to the parity of the number of true literals in a given subset of literals) are not evolvable, even for the uniform distribution.
Evolvability implies PAC learnability.