DM545 Linear and Integer Programming Lecture 13
Cutting Planes and Branch and Bound
Marco Chiarandini
Department of Mathematics & Computer Science University of Southern Denmark
Cutting Planes and Branch and Bound Marco Chiarandini Department - - PowerPoint PPT Presentation
DM545 Linear and Integer Programming Lecture 13 Cutting Planes and Branch and Bound Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Cutting Plane Algorithms Outline Branch and Bound 1.
Department of Mathematics & Computer Science University of Southern Denmark
Cutting Plane Algorithms Branch and Bound
2
Cutting Plane Algorithms Branch and Bound
3
Cutting Plane Algorithms Branch and Bound
+}
4
Cutting Plane Algorithms Branch and Bound
+ : 13x1 + 20x2 + 11x3 + 6x4 ≥ 72}
5
Cutting Plane Algorithms Branch and Bound
+,
+ : Ax ≤ b},
+, {a1, a2, . . . an} columns of A
n
n
n
6
Cutting Plane Algorithms Branch and Bound
+
7
Cutting Plane Algorithms Branch and Bound
B AN
j∈N
j∈N
8
Cutting Plane Algorithms Branch and Bound
j∈N
N = 0 is cut out!
9
Cutting Plane Algorithms Branch and Bound
| | x1 | x2 | x3 | x4 | -z | b | |---+----+----+----+----+----+----| | | 1 | 6 | 1 | 0 | 0 | 18 | | | 1 | 0 | 0 | 1 | 0 | 3 | |---+----+----+----+----+----+----| | | 1 | 4 | 0 | 0 | 1 | 0 | | | x1 | x2 | x3 | x4 | -z | b | |---+----+----+------+------+----+------| | | 0 | 1 | 1/6 | -1/6 | 0 | 15/6 | | | 1 | 0 | 0 | 1 | 0 | 3 | |---+----+----+------+------+----+------| | | 0 | 0 | -2/3 | -1/3 | 1 |
10
Cutting Plane Algorithms Branch and Bound
j∈N fujxj ≥ fu 1 6x3 + 5 6x4 ≥ 1 2
11
Cutting Plane Algorithms Branch and Bound
| | x1 | x2 | x3 | x4 | x5 | -z | b | |---+----+----+------+------+----+----+------| | | 0 | 0 | -1/6 | -5/6 | 1 | 0 | -1/2 | | | 0 | 1 | 1/6 | -1/6 | 0 | 0 | 5/2 | | | 1 | 0 | 0 | 1 | 0 | 0 | 3 | |---+----+----+------+------+----+----+------| | | 0 | 0 | -2/3 | -1/3 | 0 | 1 | -13 |
cj aij | : aij < 0}
12
Cutting Plane Algorithms Branch and Bound
| | x1 | x2 | x3 | x4 | x5 | -z | b | |---+----+----+------+----+------+----+-------| | | 0 | 0 | 1/5 | 1 | -6/5 | 0 | 3/5 | | | 0 | 1 | 1/5 | 0 | -1/5 | 0 | 13/5 | | | 1 | 0 | -1/5 | 0 | 6/5 | 0 | 12/5 | |---+----+----+------+----+------+----+-------| | | 0 | 0 | -3/5 | 0 | -2/5 | 1 | -64/5 |
4 5x3 + 1 5x5 ≥ 2 5
13
Cutting Plane Algorithms Branch and Bound
14
Cutting Plane Algorithms Branch and Bound
15
Cutting Plane Algorithms Branch and Bound
16
Cutting Plane Algorithms Branch and Bound
27 13 20 20 25 15
27 13 20 18 26 21
40 −∞ 24 13 37 −∞
17
Cutting Plane Algorithms Branch and Bound
27 13 26 14
18
Cutting Plane Algorithms Branch and Bound
| | x1 | x2 | x3 | x4 | -z | b | |---+----+----+----+----+----+---| | | 1 | 4 | 1 | 0 | 0 | 8 | | | 4 | 1 | 0 | 1 | 0 | 8 | |---+----+----+----+----+----+---| | | 1 | 2 | 0 | 0 | 1 | 0 | | | x1 | x2 | x3 | x4 | -z | b | |--------------+----+------+----+------+----+----| | I’=I-II’ | 0 | 15/4 | 1 | -1/4 | 0 | 6 | | II’=1/4II | 1 | 1/4 | 0 | 1/4 | 0 | 2 | |--------------+----+------+----+------+----+----| | III’=III-II’ | 0 | 7/4 | 0 | -1/4 | 0 | -2 |
19
Cutting Plane Algorithms Branch and Bound
| | x1 | x2 | x3 | x4 | -z | b | |----------------+----+----+-------+-------+----+---------| | I’=4/15I | 0 | 1 | 4/15 | -1/15 | 0 | 24/15 | | II’=II-1/4I’ | 1 | 0 | -1/15 | 4/15 | 0 | 24/15 | |----------------+----+----+-------+-------+----+---------| | III’=III-7/4I’ | 0 | 0 | -7/15 | -3/5 | 1 | -2-14/5 |
20
Cutting Plane Algorithms Branch and Bound
| | x1 | x2 | x3 | x4 | x5 | -z | b | |---+----+----+-------+-------+----+----+-------| | | 1 | 0 | 0 | 0 | 1 | 0 | 1 | | | 0 | 1 | 4/15 | -1/15 | 0 | 0 | 24/15 | | | 1 | 0 | -1/15 | 4/15 | 0 | 0 | 24/15 | |---+----+----+-------+-------+----+----+-------| | | 0 | 0 | -7/15 | -3/5 | 0 | 1 | -24/5 | | | x1 | x2 | x3 | x4 | x5 | b | -z | |----------+----+----+-------+-------+----+---+-------| | I’=I-III | 0 | 0 | 1/15 | -4/15 | 1 | 0 | -9/15 | | | 0 | 1 | 4/15 | -1/15 | 0 | 0 | 24/15 | | | 1 | 0 | -1/15 | 4/15 | 0 | 0 | 24/15 | |----------+----+----+-------+-------+----+---+-------| | | 0 | 0 | -7/15 | -3/5 | 0 | 1 | -24/5 | | | x1 | x2 | x3 | x4 | x5 | b | -z | |-------------+----+----+--------+----+-------+---+--------| | I’=-15/4I | 0 | 0 | -1/4 | 1 | -15/4 | 0 | 9/4 | | II’=II-1/4I | 0 | 1 | 15/60 | 0 | -1/4 | 0 | 7/4 | | III’=III+I | 1 | 0 | 0 | 0 | 1 | 0 | 1 | |-------------+----+----+--------+----+-------+---+--------| | | 0 | 0 | -37/60 | 0 | -9/4 | 1 | -90/20 |
aij | : aij < 0}
21
Cutting Plane Algorithms Branch and Bound
22
Cutting Plane Algorithms Branch and Bound
| | x1 | x2 | x3 | x4 | x5 | x6 | b | -z | |---+----+----+--------+----+-------+----+---+------| | | 0 | -1 | 0 | 0 | 0 | 1 | 0 | -2 | | | 0 | 0 | -1/4 | 1 | -15/4 | | 0 | 9/4 | | | 0 | 1 | 15/60 | 0 | -1/4 | | 0 | 7/4 | | | 1 | 0 | 0 | 0 | 1 | | 0 | 1 | |---+----+----+--------+----+-------+----+---+------| | | 0 | 0 | -37/60 | 0 | -9/4 | | 1 | -9/2 | | | x1 | x2 | x3 | x4 | x5 | x6 | b | -z | |-------+----+----+--------+----+-------+----+---+------| | III+I | 0 | 0 | 1/4 | 0 | -1/4 | 1 | 0 | -1/4 | | | 0 | 0 | -1/4 | 1 | -15/4 | | 0 | 9/4 | | | 0 | 1 | 15/60 | 0 | -1/4 | | 0 | 7/4 | | | 1 | 0 | 0 | 0 | 1 | | 0 | 1 | |-------+----+----+--------+----+-------+----+---+------| | | 0 | 0 | -37/60 | 0 | -9/4 | | 1 | -9/2 |
23
Cutting Plane Algorithms Branch and Bound
4.8 −∞ 4.5 −∞ 3 3 x1=1 x2=1
4 4 x1=0 x2=2
2 2 x1=2 x2=0
24
Cutting Plane Algorithms Branch and Bound
5.8 −∞ 4.5 −∞ 4 4 2.3 −∞
25
Cutting Plane Algorithms Branch and Bound
26
Cutting Plane Algorithms Branch and Bound
27
Cutting Plane Algorithms Branch and Bound
k
i=1 x∗ ji ≥ 1 2}
28
Cutting Plane Algorithms Branch and Bound
j , z↑ j (dual bound of down and up branch)
j∈C max{z↓ j , z↑ j }
29
Cutting Plane Algorithms Branch and Bound
30
Cutting Plane Algorithms Branch and Bound
31
Cutting Plane Algorithms Branch and Bound
34
Cutting Plane Algorithms Branch and Bound
36