Dvouúrovňová evoluční optimalizace regulátorů
|Bio-inspirované metody a jejich využití
Two level Evolutionary Optimization of |Controllers
Basic Principles of Transplant evolution
Pave l Ošmera
Institute of Automation and Computer Science
Brno University of Technology, Technická 2,
616 69 Brno, Czech Republic
osmera @fme.vutbr.cz,
IntroductionWe are trying to piece together the knowledge of evolution with the help of biology, informatics and physics to create a complex evolutionary structure. It can speed up the creation of optimization algorithms with high quality features. The emergent properties of complex adaptive systems are presented.
One of the most highly developed skills in contemporary Western civilization is the capability to split up problems into their smallest possible components.
But we often forget to put the pieces together again. In this way we can ignore the complex interaction between our problems and the rest of the universe.
family mother & father & wife/husband & sexual partner & children & ....
social environment laws & morale & society & friends & enemy & terrorism & ..
culture books & school & television & newspaper & Internet & religions & ..
influence of memes influence of genes direction of influence
ecosystems
memory III (memes of mankind )
Dawkins theory of memes
Fig. 1 Complex evolutionary structure
&
body carrier of genes brain memory II
carrier of memes
Lamarckian imitation of memes memes memů
individual (descendant)
central nervous system
behavior (instincts) instinctive behavior
learning (rules) conscious behavior
Baldwin effect
mitochondrial genes (epigenetic information), order of cells (epigenetic structure)
genes for structure of the body genes for structure of the brain and instincts
memory Ia memory Ib
diploidy chromosomes & sexual reproduction
integrated fitness
Mendelian genetics
immune system
Darwinian selection process
parasites
prey-predator interaction (living part of nature) environment (energy of sun and earth....)
Kauffman’s enzyme nets
memory IVa memory IVb
imunitní systém hormones
chemical messenger
DNA
Computational Intelligence Game Theory and Collective Behavior Intelligence
memory III (genome & memes)
Fig. 2 Soft Computing
culture Culture Algorithms
social environment Particle Swarm Optimization, Multi-Agent EA Agent-based Multiobjective Optimalization Ant Colony Optimization, Dynamical Systems Modeling Niches, Team Optimization
family Evolutionary Computation: Evolution Strategies Genetic Programming Genetic Algorithms, Parallel GAs
body brain memory II Fuzzy Systems Neural Networks Fuzzy-rough Sets Fuzzy-neural Modeling Hybrid Learning Intelligent Control
individual (descendant)
Mitochondrial Systems
genes for structure of the body genes for structure of the brain and instincts
memory Ia memory Ib
Diploid GA with Sexual Reproduction
DNA Computing , Messy GA
Artificial Immune Algorithms
Cooperative co-evolutionary Algorithms Parasitic Optimization, Bacterial EA Artificial Life Systems, Differential EA Parallel Hierarchical EA, Meta-Heuristics Evolutionary Multi-objective Optimization
memory IVa memory IVb
Hormone Systems Clonal Selection Enzyme Behavior
Evolutionary Design , Robotics Evolvable Hardware, Embryonic Hardware Human-Computer Interaction Molecular-Quantum Computing Data Mining, Chaotic Systems, Scheduling
Basic strategy of the evolutionary optimization
old state of evolution
new state of evolution
negative mutation
negative cross-over
negative selection
positive mutation
positive selection
positive crossover
order (ordered structure)
chaos (chaotic structure)
edge of chaos phase transition (complex structure)
neutral mutation
sexual selection
Classical and evolutionary design
Example:antenna designs
NASA Ames (http://ic.arc.nasa.gov/projects/esg/research/antenna.htm)
Classical method Evolutionary approach
all solutions
Grammatical evolution
The PGE is based on the grammatical evolution GE [1], where BNF grammars consist of terminals and non-terminals. Terminals are items, which can appear in the language. Non-terminals can be expanded into one or more terminals and non-terminals. Grammar is represented by the tuple {N,T,P,S}, where N is the set of non-terminals, T the set of terminals, P a set of production rules which map the elements of N to T, and S is a start symbol which is a member of N. For example, below is the BNF used for our problem:
N = {expr, fnc}
T = {sin, cos, +, -, /, *, X, 1, 2, 3, 4, 5, 6, 7, 8, 9}
S = <expr>
and P can be represented as 4 production rules:
1. <expr> := <fnc><expr>
<fnc><expr><expr>
<fnc><num><expr>
<var>
2. <fnc> := sin
cos
+
*
-
U-
3. <var> := X
4. <num> := 0,1,2,3,4,5,6,7,8,9
Forward processing (classical approach)
0 IN 0 ZD
0 N(NON) 1 ZZZ
1 NR 0 D0
2 NZ 1 D1
0 Rx 2 D2
1 RZ 3 D3
2 RZ.Z 4 D4
3 RN^N 5 D5
0 O+ 6 D6
1 O- 7 D7
2 O* 8 D8
3 O/ 9 D9
phenotype tree:
translation table
DNA sequence (genotype):
• The symbol "I" is always root.
• The rules are processed from the left to the right.
• The rules are applied on the leftmost non-terminal symbol.
• The rule chosen is determined by the result of the modulo operation:
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
13 mod 1 = 06 mod 3 = 0
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
2 mod 3 = 2
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
5 mod 2 = 1
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
8 mod 2 = 0
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
17 mod 10 = 7
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
2 mod 2 = 0
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
4 mod 10 = 4
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
12 mod 4 = 0
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
4 mod 3 = 1
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
4 mod 4 = 0
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
I
N
NON
ZON
ZZON
DZON
7ZON
7DON
74ON
74+N
74+R
74+x
Crossover When using grammatical evolution the resulting phenotype coded by one gene depends on the value of
the gene and on its context. If a chromosome is crossed at random point, it is very probable that the context of the genes in second part will change. This way crossover causes destruction of the phenotype, because the newly added parts code different phenotype than in the original individual.
This behavior can be eliminated using a block marking system. Crossover is then performed as an exchange of blocks. The crossover is made always in an even number of genes, where the odd gene must be BB gene and even must be EB gene. Starting BB gene is presently chosen randomly; the first gene is excluded because it encapsulates (together with the last used gene) the whole individual.
The operation takes two parent chromosomes and the result is always two child chromosomes. It is also possible to combine the same individuals, while the resulting child chromosomes can be entirely different.
Given the parents:
1) cos( x + 2 ) + sin( x * 3 )
2) cos( x + 2 ) + sin( x * 3 )
The operation can produce children:
3) cos( sin( x * 3 ) + 2 ) + sin( x * 3 )
4) cos( x + 2 ) + x
This crossover method works similar to direct combining of phenotype trees, however this method works purely on the chromosome. Therefore phenotype and genotype are still separated. The result is a chromosome, which will generate an individual with a structure combined from its parents. This way we receive the encoding of an individual without backward analysis of his phenotype. To perform a crossover the phenotype has to be evaluated (to mark the genes), but it is neither used nor know in the crossover operation (also it doesn’t have to exist).
The PGE algorithm was tested with the group of 6 computers in the computer network. Five computers calculated in the structure of five subsystems MR1, MR2, MR3, MR4, and MR5 and one master MR. The male subpopulation M of MR in the higher level follows the convergence of the subsystem. Every figure presents 10 runs of the PGE- program. The shortest time of computation is only 10 generation. All calculation were finished before 40 generation. This is better to compare with backward processing on one computer. The forward processing on one computer was the slowest.
0
0,2
0,4
0,6
0,8
1
1 25 50 75 100
Generation
Fitness
0
0,2
0,4
0,6
0,8
1
1 25 50 75 100
Generation
Fitness
0
0,2
0,4
0,6
0,8
1
0 50 100
Generation
Fitness
Results:(a) forward and (b) backward processing, (c) the PGE with 5 PC using backward processing (average in bold)
Logical function XORInput values are two integer numbers a and b; a, b 2< 0, 1 >. Output number c is the value of logical function
XOR. Training data is a set of triples (a, b, c):P = {(0, 0, 0); (0, 1, 1); (1, 0, 1); (1, 1, 0)}.Thus the training set represents the truth table of the XOR function. The function can be expressed using _,
^, ¬ functions:a + b = (a ^ ¬b) _ (¬a ^ b) = (a _ b) ^ (¬a _ ¬b) = (a _ b) ^ ¬(a ^ b)The grammar was simplified so that it does not contain conditional statement and numeric constants, on the
other hand three new terminals were added to generate functions _, ^, ¬. Thus the grammar generates representations of the XOR functions using other logical functions.
1a)function xxor($a,$b) {$result = "no_value";$result = ($result) |((((~(~(~(~(~($result)))))) | (($a) & (($a) & (~($b))))) & ($a))| ((~($a)) & ($b)));return $result;}Number of generations: 321b)function xxor($a,$b) {$result = "no_value";$result = ($result) | (((~$result | ($a & ($a & ~$b))) & $a) | (~$a & $b));return $result;}
Logical function XOR
2a)function xxor($a,$b) {$result = "no_value";$result = ($result) | ((((~(~(~(~(~($b)))))) & (($a) & (($a) &(~($b))))) & ($a)) | ((~($a)) & ($b)));return $result;}Number of generations: 532b)function xxor($a,$b) {$result = "no_value";$result = ($result) | (((~$b & ($a & ($a & ~$b))) & $a) |(~$a & $b));return $result;
This paper describes the application of Two-Level Transplant Evolution (TE) that can evolve control programs using a variable length linear genome to govern the mapping of a Backus Naur Form grammar definition. TE combines Grammatical Evolution (on the genotype level) with Genetic Programming (tree structures on the phenotype level). To increase the efficiency of Transplant Evolution (TE) the parallel Diferential Evolution was added. The adaptive significance of Parallel Transplant Evolution (PTE) with male and female populations has been studied.
.. Fitness criterions of control process
If an individual of grammatical's evolution has some abstract parameters, differential evolution will be
run for solve them, otherwise simulation of regulation will
be run directly.
Has the grammatical individual some abstract
parameters?
MutationCrossover
Compute fitness
For all individual in population
Is stopping conditionsatisfied?
The best solution is result
Selection
Yes
Initialise of population
For all individual in new population
No
Join populations
Compute fitness
Yes
CrossoverIs stopping conditionSatisfied?
Compute fitness
The best solution is result for grammatical
evolution
Yes
No Selection
Initialise of population
Yes
Compute regulator error
and system response
Calculate regulation criteria of statility
Initialise of regulatorValue of criteria
stability is result of fitness
Is count of actual
population >= condition
No
For all individual in population
For entered regulation interval
No
Layer of Grammatical evolution
Layer of Differential evolution
Layer of Regulator
Flow chart
. Step response for integration system with time delay
• Each of these systems is a network of many ”agents” acting in parallel .
• There is Complex adaptive systems share certain crucial properties (a nonlinearity, a complex mixture of positive and negative feedback, nonlinear dynamics, emergence, collective behavior, spontaneous organization, and so on).
• There is not the master agent.
• A complex adaptive system has many levels of organization (the hierarchical structure).
COMPLEX ADAPTIVE SYSTEMS
• the traditional science in the Age of the Machine tended to emphasize stability, order, uniformity, and equilibrium.
• today’s science: disorder, instability, diversity, disequilibrium, nonlinear relationships (in which small inputs can trigger massive consequences), and temporality ( a sensitivity to the flow of time).
Conclusions
• The Parallel Transplant Evolution can be used for the automatic generation of programs. We are far from supposing that all difficulties are removed but first results with TPEs are very promising.
MENDEL 2012
Call for Papers
18th International Conference
on Soft Computing
Evolutionary Computation, Genetic Programming, Bayesian
Method, Fuzzy Logic, Neural Networks, Rough Sets, Fractals
June 27 - 29, 2012
Brno, CZECH REPUBLIC
http://www.mendel-conference.org/