Preda Vanja Pmp 1112

96
Primjena matematičkog programiranja Zaštićeno licencom Primjena matematičkog programiranja Prof.dr.sc. Damir Kalpić Zavod za primijenjeno računarstvo [email protected] Soba: D-368 Literatura & informacije: http://www.fer.unizg.hr/predmet/opeist_a 1

Transcript of Preda Vanja Pmp 1112

Page 1: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Primjena matematičkog programiranja

Prof.dr.sc. Damir KalpićZavod za primijenjeno rač[email protected]: D-368

Literatura & informacije: http://www.fer.unizg.hr/predmet/opeist_a

1

Page 2: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Primjena matematičkog programiranja

Uvod• Primalni simplex• Dualni simplex• Model LP• Analiza osjetljivosti• Mješovito-cjelobrojno programiranje• Mrežno planiranja• Nabavka opreme• Politika skladišta

2

Page 3: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Uvod3

Testovi tijekom nastave (20)1. Zadatak (10)http://www.fer.hr/_download/repository/DZ09-10Prva.doc 2. zadatak (10) http://www.fer.hr/_download/repository/ZadaciZaDZ.docIzbor zadatka [1, 100]: http://www.random.org/integers/?mode=advanceduz opciju „Use pregenerated randomization based on persistent identifier“ i studentov JMBAG s vodećim nulama kao persistent identifer.3. zadatak (10)1 mrežni plan po vlastitom izboruUsmeni ispit (50)Prezentacija rješenja zadataka i odgovori na pitanja iz ostatka gradiva

Page 4: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Uvod

Operational research (UK)

Operations research (US)

Operationsforschung

Recherche opérationnelle

Ricerca operativa

Búsqueda operativa

Investigação operacional

...

4

Page 5: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Uvod

Povijest:Charles Babbage

– pošta i željeznica– 1840. Penny Post

Drugi svjetski rat– U Velikoj Britaniji paradigmatična situacija za OPEIST

• Napadi na podmornice• Radarska mreža• Analiza efekata V-2• ...

– SAD• Veličina konvoja• Pronalaženje brodova na Pacifiku• Miniranje voda na Pacifiku• ...

5

Page 6: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Uvod

Nakon Drugog svjetskog rata– vojne primjene– primjene u gospodarstvu

Izrada modela

6

Realni svijet Model

Zaključci orealnom svijetu

Zaključci o modelu

Formulacija

Dedukcija

Interpretacija

Page 7: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Uvod

Modeliranje:1. Ne komplicirati

2. Ne podešavati problem tehnici rješavanja

3. Rigorozno zaključivati o modelu

4. Provjera modela

5. Model ne shvaćati previše doslovno

6. Ne rješava ono za što nije projektiran

7. Ne pretjerati s prodajom istog modela

8. Koristi od modeliranja

9. Model nije bolji od ulaznih informacija

10.Model ne nadomješta donositelja odluke

7

Page 8: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje 8

Page 9: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje9

Page 10: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje10

Page 11: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje11

Page 12: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje12

Page 13: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje13

max/min z = Σ cj xjj=1

n

uz:

Σ aij xj

j=1

n

≤ bi ; i = 1,...,m

xj ≥ 0 ; j = 1,..., n

LP u kanonskom obliku:

n nenegativnih strukturnih varijabli

m nejednadžbi tipa ≤

Page 14: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje14

max z = Σ cj xjj=1

n

uz:

Σ aij xj

j=1

n

+ xn+i = bi ; i = 1,...,m

xj ≥ 0 ; j = 1,..., n + m

LP u obliku jednadžbi:

n nenegativnih strukturnih varijabli

m nenegativnih dopunskih (slack) varijabli

m jednadžbi

Page 15: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje

m linearnih jednadžbi

m + n nenegativnih varijabli__________________________________

n nebazičnih varijabli ( ≡ 0)

m bazičnih varijabli po kojima se sustav rješava

– uz bi ≥ 0 (i = 1, m), moguće početno rješenje je bazično

» strukturne varijable nebazične» dopunske varijable bazične» (nitko ništa ne radi)

15

Page 16: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje

Optimalno rješenje je i bazično– simpleksni postupak u jednoj iteraciji zamjenjuje

po jednu bazičnu varijablu jednom nebazičnom– zašto kod zamjene ulazne nebazične i izlazne

bazične varijable prestati preuranjeno?– O( ( ))– iskustveno: o(km3)

16

m+nm

Page 17: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje

Bez ograničenja na predznak koeficijenata/desnih strana:

17

Σ aij xj

j=1

n

≥ bi→ Σ - aij xj

j=1

n

≤ - bi

Σ aij xj = bi

j=1

n

→ Σ aij xjj=1

n≥ bi

Σ aij xjj=1

n≤ bi

min z = max (-z)

Page 18: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje

Bez ograničenja na predznak varijabli:

18

xj ≥ dj

dj < 0

x’j = xj - dj

x’j ≥ 0

-∞< xj < +∞ xj = x’’j – x’j

x’j ≥ 0

x’’j ≥ 0

Page 19: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje19

min Z = 3x1 - 4x2

uz :

2x1 + 1x2 ≤ 4

