Title: Integer Programming
1Integer Programming
- Introduction to Integer Programming (IP)
- Difficulties of LP relaxation
- IP Formulations
- Branch and Bound Algorithms
2Integer Programming Model
- An Integer Programming model is a linear
programming problem where some or all of the
variables are required to be non-negative
integers. - These models are in general substantially harder
than solving linear programming models. - Network models are special cases of integer
programming models and are very efficiently
solvable. - We will discuss several applications of integer
programming models. - We will study the branch and bound technique, one
of the most popular algorithm to solve integer
programming models.
3Classifications of IP Models
- Pure IP Model Where all variables must take
integer values. - Maximize z 3x1 2x2
- subject to x1 x2 6 x1, x2 ³ 0, x1
and x2 integer - Mixed IP Model Where some variables must be
integer while others can take real values. - Maximize z 3x1 2x2
- subject to x1 x2 6 x1, x2 ³ 0, x1
integer - 0-1 IP Model Where all variables must take
values 0 or 1 . - Maximize z x1 - x2
- subject to x1 2x2 2 2x1 - x2
1, x1, x2 0 or 1
4Classifications of IP Models (contd.)
- LP Relaxation The LP obtained by omitting all
integer or 0-1 constraints on variables is called
the LP relaxation of IP. - IP
- Maximize z 21x1 11x2 subject to
7x1 4x2 13 x1, x2
³ 0, x1 and x2 integer - LP Relaxation
- Maximize z 21x1 11x2 subject to
7x1 4x2 13 x1,
x2 ³ 0 - Result
- Optimal objective function value of IP
Optimal objective function value of LP relaxation
5IP and LP Relaxation
3
2
7x1 4x2 13
x2
1
x
x
x
x
3
1
2
x1
6Simple Approaches for Solving IP
- Approach 1
- Enumerate all possible solutions
- Determine their objective function values
- Select the solution with the maximum (or,
minimum) value. - Any potential difficulty with this approach?
- -- may be time-consuming
- Approach 2
- Solve the LP relaxation
- Round-off the solution to the nearest feasible
integer solution - Any potential difficulty with this approach?
- -- may not be optimal solution to the original IP
7The use of binary variables in constraints
- Any decision situation that can be modeled by
yes/no, good/bad etc., falls into the
binary category. - To illustrate
8The use of binary variables in constraints
- Example
- A decision is to be made whether each of three
plants should be built (Yi 1) or not built (Yi
0) - Requirement Binary Representation
- At least 2 plants must be built Y1 Y2 Y3
? 2 - If plant 1 is built, plant 2 must not be built
Y1 Y2 1 - If plant 1 is built, plant 2 must be built
Y1 Y2 0 - One, but not both plants must be built Y1
Y2 1 - Both or neither plants must be built Y1
Y2 0 - Plant construction cannot exceed 17 million
- given the costs to build plants are 5, 8, 10
million 5Y18Y210Y3 17
9Capital Budgeting Problem
- Stockco Co. is considering four investments
- It has 14,000 available for investment
- Formulate an IP model to maximize the NPV
obtained from the investments - IP
- Maximize z 16x1 22x2 12x3 8x4
- subject to
- 5x1 7x2 4x3 3x4 14
- x1, x2,,x3, x4 0, 1
10Fixed Charge Problem
- Gandhi cloth company manufactures three types of
clothing shirts, shorts, and pants - Machinery must be rented on a weekly basis to
make each type of clothing. Rental Cost - 200 per week for shirt machinery
- 150 per week for shorts machinery
- 100 per week for pants machinery
- There are 150 hours of labor available per week
and 160 square yards of cloth - Find a solution to maximize the weekly profit
11Fixed Charge Problem (contd.)
- Decision Variables
- x1 number of shirts produced each week
- x2 number of shorts produced each week
- x3 number of pants produced each week
- y1 1 if shirts are produced and 0 otherwise
- y2 1 if shorts are produced and 0 otherwise
- y3 1 if pants are produced and 0 otherwise
- Formulation
- Max. z 6x1 4x2 8x3 - 200y1 - 150 y2 - 100y3
- subject to
- 3x1 2x2 6x3 150
- 4x1 3x2 4x3 160 x1 M y1, x2 M
y2, x3 M y3 - x1, x2,,x3 ³ 0, and integer y1,
y2,,y3 0 or 1
12Either-Or Constraints
- Dorian Auto is considering manufacturing three
types of auto compact, midsize, large. - Resources required and profits obtained from
these cars are given below. - We have 6,000 tons of steel and 60,000 hours of
labor available. - If any car is produced, we must produce at least
1,000 units of that car. - Find a production plan to maximize the profit.
13Either-Or Constraints (contd.)
- Decision Variables
- x1, x2, x3 number of compact, midsize and large
cars produced - y1, y2, y3 1 if compact , midsize and large
cars are produced or not - Formulation
- Maximize z 2x1 3x2 4x3
- subject to
- x1 My1 x2 My2 x3 My3
- 1000 - x1 M(1-y1)
- 1000 - x2 M(1-y2)
- 1000 - x3 M(1-y3)
- 1.5 x1 3x2 5x3 6000
- 30 x1 25x2 40 x3 60000
- x1, x2, x3 ³ 0 and integer y1, y2, y3 0 or 1
14Set Covering Problems
- Western Airlines has decided to have hubs in USA.
- Western runs flights between the following
cities Atlanta, Boston, Chicago, Denver,
Houston, Los Angeles, New Orleans, New York,
Pittsburgh, Salt Lake City, San Francisco, and
Seattle. - Western needs to have a hub within 1000 miles of
each of these cities. - Determine the minimum number of hubs
15Formulation of Set Covering Problems
- Decision Variables
- xi 1 if a hub is located in city i
- xi 0 if a hub is not located in city i
- Minimize xAT xBO xCH xDE xHO xLA xNO
xNY xPI xSL xSF xSE - subject to
16Additional Applications
- Location of fire stations needed to cover all
cities - Location of fire stations to cover all regions
- Truck dispatching problem
- Political redistricting
- Capital investments
17Branch and Bound Algorithm
- Branch and bound algorithms are the most popular
methods for solving integer programming problems - They enumerate the entire solution space but only
implicitly hence they are called implicit
enumeration algorithms. - A general-purpose solution technique which must
be specialized for individual IP's. - Running time grows exponentially with the problem
size, but small to moderate size problems can be
solved in reasonable time.
18Example
s.t.
19(No Transcript)
20An Example
- Telfa Corporation makes tables and chairs
- A table requires one hour of labor and 9 square
board feet of wood - A chair requires one hour of labor and 5 square
board feet of wood - Each table contributes 8 to profit, and each
- chair contributes 5 to profit.
- 6 hours of labor and 45 square board feet is
- available
- Find a product mix to maximize the profit
- Maximize z 8x1 5x2
- subject to x1 x2 6 9x1 5x2 45 x1,
x2 ³ 0 x1, x2 integer
21Feasible Region for Telfas Problem
- Subproblem 1 The LP relaxation of original
- Optimal LP Solution x1 3.75 and x2 2.25 and
z 41.25 - Subproblem 2 Subproblem 1 Constraint x1 ³ 4
- Subproblem 3 Subproblem 1 Constraint x1 3
22Feasible Region for Subproblems
- Branching The process of decomposing a
subproblem into two or more subproblems is called
branching. - Optimal solution of Subproblem 2
- z 41, x1 4, x2 9/5 1.8
- Subproblem 4 Subproblem 2 Constraint x2 ³ 2
- Subproblem 5 Subproblem 2 Constraint x2 1
23Feasible Region for Subproblems 4 5
24The Branch and Bound Tree
3
Optimal solution of Subproblem 5 z 40.05,
x1 4.44, x2 1 Subproblem 6 Subproblem
5 Constraint x1 ³ 5 Subproblem 7 Subproblem 5
Constraint x1 4
25Feasible Region for Subproblems 6 7
Optimal solution of Subproblem 7 z 37,
x1 4, x2 1 Optimal solution of
Subproblem 6 z 40, x1 5, x2 0
26The Branch and Bound Tree
1
x1 ³ 4
x1 3
Subproblem 3 z 39 x1 3 x2 3,
7
2
x2 1
x2 ³ 2
3
4
5
6
27Solving Knapsack Problems
- Max z 16x1 22x2 12x3 8x4
- subject to
- 5x1 7x2 4x3 3x4 14
- xi 0 or 1 for all i 1, 2, 3, 4
- LP Relaxation
- Max z 16x1 22x2 12x3 8x4
- subject to
- 5x1 7x2 4x3 3x4 14
- 0 xi 1 for all i 1, 2, 3, 4
- Solving the LP Relaxation
- Order xis in the decreasing order of ci/ai where
ci are the cost coefficients and ais are the
coefficients in the constraint - ( Here x1?x2 ? x3 ? x4)
- Select items in this order until the constraint
is satisfied with equality
28The Branch and Bound Tree
29Strategies of Branch and Bound
- The branch and bound algorithm is a divide and
conquer algorithm, where a problem is divided
into smaller and smaller subproblems. Each
subproblem is solved separately, and the best
solution is taken. - Lower Bound (LB) Objective function value of the
best solution found so far. - Branching Strategy The process of decomposing a
subproblem into two or more subproblems is called
branching.
30Strategies of Branch and Bound (contd.)
- Upper Bounding Strategy The process of obtaining
an upper bound (UB) for each subproblem is called
an upper bounding strategy. - Pruning Strategy If for a subproblem, UB LB,
then the subproblem need not be explored further. - (Illustrate how to fathom nodes in a search tree
) - Searching Strategy The order in which
subproblems are examined. Popular search
strategies LIFO and FIFO.
3111.6 ??????????????????
32????????
33??
34??
35??
36??????
37BIP ?????????
38(No Transcript)
39????????
40(No Transcript)
41(No Transcript)
42????????????
4311.7 ??????????????
44MIP?????????
45(No Transcript)
46(No Transcript)
47(No Transcript)
48(No Transcript)
49(No Transcript)
50(No Transcript)
51(No Transcript)
52(No Transcript)
53(No Transcript)
54(No Transcript)