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 |
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
| | 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 |
18
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 |
19
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 |
ai j |
20
Cutting Plane Algorithms Branch and Bound
21
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 |
22
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
23
Cutting Plane Algorithms Branch and Bound
5.8 −∞ 4.5 −∞ 4 4 2.3 −∞
24
Cutting Plane Algorithms Branch and Bound
25
Cutting Plane Algorithms Branch and Bound
26
Cutting Plane Algorithms Branch and Bound
k
i=1 x∗ ji ≥ 1 2}
27
Cutting Plane Algorithms Branch and Bound
j , z↑ j (dual bound of down and up branch)
j∈C max{z↓ j , z↑ j }
28
Cutting Plane Algorithms Branch and Bound
29
Cutting Plane Algorithms Branch and Bound
db
30
Cutting Plane Algorithms Branch and Bound
31
Cutting Plane Algorithms Branch and Bound
32
Cutting Plane Algorithms Branch and Bound
33
Cutting Plane Algorithms Branch and Bound
34