3x1 + 2x2 8

x1 0 x2 0

Page 20: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Ulazni podaci za LPE (Notepad)20

*Primjer za oba tipa ogranicenja x1 z 3x2 z -4x1 y1 2x2 y1 1x1 y2 3x2 y2 2up y1 4lo y2 8

Page 21: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Postupak s LPE (1)21

lpe.bat

Page 22: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Postupak s LPE (2)22

Nema druge funkcije cilja pa se pritisne RETURN

Page 23: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Postupak s LPE (3)23

Nakon ispisane statistike modela, upise se O za optimiranje i S za ispis rješenja.

Page 24: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Postupak s LPE (4)24

Kad se upiše za kraj E, raspoloživ je OUTPUT.PRN s ispisom.

LPE -- Total of 9 records read

Goal function z is in row 1Row count = 3Column count = 2Structural coefficients count = 6Matrix density = 100.000000 %Lower bounds count = 2Upper bounds count = 1

Amax = 1.000000 Amin = 0.250000

No primal errorsMaximum dual error :0Solution is feasibleMinimum has been reached* p00000 *Primjer za oba tipa ogranicenja Page 1.*** Rows ***

No. Row In At Activity Lower Bound Upper Bound Slack Activ. Dual Activity Description

1 z 2 b -16 NONE NONE 16 -0 2 y1 2 u 4 0 4 0 -4 3 y2 2 b 8 8 NONE 0 0 * p00000 *Primjer za oba tipa ogranicenja Page 1.*** Columns ***

No. Column In At Activity Lower Bound Upper Bound Objective Co. Reduced Cost Description

51 x1 3 l 0 0 NONE 3 11 52 x2 3 b 4 0 NONE -4 0

Page 25: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje25

Dualni simpleksni postupak:

• Početno rješenje: bazično, nemoguće, superptimalno

1.korak iteracije: • izbor izlazne bazične varijable takve da se umanji

prekoračenje dopuštenih granica2.korak iteracije:

• izbor ulazne nebazične varijable, takve da ima negativni koeficijent u retku izlazne bazične varijable (nužni uvjet), te da svojim jediničnim porastom najmanje pokvari funkciju cilja, tj. da zadrži zadovoljenima uvjete optimalnosti.

Ako nema kandidata za ulaz u bazu -> Rješenje je nemoguće.

Page 26: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje26

Dualni simpleksni postupak:

• Početno rješenje: bazično, nemoguće, suboptimalno

1.korak iteracije: • izbor izlazne bazične varijable takve da se umanji

prekoračenje dopuštenih granica2.korak iteracije:

• izbor ulazne nebazične varijable, takve da ima negativni koeficijent u retku izlazne bazične varijable (nužni uvjet), te (poželjni uvjet) da svojim jediničnim porastom najmanje pokvari funkciju cilja.

Ako nema kandidata za ulaz u bazu -> Rješenje je nemoguće.Kad je rješenje postalo moguće, ali je ostalo suboptimalno, prelazi se na primalni simpleksni postupak.

Page 27: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje27

z x1 ... xj ... xn xn+1 ... xn+i ... xn+m b

1 -c1 ... -cj ... -cn 0 ... 0 ... 0 0

0 a11 ... a1j ... a1n 1 ... 0 ... 0 b1

...

0 ai1 ... aij ... ain 0 ... 1 ... 0 bi

...

0 am1 ... amj ... amn 0 ... 0 ... 1 bm

Nulta iteracija

Page 28: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje28

z x1 ... xj ... xn xn+1 ... xn+i ... xn+m b

1 z1-c1

... zj-cj ... zn-cn

y1 ... yi ... ym y0

0 α11 ... α 1j ... α 1n π11 ... πii ... π1m β1

...

0 α i1 ... α ij ... α in πi1 ... πii ... πim β i

...

0 α m1 ... α mj ... α mn πm1 ... πmi ... πmm β m

Zadnja iteracija

Page 29: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Linearno programiranje29

min y0 = Σ bi yi (raspoloživost resursa puta njihova marginalna vrijednost)i=1

m

uz uvjet optimalnosti za primal:

Σ aij yi

i=1

m

≥ cj ; j = 1,...,n

yi ≥ 0 ; i = 1,..., m

DUAL

Page 30: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Prijelaz na dual (1)30

min Z = 3x1 - 4x2

uz :

2x1 + 1x2 ≤ 4

3x1 + 2x2 8

x1 0 x2 0

Page 31: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Prijelaz na dual (2)31

min Z = 3x1 - 4x2

uz :

2x1 + 1x2 ≤ 4

3x1 + 2x2 8

5x1 + 3x2 = 12

x1 -∞ x2 0

Page 32: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Interpretacija dualnih vrijednosti analiza osjetljivosti

32

Povećanje nerada stroja #1 (x3) ne utječe na funkciju cilja• znači stroj #1 jest resurs kojeg ima više nego li je potrebno.

Jedinično povećanje nerada stroja #2 izazvalo bi• smanjenje funkcije cilja za 3/2 [HRK/h].

Jedinično povećanje nerada stroja #3 izazvalo bi• smanjenje funkcije cilja 1 [HRK/h].

