Revue sur les fonctions duales réalisables Cédric Joncour Groupe de Travail RO 28 janvier 2009
Revue sur les fonctions duales réalisables
Cédric Joncour
Groupe de Travail RO
28 janvier 2009
Plan de l’exposé
1 Rappels et définitions
2 Exemple
3 OPP
Rappels et définitions Exemple OPP
Motivation
Items
1 4
2 5
3 6
voli = 4 ∀i
volbin = 25
∑i
voli = 24
⇒∑
ivoli ≤ volbin
Packing in a container
3
21
4
Cédric Joncour O Revue des DFF O 3 / 24
Rappels et définitions Exemple OPP
Motivation
Items
1 4
2 5
3 6
voli = 4 ∀i
volbin = 25
∑i
voli = 24
⇒∑
ivoli ≤ volbin
Packing in a container
3
21
4
Cédric Joncour O Revue des DFF O 3 / 24
Rappels et définitions Exemple OPP
Motivation
Items
1 4
2 5
3 6
voli = 4 ∀i
volbin = 25
∑i
voli = 24
⇒∑
ivoli ≤ volbin
Packing in a container
3
21
4
Cédric Joncour O Revue des DFF O 3 / 24
Rappels et définitions Exemple OPP
Motivation
Items
1 4
2 5
3 6
voli = 4 ∀i
volbin = 25
∑i
voli = 24
⇒∑
ivoli ≤ volbin
Packing in a container
3
21
4
Cédric Joncour O Revue des DFF O 3 / 24
Rappels et définitions Exemple OPP
Rappel : bin packing
Borne inférieur valide :
LB =
∑i wi
W
Arrondi :LB =
⌈∑i wi
W
⌉
Cédric Joncour O Revue des DFF O 4 / 24
Rappels et définitions Exemple OPP
Exemple
wi :
1
6
2
5
3
4
4
4
5
2
12 3 4
5
W = 7
∑i
wi = 21
⇒ LB = 3
Cédric Joncour O Revue des DFF O 5 / 24
Rappels et définitions Exemple OPP
Exemple
wi :
1
6
2
5
3
4
4
4
5
2
12 3 4
5 W = 7
∑i
wi = 21
⇒ LB = 3
Cédric Joncour O Revue des DFF O 5 / 24
Rappels et définitions Exemple OPP
Exemple
wi :
1
6
2
5
3
4
4
4
5
2
12 3 4
5 W = 7∑i
wi = 21
⇒ LB = 3
Cédric Joncour O Revue des DFF O 5 / 24
Rappels et définitions Exemple OPP
DéfinitionDual Feasible Function (DFF)f : [0, 1]→ [0, 1] est une fonction dual réalisable (DFF) si∀S,
∑x∈S
x ≤ 1⇒∑x∈S
f (x) ≤ 1
Exemple
f ε0 : [0, 1] → [0, 1] avec ε ∈ [0, 12 ]
x 7→
1, si x > 1− ε,x si ε ≤ x ≤ 1− ε,0, si x < ε.
Cédric Joncour O Revue des DFF O 6 / 24
Rappels et définitions Exemple OPP
DéfinitionDiscrete Dual Feasible Function (DFF)f : [0,C ]→ [0,C ′] est une fonction discrète dual réalisable sif est une fonction discrète tel que∀S,
∑x∈S
x ≤ C ⇒∑x∈S
f (x) ≤ f (C) = C ′
Exemple
f k0 : [0,C ] → [0,C ′] avec k ∈ [0, C
2 ]
x 7→
C , si x > C − k ,x si k ≤ x ≤ C − k ,0, si x < k .
Cédric Joncour O Revue des DFF O 7 / 24
Rappels et définitions Exemple OPP
Conséquence
Borne inférieur valide :
LB =
∑i f (wi)
f (W )
Arrondi :LB =
⌈∑i f (wi)
f (W )
⌉
Cédric Joncour O Revue des DFF O 8 / 24
Rappels et définitions Exemple OPP
Exemple : pour k = W2
x
f (x)
f k0
W2
W
W
f k0 : [0,W ] → [0,W ]
x 7→
W , si x > W
2 ,W2 si x = W
2 ,
0, si x < W2 .
Cédric Joncour O Revue des DFF O 9 / 24
Rappels et définitions Exemple OPP
Exemple : pour k = W2
wi :
1
6
2
5
3
4
4
4
5
2
f (wi) :
1
7
2
7
3
7
4
7
5
0
W = 7
∑i
f (wi) = 28
⇒ LB = 4
Cédric Joncour O Revue des DFF O 10 / 24
Rappels et définitions Exemple OPP
Exemple : pour k = W2
wi :
1
6
2
5
3
4
4
4
5
2
f (wi) :
1
7
2
7
3
7
4
7
5
0
W = 7
∑i
f (wi) = 28
⇒ LB = 4
Cédric Joncour O Revue des DFF O 10 / 24
Rappels et définitions Exemple OPP
Exemple : pour k = W2
wi :
1
6
2
5
3
4
4
4
5
2
f (wi) :
1
7
2
7
3
7
4
7
5
0
W = 7∑i
f (wi) = 28
⇒ LB = 4
Cédric Joncour O Revue des DFF O 10 / 24
Rappels et définitions Exemple OPP
Propriétés
DéfinitionUne fonction f est super-additive ssi∀x , y , f (x + y) ≥ f (x) + f (y)
PropositionSi une fonction f est croissante, super-additive avec f (0) = 0,alors f est une DFF
Cédric Joncour O Revue des DFF O 11 / 24
Rappels et définitions Exemple OPP
DominanceDéfinitionf � f ′ si ∀ci ≤ C , f (ci )
f (C)≤ f ′(ci )
f ′(C).
f ≺ f ′ si f � f ′ et ∃cj ≤ C , f (ci )f (C)
< f ′(ci )f ′(C)
.
DéfinitionUne DFF f est maximale (MDFF) s’il n’existe de DFF f ′ telque f � f ′
PropositionUne fonction f est une MDFF si
f est croissante, f est super-additive et f (0) = 0,∀x ∈ [0,C ], f (x) + f (C − X ) = f (C)
Cédric Joncour O Revue des DFF O 12 / 24
Rappels et définitions Exemple OPP
Exemple
x
f (x)
f k0
k C − kC
C
f k0 : [0,C ] → [0,C ]
x 7→
C , si x > C − k,x si k ≤ x ≤ C − k,0, si x < k.
Cédric Joncour O Revue des DFF O 13 / 24
Rappels et définitions Exemple OPP
Exemple
x
f (x)
f kFS,1
Ck+1
kCk+1
C
kC
C
f kFS,1 : [0,C ] → [0, kC ]
x 7→
xk, si x(k+1)
C ∈ N,
⌊x(k + 1)C
⌋C , sinon.
Cédric Joncour O Revue des DFF O 14 / 24
Rappels et définitions Exemple OPP
Exemple
x
f (x)
f kFS,2
k C2
CC − k
bCk c
1
f kFS,2 : [0,C ] → [0,
⌊Ck
⌋]
x 7→
⌊
Ck
⌋−⌊
C−xk
⌋, si x > C
2 ,
1, si k ≤ x ≤ C2 ,
0, si x < k.
Cédric Joncour O Revue des DFF O 15 / 24
Rappels et définitions Exemple OPP
Exemple
x
f (x)
f kCCM,1
k C2
C − kC
2bCk c
2
f kCCM,1 : [0,C ] → [0, 2
⌊Ck
⌋]
x 7→
2(bC
k c − bC−x
k c), si x > C
2 ,
bCk c, si x = C
2 ,
b xk c, si x < C
2 .
Cédric Joncour O Revue des DFF O 16 / 24
Rappels et définitions Exemple OPP
Exemple
x
f (x)
f kVDB,1
CCk
(k−1)Ck
k − 1
1
f kVDB,1 : [0,C ] → [k − 1]
x 7→{
kxC − 1, si kx
C ∈ N∗,
bkxC c, sinon.
Cédric Joncour O Revue des DFF O 17 / 24
Rappels et définitions Exemple OPP
Exemple
x
f (x)
f kVDB,2
k (k−1)Ck
C
2k − 2
2
f kVDB,2 : [0,C ] → [2k − 2]
x 7→
2k − 2, si C − Ck ≤ x ≤ C ,
2bkxC c, si C
2 < x < C − Ck ,
k − 1, si x = C2 ,
2dkxC e − 2, si C
k < x < C2 ,
0, si 0 ≤ x ≤ Ck .
Cédric Joncour O Revue des DFF O 18 / 24
Rappels et définitions Exemple OPP
Problème de placement
QuestionLes DFF sont-elles utilisables pour le problème de placement2D ?
Cédric Joncour O Revue des DFF O 19 / 24
Rappels et définitions Exemple OPP
RappelContainer Interval graphs G1 and G2
Propriétés de Gi (1 ≤ i ≤ 2)
1 Gi est un graphe d’intervalle,
2 α(Gi ,w) ≤W ;
3⋂
i E (Gi) = ∅.
Cédric Joncour O Revue des DFF O 20 / 24
Rappels et définitions Exemple OPP
Problème de placement
QuestionComment les utiliser ?
Résoudre un KNPmax
∑i
piδi∑i
f (wi)g(hi)δi ≤ f (W )g(H)
δi ∈ {0, 1}
Cédric Joncour O Revue des DFF O 21 / 24
Rappels et définitions Exemple OPP
Problème de placement
QuestionQuand les utiliser ?
Avant les procédures de testsPour déterminer des bornes supérieuresPour vérifier la non-réalisabilité d’un placement
Durant les procédures de tests
Cédric Joncour O Revue des DFF O 22 / 24
Rappels et définitions Exemple OPP
Résultat des tests
Benchmark 01/16 01/16 01/16 FS FS FSOKP nodes OPP calls time OKP nodes OPP calls time
gcut1 69 18 0 33 0 0gcut2 2873 169 0 519 51 0gcut3 16503 564 0 2234 235 4gcut4 310308 61380 36 72159 18316 195gcut5 92 45 0 52 13 0gcut6 1348 78 0 278 22 0gcut7 8471 207 0 852 124 2gcut8 313847 14685 21 55485 9037 255gcut9 75 10 0 12 2 0gcut10 1176 88 0 335 31 0gcut11 29446 1426 1 1616 212 8gcut12 102310 3096 5 8178 593 109gcut13 - - - - - -cgcut1 44 11 0 14 1 0cgcut2 933 881 108 - - -cgcut3 2061 1408 1 356 102 0okp1 12341 1667 3 3244 661 10okp2 - - 1503 23626 7310 20okp3 58161 9931 30 8233 816 5okp4 26088 4637 132 1458 15 2okp5 - - - 5733 643 11
Cédric Joncour O Revue des DFF O 23 / 24
Rappels et définitions Exemple OPP
DéfinitionData-dependent Dual Feasible Function (DDFF)Soit I = {1, . . . , n} tel que ci ≤ CUne fonction f : [0,C ]→ [0,C ′] est une DDFF sif est une fonction discrète tel que∀I ′ ⊂ I ,
∑i∈I′
ci ≤ C ⇒∑i∈I′
f (ci) ≤ f (C) = C ′
Exemple
f kDDFF : [0,C ] → [0,KP(C , J)] avec J = {i ∈ I : 1
2C ≥ ci ≥ k}
x 7→
KP(C , J)− KP(C − x , J), si x > C
2 ,
1, si C2 ≥ x ≥ k,
0, sinon.
Cédric Joncour O Revue des DFF O 24 / 24