1 introduction to scatter search engg*6140 – paper review presented by: jason harris & stephen...
TRANSCRIPT
11
Introduction to Scatter Introduction to Scatter SearchSearch
ENGG*6140 – Paper ReviewENGG*6140 – Paper ReviewPresented by: Jason Harris & Stephen CoePresented by: Jason Harris & Stephen Coe
M.Sc. CandidatesM.Sc. CandidatesUniversity of GuelphUniversity of Guelph
22
OutlineOutline
IntroductionIntroductionScatter Search TemplateScatter Search Template Diversification Generation MethodDiversification Generation Method Improvement MethodImprovement Method Reference Set Update MethodReference Set Update Method Subset Generation MethodSubset Generation Method Solution Combination MethodSolution Combination Method
Example (0-1 Knapsack Problem)Example (0-1 Knapsack Problem)Comparison with GAComparison with GA
33
IntroductionIntroduction
Evolutionary methodEvolutionary methodFundamental concepts were first introduced in Fundamental concepts were first introduced in the 1970’s and are based on formulations from the 1970’s and are based on formulations from the 1960’sthe 1960’sOriginal proposal in 1977 was tabled by Fred Original proposal in 1977 was tabled by Fred Glover, after that Scatter Search was left until Glover, after that Scatter Search was left until 1990.1990.Uses strategies that both diversify and intensify Uses strategies that both diversify and intensify solutionssolutionsSolutions are generated using combination Solutions are generated using combination strategies as opposed to probabilistic learning strategies as opposed to probabilistic learning approachesapproaches
44
Scatter Search FoundationsScatter Search Foundations
Useful information about the solution is Useful information about the solution is typically contained in a diverse collection typically contained in a diverse collection of elite solutionsof elite solutionsCombination strategies incorporate both Combination strategies incorporate both diversity (extrapolation) and intensification diversity (extrapolation) and intensification (interpolation).(interpolation).Multiple solution combination enhance the Multiple solution combination enhance the opportunity to exploit information opportunity to exploit information contained in the union of elite solutionscontained in the union of elite solutions
55
IntroductionIntroduction
A
B
C
1
2
3
4
Convex
Non-convex
These solutions are in a raw form. In most scatter searches these solutions are subject to heuristic improvement.
66
Scatter Search NotationScatter Search Notation
RefSet – Reference set of RefSet – Reference set of SolutionsSolutions
bb – Size of the reference set – Size of the reference set
xxii – The i – The ithth solution in the solution in the Reference set (xReference set (x11 is the is the best and xbest and xbb is the worst). is the worst).
P – Set of solutions P – Set of solutions generated by generated by diversification generation diversification generation methodmethod
PSize – Size of the PSize – Size of the population of diverse population of diverse solutionssolutions
s – A subset of reference s – A subset of reference solutionssolutions
sssizesize – The size of the subset – The size of the subset of reference solutionsof reference solutions
Scatter Search TemplateScatter Search Template
ImprovementMethod
Diversification GenerationMethod
Reference SetUpdate Method
Subset GenerationMethods ss
ImprovementMethod
Solution CombinationMethod
No New Reference Solutions Added
P
RefSet
88
Diversification Generation MethodDiversification Generation Method
The idea behind the diversification generation The idea behind the diversification generation method is to generate a collection of diverse method is to generate a collection of diverse solutionssolutions
The quality of the solutions is not of importanceThe quality of the solutions is not of importance
Generation methods are often customized to Generation methods are often customized to specific problemsspecific problems
PSize is usually set to the maximum of 100 or PSize is usually set to the maximum of 100 or 5*5*bb
Can be totally deterministic or partially randomCan be totally deterministic or partially random
99
Improvement MethodImprovement Method
Must be able to handle both feasible and Must be able to handle both feasible and infeasible solutionsinfeasible solutions
It is possible to generate multiple instances of It is possible to generate multiple instances of the same solutionthe same solution
Generally employs local searches not unlike Generally employs local searches not unlike those previously introduced in this class those previously introduced in this class (steepest descent)(steepest descent)
This is the only component that is not necessary This is the only component that is not necessary to implement the scatter search algorithmto implement the scatter search algorithm
1010
Subset Combination MethodSubset Combination Method
Construct subsets by building subsets of Construct subsets by building subsets of Type 1, Type 2, Type 3 and Type 4 Type 1, Type 2, Type 3 and Type 4 subsetssubsets
For a RefSet of For a RefSet of bb there are approximately there are approximately (3(3bb-7)*-7)*bb/2 subset combinations/2 subset combinations
The number of subsets can be reduced by The number of subsets can be reduced by considering just one layer of subsets to considering just one layer of subsets to reduce computational timereduce computational time
1111
Solution Combination MethodSolution Combination Method
Generally problem specific, because it is Generally problem specific, because it is directly related to a solution representationdirectly related to a solution representationCan generate more than one solution and Can generate more than one solution and can depend on the quality of the solutions can depend on the quality of the solutions being combinedbeing combinedCan also generate infeasible solutionsCan also generate infeasible solutionsIf a subset has been calculated on a If a subset has been calculated on a previous iteration it is not necessary to do previous iteration it is not necessary to do the calculation againthe calculation again
1212
Reference Update MethodReference Update Method
Objective is to generate a collection of both high Objective is to generate a collection of both high quality solutions and diverse solutionsquality solutions and diverse solutionsThe number of Solution included in the RefSet is The number of Solution included in the RefSet is usually less than 20usually less than 20Consists of the Consists of the bb11 best solutions from the best solutions from the preceding step (solution combination or preceding step (solution combination or diversification generation)diversification generation)Consists of the Consists of the bb22 solutions that have the largest solutions that have the largest Euclidian distance from the current RefSet Euclidian distance from the current RefSet solutionssolutionsMultiple techniques are employed to update the Multiple techniques are employed to update the reference set (Static, Dynamic, 2-Tier etc…)reference set (Static, Dynamic, 2-Tier etc…)
1313
Example (0-1 Knapsack)Example (0-1 Knapsack)
Maximize:Maximize:
11x11x11+10x+10x22+9x+9x33+12x+12x44+10x+10x55+6x+6x66+7x+7x77+5x+5x88+3x+3x99+8x+8x1010
(Co-efficients represent profit for each item)(Co-efficients represent profit for each item)
Subject to:Subject to:
33x33x11+27x+27x22+16x+16x33+14x+14x44+29x+29x55+30x+30x66+31x+31x77+33x+33x88+14x+14x99+18x+18x1010100100
(Co-efficients represent weight for each item)(Co-efficients represent weight for each item)
xxii={0,1} for i=1,…,10={0,1} for i=1,…,10
1414
Diversification GeneratorDiversification GeneratorOur goal is to generate a diverse population from a random seed:Our goal is to generate a diverse population from a random seed:
x=(0,0,0,0,0,0,0,0,0,0)x=(0,0,0,0,0,0,0,0,0,0)
Select h Select h n-1, we will choose h=5 n-1, we will choose h=5
x’x’1+hk1+hk=1-x=1-x1+hk1+hk for k=0,1,…,n/h for k=0,1,…,n/h
(Values that are not visited are equal to the original seed x)(Values that are not visited are equal to the original seed x)
Another set of diverse solutions are generated base on the compliment of x’:Another set of diverse solutions are generated base on the compliment of x’:
x”x”ii=1-x’=1-x’II
h x' x''
1 (1,1,1,1,1,1,1,1,1,1) (0,0,0,0,0,0,0,0,0,0)
2 (1,0,1,0,1,0,1,0,1,0) (0,1,0,1,0,1,0,1,0,1)
3 (1,0,0,1,0,0,1,0,0,1) (0,1,1,0,1,1,0,1,1,0)
4 (1,0,0,0,1,0,0,0,1,0) (0,1,1,1,0,1,1,1,0,1)
5 (1,0,0,0,0,1,0,0,0,0) (0,1,1,1,1,0,1,1,1,1)
1515
Diversification GeneratorDiversification Generator
Solution Trial Solution Objective ValueWeight
Constraint
1 (1,1,1,1,1,1,1,1,1,1) 81 245
2 (1,0,1,0,1,0,1,0,1,0) 40 123
3 (1,0,0,1,0,0,1,0,0,1) 38 96
4 (1,0,0,0,1,0,0,0,1,0) 24 76
5 (1,0,0,0,0,1,0,0,0,0) 17 63
6 (0,0,0,0,0,0,0,0,0,0) 0 0
7 (0,1,0,1,0,1,0,1,0,1) 41 122
8 (0,1,1,0,1,1,0,1,1,0) 43 149
10 (0,1,1,1,1,0,1,1,1,1) 64 182
9 (0,1,1,1,0,1,1,1,0,1) 57 169
1616
Improvement MethodImprovement Method
Constraintin xofefficient -Co
Function Objectivein xofefficient -Co Ratio
i
i
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,1,1,1,0,1)
Objective = 57
Weight = 169
1717
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,1,1,0,0,1)
Objective = 52
Weight = 1361→0
1818
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,0,1,0,0,1)
Objective = 46
Weight = 1061→0
1→0
1919
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,0,0,0,0,1)
Objective = 39
Weight = 751→0
1→0
1→0
2020
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,1,0,0,0,0,1)
Objective = 49
Weight = 1041→0
1→0
1→0
0→1
2121
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,0,0,0,0,1)
Objective = 39
Weight = 751→0
1→0
1→0
0→1
2222
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(1,1,1,1,0,0,0,0,0,1)
Objective = 50
Weight = 1081→0
1→0
1→0
0→1
0→1
2323
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,0,0,0,0,1)
Objective = 39
Weight = 751→0
1→0
1→0
0→1
0→1
2424
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,0,1,0,0,1)
Objective = 46
Weight = 1061→0
1→0
1→0
0→1
0→1
0→1
2525
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,0,0,0,0,1)
Objective = 39
Weight = 751→0
1→0
1→0
0→1
0→1
0→1
2626
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,0,0,0,1,1)
Objective = 42
Weight = 891→0
1→0
1→0
0→1
0→1
0→1
0→1
2727
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,1,0,0,1,1)
Objective = 48
Weight = 1191→0
1→0
1→0
0→1
0→1
0→1
0→1
0→1
2828
Improvement MethodImprovement Method
x1 = 0.333
x2 = 0.370
x3 = 0.563
x4 = 0.857
x5 = 0.345
x6 = 0.200
x7 = 0.226
x8 = 0.152
x9 = 0.214
x10 = 0.444
(0,1,1,1,0,0,0,0,1,1)
Objective = 42
Weight = 891→0
1→0
1→0
0→1
0→1
0→1
0→1
Most Improved Feasible Solution of #9
2929
Improvement MethodImprovement Method
Solution Trial SolutionObjective
ValueImproved Solution
Objective Value
1 (1,1,1,1,1,1,1,1,1,1) 81 (0,1,1,1,0,0,0,0,1,1) 42
2 (1,0,1,0,1,0,1,0,1,0) 40 (1,0,1,1,1,0,0,0,0,0) 42
3 (1,0,0,1,0,0,1,0,0,1) 38 (1,0,0,1,0,0,1,0,0,1) 38
4 (1,0,0,0,1,0,0,0,1,0) 24 (1,0,0,1,1,0,0,0,1,0) 36
5 (1,0,0,0,0,1,0,0,0,0) 17 (1,0,1,1,0,1,0,0,0,0) 38
6 (0,0,0,0,0,0,0,0,0,0) 0 (0,1,1,1,0,0,0,0,0,1) 39
7 (0,1,0,1,0,1,0,1,0,1) 41 (0,1,0,1,0,1,0,0,0,1) 36
8 (0,1,1,0,1,1,0,1,1,0) 43 (0,1,1,1,1,0,0,0,1,0) 44
9 (0,1,1,1,0,1,1,1,0,1) 57 (0,1,1,1,0,0,0,0,1,1) 42
10 (0,1,1,1,1,0,1,1,1,1) 64 (0,1,1,1,0,0,0,0,1,1) 42
3030
Reference Set UpdateReference Set Update
Solution Improved Solution Objective Value
42
42
3 (1,0,0,1,0,0,1,0,0,1) 38
4 (1,0,0,1,1,0,0,0,1,0) 36
5 (1,0,1,1,0,1,0,0,0,0) 38
6 (0,1,1,1,0,0,0,0,0,1) 39
7 (0,1,0,1,0,1,0,0,0,1) 36
44
9 (0,1,1,1,0,0,0,0,1,1) 42
10 (0,1,1,1,0,0,0,0,1,1) 42
1 (0,1,1,1,0,0,0,0,1,1)
2 (1,0,1,1,1,0,0,0,0,0)
8 (0,1,1,1,1,0,0,0,1,0)
Candidate Solution
Distance to solutionMinimumDistanceSolution 1 Solution 2 Solution 8
5 4 7 4
4 (1,0,0,1,1,0,0,0,1,0) 5 3 3 2
5 (1,0,1,1,0,1,0,0,0,0) 5 3 5 2
6 (0,1,1,1,0,0,0,0,0,1) 1 4 3 1
3 6 5 3
Reference Set UpdateReference Set UpdateIn the previous slide, the elite solutions were taken as 1, 2 and 8. Diversity In the previous slide, the elite solutions were taken as 1, 2 and 8. Diversity
also needs to be incorporated into the Reference set by taking the solutions also needs to be incorporated into the Reference set by taking the solutions that are farthest from the best solutions.that are farthest from the best solutions.
Distance: (Solution 1 and Solution 8)Distance: (Solution 1 and Solution 8)
(0, 1, 1, 1, 0, 0, 0, 0, 1, 1) Solution 1(0, 1, 1, 1, 0, 0, 0, 0, 1, 1) Solution 1
(0 ,1 ,1 ,1 ,1 ,0 ,0 ,0 ,1 ,0)(0 ,1 ,1 ,1 ,1 ,0 ,0 ,0 ,1 ,0) Solution 8 Solution 8
(0+0+0+0+1+0+0+0+0+1) = 2 (0+0+0+0+1+0+0+0+0+1) = 2
3 (1,0,0,1,0,0,1,0,0,1)
7 (0,1,0,1,0,1,0,0,0,1)
3232
Subset GenerationSubset GenerationSolution Solution
Objective Value
1 (0,1,1,1,0,0,0,0,1,1) 42
2 (1,0,1,1,1,0,0,0,0,0) 42
8 (0,1,1,1,1,0,0,0,1,0) 44
3 (1,0,0,1,0,0,1,0,0,1) 38
7 (0,1,0,1,0,1,0,0,0,1) 36
Type 1 Solutions
(1,2) (1,8) (1,3) (1,7)(2,8) (2,3) (2,7)(8,3) (8,7)(3,7)
Type 2 Solutions
(1,2,8) (1,3,8) (1,7,8)(2,3,8) (2,7,8)(3,7,8)
Type 3 Solutions
(1,2,8,3) (1,7,8,2)(3,7,8,1)
Type 4 Solutions
(1,2,8,3,7)
3333
Solution CombinationSolution Combination
Sol’n x1 x2 x3 x4 x5 x6 x7 x8 x9 x10
3 0.322 0.000 0.000 0.322 0.000 0.000 0.322 0.000 0.000 0.322
7 0.000 0.305 0.000 0.305 0.000 0.305 0.000 0.000 0.000 0.305
8 0.000 0.373 0.373 0.373 0.373 0.000 0.000 0.000 0.373 0.000
Total 0.322 0.678 0.373 1.000 0.373 0.305 0.322 0.000 0.373 0.627
Sj
Sj
jOV
jixjOV
xScore i
)(
)()(
3434
Solution CombinationSolution Combination
0
1ix
If score (i) > 0.5
If score (i) ≤ 0.5
Sol’n x1 x2 x3 x4 x5 x6 x7 x8 x9 x10
3 0.322 0.000 0.000 0.322 0.000 0.000 0.322 0.000 0.000 0.322
7 0.000 0.305 0.000 0.305 0.000 0.305 0.000 0.000 0.000 0.305
8 0.000 0.373 0.373 0.373 0.373 0.000 0.000 0.000 0.373 0.000
Total 0.322 0.678 0.373 1.000 0.373 0.305 0.322 0.000 0.373 0.627
x’ = ( 0, 1, 0, 1, 0, 0, 0, 0, 0, 1 )
3535
Scatter Search Comparison to GAScatter Search Comparison to GA
RefSet size vs. Generation SizeRefSet size vs. Generation SizeAll solutions participate in combination in Scatter All solutions participate in combination in Scatter SearchSearchEvolution of the population is controlled by Evolution of the population is controlled by deterministic rulesdeterministic rulesLocal search procedures are integral to Scatter Local search procedures are integral to Scatter SearchSearchScatter Searches are not generally limited to Scatter Searches are not generally limited to combining two “parent” solutionscombining two “parent” solutionsInitial population is not constructed in a random Initial population is not constructed in a random mannermanner
Scatter Search ApplicationsScatter Search ApplicationsVehicle RoutingVehicle Routing Rochat and Taillard (1995); Ochi, et al. (1998); Atan and Rochat and Taillard (1995); Ochi, et al. (1998); Atan and
Secomandi (1999); Rego and LeSecomandi (1999); Rego and Leãão (2000); Corbero (2000); Corberán, et án, et al. (2002)al. (2002)
TSPTSP Olivia San Martin (2000)Olivia San Martin (2000)
Arc RoutingArc Routing Greistorfer (1999)Greistorfer (1999)
Quadratic AssignmentQuadratic Assignment Cung et al. (1996)Cung et al. (1996)
Financial Product DesignFinancial Product Design Consiglio and Zenios (1999)Consiglio and Zenios (1999)
Neural Network TrainingNeural Network Training Kelly, Rangaswamy and Xu (1996); Laguna and MartKelly, Rangaswamy and Xu (1996); Laguna and Martí í (2001)(2001)
Combat Forces Assessment ModelCombat Forces Assessment Model Bulut (2001)Bulut (2001)
Graph DrawingGraph Drawing Laguna and MartLaguna and Martí (1999)í (1999)
Linear OrderingLinear Ordering Laguna, MartLaguna, Martí and Campos (2001)í and Campos (2001)
Unconstrained OptimizationUnconstrained Optimization Fleurent, et al. (1996); Laguna and MartFleurent, et al. (1996); Laguna and Martí (2000)í (2000)
Bit RepresentationBit Representation Rana and Whitely (1997)Rana and Whitely (1997)
Multi-objective AssignmentMulti-objective Assignment Laguna, LourenLaguna, Lourençoço and Mart and Martí (2000)í (2000)
Optimization SimulationOptimization Simulation Glover, Kelly and Laguna (1996); Grant (1998)Glover, Kelly and Laguna (1996); Grant (1998)
Tree ProblemsTree Problems Canuto, Resende and Ribeiro (2001); Xu Chiu and Canuto, Resende and Ribeiro (2001); Xu Chiu and Glover (2000)Glover (2000)
3737
ReferencesReferencesCung, V., T. Mautor, P. Michelon, and A. Tavares (1997), “A Scatter Search Based Approach for the
Quadratic Assignment Problem” Proceedings of the IEEE-ICEC'97 Conference in Indianapolis, April 13-16
Glover, F., A. Løkketangen and D. Woodruff (1999), “Scatter Search to Generate Diverse MIP Solutions” in OR Computing Tools for Modeling, Optimization and Simulation: Interfaces in Computer Science and Operations Research, M. Laguna and J.L. Gonazalez-Velarde (Eds.), Kluwer Academic Publishers, pp. 299-317http://www-bus.colorado.edu/faculty/glover/ssdiversemip.pdf (Last Access: March 24th 2003)
Glover, F., M. Laguna and R. Martí (2000), “Scatter Search” To appear in Theory and Applications of Evolutionary Computation: Recent Trends, A. Ghosh and S. Tsutsui (Eds.), Springer-Verlaghttp://leeds.colorado.edu/Faculty/Laguna/articles/ss2.pdf (Last Access: March 24th 2003)
Glover, F., M. Laguna and R. Martí (2000), “Fundamentals of Scatter Search and Path Relinking” Control and Cybernetics, 29 (3), pp. 653-684http://leeds.colorado.edu/Faculty/Laguna/articles/ss3.pdf (Last Access: March 24th 2003)
Glover, F., M. Laguna and R. Martí (2002), “Fundamentals of Scatter Search and Path Relinking: Foundations and Advanced Designs” to appear in New Optimization Techniques in Engineering, Godfrey Onwubolu (Eds.)http://leeds.colorado.edu/faculty/glover/aassprad.pdf (Last Access: March 24th 2003)
Laguna, M. (2002), “Scatter Search” in Handbook of Applied Optimization, P. M. Pardalos and M. G. C. Resende (Eds.), Oxford University Press, pp. 183-193http://www-bus.colorado.edu/Faculty/Laguna/articles/ss1.pdf (Last Access: March 24th 2003)
Laguna, M., and R. Martí (2003), “Scatter Search: Methodology and Implementations in C” Kluwer Academic Publishers, Boston, 312 pp.