simulated annealing, dynamic local search, … local optimality occasionally accept worse solutions...

69
Simulated Annealing, Dynamic Local Search, GRASP, Iterated Greedy an overview Thomas St ¨ utzle [email protected] http://www.intellektik.informatik.tu-darmstadt.de/˜tom. Darmstadt University of Technology Department of Computer Science Intellectics Group Thomas St¨ utzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.1

Upload: vodien

Post on 21-Jul-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Simulated Annealing, Dynamic LocalSearch, GRASP, Iterated Greedy

—an overview

Thomas Stutzle

[email protected]

http://www.intellektik.informatik.tu-darmstadt.de/˜tom.

Darmstadt University of Technology

Department of Computer Science

Intellectics Group

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.1

Page 2: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Outline

simulated annealingbasicstheoryapplications

dynamic local searchbasicsapplications

greedy randomized adaptive search procedures (GRASP)basicsapplications

iterated greedybasicsapplications

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.2

Page 3: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Escaping local optimality

occasionally accept worse solutionstabu searchsimulated annealing

modify evaluation function at run timedynamic local search

generate new solutions (for a local search)iterated local searchmemetic algorithms / EAsant colony optimizationGRASP

constructive methodsant colony optimizationiterated greedy

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.3

Page 4: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Notation

: set of (candidate) solutions

�: solution in

: cost function

� � � �

: cost function value of solution �

� � �

: neighborhood of �

here, we assume that we solve minimization problems

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.4

Page 5: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

What is Simulated Annealing (SA)?

Simulated Annealing is an SLS method that tries to avoid localoptima by accepting probabilistically moves to worse solutions.

Simulated Annealing was one of the first SLS methods

now a "mature" SLS methodmany applications available (ca. 1,000 papers)(strong) convergence results

simple to implement

inspired by an analogy to physical annealing

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.5

Page 6: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Physics analogy: annealing

annealing is a thermal process for obtaining low energystates of a solid through a heat bath.1. increase the temperature of the solid until it melds2. carefully decrease the temperature of the solid to reach a

ground state (minimal energy state, cristaline structure)

computer simulations of the annealing processmodels exist for this process based on Monte CarlotechniquesMetropolis algorithmsimulation algorithm for the annealing process proposedby Metropolis et al. in 1953

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.6

Page 7: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Metropolis algorithm

generates a sequence of states

1. given state

with energy

��� , generate subsequent state

with

energy

��� by some perturbation mechanism

2. If

�� � �� �

, then accept

, otherwise accept

with

probability

� � ��� � ��

�� � �

�� : Boltzmann constant,�

: temperature

if temperature is lowered slow enough, the solid may reach thermal

equilibrium at each temperature

thermal equilibrium characterized by Boltzman distribution��� �

X � � � �

� � � � �� � �� � � �

� � � � � �� � � � � �

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.7

Page 8: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Phys. annealing vs. optimization

physical system comb. optimization problem

state �� candidate solutionsenergy of a state �� cost functionground state �� optimum solutionstemperature �� control parameter (temperature)rapid quenching �� iterative improvement

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.8

Page 9: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA — high level procedure

generate some neighboring solution �� � � � �

if

� � �� � � � � � �

, then accept ��

if

� � �� � � � � � �

, then a probabilistic yes/no decision is madeif outcome is yes, then �

replaces �

if outcome is no, � is kept

probabilisitic decision depends onthe difference

� � �� �

� � � �

a control parameter

, called temperature

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.9

Page 10: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Simulated Annealing — Procedural view

procedure Simulated Annealing

� �

; set initial temperature

���

� � GenerateInitialSolution; �best

� �

while outer loop criterion do

while inner loop criterion do

� � � ��� � � �� �� ��� � � � � � �

� � ��� � �� � � � � � � �� � � � ���� �� � � �

if

�� � � ��� � � �best

� �

�best

� �

end

��� � � � UpdateTemp

� � � �

, � � � !

end

return �

best

endThomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.10

Page 11: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA — general issues

generation of neighboring solutionsoften: generate a random neighboring solution

�� � � � �

possibly better: systematically generate neighboringsolutions� at least one is sure to sample the wholeneighbourhood if no move is accepted

acceptance criterionoften used: Metropolis acceptance criterion

if

� � �� � � � � � �

then accept ��

if

� � �� � � � � � �

then accept it with a probability of

�� � �� � �

� �

� � � �

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.11

