A Gentle Introduction to the Time Complexity Analysis of Evolutionary Algorithms

Similar documents
Runtime Analysis of Evolutionary Algorithms: Basic Introduction 1

Crossover can be constructive when computing unique input output sequences

The Fitness Level Method with Tail Bounds

When Hypermutations and Ageing Enable Artificial Immune Systems to Outperform Evolutionary Algorithms 1. Dogan Corus, Pietro S. Oliveto, Donya Yazdani

REIHE COMPUTATIONAL INTELLIGENCE COLLABORATIVE RESEARCH CENTER 531

A Lower Bound Analysis of Population-based Evolutionary Algorithms for Pseudo-Boolean Functions

Black Box Search By Unbiased Variation

When Is an Estimation of Distribution Algorithm Better than an Evolutionary Algorithm?

Evolutionary Algorithms How to Cope With Plateaus of Constant Fitness and When to Reject Strings of The Same Fitness

When to Use Bit-Wise Neutrality

How to Treat Evolutionary Algorithms as Ordinary Randomized Algorithms

METHODS FOR THE ANALYSIS OF EVOLUTIONARY ALGORITHMS ON PSEUDO-BOOLEAN FUNCTIONS

On the Impact of Objective Function Transformations on Evolutionary and Black-Box Algorithms

REIHE COMPUTATIONAL INTELLIGENCE COLLABORATIVE RESEARCH CENTER 531

Runtime Analyses for Using Fairness in Evolutionary Multi-Objective Optimization

UNIVERSITY OF DORTMUND

Black-Box Search by Unbiased Variation

UNIVERSITY OF DORTMUND

A Runtime Analysis of Parallel Evolutionary Algorithms in Dynamic Optimization

arxiv: v1 [cs.dm] 29 Aug 2013

Runtime Analysis of (1+1) EA on Computing Unique Input Output Sequences

Plateaus Can Be Harder in Multi-Objective Optimization

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

Refined Upper Bounds on the Expected Runtime of Non-elitist Populations from Fitness-Levels

A Comparison of GAs Penalizing Infeasible Solutions and Repairing Infeasible Solutions on the 0-1 Knapsack Problem

Improved time complexity analysis of the Simple Genetic Algorithm

TECHNISCHE UNIVERSITÄT DORTMUND REIHE COMPUTATIONAL INTELLIGENCE COLLABORATIVE RESEARCH CENTER 531

The Nottingham eprints service makes this work by researchers of the University of Nottingham available open access under the following conditions.

Runtime Analysis of Genetic Algorithms with Very High Selection Pressure

Optimizing Linear Functions with Randomized Search Heuristics - The Robustness of Mutation

Runtime Analysis of a Binary Particle Swarm Optimizer

REIHE COMPUTATIONAL INTELLIGENCE S O N D E R F O R S C H U N G S B E R E I C H 5 3 1

Runtime Analysis of Evolutionary Algorithms for the Knapsack Problem with Favorably Correlated Weights

The (1+) evolutionary algorithm with self-adjusting mutation rate

Rigorous Analyses for the Combination of Ant Colony Optimization and Local Search

Runtime Analysis of a Simple Ant Colony Optimization Algorithm

When to use bit-wise neutrality

Computational Complexity

CIS 121 Data Structures and Algorithms with Java Spring Big-Oh Notation Monday, January 22/Tuesday, January 23

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

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Improved Runtime Bounds for the Univariate Marginal Distribution Algorithm via Anti-Concentration

Runtime Analysis of Binary PSO

Running time analysis of a multi-objective evolutionary algorithm on a simple discrete optimization problem

An Analysis on Recombination in Multi-Objective Evolutionary Optimization

Average Drift Analysis and Population Scalability

With high probability

Asymptotic Analysis. Slides by Carl Kingsford. Jan. 27, AD Chapter 2

TECHNISCHE UNIVERSITÄT DORTMUND REIHE COMPUTATIONAL INTELLIGENCE COLLABORATIVE RESEARCH CENTER 531

CS Non-recursive and Recursive Algorithm Analysis

A Parameterized Runtime Analysis of Simple Evolutionary Algorithms for Makespan Scheduling

COMP 9024, Class notes, 11s2, Class 1

PROBABILISTIC ANALYSIS OF THE (1 + 1)-EVOLUTIONARY ALGORITHM

Lecture 4: Two-point Sampling, Coupon Collector s problem

A New Approach to Estimating the Expected First Hitting Time of Evolutionary Algorithms

CS473 - Algorithms I

UNIVERSITY OF DORTMUND

REIHE COMPUTATIONAL INTELLIGENCE S O N D E R F O R S C H U N G S B E R E I C H 5 3 1

TECHNISCHE UNIVERSITÄT DORTMUND REIHE COMPUTATIONAL INTELLIGENCE COLLABORATIVE RESEARCH CENTER 531

Switch Analysis for Running Time Analysis of Evolutionary Algorithms

Lecture 4: Sampling, Tail Inequalities

Multiplicative Drift Analysis

Introduction. Genetic Algorithm Theory. Overview of tutorial. The Simple Genetic Algorithm. Jonathan E. Rowe

Running Time Analysis of Multi-objective Evolutionary Algorithms on a Simple Discrete Optimization Problem

Runtime Analysis of the (1 + (λ, λ)) Genetic Algorithm on Random Satisfiable 3-CNF Formulas

Grade 11/12 Math Circles Fall Nov. 5 Recurrences, Part 2

Big O 2/14/13. Administrative. Does it terminate? David Kauchak cs302 Spring 2013

Data Structures and Algorithms. Asymptotic notation

Expected Running Time Analysis of a Multiobjective Evolutionary Algorithm on Pseudo-boolean Functions

UNIVERSITY OF DORTMUND

Analysis of Evolutionary Algorithms for the Longest Common Subsequence Problem

3.1 Asymptotic notation

More Asymptotic Analysis Spring 2018 Discussion 8: March 6, 2018

Notes 6 : First and second moment methods

Faster Black-Box Algorithms Through Higher Arity Operators

On the Usefulness of Infeasible Solutions in Evolutionary Search: A Theoretical Study

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

Simple Max-Min Ant Systems and the Optimization of Linear Pseudo-Boolean Functions

Big O (Asymptotic Upper Bound)

The Growth of Functions and Big-O Notation

Homework 4 Solutions

A Computational View on Natural Evolution

Simulated Annealing Beats Metropolis in Combinatorial Optimization

Evolutionary Computation

Evolutionary Algorithms and Other Search Heuristics. Bioinspired Computation in Combinatorial Optimization

REIHE COMPUTATIONAL INTELLIGENCE COLLABORATIVE RESEARCH CENTER 531

First hitting time analysis of continuous evolutionary algorithms based on average gain

Computing Single Source Shortest Paths using Single-Objective Fitness Functions

with the size of the input in the limit, as the size of the misused.

CS 4407 Algorithms Lecture 2: Iterative and Divide and Conquer Algorithms

Testing Monotone High-Dimensional Distributions

Pure Strategy or Mixed Strategy?

Theory of Evolutionary Computation

11.1 Set Cover ILP formulation of set cover Deterministic rounding

Data Structures and Algorithms Running time and growth functions January 18, 2018

Analysis of Algorithms I: Asymptotic Notation, Induction, and MergeSort

Written Homework #1: Analysis of Algorithms

CS 6820 Fall 2014 Lectures, October 3-20, 2014

Kousha Etessami. U. of Edinburgh, UK. Kousha Etessami (U. of Edinburgh, UK) Discrete Mathematics (Chapter 7) 1 / 13

On the Effectiveness of Sampling for Evolutionary Optimization in Noisy Environments

Transcription:

A Gentle Introduction to the Time Complexity Analysis of Evolutionary Algorithms Pietro S. Oliveto Department of Computer Science, University of Sheffield, UK Symposium Series in Computational Intelligence (SSCI 2017) Hilton Hawaiian Village Waikiki, Honolulu, Hawaii, 27 November 2017

Motivation Evolutionary Algorithms Tail Inequalities Artificial Fitness Levels Drift Analysis Conclusions Bio-sketch - Dr Pietro S. Oliveto Senior Lecturer in the Department of Computer Science, at the University of Sheffield. Leads the Rigorous Research group www.dcs.shef.ac.uk/people/p.oliveto/rig @RigResearch Laurea Degree in Computer Science from the University if Catania, Italy (2005). PhD in Computer Science (2006-2009), EPSRC PhD+ Research Fellow (2009-2010), EPSRC Postdoctoral Fellow in Theoretical Computer Science (2010-2013), Vice-Chancellor Fellow (2013-2016), EPSRC Early Career Fellow (2015-2020). Guest editor for special issues of Evolutionary Computation (MIT Press, 2015) and Computer Science and Technology (Springer, 2012). Best paper awards at GECCO 2008, ICARIS 2011, GECCO 2014 and best paper nominations at CEC 2009, ECTA 2011. Chair of IEEE CIS Task Force on Theoretical Foundations of Bio-inspired Computation, Associate Editor for IEEE TEVC, EPSRC Board Member.

Aims and Goals of this Tutorial This tutorial will provide an overview of the goals of time complexity analysis of Evolutionary Algorithms (EAs) the most common and effective techniques You should attend if you wish to theoretically understand the behaviour and performance of the search algorithms you design familiarise with the techniques used in the time complexity analysis of EAs pursue research in the area enable you or enhance your ability to understand theoretically the behaviour of EAs on different problems perform time complexity analysis of simple EAs on common toy problems read and understand research papers on the computational complexity of EAs have the basic skills to start independent research in the area

Introduction to the theory of EAs Evolutionary Algorithms and Computer Science Goals of design and analysis of algorithms 1 correctness does the algorithm always output the correct solution? 2 computational complexity how many computational resources are required? For Evolutionary Algorithms (General purpose) 1 convergence Does the EA find the solution in finite time? 2 time complexity how long does it take to find the optimum? (time = n. of fitness function evaluations)

Introduction to the theory of EAs Brief history Theoretical studies of Evolutionary Algorithms (EAs), albeit few, have always existed since the seventies [Goldberg, 1989]; Early studies were concerned with explaining the behaviour rather than analysing their performance. Schema Theory was considered fundamental; First proposed to understand the behaviour of the simple GA [Holland, 1992]; It cannot explain the performance or limit behaviour of EAs; Building Block Hypothesis was controversial [Reeves and Rowe, 2002]; Convergence results appeared in the nineties [Rudolph, 1998]; Related to the time limit behaviour of EAs.

Convergence analysis of EAs Convergence Definition Ideally the EA should find the solution in finite steps with probability 1 (visit the global optimum in finite time); If the solution is held forever after, then the algorithm converges to the optimum!

