IntroductionContributionsResultsConclusionsPerspectives
Exploiting tree decomposition within VNS
for solving constraint optimization problems
Mathieu Fontaine Samir Loudni Patrice Boizumault
GREYC (CNRS - UMR 6072) – Universite de CaenBoulevard du Marechal Juin
14000 Caen
May 22, 2012
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 1 / 38
IntroductionContributionsResultsConclusionsPerspectives
1 IntroductionTree DecompositionVNS
2 ContributionsDGVNS
Tightness Dependant Tree Decomposition
3 Results
4 Conclusions
5 Perspectives
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 2 / 38
IntroductionContributionsResultsConclusionsPerspectives
Background
Constraint Optimisation Problem
WCSP
Two approaches:Complete search: best solution, optimality proof.
Branch and Bound, constraints filtering...
Local search: good solution, no optimality proof, lower computationtime.
IDWalk [Neveu et al., 2004], VNS/LDS+CP [Loudni et al., 2008]
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 3 / 38
IntroductionContributionsResultsConclusionsPerspectives
Exploiting problem’s structure
Tree decomposition:
Using problem structure to solve it
Complete search:
BTD [Terrioux & Jegou, 2003], RDS-BTD [Sanchez et al., 2010] ...
Local search:
?
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 4 / 38
IntroductionContributionsResultsConclusionsPerspectives
Motivation
Many real life constraint optimization problems are very large.
Many of them are very structured.
Our goal: Take advantage of this structure to guide a VNS localsearch.
Tree Decomposition Methods allow to reveal the structure of theproblem.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 5 / 38
IntroductionContributionsResultsConclusionsPerspectives
Weighted Constraint Satisfaction Problems
WCSP
(X ,D, C, k) is a WCSP:
X = {X1, . . . ,Xn} set of variables,
D = {D1, . . . ,Dn} set of their finite domains,
C = {c1, . . . , ce} set of constraints,
set of variables (scope) of ci : var(ci ),cost function fci : ⊗j∈var(ci )Dj → [0..k],
k > 0 is an integer value (maximal cost value)
Goal: to find a complete assignment minimizing the sumof the costs of unsatisfied constraints.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 6 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tree Decomposition
Introduced by Robertson and Seymour [Journal of algorithms,1986].
Partition the graph into smaller groups (clusters) of stronglyconnected variables.
Create the acyclic graph of clusters.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 7 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tree Decomposition
Tree Decomposition
A tree decomposition of G = (X ,E ) is a pair (CT ,T ) where:
T = (I ,A) is a tree with nodes set I and edges set A,
CT = {Ci | i ∈ I} is a family of subsets of X such that:
1 ∪i∈I Ci = X ,2 ∀ (u, v) ∈ E , ∃Ci ∈ CT s.t. u, v ∈ Ci ,3 ∀ i , j , k ∈ I , if node j is on the path from i to k in T , then
Ci ∩ Ck ⊆ Cj .
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 8 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tree Decomposition
We use a tree decomposition method based on a triangulation of theconstraints graph.
It proceeds in 3 steps:1 Triangulation (MCS),2 Search of maximal cliques (graph of clusters),3 Joint Tree (Maximum spanning tree).
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 9 / 38
IntroductionContributionsResultsConclusionsPerspectives
Constraint Graph example
let P = (X ,D, C, k) be a WCSPdefined as:
X = {A,B,C ,D,E ,F}C = {C1(A,B,E ),C2(A,C ),C3(D,C ),C4(B,D),C5(D,F )}
B
A
D
F
C
E
constraint graph associated to P
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 10 / 38
IntroductionContributionsResultsConclusionsPerspectives
Constraint Graph example
let P = (X ,D, C, k) be a WCSPdefined as:
X = {A,B,C ,D,E ,F}C = {C1(A,B,E ),C2(A,C ),C3(D,C ),C4(B,D),C5(D,F )}
B
A
D
F
C
E
constraint graph associated to P
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 10 / 38
IntroductionContributionsResultsConclusionsPerspectives
Triangulation
B
A
D
F
C
E
original graph
B
A
D
F
C
E
triangulated graph
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 11 / 38
IntroductionContributionsResultsConclusionsPerspectives
Triangulation
B
A
D
F
C
E
original graph
B
A
D
F
C
E
triangulated graph
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 11 / 38
IntroductionContributionsResultsConclusionsPerspectives
Maximal cliques (graph of clusters)
B
A
D
F
C
E
triangulated graph
B,A
F,D
B,C,D
A,B,C
A,B,E
D
B,C
B
graph of clusters
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 12 / 38
IntroductionContributionsResultsConclusionsPerspectives
Maximal cliques (graph of clusters)
B
A
D
F
C
E
triangulated graph
B,A
F,D
B,C,D
A,B,C
A,B,E
D
B,C
B
graph of clusters
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 12 / 38
IntroductionContributionsResultsConclusionsPerspectives
Joint Tree (Maximal spanning tree)
B,A
F,D
B,C,D
A,B,C
A,B,E
D
B,C
B
graph of clusters
A,B,C
B,C,D
B,C
D
B,A
A,B,E
F,D
tree decomposition
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 13 / 38
IntroductionContributionsResultsConclusionsPerspectives
Joint Tree (Maximal spanning tree)
B,A
F,D
B,C,D
A,B,C
A,B,E
D
B,C
B
graph of clusters
A,B,C
B,C,D
B,C
D
B,A
A,B,E
F,D
tree decomposition
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 13 / 38
IntroductionContributionsResultsConclusionsPerspectives
VNS [Mladenovic and Hansen, 1997]
Let Nk be the set of all combinations of k variables and S a currentsolution:
Select in Nk a set X of k variables to unfix in S .
unassign X in S
Rebuild S into S ′
if S ′ better than S
Intensification: S ← S ′ and k ← kinit
else
Diversification: k ← k + 1
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 14 / 38
IntroductionContributionsResultsConclusionsPerspectives
Exploiting tree decomposition
Local search:
Guiding the search using Tree Decomposition
Decomposition guided VNS (DGVNS)
Refining tree decomposition using the constraints properties
Tightness Dependent Tree Decomposition (TDTD)
[Fontaine et al., 2011]
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 15 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution: basic ideas
The graph of clusters constitutes a map of the problem.
Clusters gather very correlated variables.
Covering all the clusters increases the diversification of the search.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 16 / 38
IntroductionContributionsResultsConclusionsPerspectives
Scen08 structure (e = 458, n = 5, 286)
X39
X40
X95
X96
X10
9
X11
7
X13
2
X13
3
X14
7
X15
3
X16
4
X17
5
X18
5
X18
7
X22
1
X27
9
X28
2
X29
0
X29
2
X29
3
X29
4
X29
7
X30
0
X30
1
X31
1
X31
5
X31
6
X31
7
X32
2
X32
6
X33
0
X33
5
X35
7
X37
2
X37
8
X37
9
X38
3
X38
6
X40
2
X40
3X
404
X40
5
X40
6X
407
X40
8
X41
6
X90
X33
3
X89
X76
X91
X13
0
X33
1
X17
8
X18
0
X10
7X
162
X16
3X
177
X17
9X
181
X18
2X
183
X26
7
X13
1X
266
X37
1X
381
X19
4X
191
X27
3
X36
6X
193
X19
8X
240
X38
5X
391
X21
7X
237
X37
6
X81
X82
X16
5X
166
X27
6
X17
6X
189
X19
2X
197
X22
7X
239
X36
4X
365
X14
8X
367
X36
8
X14
6X
199
X25
7
X27
1
X27
4
X35
X12
9
X35
5X
167
X19
6
X36
9
X45
7
X18
6
X19
0
X27
2
X37
5
X37
7
X28
3X
284
X28
5
X28
6
X12
7X
168
X45
6
X13
9
X15
8X
159
X38
7
X20
8X
209
X20
4
X20
5
X20
7
X26
4
X38
0
X20
6
X26
8
X26
9
X19
5X
201
X23
6X
270
X27
5
X27
8X
332
X6
X7
X16
0X
161
X29
9
X25
9X
41X
42X
373
X38
2
X30
6X
296
X29
8X
392
X14
5
X31
4
X39
3
X77
X78
X16
9X
172
X17
3X
362
X36
3
X71
X72
X14
0X
141
X17
0X
171
X36
0X
361
X13
8
X35
6
X13
4X
135
X13
6X
137
X27
7X
291
X30
3X
358
X35
9
X24
2X
338
X0
X3
X4
X10
X85
X97
X98
X99
X24
4
X43
0
X43
1
X43
5
X44
1
X44
2X
443
X44
8
X44
9
X45
0
X22
8
X22
9X
230
X23
1
X12X43
X46
X23
2
X23
3X
234
X41
1
X42
9
X43
2
X45
X47
X48
X53
X45
2
X33
9X
340
X34
1X
342
X34
3X
344
X34
5X
93X
346
X92
X11
4
X24
5X
246
X44
4X
445
X13
X22
0
X22
5
X37
4
X41
8
X44
7
X24
X26
X52
X43
8
X44
0
X11
X25
X43
3
X44
6
X43
7X
451
X51
X24
7
X33
X34
X32
5X
417
X43
9X
419
X42
0
X42
1
X42
2
X42
3
X42
4
X43
4
X26
1X
262
X26
3X
304
X30
5X
313
X31
8X
319
X35
1
X35
2
X40
1
X40
9
X41
0
X32
3 X15
7
X37
X38
X12
8X
260
X41
5
X24
9
X15
X14
X16
X17
X18
X10
1X
126
X19
X20
X25
1X
255
X45
4X
36
X33
6 X73
X74
X12
0X
121
X12
2X
123
X12
4
X84
X11
9X
21X
22X
65X
66X
337
X35
4
X79
X80
X38
9
X39
0
X2
X54
X60
X61
X42
5
X38
8
X42
6
X42
7
X45
3
X70
X12
5
X42
8
X56
X94
X8
X31
X32
X50
X10
3X
327
X32
8
X22
2X
223
X67
X68
X69
X83
X21
8
X23
X44
X57
X26
5
X62
X55
X24
1X
253
X25
4X
256
X49X1
X9
X27
X10
0
X24
8
X25
0
X25
2
X32
9
X87
X88
X11
5
X21
0
X21
1
X21
2X
213
X21
5
X21
6
X35
3
X20
3
X22
6
X32
4
X34
9
X35
0
X5
X28
X29
X30
X86
X21
4X
334
X34
7X
348
X11
0X
111
X11
2X
113
X24
3X
436
X14
4X
289
X31
2X
394
X39
5X
396
X39
7X
398
X39
9
X29
5X
116
X17
4X
280
X28
8X
310
X40
0
X30
2
X14
3X
235
X30
8
X63
X64 X
224
X30
7
X10
2X
150
X10
6X
149
X10
4X
105
X15
5
X15
6
X28
7
X32
0
X32
1
X11
8X
142
X15
1X
152
X15
4X
258
X58
X20
0
X28
1
X41
2
X41
4
X30
9
X38
4X
108
X21
9X
413
X45
5X
59
X75
X18
4
X18
8
X20
2
X23
8
X37
0
Figure: Scen08 instance’s structureM. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 17 / 38
IntroductionContributionsResultsConclusionsPerspectives
Scen08 decomposition
Figure: Scen08 decomposition (From Simon de Givry)
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 18 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution: Decomposition Guided VNS
Let the variable neighborhood structures Nk,i consist in all combinaisonsof k variables in cluster Ci . DGVNS consist in:
Center the search on a cluster Ci ,
Select variables in this cluster (and if necessary its neighbors),
Unassign these variables in the current solution
Rebuild the solution
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 19 / 38
IntroductionContributionsResultsConclusionsPerspectives
Intensification/Diversification in DGVNS
If solution is improved
Intensify the search by setting k to kinit and moving to anothercluster(Csucc(i)).
Else
Diversify the search by increasing k and moving to another cluster(Csucc(i)).
Moving from cluster Ci to next cluster Csucc(i) provides a betterdiversification.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 20 / 38
IntroductionContributionsResultsConclusionsPerspectives
Refining Tree Decomposition
Tree Decomposition allows to build relevant neighborhoods.
But, hard parts of the problem may still remain hidden.
Removing constraints that are easy to satisfy will lead to morerelevant decompositions.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 21 / 38
IntroductionContributionsResultsConclusionsPerspectives
Constraint Tightness
Let c be a constraint:
Constraint Relation
Its relation Rc is the set of all possible assignations of the scope variables.
Cost function
Its cost function fc : Rc 7→ [0, k>].
Constraint tightness
t(c) =#{tuple | fc(tuple) > 0, tuple ∈ Rc}
#{tuple ∈ Rc}
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 22 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tightness Dependant Tree Decomposition
Tightness dependant tree decomposition is performed by:
Removing constraints whose tightness is lower than a fixed treshold,
Applying tree decomposition to this subgraph.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 23 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tightness dependent tree decomposition
λ = 0.3:
A B E f1a a b 10a b b 10a a c 10a b c 100b a b 500b b b 200b a c 0b b c 0
t(c1) = 0.75
A C f2a a 0a c 0b a 1000b c 0
t(c2) = 0.25
D C f3b a 10b c 120c a 0c c 350
t(c3) = 0.75
B D f4a b 1000a c 0b b 0b c 10
t(c4) = 0.5
D F f5b a 1000b c 1000c a 1000c c 0
t(c5) = 0.75
AE
B
D
C
F
original graph
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 24 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tightness dependent tree decomposition
λ = 0.3:
A B E f1a a b 10a b b 10a a c 10a b c 100b a b 500b b b 200b a c 0b b c 0
t(c1) = 0.75
A C f2a a 0a c 0b a 1000b c 0
t(c2) = 0.25
D C f3b a 10b c 120c a 0c c 350
t(c3) = 0.75
B D f4a b 1000a c 0b b 0b c 10
t(c4) = 0.5
D F f5b a 1000b c 1000c a 1000c c 0
t(c5) = 0.75
AE
B
D
C
F
original graph
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 24 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tightness dependent tree decomposition
λ = 0.3:
A B E f1a a b 10a b b 10a a c 10a b c 100b a b 500b b b 200b a c 0b b c 0
t(c1) = 0.75
A C f2a a 0a c 0b a 1000b c 0t(c2) = 0.25
D C f3b a 10b c 120c a 0c c 350t(c3) = 0.75
B D f4a b 1000a c 0b b 0b c 10t(c4) = 0.5
D F f5b a 1000b c 1000c a 1000c c 0t(c5) = 0.75
AE
B
D
C
F
original graph
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 24 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tightness dependent tree decomposition
λ = 0.3:
A B E f1a a b 10a b b 10a a c 10a b c 100b a b 500b b b 200b a c 0b b c 0
t(c1) = 0.75
A C f2a a 0a c 0b a 1000b c 0t(c2) = 0.25
D C f3b a 10b c 120c a 0c c 350t(c3) = 0.75
B D f4a b 1000a c 0b b 0b c 10t(c4) = 0.5
D F f5b a 1000b c 1000c a 1000c c 0t(c5) = 0.75
AE
B
D
C
F
original graph
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 24 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tightness dependent tree decomposition
λ = 0.3:
A B E f1a a b 10a b b 10a a c 10a b c 100b a b 500b b b 200b a c 0b b c 0
t(c1) = 0.75
A C f2a a 0a c 0b a 1000b c 0t(c2) = 0.25
D C f3b a 10b c 120c a 0c c 350t(c3) = 0.75
B D f4a b 1000a c 0b b 0b c 10t(c4) = 0.5
D F f5b a 1000b c 1000c a 1000c c 0t(c5) = 0.75
AE
B
D
C
F
constraint removal
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 24 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tightness dependent tree decomposition
λ = 0.3:
A B E f1a a b 10a b b 10a a c 10a b c 100b a b 500b b b 200b a c 0b b c 0
t(c1) = 0.75
A C f2a a 0a c 0b a 1000b c 0t(c2) = 0.25
D C f3b a 10b c 120c a 0c c 350t(c3) = 0.75
B D f4a b 1000a c 0b b 0b c 10t(c4) = 0.5
D F f5b a 1000b c 1000c a 1000c c 0t(c5) = 0.75
AE
B
D
C
F
tightness dependentgraph of constraint
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 24 / 38
IntroductionContributionsResultsConclusionsPerspectives
Tightness dependent tree decomposition
λ = 0.3:
A B E f1a a b 10a b b 10a a c 10a b c 100b a b 500b b b 200b a c 0b b c 0
t(c1) = 0.75
A C f2a a 0a c 0b a 1000b c 0t(c2) = 0.25
D C f3b a 10b c 120c a 0c c 350t(c3) = 0.75
B D f4a b 1000a c 0b b 0b c 10t(c4) = 0.5
D F f5b a 1000b c 1000c a 1000c c 0t(c5) = 0.75
ABE
BD
DCDF
tightness dependentdecomposition
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 24 / 38
IntroductionContributionsResultsConclusionsPerspectives
Experimental Protocol
Implementation
Toulbar2
C++
VNS:
rebuild: LDS (Limited Discrepancy Search) + CP (ConstraintPropagation)
We compare our approach with:
VNS
select: conflict-var
ID-Walk.
Experimental Protocol:
3 benchmarks, 10 instances
50 runs per instance,
timeout: 1 hour per run.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 25 / 38
IntroductionContributionsResultsConclusionsPerspectives
Instances (n = #variables,e = #constraints)
RLFAP
Radio Link Frequency Allocation Problem,
Real life problem proposed by the CELAR (Centre d’Electronique deL’ARmement),
3 instances:
scen06: n = 100, e = 1, 222,scen07: n = 200, e = 2, 665,scen08: n = 458, e = 5, 286.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 26 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution of the Tree Decomposition
Instance Method Success Avg time Avg cost
scen06 DGVNS 50/50 112 3,389S∗ = 3, 389 VNS/LDS+CP 15/50 83 3,399
ID-Walk NA 840 3,447 (3,389)
scen07 DGVNS 40/50 317 345,614S∗ = 343, 592 VNS/LDS+CP 1/50 461 355,982
ID-Walk NA 360 373,334 (343,998)
scen08 DGVNS 3/50 1,811 275S∗ = 262 VNS/LDS+CP 0/50 - 394 (357)
ID-Walk NA 3,000 291 (267)
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 27 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution of the Tree Decomposition
Instance Method Success Avg time Avg cost
scen06 DGVNS 50/50 112 3,389S∗ = 3, 389 VNS/LDS+CP 15/50 83 3,399
ID-Walk NA 840 3,447 (3,389)
scen07 DGVNS 40/50 317 345,614S∗ = 343, 592 VNS/LDS+CP 1/50 461 355,982
ID-Walk NA 360 373,334 (343,998)
scen08 DGVNS 3/50 1,811 275S∗ = 262 VNS/LDS+CP 0/50 - 394 (357)
ID-Walk NA 3,000 291 (267)
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 27 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution of the Tree Decomposition
Instance Method Success Avg time Avg cost
scen06 DGVNS 50/50 112 3,389S∗ = 3, 389 VNS/LDS+CP 15/50 83 3,399
ID-Walk NA 840 3,447 (3,389)
scen07 DGVNS 40/50 317 345,614S∗ = 343, 592 VNS/LDS+CP 1/50 461 355,982
ID-Walk NA 360 373,334 (343,998)
scen08 DGVNS 3/50 1,811 275S∗ = 262 VNS/LDS+CP 0/50 - 394 (357)
ID-Walk NA 3,000 291 (267)
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 27 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution of TDTD
Instance Method Success Avg time Avg cost
scen06 DGVNS 50/50 112 3,389S∗ = 3, 389 λ = 0.2 50/50 58 3,389
λ = 0.3 50/50 61 3,389
scen07 DGVNS 40/50 317 345,614S∗ = 343, 592 λ = 0.3 47/50 229 344,198
λ = 0.4 49/50 221 343,600scen08 DGVNS 3/50 1,811 275S∗ = 262 λ = 0.4 6/50 344 274
λ = 0.5 9/50 442 272
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 28 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution of TDTD
Instance Method Success Avg time Avg cost
scen06 DGVNS 50/50 112 3,389S∗ = 3, 389 λ = 0.2 50/50 58 3,389
λ = 0.3 50/50 61 3,389
scen07 DGVNS 40/50 317 345,614S∗ = 343, 592 λ = 0.3 47/50 229 344,198
λ = 0.4 49/50 221 343,600scen08 DGVNS 3/50 1,811 275S∗ = 262 λ = 0.4 6/50 344 274
λ = 0.5 9/50 442 272
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 28 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution of TDTD
Instance Method Success Avg time Avg cost
scen06 DGVNS 50/50 112 3,389S∗ = 3, 389 λ = 0.2 50/50 58 3,389
λ = 0.3 50/50 61 3,389
scen07 DGVNS 40/50 317 345,614S∗ = 343, 592 λ = 0.3 47/50 229 344,198
λ = 0.4 49/50 221 343,600scen08 DGVNS 3/50 1,811 275S∗ = 262 λ = 0.4 6/50 344 274
λ = 0.5 9/50 442 272
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 28 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution of TDTD
Instance Method Success Avg time Avg cost
scen06 DGVNS 50/50 112 3,389S∗ = 3, 389 λ = 0.2 50/50 58 3,389
λ = 0.3 50/50 61 3,389
scen07 DGVNS 40/50 317 345,614S∗ = 343, 592 λ = 0.3 47/50 229 344,198
λ = 0.4 49/50 221 343,600scen08 DGVNS 3/50 1,811 275S∗ = 262 λ = 0.4 6/50 344 274
λ = 0.5 9/50 442 272
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 28 / 38
IntroductionContributionsResultsConclusionsPerspectives
Performance profiles: RLFAP
0
500000
1e+06
1.5e+06
2e+06
2.5e+06
3e+06
0 50 100 150 200 250
ave
rag
e c
ost
CPU time
scen07
DGVNSSDGVNS-0.4
VNS/LDS+CPoptimum
200
300
400
500
600
700
800
900
0 100 200 300 400 500 600
ave
rag
e c
ost
CPU time
scen08
DGVNSSDGVNS-0.5
VNS/LDS+CPoptimum
Figure: Performance profiles on Scen07 and Scen08
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 29 / 38
IntroductionContributionsResultsConclusionsPerspectives
Experiment conclusions
On RLFAP and SPOT5 instances:
Improvement are made in both success rates and computation times.Using DGVNS accelerate the amelioration of the solution quality duringexecution.Tightness dependent tree decomposition successfully allows to refineTree decomposition and enhance DGVNS performances.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 30 / 38
IntroductionContributionsResultsConclusionsPerspectives
GRAPH
Graph benchmark:
random instances,
generated from RLFAP instance.
2 problems:
Graph11: n = 340, e = 3, 417;Graph13: n = 458, e = 4, 915.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 31 / 38
IntroductionContributionsResultsConclusionsPerspectives
Contribution of the Tree Decomposition
Instance Method Success Avg time Avg cost
Graph11 DGVNS 8/50 3, 046 4, 234S∗ = 3, 080 λ = 0.5 12 / 50 2,818 3,643
VNS/LDS+CP 44/50 2, 403 3, 090ID-Walk 0/50 - 41, 604 (27, 894)
Graph13 DGVNS 0/50 - 22, 489 (18, 639)S∗ = 10110 λ = 0.7 0 / 50 - 11,449 (10,268)
VNS/LDS+CP 3/50 3, 477 14, 522ID-Walk 0/50 - 58, 590 (47, 201)
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 32 / 38
IntroductionContributionsResultsConclusionsPerspectives
Experiment conclusions
Experiments on GRAPH instances don’t show similar enhancement,
even using TDTD.
Why?
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 33 / 38
IntroductionContributionsResultsConclusionsPerspectives
Impact of treewidth
Width
The width of T = (I ,A), w(T ) = maxi∈I (|Ci |−1).
Treewidth
The treewidth w− of G is the smallest width of all possible treedecompositions of G .
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 34 / 38
IntroductionContributionsResultsConclusionsPerspectives
Impact of the decomposition’s method
Instance n w− mc w−
n
Scen06 100 11 10 0.11Scen07 200 18 10 0.09Scen08 458 18 10 0.03
Graph05 100 28 8 0.28Graph06 200 54 8 0.27Graph11 340 102 7 0.3Graph13 458 136 6 0.29
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 35 / 38
IntroductionContributionsResultsConclusionsPerspectives
Conclusions
1 Tree decomposition enables to build more relevant neigborhoods.
2 DGVNS clearly outperforms VNS/LDS+CP and ID-Walk on SPOT5instances and CELAR instances.
3 Tightness dependent tree decomposition leads to significantimprovements.
4 The performance of our method relies on the treewidth
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 36 / 38
IntroductionContributionsResultsConclusionsPerspectives
Perspectives
Using cost to decompose the problem,
Using problem structure to parallelize DGVNS.
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 37 / 38
IntroductionContributionsResultsConclusionsPerspectives
Questions?
M. Fontaine, S. Loudni, P. Boizumault (GREYC)Exploiting tree decomposition within VNS May 22, 2012 38 / 38