Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Managerial Decision Modeling Cliff Ragsdale 6. edition Rasmus RasmussenBØK350 OPERASJONSANALYSE1 Chapter 3 Modeling and Solving LP Problems in a Spreadsheet.

Liknende presentasjoner


Presentasjon om: "Managerial Decision Modeling Cliff Ragsdale 6. edition Rasmus RasmussenBØK350 OPERASJONSANALYSE1 Chapter 3 Modeling and Solving LP Problems in a Spreadsheet."— Utskrift av presentasjonen:

1 Managerial Decision Modeling Cliff Ragsdale 6. edition Rasmus RasmussenBØK350 OPERASJONSANALYSE1 Chapter 3 Modeling and Solving LP Problems in a Spreadsheet

2 Rasmus RasmussenBØK350 OPERASJONSANALYSE Å løse LP problemer grafisk er bare mulig når det er to beslutningsvariabler. Få virkelige LP problemer har bare to beslutningsvariabler. Heldigvis kan vi bruke regneark for å løse LP problemer. Innledning 2

3 Rasmus RasmussenBØK350 OPERASJONSANALYSE3 Firmaet som lager ”solvere” til Excel, Lotus 1-2-3, og Quattro Pro er Frontline Systems, Inc. Besøk deres web-side på internett: http://www.solver.com Andre pakker for å løse MP problemer : AMPLLINDO CPLEXMPSX GAMS Solvere i regneark

4 Rasmus RasmussenBØK350 OPERASJONSANALYSE4 Det følger med en 140-dagers prøvelisens av Risk Solver Platform (RSP) til denne læreboken. RSP inneholder: en svært utvidet versjon av standard Solver som følger gratis med Excel. og mange andre verktøy og egenskaper som blir behandlet senere i boken. Du kan laste ned RSP fra: http://www.solver.com/student Risk Solver Platform

5 Rasmus RasmussenBØK350 OPERASJONSANALYSE5 dataene 1.Organiser dataene til modellen i regnearket. beslutningsvariablene 2.Reserver separate celler i regnearket til å representere beslutningsvariablene i modellen. målfunksjonen 3.Lag en celle i regnearket som tilsvarer målfunksjonen. restriksjon 4.Lag en celle for hver restriksjon som representerer venstresiden [left-hand side (LHS)] av restriksjonen. Implementere en LP modell i et regneark

6 Rasmus RasmussenBØK350 OPERASJONSANALYSE6 Max350X 1 +300X 2 Slik at1X 1 + 1X 2 ≤200Pumper 9X 1 + 6X 2 ≤1566Arbeid 12X 1 +16X 2 ≤2880Rør 1X 1 ≥0 1X 2 ≥0 Implementere Blue Ridge Hot Tubs

7 Rasmus RasmussenBØK350 OPERASJONSANALYSE7 LP i regneark Beslutningsvariablene X 1 og X 2 i celle C3 og D3 Målfunksjonen: C4×C3 + D4×D3 Restriksjon pumper: [LHS] C7×C3 + D7×D3 Restriksjon arbeid: [LHS] C8×C3 + D8×D3 Restriksjon rør: [LHS] C9×C3 + D9×D3

8 Rasmus RasmussenBØK350 OPERASJONSANALYSE8 Regionale innstillinger på PC Engelsk Engelsk regional innstilling på PC Punktum (.)Desimaltegn Komma (,)Listeseparator

9 Rasmus RasmussenBØK350 OPERASJONSANALYSE9 Objective cell Objective cell – cellen i regnearket som representerer målfunksjonen Variable cells Variable cells – cellene i regnearket som representerer beslutningsvariablene Constraint cells Constraint cells – cellene i regnearket som representerer LHS formlene i restriksjonene Hvordan Solver ser modellen

10 Rasmus RasmussenBØK350 OPERASJONSANALYSE10 Legge inn målfunksjon 1. Aktiver cellen som representerer målfunksjonen (E4) 2. Klikk på Objective 3. Klikk på Add (+)

11 Rasmus RasmussenBØK350 OPERASJONSANALYSE11 Legge til variabler 1. Aktiver cellene som representerer variablene (C3:D3) 2. Klikk på Variables 3. Klikk på Add (+)

12 Rasmus RasmussenBØK350 OPERASJONSANALYSE12 Legge til restriksjoner 2. Klikk på Constraints 3. Klikk på Add (+) 4. Klikk på cellene som representerer [RHS] (F7:F9) 1. Aktiver cellene som representerer restriksjonene [LHS] (E7:E9)

13 Rasmus RasmussenBØK350 OPERASJONSANALYSE13 Angi ikke-negativitetsbetingelsene 1. Klikk på Engine 2. Set Assume Non-Negative til True

14 Rasmus RasmussenBØK350 OPERASJONSANALYSE14 Løs problemet 1. Klikk på Model 2.Klikk på Run (grønn trekant)

15 Rasmus RasmussenBØK350 OPERASJONSANALYSE15 Optimal løsning

16 Rasmus RasmussenBØK350 OPERASJONSANALYSE16 Standard Solver er inkludert i Excel hos alle. Data Den finnes under Data – fanen, helt til høyre. Standard Solver kan du også bruke hjemme på de første eksemplene. Solver finner du flere steder i Excel

17 Rasmus RasmussenBØK350 OPERASJONSANALYSE17 Mangler du Solver i Excel? OptionsFile 1.Velg Options fra File –menyen i Excel. Go 2.Velg Add-Ins og Excel Add-ins, og trykk Go OK 3.Kryss av Solver Add-In og trykk OK

18 Rasmus RasmussenBØK350 OPERASJONSANALYSE18 Premium Solver finnes bare på maskiner hvor en oppgradert Solver er installert, f.eks. på rom A076. I Excel finnes den under Add-Ins fanen, hvis den er installert. Premium Solver

19 Rasmus RasmussenBØK350 OPERASJONSANALYSE19 Standard vs. Premium

20 Rasmus RasmussenBØK350 OPERASJONSANALYSE20 Risk Solver Platform har egen ”fane”. Den er mest fleksibel og har alle valgmulighetene på ett sted. Risk Solver Platform Klikk her for å vise ”Task Pane”

