managerial decision modeling
DESCRIPTION
Managerial Decision Modeling. Cliff Ragsdale 6. edition. Chapter 4 Sensitivity Analysis and the Simplex Method. Innledning. Når vi løser en LP modell antar vi at alle relevante faktorer er kjent med sikkerhet. Slik sikkerhet eksisterer sjelden. - PowerPoint PPT PresentationTRANSCRIPT
1
Managerial Decision Modeling
Cliff Ragsdale6. edition
Rasmus RasmussenBØK350 OPERASJONSANALYSE
Chapter 4Sensitivity Analysis and
the Simplex Method
2Rasmus RasmussenBØK350 OPERASJONSANALYSE
Når vi løser en LP modell antar vi at alle relevante faktorer er kjent med sikkerhet.
Slik sikkerhet eksisterer sjelden.
Sensitivitetsanalysen hjelper med å besvare hvor følsom den optimale løsningen er for endringer i forskjellige koeffisienter i LP modellen.
Innledning
BØK350 OPERASJONSANALYSE 3Rasmus Rasmussen
MAX (eller MIN): c1X1 + c2X2 + … + cnXn
Slik at: a11X1 + a12X2 + … + a1nXn <= b1
:
ak1X1 + ak2X2 + … + aknXn >= bk
:
am1X1 + am2X2 + … + amnXn = bm
Hvor følsom er løsningen overfor endringer i ci , aij , og bi?
Generell form på et Lineært Programmeringsproblem (LP)
BØK350 OPERASJONSANALYSE 4Rasmus Rasmussen
Endre dataene og løs modellen på nytt! Noen ganger er dette den eneste praktiske måten.
Solver lager også sensitivitetsrapporter som kan svare på spørsmål om:
Hvor mye koeffisientene i målfunksjonen kan endres uten å endre den optimale løsningen. (endre cj)
Hvor mye målfunksjonen endres ved endringer i de begrensende ressursene. (endre bi)
Hvor mye målfunksjonen endres ved nye endringer i beslutningsvariablene. (endre xj)
Hvordan optimal løsning vil påvirkes av endringer i koeffisientene i restriksjonene. (endre aij)
Sensitivitetsanalyse
BØK350 OPERASJONSANALYSE 5Rasmus Rasmussen
LP Modellen for Blue Ridge Hot TubsMax 350X1 + 300X2 Dekningsbidrag
S.T.: 1X1 + 1X2 <= 200 Pumper
9X1 + 6X2 <= 1566 Arbeid
12X1 16X2 <= 2880 Rør
X1 >= 0
X2 >= 0Analyse av koeffisientene i målfunksjonen
Analyse av koeffisientene i restriksjonene
BØK350 OPERASJONSANALYSE 6Rasmus Rasmussen
Risk Solver PlatformAktiver Engine Tab i Task Pane
Velg Lineær Solver
Eller kryss av for Automatically Select Engine
BØK350 OPERASJONSANALYSE 7Rasmus Rasmussen
Du kan ”styre alt” i Solver fra Risk Solver Platform Ribbon (båndet).
Du kan spesifisere problemet:Angi målfunksjonen - ObjectiveAngi beslutningsvariablene – DecisionsAngi restriksjonene – Constraints
Du kan løse problemet – OptimizeDu kan lage rapporter - Reports
Ribbon
BØK350 OPERASJONSANALYSE 8Rasmus Rasmussen
1. Du kan bruke menyene i ”Ribbon”
2. Du kan bruke Task Pane
3. Du kan bruke Add-In Premium Solver
Solver på 3 måter
BØK350 OPERASJONSANALYSE 9Rasmus Rasmussen
Litt om Task Pane
BØK350 OPERASJONSANALYSE 10Rasmus Rasmussen
Løst i regneark
Koeffisientene i målfunksjonen
Koeffisientene i restriksjonene
BØK350 OPERASJONSANALYSE 11Rasmus Rasmussen
Etter å ha kjørt Solver og løst problemet, kan du be om rapporter.
Merk: Rapportene er knyttet til det arket der modellen er, og er tilgjengelig helt til ny kjøring av Solver, eller til du avslutter Excel.
Rapportene du velger blir skrevet ut på egne ark i Excel-filen.
Rapporter
BØK350 OPERASJONSANALYSE 12Rasmus Rasmussen
Answer Report
Målfunksjon
Beslutnings-variabler
Restriksjoner
Ny info
BØK350 OPERASJONSANALYSE 13Rasmus Rasmussen
Sensitivity ReportFormatet i cellene er hentet fra
formatet i modellen.Du kan fritt endre format.
Beslutningsvariabler
Restriksjoner
Målfunksjon
BØK350 OPERASJONSANALYSE 14Rasmus Rasmussen
Koeffisientene i målfunksjonen
X1
X2
Opprinnelig nivåkurveDB =350X1 + 300X2
Endringer i koeffisientene i målfunksjonen endrer helningen på nivåkurven.
Sensitivitetsanalysen viser hvor store endringene kan være uten at opprinnelig optimal løsning endres.122
78 Bruk av pumper:1·X1 + 1·X2 = 200
Bruk av arbeid:9X1 + 6X2 = 1566
Økning c1 eller reduksjon c2.
20080
120
BØK350 OPERASJONSANALYSE 15Rasmus Rasmussen
Optimal løsning uendret inntil målfunksjonen blir parallell med de bindende restriksjonene (pumper eller arbeid), ny hjørneløsning.
Linjene er parallelle når de har samme stigningsforhold:
Tillatt endring i målfunksjonen
Max: 350X1 + 300X2 X2 = – (350/300) X1 = – (c1/c2) X1
Pumper: 1X1 + 1X2 200 X2 = 200 – (1/1) X1
Arbeid: 9X1 + 6X2 1566 X2 = 261 – (9/6) X1
Rør: 12X1 + 16X2 2880 X2 = 180 – (12/16) X1
Hvor mye må koeffisientene i målfunksjonen endres for at den skal bli parallell med pumpe-restriksjonen?
Hvor mye må koeffisientene i målfunksjonen endres for at den skal bli parallell med arbeids-restriksjonen?
BØK350 OPERASJONSANALYSE 16Rasmus Rasmussen
= endring verdi slik at: gammel verdi + = ny verdi = ny - gammel
Tillatt endring i målfunksjonen
Max: 350X1 + 300X2 X2 = – (350/300) X1 = – (c1/c2) X1
Pumper: 1X1 + 1X2 200 X2 = 200 – (1/1) X1
Arbeid: 9X1 + 6X2 1566 X2 = 261 – (9/6) X1
Hvor mye må koeffisientene i målfunksjonen endres for at den skal bli parallell med pumpe-restriksjonen? Har stigningskoeffisient -(1/1)
Ny verdi c1: -(c1/300) = -(1/1) -c1=-1300 c1= 300 c1= 300-350 = -50
Ny verdi c2: -(350/c2) = -(1/1) -350=-1c2 c2= 350 c2= 350-300 = +50
Hvor mye må koeffisientene i målfunksjonen endres for at den skal bli parallell med arbeids-restriksjonen? Har stigningskoeffisient -(9/6)
Ny verdi c1: -(c1/300) = -(9/6) -c1=-(9/6)300 c1= 450 c1= 450-350 = +100
Ny verdi c2: -(350/c2) = -(9/6) -350=-(9/6)c2 c2= 233 1/3 c2= 233 1/3-300 = -66 2/3
BØK350 OPERASJONSANALYSE 17Rasmus Rasmussen
Tillatt endring i målfunksjonenEndringene må ligge innenfor alle ytterpunktene:Pumper: c1= -50
Arbeid: c1= +100 -50 c1 100
Rør: c1= -150
Pumper: c2= +50
Arbeid: c2= -66 2/3 -66 2/3 c2 50
Rør: c2= +166 2/3
Har tatt med rør for å illustrere poenget. Trenger bare vurdere bindende restriksjoner.
Optimal løsning uendret så lenge endringene i koeffisientene ligger innenfor disse grensene.
BØK350 OPERASJONSANALYSE 18Rasmus Rasmussen
Endringer i ”Objective Coefficient”
Disse koeffisientene kan endres:
innenfor disse grensene,
uten at disse verdiene endres.
Men målfunksjonen og skyggeprisene endres!
BØK350 OPERASJONSANALYSE 19Rasmus Rasmussen
I tabellen for beslutningsvariablene (”Decision Variable Cells ”) angir verdiene i kolonnene “Allowable Increase” og “Allowable Decrease” hvor mye en koeffisient i målfunksjonen (”Objective Coefficient”) kan endres uten å endre den optimale løsningen (i kolonnen ”Final Value”), under forutsetning av at alle andre koeffisienter forblir uendret.
Endringer i koeffisientene i målfunksjonen
BØK350 OPERASJONSANALYSE 20Rasmus Rasmussen
Hvis målfunksjonen er parallell med en av de bindende restriksjonene har vi alternative optimale løsninger.
Verdier på null (0) i “Allowable Increase” eller “Allowable Decrease” kolonnene for tabellen ”Decision variable Cells” indikerer at en alternativ optimal løsning eksisterer.
OBS! Da er sensitivitetsanalysen ufullstendig!!
Alternative Optimale Løsninger
BØK350 OPERASJONSANALYSE 21Rasmus Rasmussen
Alternative optimale løsninger
Hvis noen av disse er lik 0,
så finnes alternative
verdier til disse.
BØK350 OPERASJONSANALYSE 22Rasmus Rasmussen
Sensitivitetsanalyse restriksjonene
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Sensitivitetsanalysen viser hvor store endringene i høyresidene på restriksjonene kan være før vi får andre bindende restriksjoner.
10880
99
120
BØK350 OPERASJONSANALYSE 23Rasmus Rasmussen
Tillatt endring i restriksjonene
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Kan endre restriksjonene inntil vi får et nytt sett av bindende restriksjoner. Slik vil skyggeprisene forbli uendret.
Økning pumper: 1·X1 + 1·X2 = 207
En større økning vil gjøre at pumper ikke lenger er bindende, men arbeid og rør.
Reduksjon pumper:1·X1 + 1·X2 = 174
En større reduksjon vil gjøre at arbeid ikke lenger er bindende, men pumper og ikke-negativitet.
Pumper kan økes til 207 eller reduseres til 174 uten at andre restriksjoner enn arbeid og pumper er bindende.
BØK350 OPERASJONSANALYSE 24Rasmus Rasmussen
Hvor mye kan tilgang pumper (b1) endres, uten at andre restriksjoner blir bindende?
Økning: Helt til bare arbeid og rør er bindende.Reduksjon: Helt til bare arbeid og x2 ≥ 0 er bindende.
Sensitivitetsanalyse pumper: b1
Økning: Arbeid: 9X1 + 6X2 = 1566 |(-4/3) -12X1 - 8X2 = -2088Rør: 12X1 + 16X2 = 2880 12X1 + 16X2 = 2880
8X2 = 792
X2 = 792/8 = 99. 9X1 + 699 = 1566 9X1 = 1566 – 594 = 972 X1 = 972/9 = 108Behov pumper: 1 99 + 1108 = 207 b1 = 207 – 200 = +7
Reduksjon: Arbeid: 9X1 + 6X2 = 1566
X2 = 0
9X1 + 60 = 1566 X1 = 1566/9 = 174
Behov pumper: 1 174 + 10 = 174 b1 = 174 – 200 = -26 -26 ≤ b1 ≤+7
BØK350 OPERASJONSANALYSE 25Rasmus Rasmussen
Tillatt endring i restriksjonene
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Kan endre restriksjonene inntil vi får et nytt sett av bindende restriksjoner. Slik vil skyggeprisene forbli uendret.
Arbeid kan økes til 1800 eller reduseres til 1440 uten at andre restriksjoner enn arbeid og pumper er bindende.
Økning arbeid: 9X1 + 6X2 = 1800
Reduksjon arbeid: 9X1 + 6X2 = 1440
En større reduksjon vil gjøre at rør blir en bindende restriksjon istedenfor pumper.
En større økning vil gjøre at arbeid ikke lenger er bindende, men pumper og ikke-negativitet.
BØK350 OPERASJONSANALYSE 26Rasmus Rasmussen
Hvor mye kan tilgang arbeid (b2) endres, uten at andre restriksjoner blir bindende?
Reduksjon: Helt til bare pumper og rør er bindende.Økning: Helt til bare pumper og x2 ≥ 0 er bindende.
Sensitivitetsanalyse arbeid: b2
Reduksjon: Pumper: 1X1 + 1X2 = 200 |(-12) -12X1 - 12X2 = -2400Rør: 12X1 + 16X2 = 2880 12X1 + 16X2 = 2880
4X2 = 480
X2 = 480/4 = 120. 1X1 + 1120 = 200 1X1 = 200 – 120 = 80 X1 = 80/1 = 80Behov arbeid: 980 + 6120 = 1440 b2 = 1440 – 1566 = -126
Økning: Pumper: 1X1 + 1X2 = 200
X2 = 0
1X1 + 10 = 200 X1 = 200/1 = 200
Behov arbeid: 9 200 + 60 = 1800 b2 = 1800 – 1566 = +234 -126 ≤ b2 ≤+234
BØK350 OPERASJONSANALYSE 27Rasmus Rasmussen
Tillatt endring i restriksjonene
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Kan endre restriksjonene inntil vi får et nytt sett av bindende restriksjoner. Slik vil skyggeprisene forbli uendret.
Rør kan reduseres til 2712 eller økes uendelig uten at andre restriksjoner enn arbeid og pumper er bindende.
Reduksjon rør: 12X1 + 16X2 = 2712
Økning rør:12X1 + 16X2 = ?
Kan øke tilgang på rør uendelig uten at andre restriksjoner blir bindende.
En større reduksjon vil gjøre at pumper ikke lenger er bindende, men arbeid og rør.
BØK350 OPERASJONSANALYSE 28Rasmus Rasmussen
Hvor mye kan tilgang rør (b3) endres, uten at andre restriksjoner blir bindende?
Reduksjon: Helt til pumper og arbeid er bindende.Økning: Ubegrenset, restriksjonen er ikke bindende i utgangspunktet.
Sensitivitetsanalyse rør: b3
Reduksjon: Pumper: 1X1 + 1X2 = 200 X1 = 200 - X2
Arbeid: 9X1 + 6X2 = 1566
9(200 -X2) + 6X2 = 1566 -3X2 = 1566 - 1800 X2 = -234/(-3) = 78X1 = 200 - X2 X1 = 200 – 78 = 122Behov rør: 12122 + 1678 = 2712 b3 = 2712 – 2880 = -168Økning: Ubegrenset b3 = +
-168 ≤ b3 ≤ +
BØK350 OPERASJONSANALYSE 29Rasmus Rasmussen
Endringer i Contstraint R.H. Side
Så lenge disse endres
innenfor disse
grensene,
forblir skyggeprisene
konstante.
Men optimale verdier på målfunksjonen og beslutningsvariablene endres !
BØK350 OPERASJONSANALYSE 30Rasmus Rasmussen
Skyggepriser
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Hvor mye målfunksjonen endres ved å øke kapasiteten for en restriksjon med en enhet.
Når tilgang på arbeid økes med 1 enhet, vil ny tilpassing skje langs restriksjonen for bruk av pumper.
Økning arbeid: 9X1 + 6X2 = 1800
Samme skyggepriser (med motsatt fortegn) gjelder ved reduksjoner. Unntatt degenererte løsninger.
BØK350 OPERASJONSANALYSE 31Rasmus Rasmussen
Hvor mye endres målfunksjonen når tilgang på arbeid økes med en enhet?
Når vi endrer kapasiteten for arbeid, vil ny tilpasning skje langs kapasitetsgrensen til pumper.
Skyggepris arbeid
Pumper: 1X1 + 1X2 = 0 Uendret kapasitet Arbeid: 9X1 + 6X2 = 1 1 ekstra enhet
Þ X1 = -X2 & 9X1 + 6X2 = 1 9(-X2) + 6X2 = 1 -3X2 = 1 X2 = 1/(-3) = -1/3X1 = -X2 =-(-1/3) = 1/3. En ekstra arbeidstime vil gi: X1 =1/3 og X2 = -1/3.
Endring i målfunksjonen: 350(1/3) + 300(-1/3) = 16,67
Skyggeprisen for en ekstra time arbeid er 16,67 og viser verdien (økt dekningsbidrag) pr. arbeidstime.
BØK350 OPERASJONSANALYSE 32Rasmus Rasmussen
Hvor mye endres målfunksjonen når tilgang på arbeid økes maksimalt?
Maksimal tillatt økning arbeid er 234 timer (uten andre bindende restriksjoner).Da vil ny optimal produksjon være 200 stk. X1 og 0 stk. X2.
Ny verdi på målfunksjonen blir: 350200 + 3000 = 70.000,-Opprinnelig optimal verdi på målfunksjonen: 66.100,-Økt verdi av økt tilgang arbeidstid: 3.900,-Økt verdi pr. arbeidstime: 3.900,-/234 timer = 16,67 pr. time.Hver ny arbeidstime er verd 16,67, som er skyggeprisen på restriksjonen for arbeidstid.
Skyggepris arbeid
BØK350 OPERASJONSANALYSE 33Rasmus Rasmussen
Skyggepriser
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Hvor mye målfunksjonen endres ved å øke kapasiteten for en restriksjon med en enhet.
Når tilgang på pumper økes med 1 enhet, vil ny tilpassing skje langs restriksjonen for bruk av arbeid.
Økning pumper: 1X1 + 1X2 = 207
Samme skyggepriser (med motsatt fortegn) gjelder ved reduksjoner. Unntatt degenererte løsninger.
108
99
BØK350 OPERASJONSANALYSE 34Rasmus Rasmussen
Hvor mye endres målfunksjonen når tilgang på pumper økes med en enhet?
Når vi endrer kapasiteten for pumper, vil ny tilpasning skje langs kapasitetsgrensen til arbeid.
Skyggepris pumper
Pumper: 1X1 + 1X2 = 1 1 ekstra enhetArbeid: 9X1 + 6X2 = 0 Uendret kapasitet
Þ X1 = 1 – X2 & 9X1 + 6X2 = 0 9(1-X2) + 6X2 = 0 -3X2 = -9 X2 = -9/(-3) = 3X1 = 1-X2 =1-3 = -2. En ekstra pumpe vil gi: X1 =-2 og X2 = +3.
Endring i målfunksjonen: 350(-2) + 300(+3) = 200
Skyggeprisen for en ekstra pumpe er 200,- og viser verdien (økt dekningsbidrag) pr. pumpe.
BØK350 OPERASJONSANALYSE 35Rasmus Rasmussen
Hvor mye endres målfunksjonen når tilgang på pumper økes maksimalt?
Maksimal tillatt økning pumper er 7 stk. (uten andre bindende restriksjoner).Da vil ny optimal produksjon være 108 stk. X1 og 99 stk. X2.
Ny verdi på målfunksjonen blir: 350108 + 30099 = 67.500,-Opprinnelig optimal verdi på målfunksjonen: 66.100,-Økt verdi av økt tilgang pumper: 1.400,-Økt verdi pr. pumpe: 1.400,-/7 stk. = 200,- pr. stk.Hver ny pumpe er verd 200,-, som er skyggeprisen på restriksjonen for pumper.
Skyggepris pumper
BØK350 OPERASJONSANALYSE 36Rasmus Rasmussen
Skyggepriser
Disse angir endringen i
målfunksjonen,ved én enhets økning i denne
verdien,
hvis endringen er innenfor
disse verdiene.
BØK350 OPERASJONSANALYSE 37Rasmus Rasmussen
Skyggeprisen til en restriksjon indikerer hvor mye målfunksjonen endres som følge av en enhets økning i restriksjonens RHS verdi, hvis alle andre koeffisienter forblir konstante.
Skyggeprisene er kun gyldige ved endringer av restriksjonens RHS verdi innenfor verdiene i kolonnene “Allowable Increase” og “Allowable Decrease”.
Skyggepriser for ikke-bindende restriksjoner er alltid null.
Skyggepriser
BØK350 OPERASJONSANALYSE 38Rasmus Rasmussen
Skyggeprisene viser kun endringen i mål-funksjonen ved endringer i restriksjonsgrensene.
Endringer av grensen for en bindende restriksjon endrer også mulighetsområdet og de optimale verdiene på beslutningsvariablene.
For å finne de nye optimale verdiene på beslutningsvariablene etter endring av en bindende restriksjonsgrense, må en løse problemet på nytt.
Endringer i restriksjonens RHS verdi
BØK350 OPERASJONSANALYSE 39Rasmus Rasmussen
Økt arbeidskapasitet
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
Opprinnelig mulighetsområde180
240
Bruk av rør: 12X1 + 16X2 = 2880
Flere arbeidstimer: 9X1 + 6X2 = 1728
Utvidet mulighetsområde
Ny optimal løsning
BØK350 OPERASJONSANALYSE 40Rasmus Rasmussen
Anta at en ny varmtvannsbereder (Typhoon-Lagoon) vurderes. Den har et dekningsbidrag på $320 pr. stk. og krever:
1 pumpe (skyggepris = $200)8 timer arbeid (skyggepris = $16,67)13 dm rør (skyggepris = $0)
Q: Er det lønnsomt å produsere noen ?A: $320 - $200*1 - $16,67*8 - $0*13 = -$13,33 = Nei!
Merk at vi nå har beregnet Reduced Cost.
Praktisk bruk av skyggepriser
BØK350 OPERASJONSANALYSE 41Rasmus Rasmussen
Nytt produkt
BØK350 OPERASJONSANALYSE 42Rasmus Rasmussen
Reduced Cost
Reduced Cost er lik profitten pr. enhet (verdien i målfunksjonen) minus verdien av ressursene som forbrukes (priset til skyggeprisene)
BØK350 OPERASJONSANALYSE 43Rasmus Rasmussen
Skyggeprisen for en ekstra time arbeid er lik $16,67. Den er gyldig for økninger i arbeidstiden på opp til 234 nye timer.
Hvis arbeid er en variabel kostnad, så er lønnskostnaden inkludert i db/stk., og skyggeprisen angir ekstraverdien av arbeid utover ordinær lønnskostnad. Vi er da villig til å betale en timepris som er $16,67 mer enn ordinær timepris.
Hvis arbeid er en fast kostnad som ikke er inkludert i målfunksjonen, så er vi kun villig til å betale $16,67 pr. ekstra time.
Praktisk bruk av skyggepriser
BØK350 OPERASJONSANALYSE 44Rasmus Rasmussen
Reduced Cost til en beslutningsvariabel angir hvor mye koeffisienten i målfunksjonen må endres for at variabelen skal komme med i optimal løsning.
For variabler som inngår i den optimale løsningen er følgelig Reduced Cost = 0.
Reduced Cost for hvert produkt er lik profitten pr. enhet minus verdien av ressursene som forbrukes (priset til skyggeprisene).
Reduced Cost ved standard LP formulering
BØK350 OPERASJONSANALYSE 45Rasmus Rasmussen
Reduced Cost i Solver
Type av problemOptimal verdi på beslutningsvariablene
Optimal verdi på Reduced Cost
Maksimeringlik enkel nedre grense ≤ 0mellom øvre og nedre grenser = 0lik enkel øvre grense ≥ 0 (skyggepris)
Minimeringlik enkel nedre grense ≥ 0 (skyggepris)mellom øvre og nedre grenser = 0lik enkel øvre grense ≤ 0
BØK350 OPERASJONSANALYSE 46Rasmus Rasmussen
For variabler som ikke inngår i den optimale løsningen angir Reduced Cost hvor mye koeffisienten i målfunksjonen må endres for at variabelen skal komme med i optimal løsning. (samme som ved standard LP).
For variabler som inngår i optimal løsning, og med verdi lik sin direkte nedre elle øvre grense, angir Reduced Cost skyggeprisen for denne bindende restriksjonen. (Variabler med Bounds.)
Øvrige variabler som inngår i optimal løsning har Reduced Cost lik 0.
Reduced Cost i Solver
BØK350 OPERASJONSANALYSE 47Rasmus Rasmussen
Totalverdien av ressursene vurdert til skyggeprisene er lik totalverdien av produktene som produseres (dvs. optimal verdi av målfunksjonen).
Ressurser som ikke brukes fullt ut har en skyggepris (marginalverdi) lik null.
Et produkts Reduced Cost er lik differansen mellom produktets fortjeneste og alternativkostnaden for de ressurser det forbruker.
Produkter med en fortjeneste som er mindre enn alternativ-kostnaden til de ressurser det forbruker vil ikke inngå i den optimale løsningen. (Reduced Cost er negativ.)
Viktige poenger
BØK350 OPERASJONSANALYSE 48Rasmus Rasmussen
Verdi ressurser = Verdi produksjonRessurs Mengde Verdi Total verdi
Pumper 200 200,00 40.000,-
Arbeid 1566 16,67 26.100,-
Rør 2880 0,00 0,-
Total verdi ressurser 66.100,-
Produkt Mengde Verdi Total verdi
Aqua Spa 122 350,00 42.700,-
Hydro Lux 78 300,00 23.400,-
Total verdi produksjon 66.100,-
Totalverdien av ressursene vurdert til skyggeprisene er lik totalverdien av produktene som produseres (dvs. optimal verdi av målfunksjonen).
BØK350 OPERASJONSANALYSE 49Rasmus Rasmussen
Q: Anta at en Typhoon-Lagoon kun trenger 7 arbeidstimer isteden for 8. Er det nå lønnsomt å produsere noen?A: $320 - $200*1 - $16,67*7 - $0*13 = $3,31 = Ja!
Q: Hva er den største arbeidstiden Typhoon-Lagoons kan bruke og likevel være lønnsom?A: Da må $320 - $200*1 - $16,67*L3 - $0*13 >=0
Det holder så lenge L3 <= $120/$16,67 pr. time
= 7,20 timer.
Vi har nå analysert aij, dvs. restriksjonskoeffisienten.
Endringer i restriksjonskoeffisienter
BØK350 OPERASJONSANALYSE 50Rasmus Rasmussen
100% Regelen kan brukes til å avgjøre om optimal løsning endres når mer enn én koeffisient i målfunksjonen endres.
Vi kan ha to situasjoner:Tilfelle 1: Alle variablene med endret koeffisient har Reduced Cost forskjellig fra null.(Ingen av variablene inngår i optimal løsning.)Tilfelle 2: Minst en variabel med endret koeffisient har en Reduced Cost lik null.(Minst en av variablene inngår i optimal løsning.)
I Tilfelle 1 forblir optimal løsning uendret så lenge alle endringene ligger innenfor sine Allowable Increase eller Allowable Decrease.
Simultane endringer i målfunksjonen
BØK350 OPERASJONSANALYSE 51Rasmus Rasmussen
I Tilfelle 2, beregn for hver variabel:
Simultane endringer i målfunksjonen
,hvis 0
r
,hvis < 0
c jc jI j
j c jc jD j
Beregn økningen eller reduksjonen i forhold til tillatt økning eller reduksjon.
Hvis summen av alle %-vise endringer er ≤ 100%, vil optimal løsning forbli uendret.
Beregn økningen eller reduksjonen i forhold til tillatt økning eller reduksjon.
Hvis summen av alle %-vise endringer er ≤ 100%, vil optimal løsning forbli uendret.
Hvis mer enn en koeffisient i målfunksjonen endres, vil optimal løsning forbli uendret sålenge alle rj summers til £ 1. (Merk at hvis alle rj summeres til > 1, kan løsningen
også forbli uendret, men det er ikke garantert.)
BØK350 OPERASJONSANALYSE 52Rasmus Rasmussen
100% regelen kan også brukes til å avgjøre om skyggeprisene og Reduced Cost endres når mer enn én høyreside av restriksjonene endres:
Vi kan ha to situasjoner:Tilfelle 1: Ingen restriksjoner med endret høyreside er bindende.Tilfelle 2: Minst en restriksjon med endret høyreside er bindende.
I Tilfelle 1 forblir optimal verdien på målfunksjon, beslutningsvariabler og skyggepriser uforandret, sålenge hver høyreside forblir innenfor tillatte endringer.
I Tilfelle 2:Beregn %vis endring for hver restriksjon i forhold til tillatt reduksjon eller økning.Hvis sum %vis endring ≤ 100%, så forblir skyggeprisene og Reduced Cost uendret. (Men optimale verdier på beslutningsvariablene vil endres.)
Simultane endringer i restriksjonsgrensene.
BØK350 OPERASJONSANALYSE 53Rasmus Rasmussen
Løsningen til et LP problem er degenerert hvis Allowable Increase eller Decrease er lik null (0) for noen restriksjoner (tabellen ”Constraints”).
Når en løsning er degenerert:1. Da kan vi ikke finne ut om det eksisterer alternative
optimale løsninger på samme måte som vi beskrev tidligere.
2. Reduced Costs for beslutningsvariablene vil ikke lenger være unike. Koeffisientene i målfunksjonen må nå endres minst så mye som (sannsynligvis mye mer enn) Reduced Cost for at optimal løsning skal endres.
Degenererte løsninger; Vær obs!
BØK350 OPERASJONSANALYSE 54Rasmus Rasmussen
Når en løsning er degenerert (forts.)
3) Kolonnene Allowable Increase og Allowable Decrease for koeffisientene i målfunksjonen vil som regel angi for små verdier.
4) Skyggeprisene er ikke lenger unike: Ett sett skyggepriser gjelder for økninger i
restriksjonsgrensene. Et annen sett av skyggepriser gjelder for
reduksjoner av restriksjonsgrensene.
Degenererte løsninger
BØK350 OPERASJONSANALYSE 55Rasmus Rasmussen
Degenerert løsning
Hvis noen av disse er lik 0
så er løsningen degenerert.
Sensitivitetsanalysen er da villedende !
BØK350 OPERASJONSANALYSE 56Rasmus Rasmussen
Degenerert problem grafisk
X1
X2
207
207
Bruk av pumper: 1·X1 + 1·X2 = 207
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Degenerert løsning fordi mer enn to restriksjoner bestemmer optimalpunktet.
Nivåkurve:DB =350X1 + 300X2
BØK350 OPERASJONSANALYSE 57Rasmus Rasmussen
Når et LP-problem er degenerert kan optimal løsning bestemmes på flere måter: det er flere bindende restriksjoner enn det er ukjente variabler, vi har et overbestemt ligningssystem.
Hvilke bindende restriksjoner som utelates for å bestemme optimal løsning påvirker hvilke skyggepriser som blir beregnet.
Bindende restriksjoner som utelates får en skyggepris på 0, men er likefullt bindende.
Årsak til vansker ved degenererte problem
BØK350 OPERASJONSANALYSE 58Rasmus Rasmussen
Degenerert problem i regneark
Det er umulig å oppdage fra løsningen at problemet er
degenerert.
BØK350 OPERASJONSANALYSE 59Rasmus Rasmussen
Her ser vi at det er degenerert
Når noen av disse er lik 0, så er problemet
degenerert !!
BØK350 OPERASJONSANALYSE 60Rasmus Rasmussen
Sensitivitetsanalysen er villedende !
Og disse verdiene er
ofte feil.
Disse grensene er
ofte for små.
BØK350 OPERASJONSANALYSE 61Rasmus Rasmussen
Mangelfull sensitivitetsanalyse
Ved degenererte løsninger finnes det to sett av skyggepriser for restriksjonene: • ett for reduksjoner i RHS• ett for økninger i RHSVi har fått oppgitt en blanding.
Skyggeprisen gjelder:Reduksjon Økning
BØK350 OPERASJONSANALYSE 62Rasmus Rasmussen
Multiple optimale løsninger grafisk
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Multiple optimale løsninger når nivåkurven til målfunksjonen blir parallell med en bindende restriksjon
Nivåkurve:DB =350X1 + 350X2
BØK350 OPERASJONSANALYSE 63Rasmus Rasmussen
Multiple løsninger i regneark
Vi kan se at problemet har alternative optimale løsninger :Koeffisientene i målfunksjonen (Dekningsbidrag) er 350 ganger koeffisientene i restriksjonen for pumper; dvs. den er parallell med en restriksjon som er bindende.
Bindende restriksjoner
BØK350 OPERASJONSANALYSE 64Rasmus Rasmussen
Sensitivitetsanalysen er mangelfull
Alternative løsninger hvis noen
av disse er lik 0.
Da finnes det flere alternative
løsninger for disse:
Og disse grensene er ofte for små.
BØK350 OPERASJONSANALYSE 65Rasmus Rasmussen
Løs problemet på vanlig måte.Hvis Allowable Increase/Decrease=0 for noen koeffisienter i målfunksjonen:
Kopier regnearket til et nytt ark, og reformuler Solver-oppsettet:
Endre målfunksjonen: Maksimer eller minimer verdien på en av beslutningsvariablene.Ny restriksjon: Verdi gammel målfunksjon lik optimal verdi opprinnelig problem.
Løs den nye modellen.
Finne alternative løsninger
BØK350 OPERASJONSANALYSE 66Rasmus Rasmussen
Finne alternativ optimal løsning
Maksimer verdien på en «liten» variabel
Legg til en restriksjon slik at målfunksjonen ikke blir dårligere enn før.
BØK350 OPERASJONSANALYSE 67Rasmus Rasmussen
Bounds: restriksjoner direkte på beslutningsvariablene
Bounds: Restriksjoner direkte på beslutningsvariablene
(Må produsere minst så mange som bestilt)
BØK350 OPERASJONSANALYSE 68Rasmus Rasmussen
Sensitivitetsanalyse av Bounds mangler
Restriksjoner direkte på beslutningsvariablene
(Decision variable cells) er utelatt!
Skyggeprisen angitt under Reduced
Cost.
BØK350 OPERASJONSANALYSE 69Rasmus Rasmussen
Alternativ formulering I:
Lag en ny dummy-variabel:Antall solgt (= Antall produsert)
Flytt leveringsrestriksjonen til den nye dummy-variabelen.
BØK350 OPERASJONSANALYSE 70Rasmus Rasmussen
Full sensitivitetsanalyse
Sensitivitetsanalyse også av restriksjonene
på leveringsbetingelsene
BØK350 OPERASJONSANALYSE 71Rasmus Rasmussen
Alternativ formulering II:
Standard LP-modell:En linje for hver restriksjon
BØK350 OPERASJONSANALYSE 72Rasmus Rasmussen
Full sensitivitetsanalyse
Sensitivitetsanalyse på alle restriksjonene
BØK350 OPERASJONSANALYSE 73Rasmus Rasmussen
Vi kan benytte RSP’s mulighet til å kjøre multiple optimiseringer for ulike parameterverdier, for å utføre ad hoc sensitivitetsanalyse, slik som:
Spider Tables & Plots Sammendrag av optimal verdi for én output celle ved individuelle endringer i flere input celler.
Solver TablesSammendrag av optimal verdi for flere output celler ved endringer i én input celle.
Ad Hoc sensitivitetsanalyse
BØK350 OPERASJONSANALYSE 74Rasmus Rasmussen
For å variere hver av p forskjellige parametere med v ulike verdier krever totalt p*v optimeringer (Fig 4-12)
PsiCurrentOpt( ) - returnerer gjeldende optimering # (O#) Celle B27
INT( (O# -1)/v )+1 - returnerer gjeldende parameter # (P#) Celle B28
O# - v *(P# -1) - returnerer gjeldende iterasjon # Celle B29
Spider Tables & Plots
BØK350 OPERASJONSANALYSE 75Rasmus Rasmussen
Spider Table
Vilkårlige endringer
BØK350 OPERASJONSANALYSE 76Rasmus Rasmussen
Finne optimale verdier for p forskjellige verdier av en parameterstørrelse. (Pumper tilgjengelig)
PsiOptParam( ) brukes til å angi ulike verdier for en input celle ved ulike optimeringer.
PsiOptValue( ) returnerer verdien for en output-celle ved de ulike optimeringene.
Solver Tables
BØK350 OPERASJONSANALYSE 77Rasmus Rasmussen
Solver Table
Vilkårlige endringer
BØK350 OPERASJONSANALYSE 78Rasmus Rasmussen
Sensitivitetsanalyse restriksjonene
X1
X2
200
200
Bruk av pumper: 1·X1 + 1·X2 = 200
261
174
Bruk av arbeid: 9X1 + 6X2 = 1566
180
240
Bruk av rør: 12X1 + 16X2 = 2880
122
78
Sensitivitetsanalysen viser hvor store endringene i høyresidene på restriksjonene kan være før vi får andre bindende restriksjoner.
Ad-hoc sensitivitetsanalysen endrer verdiene i vilkårlige gitte trinn. Disse vil bare tilfeldigvis sammenfalle med tillatte økninger og reduksjoner.
BØK350 OPERASJONSANALYSE 79Rasmus Rasmussen
Tradisjonell sensitivitetsanalyse antar at alle koeffisientene i en modell er kjent med sikkerhet.
Optimale løsninger på randen av mulighetsområdet gjør løsningene sårbare for endringer.
En “robust” løsning av et LP problem finnes inne i mulighetsområdet, og forblir mulig og rimelig god for moderate endringer i koeffisientene.
Robust optimering
BØK350 OPERASJONSANALYSE 80Rasmus Rasmussen
For LP problemer har RSP støtte for usikkerhet i restriksjonskoeffisienter via “uncertainty set (USet) chance constraints”
For eksempel, anta…Arbeidsbehovet for hver varmtvannstank varierer likt fra +/- 15 minutter (0,25 timer) fra de opprinnelige estimateneMengden av rør pr varmtvannstank varierer likt fra +/- 6 inches (0,5 feet) fra opprinnelige estimater.
Chance Constraints
BØK350 OPERASJONSANALYSE 81Rasmus Rasmussen
Robust optimering
BØK350 OPERASJONSANALYSE 82Rasmus Rasmussen
MAX (eller MIN): c1X1 + c2X2 + … + cnXn
Slik at: a11X1 + a12X2 + … + a1nXn <= b1
:
ak1X1 + ak2X2 + … + aknXn >= bk
:
am1X1 + am2X2 + … + amnXn = bm
LP på generell form
BØK350 OPERASJONSANALYSE 83Rasmus Rasmussen
Ved simplex metoden må alle ulikheter konverteres til likheter ved å legge til slakk-variabler til <= restriksjoner, og trekke fra overskuddsvariabler fra >= restriksjoner.
Eksempelvis: ak1X1 + ak2X2 + … + aknXn <= bk
konverteres til: ak1X1 + ak2X2 + … + aknXn + Sk = bk
Og: ak1X1 + ak2X2 + … + aknXn >= bk
konverteres til: ak1X1 + ak2X2 + … + aknXn – Sk = bk
Simplex metoden
BØK350 OPERASJONSANALYSE 84Rasmus Rasmussen
For vårt eksempel...Max 350X1 + 300X2 Dekningsbidrag
S.T.: 1X1 + 1X2 +1S1 = 200 Pumper
9X1 + 6X2 +1S2 = 1566 Arbeid
12X1 16X2 +1S3 = 2880 Rør
X1 >= 0
X2 >= 0
S1 >= 0
S2 >= 0
S3 >= 0
Hvis det er n variabler i en modell med m restriksjoner, (der n>=m) kan vi velge vilkårlig m variabler og så løse ligningene (ved å sette de gjenværende n-m variablene lik 0.)
BØK350 OPERASJONSANALYSE 85Rasmus Rasmussen
Ordne ligningene på tabell-form. (Simplex-tabell)
350X1 + 300X2 + 0S1 + 0S2 + 0S3 Max
1X1 + 1X2 + 1S1 + 0S2 + 0S3 = 200
9X1 + 6X2 + 0S1 + 1S2 + 0S3 = 1566
12X1 +16X2 + 0S1 + 0S2 + 1S3 = 2880
• Velg som basisvariabler de som har koeffisienten 1 i en kolonne og øvrige koeffisienter i kolonnen lik 0.
• Sett alle andre variabler lik 0. Ligningsystemet er løst !• Velg som ny basisvariabel den som har størst koeffisient i målfunksjonen.• Utgående variabel bestemmes slik at ny løsning forblir mulig, samtidig som ny
variabel får størst mulig verdi.
Ligningene for Simplex-metoden
BØK350 OPERASJONSANALYSE 86Rasmus Rasmussen
Basis Ikkebasis VerdiVariabler Variabler Løsning Målfunksjon
1 S1, S2, S3 X1, X2 X1=0, X2=0, S1=200, S2=1566, S3=28800
2 X1, S1, S3 X2, S2 X1=174, X2=0, S1=26, S2=0, S3=792 60,900
3 X1, X2, S3 S1, S2 X1=122, X2=78, S1=0, S2=0, S3=168 66,100
4 X1, X2, S2 S1, S3 X1=80, X2=120, S1=0, S2=126, S3=0 64,000
5 X2, S1, S2 X1, S3 X1=0, X2=180, S1=20, S2=486, S3=0 54,000
6* X1, X2, S1 S2, S3 X1=108, X2=99, S1=-7, S2=0, S3=0 67,500
7* X1, S1, S2 X2, S3 X1=240, X2=0, S1=-40, S2=-594, S3=0 84,000
8* X1, S2, S3 X2, S1 X1=200, X2=0, S1=0, S2=-234, S3=480 70,000
9* X2, S2, S3 X1, S1 X1=0, X2=200, S1=0, S2=366, S3=-320 60,000
10* X2, S1, S3 X1, S2 X1=0, X2=261, S1=-61, S2=0, S3=-1296 78,300
* angir umulig løsning
Forskjellige basisløsninger
BØK350 OPERASJONSANALYSE 87Rasmus Rasmussen
Mulige basisløsninger & ekstremalpunkter
X1
X2
Mulige basisløsninger
1 X1=0, X2=0, S1=200, S2=1566, S3=2880
2 X1=174, X2=0, S1=26, S2=0, S3=792
3 X1=122, X2=78, S1=0, S2=0, S3=168
4 X1=80, X2=120, S1=0, S2=126, S3=0
5 X1=0, X2=180, S1=20, S2=486, S3=0
1 2
3
4
5
BØK350 OPERASJONSANALYSE 88Rasmus Rasmussen
Simplex metoden starter med å finne en mulig basisløsning til LP problemet, og beveger seg så til et tilgrensende ekstremalpunkt, såfremt dette forbedrer målfunksjonen. Når ingen tilgrensende hjørneløsninger har en bedre verdi på målfunksjonen er den eksisterende basisløsningen optimal, og simplex-metoden stanser.Bevegelsen fra en hjørneløsning til en tilgrensende utføres ved å bytte en av basisvariablene med en ikke-basisvariabel, for å skape en ny basisløsning som tilsvarer den tilgrensende hjørneløsningen.
Sammendrag Simplex-metoden
BØK350 OPERASJONSANALYSE 89Rasmus Rasmussen
Slutt på kapittel 4