a brief introduction to ga theory. principles of adaptation in complex systems john holland proposed...
Post on 29-Dec-2015
214 Views
Preview:
TRANSCRIPT
A Brief Introduction to GA Theory
Principles of adaptation in complex systems
• John Holland proposed a general principle for adaptation in complex systems:
– Adaptation requires the correct balance between “exploration” and “exploitation”
• “Exploration”
– Adaptation consists of “searching” for new useful traits
• “Exploitation”
– Adaptation also consists of spreading useful traits once they are discovered
• Holland developed a mathematical theory of the correct balance between exploitation and exploration in adaptive systems
• The theory used an idealized example: a “two-armed bandit”.(From D. E. Goldberg, Genetic Algorithms in Search,
Optimization, and Machine Learning. Addison-Wesley 1989.
• You are given n quarters to play with, and don’t know the probabilities of payoffs of the respective arms.
• What is the optimal way to allocate your quarters between the two arms so as to maximize your earnings (or minimize your losses) over the n arm-pulls ?
(From D. E. Goldberg, Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley 1989.
• In Holland’s theory, each arm roughly corresponds with a possible “strategy” to test.
• The question is, if one strategy (arm) seems good, how much time should you spend exploiting it, and how much time should you spend exploring other, possibly better, strategies?
• Holland developed a mathematical model to answer this question, meant to apply to all complex adaptive systems.
• Basic result: you should continue to play both arms (exploration), but, over time, exponentially increase the number of quarters (samples) you give to the observed better arm.
• This led to the development of “genetic algorithms” and the notion of “schema processing” and the “Schema Theorem”.
Schema Theory
General idea (“traditional” theory):
GAs work by discovering, emphasizing, and recombining good “building blocks” of solutions in a highly parallel fashion.
Implies that good solutions are made up of good “building blocks”--- pieces of solutions that confer higher fitness on many strings they are part of.
Schemas
• Formalizations of “building blocks.” Here, assume individuals are bit strings. (There are many generalizations of schemas to other representations.)
• Subsets of bit strings expressed as templates. E.g., A = 100111B = 010011
H1= ****11
H2= **0***
H3= **0**1
H4= **0*11
A and B are instances of H1 - H4.**0*11 is order 3 (has 3 defined bits). **0*11 has defining length 3.
Schema Processing in GAs
General ideas:
• Any string is an instance of 2l schemas, so its fitness gives some information about those schemas.
• The population of N individuals contains between 2l and N2l
schemas (“implicit parallelism”).
• A GA explicitly samples strings, it implicitly samples schemas.
• The sampling procedure is gradually biased towards above-average fitness schemas.
top related