Page 12: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA — cooling schedule

open questionshow to define the control parameter?how to define the (inner and outer) loop criteria?

cooling scheduleinitial temperature

���

(Example: base it on some statistics about cost values, acceptance ratios etc.)

temperature function — how to change the temperature(Example: geometric cooling,

�� � � � �� ��� � � � � �� ,

� � �

)

number of steps at each temperature (inner loopcriterion)(Example: multiple of the neighbourhood size)

termination criterion (outer loop criterion)(Example: no improvement of �

best for a number of temperature values and acceptance

rate below some critical value)

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.12

Page 13: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Simulated Annealing — Theory

consider a variant of SA wherethe temperature is fixed to

� � �

the number of steps is infiniteneighboring solutions are drawn randomly

model this algorithm as a (homogeneous) Markov chain

a Markov chain is a stochastic process, in which transitionprobabilities only depend on the current state

probabilities of state transitions can be summarized in amatrix

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.13

Page 14: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Transition probabilities (1)

how to compute the transition probabilities?

decompose transition probability from �� to � � � � �� �

intoperturbation probability

�� � ��

����

� � �� � � if � � � � �� ���

�� otherwise;

(1)

acceptance probability

�� � ��

��������

�� if

� � � � � � � � �� ���

�� � �� � �� ��� � � �� �

� otherwise;(2)

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.14

Page 15: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Transition probabilities (2)

the transition probability between two solutions �� and � �

can be computed as

� � � � � � ��

��������������������������

� � �� � if

� � � � � � � � � � �� � � � � � ���

� � �� � � � �

��

� � �� ��� � � �� �

�if

� � � � � � � � � � �� � � � � � ���

! � ��

� � � � � � � � � � if

� � ��

otherwise;

under some mild assumptions on the neighborhoodstructure, the resulting Markov chain is ergodic

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.15

Page 16: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Limiting state distribution

let � � � � �� �

be the probability that �� is the current solutionafter

steps of the algorithm at temperature�

state probability vector: � � � � � � � � � � � �� � � � � � � � �� �� � � � �

for ergodic Markov chains, the state probability vectorconverges to a limiting probability vector

�� ���� � � � � � �

in particular, one can proof that

�� ���� � � � � �� � �

�� � ��

� � �� �� � �

� � � �� � ��

� � � � �� � �

(Boltzmann distribution)

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.16

Page 17: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Limiting distribution for �

consider two solutions �� and � � with

� � �� � � � � � � �

in this case we have

� � � � �� �

� � � � � � �

��� � � �� � �

�� � �� �� � �

�� � ��

� � � � �� � �

� �� �� � � � �

� � �� �

� � �� � �

the last assertion is due to the assumption

� � � � �

� � �� � � �

since � � � � �� �

is a probability, we have � � � � �� � � �

convergence to � is only possible if we have�� ���� �� �� � �� � � � � � � � �

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.17

Page 18: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Limiting distribution

hence, we have proved thatfor a feasible solution �,

��� � �, and

� �

the probability

� � � � � �

converges to

, if � is not an optimal solution:

� � ��� �� �� � �� � � � � � � �

additionally one can prove that if � is an optimal solution,then we have

� � ��� �� �� � �� � � � � � �

�� �

opt

where

opt is the set of all optimal solutions

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.18

Page 19: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Observations

if SA can be run long enoughwith an infinite number of temperature values andfor each temperature value with an infinite number ofsteps

one can be sure to be at an optimal solution at the end

however, it is not clear what end means

in addition, when run at a single temperature level longenough

we can be sure to find the optimum solutionhence, an optimal solution can be found withoutannealingone only needs to store the best solution found andreturn it at the end

BUT: we need

��� � � to guarantee optimalityThomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.19

Page 20: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

What do the proofs say?

from the proofs we can also conclude thatbetter solutions are becoming more likely

this gives evidence that aftera sufficient number of temperature values anda sufficient number of steps at each temperature value

chances are high to have seen a good solution

however, it is unclear what sufficient means

remark: stronger results than the ones presented before areavailable. See Hajek’s article from 1988

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.20

Page 21: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA example: TSP (1) Johnson, McGeoch 1997

simple implementationstart from a random initial solutionneighborhood: 2-optsimple cooling schedule

�� is chosen such that ca. 3% of the moves are

rejectedgeometric cooling with � � � � ��

temperature length � � � �� �

