Introduction to Evolutionary Computation

Similar documents
Lecture 06: Niching and Speciation (Sharing)

Evolutionary Computation

Evolutionary Computation. DEIS-Cesena Alma Mater Studiorum Università di Bologna Cesena (Italia)

Chapter 8: Introduction to Evolutionary Computation

Lecture 9 Evolutionary Computation: Genetic algorithms

Evolutionary computation

Genetic Algorithm: introduction

Evolutionary computation

Evolutionary Design I

Fundamentals of Genetic Algorithms

CSC 4510 Machine Learning

Lecture 22. Introduction to Genetic Algorithms

Crossover Techniques in GAs

Search. Search is a key component of intelligent problem solving. Get closer to the goal if time is not enough

Genetic Algorithms & Modeling

Adaptive Generalized Crowding for Genetic Algorithms

Evolutionary Computation: introduction

Evolutionary Algorithms: Introduction. Department of Cybernetics, CTU Prague.

V. Evolutionary Computing. Read Flake, ch. 20. Genetic Algorithms. Part 5A: Genetic Algorithms 4/10/17. A. Genetic Algorithms

THE PROBLEM OF locating all the optima within a fitness

Mating Restriction and Niching Pressure: Results from Agents and Implications for General EC

V. Evolutionary Computing. Read Flake, ch. 20. Assumptions. Genetic Algorithms. Fitness-Biased Selection. Outline of Simplified GA

Evolutionary Algorithms

IV. Evolutionary Computing. Read Flake, ch. 20. Assumptions. Genetic Algorithms. Fitness-Biased Selection. Outline of Simplified GA

Genetic Algorithm. Outline

Intelligens Számítási Módszerek Genetikus algoritmusok, gradiens mentes optimálási módszerek

Binary Particle Swarm Optimization with Crossover Operation for Discrete Optimization

The Role of Crossover in Genetic Algorithms to Solve Optimization of a Function Problem Falih Hassan

Evolutionary Algorithms: Introduction. The Czech Institute of Informatics, Robotics and Cybernetics CTU Prague

Fitness sharing and niching methods revisited

Artificial Intelligence Methods (G5BAIM) - Examination

Lecture 15: Genetic Algorithms

Parallel Genetic Algorithms. Master s Thesis Laurens Jan Pit 30/08/95 Department of Computer Science Leiden University

Haploid & diploid recombination and their evolutionary impact

Genetic Algorithms: Basic Principles and Applications

how should the GA proceed?

Artificial Intelligence Methods (G5BAIM) - Examination

Bounded Approximation Algorithms

A Gentle Introduction to Evolutionary Computation

A.I.: Beyond Classical Search

A Note on Crossover with Interval Representations

Stochastic Search: Part 2. Genetic Algorithms. Vincent A. Cicirello. Robotics Institute. Carnegie Mellon University

Representation and Hidden Bias II: Eliminating Defining Length Bias in Genetic Search via Shuffle Crossover

Performance Evaluation of Best-Worst Selection Criteria for Genetic Algorithm

NOTES Ch 17: Genes and. Variation

Genetic Algorithms with Dynamic Niche Sharing. for Multimodal Function Optimization. at Urbana-Champaign. IlliGAL Report No

Genetic Algorithms and Genetic Programming Lecture 17

Computational intelligence methods

Artificial Neural Networks Examination, June 2005

Artificial Neural Networks Examination, March 2004

Scaling Up. So far, we have considered methods that systematically explore the full search space, possibly using principled pruning (A* etc.).

Bounding the Population Size in XCS to Ensure Reproductive Opportunities

GENETIC ALGORITHM FOR CELL DESIGN UNDER SINGLE AND MULTIPLE PERIODS

Data Warehousing & Data Mining

Genetic Algorithms. Donald Richards Penn State University

Computational statistics

COMP3411: Artificial Intelligence 7a. Evolutionary Computation

COMP3411: Artificial Intelligence 10a. Evolutionary Computation

Local Search & Optimization