21 Rasmus RasmussenBØK350 OPERASJONSANALYSE21 Hjelp finnes over alt

22 Rasmus RasmussenBØK350 OPERASJONSANALYSE22 Kommunikasjon Kommunikasjon – Et regneark´s primære oppgave er å kommunisere informasjon til ledere. Pålitelighet Pålitelighet – Resultatet som regnearket genererer må være korrekt og konsistent. Reviderbar ”Reviderbar” – En leder bør være i stand til å spore trinnene som generer alle resultatene i modellen, slik at han forstår modellen og kan verifisere resultatene. Modifiserbar Modifiserbar – Et godt organisert regneark må være lett å endre eller utvide, for å kunne møte dynamiske brukerkrav. Mål ved design av regneark

23 Rasmus RasmussenBØK350 OPERASJONSANALYSE23 Organiser dataene, og bygg så modellen rundt dataene. Legg ikke numeriske konstanter inn i formlene. Ting som logisk hører sammen bør være fysisk samlet. Bruk formler som kan kopieres. Kolonne/rekke -summer bør være nær kolonnene/ rekkene som summeres. Øyet leser fra venstre til høyre, ovenfra og ned. (Gjelder ikke kinesere, japanere, arabere,...) Bruk farge, skygge, ramme og beskyttelse (protection) for å adskille parametere som kan endres fra de øvrige modell-elementene. Bruk tekstbokser og celle-noter for å dokumentere forskjellige elementer i modellen. Retningslinjer i design av regneark

24 Rasmus RasmussenBØK350 OPERASJONSANALYSE24 Electro-Poly er en ledende produsent av slip-rings. En ordre pålydende $750.000 er nettopp mottatt. Lage kontra kjøpe beslutninger Modell 1Modell 2Modell 3 Antall bestilt30002000900 Tid/stk for vikling21,53 Tid/stk for herding121 Kostnad ved egenproduksjon$50$83$130 Kostnad ved leieproduksjon$61$97$145 Selskapet har kapasitet på 10 000 timer i vikling og kapasitet på 5 000 timer i herding kommende periode.

25 Rasmus RasmussenBØK350 OPERASJONSANALYSE25 M 1 = Antall av modell 1 slip rings produsert selv M 2 = Antall av modell 2 slip rings produsert selv M 3 = Antall av modell 3 slip rings produsert selv B 1 = Antall av modell 1 slip rings kjøpt fra underleverandør B 2 = Antall av modell 2 slip rings kjøpt fra underleverandør B 3 = Antall av modell 3 slip rings kjøpt fra underleverandør Definer beslutningsvariablene

26 Rasmus RasmussenBØK350 OPERASJONSANALYSE26 Minimer totalkostnaden ved å fullføre bestillingen. MIN:50M 1 + 83M 2 + 130M 3 + 61B 1 + 97B 2 + 145B 3 Definer målfunksjonen

27 Rasmus RasmussenBØK350 OPERASJONSANALYSE27 Etterspørselsrestriksjoner M 1 + B 1 = 3000} modell 1 M 2 + B 2 = 2000} modell 2 M 3 + B 3 = 900} modell 3 Kapasitetsrestriksjoner 2M 1 + 1,5M 2 + 3M 3 <= 10000 } vikling 1M 1 + 2,0M 2 + 1M 3 <= 5000 } herding Ikke-negativitetsrestriksjoner M 1, M 2, M 3, B 1, B 2, B 3 >= 0 Definer restriksjonene

28 Rasmus RasmussenBØK350 OPERASJONSANALYSE28 Sammendrag av modellen Minimer:50 M 1 + 83 M 2 + 130M 3 + 61 B 1 + 97 B 2 + 145 B 3 Slik at:1 M 1 + 1 B 1 = 3000 1 M 2 + 1 B 2 = 2000 1 M 3 + 1 B 3 = 900 2 M 1 + 1,5 M 2 + 3 M 3  10000 1 M 1 + 2 M 2 + 1 M 3  5000

29 Rasmus RasmussenBØK350 OPERASJONSANALYSE29 LP modell med forkortet notasjon M1M1 M2M2 M3M3 B1B1 B2B2 B3B3 50831306197145Min 11= 3000 11= 2000 11= 900 21,53  10000 121  5000

30 Rasmus RasmussenBØK350 OPERASJONSANALYSE30 Implementere modellen i regneark

31 Rasmus RasmussenBØK350 OPERASJONSANALYSE31 Regneark på standard form En kolonne for hver variabel, en LHS (total)- og en RHS -kolonne. (Kolonne C – H for variabler, I for LHS/total og K for RHS) En linje for verdier til beslutningsvariablene. (Linje 3) En linje for målfunksjonen. (Linje 5) En linje for hver restriksjon. (Linje 7 – 11) Trenger bare én formel, som kopieres.

32 Rasmus RasmussenBØK350 OPERASJONSANALYSE32 En klient ønsker å investere $750.000 i følgende obligasjoner. Et investeringsproblem SelskapAvkastningÅr til forfallKategori Acme Chemical8,65%111 – Excellent DynaStar9,50%103 – Good Eagle Vision10,00%64 – Fair Micro Modeling8,75%101 – Excellent OptiPro9,25%73 – Good Sabre Systems9,00%132 – Very Good

33 Rasmus RasmussenBØK350 OPERASJONSANALYSE33 Ikke mer enn 25% kan investeres i ett enkelt selskap. Minst 50% av totalinvesteringen bør investeres i langsiktige obligasjoner (forfall om 10+ år). Ikke mer enn 35% kan samlet investeres i DynaStar, Eagle Vision, og OptiPro. (Minst kategori 2 – Very good). Investeringsrestriksjoner

34 Rasmus RasmussenBØK350 OPERASJONSANALYSE34 X 1 = beløp investert i Acme Chemical X 2 = beløp investert i DynaStar X 3 = beløp investert i Eagle Vision X 4 = beløp investert i MicroModeling X 5 = beløp investert i OptiPro X 6 = beløp investert i Sabre Systems Definere beslutningsvariablene

