IntegerProgramming BNB
IntegerProgramming BNB
Integer Programming
In many practical problems, the decision variables actually make sense only
if they have integer values.
If some or all of the decision variables in a linear programming formulation
are required to have integer values, then it is an Integer Programming (IP)
problem.
The mathematical model for integer programming is the linear
programming model with one additional restriction that some or all of the
decision variables must have integer values.
If only some of the decision variables are required to have integer values,
then the model is called Mixed Integer Programming (MIP) problem.
If all of the decision variables are required to have integer values, then the
model is called Pure Integer Programming problem.
In some decision-making problems, the only two possible choices for decisions are
yes and no.
1. Examples of Integer Programming
(1) Example of BIP
All the decision variables have the binary form
Because the last two decisions represent mutually exclusive alternatives (the
company wants at most one new warehouse), we need the constraint
Furthermore, decisions 3 and 4 are contingent decisions, because they are
contingent on decisions 1 and 2, respectively (the company would consider
building a warehouse in a city only if a new factory also were going there). Thus,
in the case of decision 3, we require that x3 = 0 if x1 = 0. This restriction on x3
(when x1 = 0) imposed by adding the constraint
subject to
C A
B
3. The Branch-and-Bound Technique and Its Application to BIP
The Branch-and-Bound Technique is the most popular mode for
IP algorithms.
Branching
Original problem
Solution Tree
Subproblem 1
LP relaxation of subproblem 4
Subproblem 2
Subproblem 4
(4) Iteration 3
So far, the algorithm has created 4 subproblems. Subproblem 1 has been fathomed, and
subproblem 2 has been replaced by subproblems 3 and 4, but these last two remain under
consideration. Because they were created simultaneously, but subproblem 4 has the
larger bound, the next branching is done from subproblem 4, which creates the following
new subproblems
Subproblem 5 with x =1, x =1, x =0. LP relaxation of subproblem 5 :
1 2 3
LP relaxation of subproblem 6 :
No feasible solutions
Bound for subproblem 5 : Z≤ 16
Subproblem 1
Subproblem 5
Subproblem 2
Subproblem 4
Subproblem 6
(5) Iteration 4
The subproblems 3 and 5 corresponding to nodes (1,0) and (1,1,0) remain under
consideration. Since subproblem 5 was created most recently, so it is selected for
branching.
Since x4 is the last variable, fixing its value at either 0 or 1 actually creates a single
solution rather than subproblems. These single solutions are
Subproblem3:
There are no remaining (unfathomed) subproblems. Therefore, the optimality test
indicates that the current incumbent is optimal.
4. The Branch-and-Bound Algorithm for MIP
An MIP Example
Change 1:The bounding step
BIP algorithm: With integer coefficients in the objective function of BIP, the value of Z for
the optimal solution for the subproblem’s LP relaxation is rounded down to obtain the
bound, because any feasible solution for the subproblem must have an integer Z.
MIP algorithm: With some of the variables not integer-restricted, the bound is the value of
Z without rounding down.
Change 2: The fathoming test
BIP algorithm: With a BIP problem, one of the fathoming tests is that the optimal solution
for the subproblem’s LP relaxation is integer, since this ensures that the solution is feasible,
and therefore optimal, for the subproblem..
MIP algorithm: With a MIP problem, the test requires only that the integer-restricted
variables be integer in the optimal solution for the subproblem’s LP relaxation, because this
suffices to ensure that the solution is feasible, and therefore optimal, for the subproblem..
Subproblem 1
Subproblem 2
Change 3:Choice of the branching variable
BIP algorithm: The next variable in the natural ordering x1, x2, …, xn is chosen
automatically.
MIP algorithm: The only variables considered are the integer-restricted variables that
have a noninteger value in the optimal solution for the LP relaxation of the current
subproblem. The rule for choosing among these variables is to select the first one in the
natural ordering.
Change 4:The values assigned to the branching variables
BIP algorithm: The binary variable is fixed at 0 and 1, respectively, for the 2 new
subproblems.
MIP algorithm: The general integer-restricted variable is given two ranges for the 2 new
subproblems.
Subproblem 3
Subproblem 1
Subproblem 2
Subproblem 4
Subproblem 3 Subproblem 5
Subproblem 6
Subproblem 5
Subproblem 3
Subproblem 1
Subproblem 6
Subproblem 4
Subproblem 2