Vrijednost funkcije cilja je suma umnožaka raspoloživosti i marginalnih vrijednosti resursa.

z = 4 * 0 + 12 * 3/2 + 18 * 1 = 36

Page 33: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Interpretacija dualnih vrijednosti analiza osjetljivosti

33

•U kojem intervalu vrijede promjene iskazane dualnim varijablama?

• do susjednih bazičnih rješenja

•Što sprječava neograničeni rast funkcija cilja?

• uska grla

• uvijek postoje!

•Do koje cijene se artikl još isplati proizvoditi u količini iskazanoj optimalnim rješenjem?

•Uz koju cijenu se artikl isplati proizvoditi više?

•Po kojoj cijeni se isplati nedostajući resurs unajmiti?

•Po kojoj cijeni se nedostajući resurs isplati iznajmiti?

•Po kojoj cijeni postupiti s resursom kojeg ima suviše?

Page 34: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Jednostavna proizvodnja - LPE34

*Jedostavna proizvodnjax1 z 3x2 z 5x1 stroj1 1x2 stroj2 2x1 stroj3 3x2 stroj3 2up stroj1 4up stroj2 12up stroj3 18

Ulazni podaci

Page 35: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Jednostavna proizvodnja - LPE35

*** Rows ***

No. Row In At Activity Lower Bound Upper Bound Slack Activ. Dual Activity Description

1 z 2 b 36 NONE NONE -36 0 2 stroj1 1 b 2 0 4 2 0 3 stroj2 1 u 12 0 12 0 1.5 4 stroj3 2 u 18 0 18 0 0.9999999

*** Columns ***

No. Column In At Activity Lower Bound Upper Bound Objective Co. Reduced Cost Description

51 x1 3 b 2 0 NONE 3 -0 52 x2 3 b 6 0 NONE 5 -0

Rješenje

Page 36: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Jednostavna proizvodnja - LPE36

*** A n a l y s i s f o r r o w s ******************************************************************************** No.*Row * Activity * Lower Bound *Decreased act.* Unit **----*---------*--------------*--------------*--------------* ** In* At *Slack Activity* Upper Bound *Increased Act.* Cost ***************************************************************************** 1 z 36 None 30 -1 2 b -36 None 36 0

2 stroj1 2 0 0 -3 1 b 2 4 6 -4.5

3 stroj2 12 0 5.999999 -1.5 1 u 0 12 18 1.5

4 stroj3 18 0 12 -0.9999999 2 u 0 18 24 0.9999999

Analiza osjetljivosti za retke

Page 37: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Jednostavna proizvodnja - LPE37

*** A n a l y s i s f o r c o l u m n s ******************************************************************************** No.*Column * Activity * Lower Bound *Decreased act.* Unit **----*---------*--------------*--------------*--------------* ** In* At *Objective Coef* Upper Bound *Increased Act.* Cost ***************************************************************************** 51 x1 2 0 0 -3 3 b 3 None 4 -4.5

52 x2 6 0 3 -3 3 b 5 None 6 -0

Analiza osjetljivosti za stupce

Page 38: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Višefazna proizvodnja 38

15.0 [min/kg]

31.7 [min/kg]

Stroj..1 2400 [min]

Stroj..2 1800 [min]

Stroj..3 8400 [min]

36 [€/kg]

45 [€/kg]

30 x1 250

40 x2 120

23.0 [min/kg]

17.0 [min/kg]

21.5 [min/kg]

35.6 [min/kg]

0.36 [€/min]

0.43 [€/min]

0.27 [€/min]Sirov..1100 5.7 [€/kg]

Sirov..2300 7.6 [€/kg]

1.12

1.05

1.07

1.10

•Normativi sirovina za izradu poluproizvoda > 1•Nema mogućnosti skladištenja poluproizvoda•x11 & x12 ; x21 & x22 fizički su isti, financijski različiti

x11

x12

x21

x22

Page 39: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Neki financijski pojmovi

• Prihod = ProdajnaCijena * ProdanaKoličina

• Troškovi

– Fiksni troškovi» Otplata kredita» Amortizacija» Administrativni troškovi» Zajamčene plaće» …

– Direktni / varijabilni troškovi» Sirovine» Energija» Promjenjivi dio plaća» Habanje strojeva» ..

39

Page 40: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Što je cilj (1)?

• Minimizacija troška– Javne usluge

» Javni prijevoz» Komunalne djelatnosti

– Vojska– …

• Minimizacija vremena– Vatrogasci– Hitna pomoć– …

• Maksimizacija prihoda?– Može li to stvoriti gubitak?

40

Page 41: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Što je cilj (2)?

• Maksimalne proizvedene količine?• Maksimalno iskorištavanje kapaciteta?

– Zašto?• Profit?

– Kako ga izraziti?– Od čega se profit (prije oporezovanja) tvori (kod

proizvodnje za tržište):» Prihod – VarijabilniTrošak – FiksniTrošak

– Na što možemo trenutno utjecati:» Kontribucija ili Doprinos za pokriće fiksnih troškova =

Prihod – VartijabilniTroškovi

41

Page 42: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Za što se ništa ne isplati?

42

Direct costs Fixed costs

Selling price ++

Market