Convergence analysis of EAs Convergence Definition Ideally the EA should find the solution in finite steps with probability 1 (visit the global optimum in finite time); If the solution is held forever after, then the algorithm converges to the optimum! Conditions for Convergence ([Rudolph, 1998]) 1 There is a positive probability to reach any point in the search space from any other point 2 The best found solution is never removed from the population (elitism)

Convergence analysis of EAs Convergence Definition Ideally the EA should find the solution in finite steps with probability 1 (visit the global optimum in finite time); If the solution is held forever after, then the algorithm converges to the optimum! Conditions for Convergence ([Rudolph, 1998]) 1 There is a positive probability to reach any point in the search space from any other point 2 The best found solution is never removed from the population (elitism) Canonical GAs using mutation, crossover and proportional selection Do Not converge! Elitist variants Do converge! In practice, is it interesting that an algorithm converges to the optimum? Most EAs visit the global optimum in finite time (RLS does not!) How much time?

Computational complexity of EAs Computational Complexity of EAs P. K. Lehre, 2011

Computational complexity of EAs Computational Complexity of EAs Generally means predicting the resources the algorithm requires: Usually the computational time: the number of primitive steps; Usually grows with size of the input; Usually expressed in asymptotic notation; Exponential runtime: Inefficient algorithm Polynomial runtime: Efficient algorithm P. K. Lehre, 2011

Computational complexity of EAs Computational Complexity of EAs However (EAs): P. K. Lehre, 2011 1 In practice the time for a fitness function evaluation is much higher than the rest; 2 EAs are randomised algorithms They do not perform the same operations even if the input is the same! They do not output the same result if run twice!

Computational complexity of EAs Computational Complexity of EAs However (EAs): P. K. Lehre, 2011 1 In practice the time for a fitness function evaluation is much higher than the rest; 2 EAs are randomised algorithms They do not perform the same operations even if the input is the same! They do not output the same result if run twice! Hence, the runtime of an EA is a random variable T f. We are interested in: 1 Estimating E(T f ), the expected runtime of the EA for f;

Computational complexity of EAs Computational Complexity of EAs P. K. Lehre, 2011 However (EAs): 1 In practice the time for a fitness function evaluation is much higher than the rest; 2 EAs are randomised algorithms They do not perform the same operations even if the input is the same! They do not output the same result if run twice! Hence, the runtime of an EA is a random variable T f. We are interested in: 1 Estimating E(T f ), the expected runtime of the EA for f; 2 Estimating p(t f t), the success probability of the EA in t steps for f.

Computational complexity of EAs Asymptotic notation f(n) O(g(n)) constants c, n 0 > 0 st. 0 f(n) cg(n) n n 0 f(n) Ω(g(n)) constants c, n 0 > 0 st. 0 cg(n) f(n) n n 0 f(n) Θ(g(n)) f(n) O(g(n)) and f(n) Ω(g(n)) f(n) o(g(n)) f(n) lim n g(n) = 0

Computational complexity of EAs Exercise 1: Asymptotic Notation [Lehre, Tutorial]

Computational complexity of EAs Motivation Overview Overview Next Goal: Analyze the correctness and performance of EAs; Difficulties: General purpose, randomised; EAs find the solution in finite time; (convergence analysis) How much time? Derive the expected runtime and the success probability; Basic Probability Theory: probability space, random variables, expectations (expected runtime) Randomised Algorithm Tools: Tail inequalities (success probabilities) Along the way Understand that the analysis cannot be done over all functions Understand why the success probability is important (expected runtime not always sufficient)

Evolutionary Algorithms Algorithm ((µ+λ)-ea) 1 Let t = 0; 2 Initialize P 0 with µ individuals chosen uniformly at random; Repeat 3 Create λ new individuals: 1 choose x P t uniformly at random; 2 flip each bit in x with probability p; 4 Create the new population P t+1 by choosing the best µ individuals out of µ + λ; 5 Let t = t + 1. Until a stopping condition is fulfilled.

Evolutionary Algorithms Algorithm ((µ+λ)-ea) 1 Let t = 0; 2 Initialize P 0 with µ individuals chosen uniformly at random; Repeat 3 Create λ new individuals: 1 choose x P t uniformly at random; 2 flip each bit in x with probability p; 4 Create the new population P t+1 by choosing the best µ individuals out of µ + λ; 5 Let t = t + 1. Until a stopping condition is fulfilled. if µ = λ = 1 we get a (1+1)-EA;

Evolutionary Algorithms Algorithm ((µ+λ)-ea) 1 Let t = 0; 2 Initialize P 0 with µ individuals chosen uniformly at random; Repeat 3 Create λ new individuals: 1 choose x P t uniformly at random; 2 flip each bit in x with probability p; 4 Create the new population P t+1 by choosing the best µ individuals out of µ + λ; 5 Let t = t + 1. Until a stopping condition is fulfilled. if µ = λ = 1 we get a (1+1)-EA; p = 1/n is generally considered as best choice [Bäck, 1993, Droste et al., 1998];

Evolutionary Algorithms Algorithm ((µ+λ)-ea) 1 Let t = 0; 2 Initialize P 0 with µ individuals chosen uniformly at random; Repeat 3 Create λ new individuals: 1 choose x P t uniformly at random; 2 flip each bit in x with probability p; 4 Create the new population P t+1 by choosing the best µ individuals out of µ + λ; 5 Let t = t + 1. Until a stopping condition is fulfilled. if µ = λ = 1 we get a (1+1)-EA; p = 1/n is generally considered as best choice [Bäck, 1993, Droste et al., 1998]; By introducing stochastic selection and crossover we obtain a Genetic Algorithm(GA)

1+1-EA Algorithm ((1+1)-EA) Initialise P 0 with x {1, 0} n by flipping each bit with p = 1/2 ; Repeat Create x by flipping each bit in x with p = 1/n; If f(x ) f(x) Then x P t+1 Else x P t+1; Let t = t + 1; Until stopping condition. If only one bit is flipped per iteration: Random Local Search (RLS). How does it work?

1+1-EA Algorithm ((1+1)-EA) Initialise P 0 with x {1, 0} n by flipping each bit with p = 1/2 ; Repeat Create x by flipping each bit in x with p = 1/n; If f(x ) f(x) Then x P t+1 Else x P t+1; Let t = t + 1; Until stopping condition. If only one bit is flipped per iteration: Random Local Search (RLS). How does it work? Given x, how many bits will flip in expectation?

1+1-EA Algorithm ((1+1)-EA) Initialise P 0 with x {1, 0} n by flipping each bit with p = 1/2 ; Repeat Create x by flipping each bit in x with p = 1/n; If f(x ) f(x) Then x P t+1 Else x P t+1; Let t = t + 1; Until stopping condition. If only one bit is flipped per iteration: Random Local Search (RLS). How does it work? Given x, how many bits will flip in expectation? E[X] = E[X 1 + X 2 + + X n] = E[X 1] + E[X 2] + + E[X n] =

1+1-EA Algorithm ((1+1)-EA) Initialise P 0 with x {1, 0} n by flipping each bit with p = 1/2 ; Repeat Create x by flipping each bit in x with p = 1/n; If f(x ) f(x) Then x P t+1 Else x P t+1; Let t = t + 1; Until stopping condition. If only one bit is flipped per iteration: Random Local Search (RLS). How does it work? Given x, how many bits will flip in expectation? E[X] = E[X 1 + X 2 + + X n] = E[X 1] + E[X 2] + + E[X n] = ( E[X i] = 1 1/n + 0 (1 1/n) = 1 1/n = 1/n ) E(X) = np

1+1-EA Algorithm ((1+1)-EA) Initialise P 0 with x {1, 0} n by flipping each bit with p = 1/2 ; Repeat Create x by flipping each bit in x with p = 1/n; If f(x ) f(x) Then x P t+1 Else x P t+1; Let t = t + 1; Until stopping condition. If only one bit is flipped per iteration: Random Local Search (RLS). How does it work? Given x, how many bits will flip in expectation? E[X] = E[X 1 + X 2 + + X n] = E[X 1] + E[X 2] + + E[X n] = ( E[X i] = 1 1/n + 0 (1 1/n) = 1 1/n = 1/n ) E(X) = np n = 1 1/n = n/n = 1 i=1

General properties 1+1-EA: 2 ( How likely is it that exactly one bit flips? P r(x = j) = ( ) ) n j p j (1 p) n j

General properties 1+1-EA: 2 ( How likely is it that exactly one bit flips? P r(x = j) = ( ) ) n j p j (1 p) n j What is the probability of exactly one bit flipping?

General properties 1+1-EA: 2 ( How likely is it that exactly one bit flips? P r(x = j) = ( ) ) n j p j (1 p) n j What is the probability of exactly one bit flipping? ( ) n P r(x = 1) = 1/n (1 1/n) n 1 = (1 1/n) n 1 1/e 0.37 1

General properties 1+1-EA: 2 ( How likely is it that exactly one bit flips? P r(x = j) = ( ) ) n j p j (1 p) n j What is the probability of exactly one bit flipping? ( ) n P r(x = 1) = 1/n (1 1/n) n 1 = (1 1/n) n 1 1/e 0.37 1 Is it more likely that 2 bits flip or none?

General properties 1+1-EA: 2 ( How likely is it that exactly one bit flips? P r(x = j) = ( ) ) n j p j (1 p) n j What is the probability of exactly one bit flipping? ( ) n P r(x = 1) = 1/n (1 1/n) n 1 = (1 1/n) n 1 1/e 0.37 1 Is it more likely that 2 bits flip or none? ( ) n P r(x = 2) = 1/n 2 (1 1/n) n 2 = 2 = n (n 1) 1/n 2 (1 1/n) n 2 = 2 = 1/2 (1 1/n) n 1 1/(2e)

General properties 1+1-EA: 2 ( How likely is it that exactly one bit flips? P r(x = j) = ( ) ) n j p j (1 p) n j What is the probability of exactly one bit flipping? ( ) n P r(x = 1) = 1/n (1 1/n) n 1 = (1 1/n) n 1 1/e 0.37 1 Is it more likely that 2 bits flip or none? ( ) n P r(x = 2) = 1/n 2 (1 1/n) n 2 = 2 While = n (n 1) 1/n 2 (1 1/n) n 2 = 2 = 1/2 (1 1/n) n 1 1/(2e) ( ) n P r(x = 0) = (1/n) 0 (1 1/n) n 1/e 0

