Integer Programming
Integer Programming
ASSIGNMENT ON:
INTEGER PROGRAMMING
BY
OMOREGBE RACHEAL
DANIEL AIGBEREMWON
LEVEL: HND I
AUGUST 2022.
1
INTRODUTION
The linear-programming models that have been discussed thus far all have been
continuous, in the sense that decision variables are allowed to be fractional.
Often this is a realistic assumption. For instance, we might easily produce 102 3
4 gallons of a divisible good such as wine. It also might be reasonable to accept
a solution giving an hourly production of automobiles at 581 2 if the model
were based upon average hourly production, and the production had the
interpretation of production rates. At other times, however, fractional solutions
are not realistic, and we must consider the optimization problem:
1
integer, and is called a pure integer program when all decision variables must be
integers. As we saw in the preceding chapter, if the constraints are of a network
nature, then an integer solution can be obtained by ignoring the integrality
restrictions and solving the resulting linear program. In general, though,
variables will be fractional in the linear-programming solution, and further
measures must be taken to determine the integer-programming solution. The
purpose of this chapter is twofold. First, we will discuss integer-programming
formulations. This should provide insight into the scope of integer-
programming applications and give some indication of why many practitioners
feel that the integer-programming model is one of the most important models in
management science. Second, we consider basic approaches that have been
developed for solving integer and mixed-integer programming problems.
2
investment and thatai j is the amount of resourcei, such as cash or manpower,
used on thejth investment, we can state the problem formally as:
3
investment in a new plant. This contingency is modeled simply by the
constraint.
which states that ifxi = 1 and project i (new product development) is accepted,
then necessarilyx j = 1 and project j (construction of a new plant) must be
accepted. Another example of this nature concerns conflicting projects. The
constraint.
for example, states that only one of the first four investments can be accepted.
Constraints like this commonly are calledmultiple-choice constraints. By
combining these logical constraints, the model can incorporate many complex
interactions between projects, in addition to issues of resource allocation. The
simplest of all capital-budgeting models has just one resource constraint, but has
attracted much attention in the management-science literature. It is stated as:
4
altered somewhat by allowing more than one unit of any good to be taken, by
writingx j ≥ 0 and x j-integer in place of the 0–1 restrictions on the variables.
The knapsack model is important because a number of integer programs can be
shown to be equivalent to it, and further, because solution procedures for
knapsack models have motivated procedures for solving general integer
programs. Warehouse Location In modeling distribution systems, decisions
must be made about tradeoffs between transportation costs and costs for
operating distribution centers. As an example, suppose that a manager must
decide which of n warehouses to use for meeting the demands ofm customers
for a good. The decisions to be made are which warehouses to operate and how
much to ship from any warehouse to any customer. Let
i. the demand dj of each customer must be filled from the warehouses; and
ii. goods can be shipped from a warehouse only if it is opened.
5
The objective function incorporates transportation and variable warehousing
costs, in addition to fixed costs for operating warehouses. The constraints (2)
indicate that each customer’s demand must be met. The summation over the
shipment variablesxi j in theith constraint of (3) is the amount of the good
shipped from warehousei. When the warehouse is not opened,yi = 0 and the
constraint specifies that nothing can be shipped from the warehouse. On the
other hand, when the warehouse is opened and yi = 1, the constraint simply
states that the amount to be shipped from warehouse i can be no larger than the
total demand, which is always true. Consequently, constraints (3) imply
restriction (ii) as proposed above. Although oversimplified, this model forms
the core for sophisticated and realistic distribution models incorporating such
features as:
5. multiple products; or
6
6. conditions preventing splitting of orders (in the model above, the demand for
any customer can be supplied from several warehouses).
These features can be included in the model by changing it in several ways. For
example, warehouse capacities are incorporated by replacing the term involving
yi in constraint (3) with yi Ki , where Ki is the throughput capacity of
warehouse i; multi-echelon distribution may require triple-subscripted variables
xi jk denoting the amount to be shipped, from plant i to customer k through
warehouse j. Further examples of how the simple warehousing model described
here can be modified to incorporate the remaining features mentioned in this list
are given in the exercises at the end of the chapter. Scheduling The entire class
of problems referred to as sequencing, scheduling, and routing are inherently
integer programs. Consider, for example, the scheduling of students, faculty,
and classrooms in such a way that the number of students who cannot take their
first choice of classes is minimized. There are constraints on the number and
size of classrooms available at any one time, the availability of faculty members
at particular times, and the preferences of the students for particular schedules.
Clearly, then, the ith studentis scheduled for the jth class during thenth time
period ornot; hence, such a variable is either zero or one. Other examples of this
class of problems include line-balancing, critical-path scheduling with resource
constraints, and vehicle dispatching.
7
c j = Cost for assigning a crew to route
then two crews fly as passengers on leg 1, possibly to make connections to other
legs to which they have been assigned for duty. These airline-crew scheduling
models arise in many other settings, such as vehicle delivery problems, political
districting, and computer data processing. Often model (4) is called a set-
partitioning problem, since the set of legs will be divided, or partitioned, among
the various crews. With constraints (5), it is called a set-covering problem, since
8
the crews then will cover the set of legs. Another scheduling example is the so-
called traveling salesman problem. Starting from his home, a salesman wishes
to visit each of(n − 1 ) other cities and return home at minimal cost. He must
visit each city exactly once and it costs ci j to travel from city i to city j. What
route should he select? If we let.
The constraints require that the salesman must enter and leave each city exactly
once. Unfortunately, the assignment model can lead to infeasible solutions. It is
possible in a six-city problem, for example, for the assignment solution to route
the salesman through two disjoint subtours of the cities instead of on a single
trip or tour.
9
FIGURE 1.0
This inequality ensures that at least one leg of the tour connects cities 1, 2, and 3
with cities 4, 5, and 6. In general, if a constraint of this form is included for each
way in which the cities can be divided into two groups, then subtours will be
eliminated. The problem with this and related approaches is that, with n cities,(2
n −1 ) constraints of this nature must be added, so that the formulation becomes
a very large integer-programming problem. For this reason the traveling
salesman problem generally is regarded as difficult when there are many cities.
The traveling salesman model is used as a central component of many vehicular
routing and scheduling models. It also arises in production scheduling. For
example, suppose that we wish to sequence (n − 1 ) jobs on a single machine,
and that ci j is the cost for setting up the machine for jobj, given that job i has
just been completed. What scheduling sequence for the jobs gives the lowest
total setup costs? The problem can be interpreted as a traveling salesman
problem, in which the ‘‘salesman’’ corresponds to the machine which must
‘‘visit’’ or perform each of the jobs. ‘‘Home’’ is the initial setup of the machine,
and, in some applications, the machine will have to be returned to this initial
setup after completing all of the jobs. That is, the ‘‘salesman’’ must return to
‘‘home’’ after visiting the ‘‘cities.’’
The illustrations in the previous section not only have indicated specific integer-
programming applications, but also have suggested how integer variables can be
used to provide broad modelling capabilities beyond those available in linear
10
programming. In many applications, integrality restrictions reflect natural
indivisibilities of the problem under study. For example, when deciding how
many nuclear aircraft carriers to have in the U.S. Navy, fractional solutions
clearly are meaningless, since the optimal number is on the order of one or two.
In these situations, the decision variables are inherently integral by the nature of
the decision-making problem. This is not necessarily the case in every integer-
programming application, as illustrated by the capital budgeting and the
warehouse-location models from the last section. In these models, integer
variables arise from (i) logical conditions, such as if a new product is
developed, then a new plant must be constructed, and from (ii) non-linearities
such as fixed costs for opening a warehouse. Considerations of this nature are so
important for modelling that we devote this section to analyzing and
consolidating specific integer programming formulation techniques, which can
be used as tools for a broad range of applications.
Binary (0–1)
If, further, management had decided thatat most one of the above three
activities can be pursued, the following constraint is appropriate:
11
As we have indicated in the capital-budgeting example in the previous section,
this restriction usually is referred to as amultiple-choice constraint, since it
limits our choice of investments to be at most one of the three available
alternatives.
Binary variables are useful whenever variables can assume one of two values,
as in batch processing. For example, suppose that a drug manufacturer must
decide whether or not to use a fermentation tank. If he uses the tank, the
processing technology requires that he make B units. Thus, his productiony
must be 0 or B, and the problem can be modeled with the binary variablex j = 0
or 1 by substituting Bx j fory everywhere in the model.
Logical Constraints
Constraint Feasibility
satisfied?
and write.
12
for every possible choice of the decision variablesx1 , x2 , . . . , xn at our
disposal. When every = 0 gives a feasible solution to constraint (7), we know
that constraint (6) must be satisfied. In practice, it is usually very easy to
determine a large number to serve as B, although generally it is best to use the
smallest possible value of B in order to avoid numerical difficulties during
computations.
Alternative Constraints
The variablesy1 and y2 and constantsB1 and B2 are chosen as above to indicate
when the constraints are satisfied. The multiple-choice constraint y1 + y2 ≤ 1
implies that at least one variable y j equals 0, so that, as required, at least one
constraint must be satisfied. We can save one integer variable in this
formulation by noting that the multiple-choice constraint can be replaced by y1
+ y2 = 1, or y2 = 1 − y1 , since this constraint also implies that either y1 or y2
equals 0. The resulting formulation is given by:
13
As an illustration of this technique, consider again the custom-molder example
from Chapter 1. That example included the constraint.
In this case, bothB1 and B2 are set to 100, which is large enough so that the
constraint is not limiting for the production process not used.
Conditional Constraints
Since this implication is not satisfied only when both f1 (x1 , x2 , . . . , xn) > b1
and f2(x1 , x2 , . . . , xn) > b2 , the conditional constraint is logically equivalent
to the alternative constraints
where at least one must be satisfied. Hence, this situation can be modeled by
alternative constraints as
indicated above.
14
k-Fold Alternatives
Compound Alternatives
The feasible region shown in Fig. 9.2 consists of three disjoint regions, each
specified by a system of inequalities. The feasible region is defined by
alternative sets of constraints, and can be modeled by the system:
15
Note that we use the same binary variable y j for each constraint defining one of
the regions, and that the.
16
Geometry of alternative constraints
Heuristic methods.
Hill climbing
Simulated annealing
17
Reactive search optimization
It is often the case that the matrix {\displaystyle A}A which defines the integer
program is sparse. In particular, this occurs when the matrix has a block
structure, which is the case in many applications. The sparsity of the matrix can
be measured as follows. The graph of {\displaystyle A}A has vertices
corresponding to columns of {\displaystyle A}A, and two columns form an
edge if {\displaystyle A}A has a row where both columns have nonzero entries.
Equivalently, the vertices correspond to variables, and two variables form an
edge if they share an inequality. The sparsity measure {\displaystyle d}d of {\
displaystyle A}A is the minimum between the tree-depth of the graph of {\
displaystyle A}A and the tree-depth of the graph of the transpose of {\
displaystyle A}A. Let {\displaystyle a}a be the numeric measure of {\
displaystyle A}A defined as the maximum absolute value of any entry of {\
displaystyle A}A. Let {\displaystyle n}n be the number of variables of the
integer program. Then it was shown in 2018[19] that integer programming can
be solved in strongly polynomial and fixed-parameter tractable time
parameterized by {\displaystyle a}a and {\displaystyle d}d. That is, for some
computable function {\displaystyle f}f and some constant {\displaystyle k}k,
integer programming can be solved in time {\displaystyle f(a,d)n^{k}}{\
18
displaystyle f(a,d)n^{k}}. In particular, the time is independent of the right-
hand side {\displaystyle b}b and objective function {\displaystyle c}c.
Moreover, in contrast to the classical result of Lenstra, where the number {\
displaystyle n}n of variables is a parameter, here the number {\displaystyle n}n
of variables is a variable part of the input.
19
References
7. ^ Morais, Hugo; Kádár, Péter; Faria, Pedro; Vale, Zita A.; Khodr, H. M.
(2010-01-01). "Optimal scheduling of a renewable micro-grid in an
isolated load area using mixed-integer linear programming". Renewable
Energy. 35 (1): 151–
156. doi:10.1016/j.renene.2009.02.031. hdl:10400.22/1585. ISSN 0960-
1481.
20