proportional to 1 / Q

Q - -

Price increasing loop

Preskupo, ne proda se, proizvodi se manje, cijena raste! Umjesto toga Marketing: Koliko i po kojoj cijeni se može prodati Planiranje proizvodnje: Maksimalna kontribucija

Page 43: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Višefazna proizvodnja - LPE

*PROBLEM VIŠEFAZNE PROIZVODNJE *Ulazni podaci za program: Ekvivalentna matematicka notacija:*Finalni prizvodi X11 X1 1. X1(kg) = X11(kg) + X12(kg) X12 X1 1. X21 X2 1. X2(kg) = X21(kg) + X22(kg) X22 X2 1.*Utrošak strojnog vremena X11 STROJ..1 15. STROJ..1(min) = 15.(min/kg)*X11(kg) + X21 STROJ..1 23. + 23.(min/kg)*X21(kg) X12 STROJ..2 17. STROJ..2(min) = 17.(min/kg)*X12(kg) + X22 STROJ..2 21.5 + 21.5(min/kg)*X22(kg) X1 STROJ..3 35.6 STROJ..3(min) = 35.6(min/kg)*X1(kg) + X2 STROJ..3 31.7 + 31.7(min/kg)*x2(kg)*Utrošak sirovina X11 SIROV..1 1.12 SIROV..1(kg) = 1.12*X11(kg) + X12 SIROV..1 1.07 + 1.07*X12(kg) X21 SIROV..2 1.05 SIROV..2(kg) = 1.05*X21(kg) + X22 SIROV..2 1.10 + 1.10*X22(kg)

43

Page 44: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Višefazna proizvodnja - LPE

*Troškovi SIROV..1 TROSAK 5.7 TROSAK(kn) = 5.7(kn/kg)*SIROV..1(kg)

SIROV..2 TROSAK 7.6 + 7.6(kn/kg)*SIROV..2(kg) STROJ..1 TROSAK 0.34 + .34(kn/min)*STROJ..1(min) STROJ..2 TROSAK 0.43 + .43(kn/min)*STROJ..2(min) STROJ..3 TROSAK 0.27 + .27(kn/min)*STROJ..3(min)

*Prihod X1 PRIHOD 36. PRIHOD(€) = 36.(€/kg)*X1(kg) X2

PRIHOD 45. + 45.(€/kg)*X2(kg)*Kontribucija PRIHOD KONTRIB. 1. KONTRIB.(€) = PRIHOD(kn)-TROSAK(kn)

TROSAK KONTRIB. -1.*Ogranicenja LO X1 30. 30.(kg) < X1 < 250.(kg) UP X1 250. LO X2 40. 40.(kg) < X2 < 120.(kg) UP X2 120. UP STROJ..1 2400. STROJ..1 < 2400.(min) UP STROJ..2 1800. STROJ..2 < 1800.(min) UP STROJ..3 8400. STROJ..3 < 8400.(min) UP SIROV..1 100. SIROV..1 < 100.(kg) UP SIROV..2 300. SIROV..2 < 300.(kg)

44

Page 45: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Višefazna proizvodnja – LPEAnaliza osjetljivosti za stupce

45

Page 46: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Problem smjese – LPE

46 BIN.5 WEIGHT 1 BIN.5 FE 0.02 BIN.5 CU 0.06 BIN.5 MN 0.02 BIN.5 MG 0.01 BIN.5 AL 0.8 BIN.5 SI 0.02 ALUMINUM COST 0.21 ALUMINUM WEIGHT 1 ALUMINUM FE 0.01 ALUMINUM CU 0.01 ALUMINUM AL 0.97 ALUMINUM SI 0.01 SILICON COST 0.38 SILICON WEIGHT 1 SILICON FE 0.03 SILICON SI 0.97 FE BASE 1 CU BASE 1 FR COST FX WEIGHT 2000 UP MN 40 UP MG 30 LO AL 1500 LO SI 250 UP SI 300 UP BASE 120 UP BIN.1 200 UP BIN.2 750 UP BIN.3 800 UP BIN.4 700 UP BIN.5 1500 UP FE 60 UP CU 100

BIN.1 COST 0.03 BIN.1 WEIGHT 1 BIN.1 FE 0.15 BIN.1 CU 0.03 BIN.1 MN 0.02 BIN.1 MG 0.02 BIN.1 AL 0.7 BIN.1 SI 0.02 BIN.2 COST 0.08 BIN.2 WEIGHT 1 BIN.2 FE 0.04 BIN.2 CU 0.05 BIN.2 MN 0.04 BIN.2 MG 0.03 BIN.2 AL 0.75 BIN.2 SI 0.06 BIN.3 COST 0.17 BIN.3 WEIGHT 1 BIN.3 FE 0.02 BIN.3 CU 0.08 BIN.3 MN 0.01 BIN.3 AL 0.8 BIN.3 SI 0.08 BIN.4 COST 0.12 BIN.4 WEIGHT 1 BIN.4 FE 0.04 BIN.4 CU 0.02 BIN.4 MN 0.02 BIN.4 AL 0.75 BIN.4 SI 0.12 BIN.5 COST 0.15

Page 47: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Problem smjese – LPE

