Heuristic Optimization Methods

Post on 31-Dec-2015

21 views 1 download

description

Heuristic Optimization Methods. Scatter Search. Agenda. Scatter Search (SS) For Local Search based Metaheuristics: SA based on ideas from nature TS based on problem-solving and learning For population based Metaheuristics: GA based on ideas from nature - PowerPoint PPT Presentation

Transcript of Heuristic Optimization Methods

Heuristic Optimization Methods

Scatter Search

2

Agenda

• Scatter Search (SS)– For Local Search based Metaheuristics:

• SA based on ideas from nature

• TS based on problem-solving and learning

– For population based Metaheuristics:• GA based on ideas from nature

• SS based on problem-solving and learning

– Nature works, but usually very slowly– Being clever is better than emulating nature?

Scatter Search:Methodology and Applications

Manuel LagunaUniversity of Colorado

Rafael MartíUniversity of Valencia

The following is a presentation previously held at the conference ICS 2003...

4

Based on …

Laguna, M. and R. Martí (2003) Scatter Search: Methodology and Implementations in C, Kluwer Academic Publishers, Boston.

Scatter Search

Methodology

6

Metaheuristic

• A metaheuristic refers to a master strategy that guides and modifies other heuristics to produce solutions beyond those that are normally generated in a quest for local optimality.

• A metaheuristic is a procedure that has the ability to escape local optimality

7

Typical Search Trajectory

0

10

20

30

40

50

60

70

80

90

100

1 4 7 10 13 16 19 22 25 28 31 34 37 40

Iteration

Ob

jec

tiv

e F

un

cti

on

Value

Best Value

8

Metaheuristic Classification

• x/y/z Classification– x = A (adaptive memory) or M (memoryless)– y = N (systematic neighborhood search) or S (random

sampling)– Z = 1 (one current solution) or P (population of

solutions)

• Some Classifications– Tabu search (A/N/1)– Genetic Algorithms (M/S/P)– Scatter Search (M/N/P)

9

Scatter SearchP

Diversification GenerationMethod

Repeat until |P| = PSize

Subset GenerationMethod

ImprovementMethod

Solution CombinationMethod

ImprovementMethod

Stop if no morenew solutions

Reference SetUpdate Method

RefSet

10

Repeat until |P| = PSize

Scatter Search with RebuildingP

Diversification GenerationMethod

Subset GenerationMethod

ImprovementMethod

Solution CombinationMethod

ImprovementMethod

No more new solutions

Reference SetUpdate Method

RefSet

Diversification GenerationMethod

ImprovementMethod

Stop if MaxIterreached

11

Tutorial

• Unconstrained Nonlinear Optimization Problem

4,,1for 1010toSubject

118.19111.10

1901100Minimize

422

42

2

23

2234

21

2212

ix

xxxx

xxxxxx

i

12

Diversification Generation Method

-10 +10-5 0 +5

Subrange 1 Subrange 2 Subrange 3 Subrange 4

Probability of selecting a subrange is proportional to a frequency count

13

Solution x1 x2 x3 x2 f(x)

1 1.11 0.85 9.48 -6.35 835546.2

2 -9.58 -6.57 -8.81 -2.27 1542078.9

3 7.42 -1.71 9.28 5.92 901878.0

4 8.83 -8.45 4.52 3.18 775470.7

5 -6.23 7.48 6 7.8 171450.5

6 1.64 3.34 -8.32 -8.66 546349.8

7 0.2 -3.64 -5.3 -7.03 114023.8

8 -3.09 6.62 -2.33 -3.12 7469.1

9 -6.08 0.67 -6.48 1.48 279099.9

10 -1.97 8.13 -5.63 8.02 54537.2

Diverse Solutions

14

Improvement MethodSolution x1 x2 x3 x2 f(x)

1 2.5 5.4 2.59 5.67 1002.7

2 -0.52 -0.5 0.35 -0.14 138.5

3 -2.6 5.9 4.23 10 7653.7

4 0.49 0.53 2.47 5.89 213.7

5 -3.04 9.45 1.14 0.41 720.1

6 -1.4 2.46 0.37 -3.94 1646.7

7 -0.36 -0.31 0.8 1.14 57.1

8 -1.63 2.51 0.73 0.56 21.5

