Branch and Bound
Branch and Bound
Cj 4 6 2 0 0 0
CBj Basic x1 x2 x3 s1 s2 s3 sg1 sg2
variables
4 x1=2 1 0 0 0 0 0 1 0
6 x2=1 0 1 0 0 0 0 0 1/5
2 x3=6 0 0 1 0 0 1 1 -1/5
0 s1=1 0 0 0 1 0 0 -4 4/5
0 s2=1 0 0 0 0 1 0 1 -6/5
z=26 Zj 4 6 2 0 0 2 6 4/5
Cj -Zj 0 0 0 0 0 -2 -6 -4/5
Since all Cj -Zj 0 , therefore the above table is optimal.
Hence the mixed integer optimal solution is given by x1=2, x2=1, x3=6
and Max Z=4(2)+6(1)+2(6)=26.
am1x1+am2x2+......+amnxn=b1m
and xj 0 and non negative integer.
Obtain the optimal solution of the given problem ignoring integer
restriction on the variables
(i) If the solution to this LP problem (say LP-A) is infeasible or unbounded,
the solution to the all integer programming problem is also infeasible or
unbounded , as the case may be.
(ii) If the solution satisfies the integer restriction, the optimal integer
solution has been obtained. If one or more basic variables do not satisfies
integer requirement, then go to step 2. Let the optimal value of the
objective function of LP-A be Z1. This value provides an initial upper bound
on objective function value and it is denoted by ZU.
(iii) Find the feasible value by rounding off each variable value. The value
of the objective function so obtained is the least upper bound and it is
denoted by ZL.
Step:-02(Branching step)
(i) Let xk be one basic variable which does not have an integer value and
also has the largest fractional value
(ii) Branch ( or partition) the LP-A into two new LP sub problems (also
called nodes) based on integer values of xk that are immediately above and
below its non integer value. That is, it is portioned by adding two mutually
exclusive constraints.:
xk [xk] and xk [xk]+1
to the original LP problem, Here [xk] is the integer portion of the current
non-integer value of the variable xk. This is obviously is done to exclude the
non integer value of the variable xk. The two new Lp sub problems are as
follows:
LP Sub problem B LP Sub Problem C
n n
Max Z= c j x j Max Z= c j x j
j 1 j 1
n n
subject to aij x j bi subject to a ij x j bi
j 1 j 1
xk [xk] xk [xk]+1
and xj 0 and xj 0
Step:-03(Bound step)
Obtain the optimal solution of sub problems B and C. Let the optimal
value of the objective function of LP-B be Z2 and that of LP-C be Z3. The best
integer solution value becomes the lower bound on the integer LP problem
objective function value (initially this is the rounded off value). Le the
lower bound be denoted by ZL.
Step:-03(Fathoming step) Examining the solution of both LP-B and LP-C
(i) If the sub problem yields an infeasible solution , then terminate the
branch.
(ii) If the sub problems yields the feasible solution, but not integer solution
then go to step 2.
(iii)If the sub problem yields the integer feasible solution, then examine the
value of the objective function. If the value is equal to upper bound, then
the optimal solution has been obtained. But if it is not equal to upper bound
but exceed the lower bound, then this value is considered as new upper
bound and return to step 2. Finally, If it is less than the lower bound
terminate the branch.
Step 05 (Termination)
procedure of branching and bounded continues, until no sub
problem remains to be examined. At this stage, the integer solution
corresponding to the current lower bound is optimal all integer
programming problem.
Problem:-01
Solve the following all integer programming problem using branch
and bound method,
Max Z=2x1+3x2,
Subject to the conditions
6x1+5x2 25,
x1+3x2 10
and x1, x2 0 and integers
Solution:-
Step:-01
Relaxing the integer condition, Let us find the optimal solution to the
given LP problem by graphical method
Graphical Method
Let us draw the line 6x1+4x2=25-----(1)
Let x1=0, 6(0)+5x2=25 =>x2=25/4 i.e (0,5)
Let x2=0, 6x1+5(0)=25 =>x1=25/6 i.e(4.16,0)
Let us draw the line x1+3x2=10------(2)
Let x1=0, (0)+3x2=10 =>x2=10/3 i.e (0,3.33)
Let x2=0, x1+3(0)=10 =>x1=10 i.e(10,0)
To find the intersection point
(1)x1=> 6x1+5x2=25
(2)x6=> 6x1+18x2=60
(Subtract) ------------------
-13x2=-35 =>x2=35/13
Sub x2 values in equation (2), we have x1=25/13
i.e the intersection point is (1.92,2.69)
At (4.16,0) Max Z=2(4.16)+3(0)=8.32
At (0,3.33) Max Z=2(0)+3(3.33)=9.99
At (1.92,2.69) Max Z=2(1.92)+3(2.69)=11.91
Step:-05(Bound step)
Rule :-The best integer solution gives the lower bound.
Here the best integer solution is x1=2, x2=2 and Max Z4=10
Step:-06(Bound step)
The solution to the LP sub problem D is integer feasible, but Z4< ZL
(10<11), and since value of lower bound remain unchanged (ZL=11).
therefore the sub problem D is not considered for further branching.
Since solution of sub problem E is non integer (x2 is not integer), So it
can be further branched with variable x2, but Z5<ZL (10.2<11), therefore
sub problem E is not considered for further branching.
Thus the integer solution corresponding to the current lower bound
is the optimal solution.
Hence the integer optimal solution is corresponding to sub problem C
and is given by x1=1, x2=3 and Max Z=11
The entire branch and bound procedure can be represented by
following enumeration tree. Each node is a sub problem.
Note:-
(i) Suppose if both the sub problem gives non integer solution, then
always the sub problem which has maximum objective value has to
branched further.
(ii) Suppose if one of the sub problem has no feasible solution and other
has feasible solution but not integer and any other sub problem of same