47

Page 48: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Problem smjese – LPE

48

Page 49: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Transportni problem49

Odredišta Raspoloživo

1 j n

Izvori

1 c11 ... c1j ... c1n Q1

...

i ci1 ... cij ... cin Qi

...

m c m1 ... c mj ... c mn Qm

Potrebno

D1 Dj Dn

Page 50: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Transportni problem50

Odredišta Raspoloživo

1 2 3 4

Izvori

1 2 5 4 5 60

2 1 2 1 4 80

3 3 1 5 2 60

Potrebno 50 40 70 40

Primjer iz “Invitation a la recherche opérationnelle,” Kaufmann & Faure, Dunod

Page 51: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Transportni problem51

x11 z 2x12 z 5x13 z 4x14 z 5x21 z 1x22 z 2x23 z 1x24 z 4x31 z 3x32 z 1x33 z 5x34 z 2

x11 o1 1x21 o1 1x31 o1 1x12 o2 1x22 o2 1x32 o2 1x13 o3 1x23 o3 1x33 o3 1x14 o4 1x24 o4 1x34 o4 1

x11 i1 1x12 i1 1x13 i1 1x14 i1 1x21 i2 1x22 i2 1x23 i2 1x24 i2 1x31 i3 1x32 i3 1x33 i3 1x34 i3 1

up i1 60up i2 80up i3 60lo o1 50lo o2 40lo o3 70lo o4 40

Page 52: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Problem pridruživanja52

Stroj

Normativi vremena [h/kg] Kapacitet

[h]P1 P2

M1 0,8 0,8333 40

M2 0,6 0,196740

M30,5 0,75

40

Potrebna količina

[kg]100 60

Page 53: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Problem pridruživanja53

* Utrosak vremena za svaki proizvod na svakom od strojeva P11 M11 0.8 P12 M21 0.6 P13 M31 0.5 P21 M12 0.83333 P22 M22 0.91667 P23 M32 0.75* Utrosak vremena na svakom od strojeva M11 M1 1. M12 M1 1. M21 M2 1. M22 M2 1. M31 M3 1. M32 M3 1.* Maksimalno neiskoristeno vrijeme stroja M1 M1UK 1. P M1UK 1. M2 M2UK 1. P M2UK 1. M3 M3UK 1. P M3UK 1. P PP 1.

* Kolicina svakog od proizvoda P11 P1 1. P12 P1 1. P13 P1 1. P21 P2 1. P22 P2 1. P23 P2 1.* Ukupan utrosak vremena na strojevima M1 VRIJEME 1. M2 VRIJEME 1. M3 VRIJEME 1.* Raspolozivi kapaciteti strojeva UP M1UK 40. UP M2UK 40. UP M3UK 40.* Zadane kolicine koje treba proizvesti LO P1 100. LO P2 60.

Page 54: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Metoda grananja i ograđivanja54

Poslovi

1 2 3 4 5

A 7 26 55 43 28

B 83 57 40 77 61

C 38 93 14 29 86

D 52 10 48 61 73

E 21 56 49 48 33

Str

ojev

i

Page 55: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Metoda grananja i ograđivanja55

Poslovi

1 2 3 4 5

A 7 26 55 43 28

B 83 57 40 77 61

C 38 93 14 29 86

D 52 10 48 61 73

E 21 56 49 48 33

Str

ojev

i

Page 56: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Metoda grananja i ograđivanja56

Page 57: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Rješavanje pridruživanja kao transportni problem (1)57

1 2 3 4 5

A 7 26 55 43 28 1

B 83 57 40 77 61 1

C 38 93 14 29 86 1

D 52 10 48 61 73 1

E 21 56 49 48 33 1

1 1 1 1 1

Page 58: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Rješavanje pridruživanja kao transportni problem (2)58

1 2 3 4 5

A 1 ε1 1+ε1

B 1 ε2 1+ε2

C 1 ε3 1+ε3

D 1 ε4 1+ε4

E 1 1

1 1+ε1 1+ε2 1+ε3 1+ε4

ε1 > ε2 > ... > ε4

Page 59: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mješovito cjelobrojno programiranje (1)59

max Z = x1 + x2

uz:

19 x1 + 12 x2 ≤ 114 → x1 / 6 + x2 / 9,5 = 1

2 x2 ≤ 11 → x2 / 5,5 = 1

x1, x2 = 0, 1, 2, 3,...

Primjer iz “Invitation a la recherche opérationnelle,” Kaufmann & Faure, Dunod

Page 60: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mješovito cjelobrojno programiranje (2)60

x1 / 6 + x2 / 9.5 = 1

x2 / 5.5 = 1

Optimum:

(2.52; 5.5), Z = 8.02

X1

X2

6

9

Page 61: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mješovito cjelobrojno programiranje (3)61

x1 / 6 + x2 / 9,5 ≤ 1

x2 / 5,5 ≤1

x1 ≤ 2

(2; 5,5) z = 7,5

X1

X2

6

9

Page 62: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mješovito cjelobrojno programiranje (4)62

x1 / 6 + x2 / 9,5 ≤ 1

x2 / 5,5 ≤ 1

x1 ≤ 2

x2 ≤ 5