35 Rasmus RasmussenBØK350 OPERASJONSANALYSE35 Maksimer investeringens årlige totale avkastning : MAX:,0865X 1 +,095X 2 +,10X 3 +,0875X 4 +,0925X 5 +,09X 6 Definere målfunksjonen

36 Rasmus RasmussenBØK350 OPERASJONSANALYSE36 Totalt beløp investert: X 1 + X 2 + X 3 + X 4 + X 5 + X 6 = 750.000 Ikke mer enn 25% i noen obligasjoner: X i <= 187.500, for alle i 50% av investeringen i langsiktige obligasjoner: X 1 + X 2 + X 4 + X 6 >= 375.000 35% begrensing på samlet investering i DynaStar, Eagle Vision, og OptiPro: X 2 + X 3 + X 5 <= 262.500 Ikke-negativitetsbetingelsene: X i >= 0 for alle i Definer restriksjonene

37 Rasmus RasmussenBØK350 OPERASJONSANALYSE37 Totalt beløp investert: X 1 + X 2 + X 3 + X 4 + X 5 + X 6 = 750.000 Ikke mer enn 25% i noen obligasjoner: X i <= 0,25(X 1 + X 2 + X 3 + X 4 + X 5 + X 6 ), for alle i 50% av investeringen i langsiktige obligasjoner: X 1 + X 2 + X 4 + X 6 >= 0,5(X 1 + X 2 + X 3 + X 4 + X 5 + X 6 ) 35% begrensing på samlet investering i DynaStar, Eagle Vision, og OptiPro: X 2 + X 3 + X 5 <= 0,35(X 1 + X 2 + X 3 + X 4 + X 5 + X 6 ) Ikke-negativitetsbetingelsene: X i >= 0 for alle i Alternativ restriksjonsformulering Denne formuleringen vil være korrekt, selv om total investering ikke er 750.000.

38 Rasmus RasmussenBØK350 OPERASJONSANALYSE38 LP modell på kompakt form X1X1 X2X2 X3X3 X4X4 X5X5 X6X6 0,08650,0950,10,08750,09250,09Max 111111  750000 1  0,25(X 1 +X 2 +X 3 +X 4 +X 5 +X 6 ) 1 1 1 1 1 11 1 1  0,50(X 1 +X 2 +X 3 +X 4 +X 5 +X 6 ) 11 1  0,35(X 1 +X 2 +X 3 +X 4 +X 5 +X 6 )

39 Rasmus RasmussenBØK350 OPERASJONSANALYSE39 Implementere modellen i regneark Sum investering Sum avkastning Sum langsiktig Sum usikker

40 Rasmus RasmussenBØK350 OPERASJONSANALYSE40 LP-modellen på standard form En kolonne for hver variabel, en LHS (total)- og en RHS -kolonne. (Kolonne C – H for variabler, I for LHS/total og J for RHS) En linje for verdier til beslutningsvariablene. (Linje 3) En linje for målfunksjonen. (Linje 4) En linje for hver restriksjon. (Linje 5 – 12)

41 Rasmus RasmussenBØK350 OPERASJONSANALYSE41 Forenklet LP modell 1.Marker celle A1:J9, høyreklikk og velg Copy. 2.Åpne et nytt ark og aktiver celle A1. 3.Høyreklikk, og Velg Paste Special, kryss av for Transpose. 4.Sjekk hvordan den «nye» LP-formuleringen ser ut. Bounds er restriksjoner som bare gjelder én variabel. (Solver foretar klassifiseringen selv. Den er feil?!)

42 Rasmus RasmussenBØK350 OPERASJONSANALYSE42 Et transportproblem Mt. Dora 1 Eustis 2 Clermont 3 Ocala 4 Orlando 5 Leesburg 6 Avstand (i km) Kapasitet Produksjon 275.000 400.000 300.000 225.000 600.000 200.000 Plantasje Foredlings- fabrikk 21 50 40 35 30 22 55 25 20

43 Rasmus RasmussenBØK350 OPERASJONSANALYSE43 X ij = antall skjepper sendt fra node i til node j Konkret er de ni beslutningsvariablene : X 14 = antall skjepper sendt fra Mt. Dora (node 1) til Ocala (node 4) X 15 = antall skjepper sendt fra Mt. Dora (node 1) til Orlando (node 5) X 16 = antall skjepper sendt fra Mt. Dora (node 1) til Leesburg (node 6) X 24 = antall skjepper sendt fra Eustis (node 2) til Ocala (node 4) X 25 = antall skjepper sendt fra Eustis (node 2) til Orlando (node 5) X 26 = antall skjepper sendt fra Eustis (node 2) til Leesburg (node 6) X 34 = antall skjepper sendt fra Clermont (node 3) til Ocala (node 4) X 35 = antall skjepper sendt fra Clermont (node 3) til Orlando (node 5) X 36 = antall skjepper sendt fra Clermont (node 3) til Leesburg (node 6) Definere beslutningsvariablene

44 Rasmus RasmussenBØK350 OPERASJONSANALYSE44 Minimer antall skjeppe – kilometer : MIN:21X 14 + 50X 15 + 40X 16 + (fra Mt.Dora) 35X 24 + 30X 25 + 22X 26 + (fra Eustis) 55X 34 + 20X 35 + 25X 36 (fra Clermont) Definere målsettingsfunksjonen

45 Rasmus RasmussenBØK350 OPERASJONSANALYSE45 Kapasitetsrestriksjoner: X 14 + X 24 + X 34 <= 200.000} Ocala X 15 + X 25 + X 35 <= 600.000} Orlando X 16 + X 26 + X 36 <= 225.000} Leesburg Tilbudsrestriksjoner: X 14 + X 15 + X 16 = 275.000} Mt. Dora X 24 + X 25 + X 26 = 400.000} Eustis X 34 + X 35 + X 36 = 300.000} Clermont Ikke-negativitets betingelsene: X ij >= 0 for alle i og j Definere restriksjonene