General upper bound 1+1-EA: General Upper bound Theorem ([Droste et al., 2002]) The expected runtime of the (1+1)-EA for an arbitrary function defined in {0, 1} n is O(n n )

General upper bound 1+1-EA: General Upper bound Theorem ([Droste et al., 2002]) The expected runtime of the (1+1)-EA for an arbitrary function defined in {0, 1} n is O(n n ) Proof

General upper bound 1+1-EA: General Upper bound Theorem ([Droste et al., 2002]) The expected runtime of the (1+1)-EA for an arbitrary function defined in {0, 1} n is O(n n ) Proof 1 Let i be the number of bit positions in which the current solution x and the global optimum x differ;

General upper bound 1+1-EA: General Upper bound Theorem ([Droste et al., 2002]) The expected runtime of the (1+1)-EA for an arbitrary function defined in {0, 1} n is O(n n ) Proof 1 Let i be the number of bit positions in which the current solution x and the global optimum x differ; 2 Each bit flips with probability 1/n, hence does not flip with probability (1 1/n);

General upper bound 1+1-EA: General Upper bound Theorem ([Droste et al., 2002]) The expected runtime of the (1+1)-EA for an arbitrary function defined in {0, 1} n is O(n n ) Proof 1 Let i be the number of bit positions in which the current solution x and the global optimum x differ; 2 Each bit flips with probability 1/n, hence does not flip with probability (1 1/n); 3 In order to reach the global optimum the algorithm has to mutate the i bits and leave the n i bits unchanged;

General upper bound 1+1-EA: General Upper bound Theorem ([Droste et al., 2002]) The expected runtime of the (1+1)-EA for an arbitrary function defined in {0, 1} n is O(n n ) Proof 1 Let i be the number of bit positions in which the current solution x and the global optimum x differ; 2 Each bit flips with probability 1/n, hence does not flip with probability (1 1/n); 3 In order to reach the global optimum the algorithm has to mutate the i bits and leave the n i bits unchanged; 4 Then: p(x x) = ( ) i ( 1 1 1 ) n i n n ( ) n 1 = n n( p = n n) n

General upper bound 1+1-EA: General Upper bound Theorem ([Droste et al., 2002]) The expected runtime of the (1+1)-EA for an arbitrary function defined in {0, 1} n is O(n n ) Proof 1 Let i be the number of bit positions in which the current solution x and the global optimum x differ; 2 Each bit flips with probability 1/n, hence does not flip with probability (1 1/n); 3 In order to reach the global optimum the algorithm has to mutate the i bits and leave the n i bits unchanged; 4 Then: p(x x) = ( ) i ( 1 1 1 ) n i n n ( ) n 1 = n n( p = n n) n 5 it implies an upper bound on the expected runtime of O(n n ) (E(X) = 1/p = n n ) (waiting time argument).

General upper bound General Upper bound Exercises Theorem The expected runtime of the (1+1)-EA with mutation probability p = 1/2 for an arbitrary function defined in {0, 1} n is O(2 n )

General upper bound General Upper bound Exercises Theorem The expected runtime of the (1+1)-EA with mutation probability p = 1/2 for an arbitrary function defined in {0, 1} n is O(2 n ) Proof Left as Exercise. Theorem The expected runtime of the (1+1)-EA with mutation probability p = χ/n for an arbitrary function defined in {0, 1} n is O((n/χ) n )

General upper bound General Upper bound Exercises Theorem The expected runtime of the (1+1)-EA with mutation probability p = 1/2 for an arbitrary function defined in {0, 1} n is O(2 n ) Proof Left as Exercise. Theorem The expected runtime of the (1+1)-EA with mutation probability p = χ/n for an arbitrary function defined in {0, 1} n is O((n/χ) n ) Proof Left as Exercise. Theorem The expected runtime of RLS for an arbitrary function defined in {0, 1} n is infinite.

General upper bound General Upper bound Exercises Theorem The expected runtime of the (1+1)-EA with mutation probability p = 1/2 for an arbitrary function defined in {0, 1} n is O(2 n ) Proof Left as Exercise. Theorem The expected runtime of the (1+1)-EA with mutation probability p = χ/n for an arbitrary function defined in {0, 1} n is O((n/χ) n ) Proof Left as Exercise. Theorem The expected runtime of RLS for an arbitrary function defined in {0, 1} n is infinite. Proof Left as Exercise.

General upper bound 1+1-EA: Conclusions & Exercises In general: ( ) n P (i bitflip) = i 1 n i ( 1 1 n ) n i 1 ( 1 1 ) n i 1 i! n i!e

General upper bound 1+1-EA: Conclusions & Exercises In general: ( ) n P (i bitflip) = i What about RLS? 1 n i ( 1 1 n ) n i 1 ( 1 1 ) n i 1 i! n i!e

General upper bound 1+1-EA: Conclusions & Exercises In general: ( ) n P (i bitflip) = i What about RLS? Expectation: E[X] = 1 1 n i ( 1 1 n ) n i 1 ( 1 1 ) n i 1 i! n i!e

General upper bound 1+1-EA: Conclusions & Exercises In general: ( ) n P (i bitflip) = i What about RLS? Expectation: E[X] = 1 P(1-bitflip) = 1 1 n i ( 1 1 n ) n i 1 ( 1 1 ) n i 1 i! n i!e

General upper bound 1+1-EA: Conclusions & Exercises In general: ( ) n P (i bitflip) = i What about RLS? Expectation: E[X] = 1 P(1-bitflip) = 1 What about initialisation? 1 n i ( 1 1 n ) n i 1 ( 1 1 ) n i 1 i! n i!e

General upper bound 1+1-EA: Conclusions & Exercises In general: ( ) n P (i bitflip) = i What about RLS? Expectation: E[X] = 1 P(1-bitflip) = 1 What about initialisation? 1 n i ( 1 1 n ) n i 1 ( 1 1 ) n i 1 i! n i!e How many one-bits in expectation after initialisation?

General upper bound 1+1-EA: Conclusions & Exercises In general: ( ) n P (i bitflip) = i What about RLS? Expectation: E[X] = 1 P(1-bitflip) = 1 What about initialisation? 1 n i ( 1 1 n ) n i 1 ( 1 1 ) n i 1 i! n i!e How many one-bits in expectation after initialisation? E[X] = n 1/2 = n/2 How likely is it that we get exactly n/2 one-bits?

General upper bound 1+1-EA: Conclusions & Exercises In general: ( ) n P (i bitflip) = i What about RLS? Expectation: E[X] = 1 P(1-bitflip) = 1 What about initialisation? 1 n i ( 1 1 n ) n i 1 ( 1 1 ) n i 1 i! n i!e How many one-bits in expectation after initialisation? E[X] = n 1/2 = n/2 How likely is it that we get exactly n/2 one-bits? ( ) n P r(x = n/2) = n/2 1 n n/2 ( 1 1 ) n/2 ( ) n = 100, P r(x = 50) 0.0796 n Tail Inequalities help us!

Tail Inequalities Given a random variable X it may assume values that are considerably larger or lower than its expectation; Tail inequalities: The expectation can often be estimate easily; We would like to know the probability of deviating far from the expectation i.e., the tails of the distribution Tail inequalities give bounds on the tails given the expectation.

Markov s inequality Markov Inequality The fundamental inequality from which many others are derived.

Markov s inequality Markov Inequality The fundamental inequality from which many others are derived. Definition (Markov s Inequality) Let X be a random variable assuming only non-negative values, and E[X] its expectation. Then for all t R +, P r[x t] E[X]. t

Markov s inequality Markov Inequality The fundamental inequality from which many others are derived. Definition (Markov s Inequality) Let X be a random variable assuming only non-negative values, and E[X] its expectation. Then for all t R +, P r[x t] E[X]. t E[X] = 1; then: P r[x 2] E[X] 1 (Number of bits that flip) 2 2

Markov s inequality Markov Inequality The fundamental inequality from which many others are derived. Definition (Markov s Inequality) Let X be a random variable assuming only non-negative values, and E[X] its expectation. Then for all t R +, P r[x t] E[X]. t E[X] = 1; then: P r[x 2] E[X] 1 (Number of bits that flip) 2 2 E[X] = n/2; then P r[x (2/3)n] E[X] = n/2 = 3 (2/3)n (2/3)n 4 (Number of one-bits after initialisation)

Markov s inequality Markov Inequality The fundamental inequality from which many others are derived. Definition (Markov s Inequality) Let X be a random variable assuming only non-negative values, and E[X] its expectation. Then for all t R +, P r[x t] E[X]. t E[X] = 1; then: P r[x 2] E[X] 1 (Number of bits that flip) 2 2 E[X] = n/2; then P r[x (2/3)n] E[X] = n/2 = 3 (2/3)n (2/3)n 4 (Number of one-bits after initialisation) Markov s inequality is often used iteratively in repeated phases to obtain stronger bounds!

Chernoff bounds Chernoff Bounds Let X 1, X 2,... X n be independent Poisson trials each with probability p i; For X = n i=1 Xi the expectation is E(X) = n i=1 pi. Definition (Chernoff Bounds) 1 for 0 δ 1, P r(x (1 δ)e[x]) e E[X]δ2 [ 2 for δ > 0, P r(x > (1 + δ)e[x]) 2. ] E[X]. e δ (1+δ) 1+δ

Chernoff bounds Chernoff Bounds Let X 1, X 2,... X n be independent Poisson trials each with probability p i; For X = n i=1 Xi the expectation is E(X) = n i=1 pi. Definition (Chernoff Bounds) 1 for 0 δ 1, P r(x (1 δ)e[x]) e E[X]δ2 [ 2 for δ > 0, P r(x > (1 + δ)e[x]) 2. ] E[X]. e δ (1+δ) 1+δ What is the probability that we have more than (2/3)n one-bits at initialisation?

Chernoff bounds Chernoff Bounds Let X 1, X 2,... X n be independent Poisson trials each with probability p i; For X = n i=1 Xi the expectation is E(X) = n i=1 pi. Definition (Chernoff Bounds) 1 for 0 δ 1, P r(x (1 δ)e[x]) e E[X]δ2 [ 2 for δ > 0, P r(x > (1 + δ)e[x]) 2. ] E[X]. e δ (1+δ) 1+δ What is the probability that we have more than (2/3)n one-bits at initialisation? p i = 1/2, E[X] = n 1/2 = n/2,

