26
1 Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion Peter Lohmander 121115

Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

  • Upload
    miracle

  • View
    30

  • Download
    2

Embed Size (px)

DESCRIPTION

Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion. Peter Lohmander 121115. Denna övning handlar framför allt om hur en rationell lagerpolicy påverkas av stokastiska leveransvariationer och hur - PowerPoint PPT Presentation

Citation preview

Page 1: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

1

Optimala rundvirkeslager m.h.t. stokastiska

leveransvariationer-Lager B

Introduktion

Peter Lohmander 121115

Page 2: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

2

Denna övning handlar framför allt om hur en rationell lagerpolicy påverkas av

stokastiska leveransvariationer

och hur

aktiviteterna i veckovisa inköp till ett råvarulager bör anpassas till dessa.

Page 3: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

3

Företagets lagerpolicy optimeras m.h.t. målet att

minimera det förväntade nuvärdet av de kostnadsposter som beaktas

enligt den nedan specificerade modellen.

Page 4: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

4

Teorin för

stokastisk dynamisk programmering

kommer till användning i denna övning.

Page 5: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

5

• Leveranserna av råvara från olika aktörer betraktas som stokastiska. Detta innebär att de leveranser som inkommer under en viss vecka har viss sannolikhetsfördelning.

• Om mer än vad som behövs för full industriproduktion kommer in till fabriken så kan detta lagras inför kommande perioder.

• Om det finns ett överskott i lagret efter den sista veckan före semestern så kan detta säljas till en andrahandsmarknad, exempelvis som bränsle till ett företag i energisektorn.

Page 6: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

6

• Om det i början av en viss period finns mindre råvara än vad som behövs för periodens industriproduktion, genomföres ”sista-minuten-inköp” av den råvara som omedelbart behövs i fabriken till en avsevärt högre kostnad per enhet än vad som motsvarar den normala prislistan.

• Detta kan i praktiken innebära att råvara flyttas från andra fabrikslager med extra lastnings- och transportkostnad som följd eller att akut råvaruimport från världsmarknaden genomföres genom att redan råvarulsatade båtar omdirigeras med omedelbar verkan.

Page 7: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

7

• Den som genomför övningen kan utgå från Peter Lohmanders grundversion av ett beräkningsprogram för optimering av detta problem.

• Därvid är det tillräckligt att marginellt ändra programmet för att använda metodiken.

Page 8: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

8

1. Kursen delas in i 8 grupper. Notera vilken gruppbokstav Din grupp har.

2. Gå grundligt igenom grundversionen av företagets planeringsproblem. Rita de figurer (gärna rumsliga kartskisser) med olika aktiviteter som behövs för att förklara företagets planeringsproblem på ett pedagogiskt sätt.

3. Gå lika grundligt igenom grundversionen av företagets optimala plan. Kontrollera på några olika sätt (genom särskilda kalkyler utanför själva beräkningsmodellen) att det är möjligt att följa planen med hänsyn till hur inköp, lagring och industriell förbrukning är beroende av varandra under olika månader under året.

Page 9: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

9

Page 10: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

10

Page 11: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

11

REM stst1.bas

REM Peter Lohmander 20081101

OPEN "ststut.dat" FOR OUTPUT AS #1

DIM f(30, 30), s(30), qopt(30, 30)

Page 12: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

12

k = 4

a = 600

b = 300

r = .07

h = 10

tmax = 20

imax = 15

p0 = 400

p1 = 0

d = EXP(-r / 52)

ttabmax = 30

itabmax = 30

Page 13: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

13

”Sista-minuten-köp”, ”s(i)”, som funktion av ingående lager,”i” och virkesförbrukning, ”k”.

FOR i = 0 TO ks(i) = k - iNEXT i

FOR i = k + 1 TO itabmaxs(i) = 0NEXT i

Page 14: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

14

”Nollställning av två tabeller”

FOR t = 0 TO ttabmax FOR i = 0 TO itabmax

f(t, i) = 0 qopt(t, i) = 0

NEXT iNEXT t

Page 15: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

15

I sista perioden får vi, beroende på ingånde lagernivå, göra ”sista-

minuten inköp” eller sälja restlagret.

FOR i = 0 TO k f(tmax, i) = a * s(i) qopt(tmax, i) = 0NEXT i

FOR i = k + 1 TO itabmax f(tmax, i) = -b * (i - k)NEXT i

Page 16: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

16

Stokastisk dynamisk programmering

FOR t = tmax - 1 TO 0 STEP -1 FOR i = 0 TO imax

fopt = 99999 qopt(t, i) = 0 qmax = imax - i - 4 IF (qmax < 0) THEN qmax = 0

FOR q = 0 TO qmax

fev = a * s(i) + (p0 + p1 * q) * q fev = fev + h * (i + s(i) - k + q)

fev = fev + d * (.1 * f(t + 1, (i + s(i) - k + q + 0))) fev = fev + d * (.2 * f(t + 1, (i + s(i) - k + q + 1))) fev = fev + d * (.4 * f(t + 1, (i + s(i) - k + q + 2))) fev = fev + d * (.2 * f(t + 1, (i + s(i) - k + q + 3))) fev = fev + d * (.1 * f(t + 1, (i + s(i) - k + q + 4)))

IF (fev < fopt) THEN qopt(t, i) = q IF (fev < fopt) THEN f(t, i) = fev IF (fev < fopt) THEN fopt = fev

NEXT q NEXT iNEXT t

Page 17: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

17

REM --------------------------------------------------------------------CLS

PRINT #1, "Optimal stock investment table"

PRINT #1, "******************************"

PRINT #1, "i = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15"PRINT #1, ""

FOR t = 0 TO tmax

PRINT #1, "t = "; PRINT #1, USING "##"; t; PRINT #1, " ";

FOR i = 0 TO imax PRINT #1, USING "#######"; qopt(t, i);

NEXT i

PRINT #1, ""

NEXT t

Page 18: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

18

REM --------------------------------------------------------------------

PRINT #1, ""PRINT #1, ""

PRINT #1, "Optimal present value table"

PRINT #1, "******************************"PRINT #1, "i = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15"PRINT #1, ""

FOR t = 0 TO tmaxPRINT #1, "t = ";PRINT #1, USING "##"; t;PRINT #1, " ";

FOR i = 0 TO imaxPRINT #1, USING "#######"; f(t, i) / 1;

NEXT i

PRINT #1, ""

NEXT t

CLOSE ststut.dat

END

Page 19: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

19

7.5 Grundversionen

Page 20: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

20

Grundversionen

Page 21: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

21

Page 22: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

22

6.5Version med ökad lagerhållningskostnad

Page 23: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

23

Version med ökad lagerhållningskostnad

Page 24: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

24

Page 25: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

25

9.5Version med ökat beroende mellaninköpskvantitet och inköpspris

Page 26: Optimala rundvirkeslager m.h.t. stokastiska leveransvariationer -Lager B Introduktion

26

Version med ökat beroende mellaninköpskvantitet och inköpspris