Introduction The impact of genetic drift on the runtime of simple estimation-of-distribution algorithms Dirk Sudholt and Carsten Witt University of Sheffield and Technical University of Denmark Dagstuhl, January 2016 1/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Context We are interested in runtime analysis of evolutionary algorithms. This talk will not be about (1+1)-type EAs. 2/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Context We are interested in runtime analysis of evolutionary algorithms. This talk will not be about (1+1)-type EAs. Genetic algorithms involving populations and crossover have been modeled in different ways – to ease both theoretical analysis and efficient implementation. 2/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Context We are interested in runtime analysis of evolutionary algorithms. This talk will not be about (1+1)-type EAs. Genetic algorithms involving populations and crossover have been modeled in different ways – to ease both theoretical analysis and efficient implementation. Estimation-of-distribution algorithms (EDAs) do not use explicit populations and crossover but build a probabilistic model. 2/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Context We are interested in runtime analysis of evolutionary algorithms. This talk will not be about (1+1)-type EAs. Genetic algorithms involving populations and crossover have been modeled in different ways – to ease both theoretical analysis and efficient implementation. Estimation-of-distribution algorithms (EDAs) do not use explicit populations and crossover but build a probabilistic model. Recently, there has been increased interest in a runtime analysis of simple EDAs (Friedrich et al., 2015). 2/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Context We are interested in runtime analysis of evolutionary algorithms. This talk will not be about (1+1)-type EAs. Genetic algorithms involving populations and crossover have been modeled in different ways – to ease both theoretical analysis and efficient implementation. Estimation-of-distribution algorithms (EDAs) do not use explicit populations and crossover but build a probabilistic model. Recently, there has been increased interest in a runtime analysis of simple EDAs (Friedrich et al., 2015). We consider the Compact GA (cGA) by Harik et al. (1999) and variants thereof. 2/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Context We are interested in runtime analysis of evolutionary algorithms. This talk will not be about (1+1)-type EAs. Genetic algorithms involving populations and crossover have been modeled in different ways – to ease both theoretical analysis and efficient implementation. Estimation-of-distribution algorithms (EDAs) do not use explicit populations and crossover but build a probabilistic model. Recently, there has been increased interest in a runtime analysis of simple EDAs (Friedrich et al., 2015). We consider the Compact GA (cGA) by Harik et al. (1999) and variants thereof. Goal always: find the optimum of a function f : { 0 , 1 } n → R 2/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction The Compact GA – cGA Instead of a population, cGA uses vector of (allele) frequencies. Parameter K (“population size”) determines strength of updates. t ← 0; p 1 , t ← p 2 , t ← · · · ← p n , t ← 1 / 2; while termination criterion not met do for i ∈ { 1 , . . . , n } do x i ← 1 with prob. p i , t , x i ← 0 with prob. 1 − p i , t for i ∈ { 1 , . . . , n } do y i ← 1 with prob. p i , t , y i ← 0 with prob. 1 − p i , t if f ( x ) < f ( y ) then swap x and y ; for i ∈ { 1 , . . . , n } do if x i > y i then p i , t +1 ← p i , t + 1 / K ; if x i < y i then p i , t +1 ← p i , t − 1 / K ; if x i = y i then p i , t +1 ← p i , t ; Restrict p i , t +1 to be within [1 / n , 1 − 1 / n ] t ← t + 1 3/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Related Algorithms cGA can be understood as a model of a classical genetic algorithm with a population of K individuals, so-called gene-pool recombination and tournament selection. 4/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Related Algorithms cGA can be understood as a model of a classical genetic algorithm with a population of K individuals, so-called gene-pool recombination and tournament selection. Well-known (Hauschild and Pelikan, 2011) that cGA is related to other EDAs like so-called UMDA and PBIL and also to simple ant colony optimizers (ACO). 4/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Related Algorithms cGA can be understood as a model of a classical genetic algorithm with a population of K individuals, so-called gene-pool recombination and tournament selection. Well-known (Hauschild and Pelikan, 2011) that cGA is related to other EDAs like so-called UMDA and PBIL and also to simple ant colony optimizers (ACO). E.g., 2-MMAS ib , a simple ACO, uses the following update rule: if f ( x ) < f ( y ) then swap x and y ; for i ∈ { 1 , . . . , n } do if x i = 1 then p i , t +1 ← p i , t (1 − ρ ) + ρ ; else p i , t +1 ← p i , t (1 − ρ ); Also UMDA follows a similar idea. 4/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Related Algorithms cGA can be understood as a model of a classical genetic algorithm with a population of K individuals, so-called gene-pool recombination and tournament selection. Well-known (Hauschild and Pelikan, 2011) that cGA is related to other EDAs like so-called UMDA and PBIL and also to simple ant colony optimizers (ACO). E.g., 2-MMAS ib , a simple ACO, uses the following update rule: if f ( x ) < f ( y ) then swap x and y ; for i ∈ { 1 , . . . , n } do if x i = 1 then p i , t +1 ← p i , t (1 − ρ ) + ρ ; else p i , t +1 ← p i , t (1 − ρ ); Also UMDA follows a similar idea. Will study an effect common to cGA, MMAS, UMDA etc. 4/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Research Questions Focus now on cGA. What is interesting from a runtime analysis perspective? 5/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Research Questions Focus now on cGA. What is interesting from a runtime analysis perspective? How fast is it on benchmark functions? How to set the parameter K ? Can it outperform other evolutionary algorithms or is it outperformed by them? 5/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Research Questions Focus now on cGA. What is interesting from a runtime analysis perspective? How fast is it on benchmark functions? How to set the parameter K ? Can it outperform other evolutionary algorithms or is it outperformed by them? Known results for cGA Droste (2006) derived first runtime results, in particular for classical benchmark functions OneMax and LeadingOnes . Friedrich et al. (2015) show that the cGA due to its fine-grained probabilistic model outperforms mutation-based EAs in noisy optimization. 5/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Research Questions Best runtime bound for cGA on OneMax is O ( n 1+ ǫ ). ( OneMax ( x 1 , . . . , x n ) = x 1 + · · · + x n , but can also think of minimizing Hamming distance to some z ∈ { 0 , 1 } n .) Lack of good lower bounds for EDAs in general; nothing better than Ω( n / log n ) (following from a general structural theory) known! For comparison, Ω( n log n ) is a natural lower bound for simple EAs on non-trivial functions. Simple (1+1) EA optimizes OneMax in expected Θ( n log n ) time. 6/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Research Questions Best runtime bound for cGA on OneMax is O ( n 1+ ǫ ). ( OneMax ( x 1 , . . . , x n ) = x 1 + · · · + x n , but can also think of minimizing Hamming distance to some z ∈ { 0 , 1 } n .) Lack of good lower bounds for EDAs in general; nothing better than Ω( n / log n ) (following from a general structural theory) known! For comparison, Ω( n log n ) is a natural lower bound for simple EAs on non-trivial functions. Simple (1+1) EA optimizes OneMax in expected Θ( n log n ) time. Open problem What is the true runtime of cGA on OneMax ? Can one come up with matching upper and lower bounds? Is less than n log n possible? 6/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Introduction Behavior on OneMax How to set K on OneMax ? Trade-off Want small K to learn optimal frequency 1 − 1 / n quickly. But: update decision is not based on the outcome of a single bit but the accumulated value. Process can also learn wrong values. Say x = (0 , 0 , 1 , 1 , 1) and y = (1 , 0 , 0 , 1 , 0). Then update is with respect to y and p 1 will be decreased. It can happen that allele frequency “0” (actually 1 / n ) must be “unlearned”, which leads to large runtimes. Hence, must use large enough K to avoid wrong values. 7/16 Dirk Sudholt and Carsten Witt Genetic drift and runtime of EDAs
Recommend
More recommend