Chernoff bounds Chernoff Bounds Let X 1, X 2,... X n be independent Poisson trials each with probability p i; For X = n i=1 Xi the expectation is E(X) = n i=1 pi. Definition (Chernoff Bounds) 1 for 0 δ 1, P r(x (1 δ)e[x]) e E[X]δ2 [ 2 for δ > 0, P r(x > (1 + δ)e[x]) 2. ] E[X]. e δ (1+δ) 1+δ What is the probability that we have more than (2/3)n one-bits at initialisation? p i = 1/2, E[X] = n 1/2 = n/2, (we fix δ = 1/3 (1 + δ)e[x] = (2/3)n); then: ( ) n/2 e P r[x > (2/3)n] 1/3 = c n/2 (4/3) 4/3

Chernoff bounds Chernoff Bound Simple Application Bitstring of length n = 100 P r(x i) = 1/2 and E(X) = np = 100/2 = 50.

Chernoff bounds Chernoff Bound Simple Application Bitstring of length n = 100 P r(x i) = 1/2 and E(X) = np = 100/2 = 50. What is the probability to have at least 75 1-bits?

Chernoff bounds Chernoff Bound Simple Application Bitstring of length n = 100 P r(x i) = 1/2 and E(X) = np = 100/2 = 50. What is the probability to have at least 75 1-bits? Markov: P r(x 75) 50 75 = 2 3 Chernoff: P r(x (1 + 1/2)50) Truth: P r(x 75) = 100 i=75 ( 100 i ( e ) 50 < 0.0045 (3/2) 3/2 ) 2 100 < 0.000000282

Chernoff bounds OneMax f(x) OneMax(x)= n i=1 x[i]) n 2 1 1 2 n ones(x)

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 0 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 0 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 0 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 0 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 0 1 p 3 = 3 6 E(T 0) = 6 3 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 0 0 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 0 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5 1 0 1 0 1 1 p 4 = 2 6 E(T 4) = 6 2 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5 1 1 1 0 1 1 p 4 = 2 6 E(T 4) = 6 2 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5 1 1 1 0 1 1 p 4 = 2 6 E(T 4) = 6 2 0 1 2 3 4 5 1 1 1 0 1 1 p 4 = 2 6 E(T 4) = 6 2 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5 1 1 1 0 1 1 p 4 = 2 6 E(T 4) = 6 2 0 1 2 3 4 5 1 1 1 0 1 1 p 5 = 1 6 E(T 5) = 6 1 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5 1 1 1 0 1 1 p 4 = 2 6 E(T 4) = 6 2 0 1 2 3 4 5 1 1 1 1 1 1 p 5 = 1 6 E(T 5) = 6 1 0 1 2 3 4 5

RLS for OneMax( OneMax(x)= n i=1 x[i]) 0 0 0 0 0 1 p 0 = 6 6 E(T 0) = 6 6 0 1 2 3 4 5 0 0 1 0 0 1 p 1 = 5 6 E(T 1) = 6 5 0 1 2 3 4 5 1 0 1 0 0 1 p 2 = 4 6 E(T 2) = 6 4 0 1 2 3 4 5 1 0 1 0 1 1 p 3 = 3 6 E(T 3) = 6 3 0 1 2 3 4 5 1 1 1 0 1 1 p 4 = 2 6 E(T 4) = 6 2 0 1 2 3 4 5 1 1 1 1 1 1 p 5 = 1 6 E(T 5) = 6 1 0 1 2 3 4 5 E(T ) = E(T 0) + E(T 1) + + E(T 5) = 1/p 0 + 1/p 1 + + 1/p 5 = 5 1 5 6 6 = = p i i = 6 1 = 6 2.45 = 14.7 i i=0 i=0 i=1

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 0 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 0 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 5 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 0 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 2 = n 2 E(T n 2) = n n 2 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n 0 0 1 0 0 1 0 0 0 1 p 2 = n 2 E(T n 2) = n n 2 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n 0 0 1 0 0 1 0 0 0 1 p 2 = n 2 E(T n 2) = n n 2 0 1 2 3 n 1 1 1 1 0 1 1 1 1 1 p n 1 = 1 n E(T n 1) = n 1 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n 0 0 1 0 0 1 0 0 0 1 p 2 = n 2 E(T n 2) = n n 2 0 1 2 3 n 1 1 1 1 0 1 1 1 1 1 p n 1 = 1 n E(T n 1) = n 1 0 1 2 3 4 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n 0 0 1 0 0 1 0 0 0 1 p 2 = n 2 E(T n 2) = n n 2 0 1 2 3 n 1 1 1 1 1 1 1 1 1 1 p n 1 = 1 n E(T n 1) = n 1 0 1 2 3 n

RLS for OneMax( OneMax(x)= n i=1 x[i]) : Generalisation 0 0 0 0 0 1 0 0 0 0 p 0 = n n E(T 0) = n n 0 1 2 3 n 0 0 1 0 0 1 0 0 0 0 p 1 = n 1 E(T n 1) = n n 1 0 1 2 3 n 0 0 1 0 0 1 0 0 0 1 p 2 = n 2 E(T n 2) = n n 2 0 1 2 3 n 1 1 1 1 1 1 1 1 1 1 p n 1 = 1 n E(T n 1) = n 1 0 1 2 3 n E(T ) = E(T 0) + E(T 1) + + E(T n 1) = 1/p 1 + 1/p 2 + + 1/p n 1 = n 1 1 n n n = = p i i = n 1 = n H(n) = n log n + Θ(n) = O(n log n) i i=0 i=1 i=1

Coupon collector s problem Coupon collector s problem The Coupon collector s problem There are n types of coupons and at each trial one coupon is chosen at random. Each coupon has the same probability of being extracted. The goal is to find the exact number of trials before the collector has obtained all the n coupons. Theorem (The coupon collector s Theorem) Let T be the time for all the n coupons to be collected. Then E(T ) = n 1 i=0 n 1 1 = p i+1 i=0 n 1 n n i = n i=0 = n(log n + Θ(1)) = n log n + O(n). 1 i =

Coupon collector s problem Coupon collector s problem: Upper bound on time What is the probability that the time to collect n coupons is greater than n ln n + O(n)? Theorem (Coupon collector upper bound on time) Let T be the time for all the n coupons to be collected. Then Proof P r(t (1 + ɛ)n ln n) n ɛ

Coupon collector s problem Coupon collector s problem: Upper bound on time What is the probability that the time to collect n coupons is greater than n ln n + O(n)? Theorem (Coupon collector upper bound on time) Let T be the time for all the n coupons to be collected. Then Proof 1 n P r(t (1 + ɛ)n ln n) n ɛ Probability of choosing a given coupon 1 1 ( n ) t Probability of not choosing a given coupon 1 1 n Probability of not choosing a given coupon for t rounds The ( probability ) that one of the n coupons is not chosen in t rounds is less than t n 1 1 (Union Bound) n Hence, for t = cn ln n P r(t cn ln n) n ( 1 1/n) cn ln n n e c ln n = n n c = n c+1

Coupon collector s problem Coupon collector s problem: lower bound on time What is the probability that the time to collect n coupons is less than n ln n + O(n)? Theorem (Coupon collector lower bound on time (Doerr, 2011)) Let T be the time for all the n coupons to be collected. Then for all ɛ > 0 P r(t < (1 ɛ)(n 1) ln n) exp( n ɛ )

Coupon collector s problem Coupon collector s problem: lower bound on time What is the probability that the time to collect n coupons is less than n ln n + O(n)? Theorem (Coupon collector lower bound on time (Doerr, 2011)) Let T be the time for all the n coupons to be collected. Then for all ɛ > 0 P r(t < (1 ɛ)(n 1) ln n) exp( n ɛ ) Corollary The expected time for RLS to optimise OneMaxis Θ(n ln n). Furthermore, P r(t (1 + ɛ)n ln n) n ɛ and P r(t < (1 ɛ)(n 1) ln n) exp( n ɛ ) What about the (1+1)-EA?

AFL method for upper bounds Artificial Fitness Levels Observation Due to elitism, fitness is monotone increasing D. Sudholt, Tutorial 2011

AFL method for upper bounds Artificial Fitness Levels Observation Due to elitism, fitness is monotone increasing D. Sudholt, Tutorial 2011 Idea that: Divide the search space S = 2 n into m < 2 n sets A 1,... A m such 1 i j : A i A j = 2 m i=0 Ai = {0, 1}n 3 for all points a A i and b A j it happens that f(a) < f(b) if i < j. requirement A m contains only optimal search points.

AFL method for upper bounds Artificial Fitness Levels [Droste et al., 2002] Idea that: Divide the search space S = 2 n into m < 2 n sets A 1,... A m such 1 i j : A i A j = 2 m i=0 Ai = {0, 1}n 3 for all points a A i and b A j it happens that f(a) < f(b) if i < j. requirement A m contains only optimal search points.

AFL method for upper bounds Artificial Fitness Levels [Droste et al., 2002] Idea that: Divide the search space S = 2 n into m < 2 n sets A 1,... A m such 1 i j : A i A j = 2 m i=0 Ai = {0, 1}n 3 for all points a A i and b A j it happens that f(a) < f(b) if i < j. requirement A m contains only optimal search points. Then: s i probability that point in A i is mutated to a point in A j with j > i. Expected time: E(T ) i 1 s i Very simple, yet often powerful method for upper bounds

AFL method for upper bounds Artificial Fitness Levels D. Sudholt, Tutorial 2011 Let: p(a i) be the probability that a random initial point belongs to level A i s i be the probability to leave level A i for A j with j > i Then: E(T ) ( 1 p(a i) + + 1 ) ( 1 + + 1 ) m 1 1 = s i s m 1 s 1 s m 1 s i i=1 1 i m 1 Inequality 1: Law of total probability ( E(T ) = i P r(f ) E(T F )) Inequality 2: Trivial!

AFL method for upper bounds (1+1)-EA for OneMax Theorem The expected runtime of the (1+1)-EA for OneMaxis O(n ln n). Proof

AFL method for upper bounds (1+1)-EA for OneMax Theorem The expected runtime of the (1+1)-EA for OneMaxis O(n ln n). Proof The current solution is in level A i if it has i zeroes (hence n i ones)

AFL method for upper bounds (1+1)-EA for OneMax Theorem The expected runtime of the (1+1)-EA for OneMaxis O(n ln n). Proof The current solution is in level A i if it has i zeroes (hence n i ones) To reach a higher fitness level it is sufficient to flip a zero into a one and leave the other bits unchanged, which occurs with probability s i i 1 ( 1 1 ) n 1 i n n en

AFL method for upper bounds (1+1)-EA for OneMax Theorem The expected runtime of the (1+1)-EA for OneMaxis O(n ln n). Proof The current solution is in level A i if it has i zeroes (hence n i ones) To reach a higher fitness level it is sufficient to flip a zero into a one and leave the other bits unchanged, which occurs with probability s i i 1 ( 1 1 ) n 1 i n n en Then ( Artificial Fitness Levels ) : E(T ) m 1 i=1 s 1 i n i=1 en i m 1 1 e n e n (ln n + 1) = O(n ln n) i i=1 Is the (1+1)-EA quicker than n ln n?