outer loop criterion: 5 temperature values withoutimprovement and acceptance rate below 2%� relatively poor results (worse than 3-opt at 300

times higher computation times)

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.21

Page 22: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA example: TSP (2) Johnson, McGeoch 1997

Improvementslook-up table for acceptance probabilitiesrestriction of the neighborhood to small candidate setsusing nearest neighbor lists of length 20good initial solutionlow temperature startssystematic scan of the neighborhoodinclusion of 3-opt moves

� significantly improved results, comparable torandom-restart LK for same computation time

comparison to other techniques� SA quite far behind state-of-the-art of TSP solving

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.22

Page 23: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Graph bipartitioning

Given A graph

� � �� � � �

.

Goal Find a partition of the graph in two node sets� � and

� �

with

� � � � � � � � � and

� � � � � � �

, such that the number ofedges with endnodes in the two different sets is minimized.

BA

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.23

Page 24: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA example: graph bipartitioning Johnson et al. 1989

tests were run on random graphs (

��� � �) and randomgeometric graphs

�� � �

modified cost function ( �: imbalance factor)

� �� �� � � � � �� ��� � � � � � � � � � � � � � � � � � � � � � �� � � � � �

� allows infeasible solutions but punishes the amount ofinfeasibility

side advantage: allows to use 1–exchange neighborhoods ofsize

� � �

instead of the typical neighborhood thatexchanges two nodes at a time and is of size

� � � �

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.24

Page 25: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA example: graph bipartitioning Johnson et al. 1989

initial solution is chosen randomly

standard geometric cooling schedule

experimental comparison to Kernighan–Lin heuristicSimulated Annealing gave better performance on

� � � �

graphsjust the opposite is true for

�� � � graphs

several further improvements were proposed and tested

general remark: Although relatively old, Johnson et al.’s experimen-

tal investigations on SA are still worth a detailed reading!Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.25

Page 26: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA example: course timetabling

abstraction of a real course timetabling problem studied inthe metaheuristics network

problemgiven is a set of events visited by a set of studentsgoal: assign events to timeslots and rooms subject tohard constraints and optimization criteria

hard constraintsno student attends more than one event at the same timeroom is big enough and satisfies all features required bythe eventat any timeslot, there is at most one event in a room

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.26

Page 27: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA example: course timetabling

optimization criteria through soft constraintsstudent has event in last slot of a daystudent has more than two events in a rowstudent has a single class on a day

soft constraint violations are penalized

objectivefind a feasible solution with minimum number of softconstraint violations

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.27

Page 28: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

SA example: course timetabling

this problem was attacked in the Metaheuristics Network

and is part of the International Timetabling Competition!!

implemented SLS methodsAnt Colony OptimizationIterated Local SearchSimulated AnnealingTabu SearchEvolutionary Algorithms

all the SLS methods were implemented by the expert labs inthe metaheuristics network

and extensively evaluated on a set of benchmark problems(results courtesy of Michael Sampels)

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.28

Page 29: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Course timetabling:

implementations were done in two phases

first phaseall labs were given a same local searchall labs were given one month of development timethen all algorithms had to be submitted and wereevaluated

here: results of this first phase

second phase: more in depth studies and furtherdevelopments

the computational results were analyzed withnon-parametric statistical tests based on ranks

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.29

Page 30: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Results: Small size instance

500 1000 1500 2000 2500

05

1015

2025

Instance: small04.tim Time: 90 sec

Rank

# S

oft C

onst

rain

t Vio

latio

ns

ACOGAILSSATS

ACO GA ILS SA TS

0

5

10

15

20

25

# Soft Constraint Violations

ACO

GA

ILS

SA

TS

500 1000 1500 2000 2500

Ranks

ACO GA ILS SA TS

Percentage of Invalid Solutions

SLS Method

Per

cent

020

4060

8010

0

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.30

Page 31: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Medium size instance

0 50 100 150 200 250

100

150

200

250

Instance: medium04.tim Time: 900 sec

Rank

# S

oft C

onst

rain

t Vio

latio

ns

ACOGAILSSATS

ACO GA ILS SA TS

100

150

200

250

# Soft Constraint Violations

ACO

GA

ILS

SA

TS

0 50 100 150 200 250

Ranks

ACO GA ILS SA TS

Percentage of Invalid Solutions

SLS Method

Per

cent

020

4060

8010

0

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.31

Page 32: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Large size instance

0 10 20 30 40 50 60 70

700

800

900

1000

1100

1200