46 Rasmus RasmussenBØK350 OPERASJONSANALYSE46 LP formulering på kompakt form MengdeX 14 X 15 X 16 X 24 X 25 X 26 X 34 X 35 X 36 Beslutn.var Kostnad215040353022552025Minimeres Restriksjoner: Grense Til 4111  200 000 Til 5111  600 000 Til 6 1 1 1  225 000 Fra 1111=275 000 Fra 2111=400 000 Fra 3 111=300 000

47 Rasmus RasmussenBØK350 OPERASJONSANALYSE47 Implementering i regneark 1.Skriv inn avstandstabellen. 2.Kopier avstandstabellen, og lim den inn under. 3.Døp om den nye tabellen til mengdetabell, og slett tallene. Bruk disse cellene som Variabler. 4.Bygg modellen rundt mengdetabellen.

48 Rasmus RasmussenBØK350 OPERASJONSANALYSE48 Implementert som standard LP modell Regnearket er en direkte «avskrift» av LP formuleringen: En kolonne for hver variabel, en LHS (total)- og en RHS -kolonne. (Kolonne C – K for variabler, L for LHS/total og M for RHS) En linje for verdier til beslutningsvariablene. (Linje 3) En linje for målfunksjonen. (Linje 5) En linje for hver restriksjon. (Linje 7 – 12)

49 Rasmus RasmussenBØK350 OPERASJONSANALYSE49 Agri-Pro har mottatt en ordre på 8.000 pund hønse- fór som skal blandes av følgende ingredienser: Et blandingsproblem NæringFór 1 Fór 2 Fór 3 Fór 4 Korn30%5%20%10% Hvete10%30%15%10% Mineraler20% 30% Kostnad pr pund$0,25$0,30$0,32$0,15 Ferdigproduktet må inneholde minst: 20% korn, 15% hvete, 15% mineraler.

50 Rasmus RasmussenBØK350 OPERASJONSANALYSE50 X 1 = pund av fór 1 som inngår i blandingen X 2 = pund av fór 2 som inngår i blandingen X 3 = pund av fór 3 som inngår i blandingen X 4 = pund av fór 4 som inngår i blandingen Definere beslutningsvariablene

51 Rasmus RasmussenBØK350 OPERASJONSANALYSE51 Minimer totalkostnaden ved å innfri ordren: MIN: 0,25X 1 + 0,30X 2 + 0,32X 3 + 0,15X 4 Definere målfunksjonen

52 Rasmus RasmussenBØK350 OPERASJONSANALYSE52 Produsere 8.000 pund hønsefór X 1 + X 2 + X 3 + X 4 = 8.000 Blandingen må bestå av minst 20% korn (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )/8000 >= 0,2 Blandingen må ha minst 15% hvete (0,1X 1 + 0,3X 2 + 0,15X 3 + 0,1X 4 )/8000 >= 0,15 Blandingen må minst ha 15% mineraler (0,2X 1 + 0,2X 2 + 0,2X 3 + 0,3X 4 )/8000 >= 0,15 Ikke-negativitets betingelsene X 1, X 2, X 3, X 4 >= 0 Definere restriksjonene

53 Rasmus RasmussenBØK350 OPERASJONSANALYSE53 Blandingen må bestå av minst 20% korn: Vi har nå to valg: relative tall Angi restriksjonen i % (relative tall) absolutte tall Angi restriksjonen i pund (absolutte tall) Uavhengig av relative eller absolutte størrelser, må 20% beregnes i forhold til noe. Det er to muligheter: ordrestørrelsen 20% av ordrestørrelsen (8.000 pund) levert mengde 20 % av levert mengde (X 1 + X 2 + X 3 + X 4 ) Restriksjoner – Flere alternativer

54 Rasmus RasmussenBØK350 OPERASJONSANALYSE54 A.Restriksjon i %, basert på ordrestørrelse: (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )/8.000  0,2 B.Restriksjon i %, basert på levert mengde: (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )/(X 1 + X 2 + X 3 + X 4 )  0,2 C.Restriksjon i pund, basert på ordrestørrelse: (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )  0,2 *8.000 D.Restriksjon i pund, basert på levert mengde: (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )  0,2 * (X 1 + X 2 + X 3 + X 4 ) 4 ulike restriksjonsformer

55 Rasmus RasmussenBØK350 OPERASJONSANALYSE55 Restriksjon i % basert på ordrestørrelse: (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )/8.000  0,2 • Denne formuleringen kan medføre skaleringsproblemer. Koeffisienten for X 2 : 0,05/8000 = 0,00000625 Vi ender opp med en LP-modell med noen veldig store og noen veldig små tall. Når forskjellene i koeffisientene blir store kan vi fort ende opp med avrundingsproblemer. Skaleringsproblemer kan vi korrigere ved for eksempel å endre enhet fra pund til tusen pund. (Vi deler på 8 istedenfor 8000.) • Formuleringer basert på ordrestørrelse forutsetter implisitt at restriksjonen for ordrestørrelse er oppfylt. Restriksjonene er derfor bare gyldig når levert mengde faktisk samsvarer med ordrestørrelsen. • Det er uheldig å foregripe en bestemt løsning når problemet formuleres. Restriksjonene bør formuleres generelt, og ikke være betinget av at andre restriksjoner er oppfylt. • Formuleringen vil også påvirke en eventuell sensitivitetsanalyse. Formulering A

56 Rasmus RasmussenBØK350 OPERASJONSANALYSE56 Restriksjon i % basert på levert mengde: (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )/(X 1 + X 2 + X 3 + X 4 )  0,2 • Denne formuleringen gjør problemet ikke-lineært. (Vi deler med en beslutningsvariabel.) • Ikke-lineære problemer er mye vanskeligere å løse enn lineære problemer. • Hvis mulig bør problemer formuleres lineært, da vil programvaren finne optimal løsning mye raskere. For ikke-lineære problemer er en ikke garantert å finne optimal løsning. • Formuleringen vil også påvirke en eventuell sensitivitetsanalyse. Formulering B