AFL method for upper bounds (1+1)-EA lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n ln n). Proof Idea

AFL method for upper bounds (1+1)-EA lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n ln n). Proof Idea 1 At most n/2 one-bits are created during initialisation with probability at least 1/2 (By symmetry of the binomial distribution).

AFL method for upper bounds (1+1)-EA lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n ln n). Proof Idea 1 At most n/2 one-bits are created during initialisation with probability at least 1/2 (By symmetry of the binomial distribution). 2 There is a constant probability that in cn ln n steps one of the n/2 remaining zero-bits does not flip.

AFL method for upper bounds Lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n log n). Proof of 2. 1 1/n a given bit does not flip

AFL method for upper bounds Lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n log n). Proof of 2. 1 1/n a given bit does not flip (1 1/n) t a given bit does not flip in t steps

AFL method for upper bounds Lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n log n). Proof of 2. 1 1/n a given bit does not flip (1 1/n) t a given bit does not flip in t steps 1 (1 1/n) t it flips at least once in t steps

AFL method for upper bounds Lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n log n). Proof of 2. 1 1/n a given bit does not flip (1 1/n) t a given bit does not flip in t steps 1 (1 1/n) t it flips at least once in t steps (1 (1 1/n) t ) n/2 n/2 bits flip at least once in t steps

AFL method for upper bounds Lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n log n). Proof of 2. 1 1/n a given bit does not flip (1 1/n) t a given bit does not flip in t steps 1 (1 1/n) t it flips at least once in t steps (1 (1 1/n) t ) n/2 n/2 bits flip at least once in t steps 1 [1 (1 1/n) t ] n/2 at least one of the n/2 bits does not flip in t steps

AFL method for upper bounds Lower bound for OneMax Theorem (Droste,Jansen,Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n log n). Proof of 2. 1 1/n a given bit does not flip (1 1/n) t a given bit does not flip in t steps 1 (1 1/n) t it flips at least once in t steps (1 (1 1/n) t ) n/2 n/2 bits flip at least once in t steps 1 [1 (1 1/n) t ] n/2 at least one of the n/2 bits does not flip in t steps Set t = (n 1) log n. Then: 1 [1 (1 1/n) t ] n/2 = 1 [1 (1 1/n) (n 1) log n ] n/2 1 [1 (1/e) log n ] n/2 = 1 [1 1/n] n/2 = = 1 [1 1/n] n 1/2 1 (2e) 1/2 = c

AFL method for upper bounds Lower bound for OneMax(2) Theorem (Droste, Jansen, Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n log n). Proof 1 At most n/2 one-bits are created during initialisation with probability at least 1/2 (By symmetry of the binomial distribution). 2 There is a constant probability that in cn log n steps one of the n/2 remaining zero-bits does not flip.