Instance: large02.tim Time: 9000 sec

Rank

# S

oft C

onst

rain

t Vio

latio

ns

ACOGAILSSATS

ACO GA ILS TS

700

800

900

1000

1100

1200

# Soft Constraint Violations

ACO

GA

ILS

SA

TS

0 10 20 30 40 50 60 70

Ranks

ACO GA ILS SA TS

Percentage of Invalid Solutions

SLS Method

Per

cent

020

4060

8010

0

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.32

Page 33: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Additional issues � � � not covered here

Non-monotone cooling schedules

parallelization

inhomogeneous theory

results on speed of convergence

optimal cooling schedules

related approaches (threshold accepting etc.)

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.33

Page 34: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Summary

Simulated Annealing is historically one of the first SLSmethods

very easy to implement

interesting forpractitioners: short development timesmathematicians: convergence

good results but often at the cost of substantial computationtimes

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.34

Page 35: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Literature

� E.H.L. Aarts, J.H.M. Korst, and P.J.M. van Laarhoven. Simulated Annealing. In E.H.L. Aarts and

J.K. Lenstra, editors, Local Search in Combinatorial Optimization, pages 91–120. John Wiley &

Sons, 1997.

� V. Cerný. A Thermodynamical Approach to the Traveling Salesman Problem. Journal of

Optimization Theory and Applications, 45(1):41–51, 1985.

� B. Hajek. Cooling Schedules for Optimal Annealing. Mathematics of OR, 13:311–329, 1988.

� D.S. Johnson, C.R. Aragon, L.A. McGeoch, and C. Schevon. Optimization by Simulated Annealing:

An Experimental Evaluation: Part I, Graph Partitioning. Operations Research, 37(6):865–892, 1989.

� D.S. Johnson, C.R. Aragon, L.A. McGeoch, and C. Schevon. Optimization by Simulated

Annealing: An Experimental Evaluation: Part II, Graph Coloring and Number Partitioning.

Operations Research, 39(3):378–406, 1991.

� D.S. Johnson and L.A. McGeoch. The Travelling Salesman Problem: A Case Study in Local

Optimization. In E.H.L. Aarts and J.K. Lenstra, editors, Local Search in Combinatorial Optimization,

pages 215–310. John Wiley & Sons, 1997.

� S. Kirkpatrick, C.D. Gelatt Jr., and M.P. Vecchi. Optimization by Simulated Annealing. Science,

220:671–680, 1983.

� F. Romeo and A. Sangiovanni-Vincentelli. A Theoretical Framework for Simulated Annealing.

Algorithmica, 6:302–345, 1991.

� W.M. Spears. Simulated Annealing for Hard Satisfiability Problems. Technical report, Naval

Research Laboratory, Washington D.C., 1993.Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.35

Page 36: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

What is dynamic local search?

Dynamic local search is a collective term for a number ofapproaches that try to escape local optima by iteratively

modifying the evaluation function value of solutions.

different concept for escaping local optima

several variants available

promising results

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.36

Page 37: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Dynamic local search

guide the local search by a dynamic evaluation function

evaluation function

� � � �

composed ofcost function

� � � �

penalty function

penalty function is adapted at computation time to guide thelocal search

penalties are associated to solution features

related approacheslong term strategies in tabu searchnoising methodusage of time-varying penalty functions for (strongly)constrained problemsetc.

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.37

Page 38: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Issues in dynamic local search

timing of penalty modificationsat every local search steponly when trapped in a local optimum w.r.t.

long term strategies for weight decay

strength of penalty modificationsadditive vs. multiplicative penalty modificationsamount of penalty modifications

focus of penalty modificationschoice of solution attributes to be punished

Example: Guided Local SearchPhD thesis Voudouris; Voudouris, Tsang, Mills 1995 –

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.38

Page 39: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Guided local search

guided local search (GLS)modifies penalties when trapped in local optima of

variants exist that use occasional penalty decayuses additive penalty modificationschooses few among the many solution components forpunishment

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.39

Page 40: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Guided local search — Procedural view

procedure Guided Local Search

� � ��� � � � � �� � � � � � � �� � � � � �

� � � � � � ��� � �� � � � ��� �

while (termination condition not met) do

� � ComputeAugmentedObjectiveFunction

�� � �� � � � � � � � � � �� �� � �

��� � � �� �� � � � � � � � �� �end whilereturn �

bestend procedure

Attention: to get �

