Hybrid Evolution of Heterogeneous Neural Networks 01001110 01100101 01110101 01110010 01101111 01101110 01101111 01110110 01100001 00100000 01110011 01101011 01110101 01110000 01101001 01101110 01100001 00100000 01101011 01100001 01110100 01100101 01100100 01110010 01111001 00100000 01110000 01101111 01100011 01101001 01110100 01100001 01100011 01110101 00101100 00100000 01000110 01000101 01001100 00100000 01000011 01010110 01010101 01010100 Zdeněk Buk bukz1@fel.cvut.cz Miroslav Šnorek snorek@fel.cvut.cz http://cig.felk.cvut.cz Computational Intelligence Group Department of Computer Science and Engineering Faculty of Electrical Engineering Czech Technical University in Prague ICANN 2008
Outline Continual Evolution Algorithm (CEA) description Data structures encoding of the individuals Evolution process Control functions Testing, experiments Population behavior Conclusion
Continual Evolution Algorithm Hybrid genetic algorithm combination of genetic and gradient-based methods Separate evolution of structure and parameters of individuals (models, neural networks) Variable population size Sequential replacement of individuals evolution in continual time dimension age parameter of each individual
Individuals encoding x i = a i, p i, s i, b i Separate evolution of structure and parameters of individuals (models, neural networks)
Individuals encoding x i = a i, p i, s i, b i age of the individual
Individuals encoding x i = a i, p i, s i, b i structural vector
Individuals encoding x i = a i, p i, s i, b i structural vector topology of the network
Individuals encoding x i = a i, p i, s i, b i structural vector topology of the network activation functions
Individuals encoding x i = a i, p i, s i, b i parametric vector behavioral vector
Individuals encoding x i = a i, p i, s i, b i parametric vector behavioral vector weights
Individuals encoding x i = a i, p i, s i, b i
Evolution process Hybrid genetic algorithm combination of genetic and gradient-based methods 2 Dimensional evolution
Evolution process
Crossover and mutation Individual 1 p 1 s 1 b 1 p 2 s 2 b 2 Offspring Individual 2
Crossover and mutation Individual 1 p 1 s 1 b 1 p 2 s 2 b 2 Random mutation Offspring Individual 2
Crossover and mutation Individual 1 p 1 s 1 b 1 p 2 s 2 b 2 Random mutation Offspring Individual 2
Crossover and mutation Individual 1 p 1 s 1 b 1 p 2 s 2 b 2 Offspring Individual 2
Crossover and mutation Individual 1 p 1 s 1 b 1 p 2 s 2 b 2 Offspring Individual 2
Crossover and mutation Individual 1 p 1 s 1 b 1 p 2 s 2 b 2 Offspring Individual 2 Random mutation
Crossover and mutation Individual 1 p 1 s 1 b 1 p 2 s 2 b 2 Offspring Copy Individual 2
Crossover and mutation Individual 1 p 1 s 1 b 1 p 2 s 2 b 2 Offspring p i s i b i Individual 2
Time dimension Training the behavioral vector during time using gradient algorithm. Age=0 p i s i b i Time
Time dimension Training the behavioral vector during time using gradient algorithm. Age=0 Age=1 p i s i b i Time
Time dimension Training the behavioral vector during time using gradient algorithm. Age=0 Age=1 Age=2 p i s i b i Time
Probability control Probability functions RP reproduction probability, DP death probability, elimination of bad solutions in population. Balancing functions to keep the population size in some reasonable limits.
Reproduction probability Raw reproduction probability function * * RP x i = RP a i, F x i Fitness RP* Age Fitness Age
Death probability Raw death probability function * * DP x i = DP a i, F x i Fitness DP* Age Fitness Age
Balancing functions Computation of final probabilities. Depend on raw probabilities and population size. Big population grows slower, small population grows faster. * RP x i = BAL RP N, RP x i * DP x i = BAL DP N, DP x i
Evolution control
Evolution control
Evolution control
Evolution control
Evolution control
Evolution control
Evolution control
Testing, experiments Construction of the neural networks. Universal topology based on fully recurrent network. Structure topology adjacency matrix activation functions parametrized Λ-functions Behavior weight matrix
Testing, experiments Neural networks based on fully recurrent topology construction using CEA Activation function optimization
Testing, experiments Benchmark tasks Learn to oscillate experiment
Population behavior
Population behavior
Fitness Population behavior Iterations
Conclusion Reduction of the number of fitness function evaluations. Using the probability and balancing functions it is possible to change the CEA to behave more like random search, standard genetic algorithm, or gradient algorithm.
Conclusion CEA universal optimization algorithm mainly for problems with separate description of structure and behavior typically neural networks. Automatic control of the size of the population exploitation exploration