AFL method for upper bounds Lower bound for OneMax(2) Theorem (Droste, Jansen, Wegener, 2002) The expected runtime of the (1+1)-EA for OneMaxis Ω(n log n). Proof 1 At most n/2 one-bits are created during initialisation with probability at least 1/2 (By symmetry of the binomial distribution). 2 There is a constant probability that in cn log n steps one of the n/2 remaining zero-bits does not flip. The Expected runtime is: E[T ] = t p(t) [(n 1) log n] p[t = (n 1) log n] t=1 [(n 1) log n] [(1/2) (1 (2e) 1/2 ) = Ω(n log n) First inequality: law of total probability The upper bound given by artificial fitness levels is indeed tight!

AFL method for upper bounds Artificial Fitness Levels Exercises: ( LeadingOnes(x) = ) n i i=1 j=1 x[j] Theorem The expected runtime of RLS for LeadingOnes is O(n 2 ).

AFL method for upper bounds Artificial Fitness Levels Exercises: ( LeadingOnes(x) = ) n i i=1 j=1 x[j] Theorem The expected runtime of RLS for LeadingOnes is O(n 2 ). Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 s i = 1 and s 1 n i = n E(T ) n 1 i=1 s 1 i = n i=1 n = O(n2 )

AFL method for upper bounds Artificial Fitness Levels Exercises: ( LeadingOnes(x) = ) n i i=1 j=1 x[j] Theorem The expected runtime of RLS for LeadingOnes is O(n 2 ). Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 s i = 1 and s 1 n i = n E(T ) n 1 i=1 s 1 i = n i=1 n = O(n2 ) Theorem The expected runtime of the (1+1)-EA for LeadingOnes is O(n 2 ).

AFL method for upper bounds Artificial Fitness Levels Exercises: ( LeadingOnes(x) = ) n i i=1 j=1 x[j] Theorem The expected runtime of RLS for LeadingOnes is O(n 2 ). Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 s i = 1 and s 1 n i = n E(T ) n 1 i=1 s 1 i = n i=1 n = O(n2 ) Theorem The expected runtime of the (1+1)-EA for LeadingOnes is O(n 2 ). Proof Left as Exercise.

AFL method for upper bounds Fitness Levels Advanced Exercises (Populations) Theorem The expected runtime of (1+λ)-EA for LeadingOnes is O(λn + n 2 ) [Jansen et al., 2005].

AFL method for upper bounds Fitness Levels Advanced Exercises (Populations) Theorem The expected runtime of (1+λ)-EA for LeadingOnes is O(λn + n 2 ) [Jansen et al., 2005]. Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 ( ) λ s i = 1 1 1 1 e λ/(en) en 1 s i 1 1 Case 1: λ en e 2 s i λ Case 2: λ < en 2en (( E(T ) λ n 1 n i=1 s 1 i λ i=1 ( ( )) O λ n + n2 = O(λ n + n 2 ) λ ) ( n 1 + c i=1 )) 2en = λ

AFL method for upper bounds Fitness Levels Advanced Exercises (Populations) Theorem The expected runtime of the (µ+1)-ea for LeadingOnes is O(µ n 2 ).

AFL method for upper bounds Fitness Levels Advanced Exercises (Populations) Theorem The expected runtime of the (µ+1)-ea for LeadingOnes is O(µ n 2 ). Proof Left as Exercise. Theorem The expected runtime of the (µ+1)-ea for OneMaxis O(µ n log n).

AFL method for upper bounds Fitness Levels Advanced Exercises (Populations) Theorem The expected runtime of the (µ+1)-ea for LeadingOnes is O(µ n 2 ). Proof Left as Exercise. Theorem The expected runtime of the (µ+1)-ea for OneMaxis O(µ n log n). Proof Left as Exercise.

AFL method for parent populations Artificial Fitness Levels for Populations D. Sudholt, Tutorial 2011 Let: T o be the expected time for a fraction χ(i) of the population to be in level A i s i be the probability to leave level A i for A j with j > i given χ(i) in level A i Then: E(T ) m 1 i=1 ( ) 1 + T o s i

AFL method for parent populations Applications to (µ+1)-ea Theorem The expected runtime of (µ+1)-ea for LeadingOnes is O(µn log n + n 2 ) [Witt, 2006].

AFL method for parent populations Applications to (µ+1)-ea Theorem The expected runtime of (µ+1)-ea for LeadingOnes is O(µn log n + n 2 ) [Witt, 2006]. Proof Let partition A i contain search points with exactly i leading ones

AFL method for parent populations Applications to (µ+1)-ea Theorem The expected runtime of (µ+1)-ea for LeadingOnes is O(µn log n + n 2 ) [Witt, 2006]. Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 of the best individual

AFL method for parent populations Applications to (µ+1)-ea Theorem The expected runtime of (µ+1)-ea for LeadingOnes is O(µn log n + n 2 ) [Witt, 2006]. Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 of the best individual We set χ(i) = n/ ln n

AFL method for parent populations Applications to (µ+1)-ea Theorem The expected runtime of (µ+1)-ea for LeadingOnes is O(µn log n + n 2 ) [Witt, 2006]. Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 of the best individual We set χ(i) = n/ ln n Given j copies of the best individual another replica is created with probability j µ ( 1 1 n ) n j 2eµ

AFL method for parent populations Applications to (µ+1)-ea Theorem The expected runtime of (µ+1)-ea for LeadingOnes is O(µn log n + n 2 ) [Witt, 2006]. Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 of the best individual We set χ(i) = n/ ln n Given j copies of the best individual another replica is created with probability j µ T o n/ ln n j=1 ( 1 1 n 2eµ j ) n j 2eµ 2eµ ln n

AFL method for parent populations Applications to (µ+1)-ea Theorem The expected runtime of (µ+1)-ea for LeadingOnes is O(µn log n + n 2 ) [Witt, 2006]. Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 of the best individual We set χ(i) = n/ ln n Given j copies of the best individual another replica is created with probability j µ T o n/ ln n ( 1 1 n ) n j 2eµ 2eµ j=1 2eµ ln n j n/ ln n 1 1 s i µ en = 1 Case 1: µ > n eµ ln n ln n n/ ln n 2 1 s i µ en 1 Case 2: µ n en ln n

AFL method for parent populations Applications to (µ+1)-ea Theorem The expected runtime of (µ+1)-ea for LeadingOnes is O(µn log n + n 2 ) [Witt, 2006]. Proof Let partition A i contain search points with exactly i leading ones To leave level A i it suffices to flip the zero at position i + 1 of the best individual We set χ(i) = n/ ln n Given j copies of the best individual another replica is created with probability j µ T o n/ ln n ( 1 1 n ) n j 2eµ 2eµ j=1 2eµ ln n j n/ ln n 1 1 s i µ en = 1 Case 1: µ > n eµ ln n ln n n/ ln n 2 1 s i µ en 1 Case 2: µ n en ln n E(T ) n 1 i=1 (To + s 1 i ) ( n i=1 2eµ ln n + ( en + eµ ln n )) = ( n 2eµ ln n + ( en + eµ ln n )) = O(nµ ln n + n 2 )

AFL method for parent populations Populations Fitness Levels: Exercise Theorem The expected runtime of the (µ+1)-ea for OneMaxis O(µn + n log n).

AFL method for parent populations Populations Fitness Levels: Exercise Theorem The expected runtime of the (µ+1)-ea for OneMaxis O(µn + n log n). Proof Left as Exercise.

AFL for lower bounds Advanced: Fitness Levels for Lower Bounds [Sudholt, 2010] u i := probability to leave level A i; γ i,j := probability of jumping from A i to A j.

AFL for lower bounds Advanced: Fitness Levels for Lower Bounds [Sudholt, 2010] u i := probability to leave level A i; γ i,j := probability of jumping from A i to A j. By showing that with high probability the (1+1)-EA does not skip too many levels, then it can be proven that the runtime for OneMax is at least en ln n + O(n).

AFL for lower bounds Advanced: Fitness Levels for Populations and Crossover [Corus and Oliveto, 2017] Theorem The expected runtime of the (µ+1)-ga with µ 3 and mutation rate c/n for any constant c on OneMax is: E[T ] 3ec n log n c(3 + c) + O(nµ log µ). For µ = o(log n/ log log n), the bound reduces to: ( ) 3 E[T ] c(3 + c) ec n log n 1 + o(1).

AFL for lower bounds Advanced: Fitness Levels for Populations and Crossover [Corus and Oliveto, 2017] Theorem The expected runtime of the (µ+1)-ga with µ 3 and mutation rate c/n for any constant c on OneMax is: E[T ] 3ec n log n c(3 + c) + O(nµ log µ). For µ = o(log n/ log log n), the bound reduces to: ( ) 3 E[T ] c(3 + c) ec n log n 1 + o(1). 1 Mutation rate 1/n: E[T ] 3/4 en log n(1 + o(1)) (GA) versus E[T ] e n log n(1 + o(1)) (no crossover);

AFL for lower bounds Advanced: Fitness Levels for Populations and Crossover [Corus and Oliveto, 2017] Theorem The expected runtime of the (µ+1)-ga with µ 3 and mutation rate c/n for any constant c on OneMax is: E[T ] 3ec n log n c(3 + c) + O(nµ log µ). For µ = o(log n/ log log n), the bound reduces to: ( ) 3 E[T ] c(3 + c) ec n log n 1 + o(1). 1 Mutation rate 1/n: E[T ] 3/4 en log n(1 + o(1)) (GA) versus E[T ] e n log n(1 + o(1)) (no crossover); 2 Higher mutation rates may be beneficial: E[T ] 0.72 e n log n(1 + o(1)) 1.3/n;

AFL for lower bounds Advanced: Fitness Levels for Populations and Crossover [Corus and Oliveto, 2017] Theorem The expected runtime of the (µ+1)-ga with µ 3 and mutation rate c/n for any constant c on OneMax is: E[T ] 3ec n log n c(3 + c) + O(nµ log µ). For µ = o(log n/ log log n), the bound reduces to: ( ) 3 E[T ] c(3 + c) ec n log n 1 + o(1). 1 Mutation rate 1/n: E[T ] 3/4 en log n(1 + o(1)) (GA) versus E[T ] e n log n(1 + o(1)) (no crossover); 2 Higher mutation rates may be beneficial: E[T ] 0.72 e n log n(1 + o(1)) 1.3/n; 3 Populations may be beneficial: for µ = 2 the bound is E[T ] 4/5 e n log n(1 + o(1)).

AFL for lower bounds Proof Idea [Corus and Oliveto, 2017] We divide the search space in canonical fitness levels L i = {x {0, 1} n OneMax(x) = i};

AFL for lower bounds Proof Idea [Corus and Oliveto, 2017] We divide the search space in canonical fitness levels L i = {x {0, 1} n OneMax(x) = i}; Each level i is represented by a Markov Chain (and all individuals are at least in L i);

AFL for lower bounds Proof Idea [Corus and Oliveto, 2017] We divide the search space in canonical fitness levels L i = {x {0, 1} n OneMax(x) = i}; Each level i is represented by a Markov Chain (and all individuals are at least in L i); The runtime is upper bounded by the time it takes to discover the next level E[L i]+ the time it takes for the entire population to take over the level (E[T takeover ] = O(µ log µ)).

AFL for lower bounds Proof Idea [Corus and Oliveto, 2017] We divide the search space in canonical fitness levels L i = {x {0, 1} n OneMax(x) = i}; Each level i is represented by a Markov Chain (and all individuals are at least in L i); The runtime is upper bounded by the time it takes to discover the next level E[L i]+ the time it takes for the entire population to take over the level (E[T takeover ] = O(µ log µ)).

AFL for lower bounds Proof Idea [Corus and Oliveto, 2017] We divide the search space in canonical fitness levels L i = {x {0, 1} n OneMax(x) = i}; Each level i is represented by a Markov Chain (and all individuals are at least in L i); The runtime is upper bounded by the time it takes to discover the next level E[L i]+ the time it takes for the entire population to take over the level (E[T takeover ] = O(µ log µ)). n 1 ( ) E[T ] E[L i] + E[T takeover ] i=0

AFL for lower bounds Advanced: Fitness Levels for non-elitist Populations [Lehre, 2011] See the Oliveto, Lehre Tutorial at GECCO 2017 in Berlin!

AFL for lower bounds Artificial Fitness Levels: Conclusions It s a powerful general method to obtain (often) tight upper bounds on the runtime of simple EAs; For offspring populations tight bounds can often be achieved with the general method; For parent populations takeover times have to be introduced; For detailed analysis of crossover Markov chains have to be introduced; Recent methods have been presented to deal with non-elitism and for lower bounds.

What is Drift 1 Analysis? 1 NB! (Stochastic) drift is a different concept than genetic drift in population genetics.

What is Drift 1 Analysis? Prediction of the long term behaviour of a process X hitting time, stability, occupancy time etc. from properties of. 1 NB! (Stochastic) drift is a different concept than genetic drift in population genetics.

Drift Analysis: Example 1 Friday night dinner at the restaurant. Peter walks back from the restaurant to the hotel. The restaurant is n meters away from the hotel; Peter moves towards the hotel of 1 meter in each step Question How many steps does Peter need to reach his hotel?

Drift Analysis: Example 1 Friday night dinner at the restaurant. Peter walks back from the restaurant to the hotel. The restaurant is n meters away from the hotel; Peter moves towards the hotel of 1 meter in each step Question How many steps does Peter need to reach his hotel? n steps

Drift Analysis: Formalisation Define a distance function d(x) to measure the distance from the hotel; d(x) = x, x {0,..., n} (In our case the distance is simply the number of metres from the hotel). Estimate the expected speed (drift), the expected decrease in distance in one step from the goal; { 0, if X t = 0, d(x t) d(x t+1) = 1, if X t {1,..., n} Time Then the expected time to reach the hotel (goal) is: E(T ) = maximum distance = n drift 1 = n

Drift Analysis: Example 2 Friday night dinner at the restaurant. Peter walks back from the restaurant to the hotel but had a few drinks. The restaurant is n meters away from the hotel; Peter moves towards the hotel of 1 meter in each step with probability 0.6. Peter moves away from the hotel of 1 meter in each step with probability 0.4. Question How many steps does Peter need to reach his hotel?

Drift Analysis: Example 2 Friday night dinner at the restaurant. Peter walks back from the restaurant to the hotel but had a few drinks. The restaurant is n meters away from the hotel; Peter moves towards the hotel of 1 meter in each step with probability 0.6. Peter moves away from the hotel of 1 meter in each step with probability 0.4. Question How many steps does Peter need to reach his hotel? 5n steps Let us calculate this through drift analysis.

Drift Analysis (2): Formalisation Define the same distance function d(x) as before to measure the distance from the hotel; d(x) = x, x {0,..., n} (simply the number of metres from the hotel). Estimate the expected speed (drift), the expected decrease in distance in one step from the goal; 0, if X t = 0, d(x t) d(x t+1) = 1, if X t {1,..., n}with probability 0.6 1, if X t {1,..., n}with probability 0.4 The expected dicrease in distance (drift) is: E[d(X t) d(x t+1)] = 0.6 1 + 0.4 ( 1) = 0.6 0.4 = 0.2 Time Then the expected time to reach the hotel (goal) is: E(T ) = maximum distance drift = n 0.2 = 5n

Additive Drift Theorem Additive Drift Theorem Theorem (Additive Drift Theorem for Upper Bounds [He and Yao, 2001]) Let {X t} t 0 be a Markov process over a set of states S, and d : S R + 0 a function that assigns a non-negative real number to every state. Let the time to reach the optimum be T := min{t 0 : d(x t) = 0}. If there exists δ > 0 such that at any time step t 0 and at any state X t > 0 the following condition holds: E( (t) d(x t) > 0) = E(d(X t) d(x t+1) d(x t) > 0) δ (1) then and E(T d(x 0) > 0) d(x0) δ (2) E(T ) E(d(X0)). (3) δ

Additive Drift Theorem Drift Analysis for Leading Ones Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is O(n 2 ) Proof

Additive Drift Theorem Drift Analysis for Leading Ones Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is O(n 2 ) Proof 1 Let d(x t) = i where i is the number of missing leading ones;

Additive Drift Theorem Drift Analysis for Leading Ones Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is O(n 2 ) Proof 1 Let d(x t) = i where i is the number of missing leading ones; 2 The negative drift is 0 since if a leading one is removed from the current solution the new point will not be accepted;

Additive Drift Theorem Drift Analysis for Leading Ones Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is O(n 2 ) Proof 1 Let d(x t) = i where i is the number of missing leading ones; 2 The negative drift is 0 since if a leading one is removed from the current solution the new point will not be accepted; 3 A positive drift (i.e. of length 1) is achieved as long as the first 0 is flipped and the leading ones are remained unchanged: n i E( + (t)) = k (p( + (t)) = k) 1 1/n (1 1/n) n 1 1/(en) k=1

Additive Drift Theorem Drift Analysis for Leading Ones Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is O(n 2 ) Proof 1 Let d(x t) = i where i is the number of missing leading ones; 2 The negative drift is 0 since if a leading one is removed from the current solution the new point will not be accepted; 3 A positive drift (i.e. of length 1) is achieved as long as the first 0 is flipped and the leading ones are remained unchanged: n i E( + (t)) = k (p( + (t)) = k) 1 1/n (1 1/n) n 1 1/(en) k=1 4 Hence, E[ (t) d(x t)] 1/(en) = δ

Additive Drift Theorem Drift Analysis for Leading Ones Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is O(n 2 ) Proof 1 Let d(x t) = i where i is the number of missing leading ones; 2 The negative drift is 0 since if a leading one is removed from the current solution the new point will not be accepted; 3 A positive drift (i.e. of length 1) is achieved as long as the first 0 is flipped and the leading ones are remained unchanged: n i E( + (t)) = k (p( + (t)) = k) 1 1/n (1 1/n) n 1 1/(en) k=1 4 Hence, E[ (t) d(x t)] 1/(en) = δ 5 The expected runtime is (i.e. Eq. (6)): E(T d(x 0) > 0) d(x0) δ n 1/(en) = e n2 = O(n 2 )

Additive Drift Theorem Exercises Theorem The expected time for RLS to optimise LeadingOnes is O(n 2 ) Proof

Additive Drift Theorem Exercises Theorem The expected time for RLS to optimise LeadingOnes is O(n 2 ) Proof Left as exercise. Theorem Let λ en. Then the expected time for the (1+λ)-EA to optimise LeadingOnes is O(λn) Proof

Additive Drift Theorem Exercises Theorem The expected time for RLS to optimise LeadingOnes is O(n 2 ) Proof Left as exercise. Theorem Let λ en. Then the expected time for the (1+λ)-EA to optimise LeadingOnes is O(λn) Proof Left as exercise. Theorem Let λ < en. Then the expected time for the (1+λ)-EA to optimise LeadingOnes is O(n 2 ) Proof

Additive Drift Theorem Exercises Theorem The expected time for RLS to optimise LeadingOnes is O(n 2 ) Proof Left as exercise. Theorem Let λ en. Then the expected time for the (1+λ)-EA to optimise LeadingOnes is O(λn) Proof Left as exercise. Theorem Let λ < en. Then the expected time for the (1+λ)-EA to optimise LeadingOnes is O(n 2 ) Proof Left as exercise.

Additive Drift Theorem (1,λ)-EA Analysis for LeadingOnes Theorem Let λ = n. Then the expected time for the (1,λ)-EA to optimise LeadingOnes is O(n 2 ) Proof

Additive Drift Theorem (1,λ)-EA Analysis for LeadingOnes Theorem Let λ = n. Then the expected time for the (1,λ)-EA to optimise LeadingOnes is O(n 2 ) Proof Distance: let d(x) = n i where i is the number of leading ones; Drift: E[d(X t) d(x t+1) d(x t) = n i] ( ( 1 1 1 1 ) λ ) n en = c 1 n c n 2 = Ω(1) ( 1 ( 1 1 ) n ) λ n Hence, and, E(generations) max distance drift = n Ω(1) = O(n) E(T ) n E(generations) = O(n 2 )

Additive Drift Theorem Additive Drift Theorem Theorem (Additive Drift Theorem for Lower Bounds [He and Yao, 2004]) Let {X t} t 0 be a Markov process over a set of states S, and d : S R + 0 a function that assigns a non-negative real number to every state. Let the time to reach the optimum be T := min{t 0 : d(x t) = 0}. If there exists δ > 0 such that at any time step t 0 and at any state X t > 0 the following condition holds: E( (t) d(x t) > 0) = E(d(X t) d(x t+1) d(x t) > 0) δ (4) then and E(T X 0 > 0) d(x0) δ (5) E(T ) E(d(X0)). (6) δ

Additive Drift Theorem Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ).

Additive Drift Theorem Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). Sources of progress 1 Flipping the leftmost zero-bit; 2 Bits to right of the leftmost zero-bit that are one-bits (free riders). Proof