9 -0.8 0.69 -1.16 1.5 11.2

10 -2.47 5.32 -2.92 8.15 1416.7

Nelder and Mead (1965)

15

Reference Set Update Method(Initial RefSet)

RefSet of size b

b1 high-qualitysolutions

b2 diversesolutions

Min-max criterion andEuclidean distances tomeasure diversity

Objective functionvalue to measurequality

16

Initial RefSetSolution

number in P x1 x2 x3 x4 f(x)

35 -0.0444 0.0424 1.3577 1.8047 2.1

46 1.133 1.2739 -0.6999 0.5087 3.5

34 -0.0075 0.0438 1.4783 2.2693 3.5

49 1.1803 1.4606 -0.344 0.2669 5.2

38 1.0323 0.9719 -0.8251 0.695 5.3

Solution x1 x2 x3 x4 f(x)

37 -3.4331 10 1.0756 0.3657 1104.1

30 3.8599 10 -4.0468 10 9332.4

45 -4.4942 10 3.0653 10 13706.1

83 -0.2414 -6.5307 -0.9449 -9.4168 17134.8

16 6.1626 10 0.1003 0.1103 78973.2

High-Quality Solutions

Diverse Solutions

17

Subset Generation Method

• All pairs of reference solutions that include at least one new solution

• The method generates (b2-b)/2 pairs from the initial RefSet

18

Combination Method

1 2 3 4 5 6 7 8 9 10 11 12 13

1

2

3

4

5

6

7

8

9

10

x2 = (8,4)

x1 = (5,7)

x3 = x1 - r(x2 - x1)

x4 = x1 + r(x2 - x1)

x5 = x2 + r(x2 - x1)

x4 = (6.5,5.5)r = 1/2

x5 = (11,1)r = 1

x3 = (9,7)r = 2/3

y

x

19

Alternative Combination Method

x3

1 2 3 4 5 6 7 8 9 10 11 12 13

1

2

3

4

5

6

7

8

9

10

x2 = (8,4)

x1 = (5,7)

x3 = x1 - r(x2 - x1)

x4 = x1 + r(x2 - x1)

x5 = x2 + r(x2 - x1)

y

x

x4

x5

20

Reference Set Update Method

RefSet of size b

Worst

BestQuality 1

b

2...

New trialsolution

Updated RefSet

Worst

Best1

b

2...

21

Static Update

RefSet of size b

Worst

BestQuality 1

b

2...

Pool of new trial solutions

Updated RefSet = Best b from RefSet Pool

22

RefSet after Updatex1 x2 x3 x4 f(x)

1.1383 1.2965 0.8306 0.715 0.14

0.7016 0.5297 1.2078 1.4633 0.36

0.5269 0.287 1.2645 1.6077 0.59

1.1963 1.3968 0.6801 0.446 0.62

0.3326 0.1031 1.3632 1.8311 0.99

0.3368 0.1099 1.3818 1.9389 1.02

0.3127 0.0949 1.3512 1.8589 1.03

0.7592 0.523 1.3139 1.7195 1.18

0.2004 0.0344 1.4037 1.9438 1.24

1.3892 1.9305 0.1252 -0.0152 1.45

23

Additional Strategies

• Reference Set– Rebuilding– Multi-tier

• Subset Generation– Subsets of size > 2

• Combination Method– Variable number of solutions

24

RebuildingRefSet Rebuilt RefSet

b1

b2

DiversificationGeneration Method

Reference SetUpdate Method

25

2-Tier RefSet

RefSet

b1

b2

Solution CombinationMethod

ImprovementMethod

Try here first

If it fails, thentry here

26

3-Tier RefSet

RefSet

b1

b2

Solution CombinationMethod

ImprovementMethod

Try here first

If it fails, thentry here

b3

Try departingsolution here

27

Subset Generation• Subset Type 1: all 2-element subsets.• Subset Type 2: 3-element subsets derived from the 2-

element subsets by augmenting each 2-element subset to include the best solution not in this subset.

• Subset Type 3: 4-element subsets derived from the 3-element subsets by augmenting each 3-element subset to include the best solutions not in this subset.

• Subset Type 4: the subsets consisting of the best i elements, for i = 5 to b.

28

Subsets of Size > 2

