Branch and Bound
Das Verfahren zur Lösung von IP-Problemen
Idee * Entscheidungsbaum * Lösungen
Branch and Bound 1
Branching
Branching = Verzweigen
 Eine sinnvolle Verzweigung muss ein im
Prinzip in einfacher zu lösende Probleme
erfolgen.
 Beim Verzweigen durch Problemteilung
darf keine relevante Lösung verloren
gehen.

Branch and Bound 2
Bounding
Bounding = Beschränken
 Für Max-Probleme sucht man obere
Schranken
 Für Min-Probleme untere Schranken
 Das relaxierte Problem liefert immer eine
obere bzw. untere Schränke

Branch and Bound 3
Entscheidungsbaum
Branch and Bound 4
Abbruchkriterien (1)
FC1: L(LPj) = Ø → L(IPj) = Ø
FC2: Lösung des LPj ist schlechter als die
beste bisher bekannte Lösung des IP:
zj ≤ zlfd
FC3: Falls die Lösung von LPj eine Lösung
des IPj ist, wird geprüft, ob sie besser
ist als die beste bekannte Losung:
zj > zlfd → zlfd*= zj
Branch and Bound 5
Abbruchkriterien (2)
Branch and Bound 6
Branch and Bound – Beispiel LP0
Max
z
mit
z  21x1  11x2
6x1  4 x2  15
u.d.N.
x1 , x2  0
Max
x1
x2
RS
Max
x3
x2
RS
z0
21
11
0
z0
7
3
52 1 2
x3
6
4
15
x1
1
entweder ist x1  2 oder x1  3
Branch and Bound 7
2
6
2
3
5
2
B&B – Graph LP0
Branch and Bound 8
B&B – LP11 und LP12
Max
z11
x1
x2
21 11
RS
Max
x1'
x2
RS
Max
0
z11
21
11
42
z11
x1'
x3
9
11
2
x3
6
4
15
x3
6
4
3
x2
 32
x1'
1
0
2
x1
1
0
2
x1
1
Max
x1
x2
RS
Max
x4
x2
RS
z21
21
11
0
z21
21
11
63
x3
6
4
15
x3
6
4
3
x4
1
0
3
x1
1
0
3
Branch and Bound 9
1
4
RS
50 1 4
4
 keine zul. Lösung!
3
4
2
B&B – Graph LP11 und LP12
Branch and Bound 10
B&B – Baumtiefe 1
LP0 : z0  52,5
x1  52 ; x2  0
x1  2
x1  3
LP11 : z11  50, 25
LP12 : 
x1  2; x2  0,75
FC1
Branch and Bound 11
B&B – Graph LP21 und LP22
Branch and Bound 12
B&B – Baumtiefe 2
LP0 : z0  52,5
x1  52 ; x2  0
x1  3
x1  2
x2  0
LP21 : z21  42
x1  2; x2  0
LP11 : z11  50, 25
LP12 : 
x1  2; x2  0,75
FC1
x2  1
FC1
LP22 : z22  49,5
x1  11/ 6; x2  1
Branch and Bound 13
B&B – Grph LP31 und LP 32
Branch and Bound 14
B&B – Baumtiefe 3
LP0 : z0  52,5
x1  52 ; x2  0
x1  3
x1  2
LP11 : z11  50, 25
LP12 : 
x1  2; x2  0,75
FC1
x2  0
x2  1
LP22 : z22  49,5
LP21 : z21  42
x1  11/ 6; x2  1
x1  2; x2  0
FC3
FC1
x1  1
x1  2
LP31 : z31  43 34
LP32 : 
x1  1; x2  2 14
FC1
Branch and Bound 15
B&B – Graph LP41 und LP42
Branch and Bound 16
B&B – Vollständiger Entscheidungsbaum
LP0 : z0  52,5
x1  52 ; x2  0
x1  2
x2  0
LP11 : z11  50, 25
LP12 : 
x1  2; x2  0, 75
FC1
LP21 : z21  42
x2  1
LP22 : z22  49,5
x1  2; x2  0
x1  11/ 6; x2  1
FC3
x2  1
x2  2
x1  3
x1  2
LP31 : z31  43 34
LP32 : 
x1  1; x2  2
FC1
1
4
x2  3
LP41 : z31  43
LP42 : z42  43 12
x1  1; x2  2
x1  12 ; x2  3
FC3
FC2
Branch and Bound 17
B&B – Problemlösung
Da alle Knoten abgearbeitet sind, ist die
gesuchte Lösung erreicht und …
 …es wurde nachgewiesen, dass die Lösung
wirklich optimal ist.
 Branching: Grundsätzlich auch in mehr als
einen Knoten möglich. Alle so erzeugten
Knoten kommen in die sog.
Kandidatenliste.
 Bounding: An dieser Stelle können alle
Hilfsmittel eingesetzt werden, um eine
möglichst Schranke zu berechnen.

Branch and Bound 18
B&B – Vor- und Nachteile







Anbindung an den LP-Modul
Gestaltungsfreiheit des Baumbaus
Heuristische Unterstützung
Verwendbarkeit der Lösung bei Abbruch
Hoher Speicheraufwand
Hoher Rechenaufwand
Veränderliche Problemgröße
Branch and Bound 19

BranchandBound