(2; 5) z = 7

X1

X2

6

9

Page 63: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mješovito cjelobrojno programiranje (5)63

Page 64: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mješovito cjelobrojno programiranje (6)64

Si = Σ fk0-0.5 + Σ (1 - fm

0.5-1.0) k m

min { Si │ Ci ≥ C0 * Fq }

{ Ci │ Ci > CI * (1+Fp) }

Ci - (C0 - CI)/ S0 * Si

Odstupanje od cjelobrojnosti

Najbliži cjelobrojnosti, a da nije suviše loš

Takav da se isplati tražiti bolje rješenje

Projekcijski faktor

Page 65: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mješovito cjelobrojno programiranje (7)65

Page 66: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Planiranje poljoprivredne proizvodnje66

i – poljoprivredno zemljište /njivaj – poljoprivredna kultura /usjev

Uzgajanje usjeva j na njivi i

δij = 0, 1

δij = 1 ; za svaki ij

Na jednoj njivi može se uzgajati samo jedan usjev.

Svojstvo Grupnih varijabli umanjuje složenost odeksponencijalne na linearnu!

Page 67: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Energetska mreža (1)67

Pi

Ri

ij1 j2

Wj2- +

≤ Ci*δi

Page 68: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Energetska mreža (2)68

j

Pi

i

Ri

Ci

δi

Wj

Jedan od n čvorovaIzvor energije

Ponor energije

Energija isporučena/ utrošena

Grana i – Jedan od m visokonaponskih vodova duljine li na kojem se tijekom životnog vijeka izgubi energije za q% troškova izgradnjePozitivni tok energije u grani i

Negativni tok energije u grani i

Kapacitet grane i

Fizičko postojanje grane i (0 = Ne; 1 = Da)