57 Rasmus RasmussenBØK350 OPERASJONSANALYSE57 Restriksjon i pund, basert på ordrestørrelse: (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )  0,2 *8.000 • Formuleringer basert på ordrestørrelse forutsetter altså implisitt at restriksjonen for ordrestørrelse er oppfylt. Restriksjonene er derfor bare gyldig når levert mengde faktisk samsvarer med ordrestørrelsen. • Det er uheldig å foregripe en bestemt løsning når problemet formuleres. Restriksjonene bør formuleres generelt, og ikke være betinget av at andre restriksjoner er oppfylt. • Formuleringen vil også påvirke en eventuell sensitivitetsanalyse. • En grafisk analyse eller What If analyse i regneark vil derfor ikke gi et korrekt bilde av forholdet. Formulering C

58 Rasmus RasmussenBØK350 OPERASJONSANALYSE58 Restriksjon i pund, basert på levert mengde: (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )  0,2 * (X 1 + X 2 + X 3 + X 4 ) • Denne formuleringen er lineær. • Den har ikke skaleringsproblemer. • Den er gyldig, uavhengig av om andre restriksjoner er oppfylt eller ei. (Ikke betinget av at vi faktisk leverer 8000 pund hønsefor.) • Sensitivitetsanalyse vil være korrekt, og grafiske analyser samt What If i regneark vil gi et korrekt bilde av forholdene. Samler vi alle variablene på venstre side: • 0,1X 1 - 0,15X 2 + 0 X 3 - 0,1X 4  0 Formulering D

59 Rasmus RasmussenBØK350 OPERASJONSANALYSE59 Legg merke til at koeffisienten for X 2 i ‘korn’ restriksjonen er 0,05/8000 = 0,00000625 (Formulering A) Når Solver løser vårt problem, foretas interne beregninger som gjør koeffisientene større eller mindre (multiplikasjoner og divisjoner). Lagringsproblemer gjør at datamaskinen avrunder det faktiske tallet (lagrer desimal isteden for brøk). Slike skaleringsproblemer forhindrer enkelte ganger Solver i å løse problemet nøyaktig. De fleste problemer kan formuleres slik at en minimerer skaleringsproblemer... OBS. Bruk tydelige benevninger, slik at en lett kan tolke løsningen og sensitivitetsanalysen. Angående skalering

60 Rasmus RasmussenBØK350 OPERASJONSANALYSE60 X 1 = antall pund (i tusen) av fór 1 som inngår i blandingen X 2 = antall pund (i tusen) av fór 2 som inngår i blandingen X 3 = antall pund (i tusen) av fór 3 som inngår i blandingen X 4 = antall pund (i tusen) av fór 4 som inngår i blandingen Hint: Man kan la X-ene angi antall tonn isteden for antall kilo Skalering av beslutningsvariablene

61 Rasmus RasmussenBØK350 OPERASJONSANALYSE61 Minimer totalkostnaden ved å innfri ordren: MIN: 250X 1 + 300X 2 + 320X 3 + 150X 4 Merk : Koeffisientene angir nå kostnaden pr. 1000 pund Skalere målfunksjonen

62 Rasmus RasmussenBØK350 OPERASJONSANALYSE62 Produsere 8.000 pund fór X 1 + X 2 + X 3 + X 4 = 8 Blandingen må bestå av minst 20% korn (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 )/8 >= 0,2 Blandingen må bestå av minst 15% hvete (0,1X 1 + 0,3X 2 + 0,15X 3 + 0,1X 4 )/8 >= 0,15 Blandingen må bestå av minst 15% mineraler (0,2X 1 + 0,2X 2 + 0,2X 3 + 0,3X 4 )/8 >= 0,15 Ikke-negativitets betingelsene X 1, X 2, X 3, X 4 >= 0 Skalere restriksjonene (versjon A)

63 Rasmus RasmussenBØK350 OPERASJONSANALYSE63 Opprinnelig var den største koeffisienten i restriksjonene 8.000 og den minste 0,05/8000 = 0,00000625. (Formulering A) Nå er den største koeffisienten i restriksjonene 8 og den minste er 0,05/8 = 0,00625. Problemet er nå jevnere skalert. Merk: Hadde vi brukt formulering D så ville vi unngå skaleringsproblemene! En kommentar til skaleringen

64 Rasmus RasmussenBØK350 OPERASJONSANALYSE64 Minimer totalkostnaden ved å innfri ordren: MIN: 0,25X 1 + 0,30X 2 + 0,32X 3 + 0,15X 4 Produsere en blanding som gir totalt 8.000 pund hønsefór X 1 + X 2 + X 3 + X 4 = 8.000 Blandingen må bestå av minst 20% korn (0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 ) >= 0,2(X 1 + X 2 + X 3 + X 4 ) Blandingen må ha minst 15% hvete (0,1X 1 + 0,3X 2 + 0,15X 3 + 0,1X 4 ) >= 0,15(X 1 + X 2 + X 3 + X 4 ) Blandingen må minst ha 15% mineraler (0,2X 1 + 0,2X 2 + 0,2X 3 + 0,3X 4 ) >= 0,15(X 1 + X 2 + X 3 + X 4 ) Ikke-negativitets betingelsene X 1, X 2, X 3, X 4 >= 0 LP-modellen uskalert – versjon D

65 Rasmus RasmussenBØK350 OPERASJONSANALYSE65 Implementere i regneark (versjon D) Merk at krav til innhold (H7:H9) er angitt i kilo, og varierer med total mengde (G3), i forhold til minimum %-innhold (I7:I9). (Faktisk %-innhold beregnes i J7:J9, men inngår ikke i LP-modellen, kan utelates.)

66 Rasmus RasmussenBØK350 OPERASJONSANALYSE66 Hva hvis samme kunde neste gang etterspør en annen mengde blandet på samme måte ? Vi kan formulere problemet slik at vi kan levere samme blanding i et hvilket som helst kvantum ! én enhet Minimer kostnaden for ett pund (kg), dvs. én enhet. Følgende formulering kan brukes på enhver ordrestørrelse, såfremt spesifikasjonskravene er de samme. Generalisering

