Upload
adela-sherman
View
264
Download
1
Embed Size (px)
Citation preview
Chapter 9 - Integer Programming 1
Chapter 9
Integer Programming
Introduction to Management Science
8th Edition
by
Bernard W. Taylor III
Chapter 9 - Integer Programming 2
Chapter Topics
Integer Programming (IP) Models
Still “linear programming models”
Variables must be integers, and so forma subset of the original, real-number models
Integer Programming Graphical Solution
Computer Solution of Integer Programming Problems With Excel and QM for Windows
Chapter 9 - Integer Programming 3
Integer Programming ModelsTypes of Models
Total Integer Model: All decision variables required to have integer solution values.
0–1 Integer Model: All decision variables required to have integer values of zero or one.
Also referred to as Boolean and True/False
Mixed Integer Model: Some of the decision variables (but not all) required to have integer values.
Chapter 9 - Integer Programming 4
Machine
Required Floor Space (sq. ft.)
Purchase Price
Press Lathe
15
30
$8,000
4,000
A Total Integer Model (1 of 2)
Machine shop obtaining new presses and lathes.
Marginal profitability: each press $100/day; each lathe $150/day.
Resource constraints: $40,000, 200 sq. ft. floor space.
Machine purchase prices and space requirements:
Chapter 9 - Integer Programming 5
A Total Integer Model (2 of 2)
Integer Programming Model:
Maximize Z = $100x1 + $150x2
subject to:
8,000x1 + 4,000x2 $40,000
15x1 + 30x2 200 ft2
x1, x2 0 and integer
x1 = number of presses x2 = number of lathes
Chapter 9 - Integer Programming 6
Recreation facilities selection to maximize daily usage by residents.
Resource constraints: $120,000 budget; 12 acres of land.
Selection constraint: either swimming pool or tennis center (not both).
Data:
Recreation Facility
Expected Usage (people/day)
Cost ($) Land
Requirement (acres)
Swimming pool Tennis Center Athletic field Gymnasium
300 90 400 150
35,000 10,000 25,000 90,000
4 2 7 3
A 0–1 Integer Model (1 of 2)
Chapter 9 - Integer Programming 7
Integer Programming Model:
Maximize Z = 300x1 + 90x2 + 400x3 + 150x4
subject to:
$35,000x1 + 10,000x2 + 25,000x3 + 90,000x4 $120,000
4x1 + 2x2 + 7x3 + 3x4 12 acres
x1 + x2 1 facility
x1, x2, x3, x4 = 0 or 1 (either do or don’t)
x1 = construction of a swimming pool x2 = construction of a tennis center x3 = construction of an athletic field x4 = construction of a gymnasium
A 0–1 Integer Model (2 of 2)
Chapter 9 - Integer Programming 8
A Mixed Integer Model (1 of 2)
$250,000 available for investments providing greatest return after one year.
Data:
Condominium cost $50,000/unit, $9,000 profit if sold after one year.
Land cost $12,000/ acre, $1,500 profit if sold after one year.
Municipal bond cost $8,000/bond, $1,000 profit if sold after one year.
Only 4 condominiums, 15 acres of land, and 20 municipal bonds available.
Chapter 9 - Integer Programming 9
Integer Programming Model:
Maximize Z = $9,000x1 + 1,500x2 + 1,000x3
subject to:
50,000x1 + 12,000x2 + 8,000x3 $250,000 x1 4 condominiums x2 15 acres x3 20 bonds x2 0 x1, x3 0 and integer
x1 = condominiums purchased x2 = acres of land purchased x3 = bonds purchased
A Mixed Integer Model (2 of 2)
Chapter 9 - Integer Programming 10
Rounding non-integer solution values up (down) to the nearest integer value can result in an infeasible solution
A feasible solution may be found by rounding down (up)non-integer solution values, but may result in a less than optimal (sub-optimal) solution.
Whether a variable is to be rounded up or down depends on where the corresponding point is with respect to the constraint boundaries.
Integer Programming Graphical Solution
Chapter 9 - Integer Programming 11
Integer Programming ExampleGraphical Solution of Maximization Model
Maximize Z = $100x1 + $150x2
subject to: 8,000x1 + 4,000x2 $40,000 15x1 + 30x2 200 ft2
x1, x2 0 and integer
Optimal Solution:Z = $1,055.56x1 = 2.22 pressesx2 = 5.55 lathes
Figure 9.1Feasible Solution Space with Integer Solution Points
Both of these may be found by judiciousrounding, but the value of the objective function needs to be checked for each.
Chapter 9 - Integer Programming 12
Branch and Bound Method
Traditional approach to solving integer programming problems.
Based on principle that total set of feasible solutions can be partitioned into smaller subsets of solutions.
Smaller subsets evaluated until best solution is found.
Method is a tedious and complex mathematical process.
Excel and QM for Windows used in this book.
See CD-ROM Module C – “Integer Programming: the Branch and Bound Method” for detailed description of method.
Chapter 9 - Integer Programming 13
Recreational Facilities Example:
Maximize Z = 300x1 + 90x2 + 400x3 + 150x4
subject to:
$35,000x1 + 10,000x2 + 25,000x3 + 90,000x4 $120,000
4x1 + 2x2 + 7x3 + 3x4 12 acres
x1 + x2 1 facility
x1, x2, x3, x4 = 0 or 1
Computer Solution of IP Problems0–1 Model with Excel (1 of 5)
Chapter 9 - Integer Programming 14
Exhibit 9.2
Computer Solution of IP Problems0–1 Model with Excel (2 of 5)
Chapter 9 - Integer Programming 15
Exhibit 9.3
Computer Solution of IP Problems0–1 Model with Excel (3 of 5)
Instead, one could justspecify $C$12:$C$15as “binary” (= ‘0’ or ‘1’).
Chapter 9 - Integer Programming 16
Exhibit 9.4
Computer Solution of IP Problems0–1 Model with Excel (4 of 5)
To constrain a range of variables to be integers, enter:
… and note that it doesn’t matter what you put in the right-hand side field, but it must not be empty.
Instead, one could just specify the “bin” option (= ‘0’ or ‘1’),thus avoiding the additional, “≥ 0” and “≤ 1” constraints.
Chapter 9 - Integer Programming 17
Exhibit 9.5
Computer Solution of IP Problems0–1 Model with Excel (5 of 5)
Chapter 9 - Integer Programming 18
Computer Solution of IP Problems0–1 Model with QM for Windows (1 of 3)
Recreational Facilities Example:
Maximize Z = 300x1 + 90x2 + 400x3 + 150x4
subject to:
$35,000x1 + 10,000x2 + 25,000x3 + 90,000x4 $120,000
4x1 + 2x2 + 7x3 + 3x4 12 acres
x1 + x2 1 facility
x1, x2, x3, x4 = 0 or 1
Chapter 9 - Integer Programming 19
Exhibit 9.6
Computer Solution of IP Problems0–1 Model with QM for Windows (2 of 3)
Chapter 9 - Integer Programming 20
Exhibit 9.7
Computer Solution of IP Problems0–1 Model with QM for Windows (3 of 3)
Chapter 9 - Integer Programming 21
Computer Solution of IP ProblemsTotal Integer Model with Excel (1 of 5)
Integer Programming Model:
Maximize Z = $100x1 + $150x2
subject to:
8,000x1 + 4,000x2 $40,000
15x1 + 30x2 200 ft2
x1, x2 0 and integer
Chapter 9 - Integer Programming 22
Exhibit 9.8
Computer Solution of IP ProblemsTotal Integer Model with Excel (2 of 5)
Chapter 9 - Integer Programming 23
Exhibit 9.9
Computer Solution of IP ProblemsTotal Integer Model with Excel (3 of 5)
… and, again, just to note that this field will automatically
fill, but Excel wants you to put something in it anyway.
Chapter 9 - Integer Programming 24
Exhibit 9.10
Computer Solution of IP ProblemsTotal Integer Model with Excel (4 of 5)
Chapter 9 - Integer Programming 25
Exhibit 9.11
Computer Solution of IP ProblemsTotal Integer Model with Excel (5 of 5)
Chapter 9 - Integer Programming 26
Integer Programming Model:
Maximize Z = $9,000x1 + 1,500x2 + 1,000x3
subject to:
50,000x1 + 12,000x2 + 8,000x3 $250,000 x1 4 condominiums x2 15 acres x3 20 bonds x2 0 x1, x3 0 and integer
Computer Solution of IP ProblemsMixed Integer Model with Excel (1 of 3)
Chapter 9 - Integer Programming 27
Exhibit 9.12
Computer Solution of IP ProblemsTotal Integer Model with Excel (2 of 3)
Chapter 9 - Integer Programming 28
Exhibit 9.13
Computer Solution of IP ProblemsSolution of Total Integer Model with Excel (3 of 3)
Chapter 9 - Integer Programming 29
Exhibit 9.14
Computer Solution of IP ProblemsMixed Integer Model with QM for Windows (1 of 2)
Chapter 9 - Integer Programming 30
Exhibit 9.15
Computer Solution of IP ProblemsMixed Integer Model with QM for Windows (2 of 2)
Chapter 9 - Integer Programming 31
University bookstore expansion project.
Not enough space available for both a computer department and a clothing department.
Data:
Project NPV Return
($1000) Project Costs per Year ($1000)
1 2 3
1. Website 2. Warehouse 3. Clothing department 4. Computer department 5. ATMs Available funds per year
120 85 105 140 75
55 45 60 50 30
150
40 35 25 35 30
110
25 20 -- 30 --
60
0–1 Integer Programming Modeling ExamplesCapital Budgeting Example (1 of 4)
Chapter 9 - Integer Programming 32
x1 = selection of web site projectx2 = selection of warehouse projectx3 = selection clothing department projectx4 = selection of computer department projectx5 = selection of ATM projectxi = 1 if project “i” is selected, 0 if project “i” is not selected
Maximize Z = $120x1 + $85x2 + $105x3 + $140x4 + $70x5
subject to: 55x1 + 45x2 + 60x3 + 50x4 + 30x5 150 40x1 + 35x2 + 25x3 + 35x4 + 30x5 110 25x1 + 20x2 + 30x4 60 x3 + x4 1 xi = 0 or 1
0–1 Integer Programming Modeling ExamplesCapital Budgeting Example (2 of 4)
Chapter 9 - Integer Programming 33
Exhibit 9.16
0–1 Integer Programming Modeling ExamplesCapital Budgeting Example (3 of 4)
Chapter 9 - Integer Programming 34
Exhibit 9.17
0–1 Integer Programming Modeling ExamplesCapital Budgeting Example (4 of 4)
Could have chosen ‘bin’ (= ‘0’ or ‘1’) instead!
Chapter 9 - Integer Programming 35
Plant
Available Capacity
(tons,1000s) A B C
12 10 14
Farms Annual Fixed Costs
($1000)
Projected Annual Harvest (tons, 1000s)
1 2 3 4 5 6
405 390 450 368 520 465
11.2 10.5 12.8 9.3 10.8 9.6
Farm
Plant A B C
1 2 3 4 5 6
18 15 12 13 10 17 16 14 18 19 15 16 17 19 12 14 16 12
0–1 Integer Programming Modeling ExamplesFixed Charge and Facility Example (1 of 4)
Which of the six farms should be purchased that will meet current production capacity at minimum total cost, including annual fixed costs and shipping costs?
Data:
Chapter 9 - Integer Programming 36
yi = 0 if farm i is not selected, and 1 if farm i is selected, i = 1,2,3,4,5,6
xij = potatoes (tons, 1000s) shipped from farm i, i = 1,2,3,4,5,6 to plant j, j = A,B,C.
Minimize Z = 18x1A + 15x1B + 12x1C + 13x2A + 10x2B + 17x2C + 16x3A + 14x3B + 18x3C + 19x4A + 15x4B + 16x4C + 17x5A + 19x5B +
12x5C + 14x6A + 16x6B + 12x6C + 405y1 + 390y2 + 450y3 + 368y4 + 520y5 + 465y6
subject to: x1A + x1B + x1C - 11.2y1 ≤ 0 x2A + x2B + x2C -10.5y2 ≤ 0 x3A + x3B + x3C - 12.8y3 ≤ 0 x4A + x4B + x4C - 9.3y4 ≤ 0 x5A + x5B + x5B - 10.8y5 ≤ 0 x6A + x6B + X6C - 9.6y6 ≤ 0 x1A + x2A + x3A + x4A + x5A + x6A =12 x1B + x2B + x3A + x4B + x5B + x6B = 10 x1C + x2C + x3C+ x4C + x5C + x6C = 14 xij ≥ 0 yi = 0 or 1
0–1 Integer Programming Modeling ExamplesFixed Charge and Facility Example (2 of 4)
The 6 farms’ capacities.�
The 3 plants’ capacities.
Chapter 9 - Integer Programming 37
Exhibit 9.18
0–1 Integer Programming Modeling ExamplesFixed Charge and Facility Example (3 of 4)
Chapter 9 - Integer Programming 38
Exhibit 9.19
0–1 Integer Programming Modeling ExamplesFixed Charge and Facility Example (4 of 4)
Chapter 9 - Integer Programming 39
Cities Cities within 300 miles 1. Atlanta Atlanta, Charlotte, Nashville 2. Boston Boston, New York 3. Charlotte Atlanta, Charlotte, Richmond 4. Cincinnati Cincinnati, Detroit, Nashville, Pittsburgh 5. Detroit Cincinnati, Detroit, Indianapolis, Milwaukee, Pittsburgh 6. Indianapolis Cincinnati, Detroit, Indianapolis, Milwaukee, Nashville, St.
Louis 7. Milwaukee Detroit, Indianapolis, Milwaukee 8. Nashville Atlanta, Cincinnati, Indianapolis, Nashville, St. Louis 9. New York Boston, New York, Richmond10. Pittsburgh Cincinnati, Detroit, Pittsburgh, Richmond11. Richmond Charlotte, New York, Pittsburgh, Richmond12. St. Louis Indianapolis, Nashville, St. Louis
APS wants to construct the minimum set of new hubs in the following twelve cities such that there is a hub within 300 miles of every city:
0–1 Integer Programming Modeling ExamplesSet Covering Example (1 of 4)
Chapter 9 - Integer Programming 40
xi = city i, i = 1 to 12, xi = 0 if city is not selected as a hub and xi = 1if it is.
Minimize Z = x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12
subject to:
Atlanta: x1 + x3 + x8 1Boston: x2 + x10 1Charlotte: x1 + x3 + x11 1Cincinnati: x4 + x5 + x8 + x10 1Detroit: x4 + x5 + x6 + x7 + x10 1Indianapolis: x4 + x5 + x6 + x7 + x8 + x12 1Milwaukee: x5 + x6 + x7 1Nashville: x1 + x4 + x6+ x8 + x12 1New York: x2 + x9+ x11 1Pittsburgh: x4 + x5 + x10 + x11 1Richmond: x3 + x9 + x10 + x11 1St Louis: x6 + x8 + x12 1 xij = 0 or 1
0–1 Integer Programming Modeling ExamplesSet Covering Example (2 of 4)
Chapter 9 - Integer Programming 41
Exhibit 9.20
0–1 Integer Programming Modeling ExamplesSet Covering Example (3 of 4)
the decision variables
Chapter 9 - Integer Programming 42
Exhibit 9.21
0–1 Integer Programming Modeling ExamplesSet Covering Example (4 of 4)
For “N7”, enter “= sumproduct(B7:M7,B$20:M$20)” and the down;the last constraint requires that these (hubs within 300 mi) equal at least one.
Chapter 9 - Integer Programming 43
Total Integer Programming Modeling ExampleProblem Statement (1 of 3)
Textbook company developing two new regions.
Planning to transfer some of its 10 salespeople into new regions.
Average annual expenses for sales person:
Region 1 - $10,000/salespersonRegion 2 - $7,500/salesperson
Total annual expense budget is $72,000.
Sales generated each year:
Region 1 - $85,000/salespersonRegion 2 - $60,000/salesperson
How many salespeople should be transferred into each region in order to maximize increased sales?
Chapter 9 - Integer Programming 44
Step 1:
Formulate the Integer Programming Model
Maximize Z = $85,000x1 + 60,000x2
subject to:
x1 + x2 10 salespeople
$10,000x1 + 7,000x2 $72,000 expense budget
x1, x2 0 or integer
Step 2:
Solve the Model using QM for Windows
Total Integer Programming Modeling ExampleModel Formulation (2 of 3)
Chapter 9 - Integer Programming 45
Total Integer Programming Modeling ExampleSolution with QM for Windows (3 of 3)
Chapter 9 - Integer Programming 46