{

Page 69: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Energetska mreža (3)69

min z = li * ( δi + q*Pi + q*Ri)

Pi + Ri Ci*δi ; i = 1, …,m

i = 1

m

k (i,j)*Pi - k (i,j)*Ri = Wj ; j = 1,…,n i = 1

m

i = 1

m

k (i,j) = {-1 Grana i izlazi iz čvora j0 Grana i ne koincidira s čvorom j

-1 Grana i ulazi u čvor j

Pi 0 ; i = 1, …,mRi 0 ; i = 1, …,m

δi = 0, 1 ; i = 1, …,m

Page 70: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Separabilno programiranje70

g1 g2 g3 g4

y1 y2 y3 y4

f(x)

f0 S1S2

S3

S4

x

Page 71: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Separabilno programiranje izraženo cjelobrojnim71

x = yi ; 0 yi gi

f (x) = f0 + Si*yi

i=1

n

i=1

n

y1 g1

yi gi*δi

yi+1 gi+1* δi

δ i = 0, 1i = 1,…, n-1

Page 72: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Podešavanje strojeva72

količina

t

0 T

Page 73: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Terminiranje proizvodnje73

Page 74: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mrežno planiranje (1)74

Šifra Opis aktivnosti Trajanje Preduvjeti

Page 75: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mrežno planiranje (2)75

Najranijij mogući početak

Trajanje aktivnosti

Najraniji mogući

završetak

Identifikacija aktivnosti

Slobodna vremenska

rezerva

Najkasniji dozvoljeni početak

Ukupona vremenska

rezerva

Najkasniji dozvoljeni završetak

Page 76: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mrežno planiranje (3)76

Lokacija

Start: 3.6.05 ID: 1

Finish: 23.6.05 Dur: 15 days

Res: Vlasnik

Uređenje okoliša

Start: 12.5.06 ID: 13

Finish: 8.6.06 Dur: 1 mon

Res: Izvoditel j

Unutarnje 1. KAT

Start: 14.4.06 ID: 12

Finish: 11.5.06 Dur: 1 mon

Res: Izvoditel j

Krov

Start: 7.4.06 ID: 10

Finish: 13.4.06 Dur: 5 days

Res: Izvoditel j

Unutarnje priz emlje

Start: 7.4.06 ID: 11

Finish: 4.5.06 Dur: 1 mon

Res: Izvoditel j

Zidovi

Start: 24.3.06 ID: 17

Finish: 6.4.06 Dur: 2 wks

Res: Izvoditel j

Garaž a

Start: 7.3.06 ID: 14

Finish: 27.3.06 Dur: 15 days

Res: Izvoditel j

Baz en

Start: 7.3.06 ID: 15

Finish: 3.4.06 Dur: 1 mon

Res: Izvoditel j

Iz gradnja temelja

Start: 17.3.06 ID: 16

Finish: 23.3.06 Dur: 1 wk

Res: Izvoditel j

Narudž ba materija la

Start: 3.3.06 ID: 9

Finish: 6.3.06 Dur: 2 days

Res: Izvoditel j

Kopanje temelja

Start: 3.3.06 ID: 8

Finish: 16.3.06 Dur: 10 days

Res: Izvoditel j

Građevinska doz vola

Start: 16.9.05 ID: 4

Finish: 2.3.06 Dur: 6 mons

Res: Vlasnik[5%]

Lokacijska doz vola

Start: 24.6.05 ID: 6

Finish: 15.9.05 Dur: 3 mons

Res: Vlasnik[10%]

Kredit

Start: 24.6.05 ID: 5

Finish: 21.7.05 Dur: 1 mon

Res: Vlasnik[20%]

Odabir podiz vođača

Start: 24.6.05 ID: 3

Finish: 30.6.05 Dur: 5 days

Res: Vlasnik

Birokracija

Start: 24.6.05 ID: 2

Finish: 2.3.06 Dur: 180 days

Comp: 0%

Iz gradnja

Start: 3.3.06 ID: 7

Finish: 8.6.06 Dur: 70 days

Comp: 0%

Page 77: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Mrežno planiranje (4)77

ID Task Name Duration Start Early Start Finish Late Finish Finish Slack Predecessors

1 Lokacija 15 days Fri 3.6.05 Fri 3.6.05 Thu 23.6.05 Thu 23.6.05 0 days

2 Birokracija 180 days Fri 24.6.05 Fri 24.6.05 Thu 2.3.06 Tue 14.3.06 8 days 1

3 Odabir podizvođača 5 days Fri 24.6.05 Fri 24.6.05 Thu 30.6.05 Thu 2.3.06 175 days

5 Kredit 1 mon Fri 24.6.05 Fri 24.6.05 Thu 21.7.05 Tue 14.3.06 8,4 mons 1

6 Lokacijska dozvola 3 mons Fri 24.6.05 Fri 24.6.05 Thu 15.9.05 Thu 15.9.05 0 mons 1

4 Građevinska dozvola 6 mons Fri 16.9.05 Fri 16.9.05 Thu 2.3.06 Thu 2.3.06 0 mons 6

7 Izgradnja 70 days Fri 3.3.06 Fri 3.3.06 Thu 8.6.06 Thu 8.6.06 0 days

8 Kopanje temelja 10 days Fri 3.3.06 Fri 3.3.06 Thu 16.3.06 Thu 16.3.06 0 days 4;3;6

9 Narudžba materijala 2 days Fri 3.3.06 Fri 3.3.06 Mon 6.3.06 Thu 16.3.06 8 days 5;4

14 Garaža 15 days Tue 7.3.06 Tue 7.3.06 Mon 27.3.06 Thu 11.5.06 33 days 9

15 Bazen 1 mon Tue 7.3.06 Tue 7.3.06 Mon 3.4.06 Thu 11.5.06 1,4 mons 9

16 Izgradnja temelja 1 wk Fri 17.3.06 Fri 17.3.06 Thu 23.3.06 Thu 23.3.06 0 wks 8;9

17 Zidovi 2 wks Fri 24.3.06 Fri 24.3.06 Thu 6.4.06 Thu 6.4.06 0 wks 16

10 Krov 5 days Fri 7.4.06 Fri 7.4.06 Thu 13.4.06 Thu 13.4.06 0 days 17

11 Unutarnje prizemlje 1 mon Fri 7.4.06 Fri 7.4.06 Thu 4.5.06 Thu 11.5.06 0,25 mons 17

12 Unutarnje 1. KAT 1 mon Fri 14.4.06 Fri 14.4.06 Thu 11.5.06 Thu 11.5.06 0 mons 10

13 Uređenje okoliša 1 mon Fri 12.5.06 Fri 12.5.06 Thu 8.6.06 Thu 8.6.06 0 mons 12;11;14;15

Vlasnik

Vlasnik

Vlasnik[20%]

Vlasnik[10%]

Vlasnik[5%]

Izvoditelj

Izvoditelj

Izvoditelj

Izvoditelj

Izvoditelj

Izvoditelj

Izvoditelj

Izvoditelj

Izvoditelj

Izvoditelj

Jun Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov2nd Quarter 3rd Quarter 4th Quarter 1st Quarter 2nd Quarter 3rd Quarter 4th Quarter 1st Quarter 2nd Quarter 3rd Quarter 4th Quarter

Page 78: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Politika vođenja zaliha (1)78

Proizvodnja televizora a = [8000 kom/mjesec]

Povremena brza proizvodnja zvučnika za TV

• K =12000 [kn] trošak pokretanja proizvodnje

• h = 0,30 [kn/mjesec] troškovi skladištenja

• g = 1,10 [kn/mjesec] trošak zbog privremenog nedostatka zvučnika

Page 79: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Politika vođenja zaliha (2)79

Početna količina S [kom]

Potražnja a [kom/mjesec]

Pokretnje proizvodnje /Naručivanje K [kn]

Veličina narudžbe Q [kom]

Skladištenje h [kn/(kom*mjesec)]

Nedostatak robe g [kn/(kom*mjesec)]

Page 80: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Politika vođenja zaliha (3)80

Q

Q-at

Q/a t2Q/a

Q/2

Nedopušten nedostatak robe; S = Q; g = 0

Prosječne zalihe Q/2

Page 81: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Politika vođenja zaliha (4)81

Q

S

Q-at

S/a

Q/a

t

Prosječne zalihe S/2 * S/a = S2/(2a)Prosječni manjak (Q-S)/2 * (Q-S)/a = (Q-S)2/(2a)

Page 82: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Politika vođenja zaliha (5)82

P(s) vjerojatnost da nastupi potražnja ≤ s

s

1

Page 83: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Politika vođenja zaliha (6)83

Prodavač novina:

Kupuje po cijeni 5 [kn/primjerak]

Prodaje po cijeni 10 [kn/primjerak]

Za remitendu dobije 2 [kn/primjerak]

P(s) vjerojatnost da nastupi potražnja ≤ s

Ako umjesto s-1, kupi s primjeraka od izdavača:

Porast zarade = 5*[1-P(s-1)] – 3*P(s-1)

Page 84: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Zamjena opreme (1)84

Kada zamijeniti auto?

•Cijena rabljenog vozila pada

•Troškovi održavanja rastu

• Kako postići minimalne prosječne troškove posjedovanja?

•Novčane transakcije u raznim vremenskim trenutcima

• Kako usporediti novac danas i u nekom trenutku t?

Page 85: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Zamjena opreme (2)85

t

Φ (t)

t

Ψ (t)

t

1-k

1

ϒ (t)

Page 86: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Zamjena opreme (3)86

Γ(t) = A0 - A0*Φ(t) + A0*Ψ(t)

ϒ (t) = Γ(t) / t = A0[1 - Φ(t) + Ψ(t)] / t

Zamijeniti opremu kad postane ϒ (t) > ϒ (t-1) ; za “dovoljno veliki” t

Aktualizacija t

Γ(t) = A0 {[1 - Φ(t)/(1+α)t ]+ Σ [ Ψ(k) - Ψ(k-1)] / (1+α)k ]}k=1

Page 87: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Nabavka opreme (1)87

Usporedba više ponuda opreme za proizvodnju

•Proizvod se prodaje po 10 HRK/kom.

•Varijabilni troškovi su 70% prodajne cijene.

•Realna godišnja kamatne stopa je 10%

•različit vijek trajanja opreme

•različite cijene opreme

•različiti troškovi održavanja opreme

•različita rezidualna cijena opreme

•različite performanse opreme

Svesti vrijeme korištenja opreme na najmanji zajednički višekratnik radi usporedivosti

Page 88: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Nabavka opreme (2)88

Oprema A:•vijek trajanja: 4 godine•cijena: 50.000 HRK•troškovi održavanja: Aritmetička progresija

(a=1.000, d=1.000)•vrijednost opreme na kraju perioda: 10.000 HRK•proizvodni kapacitet : 10.000 kom/godina

Oprema B:•vijek trajanja: 6 godina•cijena: 65.000 HRK•troškovi održavanja: Aritmetička progresija

(a=2.000, d=1.000)

•vrijednost opreme na kraju perioda: 15.000 HRK•proizvodni kapacitet: 14.000 kom/godina

Page 89: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Nabavka opreme (3)89

Investicijom se 1 HRK pretvara u 100.351/50.000 = 2 HRK

Page 90: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Nabavka opreme (4)90

Investicijom se 1 HRK pretvara u 168.949/65.000 = 2,60 HRK

Page 91: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Dinamičko programiranje (1)91

Page 92: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Dinamičko programiranje (2)92

Page 93: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Dinamičko programiranje (3)93

n fA(n) fB(n) fAB(n) (A, B) fC(n) fABC(n) (A, B, C)

o 0 0 0 (0, 0) 0 0 (0, 0, 0)

1 0,28 0,25 0,28 (1, 0) 0,15 0,28 (1, 0, 0)

2 0,45 0,41 0,53 (1, 1) 0,25 0,53 (1, 1, 0)

3 0,65 0,55 0,70 (2, 1) 0,40 0,70 (2, 1, 0)

4 0,78 0,65 0,90 (3, 1) 0,50 0,90 (3, 1, 0)

5 0,90 0,75 1,06 (3, 2) 0,62 1,06 (3, 2, 0)

6 1,02 0,80 1,20 (3, 3) 0,73 1,21 (3, 2, 1)

7 1,13 0,85 1,33 (4, 3) 0,82 1,35 (3, 3, 1)

8 1,23 0,88 1,45 (5, 3) 0,90 1,48 (4, 3, 1)

9 1,32 0,90 1,57 (6, 3) 0,96 1,60 (5, 3, 1) ili

(3, 3, 3)10 1,38 0,90 1,68 (7, 3) 1 1,73 (4, 3, 3)

Page 94: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Gradijentne metode nelinearnog programiranja bez ograničenja

94

max f(x1, x2) = 7*x1 + 4*x2 + x1*x2 - x12 - x2

2

Page 95: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Gradijentne metode nelinearnog programiranja s linearnim ograničenjima

95

Page 96: Preda Vanja Pmp 1112

Primjena matematičkog programiranja Zaštićeno licencom

Literatura96

Hillier, F.S., Lieberman, G.J. : Operations Research, Holden-Day Inc., 1974

Kaufmann, A., Faure, R.: Invitation a la recherche opérationnelle, Dunod, Paris, 1970

Ravindran, A. Phillips, D.T:, Solberg, J.J.: Operations Research – Principles and Practice, John Wiley & Sons, New York, 1987

Kalpić, D., Mornar, V.: Operacijska istraživanja, Zeus, Zagreb, 1996