Similarity Templates or Schemata. CS 571 Evolutionary Computation

Similar documents
Evolutionary Computation Part 2

Lecture 6: The Building Block Hypothesis. Genetic Algorithms and Genetic Programming Lecture 6. The Schema Theorem Reminder

Genetic Algorithms and Genetic Programming Lecture 7

A More Stable Approach To LISP Tree GP

An Adaption of the Schema Theorem to Various Crossover and Mutation Operators for a Music Segmentation Problem

Chapter 14 Global Search Algorithms

Heuristic Optimisation

Mutations for Permutations

Planning and Search. Genetic algorithms. Genetic algorithms 1

CHAPTER 4 GENETIC ALGORITHM

Hyperplane Ranking in. Simple Genetic Algorithms. D. Whitley, K. Mathias, and L. Pyeatt. Department of Computer Science. Colorado State University

Binary Representations of Integers and the Performance of Selectorecombinative Genetic Algorithms

Artificial Intelligence Application (Genetic Algorithm)

Topological Machining Fixture Layout Synthesis Using Genetic Algorithms

Suppose you have a problem You don t know how to solve it What can you do? Can you use a computer to somehow find a solution for you?

Using genetic algorithms to solve combinatorial optimization problems

Computational Intelligence

Chapter 9: Genetic Algorithms

The Genetic Algorithm for finding the maxima of single-variable functions

Citation for published version (APA): Lankhorst, M. M. (1996). Genetic algorithms in data analysis Groningen: s.n.

Adaptive Crossover in Genetic Algorithms Using Statistics Mechanism

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2

Automated Test Data Generation and Optimization Scheme Using Genetic Algorithm

Genetic Programming. Charles Chilaka. Department of Computational Science Memorial University of Newfoundland

Welfare Navigation Using Genetic Algorithm

Neural Network Weight Selection Using Genetic Algorithms

Preliminary Background Tabu Search Genetic Algorithm

Genetic Algorithms Variations and Implementation Issues

Genetic Algorithms. Kang Zheng Karl Schober

CHAPTER 5 ENERGY MANAGEMENT USING FUZZY GENETIC APPROACH IN WSN

Automata Construct with Genetic Algorithm

The Parallel Software Design Process. Parallel Software Design

GENETIC ALGORITHM with Hands-On exercise

Grid Scheduling Strategy using GA (GSSGA)

Evolutionary Computation Algorithms for Cryptanalysis: A Study

Escaping Local Optima: Genetic Algorithm

AI Programming CS S-08 Local Search / Genetic Algorithms

Classifier System Learning of Good Database Schema

Multi-objective Optimization

GENETIC ALGORITHM VERSUS PARTICLE SWARM OPTIMIZATION IN N-QUEEN PROBLEM

Algorithm Design (4) Metaheuristics

Evolutionary Computation. Chao Lan

Discrete mathematics , Fall Instructor: prof. János Pach

The Continuous Genetic Algorithm. Universidad de los Andes-CODENSA

Genetic Algorithm Performance with Different Selection Methods in Solving Multi-Objective Network Design Problem

Introduction to Evolutionary Computation

AN EVOLUTIONARY APPROACH TO DISTANCE VECTOR ROUTING

Evolutionary Algorithms. CS Evolutionary Algorithms 1

Learning Restarting Automata by Genetic Algorithms

Figure 4.1: The evolution of a rooted tree.

Multi-Objective Optimization Using Genetic Algorithms

Introduction to Genetic Algorithms. Based on Chapter 10 of Marsland Chapter 9 of Mitchell

Genetic Algorithms. Genetic Algorithms

Introducing a New Advantage of Crossover: Commonality-Based Selection

A GENETIC ALGORITHM FOR CLUSTERING ON VERY LARGE DATA SETS

Metaheuristic Development Methodology. Fall 2009 Instructor: Dr. Masoud Yaghini

1. Introduction. 2. Motivation and Problem Definition. Volume 8 Issue 2, February Susmita Mohapatra

