Download presentation
Presentation is loading. Please wait.
Published byLeon Fowler Modified over 8 years ago
2
Department of Business Administration FALL -SPRING Management Science Operations Research by Ass. Prof. Sami Fethi Assoc. Prof. Sami Fethi © 2007 Pearson Education
3
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 2 Chapter Topics Integer Programming (IP) Models Integer Programming (IP) Models Examples for Integer Programming (IP) Models Examples for Integer Programming (IP) Models Integer Programming Graphical Solution Integer Programming Graphical Solution Traditional approaches to solving integer programming problems Traditional approaches to solving integer programming problems Branch and Bound Method Gomory cutting plane Method Examples for Gomory cutting plane Method Examples for Gomory cutting plane Method
4
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 3 Why used? The implicit assumption was that solutions could be fractional or real numbers (i.e., non-integer) in the linear programming models. However, non-integer solutions are always practical. The implicit assumption was that solutions could be fractional or real numbers (i.e., non-integer) in the linear programming models. However, non-integer solutions are always practical. When only integer solutions are practical or logical, non- integer solution values can be rounded off to the nearest feasible integer values. When only integer solutions are practical or logical, non- integer solution values can be rounded off to the nearest feasible integer values. For example, if the case is nail, it will cause little concern considering 8000.4 nails as 8000 nails. Round off makes the case cost only a few cents apeice. For example, if the case is nail, it will cause little concern considering 8000.4 nails as 8000 nails. Round off makes the case cost only a few cents apeice. For example, if the case is a production of jet aircraft, round off could affect profit or cost by million dollar considering 7.4 jet airliners as 7 or 8. For example, if the case is a production of jet aircraft, round off could affect profit or cost by million dollar considering 7.4 jet airliners as 7 or 8.
5
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 4 Integer Programming Models: Types 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. Mixed Integer Model: Some of the decision variables (but not all) required to have integer values.
6
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 5 Example 1: 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:
7
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 6 A Total Integer Model (2 of 2) Integer Programming Model: Maximize Z = $100x 1 + $150x 2 subject to: 8,000x 1 + 4,000x 2 $40,000 15x 1 + 30x 2 200 ft 2 x 1, x 2 0 and integer x 1 = number of presses x 2 = number of lathes
8
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 7 Example 2: A Total Integer Model (1 of 1) Integer Programming Model: Maximize Z = 6x 1 + 5x 2 + 2x 3 subject to: 10 x 1 + 4 x 2 + 2 x 3 600 2 x 1 + 5 x 2 + 2 x 3 800 x 1, x 2,, x 3 0 and integer x 1 = 22 x 2 = 0 x 3 = 378 Z=888
9
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 8 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: Example 3 : A 0 - 1 Integer Model (1 of 2)
10
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 9 Integer Programming Model: Maximize Z = 300x 1 + 90x 2 + 400x 3 + 150x 4 subject to: $35,000x 1 + 10,000x 2 + 25,000x 3 + 90,000x 4 $120,000 4x 1 + 2x 2 + 7x 3 + 3x 4 12 acres x 1 + x 2 1 facility x 1, x 2, x 3, x 4 = 0 or 1 x 1 = construction of a swimming pool x 2 = construction of a tennis center x 3 = construction of an athletic field x 4 = construction of a gymnasium Example 3 : A 0 - 1 Integer Model (2 of 2)
11
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 10 Example 4 : A 0 - 1 Integer Model (1 of 1) Integer Programming Model: Maximize Z = 6x 1 + 5x 2 + 2x 3 subject to: 10 x 1 + 4 x 2 + 2 x 3 600 2 x 1 + 5 x 2 + 2 x 3 800 x 1, x 2,, x 3 0 or 1 x 1 = 1 x 2 = 1 x 3 = 1 Z=13
12
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 11 Example 5: 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.
13
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 12 Integer Programming Model: Maximize Z = $9,000x 1 + 1,500x 2 + 1,000x 3 subject to: 50,000x 1 + 12,000x 2 + 8,000x 3 $250,000 x 1 4 condominiums x 2 15 acres x 3 20 bonds x 2 0 x 1, x 3 0 and integer x 1 = condominiums purchased x 2 = acres of land purchased x 3 = bonds purchased Example 5: A Mixed Integer Model (2 of 2)
14
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 13 Example 6 : A Mixed Integer Model (1 of 1) Integer Programming Model: Maximize Z = 6x 1 + 5x 2 + 2x 3 subject to: 10 x 1 + 4 x 2 + 2 x 3 600 2 x 1 + 5 x 2 + 2 x 3 800 x 1, x 2,, x 3 0 x 1 = 22.2 x 2 = 0 x 3 = 377.8 Z=888.9
15
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 14 Integer Programming Example Graphical Solution of Maximization Model Maximize Z = $100x 1 + $150x 2 subject to: 8,000x 1 + 4,000x 2 $40,000 15x 1 + 30x 2 200 ft 2 x 1, x 2 0 and integer Optimal Solution: Z = $1,055.56 x 1 = 2.22 presses x 2 = 5.55 lathes Figure 1 Feasible Solution Space with Integer Solution Points
16
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 15 Rounding non-integer solution values up to the nearest integer value can result in an infeasible solution. A feasible solution is ensured by rounding down non- integer solution values but may result in a less than optimal (sub-optimal) solution. Integer Programming Graphical Solution
17
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 16 Traditional approaches to solving integer programming problems Branch and Bound Method 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. This method can be used more easier If Excel or QM is conducted.
18
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 17 Traditional approaches to solving integer programming problems Gomory cutting plane Method In 1958 Ralph Gomory was the first individual to develop a systematic (algorithmic) approach for solving linear integer programming problems. His method is an algebraic approach based on the systematic addition of new constraints (or cuts), which are satisfied by an integer solution but not by a continous variable solution. The idea of a cut is a new contstraint permits the new feasible region to include all the feasible integer solution for the original constraints, but it does not include the optimal noninteger solution originally found.
19
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 18 Example 1- Gromory cutting plane Method Integer Programming Model: Gromory’s fractional cut Maximize Z = $ 3x 1 + $ 5x 2 subject to: 1 x 1 + 4 x 2 9 2 x 1 + 3 x 2 4 Non-negativity x 1, x 2 0 Given the optimal noninteger solution to the problem:
20
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 19 Example 1- Gromory cutting plane Method Find the optimal integer solution using Gomory’s cutting plane method 3500 CPmixQuanX1X2S1S2 5X27/5012/5-1/5 3X117/510-3/54/5 Z86/5351/57/5 C-Z00-1/5-7/5
21
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 20 Traditional approaches to solving integer programming problems Steps in Gomory cutting plane Method To find the cut, we arbitrarily choose one of noninteger variables in the optimal solution. We choose X2 and need to rewrite this row with any noninteger value in it express as the sum of an integer and a non negative fraction less than 1. The numbers in such process should be rewritten: 4/3=1+1/3 5/4=1+1/4 2/3=0+2/3 -2/3=-1+1/3
22
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 21 Traditional approaches to solving integer programming problems Steps in Gomory cutting plane Method Initially, we write these values in the C row (1, 2/5, -1/5, 7/5) as the sum of an integer and a nonnegative fraction less than 1. (1+0) X2+ (0+2/5) S1 + (-1+4/5) S2= (1+2/5) Then we take all the integer coefficient to the right-hand side: 2/5 S1 +4/5 S2= (2/5+1-1X2+1S2) 2/5 S1 +4/5 S2= (2/5+some integer ) PmixQuanX1X2S1S2 X27/5012/5-1/5
23
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 22 Traditional approaches to solving integer programming problems Steps in Gomory cutting plane Method Omitting some integer part and write the cut eqn as follow: The eqn must be greater than or equal 2/5. 2/5 S1 +4/5 S2 ≥ 2/5 For the sake of simplicity, we multiply the eqn by -1 and we avoid having to deal with subtracted slack variables which require an artificial variable. - 2/5 S1 - 4/5 S2 ≤ - 2/5 - 2/5 S1 - 4/5 S2 + S3 = - 2/5 -This is the required cut. PmixQuanX1X2S1S2 X27/5012/5-1/5
24
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 23 Example 1- Gromory cutting plane Method We add the required cut in the new simplex tableau. Since C-Z values are zero or negative, it is difficult to determine which variable to bring into the solution. However, if there is any negative number within the quantity column, the number should leave from the system so S3 should be taken into account. 35000 CPmixQuanX1X2S1S2S3 5X27/5012/5-1/50 3X117/510-3/54/50 S3-2/500 -4/51 Z86/5351/57/50 C-Z00-1/5-7/50
25
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 24 Example 1- Gromory cutting plane Method Now divide the negative values in the S3 row into the corresponding values in C-Z row and bring in that variable which has the smallest quotient: S1=(- 1/5)/ (-2/5)= ½, S2=(- 7/5)/ (-1/4)= 7/4, S1 is the smallest one so S1 comes in whilst S3 goes out. 35000 CPmixQuanX1X2S1S2S3 5X27/5012/5-1/50 3X117/510-3/54/50 S3-2/5*00-2/5-4/5 1 Min Z86/5351/57/50 C-Z00-1/5*-7/5*0
26
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 25 Example 1- Gromory cutting plane Method S3 is leaving from the system and S1 is entering into the system. New S1 =( 1, 0, 0, 1, 2, -5/2) New X2 = old X2- key * New S1 1=7/5-2/5*1 0=0-2/5*0 1=1-2/5*0 0=2/5-2/5*1 −1=-1/5-2/5*2 1=0-2/5*-5/2
27
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 26 Example 1- Gromory cutting plane Method S3 is leaving from the system and S1 is entering into the system New S1 =( 1, 0, 0, 1, 2, -5/2) New X1 = old X1- key * New S1 4=17/5-(-3/5)*1 1=1-(-3/5)*0 0=0-(-3/5)*0 0=-3/5-(-3/5)*1 2=4/5-(-3/5)*2 -3/2=0-(-3/5)*-5/2
28
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 27 Example 1- Gromory cutting plane Method Now, we know that the optimal solution has been reached. It manufactures 4 tables and 1 chair and this uses all the hours available except for 1 hour in department 1 since S1 has the value 1 in the final solution. The profit earned by this optimal integer solution is $ 17 which is only slightly lower than $86/5 ($ 17.20) profit earned by the optimal noninteger solution in the first Table: 35000 CPmixQuanX1X2S1S2S3 5X2 1 0101 3X141002-3/2 S1S110012-5/2 Z1735011/2 C-Z000-1-1/2
29
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 28 Example 2- Gromory cutting plane Method Integer Programming Model: Gromory’s fractional cut Maximize Z = $ 2x 1 + $ 1x 2 subject to: 2 x 1 + 5 x 2 17 3 x 1 + 2 x 2 10 Non-negativity x 1, x 2 0 and integer (a)Find the optimal integer solution using simplex method (b)Find the optimal integer solution using Gomory’s cutting plane method
30
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 29 Example 2- Gromory cutting plane Method Find the optimal integer solution using both simplex and Gomory’s cutting plane methods 2100 CPmixQuanX1X2S1S2Q/XS 0S117251017/2 0S210100110/1 Z000000 C-Z21000 Max Min
31
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 30 Example 2- Gromory cutting plane Method S2 is leaving from the system and X1 is entering into the system. New X1 =( 10/3, 3/3, 2/3, 0, 1/3) New S1 = old S1- key * New X1 31/3=17-2*10/3 0=2-2*3/3 11/3=5-2*2/3 1=1-2*0 −2/3=0-2*1/3
32
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 31 Example 2- Gromory cutting plane Method This is the optimal solution, however the values in Quantity column are noninteger. It seems that the simplex technique applied in part (a) is not good enough so we need to use Gromory cutting plane method in part (b). 2100 CPmixQuanX1X2S1S2Q/XS 0S131/3011/31-2/3 - 2X110/312/301/3 - Z20/324/302/3- C-Z0-1/30-2/3-
33
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 32 Example 2- Gromory cutting plane Method Steps in Gomory cutting plane Method (1+0) X1+ (0+2/3) X2 + (0+1/3) S2= (3+1/3) X1+2/3X2+1/3S2= 3+1/3 2/3 X2 +1/3 S2= 1/3+(3-1X1) 2/3 X2 +1/3 S2 = (1/3+some integer ) (multiply by -1 and add S3 variable). -2/3 X2 -1/3 S2 + S3= -1/3 PmixQuanX1X2S1S2 X1X110/312/301/3
34
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 33 Example 2- Gromory cutting plane Method Now divide the negative values in the S3 row into the corresponding values in C-Z row and bring in that variable which has the smallest quotient: X2=(- 1/3)/ (-2/3)= ½, S2=(- 2/3)/ (-1/3)= 2, X2 is the smallest one so X2 comes in whilst S3 goes out. 21000 CPmixQuanX1X2S1S2S3 2X1X1 10/3 12/301/30 0S1S131/3011/31-2/30 0 S3S3-1/30-2/30-1/31 Z20/324/302/30 C-Z0-1/30-2/30 Min Min Min
35
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 34 Example 2- Gromory cutting plane Method S3 is leaving from the system and X2 is entering into the system. New X2 =( 1/2, 0, 1, 0, ½, -3/2) New S1 = old S1- key * New X2 17/2=31/3-11/3*1/2 0=0-11/3*0 0=11/3-11/3*1 1=1-11/3*0 −5/2=-2/3-11/3*1/2 11/2=0-11/3*-3/2
36
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 35 Example 2- Gromory cutting plane Method This is the optimal solution, however the values in Quantity column are noninteger so we need to use Gromory cutting plane method in choosing the smallest value in Quantity column. We therefore selected X2 21000 CPmixQuanX1X2S1S2S3 1 X2X2 1/2 010 -3/2 2X1X1310001 0 S1S117/2001-5/211/2 Z13/22101/213/2 C-Z000-1/2
37
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 36 Example 2- Gromory cutting plane Method Steps in Gomory cutting plane Method (0) X1+ (1+0) X2 + (0) S1+ (0+1/2) S2+ (-1+1/2) S3 =(0+1/2) X2+1/2 S2-S3-1/2 S3= 1/2 1/2 S2 -1/2 S3= (or ≥) 1/2+(1S3-1X2) 1/2 S2 -1/2 S3 ≥ (1/2+some integer ) (multiply by -1 and add S4 variable). -1/2 S2 +1/2 S3 ≤ -1/2 -1/2 S2 + 1/2 S3 + S4 = -1/2 PmixQuanX1X2S1S2 S3 X2X21/21/2010½ -3/2
38
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 37 Example 2- Gromory cutting plane Method Now divide the negative values in the S4 row into the corresponding values in C-Z row and bring in that variable which has the smallest quotient: S2=(- 1/2)/ (-1/2)= 1, S3=(- 1/2)/ (1/2)= -1, S2 is the smallest one so S2 comes in whilst S4 goes out. 210000 CPmixQuanX1X2S1S2S3S4 1X21/2010 -3/20 2X13100010 0S117/2001-5/211/20 0S4-1/2000 1/21Min Z13/22101/2 0 C-Z000-1/2 0 Min
39
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 38 Example 2- Gromory cutting plane Method S2 is leaving from the system and S4 is entering into the system. New S2 =( 1, 0, 0, 0, 1,-1 -2) New X2 = old X2- key * New S2 0=1/2-1/2*1 0=0-1/2*0 1=1-1/2*0 0=0-1/2*0 0=1/2-1/2*(1) -½ =-3/2-1/2*(-1) 1=0-1/2*(-2)
40
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 39 Example 2- Gromory cutting plane Method S2 is leaving from the system and S4 is entering into the system. New S2 =( 1, 0, 0, 0, 1,-1 -2) New X1 = old X1- key * New S2 3=3-0*1 1=1-0*01-0*0 0=0-0*00-0*0 0-0*00-0*0 0-0*(1) 1 =1-0*(-1) 0=0-0*(-2)
41
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 40 Example 2- Gromory cutting plane Method S2 is leaving from the system and S4 is entering into the system. New S2 =( 1, 0, 0, 0, 1,-1 -2) New S1 = old S1- key * New S2 11=17/2-(-5/2)*1 0=0-(-5/2) *0 0=0-(-5/2) *0 1=1- (-5/2) *0 0=-5/2- (-5/2) *(1) 3 =11/2-(-5/2) *(-1) -5=0-(-5/2) *(-2)
42
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 41 Example 2- Gromory cutting plane Method 210000 CPmixQuanX1X2S1S2S3S4 1X200100-1/21 2X13100010 0S11100103-5 0S2S210001-1-2 Z621003/21 C-Z0-200-3/2
43
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 42 Example 2- Gromory cutting plane Method Now, we know that the optimal solution has been reached. It manufactures 3 mugs and 0 bowl and this uses all the hours and materials available except for 11 hours of labor as well as 1 lb of clay since S1 and S2 have the value 11 and 1 in the final solution row. The profit earned by this optimal integer solution is $ 6 which is only slightly lower than $20/3 ($ 6.66) profit earned by the optimal noninteger solution in the first Table:
44
Ch 5: Integer programmimg Operations Research © 2010/11, Sami Fethi, EMU, All Right Reserved. 43 End of chapter
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.