7. Genetic Programming and Emergent Order GP-Seminar 신수용
2 Contents u Introduction u Evolution of Structure and Variable Length Genomes u Iteration, Selection, and Variable Length Program Structures u Evolvable Representations u The Emergence of Introns, Junk DNA, and Bloat u Introns in GP defined u Why GP Introns Emerge u Effective Fitness and Operator u Why Introns Grow Exponentially u The Effects of Introns u What to Do about Introns
3 7.1 Introduction u This chapter focuses on emergent properties arising from GP’s freedom of representation of the problem space u Two important properties of GP GP’s ability to search the space of the problem representation The problem of introns or bloat u emergence -> variable length genotype 때문
4 7.2 Evolution of Structure and Variable Length Genomes u The capability to evolve a representation of the problem depends on the ability of a learning algorithm to modify the structure of its own solutions u By evolving structure, a variable length genotype may be able to learn not only the parameters of the solution, but also how many parameters there should be, what they mean, and how they interrelate u The variable length genotype is perhaps GP’s most radical practical innovation compared to its EA roots
5 7.3 Iteration, Selection, and Variable Length Program Structures u The essence of evolution iterative insofar as generation after generation of populations are assigned reproduction opportunities selective, insofar as the better performing variants get a better chance to use these opportunities u Dawkins called this aspect cumulative selection the effects of selection acting on one generation are inherited by the next
6 7.4 Evolvable Representations u Problem representation most ML paradigm: a fairly constrained problem representation (Boolean, threshold, decision trees, etc) u Constraints advantage: making the traversal of the solution space more tractable as long as the solution space is well tailored to the problem domain u GP search space the problem space + the space of the representation of the problem
7 7.4 Evolvable Representation (2) u Ignoring Operators or Terminals system should magnify the exploration of sections of the representation space that produce better results u Finding Solutions of the Correct length GP can find a short or a long solution where a fixed length representation cannot u Modularization and Meta-Learning 표현방법 탐색 공간에 대한 연구 Modularization (chap 10) Meta-Learning l information about the problem representation from one GP run is used to bias the search in later GP runs
8 7.5 The Emergence of Introns, Junk DNA, and Bloat u Angeline the first GP researcher to associate this emergent “extra code” in GP with the concept of biological introns “occasional occurrence” u Tackett GP bloat was caused by blocks of code in GP individuals u A body of research has established that GP bloat is, in reality, caused by GP introns introns are a persistent and problematic part of the GP process
What Can We Learn from Biological Introns u 생물학적 개념의 introns 과 GP 의 introns 은 거의 동일한 개념 phenotype 에 아무런 직접적 영향을 주지 않음 play some role in protecting good building blocks against destructive crossover have indirect effect on survivability, the nature of the effect is different
Introns in GP Defined u Introns in GP A feature of the genotype that emerges from the process of the evolution of variable length structures does not directly affect the survivability of the GP individual u properties introns are emergent and they do not directly affect the fitness of the individual u artificially inserted introns: artificial intron equivalents u Global introns for every valid input to the program u local only for the current fitness cases and not necessarily for other valid inputs
Why GP Introns Emerge u While introns do not affect the fitness of the individual, they do affect the likelihood that the individual’s descendents will survive u effective fitness survivability of an individual’s offspring The fitness of the parent. The fitter the parent, the more likely it is to be chosen for reproduction the likelihood that genetic operators will affect the fitness of the parent’s children u introns emerge principally in response to the frequently destructive effects of genetic operators
Effective Fitness and Crossover u Complexity of the program length or size of the program measured with a method that is natural for a particular representation u absolute complexity total size of the program or block u effective complexity the length of the active parts of the code within the program
(2) u Using fitness-proportion selection, block exchange crossover C j e : the effective complexity of program j C j a : the absolute complexity of program j p c : probability of crossover p j d : probability of destructive crossover f j : the fitness of the individual bar f t : average fitness of the population the proportion of copies of a program in the next generation is the proportion produced by the selection operator minus the proportion of program destroyed by crossover
(3) u Rewrite u effective fitness increase its effective fitness by lowering its effective complexity
Effective Fitness and Other Operator u Generalization to include the effects of other operator
Why Introns Grow Exponentially u Introns can provide very effective global protection against destructive crossover u 최적해에 근접한 개체는 fitness 를 증가시키는 것은 매우 힘들어지고, 최소한 현상태를 유지시키기 위해서 Effective fitness 를 증가시키는 방향을 선택한다. Introns 증가 한계가 주어지지 않는다.
The Effects of Introns u introns may benefit evolution vs. introns almost always result in poor evolution and extended computation u issues about introns Introns may have differing effects before and after exponential growth of introns begins Different systems may generate different types of introns with different porbabilities The extent to which genetic operators are destructive in their effect is likely to be a very important initial condition in intron growth mutation and crossover may affect different types of introns differently
Problems Caused by Introns u Run stagnation, poor results, and a heavy drain on memory and CPU time run stagnation: mutation 으로 해결 l intron 을 의미있는 코드로 변화시킴 poor results: introns 의 확장을 제한함
Possible Beneficial Effects of Introns u To promote parsimony in the real code a high probability of destructive crossover some introns in the population a system that makes it relatively easier to reduce the amount of effective code than to add more introns u Structural protection against crossover
What to Do about Introns u Reduction of destructive effects problem of bloat may be viewed in a more general way as the absence of homology in GP u Parsimony the effect of parsimony pressure is to attach a penalty to the length of programs see next slide u Changing the fitness function the fitness function become variable -> GP individuals might find ways to improve their fitness
(2) u The effect of parsimony