Type 1 Type 2Type 3

Type 4

LOLIB

Random0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

29

Variable Number of Solutions

RefSet of size b

Worst

BestQuality 1

b

2... Generate 5 solutions

Generate 3 solutions

Generate 1 solution

30

Hybrid Approaches

• Use of Memory– Tabu Search mechanisms for intensification and

diversification

• GRASP Constructions

• Combination Methods– GA Operators– Path Relinking

31

Multiobjective Scatter Search

• This is a fruitful research area

• Many multiobjective evolutionary approaches exist (Coello, et al. 2002)

• SS can use similar techniques developed for MOEA (multiobjective evolutionary approches)

32

Multiobjective EA Techniques

• Independent Sampling

– Search on f(x) = wi fi(x)

– Change weights and rerun

• Criterion Selection– Divide reference set into k subsets

– Admission to ith subset is according to fi(x)

33

Advanced Designs

• Reference Set Update– Dynamic / Static– 2 Tier / 3 Tier

• Subset Generation

• Use of Memory– Explicit Memory– Attributive Memory

• Path Relinking

34

An ExampleThe Linear Ordering Problem

Given a matrix of weights E = {eij}mxm, the LOP consists of finding a permutation p of the columns (and rows) in order to maximize the sum of the weights in the upper triangle

Applications Triangulation for Input-Output Economic Tables. Aggregation of individual preferences Classifications in Sports

C p eE p pj i

m

i

m

i j( )

11

1

Maximize

35

An Instance

1234

1 2 3 4

3412

3 4 1 2

p=(1,2,3,4)

cE(p)=12+5+3+2+6+9=37

0462

12035

41102

38900 12 5 3

4 0 2 6

8 3 0 9

11 4 2 0

p*=(3,4,1,2)

cE(p*)=9+8+3+11+4+12=47

36

Diversification Generator• Use of problem structure to create methods in order to

achieve a good balance between quality and diversity.• Quality

– Deterministic constructive method• Diversity

– Random Generator– Systematic Generators (Glover, 1998)

• GRASP constructions. – The method randomly selects from a short list of the most attractive sectors.

• Use of Memory– Modifying a measure of attractiveness proposed by Becker with a

frequency-based memory measure that discourages sectors from occupying positions that they have frequently occupied.

37

Diversity vs. Quality

0.0

0.2

0.4

0.6

0.8

1.0

1.2

1.4

1.6

DG05 DG04 DG02 DG01 DG09 DG08 DG06 DG03 DG07 DG10

Procedure

C

d

C+d

d = Standardized DiversityC = Standardized Quality

Compare the different generators Create a set of 100 solutions with each one

38

Improvement Method• INSERT_MOVE (pj, i) consist of deleting pj from

its current position j to be inserted in position i

• Apply a first strategy– scans the list of sectors in search for the first

sector whose movement results in an improvement

E p( )

0 12 5 3 1 8 3

6 0 3 6 4 4 2

8 5 0 5 7 0 3

2 7 2 0 3 6 0

8 0 3 1 0 4 1

9 1 6 2 13 0 4

2 9 4 5 8 1 0

MoveValue = CE(p’) - CE(p)

CE (p’) = 78 + (1 - 4) + (6 - 0) + (2 - 6) + (13 - 4) = 78 + 8 = 86

39

Solution Combination Method• The method scans (from left to right) each reference

permutation.– Each reference permutation votes for its first element that is still

not included in the combined permutation (“incipient element”).

– The voting determines the next element to enter the first still unassigned position of the combined permutation.

– The vote of a given reference solution is weighted according to the incipient element’s position.

Incipient element (3,1,4,2,5) votes for 4 Solution under construction: (1,4,3,5,2) votes for 4 (3,1,2,4,_ ) (2,1,3,5,4) votes for 5

40

Experiments with LOLIB

GD CK CK10 TS SSOptima deviation

0.15%

0.15% 0.02% 0.04% 0.01%

Number of optima

11 11 27 33 42

Run time (seconds)

0.01 0.10 1.06 0.49 2.35

49 Input-Output Economic Tables

41

Another ExampleA commercial SS implementation

OptimizationProcedure

Input

Output

SystemEvaluator

OptQuest Callable Library (by OptTek) As other context-independent methods separates the