Additive Drift Theorem Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). Sources of progress 1 Flipping the leftmost zero-bit; 2 Bits to right of the leftmost zero-bit that are one-bits (free riders). Proof 1 Let the current solution have n i leading ones (i.e. 1 n i 0 ).

Additive Drift Theorem Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). Sources of progress 1 Flipping the leftmost zero-bit; 2 Bits to right of the leftmost zero-bit that are one-bits (free riders). Proof 1 Let the current solution have n i leading ones (i.e. 1 n i 0 ). 2 We define the distance function as the number of missing leading ones, i.e. d(x) = i.

Additive Drift Theorem Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). Sources of progress 1 Flipping the leftmost zero-bit; 2 Bits to right of the leftmost zero-bit that are one-bits (free riders). Proof 1 Let the current solution have n i leading ones (i.e. 1 n i 0 ). 2 We define the distance function as the number of missing leading ones, i.e. d(x) = i. 3 The n i + 1 bit is a zero;

Additive Drift Theorem Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). Sources of progress 1 Flipping the leftmost zero-bit; 2 Bits to right of the leftmost zero-bit that are one-bits (free riders). Proof 1 Let the current solution have n i leading ones (i.e. 1 n i 0 ). 2 We define the distance function as the number of missing leading ones, i.e. d(x) = i. 3 The n i + 1 bit is a zero; 4 let E[Y ] be the expected number of one-bits after the first zero (i.e. the free riders).

Additive Drift Theorem Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). Sources of progress 1 Flipping the leftmost zero-bit; 2 Bits to right of the leftmost zero-bit that are one-bits (free riders). Proof 1 Let the current solution have n i leading ones (i.e. 1 n i 0 ). 2 We define the distance function as the number of missing leading ones, i.e. d(x) = i. 3 The n i + 1 bit is a zero; 4 let E[Y ] be the expected number of one-bits after the first zero (i.e. the free riders). 5 Such i 1 bits are uniformely distributed at initialisation and still are!

Additive Drift Theorem Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). Sources of progress 1 Flipping the leftmost zero-bit; 2 Bits to right of the leftmost zero-bit that are one-bits (free riders). Proof 1 Let the current solution have n i leading ones (i.e. 1 n i 0 ). 2 We define the distance function as the number of missing leading ones, i.e. d(x) = i. 3 The n i + 1 bit is a zero; 4 let E[Y ] be the expected number of one-bits after the first zero (i.e. the free riders). 5 Such i 1 bits are uniformely distributed at initialisation and still are!

Additive Drift Theorem Drift Theorem for LeadingOnes (lower bound) Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). The expected number of free riders is: i 1 i 1 i 1 E[Y ] = k P r(y = k) = P r(y k) = (1/2) k 1 k=1 k=1 k=1

Additive Drift Theorem Drift Theorem for LeadingOnes (lower bound) Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). The expected number of free riders is: i 1 i 1 i 1 E[Y ] = k P r(y = k) = P r(y k) = (1/2) k 1 k=1 The negative drift is 0; k=1 k=1

Additive Drift Theorem Drift Theorem for LeadingOnes (lower bound) Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). The expected number of free riders is: i 1 i 1 i 1 E[Y ] = k P r(y = k) = P r(y k) = (1/2) k 1 k=1 k=1 The negative drift is 0; Let p(a) be the probability that the first zero-bit flips into a one-bit. k=1

Additive Drift Theorem Drift Theorem for LeadingOnes (lower bound) Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). The expected number of free riders is: i 1 i 1 i 1 E[Y ] = k P r(y = k) = P r(y k) = (1/2) k 1 k=1 k=1 The negative drift is 0; Let p(a) be the probability that the first zero-bit flips into a one-bit. The positive drift (i.e. the decrease in distance) is bounded as follows: k=1 E( + (t)) p(a) E[ + (t) A] = 1/n (1 + E[Y ]) 2/n = δ