GENO. Introduction. Overview. Contents of this Manual GENO 1

Machine Learning: Algorithms and Applications Mockup Examination

MAXIMUM LIKELIHOOD ESTIMATION USING ACCELERATED GENETIC ALGORITHMS

Evolutionary Computation, 2018/2019 Programming assignment 3

THE EFFECT OF SEGREGATION IN NON- REPEATED PRISONER'S DILEMMA

Improved Leakage Model Based on Genetic Algorithm

METAHEURISTICS Genetic Algorithm

Diagonalization. The cardinality of a finite set is easy to grasp: {1,3,4} = 3. But what about infinite sets?

Review: Final Exam CPSC Artificial Intelligence Michael M. Richter

Applied Cloning Techniques for a Genetic Algorithm Used in Evolvable Hardware Design

Introduction to Optimization

Introduction to Genetic Algorithms

An Evolutionary Algorithm for the Multi-objective Shortest Path Problem

Impact of Unique Schemata Count on the Fitness Value in Genetic Algorithms

HORIZONTAL WELL PLACEMENT OPTIMIZATION IN GAS RESERVOIRS USING GENETIC ALGORITHMS. A Thesis TREVOR HOWARD GIBBS

Static Analysis and Bugfinding

4/22/2014. Genetic Algorithms. Diwakar Yagyasen Department of Computer Science BBDNITM. Introduction

A motivated definition of exploitation and exploration

Random Search Report An objective look at random search performance for 4 problem sets

Material from Recitation 1

Optimization I : Brute force and Greedy strategy

I. Recursive Descriptions A phrase like to get the next term you add 2, which tells how to obtain

Information Fusion Dr. B. K. Panigrahi

Job Shop Scheduling Problem (JSSP) Genetic Algorithms Critical Block and DG distance Neighbourhood Search

Advanced Search Genetic algorithm

Math 340 Fall 2014, Victor Matveev. Binary system, round-off errors, loss of significance, and double precision accuracy.

Algorithms and Data Structures

Time Complexity Analysis of the Genetic Algorithm Clustering Method

Outline. Motivation. Introduction of GAs. Genetic Algorithm 9/7/2017. Motivation Genetic algorithms An illustrative example Hypothesis space search

Parameterless Genetic Algorithms: Review, Comparison and Improvement

Introduction to Optimization

Artificial Intelligence

Deciphering of Transposition Ciphers using Genetic Algorithm

The Binary Genetic Algorithm. Universidad de los Andes-CODENSA

Module 1 Lecture Notes 2. Optimization Problem and Model Formulation

Computational Financial Modeling

Genetic Algorithms for Real Parameter Optimization

REAL-CODED GENETIC ALGORITHMS CONSTRAINED OPTIMIZATION. Nedim TUTKUN

CHAPTER 3.4 AND 3.5. Sara Gestrelius

Hybrid of Genetic Algorithm and Continuous Ant Colony Optimization for Optimum Solution

Reducing Graphic Conflict In Scale Reduced Maps Using A Genetic Algorithm

SAMPLING AND THE MOMENT TECHNIQUE. By Sveta Oksen

Transcription:

Similarity Templates or Schemata CS 571 Evolutionary Computation

Similarities among Strings in a Population A GA has a population of strings (solutions) that change from generation to generation. What information is contained in a population of strings? How do we characterize the information content in GA s generation? How does understanding of the information contained in a population of strings help us understand the way genetic algorithms move in a directed manner toward betters strings (solutions)? 1

Example Assume we have a population of 4 strings with the String Fitness 01101 169 following fitness values: 11000 576 01000 64 10011 361 What information is contained in this population to guide a directed search for improvement? Notice the similarities in the strings and their corresponding fitness values We notice that certain string patterns seem to be associated with high fitness values. In particular, string values that start with 1 seem to have high fitness values. 2

What are we seeking to understand? We want to highlight similarities among strings in a population. We are then looking for causal relationships between these similarities and high fitness. This provides us with a wealth of information that can help guide a search. 3

