Вы находитесь на странице: 1из 6

OPTIMIZAO E DECISO 10/11

PL #7 Integer Programming
Alexandra Moutinho
th

(from Hillier & Lieberman Introduction to Operations Research, 8 edition)

Problem 1
Pawtucket University is planning to buy new copier machines for its library. Three members of its
Operations Research Department are analyzing what to buy. They are considering two different
models: Model A, a high-speed copier, and Model B, a lower-speed but less expensive copier. Model
A can handle 20,000 copies a day, and costs $6,000. Model B can handle 10,000 copies a day, but
costs only $4,000. They would like to have at least six copiers so that they can spread them
throughout the library. They also would like to have at least one high-speed copier. Finally, the
copiers need to be able to handle a capacity of at least 75,000 copies per day. The objective is to
determine the mix of these two copiers that will handle all these requirements at minimum cost.
a) Formulate an IP model for this problem.
b) Use a graphical approach to solve this model.
c) Use the computer to solve the model.
Resolution:
a) Let A be the number of Model A copiers to buy.
Let B be the number of Model B copiers to buy.
The problem formulation is as follows:

Minimize C = 6,000A+4,000B
subject to
A+B 6
A 1
20,000A+10,000B 75,000
and
A 0, B 0
A, B are integers.

b) In the following figure, the dots indicate feasible points. As we can see, (A,B)=(2,4) is the
optimal solution with a minimum cost of $28,000.

A
20,000A+10,000B

75,000

A+B

C = 6,000A+4,000B =28,000
1

c) We use Excel to solve this problem, as shown in the following figure. The Excel Solver finds the
optimal solution,
) = (2,4) with a minimum cost of $28,000.

Problem 2
Consider the following IP problem:
Maximize
subject to

= 220
+2

+2

and
,

+ 80 ,
16
4
4

0,
0,
are integers.

a) Use the MIP branch-and-bound algorithm presented to solve this problem by hand. For each
subproblem, solve its LP relaxation automatically (Excel for example).
b) Check your answer by using an automatic procedure to solve the problem.
c) Use the interactive procedure for this algorithm in your IOR Tutorial to solve the problem.
Resolution:
a) Summary of the MIP Branch-and-Bound Algorithm.
Initialization: Set
. Apply the branching step, bounding step, fathoming step, and
optimality test described below to the whole problem. If not fathomed, classify this
problem as the one remaining subproblem for performing the first full iteration
below.
Steps for each iteration:
1. Branching: Among the remaining (unfathomed) subproblems, select the one that was created
most recently. (Break ties according to which has the larger bound.) Among the integerrestricted variables that have a noninteger value in the optimal solution for the LP relaxation
of the subproblem, choose the first one in the natural ordering of the variables to be the
its value in this solution. Branch from the
branching variable. Let be this variable and
node for the subproblem to create two new subproblems by adding the respective constraints
.
] + 1, where ] is the greatest integer
] and
Optimizao e Deciso 09/10 - PL #7 Integer Programming - Alexandra Moutinho

2. Bounding: For each new subproblem, obtain its bound by applying the simplex method to its
LP relaxation and using the value of for the resulting optimal solution.
3. Fathoming: For each new subproblem, apply the three fathoming tests given below, and
discard those subproblems that are fathomed by any of the tests.
Test 1: Its bound

, where

is the value of

for the current incumbent.

Test 2: Its LP relaxation has no feasible solutions.


Test 3: The optimal solution for its LP relaxation has integer values for the integer-restricted
variables. (If this solution is better than the incumbent, it becomes the new incumbent
and test 1 is reapplied to all unfathomed subproblems with the new larger .)
Optimality test: Stop when there are no remaining subproblems; the current incumbent is
optimal. Otherwise, perform another iteration.
Initialization:
Relaxing the integer constraints, the optimal solution of the LP relaxation of the whole problem is
) = (2.667,1.333) with an objective function value of = 693.333. This LP-relaxation of
the whole problem possesses feasible solutions and its optimal solution has noninteger values for
and , so the whole problem is not fathomed and we are ready to move on to the first full
iteration.
Iteration 1:
The only remaining (unfathomed) subproblem at this point is the whole problem, so we use it for
branching and bounding. In the above optimal solution for its LP-relaxation, both integerrestricted variables ( and ) are noninteger, so we select the first one ( ) to be the branching
variable. Since
= 2.667 in this optimal solution, we will create two new subproblems below by
adding the respective constraints,
where

and

] is the greatest integer

Subproblem 1:

]+1,

, so [ ] = 2.

The original problem plus the additional constraint,


Subproblem 2:

2.

The original problem plus the additional constraint,


3.

For subproblem 1, the optimal solution for its LP-relaxation is

) = (2,3) with

= 680.

Since the solution


) = (2,3) is integer-valued, subproblem 1 is fathomed by fathoming test
3 and this solution becomes the first incumbent.
Incumbent = (2,3)

with

= 680.

Now consider subproblem 2. It can be seen that the new constraint


3 results in having no
feasible solutions. Therefore, subproblem 2 is fathomed by fathoming test 2.

At this point, there are no remaining (unfathomed) subproblems, so the optimality test indicates
that the current incumbent is optimal for the original whole problem, so no additional iterations
are needed.
) = (2,3) with

= 680.

b) As shown in the following spreadsheet, the Excel Solver finds the optimal solution,
(2,3) with = 680, which is identical to the solution found in part a).

Optimizao e Deciso 09/10 - PL #7 Integer Programming - Alexandra Moutinho

)=

c)

Optimizao e Deciso 09/10 - PL #7 Integer Programming - Alexandra Moutinho

Optimizao e Deciso 09/10 - PL #7 Integer Programming - Alexandra Moutinho

Optimizao e Deciso 09/10 - PL #7 Integer Programming - Alexandra Moutinho

Вам также может понравиться