best, check in LocalSearch solutions also w.r.t. the cost function

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.40

Page 41: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GLS — details

penalties are associated to solution attributescost contribution

�� � � �

for solution attribute

penalty costs �� for solution attribute�

an indicator function

�� � � �

says whether solutionattribute

occurs in solution �

evaluation function

� � � �

becomes

� � � � � � � � � � ���

���� �

�� � �� � � �

: number of solution attributes�

: determines the influence of the penalty costs

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.41

Page 42: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Guided local search — details

LocalSearchuses

� � � �

for evaluating solutionsruns until stuck in a local optimum

� � w.r.t.

once stuck, penalties are modified

modification of penaltiesdefine the utility of solution attributes as

Util

� ��� � � ��� � �� �

� � ��

for all solution attributes with maximum utility set

�� � �� � �

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.42

Page 43: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Propositional Satisfiability Problem (SAT)

Simple SAT instance (in CNF):

��� � � � ��� � � � � �

models

� � true�� � false

� � false�� � true

SAT Problem – decision variant: For a given propositionalformula

, decide whether

has at least one model.

SAT Problem – model finding variant: For a givenpropositional formula

, if

is satisfiable, find a model,otherwise declare

unsatisfiable.

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.43

Page 44: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GLS example: SAT/MAX-SAT Mills, Tsang, 2000

best-improvement 1–opt local search (GSAT architecture)

uses in additions a special tie-breaking criterion that favorsflipping a variable that was flipped the longest time ago(taken from HSAT)

if in � consecutive iterations no improved solution is found,then modify penalties

solution attributes are clauses

when trapped in a local optimum, add penalties to clauses ofmaximum utility

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.44

Page 45: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GLS example: SAT/MAX-SAT

computational experiencegood results especially for very hard SAT instancescurrently one of the best available algorithms forweighted MAX-SAT

further applicationsTSPQAPVehicle RoutingConstraint Satisfaction Problemeworkforce scheduling

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.45

Page 46: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Literature

� A. Davenport, E. Tsang, C.J. Wang, and K. Zhu. GENET: A Connectionist Architecture for Solving

Constraint Satisfaction Problems by Iterative Improvement. In Proceedings of the 14th National

Conference on Artificial Intelligence. MIT press, 1994.

� F Hutter, D. Tompkins, and H.H. Hoos. Scaling and Probabilistic Smoothing: Efficient Dynamic

Local Search for SAT. In Proc. CP’02, 2002.

� P. Mills and E. Tsang. Guided local search for solving SAT and weighted MAX-SAT problems. In

I. Gent, H. van Maaren, and T. Walsh, editors, SAT’2000. IOS Press, pp. 89–106, 2000.

� P. Morris. The Breakout Method for Escaping from Local Minima. In Proceedings of the 11th

National Conference on Artificial Intelligence, pages 40–45. MIT press, 1993.

� D. Schuurmans, and F. Southey, and R.C. Holte. The Exponentiated Subgradient Algorithm for

Heuristic Boolean Programming. In Proceedings of the 17th International Joint Conference on

Artificial Intelligence, pages 334–341. Morgan Kaufmann, San Francisco, USA.

� C. Voudouris, and E. Tsang. Guided local search and its application to the traveling salesman

problem. European Journal of Operational Research, 113, pages 469–499, 1999.

� Z. Wu and W. Wah. An efficient global-search strategy in discrete lagrangian methods for solving

hard satisfiability problems. In Proceedings of the 17th National Conference on Artificial Intelligence,

pages 310–315. AAAI Press / The MIT Press, Menlo Park, CA, USA, 2000.

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.46

Page 47: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

What is GRASP?

Greedy Randomized Adaptive Search Procedures (GRASP) is anSLS method that tries to construct a large variety of good initial

solutions for a local search algorithm.

predecessors: semi-greedy heuristics

tries to combine the advantages of random and greedysolution construction

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.47

Page 48: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Greedy construction heuristics

iteratively construct solutions by choosing at eachconstruction step one solution component

solution components are rated according to a greedyfunctionthe best ranked solutions component is added to thecurrent partial solution

examples: Kruskal’s algorithms for minimum spanningtrees, greedy heuristic for the TSP, � � �

advantage: generate good quality solutions; local searchruns fast and finds typically better solutions than fromrandom initial solutions

disadvantage: do not generate many different solutions;difficulty of iterating

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.48

Page 49: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Random vs. greedy construction