Schemata or Similarity Templates We are interested in understanding how important similarities among highly fit strings can help guide search. Question: How is a string similar to another string? Question: How does a string represent a set of string classes such that these string classes have similarities in certain string positions? 4

Schemata A schema is a template that describes a subset of strings with similarities at certain string positions. Alphabet needed to describe a schema for binary strings: {0, 1, } where is don t care. A schema matches a particular string if at every location in the schema, a 1 matches a 1 in the string, a 0 matches a 0 in the string, and a * matches either 0 or 1 in the string. 5

Schemata Examples The schema *0000 matches the set of strings 10000, 00000. The schema *111* matches the set of strings 01110, 01111, 11110, 11111. The schema 0*1** matches the set of 8 strings of length 5 that begin with a 0 and have a 1 in the 3rd bit position. A schema gives us a way to talk about well-defined similarities among finite-length strings over a finite alphabet. Remember, although we use the * symbol, * is never explicitly processed by a genetic algorithm. 6

Counting Schemata if length of the schema=l=5, we have 3 3 3 3 3 = 243 different similarity templates because each of the five positions may be a 0 or 1 or *. In general, for an alphabet of cardinality k, there are (k + 1) l schemata. 7

Counting Schemata How much information is there in a population at any time during a genetic algorithm s execution? Related question: How many unique schemata are there in a population? First: Count how many schemata are there in a single string of 0s and 1s. A particular string of length l has 2 l schemata. Example: Consider a single string of length 5: 11111. There are 2 5 schemata in it because each position may take its actual value or the don t care value *. Next:How many schemata are there in a population of n?: Between 2 l and n 2 l depending on population diversity. 8

How many schemata are processed by a genetic algorithm? Of the 2 l to n 2 l schemata in a population, how many are processed in a useful manner by a genetic algorithm? To obtain the answer, we have to consider the effect of reproduction, crossover and mutation on the growth or decay of important/useful schemata from generation to generation. Genetic algorithms exploit in parallel the many similarities contained in high performance schemata. Explicit processing of strings really causes the implicit processing of many schemata during each generation. 9

Schema Properties: Order and Length Certain schemata are more general (specific) than others. For example, the schema 011*1** is more specific than the schema 0******. Certain schemata span more of the total string than others. For example, the schema 1****1* spans a larger portion of the string than he schema 1*1****. To quantify these, we define two schema properties: schema order and schema length. 10

Schema Properties: Order and Length (continued) Schema Order: The order of a schema H, denoted by o(h) is the number of fixed positions present in the template. For example, o(011 1 ) = 4 and o(0 ) = 1. Schema Length: The length of a schema, denoted by δ(h) is the distance between the first and the last specific string position. For example, δ(011 1 ) = 4 and δ(0 ) = 0 11

Effect of Reproduction Alone Suppose at time step t, there are m examples of a particular schema H contained within population A(t). Let us call this m = m(h, t) During reproduction, a string A i is copied according to its fitness f i. In other words, string A i gets selected for reproduction with probability p i = f i Σ n j f j. Let m(h, t + 1) be the number of representatives of schema H in the population at time t + 1 if we use reproduction only. We can write m(h, t + 1) = m(h, t) n f(h) Σ n j f j 12 (1)

Effect of Reproduction Alone (continued) The average fitness of the entire population is f = Σn j f j n Then, we can write Equation (1) as: m(h, t + 1) = m(h, t) f(h) f (2) (3) Equation (3) is called the Schema Difference Equation 13

Effect of Reproduction Alone: Conclusions A particular schema grows in proportion to the ratio of the average fitness of the schema to the average fitness of the population. Schemata with fitness values above the population average will have more samples in the next generation, while schemata with fitness values below the population will have fewer samples in the next generation. This expected behavior is carried out with every schema H contained in a particular population A in parallel. In other words, all the schemata in a population grow or decay according to their schema averages under the operation of reproduction alone. 14

