Department of Management Information systems An-Najah N. University Faculty of Engineering and Information Technology Department of Management Information systems Operations Research and Applications MIS:10676213 Prepared by Mr.Maher Abubaker Fall 2015/2016 Resources Daniel J. Epstein Department of Industrial and Systems Engineering University of Southern California Andrew and Erna Viterbi School of Engineering http://www.eecs.qmul.ac.uk/~eniale/teaching/ise330/index.html Operations Research: An Introduction, 9/EHamdy A. Taha, University of ArkansasISBN-10: 013255593X ISBN-13: 9780132555937©2011 • Prentice Hall • Cloth, 832 ppPublished 08/29/2010 http://www.pearsonhighered.com/educator/product/Operations-Research-An-Introduction/9780132555937.page#downlaoddiv INFORMS – www.informs.org ORMS - www.lionhrtpub.com/ORMS.shtml Science of Better - www.scienceofbetter.org
Chapter 3 Sensitivity Analysis
Shadow Prices Unit Worth ( Shadow Price ) of a resource: is measured in terms of the units of the objective and it measures the improvement of the objective, as a result of increasing the resource by 1 unit. ( It is the shadow price of the resource or the dual price ). IF a slack variable take a positive value, this mean that there is a resource that not used totally. Any resource that is not fully consumed is called Abundant resource and its shadow price =0. Any resource that is fully consumed by the activity is called Scarce resource. Unit worth or shadow price is determined using the coefficient of the slack variables in the final Tableau Z-Row.
Example Subj to: Resource # 1 x1 + x2 + x3 120 Production Planning Problem A company produced 3 products , using 3 resources Max z = 2 x1 + x2 + 3 x3 Subj to: Resource # 1 x1 + x2 + x3 120 Resource # 2 2 x1 + 3 x2 + 3 x3 150 Resource # 3 4 x1 + 2 x3 90 x1 , x2 , x3 0
Optimal! The solution Shadow Prices: Basic Eq Var x1 x2 x3 s1 s2 s3 RHS 0 z 8/3 0 0 0 1/3 1 140 1 s1 1/3 0 0 1 -1/3 0 70 2 x2 -4/3 1 0 0 1/3 -1/2 5 3 x3 2 0 1 0 0 1/2 45 Solution: x1=0, x2=5, x3=45, s1=70, s2=0, s3= 0, z=140 Shadow Prices: Resource # 1 ( S1 ) is an abundant resource and its shadow price = 0 ( look at the coff. Of s1 in Z-Row ) . Initially S1= 120 , currently S1= 70 this means (120-70 = 50 ) 50 units of resource # 1 is consumed and it is not consumed totally . Therefore, Resource #1 (s1) is an abundant resource , if we add one unit of this resource the objective function will be z = 140 + 1 ( Shadow Price ) = 140 + 1 * 0 = 140 , no any effect ------------------------------------------------------------ Resource # 2 ( S2 ) is an Scarce resource and its shadow price = 1/3 ( look at the coff. Of s1 in Z-Row ). Initially S2 = 150, currently S2 = 0 this means ( 150-0=150) 150 units of resource #2 is consumed, it is consumed totally. Therefore, Resource # 2 is a scarce resource, if we add one unit of this resource the objective function will be Z = 140 + 1 ( shadow price ) = 140 + 1 * 1/3 = 140.33 z increased by 1/3 What about Resource # 3 ?????
Sensitivity Analysis It is a tool used for evaluating different scenarios by analyzing the effect of changing some of the model parameters on solution feasibility and optimality. Changing the RHS will change the feasibility Changing the objective function coefficient will change the Optimality
Bicycles R’ US, a small midwest manufacturer of bicycles, makes four different models: a racing bike called the Racer, a standard 10 speed, called the standard, a mountain bike, and a dirt bike, called the ultimate. All four bikes use the same seat assembly. There are only 180 available per day. There is also a limitation of 100 reinforced steel alloy frames used on the mountain and dirt bike. The company desires to maximize profit. Other relevant data are: Racer Standard Mountain Ultimate Available Assembly Time 8 hrs 10 12 18 2000 Inspection Time 2 2 4 5 500 Unit Profit 40 60 80 100
The Formulation Max z = 40 x1 + 60x2 + 80 x3 + 100 x4 subj to:
The Initial and Final Tableau Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 final Bas z x1 x2 x3 x4 s1 s2 s3 s4 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 s4 0 -.2 0 0 0 .1 - .6 .2 1 36 The dual solution
Look here! I want to know what will happen if Final Bas z x1 x2 x3 x4 s1 s2 S3 S4 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 s4 0 -.2 0 0 0 .1 - .6 .2 1 36 Look here! I want to know what will happen if I hire more workers. Should I hire assemblers or inspectors? How many? Why can’t I produce the Racer? How much do I have to increase my profit on that bike? I want to produce a new model called the Traveler. Will it be part of this production plan? Come on! I want answers!!%$#@! President Bicycles R’Us
Let’s add some assembly hours initial Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 Delta b1 1 final Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Delta b1 2 .1 .2 -.3
z = 12,320 + 2 delta b1 If delta b1 = 10, then x2 = 116 + .1 delta b1 Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Delta b1 2 .1 .2 -.3 z = 12,320 + 2 delta b1 x2 = 116 + .1 delta b1 x4 = 12 + .2 delta b1 x3 = 52 - .3 delta b1 x8 = 36 + .1 delta b1 If delta b1 = 10, then z = 12,320 + 2 (10) = 12,340 x2 = 116 + .1(10) = 117 x4 = 12 + .2(10) = 14 x3 = 52 - .3(10) = 49 x8 = 36 + .1(10) = 37 >= 0 delta b1 >= -116/.1 = -1160 delta b1 >= -12 / .2 = -60 delta b1 <= -52/-.3 = 173.33 delta b1 >= -36/.1 = -360 -60 <= delta b1 <= 173.33 1940 <= b1 <= 2173.33
Gosh this is great! Do another one. Will ya? Will Ya? “The Standard”
Let’s add some test hours initial Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 Delta b2 1 final Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Delta b2 8 -.6 -.2 .8
z = 12,320 + 8 delta b2 If delta b2 = 10, then x2 = 116 - .6 delta b2 Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Delta b2 8 -.6 -.2 .8 z = 12,320 + 8 delta b2 x2 = 116 - .6 delta b2 x4 = 12 - .2 delta b2 x3 = 52 + .8 delta b2 x8 = 36 - .6 delta b2 If delta b2 = 10, then z = 12,320 + 8 (10) = 12,400 x2 = 116 - .6(10) = 110 x4 = 12 - .2(10) = 10 x3 = 52 + .8(10) = 60 x8 = 36 - .6(10) = 30 >= 0 delta b2 <= -116/-.6 = 193.33 delta b2 <= -12 / -.2 = 60 delta b2 >= -52/.8 = -65 delta b2 <= -36/-.6 = 60 -65 <= delta b2 <= 60 435 <= b2 <= 560
What about more bike seats? initial Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 Delta b3 1 final Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Delta b3 24 1.2 -1.6 1.4 .2
z = 12,320 + 24 delta b3 If delta b3 = 10, then Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Delta b3 24 1.2 -1.6 1.4 .2 z = 12,320 + 24 delta b3 x2 = 116 + 1.2 delta b3 x4 = 12 - 1.6 delta b3 x3 = 52 + 1.4 delta b3 x8 = 36 + .2 delta b3 If delta b3 = 10, then z = 12,320 + 24 (10) = 12,560 x2 = 116 + 1.2(10) = 118 x4 = 12 -1.6 (10) = -4 infeasible x3 = 52 + 1.4 (10) x8 = 36 + .2(10) >= 0 delta b3 >= -116/1.2 = -96.67 delta b3 <= -12 / -1.6 = 7.5 delta b3 >= -52/1.4 = -37.14 delta b3 >= -36/.2 = -180 -37.14 <= delta b3 <= 7.5 142.86 <= b3 <= 187.5
Let us do the steel alloy frames. initial Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 Delta b4 1 final Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Delta b4 1
z = 12,320 + 0 delta b4 If delta b4 = 10, then x2 = 116 + 0 delta b4 Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Delta b4 1 z = 12,320 + 0 delta b4 x2 = 116 + 0 delta b4 x4 = 12 + 0 delta b4 x3 = 52 + 0 delta b4 x8 = 36 + 1 delta b4 If delta b4 = 10, then z = 12,320 x2 = 116 x4 = 12 x3 = 52 x8 = 36 + 1(10) = 46 >= 0 delta b4 >= -36/1 = -36 -36 <= delta b4 64 <= b4
What about my Racer? Optimal if 16 > 0 or < 16 Or c1 <= 56 Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 initial Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 final Optimal if 16 > 0 or < 16 Or c1 <= 56
The Standard profit coefficient Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 initial final Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 1 16 0 0 0 2 8 24 0 12320 +.8 + .1 -.6 +1.2 +116
16 + .8 >= 0 >= -16/.8 = -20 2 + .1 >=0 >= -2/.1 = -20 Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 1 16 0 0 0 2 8 24 0 12320 +.8 + .1 -.6 +1.2 +116 16 + .8 >= 0 >= -16/.8 = -20 2 + .1 >=0 >= -2/.1 = -20 8 - .6 >=0 <= -8/-.6 = 13.33 24 + 1.2 >=0 >= -24/1.2 = -20 -20 <= <= 13.333 40 <= c2 <= 73.33
The Ultimate profit coefficient Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 initial final Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 1 16 0 0 0 2 8 24 0 12320 -.4 + .2 -.2 -1.6 +12
16 -.4 >= 0 <= 16/.4 = 40 2 + .2 >=0 >= -2/.2 = -10 Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 1 16 0 0 0 2 8 24 0 12320 -.4 + .2 -.2 -1.6 +12 16 -.4 >= 0 <= 16/.4 = 40 2 + .2 >=0 >= -2/.2 = -10 8 - .2 >=0 <= -8/-.2 = 40 24 - 1.6 >=0 <= -24/-1.6 = 15 -10 <= <= 15 90 <= c4 <= 115
We can use the dual variable values to analyze this: What about the boss’ new Traveler bike? I understand that it will take 10 assembly hours and 3 hours to test. Profit will be $70 per unit. It uses the standard seat assembly but not the steel alloy frame. We can use the dual variable values to analyze this: y1 = value of one assembly hour = $2 y2 = value of one test hour = $8 y3 = value of one seat assembly = $24 y4 = value of one steel alloy frame = 0 Therefore, the objective function coefficient of the traveler in the final tableau is: -70 + ($2 x 10 + $8 x 3 + $24 x 1 + 0) = -70 + 68 = -2 We would no longer be optimal! Relative to current basic solution, the Traveler would now entering the basis.
The Initial and “Final” Tableau with the Traveler Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 -40 -60 -80 -100 0 0 0 0 0 x5 0 8 10 12 18 1 0 0 0 2000 x6 0 2 2 4 5 0 1 0 0 500 x7 0 1 1 1 1 0 0 1 0 180 x8 0 0 0 1 1 0 0 0 1 100 Traveler -70 10 3 1 Bas z x1 x2 x3 x4 x5 x6 x7 x8 RHS z 1 16 0 0 0 2 8 24 0 12,320 x2 0 .8 1 0 0 .1 -.6 1.2 0 116 x4 0 -.4 0 0 1 .2 -.2 -1.6 0 12 x3 0 .6 0 1 0 -.3 .8 1.4 0 52 x8 0 -.2 0 0 0 .1 - .6 .2 1 36 Traveler -2 x The Red X=(10*0.1) + (3 * -0.6) + (1*1.2)+(0*0) = 0.4 and so on for the rest