Optimisation Origin and definition of fitness landscape Position and goal

1. Basis of fitness landscape landscape analysis for understanding and designing local search heuristics

Sebastien´ Verel

LISIC - Universit´edu Littoral Cˆoted’Opale, Calais, France http://www-lisic.univ-littoral.fr/~verel/

The 51st CREST Open Workshop Tutorial on Landscape Analysis University College London

27th, February, 2017 Optimisation Origin and definition of fitness landscape Position and goal Outline of this part

Basis of fitness landscape : introductory example (Done) brief history and background of fitness landscape fundamental definitions Optimisation Origin and definition of fitness landscape Position and goal Mono-objective Optimization

Search space : set of candidate solutions X Objective fonction : quality criterion (or non-quality) f : X → IR

X discrete : combinatorial optimization X ⊂ IRn : numerical optimization

Solve an optimization problem (maximization)

? X = argmaxX f or find an approximation of X ?. Optimisation Origin and definition of fitness landscape Position and goal Context : black-box optimization

x −→ −→ f (x)

No information on the objective definition function f

Objective fonction : can be irregular, non continuous, non differentiable, etc. given by a computation or a simulation Optimisation Origin and definition of fitness landscape Position and goal Real-world black-box optimization : first example PhD of Mathieu Muniglia, Saclay Nuclear Research Centre (CEA), Paris

x −→ −→ f (x)

(73,..., 8) −→ −→ ∆z P

Multi-physic simulator Optimisation Origin and definition of fitness landscape Position and goal Search algorithms

Principle Enumeration of the search space

A lot of ways to enumerate the search space Using exact method : A?, Branch&Bound, etc. Using random sampling : Monte Carlo technics, approx. with guarantees, etc.

Local search technics : Optimisation Origin and definition of fitness landscape Position and goal Metaheuristics Local search methods using neighborhood relation

Single solution-based : Hill-climbing technics, Simulated-annealing, tabu search, Iterative Local Search, etc. Population solution-based : , Genetic programming, Ant colony optimization, etc. Optimisation Origin and definition of fitness landscape Position and goal Stochatic algorithms with unique solution (Local Search)

S set of candidate solutions (search space) f : X → IR objective function N (x) set of neighbor’s solutions of x Optimisation Origin and definition of fitness landscape Position and goal Main idea behind local search algorithm

Why using a local search strategy based on neighborhood ? Optimisation Origin and definition of fitness landscape Position and goal Main idea behind local search algorithm

Why using a local search strategy based on neighborhood ? Risk : do not find optimal solution

Optimisation Origin and definition of fitness landscape Position and goal Main idea behind local search algorithm

Why using a local search strategy based on neighborhood ?

Arrival Start

Split the global problem into a sequence of local problems (smaller)

Benefit : reduce the complexity Optimisation Origin and definition of fitness landscape Position and goal Main idea behind local search algorithm

Why using a local search strategy based on neighborhood ?

global optimum

Arrival Start

Split the global problem into a sequence of local problems (smaller)

Benefit : reduce the complexity Risk : do not find optimal solution Optimisation Origin and definition of fitness landscape Position and goal Motivations with fitness landscape analysis

To be efficient, the sequence of local optimization problems must be related to the global problem

Main motivation : ”Why using local search” Study the search space from the point of view of local search ⇒ Fitness Landscape Analysis To understand and design effective local search algorithms

”the more we know of the statistical properties of a class of fitness landscapes, the better equipped we will be for the design of effective search algorithms for such landscapes”

L. Barnett, U. Sussex, PhD 2003. Optimisation Origin and definition of fitness landscape Position and goal Fitness landscape : original plots of S. Wright [Wri32]

S. Wright. ”The roles of , inbreeding, crossbreeding, and selection in .”, 1932.

source : Encyclopædia Britannica Online. becareful : ”2 dimensions instead of many thousands”

Optimisation Origin and definition of fitness landscape Position and goal Fitness landscapes in (evolutionary) biology

Metaphorical uphill struggle across a ”fitness landscape” mountain peaks represent high ”fitness” (ability to survive), valleys represent low fitness. Evolution proceeds : population of organisms performs an ”adaptive walk” Optimisation Origin and definition of fitness landscape Position and goal Fitness landscapes in (evolutionary) biology

