scatter search methodology and applications
TRANSCRIPT
-
8/9/2019 Scatter Search Methodology and Applications
1/58
Scatter Search:Scatter Search:
Methodology andMethodology and Applications Applications
Manuel LagunaManuel LagunaUniversity of ColoradoUniversity of Colorado
RafaelRafael MartMartUniversity of ValenciaUniversity of Valencia
-
8/9/2019 Scatter Search Methodology and Applications
2/58
-
8/9/2019 Scatter Search Methodology and Applications
3/58
Scatter SearchScatter Search
MethodologyMethodology
-
8/9/2019 Scatter Search Methodology and Applications
4/5844
MetaheuristicMetaheuristic
A metaheuristic refers to a master strategy A metaheuristic refers to a master strategy
that guides and modifies other heuristicsthat guides and modifies other heuristicsto produce solutions beyond those that areto produce solutions beyond those that arenormally generated in a quest for localnormally generated in a quest for localoptimality.optimality.
A metaheuristic is a procedure that has A metaheuristic is a procedure that hasthe ability to escape local optimalitythe ability to escape local optimality
-
8/9/2019 Scatter Search Methodology and Applications
5/58
55
Typical Search TrajectoryTypical 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
Itera t ion
O b j e c
t i v e
F u n c
t i o n
Value
Best Value
-
8/9/2019 Scatter Search Methodology and Applications
6/58
66
Metaheuristic ClassificationMetaheuristic Classification
x/y/zx/y/z ClassificationClassification
x = A (adaptive memory) or M (x = A (adaptive memory) or M ( memorylessmemoryless ))y = N (systematic neighborhood search) or S (randomy = N (systematic neighborhood search) or S (randomsampling)sampling)
z = 1 (one current solution) or P (population ofz = 1 (one current solution) or P (population ofsolutions)solutions)
Some ClassificationsSome ClassificationsTabuTabu search (A/N/1)search (A/N/1)Genetic Algorithms (M/S/P)Genetic Algorithms (M/S/P)Scatter Search (M/N/P)Scatter Search (M/N/P)
-
8/9/2019 Scatter Search Methodology and Applications
7/58
77
Scatter SearchScatter Search
P
Diversification GenerationMethod
Repeat until |P | = PSize
Subset GenerationMethod
ImprovementMethod
Solution CombinationMethod
ImprovementMethod
Stop if no morenew solutions
Reference SetUpdate Method
RefSet
-
8/9/2019 Scatter Search Methodology and Applications
8/58
88
Repeat until |P | = PSize
Scatter Search with RebuildingScatter Search with RebuildingP
Diversification GenerationMethod
Subset GenerationMethod
ImprovementMethod
Solution CombinationMethod
ImprovementMethod
No more newsolutions
Reference SetUpdate Method
RefSet
Diversification GenerationMethod
ImprovementMethod
Stop if MaxIter reached
-
8/9/2019 Scatter Search Methodology and Applications
9/58
99
TutorialTutorial
Unconstrained Nonlinear OptimizationUnconstrained Nonlinear Optimization
ProblemProblem
( ) ( ) ( ) ( )( ) ( )( ) ( )( )
4,,1for1010toSubject
118.19111.101901100Minimize
422
42
2
23
2234
21
2212
K=
++++++
i x
x x x x x x x x x x
i
-
8/9/2019 Scatter Search Methodology and Applications
10/58
1010
Diversification GenerationDiversification Generation
MethodMethod
Subrange 1 Subrange 2 Subrange 3 Subrange 4
-10 -5 0 +5 +10
Probability of selecting a subrange is proportional to a frequency count
-
8/9/2019 Scatter Search Methodology and Applications
11/58
1111
Diverse SolutionsDiverse Solutions
x11.11-9.587.428.83-6.23
1.640.2-3.09-6.08
-1.97
x20.85-6.57-1.71-8.457.48
3.34-3.646.620.67
8.13
x39.48-8.819.284.526
-8.32-5.3-2.33-6.48
-5.63
x2-6.35-2.275.923.187.8
-8.66-7.03-3.121.48
8.02
f ( x)835546.21542078.9901878.0775470.7171450.5
546349.8114023.87469.1279099.9
54537.2
Solution12345
6789
10
-
8/9/2019 Scatter Search Methodology and Applications
12/58
1212
Improvement MethodImprovement MethodSolution x1 x2 x3 x2 f ( x)
1 2.5 5.4 2.59 5.67 1002.72 -0.52 -0.5 0.35 -0.14 138.53 -2.6 5.9 4.23 10 7653.74 0.49 0.53 2.47 5.89 213.75 -3.04 9.45 1.14 0.41 720.16 -1.4 2.46 0.37 -3.94 1646.7
7 -0.36 -0.31 0.8 1.14 57.18 -1.63 2.51 0.73 0.56 21.59 -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)
-
8/9/2019 Scatter Search Methodology and Applications
13/58
-
8/9/2019 Scatter Search Methodology and Applications
14/58
1414
InitialInitial RefSetRefSet
Solutionnumber in P x1 x2 x3 x4 f ( x)
35 -0.0444 0.0424 1.3577 1.8047 2.146 1.133 1.2739 -0.6999 0.5087 3.534 -0.0075 0.0438 1.4783 2.2693 3.549 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.130 3.8599 10 -4.0468 10 9332.445 -4.4942 10 3.0653 10 13706.183 -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
-
8/9/2019 Scatter Search Methodology and Applications
15/58
1515
Subset Generation MethodSubset Generation Method
All pairs of reference solutions that include All pairs of reference solutions that include
at least one new solutionat least one new solution
The method generates (b2The method generates (b2 --b)/2 pairs fromb)/2 pairs fromthe initialthe initial RefSetRefSet
-
8/9/2019 Scatter Search Methodology and Applications
16/58
1616
Combination MethodCombination Method
1 2 3 4 5 6 7 8 9 10 11 12 13
1
23
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
-
8/9/2019 Scatter Search Methodology and Applications
17/58
1717
Alternative Combination Method 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
-
8/9/2019 Scatter Search Methodology and Applications
18/58
1818
Reference Set Update MethodReference Set Update Method
Updated RefSet
Worst
Best1
b
2...
Quality 1
b
2...
Worst
Best
New trialsolution
RefSet of size b
-
8/9/2019 Scatter Search Methodology and Applications
19/58
-
8/9/2019 Scatter Search Methodology and Applications
20/58
2020
RefSetRefSet after Updateafter Update x x11 x x22 x x33 x x44 f f (( x x))
1.13831.1383 1.29651.2965 0.83060.8306 0.7150.715 0.140.14
0.70160.7016 0.52970.5297 1.20781.2078 1.46331.4633 0.360.360.52690.5269 0.2870.287 1.26451.2645 1.60771.6077 0.590.59
1.19631.1963 1.39681.3968 0.68010.6801 0.4460.446 0.620.62
0.33260.3326 0.10310.1031 1.36321.3632 1.83111.8311 0.990.990.33680.3368 0.10990.1099 1.38181.3818 1.93891.9389 1.021.02
0.31270.3127 0.09490.0949 1.35121.3512 1.85891.8589 1.031.03
0.75920.7592 0.5230.523 1.31391.3139 1.71951.7195 1.181.180.20040.2004 0.03440.0344 1.40371.4037 1.94381.9438 1.241.24
1.38921.3892 1.93051.9305 0.12520.1252 --0.01520.0152 1.451.45
-
8/9/2019 Scatter Search Methodology and Applications
21/58
2121
TutorialTutorial
00 --1 Knapsack Problem1 Knapsack Problem
Maximize 10 x 1 + 14 x 2 + 9 x 3 + 8 x 4 + 7 x 5 + 5 x 6 + 9 x 7 + 3 x 8
S.t. 7 x 1 + 12 x 2 + 8 x 3 + 9 x 4 + 8 x 5 + 6 x 6 + 11 x 7 + 5 x 8 < 100
x i = { 0, 1} for i = 1, , 8
-
8/9/2019 Scatter Search Methodology and Applications
22/58
2222
Additional Strategies Additional Strategies
Reference SetReference Set
RebuildingRebuildingMultiMulti--tier tier
Subset GenerationSubset GenerationSubsets of size > 2Subsets of size > 2
Combination MethodCombination MethodVariable number of solutionsVariable number of solutions
-
8/9/2019 Scatter Search Methodology and Applications
23/58
2323
RebuildingRebuilding
RefSet Rebuilt RefSet
b1
b2
DiversificationGeneration Method Reference SetUpdate Method
-
8/9/2019 Scatter Search Methodology and Applications
24/58
2424
22 --TierTier RefSetRefSet
RefSet
b1
b2
Solution CombinationMethod
ImprovementMethod
Try here first
If it fails, thentry here
-
8/9/2019 Scatter Search Methodology and Applications
25/58
-
8/9/2019 Scatter Search Methodology and Applications
26/58
2626
Subset GenerationSubset Generation
Subset Type 1:Subset Type 1: all 2all 2 --element subsets.element subsets.
Subset Type 2:Subset Type 2: 33 --element subsets derivedelement subsets derivedfrom the 2from the 2 --element subsets by augmentingelement subsets by augmentingeach 2each 2 --element subset to include the bestelement subset to include the bestsolution not in this subset.solution not in this subset.Subset Type 3:Subset Type 3: 44 --element subsets derivedelement subsets derivedfrom the 3from the 3 --element subsets by augmentingelement subsets by augmenting
each 3each 3 --element subset to include the bestelement subset to include the bestsolutions not in this subset.solutions not in this subset.Subset Type 4:Subset Type 4: the subsets consisting of thethe subsets consisting of the
bestbestii
elements, forelements, forii
= 5 to b.= 5 to b.
-
8/9/2019 Scatter Search Methodology and Applications
27/58
2727
Subsets of Size > 2Subsets of Size > 2
Type 1 Type 2Type 3
Type 4
LOLIB
Random0%
10%20%
30%
40%
50%
60%
70%
80%
90%
-
8/9/2019 Scatter Search Methodology and Applications
28/58
2828
Variable Number of SolutionsVariable Number of SolutionsQuality
Worst
Best1
b
2... Generate 5 solutions
Generate 3 solutions
Generate 1 solution
RefSet of size b
-
8/9/2019 Scatter Search Methodology and Applications
29/58
2929
Hybrid ApproachesHybrid Approaches
Use of MemoryUse of Memory
TabuTabu Search mechanisms for intensificationSearch mechanisms for intensificationand diversificationand diversification
GRASP ConstructionsGRASP ConstructionsCombination MethodsCombination Methods
GA OperatorsGA OperatorsPathPath RelinkingRelinking
-
8/9/2019 Scatter Search Methodology and Applications
30/58
3030
MultiobjectiveMultiobjective Scatter SearchScatter Search
This is a fruitful research areaThis is a fruitful research area
ManyMany multiobjectivemultiobjective evolutionaryevolutionary
approaches exist (approaches exist ( CoelloCoello , et al. 2002), et al. 2002)
SS can use similar techniques developedSS can use similar techniques developedfor MOEA (for MOEA ( multiobjectivemultiobjective evolutionaryevolutionaryapprochesapproches ))
-
8/9/2019 Scatter Search Methodology and Applications
31/58
3131
MultiobjectiveMultiobjective EA TechniquesEA Techniques
Independent SamplingIndependent Sampling
Search onSearch on f f (( x x)) == wwii f f ii(( x x))Change weights and rerunChange weights and rerun
Criterion SelectionCriterion SelectionDivide reference set intoDivide reference set into kk subsetssubsets
Admission to Admission to ii thth subset is according tosubset is according to f f ii(( x x))
-
8/9/2019 Scatter Search Methodology and Applications
32/58
Scatter SearchScatter Search Applications and Implementations Applications and Implementations
-
8/9/2019 Scatter Search Methodology and Applications
33/58
3333
Scatter Scatter SearchSearch ElementsElements
Diversification Generator MethodDiversification Generator Method
Improvement MethodImprovement MethodReference SetReference Set
InitializationInitializationUpdateUpdateRebuildRebuild
Subset Generation MethodSubset Generation MethodSolution Combination MethodSolution Combination Method
Problem Independent
-
8/9/2019 Scatter Search Methodology and Applications
34/58
-
8/9/2019 Scatter Search Methodology and Applications
35/58
-
8/9/2019 Scatter Search Methodology and Applications
36/58
3636
RefSet DataRefSet Data StructureStructuretypedeftypedef structstruct REFSETREFSET
{{ intint b;b; / * Si ze/ * Si ze */*/doubledouble **sol ;**sol ; / * Sol ut i ons/ * Sol ut i ons */*/doubledouble ** Obj ValObj Val ;; // * Obj ect i ve val ue of sol ut i ons* Obj ect i ve val ue of sol ut i ons */*/intint *order;*order; / * Or der of sol ut i ons *// * Or der of sol ut i ons */intint ** i t eri t er ;; / * Ent er i ng i t er at i on * // * Ent er i ng i t er at i on * /intint NewSol ut i onsNewSol ut i ons ;; / * =1 i f new el ement has been added *// * =1 i f new el ement has been added */
}} REFSETREFSET ;;
bsol
ObjValorder
iterNewSolutions
RefSet nvar
-
8/9/2019 Scatter Search Methodology and Applications
37/58
3737
MainMain FunctionFunctioni nti nt mai n( voi d)mai n( voi d){{
SS *SS * pbpb ;; / * Poi nt er t o pr obl em dat a/ * Poi nt er t o pr obl em dat a ** //i nti nt nvarnvar = 10;= 10; / * Number of var i abl es/ * Number of var i abl es */*/i nti nt b = 10;b = 10; / * Si ze of r ef er ence set/ * Si ze of r ef er ence set ** //i nti nt PSi zePSi ze = 100;= 100; / * Si ze of P/ * Si ze of P */*/
pbpb == SSProblem_DefinitionSSProblem_Definition ( nvar , b, PSi ze( nvar , b, PSi ze ) ;) ;
/ * I nser t her e t he Scat t er Sear ch code *// * I nser t her e t he Scat t er Sear ch code */
SSFree_DataStructuresSSFree_DataStructures ( pb( pb ) ;) ;r et ur n 0;r et ur n 0;
}}
-
8/9/2019 Scatter Search Methodology and Applications
38/58
3838
BasicBasic DesignDesign
pbpb == SSPr obl em_Def i ni t i on( nvar , b, PSi zeSSPr obl em_Def i ni t i on( nvar , b, PSi ze ) ;) ;SSCreate_PSSCreate_P ( pb( pb ) ;) ;SSCreate_RefSetSSCreate_RefSet ( pb( pb ) ;) ;
Whi l eWhi l e (( pbpb -- >>r sr s -- >>NewSol ut i onsNewSol ut i ons ))SSUpdate_RefSetSSUpdate_RefSet ( pb( pb ) ;) ;
SSBest Sol ( pb, sol , &val ueSSBest Sol ( pb, sol , &val ue ) ;) ;SSFr ee_Dat aSt r uct ur es( pbSSFr ee_Dat aSt r uct ur es( pb ) ;) ;
-
8/9/2019 Scatter Search Methodology and Applications
39/58
3939
Advanced Advanced DesignDesignpbpb == SSPr obl em_Def i ni t i on( nvar , b, PSi zeSSPr obl em_Def i ni t i on( nvar , b, PSi ze ) ;) ;SSCreate_PSSCreate_P ( pb( pb ) ;) ;
SSCreate_RefSetSSCreate_RefSet ( pb( pb ) ;) ;
f or ( I t erf or ( I t er =1;=1; I t erI t er r sr s -- >>NewSol ut i onsNewSol ut i ons ))SSUpdate_RefSetSSUpdate_RefSet ( pb( pb ) ;) ;
el seel se
SSRebuild_RefSetSSRebuild_RefSet ( pb( pb ) ;) ;}}SSBest Sol ( pb, sol , &val ueSSBest Sol ( pb, sol , &val ue ) ;) ;SSFr ee_Dat aSt r uct ur es( pbSSFr ee_Dat aSt r uct ur es( pb ) ;) ;
-
8/9/2019 Scatter Search Methodology and Applications
40/58
4040
SSCreate_PSSCreate_Pwhi l e( cur r ent PSi zewhi l e( cur r ent PSi ze p -- >>PSi zePSi ze )){{
SSGener at e_Sol ( pb, solSSGener at e_Sol ( pb, sol ) ;) ;
obj _valobj _val = sol _val ue( sol ) ;= sol _val ue( sol ) ;SSImprove_solutionSSImprove_solution ( pb, sol , &obj _val( pb, sol , &obj _val ) ;) ;
/ * Check whet her sol i s a new sol ut i on *// * Check whet her sol i s a new sol ut i on */
j =1; equal =0; j =1; equal =0;whi l e( j p>p -- >>sol [ j ++] , pbsol [ j ++] , pb -- >>nvarnvar ) ;) ;
/ * Add i mpr oved sol ut i on t o P *// * Add i mpr oved sol ut i on t o P */i f ( ! equal ) {i f ( ! equal ) {f or ( j =1; j nvar ; jnvar ; j ++)++)
pbpb -- >p>p -- >>sol [ cur r ent PSi ze] [ jsol [ cur r ent PSi ze] [ j ] =sol [ j ] ;] =sol [ j ] ;
pbpb -- >p>p -- >>Obj Val [ cur r ent PSi zeObj Val [ cur r ent PSi ze ++] =++] = obj _valobj _val ;;}}}}
-
8/9/2019 Scatter Search Methodology and Applications
41/58
4141
SSCreate_RefSetSSCreate_RefSet/ * Or der sol ut i ons i n P *// * Or der sol ut i ons i n P */p_or der =p_or der = SSOrderSSOrder ( pb( pb -- >p>p -- >>Obj ValObj Val ,, pbpb -- >p>p -- >>PSi zePSi ze ,, pbpb -- >Opt ) ;>Opt ) ;b1 =b1 = pbpb -- >>r sr s -- >b / 2;>b / 2;
/ * Add t he/ * Add t he f i r s tf i r s t (( bestbest ) b1) b1 sol ut i ons i n P t o Ref Set */sol ut i ons i n P t o Ref Set */
/ * Comput e mi ni mum di st ances f r om P t o Ref Set *// * Comput e mi ni mum di st ances f r om P t o Ref Set */f or ( i =1; i p -- >>PSi ze; iPSi ze; i ++)++)
mi n_di st [ i ] =mi n_di st [ i ] = SSDist_RefSetSSDist_RefSet ( pb, b1, pb( pb, b1, pb -- >p>p -- >sol [ i ] ) ;>sol [ i ] ) ;
/ * Add b/ * Add b -- b1 di ver se sol ut i ons t o Ref Set */b1 di ver se sol ut i ons t o Ref Set */f or ( i =b1+1; i r sr s -- >b; i ++)>b; i ++) {{
a=a= SSMax_di st _i ndex( pb, mi n_di stSSMax_di st _i ndex( pb, mi n_di st ) ;) ;/ * Copy sol a f r om P t o/ * Copy sol a f r om P t o Ref setRef set */*/SSUpdate_distancesSSUpdate_distances ( pb, mi n_di st , i( pb, mi n_di st , i ) ;) ;
}}/ * Comput e t he or der i n Ref Set :/ * Comput e t he or der i n Ref Set : orderorder */*/
pbpb -- >>r sr s -- >>NewSol ut i onsNewSol ut i ons == 1;1; pbpb -- >>Cur r ent I t erCur r ent I t er = 1;= 1;
-
8/9/2019 Scatter Search Methodology and Applications
42/58
4242
SSUpdate_RefSetSSUpdate_RefSet
pbpb -- >>r sr s -- >>NewSol ut i onsNewSol ut i ons =0;=0;SSCombi ne_Ref Set ( pbSSCombi ne_Ref Set ( pb ) ;) ;pbpb -- >>Cur r ent I t erCur r ent I t er ++;++;
f or ( a=1; apool _si ze; a++)
{{val ue=val ue= sol _val ue( pbsol _val ue( pb -- >pool [ a] ) ;>pool [ a] ) ;SSI mpr ove_sol ut i on( pb, pbSSI mpr ove_sol ut i on( pb, pb -- >pool [ a] , &val ue) ;>pool [ a] , &val ue) ;
SSTr yAdd_Ref Set ( pb, pbSSTr yAdd_Ref Set ( pb, pb -- >pool [ a] , val ue) ;>pool [ a] , val ue) ;}}pbpb -- >>pool _si zepool _si ze =0;=0;
-
8/9/2019 Scatter Search Methodology and Applications
43/58
4343
Advanced Advanced DesignsDesigns
ReferenceReference SetSet UpdateUpdate
DynamicDynamic // StaticStatic22 Tier Tier / 3/ 3 Tier Tier
SubsetSubset GenerationGenerationUse ofUse of MemoryMemoryExplicitExplicit MemoryMemory
Attributive Attributive MemoryMemory
PathPath RelinkingRelinking
-
8/9/2019 Scatter Search Methodology and Applications
44/58
A I
-
8/9/2019 Scatter Search Methodology and Applications
45/58
An An InstanceInstance
1
2
34
1 2 3 4
3
4
12
3 4 1 2
0 9 8 32 0 11 4
5 3 0 122 3 4 0
0 12 5 34 0 2 6
8 3 0 911 4 2 0
p=(1,2,3,4)
cE(p)=12+5+3+2+6+9=37
p*=(3,4,1,2)
cE(p*)=9+8+3+11+4+12=47
SSSS ff hh LOPLOP
-
8/9/2019 Scatter Search Methodology and Applications
46/58
4646
SSSS for for thethe LOPLOP
Complete the generic codeComplete the generic code
Design specific methods for the problemDesign specific methods for the problem --dependent elementsdependent elements
Diversification Generator MethodDiversification Generator MethodImprovement MethodImprovement Method
Combination MethodCombination Method
Di ifi i GDi ifi i G
-
8/9/2019 Scatter Search Methodology and Applications
47/58
4747
Diversification Generator Diversification Generator Use ofUse of problemproblem structurestructure toto createcreate methodsmethods inin order order totoachieveachieve aa goodgood balancebalance betweenbetween qualityquality andand diversitydiversity ..
QualityQualityDeterministicDeterministic constructiveconstructive methodmethodDiversityDiversity
RandomRandom Generator Generator
SystematicSystematic GeneratorsGenerators (Glover, 1998)(Glover, 1998)GRASP constructions.GRASP constructions.
The method randomly selects from a short list of the mostThe method randomly selects from a short list of the mostattractive sectors.attractive sectors.
Use ofUse of MemoryMemoryMModifyingodifying a measure of attractiveness proposed by Becker witha measure of attractiveness proposed by Becker witha frequencya frequency --based memory measure that discourages sectorsbased memory measure that discourages sectorsfrom occupying positions that they have frequently occupiedfrom occupying positions that they have frequently occupied
Di i Q liDi it Q lit
-
8/9/2019 Scatter Search Methodology and Applications
48/58
4848
Diversity vs. QualityDiversity vs. Quality
Compare several diversification generatorsCreate a set of 100 solutions with each one
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
-
8/9/2019 Scatter Search Methodology and Applications
49/58
S l ti C bi ti M th dSol tion Combination Method
-
8/9/2019 Scatter Search Methodology and Applications
50/58
5050
Solution Combination MethodSolution Combination Method
The method scans (from left to right) each referenceThe method scans (from left to right) each referencepermutation.permutation.
Each reference permutation votes for its first element that is sEach reference permutation votes for its first element that is s tilltillnot included in the combined permutation (incipient element).not included in the combined permutation (incipient element).The voting determines the next element to enter the first stillThe voting determines the next element to enter the first stillunassigned position of the combined permutation.unassigned position of the combined permutation.
The vote of a given reference solution is weighted according toThe vote of a given reference solution is weighted according tothe incipient elements position.the incipient elements 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
E i tExperiments ithwith LOLIBLOLIB
-
8/9/2019 Scatter Search Methodology and Applications
51/58
5151
ExperimentsExperiments withwith LOLIBLOLIB
49 Input-Output Economic Tables
GDGD CKCK CK10CK10 TSTS SSSS
OO ptimaptimadevdev iationiation
0.15%0.15% 0.15%0.15% 0.02%0.02% 0.04%0.04% 0.01%0.01%
NNumber ofumber ofoptimaoptima
1111 1111 2727 3333 4242
RR un timeun time(sec(sec ondsonds ))
0.010.01 0.100.10 1.061.06 0.490.49 2.352.35
Another Example Another Example
-
8/9/2019 Scatter Search Methodology and Applications
52/58
5252
pp
A commercial SS implementation A commercial SS implementationOptQuest Callable Library (by OptTek)As other context-independent methodsseparates the method and the evaluation.
OptimizationProcedure
Input
Output
SystemEvaluator
O QO tQ t b db d A li iA li ti
-
8/9/2019 Scatter Search Methodology and Applications
53/58
5353
OptQuestOptQuest basedbased Applications Applications
Solution Generator
Solution EvaluatorUser-writtenApplication
OptQuestCallable Library
System
Evaluator
FeasibilityFeasibility andand EvaluationEvaluation
-
8/9/2019 Scatter Search Methodology and Applications
54/58
5454
FeasibilityFeasibility andand EvaluationEvaluation
User Implementation
ConstraintMapping Complex SystemEvaluator PenaltyFunction x x*
F( x*)
G( x*)P( x*)
Returns toOptQuest
The OptQuest engine
generates a new solution
ComparisonComparison withwith GenocopGenocop
-
8/9/2019 Scatter Search Methodology and Applications
55/58
5555
ComparisonComparison withwith GenocopGenocopTestTest onon 2828 hardhard nonlinear nonlinear instancesinstances
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 10000Evaluations
A v e r a g e o b
j e c t
i v e
f u n c
t i o n v a
l u e
( L o g a r
i t h m i c s c a
l e )
GenocopOCL
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 10000Evaluations
A v e r a g e o b
j e c t
i v e
f u n c
t i o n v a
l u e
( L o g a r
i t h m i c s c a
l e )
GenocopOCL
ConclusionsConclusions
-
8/9/2019 Scatter Search Methodology and Applications
56/58
5656
ConclusionsConclusions
The development of metaheuristics usuallyThe development of metaheuristics usually
entails a fair amount of experimentationentails a fair amount of experimentation(skill comes from practice).(skill comes from practice).Code objectives:Code objectives:
Quick StartQuick StartBenchmarkBenchmark
Advanced Designs Advanced DesignsScatter Search provides a flexibleScatter Search provides a flexible
framework to develop solving methodsframework to develop solving methods ..
CallCall forfor PapersPapers
-
8/9/2019 Scatter Search Methodology and Applications
57/58
5757
CallCall for for PapersPapers
European Journal of Operational ResearchEuropean Journal of Operational Research
Feature Issue onFeature Issue on
SCATTER SEARCH METHODSSCATTER SEARCH METHODSFOR OPTIMIZATIONFOR OPTIMIZATION
Deadline for submissions: June 30, 2003Deadline for submissions: June 30, 2003
http://http:// www.uv.es/~rmarti/ejor.htmlwww.uv.es/~rmarti/ejor.html
QuestionsQuestions
-
8/9/2019 Scatter Search Methodology and Applications
58/58
5858
QuestionsQuestions