Reformulating the Schema Difference Equation It is clear that above-average schemata grow and below-average schemata die off. Consider above-average schemata only. Suppose that a particular schema H remains above average in each generation by an amount c f where c is a constant. Now, we can rewrite the Schema Difference Equation as m(h, t + 1) = m(h, t) f(h) f = m(h, t) f + c f f = (1 + c) m(h, t) 15 (4)

Reformulating the Schema Difference Equation (Continued) Equation (4) is a recurrence relation. Thus, for above-average schemata, we can write the following if we start at time t = 0: m(h, t) = m(h, t 1) (1 + c) (5) = m(h, t 2) (1 + c) 2. = m(h, 0) (1 + c) t 16

Reformulating the Schema Difference Equation (Continued) In general, m(h, t) =m(h, 0) { } t f(h) (6) f Thus, m(h, t) is exponential in t. If for a certain schema, { f(h) f } > 1 consistently from generation to generation, we call it an aboveaverage schema. If { f(h) f } < 1 consistently for a certain schema, it is a below-average schema. Effect of Reproduction: Reproduction produces exponentially increasing (decreasing) number of samples to above- (below-) average schemata. 17

Effect of Reproduction (continued) In the above, we assumed that we only have a reproduction operation, and no other operations. In effect, we assumed that we choose high fitness members of the population and reproduce (exact copy) them into the next generation. Thus, it is surprising to learn that reproduction can allocate exponentially increasing and decreasing number of schemata to future generations in parallel. However, reproduction alone does not promote exploration since no new points are searched: If we only copy old structures without change, we don t try anything new at all. This is where crossover steps in. 18

Introducing Crossover Crossover is a structured yet randomized information exchange between strings. Crossover creates new structures, and we will see that it does so with a minimum of disruption to the allocation strategy dictated by reproduction alone. Thus, use of reproduction with crossover results in exponentially increasing (or decreasing) proportions of schemata in a population in many of the schemata contained in the population. 19

Effect of Crossover Some schema are affected by crossover and others are not. Consider a particular string of length 7 and two representative schemata. A = 0 1 1 1 0 0 0 H 1 = * 1 * * * * 0 H 2 = * * * 1 0 * * Clearly both schemata H 1 and H 2 are represented in the string A. In simple crossover, we randomly choose a mate, and then randomly choose a crossover point. 20

Effect of Crossover (Continued) Assume A participates in crossover and the crossover point is between third and fourth bits. Consider the effect of this specific crossover on the two schemata that can be used to represent A. A = 0 1 1 1 0 0 0 H 1 = * 1 * * * * 0 H 2 = * * * 1 0 * * Unless string A s mate is identical to A at the fixed positions of the schema, the schema H 1 will be destroyed because the 1 at position 2 and the 0 at position 7 will be placed in different offspring. They are on opposite sides of the crossover point. 21

Effect of Crossover (Continued) With the same crossover point, schema H 2 will survive because 1 at position 4 and 0 at position 5 will go intact into an offspring. In general, schema H 1 is less likely to survive crossover than schema H 2 because on average the crossover point is more likely to fall between the extreme fixed positions. Quantifying the observation: Schema H 1 has a defining length of 5 and schema H 2 has a defining length of 1. The schema length has a role to play in if a schema survives a crossover. 22

Quantifying Effect of Crossover Consider schema H 1. Quantifying the observation: If the crossover point is selected uniformly at random among the l 1 = 7 1 = 6 possible positions, we conclude that schema H 1 is destroyed with probability p d = δ(h 1) l 1 = 5 6 schema H 1 survives with probability p s =1 5 6 = 1 6 23

Quantifying Effect of Crossover (Continued) A lower bound on crossover survival probability p s can be found for any schema H. A schema survives when the cross site falls outside the defining length. The schema is likely to be disrupted when a site within the defining length is chosen for crossover. Therefore, the survival probability is p s =1 δ(h) l 1 if the crossover point is chosen uniformly from among all possible choices. 24