67 Rasmus RasmussenBØK350 OPERASJONSANALYSE67 X 1 = pund av fór 1 som inngår i ett pund av blandingen X 2 = pund av fór 2 som inngår i ett pund av blandingen X 3 = pund av fór 3 som inngår i ett pund av blandingen X 4 = pund av fór 4 som inngår i ett pund av blandingen Disse verdiene angir den prosentvise andelen hver fórtype utgjør av ett pund ferdigblanding. Multipliser med ordrestørrelsen for å finne total mengde av hver. Definere beslutningsvariablene

68 Rasmus RasmussenBØK350 OPERASJONSANALYSE68 Minimer totalkostnaden ved å produsere ett pund av blandingen: MIN: 0,25X 1 + 0,30X 2 + 0,32X 3 + 0,15X 4 Definer målfunksjonen

69 Rasmus RasmussenBØK350 OPERASJONSANALYSE69 Produsere 1 pund hønsefór X 1 + X 2 + X 3 + X 4 = 1 Blandingen må bestå av minst 20% korn 0,3X 1 + 0,05X 2 + 0,2X 3 + 0,1X 4 >= 0,2 Blandingen må ha minst 15% hvete 0,1X 1 + 0,3X 2 + 0,15X 3 + 0,1X 4 >= 0,15 Blandingen må minst ha 15% mineraler 0,2X 1 + 0,2X 2 + 0,2X 3 + 0,3X 4 >= 0,15 Ikkenegativitetsbetingelsene X 1, X 2, X 3, X 4 >= 0 Definere restriksjonene

70 Rasmus RasmussenBØK350 OPERASJONSANALYSE70 Upton planlegger produksjonen av sine store luft- kompressorer for de neste 6 månedene. Et produksjonsplanleggingsproblem 12 3456 Produksjonskostnad$240$250$265$285$280$260 Etterspørsel 1.0004.5006.0005.5003.5004.000 Max produksjon 4.0003.5004.0004.5004.0003.500 Min produksjon 2.0001.7502.0002.2502.0001.750 Inngående lagerbeholdning = 2.750 enheter Sikkerhetslager = 1.500 enheter Lagringskost pr enhet = 1,5% av produksjonskostnaden Maksimal lagringskapasitet = 6.000 enheter

71 Rasmus RasmussenBØK350 OPERASJONSANALYSE71 P i = Antall enheter produsert i måned i, i=1 til 6. B i = inngående lager i måned i, i=1 til 6. Definere beslutningsvariablene

72 Rasmus RasmussenBØK350 OPERASJONSANALYSE72 Minimer totale produksjons- og lager-kostnader: MIN: 240P 1 + 250P 2 + 265P 3 + 285P 4 + 280P 5 + 260P 6 + 3,6(B 1 +B 2 )/2 + 3,75(B 2 +B 3 )/2 + 3,98(B 3 +B 4 )/2 + 4,28(B 4 +B 5 )/2 + 4,20(B 5 + B 6 )/2 + 3,9(B 6 +B 7 )/2 Merk: Inngående lager i en måned er det samme som utgående lager i foregående måned. Definere målfunksjonen

73 Produksjonsnivå: 2.000 <= P 1 <= 4.000 } måned 1 1.750 <= P 2 <= 3.500 } måned 2 2.000 <= P 3 <= 4.000 } måned 3 2.250 <= P 4 <= 4.500 } måned 4 2.000 <= P 5 <= 4.000 } måned 5 1.750 <= P 6 <= 3.500 } måned 6 Utgående lager (UB = IB + P - E): 1.500 <= B 1 + P 1 - 1.000 <= 6.000 } måned 1 1.500 <= B 2 + P 2 - 4.500 <= 6.000 } måned 2 1.500 <= B 3 + P 3 - 6.000 <= 6.000 } måned 3 1.500 <= B 4 + P 4 - 5.500 <= 6.000 } måned 4 1.500 <= B 5 + P 5 - 3.500 <= 6.000 } måned 5 1.500 <= B 6 + P 6 - 4.000 <= 6.000 } måned 6 P = Produksjon IB = B (Beginning) E = Etterspørsel Rasmus RasmussenBØK350 OPERASJONSANALYSE73 Definere restriksjonene

74 Rasmus RasmussenBØK350 OPERASJONSANALYSE74 Inngående lager: B 1 = 2750 B 2 = B 1 + P 1 - 1.000 B 3 = B 2 + P 2 - 4.500 B 4 = B 3 + P 3 - 6.000 B 5 = B 4 + P 4 - 5.500 B 6 = B 5 + P 5 - 3.500 B 7 = B 6 + P 6 - 4.000 Merk at B i kan beregnes direkte ut fra P i. Derfor trengs bare P i å bli angitt som beslutningsvariabel. Definere restriksjonene (forts.)

75 Rasmus RasmussenBØK350 OPERASJONSANALYSE75 Komplett LP modell MinSlik at: 240P 1 + 3,60(B 1 +B 2 )/2B 1 = 27502000 ≤ P 1 ≤ 4000 + 250P 2 + 3,75(B 2 +B 3 )/2B 2 = B 1 + P 1 - 10001500 ≤ B 2 ≤ 60001750 ≤ P 2 ≤ 3500 + 265P 3 + 3,98(B 3 +B 4 )/2B 3 = B 2 + P 2 - 45001500 ≤ B 3 ≤ 60002000 ≤ P 3 ≤ 4000 + 285P 4 + 4,28(B 4 +B 5 )/2B 4 = B 3 + P 3 - 60001500 ≤ B 4 ≤ 60002250 ≤ P 4 ≤ 4500 + 280P 5 + 4,20(B 5 +B 6 )/2B 5 = B 4 + P 4 - 55001500 ≤ B 5 ≤ 60002000 ≤ P 5 ≤ 4000 + 260P 6 + 3,90(B 6 +B 7 )/2B 6 = B 5 + P 5 - 35001500 ≤ B 6 ≤ 60001750 ≤ P 6 ≤ 3500 B 7 = B 6 + P 6 - 40001500 ≤ B 7 ≤ 6000

