Académique Documents
Professionnel Documents
Culture Documents
entiers
Maria Zrikem
2023 - 2024
1
Méthodes de B&B
Les méthodes de séparations et évaluations (branch-and-bound = B&B)
sont des méthodes exactes souvent utilisées pour résoudre les problèmes
combinatoires NP-complets sans énumérer toutes les solutions.
Méthodes de B&B
Ces bornes sont utilisées pour couper quelques branches de l'arbre et ainsi
éviter d'explorer tout l’arbre : si l’évaluation partielle d'un nœud xi a
montré que sa qualité est supérieure à la borne supérieure, le sous arbre en
question sera élagué; sinon, le nœud sera divisé en sous nœuds.
Principe du B&B
Arborescence du B&B
Principe du B&B
Construction d'une solution initiale
fi
.
Principe du B&B
Branchement
Principe du B&B
Evaluation
Principe du B&B
Exploration
fi
Principe du B&B
Exploration (suite)
La branche est terminale (ou noeud stérile) : c’est un nœud qui ne produit pas
de sous-problème lors du branchement :
soit elle correspond à un ss-problème Si non réalisable (domaine réalisable
vide
soit elle correspond à un ss-problème Si réalisable (solution entière) et par
la suite, elle ne peut être séparée. Dans ce cas, si cette solution a une
valeur b₁≥b₀, alors elle sera rejetée. Si b₁<b₀, la solution sera
temporairement mémorisée comme étant la meilleure solution et elle
remplacera la solution heuristique initiale. Dans ce cas, la valeur de b₀
sera remplacée par b₁
10
)
fi
s
Principe du B&B
Exploration
11
Algorithme du B&B : cas général
12
Relaxation linéaire ou continue d’un PLNE
• Problème de programmation
n
linéaire en nombres entiers
Min ∑c j xj
j =1
n
(P) Sujet à ∑a ij x j = bi i = 1, ! , m
j =1
x j ≥ 0, entier j = 1, ! , n
13
B&B en PLNE : application numérique
x1 + 10 x 2 = 45 Min z = − x1 − 5 x 2
Sujet à 11x1 + 6 x 2 ≤ 66
x1 + 10 x 2 ≤ 45
x1 , x 2 ≥ 0, entiers
11x1 + 6 x 2 = 66
x1 + 10 x 2 = 45 Min z = − x1 − 5 x 2
Sujet à 11x1 + 6 x 2 ≤ 66
x1 + 10 x 2 ≤ 45
x1 , x 2 ≥ 0, entiers
11x1 + 6 x 2 = 66
éliminée
x1 ≥ ⎡3.75⎤ = 4 15
B&B en PLNE : application numérique
x1 + 10 x 2 = 45 Min z = − x1 − 5 x 2
Sujet à 11x1 + 6 x 2 ≤ 66
x1 + 10 x 2 ≤ 45
x1 , x 2 ≥ 0, entiers
11x1 + 6 x 2 = 66
Nouvelles contraintes :
()
Tranche de F P x1 ≤ ⎢⎣3.75⎥⎦ = 3
éliminée
x1 ≥ ⎡⎢3.75⎤⎥ = 4
()
Par contre, ce qui reste de F P n'est plus connexe puisqu'il
( ) ( )
comporte deux sous-ensembles F P 2 et F P 3 . 16
B&B en PLNE : application numérique
x1 + 10 x 2 = 45 Min z = − x1 − 5 x 2
Sujet à 11x1 + 6 x 2 ≤ 66
x1 + 10 x 2 ≤ 45
x1 , x 2 ≥ 0, entiers
11x1 + 6 x 2 = 66
Poursuivre la résolution en associant des problèmes (P2 ) à F P 2 ( )
et (P3 ) à F P 3 .( )
17
La meilleure des deux solutions optimales de (P2 ) et (P3 )
est la solution optimale de (P ).
x1 + 10 x 2 = 45 Min z = − x1 − 5 x 2
Sujet à 11x1 + 6 x 2 ≤ 66
x1 + 10 x 2 ≤ 45
x1 , x 2 ≥ 0, entiers
11x1 + 6 x 2 = 66
• Prochaine itération
Choisir un des deux problèmes (P2) ou (P3 )
Le traiter comme nous avons fait pour P.
19
B&B en PLNE : application numérique
x1 + 10 x 2 = 45 (P3 ) Min z = − x1 − 5 x 2
Sujet à 11x1 + 6 x 2 ≤ 66
x1 + 10 x 2 ≤ 45
x1 ≤3
x1 , x 2 ≥ 0, entiers
( )
Sol. opt. prob. relaxé P 3 :
F P3( ) ( )
F P2 x1 = 3, x2 = 4.2
z = −24
11x1 + 6 x 2 = 66
x2 ≥ ⎡⎢ 4.2 ⎤⎥ = 5 20
B&B en PLNE : application numérique
(P3 ) Min z = − x1 − 5 x 2
x1 + 10 x 2 = 45
Sujet à 11x1 + 6 x 2 ≤ 66
x1 + 10 x 2 ≤ 45
x1 ≤3
x1 , x 2 ≥ 0, entiers
Nouvelles contraintes considérées:
x2 ≤ ⎢⎣ 4.2 ⎥⎦ = 4
F P5( ) ( )
F P2
x2 ≥ ⎡⎢ 4.2 ⎤⎥ = 5
11x1 + 6 x 2 = 66
(P4 ) Min z = − x1 − 5 x2 (P )
5
Min z = − x1 − 5 x2
Sujet à 11x1 + 6 x2 ≤ 66 Sujet à 11x1 + 6 x2 ≤ 66
x1 + 10 x2 ≤ 45 x1 + 10 x2 ≤ 45
x1 ≤3 x1 ≤3
x2 ≥5 x2 ≤4
x1 , x2 ≥ 0, entiers x1 , x2 ≥ 0, entiers 21
B&B en PLNE : application numérique
• Prochaine itération
Choisir un des problèmes {P5 , P4 , P2 } qui n’a pas encore été
traité.
Le traiter comme nous avons fait pour P.
22
B&B en PLNE : application numérique
x1 + 10 x 2 = 45 (P )
5
Min z = − x1 − 5 x2
Sujet à 11x1 + 6 x2 ≤ 66
x1 + 10 x2 ≤ 45
x1 ≤3
x2 ≤4
x1 , x2 ≥ 0, entiers
( )
Sol. opt. prob. relaxé P 5 :
x1 = 3, x2 = 4
F P5( ) ( )
F P2 z = −23
11x1 + 6 x 2 = 66
Puisque la solution du sous-problème relaxé est entière, elle est une solution
réalisable de (P).
Nous ne générons pas de nouveau sous-problème puisque nous avons
identifié la meilleure solution de cette région du domaine réalisable de (P).
Au cours du processus, nous conservons la meilleure solution entière
rencontrée dont la valeur constitue une borne supérieure BS sur la valeur
optimale de (P). 23
B&B en PLNE : application numérique
• Prochaine itération
Choisir un des problèmes {P4 , P2 }qui n’a pas encore été traité.
Le traiter comme nous avons fait pour (P).
24
B&B en PLNE : application numérique
x1 + 10 x 2 = 45 (P ) Min z = − x1 − 5 x2
4
Sujet à 11x1 + 6 x2 ≤ 66
x1 + 10 x2 ≤ 45
x1 ≤3
x2 ≥5
x1 , x2 ≥ 0, entiers
( )
F P2 ( )
Problème P 4 non réalisable
F (P )= Φ
4
11x1 + 6 x 2 = 66
25
B&B en PLNE : application numérique
• Prochaine itération
Choisir un des problèmes {P2 }qui n’a pas encore été traité.
Le traiter comme nous avons fait pour (P).
26
B&B en PLNE : application numérique
x1 + 10 x 2 = 45 (P2 ) Min z = − x1 − 5 x 2
Sujet à 11x1 + 6 x 2 ≤ 66
x1 + 10 x 2 ≤ 45
x1 ≥4
x1 , x 2 ≥ 0, entiers
( )
Sol. opt. prob. relaxé P 2 :
( )
F P2 x1 = 4, x2 = 3.667
z = −22.333
11x1 + 6 x 2 = 66
28
B&B en PLNE : application numérique
Représentation comme un arbre d’énumération
Problèmes candidats (P(54PP)2 ) Min
Min −xx−1115−−x555xxx222
Minz =zz =
− x
((PP5 ) x1 = 3.75 ( ) Min z = 1− x − 25 x
3 Sujet
Sujetààà 11
Sujet 11xx1x111++++61666xxx2x222≤≤≤2≤66
11 66
66
(P43 )
(P ) Sujet à x11++x10
x11x1+ + 10
+xx6 x≤≤
110
10 x x ≤
222 ≤ 45
2 45≤45
4566
10 2x
x1 ≤ 3 x1x,11x1x12 ≥ 0, ≥≤2≤ 433
(P2 ) x1 ≥ 4 x1x, x12 ≥ 0, ≥≤ 354 ≤
x1 ,22x2 ≥ 0,
x11, x22 ≥≥ 0, 0,
(P )
2 (P )
3 x2 = 4.2
x2 ≥ 5 x2 ≤ 4
Sol. non entière
z = – 22.333 > BS
(P )4 (P )5
Solution
Non-réalisable Sol. entière
BS = – 23
Solution optimale
29
Exemple d’application du B&B : Pb D’affectation
30
B&B en PLNE : Pb D’affectation
Modélisation
31
Exemple d’application du B&B : Pb D’affectation
Calcule de borne
32
33
Exemple d’application du B&B : Pb D’affectation
34
Exemple d’application du B&B : Pb D’affectation
Calcule de borne
35
A(1)
A(2) A(3) A(4)
36
Exemple d’application du B&B : Pb D’affectation
37
Exemple d’application du B&B : Pb D’affectation
38
Exemple d’application du B&B : Pb D’affectation
39
Exemple d’application du B&B : Pb D’affectation
On peut maintenant supprimer les sous-problèmes dont la borne est plus
grande ou égale à U.
40
• Temps total : 2 + 6 + 8 + 9 = 25
41
Exemple d’application du B&B : Pb D’affectation
42
Exemple d’application du B&B : Pb D’affectation
43
Exemple d’application du B&B : Pb D’affectation
44
B&B en PLNE : Pb de sac à dos
Deux simplifications
45
B&B en PLNE : Pb de sac à dos
46
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F (U= -∞) :
F1 F2
47
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F1 (U= -∞) :
F1 F2
x2=0 x2=1
F11 F12
48
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F11 (U= -∞) :
F
x3=1 x3=0
▪ Relaxation de F11 : x* = (1,0,1,1)
▪ b(F11) = 3 600 000 > U F1 F2
x2=0 x2=1
▪ U = 3 600 000
F11 F12
3 600 000
49
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F12 (U11=3 600 000) :
F1 F2
▪ Relaxation de F12 : x*=(3/5,1,1,0) x2=0 x2=1
▪ b(F12) = 4 360 000 > U
F11 F12
▪ F121 : x1 = 0 F122 : x1 = 1
x1=0 x1=1
3 600 000
F121 F122
50
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F121 (U11=3 600 000) :
51
Exemple d’application du B&B : Pb D’affectation
F
x3=1 x3=0
F1 F2
x2=0 x2=1
F11 F12
x1=0
F121 F122
4 200 000
52
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F122 (U121= 4 200 000) :
53
Exemple d’application du B&B : Pb D’affectation
F
x3=1 x3=0
F1 F2
x2=0 x2=1
F11 F12
x1=0 x1=1
F121 F122
4 200 000
54
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F2 (U121= 4 200 000) :
▪ Relaxation de F2 : x*=(1,1,0,2/3)
▪ b(F2) = 4 333 333 > U
▪ F21 : x4 = 0 F22 : x4 = 1
55
Exemple d’application du B&B : Pb D’affectation
F
x3=1 x3=0
F1 F2
x2=0 x2=1 x4=0 x4=1
F121 F122
4 200 000
56
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F21 (U121= 4 200 000) :
57
Exemple d’application du B&B : Pb D’affectation
F
x3=1 x3=0
F1 F2
x2=0 x2=1 x4=0 x4=1
F122
F121
4 200 000
58
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F22 (U121= 4 200 000) :
59
Exemple d’application du B&B : Pb D’affectation
F
x3=1 x3=0
F1 F2
x2=0 x2=1 x4=0 x4=1
F121 F122
F221 F222
4 200 000
60
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F221 (U121= 4 200 000) :
61
Exemple d’application du B&B : Pb D’affectation
F
x3=1 x3=0
F1 F2
x2=0 x2=1 x4=0 x4=1
62
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F222 (U121= 4 200 000) :
Coût Bénéfice Rendement
4/5 Inv. 1 500 000 1 600 000 3.20
1 Inv. 2 700 000 2 200 000 3.14
0 Inv. 3 400 000 1 200 000 3.00
1 Inv. 4 300 000 800 000 2.67
63
Exemple d’application du B&B : Pb D’affectation
F
x3=1 x3=0
F1 F2
x2=0 x2=1 x4=0 x4=1
F2221 F2222
64
B&B en PLNE : Pb de sac à dos
▪ Relaxation de F222 (U121= 4 200 000) :
Coût Bénéfice Rendement
? Inv. 1 500 000 1 600 000 3.20
1 Inv. 2 700 000 2 200 000 3.14
0 Inv. 3 400 000 1 200 000 3.00
1 Inv. 4 300 000 800 000 2.67
65
Exemple d’application du B&B : Pb D’affectation
F
x3=1 x3=0
F1 F2
x2=0 x2=1 x4=0 x4=1
F2221 F2222
66
B&B en PLNE : Pb de sac à dos
67