BB 1
BB 1
Author Unknown
Basic Concepts
The basic concept underlying the branch-and-bound technique is to
divide and conquer.
Since the original “large” problem is hard to solve directly,
it is divided into smaller and smaller subproblems
until these subproblems can be conquered.
The dividing (branching) is done by partitioning the entire set of
feasible solutions into smaller and smaller subsets.
The conquering (fathoming) is done partially by
(i) giving a bound for the best solution in the subset;
(ii) discarding the subset if the bound indicates that
it can’t contain an optimal solution.
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
For each subproblem, we record All
(3, 3) int.
• the restriction that creates the subproblem Z=39
(2.25, 3.75)
• the optimal LP solution
Z=41.25 S2: x2 ≥ 4
• the LP optimum value
(1.8, 4)
Z=41
The optimal solution for Subproblem 1 is integral: (3, 3).
If further branching on a subproblem will yield no useful
information, then we can fathom (dismiss) the subproblem.
In our case, we can fathom Subproblem 1 because its solution is integral.
The best integer solution found so far is stored as incumbent.
The value of the incumbent is denoted by Z*.
In our case, the first incumbent is (3, 3), and Z*=39.
Z* is a lower bound for OPT(IP): OPT(IP) ≥ Z* .
In our case, OPT(IP) ≥ 39. The upper bound is 41: OPT(IP) 41.
Next branching step (graphically)
- Fathom Subproblem 1.
5
(1, 4.44)
- Branch Subproblem 2 on x 1 :
Subpr. 4
Subpr. 3 Subproblem 3: New restriction is x1
1. 4
Opt. solution (1, 4.44) with value
40.55
3 Subproblem 4: New restriction is x1 ≥
Z=40.55
2.
2 The subproblem is infeasible
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
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
If the optimal value of a subproblem is Z*, then it is fathomed.
• In our case, Subproblem 5 is fathomed because 37 39 = Z*.
If a subproblem has integral optimal solution x*,
and its value > Z*, then x* replaces the current incumbent.
• In our case, Subproblem 5 has integral optimal solution, and its value
40>39=Z*. Thus, (0,5) is the new incumbent, and new Z*=40.