Looking Under the EA Hood with Price s Equation

Geometric Semantic Genetic Programming (GSGP): theory-laden design of semantic mutation operators

Genetic Algorithm for Solving the Economic Load Dispatch

Development. biologically-inspired computing. lecture 16. Informatics luis rocha x x x. Syntactic Operations. biologically Inspired computing

Centric Selection: a Way to Tune the Exploration/Exploitation Trade-off

Metaheuristics and Local Search

Local Search & Optimization

Analysis of Crossover Operators for Cluster Geometry Optimization

Structure Design of Neural Networks Using Genetic Algorithms

The European Applied Business Research Conference Rothenburg, Germany 2002

How Species Form. 4.3 How Species Form. Reproductive Isolation

biologically-inspired computing lecture 18

Cooperative Coevolution: An Architecture for Evolving Coadapted Subcomponents

CS 361: Probability & Statistics

Population Genetics & Evolution

Parallel Genetic Algorithms

NEUROEVOLUTION. Contents. Evolutionary Computation. Neuroevolution. Types of neuro-evolution algorithms

EVOLUTION is in essence a two-step process of random

Computational Intelligence Winter Term 2018/19

Local and Stochastic Search

[Read Chapter 9] [Exercises 9.1, 9.2, 9.3, 9.4]

Artificial Neural Networks Examination, June 2004

Evolutionary Computation Theory. Jun He School of Computer Science University of Birmingham Web: jxh

Introduction to Walsh Analysis

Polynomial Approximation of Survival Probabilities Under Multi-point Crossover

Cooperative Coevolution: An Architecture for Evolving Coadapted Subcomponents

Using Evolutionary Techniques to Hunt for Snakes and Coils

The Crowding Approach to Niching in Genetic Algorithms

Local Beam Search. CS 331: Artificial Intelligence Local Search II. Local Beam Search Example. Local Beam Search Example. Local Beam Search Example

Symbolic regression of thermophysical model using genetic programming

Forming Neural Networks Through Efficient and Adaptive Coevolution

Zebo Peng Embedded Systems Laboratory IDA, Linköping University

Constraint-Handling in Evolutionary Algorithms. Czech Institute of Informatics, Robotics and Cybernetics CTU Prague

Parallel/Distributed Evolutionary Computation The influence of spatial interaction in evolutionary behaviour

Metaheuristics and Local Search. Discrete optimization problems. Solution approaches

An Effective Chromosome Representation for Evolving Flexible Job Shop Schedules

1. Computação Evolutiva

Chapter 17: Population Genetics and Speciation

Fitness Inheritance in Multi-Objective Optimization

Crossover Gene Selection by Spatial Location

Overview. Optimization. Easy optimization problems. Monte Carlo for Optimization. 1. Survey MC ideas for optimization: (a) Multistart

Transcription:

Introduction to Evolutionary Computation 1

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 2

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 3

Duality of Living Organism Genotype : underlying genetic coding Phenotype : manner of response contained in physiology, morphology and behavior of organisms Phenotypic state space Genotypic state space g 1 p 1 p 2 p1 f 1 f 2 P f 3 f4 g 2 g 1 f 1 G Epigenesis : f 1 : I G P Selection : f 2 : P P Genotypic survival : f 3 : P G Mutation : f 4 : G G 4

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 5

6 A Simple Evolutionary Algorithm

Variants of EC Genetic Algorithm Evolutionary Strategy Evolutionary Programming Genetic Programming Representation Binary Real Real Tree Mutation Minor Main Main Minor Recombination Main Minor None Main Initial Application Adaptive System Parameter Optimization Artificial Intelligence Program Evolution Pioneer John Holland Rechenberg Fogel Koza 7

Representation Binary strings Real-valued vectors Permutations Finite-state representations Parse trees 8

Selection Proportional selection Tournament selection Rank-based selection Boltzmann selection 9

Advanced Techniques Population structures Niching, speciation, island models Population sizing Mutation parameters Recombination parameters Parameter control Self-adaptation Meta-evolutionary approaches Coevolutinoary algorithms 10