Metaphorical uphill struggle across a ”fitness landscape” mountain peaks represent high ”fitness” (ability to survive), valleys represent low fitness. Evolution proceeds : population of organisms performs an ”adaptive walk”

becareful : ”2 dimensions instead of many thousands” Optimisation Origin and definition of fitness landscape Position and goal Fitness landscapes in biology and others sciences

In biology : Model of evolution

Extended to model dynamical systems : statistical physic, molecular evolution, ecology, etc. Optimisation Origin and definition of fitness landscape Position and goal Fitness landscapes in biology

2 sides of Fitness Landscapes Metaphor : most profound concept in evolutionary dynamics give pictures of evolutionary process be careful of misleading pictures : ”smooth low-dimensional landscape without noise” Quantitative concept : predict the evolutionary paths

X −→ X

Quasispecies equation : mean field analysis xt Stochastic process : Markov chain Pr(xt+1 | xt ) Individual scale : network analysis Optimisation Origin and definition of fitness landscape Position and goal Definition of fitness landscape for optimization [Sta02]

Definition

Fitness Fitness landscape (X , N , f ): search space : X neighborhood relation : N : X → 2X Search space objective function : f : X → IR or N (x) = {y ∈ X | Pr(y = op(x)) > ε} or N (x) = {y ∈ X | distance(x, y) = 1}

Optimisation Origin and definition of fitness landscape Position and goal What is a neighborhood ?

Neighborhood function : N : X → 2X

Fitness Set of ”neighbor” solutions associated to each solution

N (x) = {y ∈ X | Pr(y = op(x)) > 0} Search space or N (x) = {y ∈ X | distance(x, y) = 1}

Optimisation Origin and definition of fitness landscape Position and goal What is a neighborhood ?

Neighborhood function : N : X → 2X

Fitness Set of ”neighbor” solutions associated to each solution

N (x) = {y ∈ X | Pr(y = op(x)) > 0} Search space or N (x) = {y ∈ X | Pr(y = op(x)) > ε} Optimisation Origin and definition of fitness landscape Position and goal What is a neighborhood ?

Neighborhood function : N : X → 2X

Fitness Set of ”neighbor” solutions associated to each solution

N (x) = {y ∈ X | Pr(y = op(x)) > 0} Search space or N (x) = {y ∈ X | Pr(y = op(x)) > ε} or N (x) = {y ∈ X | distance(x, y) = 1} Optimisation Origin and definition of fitness landscape Position and goal What is a neighborhood ?

Fitness Neighborhood function : N : X → 2X

Set of ”neighbor” solutions Search space associated to each solution

Important ! N (x) = {y ∈ X | Pr(y = op(x)) > 0} Neighborhoood must be or based on the operator(s) N (x) = {y ∈ X | Pr(y = op(x)) > ε} of the algorithm or N (x) = {y ∈ X | distance(x, y) = 1} Neighborhood ⇔ Operator Optimisation Origin and definition of fitness landscape Position and goal Typical example : bit strings

Search space : X = {0, 1}N

N (x) = {y ∈ X | dHamming (x, y) = 1}

Example : N (01101) = {11101, 00101, 01001, 01111, 01100} Optimisation Origin and definition of fitness landscape Position and goal Typical example : permutations

Traveling Salesman Problem : find the shortest tour which cross one time every town

Search space : X = {σ | σ permutations }

N (x) = {y ∈ X | Pr(y = op2opt (x)) > 0} Optimisation Origin and definition of fitness landscape Position and goal Typical example : triangle program

William B. Langdon and Mark Harman and Yue Jia, Efficient Multi Objective Higher Order Mutation Testing with

Genetic Programming, Journal of Systems and Software, 83 (2010) 2416-2430. [LHJ10] Optimisation Origin and definition of fitness landscape Position and goal Not so typical example : continuous optimization Still an open question...

x1

x

x2

Search space : X = [0, 1]d

Nα(x) = {y ∈ X | ky − xk 6 α} with α > 0 Severals possibilities according to the goal :

Study 2 landscapes : (X , N1, f ) and (X , N2, f ) Study the landscape of ”union” : (X , N , f )

N = N1 ∪ N2 = {y ∈ X | y = op1(x) or y = op2(x)} Study the landscape of ”composition” : (X , N , f ) 0 0 N = {y ∈ X | y = op ◦ op (x) with op, op ∈ {id, op1, op2}}

