Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 An Overview of Evolutionary Computation 조 성 배 연세대학교 컴퓨터과학과.

Similar presentations


Presentation on theme: "1 An Overview of Evolutionary Computation 조 성 배 연세대학교 컴퓨터과학과."— Presentation transcript:

1 1 An Overview of Evolutionary Computation 조 성 배 연세대학교 컴퓨터과학과

2 2 Evolutionary Computation Different lines of investigation in simulated evolution –GA (Genetic Algorithms) –ES (Evolution Strategies) –EP (Evolutionary Programming) *Each abstracts evolution in a slightly different manner

3 3 Evolutionary Theory for Simulation Neo-darwinian paradigm : –Synthesis of classic darwinism selectionism of Weismann genetics of Mendel Statistical processes within population –Reproduction –Mutation –Competition –Selection

4 4 Duality of Living Organism Genotype : underlying genetic coding Phenotype : manner of response contained in physiology, morphology and behavior of organisms p1p1 p2p2 p1’p1’ g1’g1’ g2g2 g1g1 G P f1f1 f2f2 f3f3 f4f4 f1’f1’ Phenotypic state space Genotypic state space Epigenesis : f 1 : I  G  P Selection : f 2 : P  P Genotypic survival : f 3 : P  G Mutation : f 4 : G  G

5 5 Overview of EC Similarity –Population-based search –Impose random variation –Apply selection operation Difference –Typical representation –Emphasis on type of variation imposed –Promoting vs. culling view of selection Three main lines of investigation –GA, ES, EP EA EC

6 6 Sources First book in field : John Holland, Adaptation in Natural and Artificial Systems, MIT Press, 1991. Theory-oriented textbook : David E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning, Addison-Wesley, 1989. Application-oriented textbook : Lawrence Davis, Handbook of Genetic Algorithms, Van Nostrand Reinhold, 1991. Genetic Algorithms

7 7 Overview Invented by John Holland (early 1970s) Techniques for optimization and machine learning inspired by features of theory of biological evolution Solution chromosomes Search proceeds through maintenance of a population of solutions Reproduction biased in favor of better individuals New encodings created by mutation and recombination encoded Genetic Algorithms

8 8 Five Components Encoding technique (“chromosome structure”) Evaluation function (“environment”) Initialization procedure (“creation”) Genetic operators (mutation, recombination, etc) Parameter settings (practice and art) Genetic Algorithms

9 9 Procedure reproduction discard populationevaluation modification parents children deleted members modified children evaluated children Genetic Algorithms

10 10 Population of Chromosomes Bit string ( 0 1 1 0 … 1 0 1 1 ) Real number lists ( 23.6 -2.45 … 3.1 0.0 ) Permutation of elements ( E26 E13 E18 … E4 E9 ) etc Genetic Algorithms

11 11 Reproduction Parents are selected at random, with selection chances biased in relation to chromosome evaluations ex) parent selection (expected children = average / evaluation) average = 10 cf) Roulette Wheel Parent Selection Given parent 1 with evaluation 10 2 5 3 15 Chances of being chosen are proportional to evaluation 1 2 3 Genetic Algorithms

12 12 Chromosome Modification Triggered stochastically Operators : mutation / crossover (recombination) (1) mutation causes a local modification (0 1 1 0 1 1 0) (2.67 -49.3 128.68 33.1) (0 1 0 0 1 1 0) (2.67 -47.6 128.69 33.1) (2) crossover causes recombination (0 1 1 0 1 1 0) (0 1 0 1 1 0 1) (1 1 0 1 1 0 1) (1 1 1 0 1 1 0) –important feature of GA –accelerate search early in evolution of a population –lead to effective combination of schemata (subsolutions) Genetic Algorithms

13 13 Evaluation and Deletion Evaluation –evaluator decodes a chromosome and assigns it a number measuring its success –the only link between classical GA and problem Deletion –generational approach : entire population can be replaced at a time –steady-state approach : a few members can be replaced at a time Genetic Algorithms

14 14 An Example (1) f(x) = x 2 where 0  x  31 – decoding 5-bit unsigned binary integer ex) 13 = 01101 – initial population (at random) population size = 4 tossing a fair coin 20 times x f(x)f(x) 0 31 Genetic Algorithms

15 15 An Example (2) 1 2 3 4 sum average max Population 0 1 1 0 1 1 1 0 0 0 0 1 0 0 0 1 0 0 1 1 x value 13 24 8 19 x 2 f(x) value 169 576 64 361 1170 293 576 f i /  f P selecti 0.14 0.49 0.06 0.31 1.00 0.25 0.49 f i / f expected count 0.58 1.97 0.22 1.23 4.00 1.00 1.97 count 1 2 0 1 4 1 2 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 individual 2 1 2 4 cross-point 4 2 0 1 1 0 0 1 1 0 0 1 1 1 0 1 1 1 0 0 0 0 x 12 25 27 16 f(x) 144 625 729 256 1754 439 729 Genetic Algorithms Increment

16 16 Schema Combination of chromosome features ex) (0 1 1 0 1) contains schemata (# 1 1 # #), (# 1 # 0 #), (0 1 1 # 1), (0 1 1 0 1), (# # # # #) Holland’s schema theorem –N t : no. of occurrences S at t –E t : avg. evaluation of S at t –A t : avg. evaluation of entire population at t better than avg. : proliferate bad ones : die out Genetic Algorithms

17 17 Hybrid GA Combination of GA and one or more other optimization algorithms If done correctly, it can’t do worse Combining search capability of GA with domain-based expertise Genetic Algorithms

18 18 Creating a Hybrid GA decoder representation operators population initialization domain algorithm domain knowledge Genetic Algorithms

19 19 Applications Control : gas pipeline, pole balancing, missile pursuit Scheduling : production / facility Game playing : poker, prisoner’s dilemma Design : semiconductor layout, aircraft design, communication network design, keyboard configuration Combinatorial optimization : set covering, TSP, routing, graph coloring / partitioning Machine learning : designing NN, improving classification algorithms, classifier systems Signal processing : filter design Robotics : trajectory planning Genetic Algorithms

20 20 Some Current Efforts Analyzing mathematical properties Artificial life simulations Practical real world applications Parallel distributed processing Genetic Algorithms


Download ppt "1 An Overview of Evolutionary Computation 조 성 배 연세대학교 컴퓨터과학과."

Similar presentations


Ads by Google