random constructionhigh solution quality variancelow solution quality

greedy constructiongood qualitylow (no) variance

goal: exploit advantages of both

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.49

Page 50: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Semi-greedy heuristics

add at each step not necessarily the highest rated solution

repeat until a full solution is constructed:rate solution components according to a greedy functionput high rated solution components into a restrictedcandidate list (RCL)choose one element of the RCL randomly and add it tothe partial solutionadaptive element: greedy function depends on the partialsolution constructed so far

Hart, Shogan, 1987

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.50

Page 51: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Generation of the RCL

mechanisms for generating RCLcardinality based: include the

best rated solutioncomponents into RCLvalue based: include all solution components withgreedy values better than a given threshold

�� � � �� � based RCLlet

min (

max) be greedy values of best (worst) rankedsolution componentinclude solution components � with greedy values

� ��

� � �

min

� �� � �

max �

min

� � � �� � �

is a parameter

� � �

corresponds to a greedy construction heuristic

� � �corresponds to a random solution construction

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.51

Page 52: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GRASP

GRASP tries to capture advantages of random and greedysolution construction

iterate throughrandomized solution construction exploiting a greedyprobabilistic bias to construct feasible solutionsapply local search to improve over the constructedsolution

keep track of the best solution found so far and return it atthe end

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.52

Page 53: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GRASP — local search

local search from random solutionshigh variancebest solution quality often better than greedy (if not toolarge instances)average solution quality worse than greedylocal search requires many improvement steps

local search from greedy solutionsaverage solution quality better than randomlocal search typically requires only a few improvementstepslow (no) variance

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.53

Page 54: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GRASP — Procedural view

procedure GRASP

Initialize Parameter

while (termination condition not met) do

� � ConstructGreedyRandomizedSolution

� �

� � � LocalSearch� � �

if

� � � � � � � � �

best�

best� � �

endreturn �

bestend GRASP

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.54

Page 55: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GRASP Example: SAT

solution components are value assignment to variables

greedy-Functionnumber of still unsatisfied clauses that would becomesatisfied by a value assignment

� �� : set of additionally satisfied clauses if � � � true

�� � : set of additionally satisfied clauses if � � � false

�� � � �� � based RCLLet

� � � � �� � � � �� �� � �� � � �

over all free variables ��

�� � true � RCL if

� � �� � � �� � �

�� � false � RCL if

� �� � � � �� � �

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.55

Page 56: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GRASP Example: SAT

variable selectionif an unsatisfied clause contains only one single stilluninstantiated variable, try to satisfy this clauseotherwise choose randomly an element from the RCL

local searchbest-improvement 1-opt local search (GSATarchitecture)

performanceat the time the research was done reasonably goodperformancehowever, nowadays by far outperformed by more recentlocal search algorithms for SATthe same is true for weighted MAX-SAT

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.56

Page 57: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GRASP extensions

convergence of GRASP (not guaranteed if � � � �)

introduction of a bias when choosing elements from the RCLdifferent possibilities of using, e.g. ranks (e.g.bias

��� � � �� � )choose a solution component with a probabilityproportional to bias

reactive GRASP (tuning of �)

addition of a type of long term memory to bias searchpath relinkinguse of previous elite solutions to guide construction

parallelization of GRASP

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.57

Page 58: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

GRASP — concluding remarks

straightforward extension of construction heuristics

easy to implement

few parameters

many different applications available

several extensions exist

can be used to generate initial population inpopulation-based methods

however, as a stand-alone procedure often notstate-of-the-art results

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.58

Page 59: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Literature

� T.A. Feo and M.G.C. Resende. A Probabilistic Heuristic for a Computationally Difficult Set

Covering Problem. Operations Research Letters, 8:67–71, 1989.

� P. Festa and M. G. C. Resende. GRASP: An annotated bibliography. In P. Hansen and C. C.

Ribeiro, editors, Essays and Surveys on Metaheuristics. Kluwer Academic Publishers, 2001.

� J. P. Hart and A. W. Shogan. Semi-greedy Heuristics: An Empirical Study. Operations Research

Letters, 6:107–114, 1987.

� M.G.C. Resende, T.A. Feo. A GRASP for Satisfiability. In D.S. Johnson and M.A. Trick, editors.

Cliques, Coloring, and Satisfiability, volume 26 of DIMACS Series on Discrete Mathematics and

Theoretical Computer Science. pages 499–520. American Mathematical Society, 1996.