76 Rasmus RasmussenBØK350 OPERASJONSANALYSE76 Implementert i regneark

77 Rasmus RasmussenBØK350 OPERASJONSANALYSE77 Design regneark SymbolMåned 1Måned 2Måned 3Måned 4Måned 5Måned 6 IB lagerBB1B1 B2B2 B3B3 B4B4 B5B5 B6B6 ProrduksjonPP1P1 P2P2 P3P3 P4P4 P5P5 P6P6 SalgS100045006000550035004000 U B lagerBB 2 = B 1 + P 1 - S 1 B 3 = B 2 + P 2 - S 2 B 4 = B 3 + P 3 - S 3 B 5 = B 4 + P 4 - S 4 B 6 = B 5 + P 5 - S 5 B 7 = B 6 + P 6 - S 6 Max produksjon400035004000450040003500 Min produksjon200017502000225020001750 Max lager UB6000 Min lager UB1500 Produksjonskost pr stk pk kr 240,00 kr 250,00 kr 265,00 kr 285,00 kr 280,00 kr 260,00 Lagerkost pr stklk kr 3,60 kr 3,75 kr 3,98 kr 4,28 kr 4,20 kr 3,90 Produksjonskost pr mnd PKPK 1 = pk 1 * P 1 PK 2 = pk 2 * P 2 PK 2 = pk 2 * P 3 PK 4 = pk 4 * P 4 PK 5 = pk 5 * P 5 PK 6 = pk 6 * P 6 Lagerkost pr mndLKLK 1 = lk 1 *( B 1 + B 2 )/2LK 2 = lk 2 *( B 2 + B 3 )/2LK 3 = lk 3 *( B 3 + B 4 )/2LK 4 = lk 4 *( B 4 + B 5 )/2LK 5 = lk 5 *( B 5 + B 6 )/2LK 6 = lk 6 *( B 6 + B 7 )/2 Totalkostnad ∑(PK t + LK t ) UB lager = IB lager + produksjon - salg Produksjonskost pr mnd = produksjonskost pr stk * produksjon Lagerkost pr mnd = lagerkost pr stk * gjennomsnittslager Totalkostnad = sum produksjonskostnad & lagerkostnad

78 Rasmus RasmussenBØK350 OPERASJONSANALYSE78 240P 1 +250P 2 +265P 3 +285P 4 +280P 5 +260P 6 +1,8B 1 +3,675B 2 +3,863B 3 +4,125B 4 +4,238B 5 +4,05B 6 +1,95B 7 Min P1P1  4000 P1P1  2000 P2P2  3500 P2P2  1750 P3P3  4000 P3P3  2000 P4P4  4500 P4P4  2250 P5P5  4000 P5P5  2000 P6P6  3500 P6P6  1750 B1B1 =2750 P1P1 +B 1 -B 2 =1000 P2P2 +B 2 -B 3 =4500 P3P3 +B 3 -B 4 =6000 P4P4 +B 4 -B 5 =5500 P5P5 +B 5 -B 6 =3500 P6P6 +B 6 -B 7 =4000 B2B2  6000 B2B2  1500 B3B3  6000 B3B3  1500 B4B4  6000 B4B4  1500 B5B5  6000 B5B5  1500 B6B6  6000 B6B6  1500 B7B7  6000 B7B7  1500 LP på standard form. Enklere med regneark ?

79 Rasmus RasmussenBØK350 OPERASJONSANALYSE79 Taco-Viva må opprette et fond på $800.000 til bygnings- kostnader for en ny restaurant i de neste 6 månedene. Utbetalinger på $250.000 inntrer i slutten av måned 2 og 4, og en sluttutbetaling på $300.000 inntrer i måned 6. Følgende 4 obligasjoner kan benyttes til investeringer: Et flerperiodisk kontantstrømsproblem InvesteringRente ved forfallMåneder til forfallTilgjengelig i måned A1,8%11, 2, 3, 4, 5, 6 B3,5%21, 3, 5 C5,8%31, 4 D11,0%61

80 Rasmus RasmussenBØK350 OPERASJONSANALYSE80 A ij A ij = beløp (i $1,000) plassert i investering A i begynnelsen av måned i=1, 2, 3, 4, 5, 6; forfall måned j = 2, 3, 4, 5, 6,7. B ij B ij = beløp (i $1,000) plassert i investering B i begynnelsen av måned i=1, 3, 5; forfall måned j= 3, 5, 7. C ij C ij = beløp (i $1,000) plassert i investering C i begynnelsen av måned i=1, 4; forfall måned j= 4, 7. D ij D ij = beløp (i $1,000) plassert i investering D i begynnelsen av måned i=1; forfall måned j= 7. Definere beslutningsvariablene

81 Rasmus RasmussenBØK350 OPERASJONSANALYSE81 Ønsker å betale ut minst mulig i begynnelsen av måned 1. Trenger å betale ut 250.000 i begynnelsen av måned 3 og 5, samt 300.000 i begynnelsen av måned 7. Kontantstrøm fra obligasjoner ObligasjonABCDAABACABA Investert mnd111123344556 Avsluttet mnd234734557677 Rente1,8%3,5%5,8%11%1,8% 3,5%1,8%5,8%1,8%3,5%1,8% MND 1- A 12 - B 13 - C 14 - D 17 MND 21,018 A 12 - A 23 MND 31,035 B 13 1,018 A 23 - A 34 - B 35 MND 41,058 C 14 1,018 A 34 - A 45 - C 47 MND 51,035 B 35 1,018 A 45 - A 56 - B 57 MND 61,018 A 56 - A 67 MND 71,11 D 17 1,058 C 47 1,035 B 57 1,018 A 67