Optimisation Origin and definition of fitness landscape Position and goal More than 1 operator...

What can we do with 2 operators (ex : memetic algorithm) ?

N1(x) = {y ∈ X | y = op1(x)}N2(x) = {y ∈ X | y = op2(x)} Optimisation Origin and definition of fitness landscape Position and goal More than 1 operator...

What can we do with 2 operators (ex : memetic algorithm) ?

N1(x) = {y ∈ X | y = op1(x)}N2(x) = {y ∈ X | y = op2(x)}

Severals possibilities according to the goal :

Study 2 landscapes : (X , N1, f ) and (X , N2, f ) Study the landscape of ”union” : (X , N , f )

N = N1 ∪ N2 = {y ∈ X | y = op1(x) or y = op2(x)} Study the landscape of ”composition” : (X , N , f ) 0 0 N = {y ∈ X | y = op ◦ op (x) with op, op ∈ {id, op1, op2}} Optimisation Origin and definition of fitness landscape Position and goal Rice framework for algorithm selection

Algorithm selection

Rice, J. R. (1976). The algorithm selection problem. Advances in computers, 15, 65-118. [Ric76] Optimisation Origin and definition of fitness landscape Position and goal Position of fitness landscape analysis

Selection of local search algorithm

Malan, K. M., Engelbrecht, A. P. (2014). Fitness landscape analysis for metaheuristic performance prediction.

In Recent advances in the theory and application of fitness landscapes (pp. 103-132). [ME14] Optimisation Origin and definition of fitness landscape Position and goal Position of fitness landscape analysis

Selection of local search algorithm

Malan, K. M., Engelbrecht, A. P. (2014). Fitness landscape analysis for metaheuristic performance prediction.

In Recent advances in the theory and application of fitness landscapes (pp. 103-132). [ME14]

Fitness landscape analysis : features extraction vs. performance Optimisation Origin and definition of fitness landscape Position and goal Fitness landscape analysis

Algebric approach, grey-box : Statistical approach, black-box : Problems Features ¯ ∆f = λ.(f − f ) Algorithm Performances

Goals Fitness landscape analysis

Offline extraction Online extraction of features of local features

Understanding of the Prediction the search space structure of performance

Additional Selection: Design of Offline selection Parameters Adaptive selection Parameters knowledge - representation, algorithm of algorithm tunning of algorithm control - objective fonction, - neighborhood, algorithm, etc. [MWS91][TPC08][Fon99][Xu+08][SP94] [MW92][LI08][AZS02][Gre95][Fia+10] [Col+06][MF00][MF00][LLY11][BP14] [Ma+11][AR14][Ma+12][Me+11][GLS16] ...... [Jan+16] 2 To choose the algorithm : analysis of global geometry of the landscape Which algorithm can I use ? 3 To tune the parameters : off-line analysis of structure of fitness landscape Which is the best mutation operator ? the size of the population ? number of restarts ? etc. 4 To control the parameters during the run : on-line analysis of structure of fitness landscape Which is the optimal mutation operator according to the estimation of the structure ?

Optimisation Origin and definition of fitness landscape Position and goal Typical use case of fitness landscapes analysis

1 To compare the difficulty of two search spaces :

One problem, different codings : (X1, N1, f1) and (X2, N2, f2) different coding, mutation operator, objective function, etc. Which one is easier to solve ? 3 To tune the parameters : off-line analysis of structure of fitness landscape Which is the best mutation operator ? the size of the population ? number of restarts ? etc. 4 To control the parameters during the run : on-line analysis of structure of fitness landscape Which is the optimal mutation operator according to the estimation of the structure ?

Optimisation Origin and definition of fitness landscape Position and goal Typical use case of fitness landscapes analysis

1 To compare the difficulty of two search spaces :

One problem, different codings : (X1, N1, f1) and (X2, N2, f2) different coding, mutation operator, objective function, etc. Which one is easier to solve ? 2 To choose the algorithm : analysis of global geometry of the landscape Which algorithm can I use ? 4 To control the parameters during the run : on-line analysis of structure of fitness landscape Which is the optimal mutation operator according to the estimation of the structure ?

Optimisation Origin and definition of fitness landscape Position and goal Typical use case of fitness landscapes analysis

1 To compare the difficulty of two search spaces :

