20
Solving integer programming problems
We now have a systematic understanding of how to solve linear programming
problems. However, we have so far developed no ideas about how to solve the
kinds of
integer
programming problems that we encountered earlier. The only
exception is the special case of transportation problems, where the integrality
restriction on the variables turns out to be essentially no restriction at all.
Unlike transportation problems (and a few other special problem classes),
most integer programming problems are much harder to solve than linear
programming problems.
In this section we will start to outline a general
computational approach.
Consider the following example of an integer programming problem with
binary variables.
maximize
3
x
1
+
2
x
2
+
4
x
3
subject to
x
1
+
2
x
2
+
x
3
≥
1
x
1
+
2
x
2
+
x
3
≤
2
x
1
+
x
2

2
x
3
≥
0
x
1
,
x
2
,
x
3
∈
{
0
,
1
}
.
One foolproof approach is
complete enumeration
: we simply list all the pos
sible solutions, check which are feasible, and among these, find the best. In
this case, we arrive at the following enumeration.
x
1
x
2
x
3
Feasible
Objective
0
0
0
no
0
0
1
no
0
1
0
yes
2
0
1
1
no
1
0
0
yes
3
1
0
1
no
1
1
0
no
1
1
1
no
From the table, we see that the optimal solution of the integer programming
problem is [1
,
0
,
0]
T
.
For this small example, complete enumeration was simple and effective.
In general, however, this approach is clearly not practical for anything but
102
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
the smallest problems, because the number of solutions we must enumerate
grows exponentially in the number of binary variables.
The next natural idea we might try is
rounding
. We could use the simplex
method to solve the
linear programming relaxation
: that is, the linear pro
gramming problem we obtain by dropping all the integrality restrictions. We
might hope that the optimal solution to the integer programming problem is
somehow “close” to the optimal solution of the relaxation.
Unfortunately, simple examples show that rounding may fail to say any
thing helpful about the integer programming problem. Consider, for example,
the simple integer programming problem
maximize
x
2
subject to

2
x
1
+
2
x
2
≤
1
2
x
1
+
2
x
2
≤
7
x
1
,
x
2
≥
0
,
integer
.
The optimal solution of the linear programming relaxation is [
3
2
,
2]
T
: round
ing the fractional component either up or down leads to an infeasible solution.
Rounding gives us no obvious information about optimal solutions of the in
teger programming problem (in this case [1
,
1]
T
and [2
,
1]
T
).
This is the end of the preview.
Sign up
to
access the rest of the document.
 Fall '08
 TODD
 Linear Programming, Optimization, integer programming problem

Click to edit the document details