method and the evaluation.

42

OptQuest based Applications

User-writtenApplication

OptQuestCallable Library

SystemEvaluator

Solution Generator

Solution Evaluator

43

Feasibility and Evaluation

ConstraintMapping

Complex SystemEvaluator

PenaltyFunction

x x*F(x*)

G(x*)P(x*)

The OptQuest enginegenerates a new solution

User Implementation

Returns to OptQuest

44

Comparison with Genocop

• Average on 28 hard nonlinear instances

1.0E+03

1.0E+04

1.0E+05

1.0E+06

1.0E+07

1.0E+08

1.0E+09

1.0E+10

1.0E+11

1.0E+12

1.0E+13

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

Evaluations

Aver

age

ob

ject

ive

fun

ctio

n v

alu

e

(Logari

thm

ic s

cale

)

Genocop

OCL

1.0E+03

1.0E+04

1.0E+05

1.0E+06

1.0E+07

1.0E+08

1.0E+09

1.0E+10

1.0E+11

1.0E+12

1.0E+13

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

Evaluations

Aver

age

ob

ject

ive

fun

ctio

n v

alu

e

(Logari

thm

ic s

cale

)

Genocop

OCL

45

Conclusions

• The development of metaheuristics usually entails a fair amount of experimentation (“skill comes from practice”).

• Code objectives:– Quick Start– Benchmark – Advanced Designs

• Scatter Search provides a flexible “framework” to develop solving methods.

46

Metaheuristic Classification

• x/y/z Classification– x = A (adaptive memory) or M (memoryless)– y = N (systematic neighborhood search) or S (random

sampling)– Z = 1 (one current solution) or P (population of

solutions)

• Some Classifications– Tabu search (A/N/1)– Genetic Algorithms (M/S/P)– Scatter Search (M/N/P)

47

Some Classifications

Simulated AnnealingM/S/1

Tabu SearchA/N/1

Genetic AlgorithmM/S/P

Scatter SearchM/N/P

(randomized) (systematic)

(local search)

(population)

48

About the Classifications• Our four main methods (SA, TS, GA, SS) all belong

far from the center (they are very randomized or very systematic)

• Other methods have both some element of randomized and some element of systematic behaviour

• Most implementations will mix the ingredients, and we have an element of local search in population based methods (e.g., Memetic Algorithms), or an element of randomness in systematic approaches (such as random tabu tenure in TS)

• The classifications highlight the differences between methods, but there are also many similarities

49

GA vs. SS (1)• GA has a ”long” history: proposed in the 1970s,

and immediately becoming popular– Not initially used for optimization– Gradually morphed into a metodology whose major

concern is the solution of optimization problems

• The concepts and principles of SS was also proposed early (1970s), but was not popularized until the 1990s– The SS template most often used is from 1998– Propsed to solve Integer Programming problems

50

GA vs. SS (2)

• GA is based on natural processes (genetics, the ”survival of the fittest”, and imitation of the nature)

• SS is based on strategic ideas for how to use adaptive memory– Some TS concepts are critically linked with SS

51

GA vs. SS (3)

• Diversification– GA: mutation– SS: favoring diverse solutions in the reference set,

and generating diverse solutions in the initialization

• Intensification– GA: probabilistic selection of parents, favoring the

fittest parents (but this is not really very intensifying)

– SS: the improvement method

52

GA vs. SS (4)

• GA has a population that is usually 10x larger than the reference set in SS

• GA applies operators (mutation, crossover) to random solutions, SS applies operators (combination, improvement) non-randomly

• Evolution in GA follows random ”survival of the fittest”, in SS there are deterministic rules in the reference set update method

53

GA vs. SS (5)

• Use of Local Search (improvement) is an integral part of SS, but added to GA only to create hybrid/improved approaches

• GA usually limited to combine only a pair of solutions (parents), while SS allows combination of any number of solutions

• GA uses full randomization to create initial population, while SS balances diversity and quality (diversification generation method)

54

Summary of Todays’s Lecture

• Scatter Search– M/N/P (memoryless, systematic ”neighborhood”,

population of solutions)

• Components of Scatter Search:– Diversification Generation– Improvement– Reference Set Update– Subset Generation– Solution Combination