One problem, different codings : (X1, N1, f1) and (X2, N2, f2) different coding, mutation operator, objective function, etc. Which one is easier to solve ? 2 To choose the algorithm : analysis of global geometry of the landscape Which algorithm can I use ? 3 To tune the parameters : off-line analysis of structure of fitness landscape Which is the best mutation operator ? the size of the population ? number of restarts ? etc. Optimisation Origin and definition of fitness landscape Position and goal Typical use case of fitness landscapes analysis

1 To compare the difficulty of two search spaces :

One problem, different codings : (X1, N1, f1) and (X2, N2, f2) different coding, mutation operator, objective function, etc. Which one is easier to solve ? 2 To choose the algorithm : analysis of global geometry of the landscape Which algorithm can I use ? 3 To tune the parameters : off-line analysis of structure of fitness landscape Which is the best mutation operator ? the size of the population ? number of restarts ? etc. 4 To control the parameters during the run : on-line analysis of structure of fitness landscape Which is the optimal mutation operator according to the estimation of the structure ? A specific local search puts probability transitions on edges according to f and history of the search

Optimisation Origin and definition of fitness landscape Position and goal Back to definition

Fitness landscape (X , N , f ) is : an oriented graph (X , N ) with valuated nodes given by f .

Remarks :

8 Model of the search space 3 12 4 Non specific to a particular 1 12 local search 7 10 11 4 15

12 9 14 7 Optimisation Origin and definition of fitness landscape Position and goal Back to definition

Fitness landscape (X , N , f ) is : an oriented graph (X , N ) with valuated nodes given by f .

Remarks :

0.5 8 0.3 Model of the search space 3 0.5 12 0.3 0.1 0.7 0.1 0.3 4 Non specific to a particular 1 0.5 0.2 0 0.4 0.3 12 0.4 0.3 local search 0.2 0.2 0.1 7 10 0.5 11 0.1 0.3 0.4 4 0.5 0.1 A specific local search puts 0.5 0.3 0.4 15 0 12 9 14 0.7 probability transitions on edges 0.5 0.3 7 0.8 0.5 0.3 according to f and history of the search Optimisation Origin and definition of fitness landscape Position and goal Fitness landscape and complex systems

Complex system : local vs. global properties Sample the neighborhood to have information on local features of the search space From local information : deduce global feature such as general shape, difficulty, performance, best algorithm, etc.

⇒ Analysis using complex systems tools

8 3 12 4 1 12

7 10 11 4 15

12 9 14 7 Next section : study of the two main geometries multimodal and ruggedness neutral

Optimisation Origin and definition of fitness landscape Position and goal Short summary of this part

Study of the structure of the fitness landscape allows to study the difficulty, and allows to design good optimization algorithms

Fitness landscape is a graph (X , N , f ): nodes are solutions which have a value (fitness), edges are defined by the neighborhood relation.

pictured as a real landscape Optimisation Origin and definition of fitness landscape Position and goal Short summary of this part

Study of the structure of the fitness landscape allows to study the difficulty, and allows to design good optimization algorithms

Fitness landscape is a graph (X , N , f ): nodes are solutions which have a value (fitness), edges are defined by the neighborhood relation.

pictured as a real landscape

Next section : study of the two main geometries multimodal and ruggedness neutral Optimisation Origin and definition of fitness landscape Position and goal ReferencesI

William B Langdon, Mark Harman, and Yue Jia. Efficient multi-objective higher order mutation testing with genetic programming. Journal of systems and Software, 83(12) :2416–2430, 2010. KatherineM. Malan and AndriesP. Engelbrecht. Fitness landscape analysis for metaheuristic performance prediction. In Hendrik Richter and Andries Engelbrecht, editors, Recent Advances in the Theory and Application of Fitness Landscapes, volume 6 of Emergence, Complexity and Computation, pages 103–132. Springer Berlin Heidelberg, 2014. John R. Rice. The algorithm selection problem. Advances in Computers, 15 :65–118, 1976. Optimisation Origin and definition of fitness landscape Position and goal ReferencesII

P. F. Stadler. Fitness landscapes. In M. L¨assig and Valleriani, editors, Biological Evolution and Statistical , volume 585 of Lecture Notes Physics, pages 187–207, Heidelberg, 2002. Springer-Verlag. S. Wright. The roles of mutation, inbreeding, crossbreeding, and selection in evolution. In Proceedings of the Sixth International Congress of Genetics 1, pages 356–366, 1932.