OR2P2 IP Update
OR2P2 IP Update
Z=41.25
2 5x1 + 9x2 = 45
1
Z=20
0 1 2 3 4 5 6 7 8
Utilizing the information about the
optimal solution of the LP-relaxation
Fact: If LP-relaxation has integral optimal solution x*,
then x* is optimal for IP too.
In our case, (x1, x2) = (2.25, 3.75) is the optimal solution of the
LP-relaxation. But, unfortunately, it is not integral.
3 (3, 3)
2
Subproblem 1
1 Z=39
Z=20
0 1 2 3 4 5 6 7 8
Solution tree
S1: x2 3
1
Z=20
0 1 2 3 4 5 6 7 8
Solution tree (cont.)
S1: x2 3
int.
All (3, 3) S3: x1 1
(2.25, 3.75) Z=39
(1, 4.44)
Z=41.25
S2: x2 ≥ 4 Z=40.55
(1.8, 4)
Z=41 S4: x1 ≥ 2
infeasible
1
Z=20
0 1 2 3 4 5 6 7 8
Solution tree (final)
S1: x2 3 S5: x2 4
int.
All (3, 3) (1, 4) int.
S3: x1 1
(2.25, 3.75) Z=39 Z=37
(1, 4.44)
Z=41.25
S2: x2 ≥ 4 Z=40.55 S6: x2 ≥ 5
int.
(1.8, 4) (0, 5)
Z=41 S4: x1 ≥ 2 Z=40
infeasible
0 x1 , x 2 and integer
Branch and Bound Example
Branch and Bound Example
Branch and Bound Example
Branch & Bound (for
Minimization IP)
• Branch and Bound Algorithm
1- Solve LP relaxation to get a lower bound on cost for
current branch
• If solution exceeds upper bound, branch is terminated
• If solution is integer, replace upper bound on cost
2- Create two branched problems by adding constraints to
original problem
• Select integer variable with fractional LP solution
• Add integer constraints to the original LP
3- Repeat until no branches remain, return optimal
solution.
Branch and Bound Example
Consider the following binary integer program (BIP). A binary variable is one that is
constrained to be either 1 or 0.
• Goals:
(1) Minimizing overall solution time.
(2) Finding a good feasible solution quickly.