Additive Drift Theorem Drift Theorem for LeadingOnes (lower bound) Theorem The expected time for the (1+1)-EA to optimise LeadingOnes is Ω(n 2 ). The expected number of free riders is: i 1 i 1 i 1 E[Y ] = k P r(y = k) = P r(y k) = (1/2) k 1 k=1 k=1 The negative drift is 0; Let p(a) be the probability that the first zero-bit flips into a one-bit. The positive drift (i.e. the decrease in distance) is bounded as follows: k=1 E( + (t)) p(a) E[ + (t) A] = 1/n (1 + E[Y ]) 2/n = δ Since, also at initialisation the expected number of free riders is less than 1, it follows that E[d(X 0)] n 1, By applying the Drift Theorem we get E(T ) E(d(X0) δ = n 1 2/n = Ω(n2 )

Multiplicative Drift Theorem Drift Analysis for OneMax Lets calculate the runtime of the (1+1)-EA using the additive Drift Theorem. 1 Let d(x t) = i where i is the number of zeroes in the bitstring;

Multiplicative Drift Theorem Drift Analysis for OneMax Lets calculate the runtime of the (1+1)-EA using the additive Drift Theorem. 1 Let d(x t) = i where i is the number of zeroes in the bitstring; 2 The negative drift is 0 since solution with less one-bits will not be accepted;

Multiplicative Drift Theorem Drift Analysis for OneMax Lets calculate the runtime of the (1+1)-EA using the additive Drift Theorem. 1 Let d(x t) = i where i is the number of zeroes in the bitstring; 2 The negative drift is 0 since solution with less one-bits will not be accepted; 3 A positive drift is achieved as long as a 0 is flipped and the ones remain unchanged: E( (t)) = E[d(X t) d(x t+1) d(x t) = i] 1 i ( 1 1 ) n 1 i n n en 1 en := δ

Multiplicative Drift Theorem Drift Analysis for OneMax Lets calculate the runtime of the (1+1)-EA using the additive Drift Theorem. 1 Let d(x t) = i where i is the number of zeroes in the bitstring; 2 The negative drift is 0 since solution with less one-bits will not be accepted; 3 A positive drift is achieved as long as a 0 is flipped and the ones remain unchanged: E( (t)) = E[d(X t) d(x t+1) d(x t) = i] 1 i ( 1 1 ) n 1 i n n en 1 en := δ 4 The expected initial distance is E(d(X 0)) = n/2 The expected runtime is (i.e. Eq. (6)): E(T d(x 0) > 0) E[(d(X0)] δ We need a different distance function! n/2 1/(en) = e/2 n2 = O(n 2 )

Multiplicative Drift Theorem Drift Analysis for OneMax 1 Let g(x t) = ln(i + 1) where i is the number of zeroes in the bitstring;

Multiplicative Drift Theorem Drift Analysis for OneMax 1 Let g(x t) = ln(i + 1) where i is the number of zeroes in the bitstring; 2 For x 1, it holds that ln(1 + 1/x) 1/x 1/(2x 2 ) 1/(2x);

Multiplicative Drift Theorem Drift Analysis for OneMax 1 Let g(x t) = ln(i + 1) where i is the number of zeroes in the bitstring; 2 For x 1, it holds that ln(1 + 1/x) 1/x 1/(2x 2 ) 1/(2x); 3 The distance decreases as long as a 0 is flipped and the ones remain unchanged: E( (t)) = E[d(X t) d(x t+1) d(x t) = i 1] i ( ( ) i ln(i + 1) ln(i) = en en ln 1 + 1 ) i 1 i en 2i = 1 2en := δ

Multiplicative Drift Theorem Drift Analysis for OneMax 1 Let g(x t) = ln(i + 1) where i is the number of zeroes in the bitstring; 2 For x 1, it holds that ln(1 + 1/x) 1/x 1/(2x 2 ) 1/(2x); 3 The distance decreases as long as a 0 is flipped and the ones remain unchanged: E( (t)) = E[d(X t) d(x t+1) d(x t) = i 1] i ( ( ) i ln(i + 1) ln(i) = en en ln 1 + 1 ) i 1 i en 2i = 1 2en := δ 4 The initial distance is d(x 0) ln(n + 1) The expected runtime is (i.e. Eq. (6)): E(T d(x 0) > 0) d(x0) δ ln(n + 1) 1/(2en) = O(n ln n) If the amount of progress depends on the distance from the optimum we need to use a logarithmic distance!

Multiplicative Drift Theorem Multiplicative Drift Theorem Theorem (Multiplicative Drift, [Doerr et al., 2010]) Let {X t} t N0 be random variables describing a Markov process over a finite state space S R. Let T be the random variable that denotes the earliest point in time t N 0 such that X t = 0. If there exist δ, c min, c max > 0 such that 1 E[X t X t+1 X t] δx t and 2 c min X t c max, for all t < T, then E[T ] 2 ( ) δ ln 1 + cmax c min

Multiplicative Drift Theorem (1+1)-EA Analysis for OneMax Theorem The expected time for the (1+1)-EA to optimise OneMaxis O(n ln n) Proof

Multiplicative Drift Theorem (1+1)-EA Analysis for OneMax Theorem The expected time for the (1+1)-EA to optimise OneMaxis O(n ln n) Proof Hence, Distance: let X t be the number of zeroes at time step t; E[X t+1 X t] X t 1 Xt = en Xt (1 ) 1 en E[X t X t+1 X t] X t X t (1 ) 1 en = X t (δ = 1 ) en en 1 = c min X t c max = n E[T ] 2 ( ) δ ln 1 + cmax = 2en ln(1 + n) = O(n ln n) c min

Multiplicative Drift Theorem Exercises Theorem The expected time for RLS to optimise OneMaxis O(n log n) Proof

Multiplicative Drift Theorem Exercises Theorem The expected time for RLS to optimise OneMaxis O(n log n) Proof Left as exercise. Theorem Let λ en. Then the expected time for the (1+λ)-EA to optimise OneMaxis O(λn) Proof

Multiplicative Drift Theorem Exercises Theorem The expected time for RLS to optimise OneMaxis O(n log n) Proof Left as exercise. Theorem Let λ en. Then the expected time for the (1+λ)-EA to optimise OneMaxis O(λn) Proof Left as exercise. Theorem Let λ < en. Then the expected time for the (1+λ)-EA to optimise OneMaxis O(n log n) Proof

Multiplicative Drift Theorem Exercises Theorem The expected time for RLS to optimise OneMaxis O(n log n) Proof Left as exercise. Theorem Let λ en. Then the expected time for the (1+λ)-EA to optimise OneMaxis O(λn) Proof Left as exercise. Theorem Let λ < en. Then the expected time for the (1+λ)-EA to optimise OneMaxis O(n log n) Proof Left as exercise.

Simplified Negative Drift Theorem Drift Analysis: Example 3 Friday night dinner at the restaurant. Peter walks back from the restaurant to the hotel but had too many drinks. The restaurant is n meters away from the hotel; Peter moves towards the hotel of 1 meter in each step with probability 0.4. Peter moves away from the hotel of 1 meter in each step with probability 0.6. Question How many steps does Peter need to reach his hotel?

Simplified Negative Drift Theorem Drift Analysis: Example 3 Friday night dinner at the restaurant. Peter walks back from the restaurant to the hotel but had too many drinks. The restaurant is n meters away from the hotel; Peter moves towards the hotel of 1 meter in each step with probability 0.4. Peter moves away from the hotel of 1 meter in each step with probability 0.6. Question How many steps does Peter need to reach his hotel? at least 2 cn steps with overwhelming probability (exponential time) We need Negative-Drift Analysis.

Simplified Negative Drift Theorem Simplified Drift Theorem drift away from target target a b no large jumps towards target start Theorem (Simplified Negative-Drift Theorem, [Oliveto and Witt, 2011]). Suppose there exist three constants δ,ɛ,r such that for all t 0: 1 E( t(i)) ɛ for a < i < b, 2 Prob( t(i) = j) Then 1 (1+δ) j r for i > a and j 1. Prob(T 2 c (b a) ) = 2 Ω(b a)

Simplified Negative Drift Theorem Negative-Drift Analysis: Example (3) Define the same distance function d(x) = x, x {0,..., n} (metres from the hotel) (b=n-1, a=1).

Simplified Negative Drift Theorem Negative-Drift Analysis: Example (3) Define the same distance function d(x) = x, x {0,..., n} (metres from the hotel) (b=n-1, a=1). Estimate the increase in distance from the goal (negative drift); 0, if X t = 0, d(x t+1) d(x t) = 1, if X t {1,..., n}with probability 0.6 1, if X t {1,..., n}with probability 0.4

Simplified Negative Drift Theorem Negative-Drift Analysis: Example (3) Define the same distance function d(x) = x, x {0,..., n} (metres from the hotel) (b=n-1, a=1). Estimate the increase in distance from the goal (negative drift); 0, if X t = 0, d(x t+1) d(x t) = 1, if X t {1,..., n}with probability 0.6 1, if X t {1,..., n}with probability 0.4 The expected increase in distance (negative drift) is: (Condition 1) E[d(X t+1) d(x t)] = 0.6 1 + 0.4 ( 1) = 0.6 0.4 = 0.2

Simplified Negative Drift Theorem Negative-Drift Analysis: Example (3) Define the same distance function d(x) = x, x {0,..., n} (metres from the hotel) (b=n-1, a=1). Estimate the increase in distance from the goal (negative drift); 0, if X t = 0, d(x t+1) d(x t) = 1, if X t {1,..., n}with probability 0.6 1, if X t {1,..., n}with probability 0.4 The expected increase in distance (negative drift) is: (Condition 1) E[d(X t+1) d(x t)] = 0.6 1 + 0.4 ( 1) = 0.6 0.4 = 0.2 Probability of jumps (i.e. Prob( t(i) = j) δ = r = 1) (Condition 2): P r( t(i) = j) = 1 (1+δ) j r ) (set { 0 < (1/2) j 1, if j > 1, 0.6 < (1/2) 0 = 1, if j = 1

Simplified Negative Drift Theorem Negative-Drift Analysis: Example (3) Define the same distance function d(x) = x, x {0,..., n} (metres from the hotel) (b=n-1, a=1). Estimate the increase in distance from the goal (negative drift); 0, if X t = 0, d(x t+1) d(x t) = 1, if X t {1,..., n}with probability 0.6 1, if X t {1,..., n}with probability 0.4 The expected increase in distance (negative drift) is: (Condition 1) E[d(X t+1) d(x t)] = 0.6 1 + 0.4 ( 1) = 0.6 0.4 = 0.2 Probability of jumps (i.e. Prob( t(i) = j) δ = r = 1) (Condition 2): P r( t(i) = j) = 1 (1+δ) j r ) (set { 0 < (1/2) j 1, if j > 1, 0.6 < (1/2) 0 = 1, if j = 1 Then the expected time to reach the hotel (goal) is: P r(t 2 c(b a) ) = P r(t 2 c(n 2) ) = 2 Ω(n)

Simplified Negative Drift Theorem Needle in a Haystack Theorem (Oliveto,Witt, Algorithmica 2011) Let η > 0 be constant. Then there is a constant c > 0 such that with probability 1 2 Ω(n) the (1+1)-EA on Needle creates only search points with at most n/2 + ηn ones in 2 cn steps.

Simplified Negative Drift Theorem Needle in a Haystack Theorem (Oliveto,Witt, Algorithmica 2011) Let η > 0 be constant. Then there is a constant c > 0 such that with probability 1 2 Ω(n) the (1+1)-EA on Needle creates only search points with at most n/2 + ηn ones in 2 cn steps. Proof Idea By Chernoff bounds the probability that the initial bit string has less than n/2 γn zeroes is e Ω(n). we set b := n/2 γn and a := n/2 2γn where γ := η/2 (we have i zero-bits and n i one-bits); Proof of Condition 1 E( (i)) = n i n Proof of Condition 2 ( ) ( n 1 P rob( (i) j) j n i n = n 2i n ) j nj j! This proves Condition 2 by setting δ = r = 1. 2γ = ɛ ( ) j 1 = 1 n j! ( ) j 1 1 2

Simplified Negative Drift Theorem Exercise: Trap Functions { n + 1 if x = 0 n Trap(x) = OneMax(x) otherwise. f(x) n + 1 n 3 2 1 0 1 2 3 n ones(x)

Simplified Negative Drift Theorem Exercise: Trap Functions { n + 1 if x = 0 n Trap(x) = OneMax(x) otherwise. f(x) n + 1 n 3 2 1 0 1 2 3 n ones(x) Theorem With overwhelming probability at least 1 2 Ω(n) the (1+1)-EA requires 2 Ω(n) steps to optimise Trap. Proof Left as exercise.

Simplified Negative Drift Theorem Drift Analysis Conclusion Overview Additive Drift Analysis (upper and lower bounds); Multiplicative Drift Analysis; Simplified Negative-Drift Theorem; Advanced Lower bound Drift Techniques Drift Analysis for Stochastic Populations (mutation) [Lehre, 2010]; Simplified Drift Theorem combined with bandwidth analysis (mutation + crossover stochastic populations = GAs) [Oliveto and Witt, 2012]; (See Oliveto,Lehre Tutorial at GECCO 2017 in Berlin)

Overview Final Overview Overview Basic Probability Theory Tail Inequalities Artificial Fitness Levels Drift Analysis Other Techniques (Not covered) Family Trees [Witt, 2006] Gambler s Ruin & Martingales [Jansen and Wegener, 2001]

State-of-the-art Not only toy problems... MST (1+1) EA Θ(m 2 log(nwmax)) (1+λ) EA O(n log(nwmax)) 1-ANT O(mn log(nwmax)) Max. Clique (1+1) EA Θ(n 5 ) (rand. planar) (16n+1) RLS Θ(n 5/3 ) Eulerian Cycle (1+1) EA Θ(m 2 log m) Partition (1+1) EA 4/3 approx., competitive avg. Vertex Cover (1+1) EA e Ω(n), arb. bad approx. Set Cover (1+1) EA e Ω(n), arb. bad approx. SEMO Pol. O(log n)-approx. Intersection of (1+1) EA 1/p-approximation in p 3 matroids O( E p+2 log( E wmax)) UIO/FSM conf. (1+1) EA e Ω(n) See [Oliveto et al., 2007] for an overview.

Further reading Further Reading [Neumann and Witt, 2010, Auger and Doerr, 2011, Jansen, 2013]