Quantifying Effect of Crossover (Continued) If crossover is performed with a probability of p c in a particular mating, the survival probability becomes p s =1 p c δ(h) l 1 (7) The combined effect of reproduction and crossover can now be written out by considering the number of a particular schema H in hte next generation: m(h, t + 1) = m(h, t) f(h) f [ 1 p c δ(h) l 1 ] (8) 25

Summary: Effect of Crossover In Equation (8), the combined effect of reproduction and crossover is obtained by multiplying the expected number of schemata for reproduction alone by the survival probability under crossover p s Schema H grows or decays depending on a multiplication factor. The multiplication factor depends on two things: whether the schema has relatively long or short defining length, and whether the schema is above or below the population average. 26

Summary: Effect of Crossover (Continued) We can write the m(h, t) =m(h, 0) { f(h) f [ 1 p c δ(h) l 1 ]} t (9) An above-average schema is one for which f(h) > 1. f For a below-average schema, this ratio is less than 1. Schema for which [ 1 p c δ(h) ] } l 1 > 1, will { f(h) f increase in number in future generations. The number of times a schema with both aboveaverage fitness and short defining length occurs increases exponentially in future generations. 27

Effect of Mutation Mutation is the random alteration of a single position with probability p m. For a schema H to survive, all the specified positions must themselves survive. Each single allele survives with a probability (1 p m ) The probability of surviving mutation is obtained by multiplying the survival probability o(h) times: (1 p m ) o(h) 1 o(h) p m if p m is assumed to be small, i.e., p m << 1. Use the Binomial Theorem and remove all terms but the first two. 28

Effect of Mutation (Continued) The total effect of reproduction, crossover and mutation is m(h, t+1) = m(h, t) f(h) f Once again, we can write { f(h) m(h, t) =m(h, 0) f [ [ 1 p c δ(h) l 1 o(h) p m (10) 1 p c δ(h) l 1 o(h) p m (11) ] ]} t 29

Effect of Mutation (Continued) If for a schema, { f(h) f [ 1 p c δ(h) l 1 o(h) p ] } m > 1 consistently from generation to generation, the number of times this schema occurs in the population increases exponentially from generation to generation. This is the Schema Theorem: The number of short, low-order, above-average schemata increases exponentially in future generations as a genetic algorithm progresses. 30

How Many Schemata are Processed Usefully? Between 2 l and n 2 l schemata are present in a population of n binary strings each of length l. Not all of these are processed with high probability because crossover destroys those with relatively long defining lengths. According to Holland, θ(n 3 ) schemata are processed usefully by a genetic algorithm. In other words, although we explicitly process only n strings in each generation, a genetic algorithm processes n 3 schemata. Holland calls it implicit parallelism. It is parallelism that is obtained without any special bookkeeping or memory. 31

The Building Block Hypothesis We can understand the progress of a genetic algorithm as processing short, low-order, highly fit schemata to produce strings that are of potentially higher fitness. This perspective reduces the complexity of our problem solving approach: Instead of building high-performance strings by trying all possible combinations, we construct better and better strings from the best partial solutions in the population of strings. Highly fit schemata of low order and low length are called The Building Blocks of genetic algorithms. Hypothesis: Building blocks combine to form better strings. 32

The Building Block Hypothesis (Continued) The Building Block Hypothesis is reasonable, but is it true? There is a lot of empirical evidence: We have examples of complex problems which have been solved by genetic algorithms in all kinds of domains. But, where is the theoretical proof? The proof has been given by Bethke (1981) and Holland (1987) in terms of Walsh functions which are digital counterparts of sine and cosine functions. 33

The Building Block Hypothesis (Continued) Bethke uses Walsh functions and performs a transformation on schemata to determine schema average fitness efficiently and analytically. Bethke s method and Holland s extension to it allow one to identify, given a particular function to optimize and a binary encoding of the function, what the building blocks are and whether the building blocks are combining to form optima or near optima during the course of a genetic algorithm s execution. 34