1 1 Slide © 2005 Thomson/South-Western Chapter 8 Integer Linear Programming n Types of Integer Linear Programming Models n Graphical and Computer Solutions for an All- Integer Linear Program n Applications Involving 0-1 Variables n Modeling Flexibility Provided by 0-1 Variables
2 2 Slide © 2005 Thomson/South-Western Types of Integer Programming Models n An LP in which all the variables are restricted to be integers is called an all-integer linear program (ILP). n The LP that results from dropping the integer requirements is called the LP Relaxation of the ILP. n If only a subset of the variables are restricted to be integers, the problem is called a mixed-integer linear program (MILP). n Binary variables are variables whose values are restricted to be 0 or 1. If all variables are restricted to be 0 or 1, the problem is called a 0-1 or binary integer linear program.
3 3 Slide © 2005 Thomson/South-Western Example: All-Integer LP n Consider the following all-integer linear program: Max 3 x x 2 Max 3 x x 2 s.t. 3 x 1 + x 2 < 9 s.t. 3 x 1 + x 2 < 9 x x 2 < 7 x x 2 < 7 - x 1 + x 2 < 1 - x 1 + x 2 < 1 x 1, x 2 > 0 and integer x 1, x 2 > 0 and integer
4 4 Slide © 2005 Thomson/South-Western Example: All-Integer LP n LP Relaxation Solving the problem as a linear program ignoring the integer constraints, the optimal solution to the linear program gives fractional values for both x 1 and x 2. From the graph on the next slide, we see that the optimal solution to the linear program is: x 1 = 2.5, x 2 = 1.5, z = 10.5 x 1 = 2.5, x 2 = 1.5, z = 10.5
5 5 Slide © 2005 Thomson/South-Western Example: All-Integer LP n LP Relaxation LP Optimal (2.5, 1.5) Max 3 x x 2 Max 3 x x 2 - x 1 + x 2 < 1 x2x2x2x2 x1x1x1x1 3 x 1 + x 2 < x x 2 < 7 x x 2 < 7
6 6 Slide © 2005 Thomson/South-Western Example: All-Integer LP n Rounding Up If we round up the fractional solution ( x 1 = 2.5, x 2 = 1.5) to the LP relaxation problem, we get x 1 = 3 and x 2 = 2. From the graph on the next slide, we see that this point lies outside the feasible region, making this solution infeasible.
7 7 Slide © 2005 Thomson/South-Western Example: All-Integer LP n Rounded Up Solution LP Optimal (2.5, 1.5) Max 3 x x 2 Max 3 x x 2 - x 1 + x 2 < 1 x2x2x2x2 x1x1x1x1 3 x 1 + x 2 < 9 ILP Infeasible (3, 2) ILP Infeasible (3, 2) x x 2 < 7 x x 2 <
8 8 Slide © 2005 Thomson/South-Western Example: All-Integer LP n Rounding Down By rounding the optimal solution down to x 1 = 2, x 2 = 1, we see that this solution indeed is an integer solution within the feasible region, and substituting in the objective function, it gives z = 8. We have found a feasible all-integer solution, but have we found the OPTIMAL all-integer solution? The answer is NO! The optimal solution is x 1 = 3 and x 2 = 0 giving z = 9, as evidenced in the next two slides.
9 9 Slide © 2005 Thomson/South-Western Example: All-Integer LP n Complete Enumeration of Feasible ILP Solutions There are eight feasible integer solutions to this problem: x 1 x 2 z x 1 x 2 z optimal solution optimal solution
10 Slide © 2005 Thomson/South-Western Example: All-Integer LP ILP Optimal (3, 0) Max 3 x x 2 Max 3 x x 2 - x 1 + x 2 < 1 x2x2x2x2 x1x1x1x1 3 x 1 + x 2 < 9 x x 2 < 7 x x 2 <
11 Slide © 2005 Thomson/South-Western Example: All-Integer LP n Partial Spreadsheet Showing Problem Data
12 Slide © 2005 Thomson/South-Western Example: All-Integer LP n Partial Spreadsheet Showing Formulas
13 Slide © 2005 Thomson/South-Western Example: All-Integer LP n Partial Spreadsheet Showing Optimal Solution
14 Slide © 2005 Thomson/South-Western Special 0-1 Constraints n When x i and x j represent binary variables designating whether projects i and j have been completed, the following special constraints may be formulated: At most k out of n projects will be completed: At most k out of n projects will be completed: x j < k x j < k j j Project j is conditional on project i : Project j is conditional on project i : x j - x i < 0 x j - x i < 0 Project i is a corequisite for project j : Project i is a corequisite for project j : x j - x i = 0 x j - x i = 0 Projects i and j are mutually exclusive: Projects i and j are mutually exclusive: x i + x j < 1 x i + x j < 1
15 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves Metropolitan Microwaves, Inc. is planning to expand its operations into other electronic appliances. The company has identified seven new product lines it can carry. Relevant information about each line follows on the next slide.
16 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves Initial Floor Space Exp. Rate Initial Floor Space Exp. Rate Product Line Invest. (Sq.Ft.) of Return Product Line Invest. (Sq.Ft.) of Return 1. TV/VCRs$ 6, % 2. Color TVs 12, Projection TVs 20, VCRs 14, DVD Players 15, Video Games 2, Home Computers 32,
17 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves Metropolitan has decided that they should not stock projection TVs unless they stock either TV/VCRs or color TVs. Also, they will not stock both VCRs and DVD players, and they will stock video games if they stock color TVs. Finally, the company wishes to introduce at least three new product lines. If the company has $45,000 to invest and 420 sq. ft. of floor space available, formulate an integer linear program for Metropolitan to maximize its overall expected return.
18 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Define the Decision Variables x j = 1 if product line j is introduced; = 0 otherwise. = 0 otherwise.where: Product line 1 = TV/VCRs Product line 2 = Color TVs Product line 3 = Projection TVs Product line 4 = VCRs Product line 5 = DVD Players Product line 6 = Video Games Product line 7 = Home Computers
19 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Define the Decision Variables x j = 1 if product line j is introduced; = 0 otherwise. = 0 otherwise. n Define the Objective Function Maximize total expected return: Max.081(6000) x (12000) x (20000) x 3 Max.081(6000) x (12000) x (20000) x (14000) x (15000) x (2000) x (14000) x (15000) x (2000) x (32000) x (32000) x 7
20 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Define the Constraints 1) Money: 1) Money: 6 x x x x x x x 7 < 45 6 x x x x x x x 7 < 45 2) Space: 2) Space: 125 x x x x x x x 7 < x x x x x x x 7 < 420 3) Stock projection TVs only if 3) Stock projection TVs only if stock TV/VCRs or color TVs: stock TV/VCRs or color TVs: x 1 + x 2 > x 3 or x 1 + x 2 - x 3 > 0 x 1 + x 2 > x 3 or x 1 + x 2 - x 3 > 0
21 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Define the Constraints (continued) 4) Do not stock both VCRs and DVD players: x 4 + x 5 < 1 5) Stock video games if they stock color TV's: 5) Stock video games if they stock color TV's: x 2 - x 6 > 0 6) Introduce at least 3 new lines: 6) Introduce at least 3 new lines: x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 > 3 7) Variables are 0 or 1: 7) Variables are 0 or 1: x j = 0 or 1 for j = 1,,, 7 x j = 0 or 1 for j = 1,,, 7
22 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Partial Spreadsheet Showing Problem Data
23 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Partial Spreadsheet Showing Example Formulas
24 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Solver Parameters Dialog Box
25 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Solver Options Dialog Box
26 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Integer Options Dialog Box
27 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Optimal Solution
28 Slide © 2005 Thomson/South-Western Example: Metropolitan Microwaves n Optimal Solution Introduce: Introduce: TV/VCRs, Projection TVs, and DVD Players TV/VCRs, Projection TVs, and DVD Players Do Not Introduce: Do Not Introduce: Color TVs, VCRs, Video Games, and Home Computers Color TVs, VCRs, Video Games, and Home Computers Total Expected Return : Total Expected Return : $4,261 $4,261
29 Slide © 2005 Thomson/South-Western Example: Tina’s Tailoring Tina's Tailoring has five idle tailors and four custom garments to make. The estimated time (in hours) it would take each tailor to make each garment is shown in the next slide. (An 'X' in the table indicates an unacceptable tailor-garment assignment.) Tailor Tailor Garment Garment Wedding gown Wedding gown Clown costume X Clown costume X Admiral's uniform X 9 Admiral's uniform X 9 Bullfighter's outfit X Bullfighter's outfit X
30 Slide © 2005 Thomson/South-Western Example: Tina’s Tailoring Formulate an integer program for determining the tailor-garment assignments that minimize the total estimated time spent making the four garments. No tailor is to be assigned more than one garment and each garment is to be worked on by only one tailor This problem can be formulated as a 0-1 integer program. The LP solution to this problem will automatically be integer (0-1).
31 Slide © 2005 Thomson/South-Western Example: Tina’s Tailoring n Define the decision variables x ij = 1 if garment i is assigned to tailor j x ij = 1 if garment i is assigned to tailor j = 0 otherwise. = 0 otherwise. Number of decision variables = Number of decision variables = [(number of garments)(number of tailors)] - (number of unacceptable assignments) - (number of unacceptable assignments) = [4(5)] - 3 = 17
32 Slide © 2005 Thomson/South-Western Example: Tina’s Tailoring n Define the objective function Minimize total time spent making garments: Minimize total time spent making garments: Min 19 x x x x x x 21 Min 19 x x x x x x x x x x x x x x x x x x x x x x x x x x x x 45
33 Slide © 2005 Thomson/South-Western Example: Tina’s Tailoring n Define the Constraints Exactly one tailor per garment: 1) x 11 + x 12 + x 13 + x 14 + x 15 = 1 1) x 11 + x 12 + x 13 + x 14 + x 15 = 1 2) x 21 + x 22 + x 24 + x 25 = 1 2) x 21 + x 22 + x 24 + x 25 = 1 3) x 31 + x 32 + x 33 + x 35 = 1 3) x 31 + x 32 + x 33 + x 35 = 1 4) x 42 + x 43 + x 44 + x 45 = 1 4) x 42 + x 43 + x 44 + x 45 = 1
34 Slide © 2005 Thomson/South-Western Example: Tina’s Tailoring n Define the Constraints (continued) No more than one garment per tailor: 5) x 11 + x 21 + x 31 < 1 6) x 12 + x 22 + x 32 + x 42 < 1 7) x 13 + x 33 + x 43 < 1 8) x 14 + x 24 + x 44 < 1 9) x 15 + x 25 + x 35 + x 45 < 1 Nonnegativity: x ij > 0 for i = 1,..,4 and j = 1,..,5
35 Slide © 2005 Thomson/South-Western Cautionary Note About Sensitivity Analysis n Sensitivity analysis often is more crucial for ILP problems than for LP problems. n A small change in a constraint coefficient can cause a relatively large change in the optimal solution. n Recommendation: Resolve the ILP problem several times with slight variations in the coefficients before choosing the “best” solution for implementation.
36 Slide © 2005 Thomson/South-Western End of Chapter 8