Journals and Conferences Journals Evolutionary Computation (MIT Press) IEEE Trans. on Evolutionary Computation (IEEE Press) Conferences GECCO (Genetic and Evolutionary Computation Conference) GP+ICGA PPSN CEC (Congress on Evolutionary Computation) EP+ICEC 11

Genetic Algorithms 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. 12

Genetic Algorithms Overview Invented by John Holland (early 1970s) Techniques for optimization and machine learning inspired by features of theory of biological evolution encoded 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 13

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

Genetic Algorithms Procedure parents deleted members reproduction population discard children evaluated children modification evaluation modified children 15

Genetic Algorithms 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 16

Genetic Algorithms 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 chromosome evaluation expected children 1 10 1 2 5 0.5 3 15 1.5 proportional to evaluation 1 2 3 17

Genetic Algorithms 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) 18

Genetic Algorithms 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 19

Genetic Algorithms An Example (1) f(x) = x 2 where 0 x 31 f(x) 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 20

Genetic Algorithms An Example (2) Population x value x 2 f(x) value f i / Σf Pselecti f i / f expected count count 1 2 3 4 0 1 1 0 1 1 1 0 0 0 0 1 0 0 0 1 0 0 1 1 13 24 8 19 169 576 64 361 0.14 0.49 0.06 0.31 0.58 1.97 0.22 1.23 1 2 0 1 sum average max 1170 293 576 1.00 0.25 0.49 4.00 1.00 1.97 4 1 2 0 1 1 0 1 1 1 0 0 0 0 1 0 0 0 1 0 0 1 1 mate 2 1 4 4 crossover 4 4 2 2 0 1 1 0 1 1 1 0 0 0 0 1 0 0 0 1 0 0 1 1 x 12 25 27 16 f(x) 2 1 4 4 1754 439 729 21

Genetic Algorithms 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 N t+1 N t E A t t 22

Genetic Algorithms 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 23

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

Genetic Algorithms 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 25

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

Genetic Algorithms Homework #3 GA 를사용하여실제문제를해결하고자할때, 다음의 parameter 들을결정하는기준에대해서조사하시오. Population 수 Mutation rate Crossover rate Selection 방법 27

Learning Classifier System LCS 구조 Feedback Rule Discovery Subsystem(GA) LCS Messages 1010 Winning Action Add/Delete Classifiers Rule and Message Subsystem Matching Classifiers Apportionment of Credit Subsystem ###0:01 #1##:10 #010:11 ###0:01 #010:11 Classifier list Winner 28

Learning Classifier System Classifier Classifier list 여러개의규칙들, 즉 classifier들로구성 Classifiers 일반적으로랜덤하게초기화 0 # # 1 # 0 # 1 0 0 0 0 1 조건부 {0, 1, #} #:don t care 실행부 {0, 1} 29

Learning Classifier System 학습방법 규칙학습 : Credit assignment algorithm - Bucket brigade algorithm - 일종의강화학습방법 유전자알고리즘 (GA) - 규칙발견 (Rule Discovery) 30