� M.G.C. Resende, L.S. Pitsoulis, and P.M. Pardalos. Approximate solution of weighted MAX-SAT

problems using GRASP. In J. Gu and P.M. Pardalos, editors, Satisfiability problems, volume 35 of

DIMACS Series on Discrete Mathematics and Theoretical Computer Science, pages 393–405.

American Mathematical Society, 1997.

� M. G. C. Resende and C. C. Ribeiro, Greedy randomized adaptive search procedures, in Handbook

of Metaheuristics, F. Glover and G. Kochenberger, eds., Kluwer Academic Publishers, pp. 219-249,

2002

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.59

Page 60: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

What is Iterated Greedy?

Iterated Greedy is an SLS method that builds a sequence ofsolutions by iterating over greedy construction heuristics through

destruction and construction phases.

straightforward extension of iterated local search to thecontext of greedy construction heuristics

very good results in a variety of applications

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.60

Page 61: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Greedy — procedural view

procedure Greedy Construction Heuristic

� � � empty solutionwhile � � is not a complete solution � do

� � GreedyComponent

� � ��

� � � � � � �

end while

� � � �

return �

end procedure

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.61

Page 62: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

Greedy construction heuristics

give seed solutions to local search / EAs etc.

sometimes additional features applieduse look-aheaduse local search on partial solutions

construction heuristics also used inside several SLS methodslike ACO, rollout/piloting method, GRASP

different approach:destruct part of the solutionreconstruct a full solutioniterate through these two phases

� iterated greedy (IG)

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.62

Page 63: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

IG — procedural view

procedure Simple Iterated Greedy

� � GenerateInitialSolutionrepeat

� � � DestructionPhase� � �

�� � ConstructionPhase

� � ��

� � AcceptanceCriterion

� �� �� �

until termination condition metend

closely related to iterated local search but using as an underlying heuristic

a greedy construction one

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.63

Page 64: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

IG — algorithm

destruction phasefixed vs. variable size of destructionstochastic vs. deterministic destructionuniform vs. biased destruction

construction phasenot every construction heuristic is trivially applicablee.g. nearest neighbor construction heuristic for TSP would need some adaptations

typically, adaptive construction heuristics preferablespeed of the construction heuristic is an issue

acceptance criterionvery much the same issue as in ILS

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.64

Page 65: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

IG — enhancements

usage of history information to bias destructive/constructivephase

use lower bounds on the completion of a solution in theconstructive phase

combination with local search in the constructive phase

use local search to improve full solutions� destruction / construction phases can be seen as aperturbation mechanism in ILS

exploitation of constraint propagation techniques

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.65

Page 66: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

IG example: Set covering

given:finite set

� � � � �� � � � � � ��

of objectsfamily

� � � � �� � � � ���

of subsets of

that covers

weight function �� � � � IR�

� � �

covers

if every element in

appears in at leastone set in

, i.e. if

� � �

goal: find a subset� � � �

of minimum total weight thatcovers

.

interest: arises in many applications,

-hard

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.66

Page 67: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

IG example: Set covering

IG approach by Brusco and Jacobs from 1995

assumption: all subsets are ordered according tonondecreasing costs

construct initial solution using a greedy heuristic based ontwo steps

randomly select a uncovered object � �

add the lowest cost subset that covers � �

DestructionPhase removes a fixed number of

� � � � �

subsets;

� � is a parameter

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.67

Page 68: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

IG example: Set covering

ConstructionPhase proceeds asbuild a candidate set containing subsets with cost of lessthan

� � � � � � �

compute the cover value � � � � �� � �

� � : number of objects covered when adding subset

� �

add a subset with minimum cover value

complete solution is post-processed by removing redundantsubsets

AcceptanceCriterion: Metropolis acceptance criterionfrom SA

computational experiencegood performance with this simple approachmore recent IG variants are state-of-the-art algorithmsfor SCP

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.68

Page 69: Simulated Annealing, Dynamic Local Search, … local optimality occasionally accept worse solutions tabu search simulated annealing modify evaluation function at run time dynamic local

IG — concluding remarks

simple principle

analogous extension to greedy heuristics as ILS to localsearch

not a very strongly explored SLS method

provides an additional tool to SLS researchers

for some applications so far excellent results

can give place to more effective combinations of tree searchand local search heuristics

Thomas Stutzle, SA, DLS, GRASP, IG — MN Summerschool, Tenerife, 2003 – p.69