82 Rasmus RasmussenBØK350 OPERASJONSANALYSE82 Max: – 1A 12 – 1B 13 – 1C 14 – 1D 17 } måned 1 Kontantstrømsrestriksjoner: 1,018A 12 – 1A 23 = 0 } måned 2 1,035B 13 + 1,018A 23 – 1A 34 – 1B 35 = 250 } måned 3 1,058C 14 + 1,018A 34 – 1A 45 – 1C 47 = 0 } måned 4 1,035B 35 + 1,018A 45 – 1A 56 – 1B 57 = 250 } måned 5 1,018A 56 –1A 67 = 0 } måned 6 1,11D 17 + 1,058C 47 + 1,035B 57 + 1,018A 67 = 300 } måned 7 Ikke-negativitets-betingelsene: A ij, B ij, C ij, D ij >= 0, for alle i og j LP - formulering Max netto kontantstrøm (mottatt – betalt) netto kontantstrøm = betalingskrav

83 Rasmus RasmussenBØK350 OPERASJONSANALYSE83 LP-modellen på standard form ObligasjonA 12 B 13 C 14 D 17 A 23 A 34 B 35 A 45 C 47 A 56 B 57 A 67 Avkastning1,8 %3,5 %5,8 %11, %1,8 % 3,5 %1,8 %5,8 %1,8 %3,5 %1,8 % Beløp2412370500126024558000245580283554000 Måned Kontantstrøm: Netto KapitalstrømBehov 1 -741363Max 21,018|||00 31,035||1,018 250000 41,058|1,018| 00 5|1,0351,018| 250000 6||1,018|00 7 1,110 1,058 1,0351,018300000

84 Rasmus RasmussenBØK350 OPERASJONSANALYSE84 LP-modell implementert i regneark

85 Rasmus RasmussenBØK350 OPERASJONSANALYSE85 LP-modellen snudd 90 grader Her er regnearket fra forrige lysark kopiert, og så limt inn med bruk av Transpose-funksjonen (og litt tilpasset formatering).

86 Rasmus RasmussenBØK350 OPERASJONSANALYSE86 Anta at CFO har tildelt følgende risikorangeringer til hver investering i en skala fra 1 to 10 (10 = max risiko) Risikostyring InvesteringRisikogruppe A1 B3 C8 D6 CFO ønsker ikke at den veide gjennomsnittsrisikoen i noen av månedene skal overstige 5.

87 Rasmus RasmussenBØK350 OPERASJONSANALYSE87 Definere de nye restriksjonene – 4A 1 – 2B 1 + 3C 1 + 1D 1 <= 0} måned 1 – 2B 1 + 3C 1 + 1D 1 – 4A 2 <= 0} måned 2 3C 1 + 1D 1 – 4A 3 – 2B 3 <= 0} måned 3 1D 1 – 2B 3 – 4A 4 + 3C 4 <= 0} måned 4 1D 1 + 3C 4 – 4A 5 – 2B 5 <= 0} måned 5 1D 1 + 3C 4 – 2B 5 – 4A 6 <= 0} måned 6 Merk at hver koeffisient er lik risikofaktoren minus 5 (den maksimalt tillatte gjennomsnitts risikoen).

88 Rasmus RasmussenBØK350 OPERASJONSANALYSE88 LP Risikostyring

89 Rasmus RasmussenBØK350 OPERASJONSANALYSE89 Steak & Burger ønsker å evaluere effektiviteten for 12 avdelinger. Output for hver avdeling ( O ij ) omfatter: Fortjeneste, Kunde-tilfredshet og Renslighet. Input for hver avdeling ( I ij ) omfatter: Arbeidstid og Produksjonskostnader. “Effektiviteten” for avdeling i er definert slik: Data Envelopment Analysis (DEA)

90 Rasmus RasmussenBØK350 OPERASJONSANALYSE90 w j w j = vekt tildelt output j v j v j = vekt tildelt input j Et separat LP problem løses for hver avdeling, og slik at hver avdeling velger de best mulige vektene for seg selv. Definere beslutningsvariablene

91 Rasmus RasmussenBØK350 OPERASJONSANALYSE91 Maksimer veid output for avdeling i : Definere målfunksjonen

92 Rasmus RasmussenBØK350 OPERASJONSANALYSE92 Effektiviteten kan ikke overstige 100% for noen avdeling: Definere restriksjonene Summen av veide inputs for avdeling i må være lik 1: Ikke-negativitetsrestriksjonene: w j, v j ≥ 0, for alle j

93 Rasmus RasmussenBØK350 OPERASJONSANALYSE93 Ved bruk av DEA må : Output variablene mer er bedre Output variablene uttrykkes på en skala der “mer er bedre”. Input variabler mindre er bedre Input variabler uttrykkes på en skala der “mindre er bedre”. Viktig poeng

94 Rasmus RasmussenBØK350 OPERASJONSANALYSE94 Risk Solver Platform legger til flere egne funksjoner i Excel, som begynner med bokstavene “Psi” (polymorphic spreadsheet interpreter). Når en foretar multiple optimaliseringer: PsiCurrentOpt( ) returnerer en heltallsindeks for gjeldende optimisering. PsiOptValue(celle, opt #) returnerer den optimale verdien til den indikerte celle for en spesifikk optimisering(opt #). PsiOptParam(liste) angir en liste av verdier som en variabel skal anta i ulike optimiseringer. Psi-funksjoner i Excel

95 Rasmus RasmussenBØK350 OPERASJONSANALYSE95 Implementere i regneark

96 Rasmus RasmussenBØK350 OPERASJONSANALYSE96 Multiple opimeringer

97 Rasmus RasmussenBØK350 OPERASJONSANALYSE97 Lagre verdier ved multiple optimeringer Hvis Monitor Value er satt til True, så vil Solver lagre verdiene for hver optimering.

98 Rasmus RasmussenBØK350 OPERASJONSANALYSE98 Komposittenhet bedre enn avd. 1

99 Rasmus RasmussenBØK350 OPERASJONSANALYSE99 Komposittvekter

100 Rasmus RasmussenBØK350 OPERASJONSANALYSE100 Slutt på kapittel 3


Laste ned ppt "Managerial Decision Modeling Cliff Ragsdale 6. edition Rasmus RasmussenBØK350 OPERASJONSANALYSE1 Chapter 3 Modeling and Solving LP Problems in a Spreadsheet."

Liknende presentasjoner


Annonser fra Google