Learning Classifier System Credit Assignment Algorithm Strength 각 classifier 마다가지고있는값 Classifier 의가치를평가하는기준 입력메시지와일치하는 classifier 들의경쟁 승자 (Winner): 최종출력 외부환경으로부터의피드백 (Feedback) 최종출력이외부로보내지면, 피드백을받음 승자 classifier 에 Credit 이주어짐 B ( C, t) = br ( C ) s( C, t) Bid ( 해당 classifier 가자신의메시지를내보낼가능성을결정 ) Strength Specificity ( 조건부에서 # 이아닌 0,1 의비율 ) 1 보다작은상수 31

Learning Classifier System 유전자알고리즘 (GA) 규칙발견알고리즘 한세대가끝난후, 유전연산자 ( 교차, 돌연변이 ) 를이용하여다음세대의규칙들을생성 CS 에적용 외부환경에적합한 classifier 들을찾기위함 외부환경과효율적인상호작용능력을가져야함 환경에가장적합한 classifier 들만을선택 새로운 classifier 들을생성 32

Niching Why Niching? In evolutionary computation, niching refers to the formation of groups of individuals in a population Individuals within a group are similar to each other Individuals from different groups are dissimilar to each other Niching helps to explore and maintain diversity Niching helps in machine learning, e.g., classification Niching helps multi-objective function optimization Niching helps simulation of complex and adaptive systems Niching helps cooperative co-evolution Niching is fun! 33

Niching Different Niching Techniques Can be divided roughly into two major categories Sharing, also known as fitness sharing Crowding Other niching methods include sequential niching and parallel hillclimbing 34

Niching Fitness Sharing: Introduction Fitness sharing transforms the raw fitness of an individual into shared fitness It assumes that there is only limited and fixed resource available at each niche. Individuals in a niche must share them Sharing is best explained from a multimodal function optimization perspective raw fitness How can we locate multiple peaks in one evolutionary process? individual 35

Niching Fitness Sharing: Implementation Define a sharing radius σ share : Anything within this radius will be regarded to be similar to the individual and thus needs to share fitness σ share an individual Define a similarity measure, i.e., distance: The shorter the distance between two individuals, the more similar they are Define a sharing function Define shared fitness distance The individual in the center needs to share fitness with all other in the circle sh(d) = µ f share (i) = f raw (i) / Σ j=1 sh(d ij ) 1 (d / σ α share ) if d < σ share 0 otherwise a scaling constant 36 where µ is the population size

Niching Fitness Sharing: Extensions Sharing can be done at genotypic or phenotypic level Genotypic: Hamming distance Phenotypic: Euclidean distance (Overlap in test case covering in classification) The key issue is how to define the distance measure Sharing radius sshare can be difficult to set, the same, fixed: It should be sufficiently small in order to discriminate between two neighboring peaks Population size should be sufficiently large to locate all peaks Population may not be able to converge to exact optima Population may not be stable, i.e., may lose peaks located Calculate shared fitness needs time Fitness sharing often needs raw fitness scaling. 37 Why? scaling factor µ f share (i) = f raw (i) / Σ j=1 sh(d ij )

Niching Why Fitness Scaling Let f i = f share (i), f i = f raw (i), m i = j=1 sh(d ij ) Then fitness sharing is f i = f i /m i Fitness sharing with scaling is f i = f iβ / m i, β >= 1 top-down view of a 2-d space raw fitness shared fitness side-view of the 2-d space without scaling with scaling using sufficiently large β 38

Niching A Dilemma With low scaling factor: individuals won t go to the real optimum because it s not attractive With high scaling factor: We may not be able to find all peaks, because a high scaling factor creates super individuals, even a very soft selection scheme won t help A possible solution: Anneal the factor β 1. Start the evolution with a small β, e.g., β = 1, in order to explore and locate the peak regions 2 Then increase β gradually to attract individuals to the optima 39

Niching Implicit Fitness Sharing (1) The idea comes from an immune system: antibodies which best match an invading antigen receive the payoff for that antigen Similar situation occurs in games: a strategy receives payoff when it achieves the best score against a test case Implicit fitness sharing is most often used in learning. While (explicit) fitness sharing is done through individuals, implicit fitness sharing is test data based! The algorithm for calculating fitness: For each data point i to be matched, do the following C times 1. Select a sample of s individuals from the population 2. Find the individual in the sample that achieves the highest score against the data point i 3. This best individual receives the payoff. In the case of a tie, payoff is shared equally 40

Niching Implicit Fitness Sharing (2) It has been shown that implicit and explicit fitness sharing have the same theoretical basis. s here plays the role of σ share in (explicit) fitness sharing Larger C better result but more time-consuming Comparison between implicit and explicit sharing: they are better under different circumstances Implicit fitness sharing covers optima more comprehensively, even when those optima have small basin of attraction, when the population is large enough for a species to form at each optimum (Explicit) fitness sharing can find the optima with larger basins of attraction and ignore the peaks with narrow bases, when the population is not large enough to cover all optima 41

Niching Niching vs. Speciation Although some people distinguish between the two, we will treat them as the same thing If there is any difference: niching is concerned more with locating peaks (basins of attraction), while speciation is more focused on actually converging to optima 42

Niching Crowding Crowding techniques insert new elements into the population by replacing similar elements. It s about replacement strategies Crowding techniques strive to maintain the preexisting diversity of a population Crowding methods do not modify fitness 43

Niching Crowding: Early Days Cavicchio s preselection scheme: Purpose: prevent premature convergence, preserve diversity What it is: an offspring (usually the fitter one) replaces the worse parent How well it works for niching: poorly, unable to form niches De Jong s Crowding (crowding factor model): Purpose: preserve population diversity What it is: restricted replacement, offspring replaces the most similar parent in a same How well it works for niching: poorly, only finding two peaks Common feature: both involve modification of replacement strategies. A restriction is often imposed 44

Niching Deterministic Crowding: Algorithm (1) Problems with De Jong s crowding: high replacement error (i.e., replacing an individual of one class by another one from a different class) Mahfoud s deterministic crowding algorithm: Input: g number of generations to run the algorithm µ population size Output: P(g) final population Algorithm: P(c) initialize () FOR t 1 to g DO P(t) shuffle (P(t-1)) FOR i 0 TO µ/2 1 DO DCA () OD OD 45

Niching Deterministic Crowding: Algorithm (2) DCA (): P 1 a 2i+1 (t) P 2 a 2i+2 (t) {C 1, C 2 } recombine (P 1, P 2 ) C 1 mutate (C 1 ) C 2 mutate (C 2 ) IF [d(p 1, C 1 )+d(p 2, C 2 )] <= [d(p 1, C 2 )+d(p 2, C 1 )] THEN IF f(c 1 ) > f(p 1 ) THEN a 2i+1 (t) C 1 FI IF f(c 2 ) > f(p 2 ) THEN a 2i+2 (t) C 2 FI ELSE IF f(c 2 ) > f(p 1 ) THEN a 2i+1 (t) C 2 FI IF f(c 1 ) > f(p 2 ) THEN a 2i+2 (t) C 1 FI FI 46

Niching Deterministic Crowding: Discussion Capable of niching, i.e., locating and maintaining multiple peaks Minimal replacement error Few parameters to tune Fast, no distance calculations needed Population size is important. Should be large if unsure Should use full crossover, i.e. crossover rate = 1.0 The following appears to all crowding methods: Unlike sharing methods, crowding methods do not allocate individuals proportional to peak fitness. Instead, the number of individuals congregating about a peak is largely determined by the size of that peak s basin of attraction under crossover Similarity can be measured at either genotypic or phenotypic level 47

Niching Speciation (in a narrow sense) In a broad sense, niching and speciation can be regarded as the same thing In a narrow sense, the main emphasis of niching is on distributing individuals among different peaks, not finding exact optima efficiently. Speciation focuses on search within each peak A speciation method restricts mating to similar individuals and discourages mating of individuals from different peaks (species) In order to apply speciation techniques properly, individuals representing each peak must be found first. Speciation techniques cannot be used independently Niching and speciation are complementary Similarity can be measured at either genotypic or phenotypic level 48

Niching Mating Restriction Use tags: each individual consists of a tag and a functional string template tag functional string #1#0 1010 1010 101 -Tag participate in (crossover and) mutation, but not fitness evaluation -Templates can also be used -Has been shown to be effective for multimodal function optimization -Only individuals with the same tag are allowed to mate Use distance: either in the genotypic or phenotypic space 49 Define a threshold parameter σ mate -Two individuals are allowed to mate only when their distance is smaller than σ mate -GAs with niching and mating restriction were found to better distribute the population across the peaks than GAs with sharing alone Mating restriction always applies during recombination