16
Kvantitativne metode za poslovno odlučivanje * V. Cjelobrojno programiranje Rudolf Scitovski, Ivan Vazler, Martina Briš 23. siječnja 2013. Sadržaj 1 Uvod 1 2 Problem cjelobrojnog programiranja 2 2.1 Neki specijalni problemi cjelobrojnog programiranja ................ 3 2.1.1 Problem ranca ................................. 3 2.1.2 Problem asignacije ............................... 4 2.1.3 Transportni problem .............................. 5 2.1.4 Problem trgovačkog putnika .......................... 6 2.1.5 Problem najkraćeg puta ............................ 8 2.1.6 Problem maksimalnog toka .......................... 9 2.1.7 Metoda kritičnog puta za planiranje realizacije projekta .......... 10 2.1.8 Problem minimalnih troškova toka ...................... 10 2.1.9 Investicijsko odlučivanje ............................ 11 2.1.10 Problem raspoređivanja ............................ 12 2.1.11 Oglašavanje u marketingu ........................... 14 2.1.12 Problem krojenja/rezanja materijala ..................... 15 1 Uvod x * Obvezni predmet u 5. semestru sveučilišnog preddiplomskog studijskog programa Poduzetništvo Eko- nomskog fakulteta u Osijeku (45 sati predavanja i 15 sati vježbi, 5 ECTS bodova)

Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Embed Size (px)

Citation preview

Page 1: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode za poslovno odlučivanje ∗V. Cjelobrojno programiranje

Rudolf Scitovski, Ivan Vazler, Martina Briš

23. siječnja 2013.

Sadržaj1 Uvod 1

2 Problem cjelobrojnog programiranja 22.1 Neki specijalni problemi cjelobrojnog programiranja . . . . . . . . . . . . . . . . 3

2.1.1 Problem ranca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.1.2 Problem asignacije . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.1.3 Transportni problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.1.4 Problem trgovačkog putnika . . . . . . . . . . . . . . . . . . . . . . . . . . 62.1.5 Problem najkraćeg puta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1.6 Problem maksimalnog toka . . . . . . . . . . . . . . . . . . . . . . . . . . 92.1.7 Metoda kritičnog puta za planiranje realizacije projekta . . . . . . . . . . 102.1.8 Problem minimalnih troškova toka . . . . . . . . . . . . . . . . . . . . . . 102.1.9 Investicijsko odlučivanje . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.1.10 Problem raspoređivanja . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.1.11 Oglašavanje u marketingu . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.1.12 Problem krojenja/rezanja materijala . . . . . . . . . . . . . . . . . . . . . 15

1 Uvod

x∗Obvezni predmet u 5. semestru sveučilišnog preddiplomskog studijskog programa Poduzetništvo Eko-

nomskog fakulteta u Osijeku (45 sati predavanja i 15 sati vježbi, 5 ECTS bodova)

Page 2: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 2

2 Problem cjelobrojnog programiranja

Primjer 1. Razmotrimo sljedeći LP problem (Slika 1a):

Maksimizirati z = 35x1 + 100x2 uz uvjete

25x1 + 100x2 ≤ 343.75

1375x1 + 100x2 ≤ 4056.25

100x2 ≤ 325

x1, x2 ≥ 0

Njegovo rješenje postiže se za x? = (2.75, 2.75)T , a vrijednost funkcije cilja je z? = 371.25(vidi Sliku 1a).

Međutim, ako bi zahtijev bio pronaći maksimum iste funkcije cilja, ali uz uvjet da varijablesmiju primiti samo nenegativne cjelobrojne vrijednosti x1, x2 ∈ Z+, onda se dopustivo područjesastoji samo od 11 točaka (Slika 1b, a maksimalna vrijednost funkcije cilja postiže se u točkix?

I = (1, 3)T , pri čemu je z?I = 335. Problem pronalaženja optimalne točke s cjelobrojnim koor-

dinatama u dopustivom području naziva se problem cjelobrojnog programiranja(Barković,2010; Vanderbei, 2001; Sierksma, 2002).

0.5 1.0 1.5 2.0 2.5 3.0

1

2

3

4a) LP-problem

0.5 1.0 1.5 2.0 2.5 3.0

1

2

3

4b) IP-problem

0.5 1.0 1.5 2.0 2.5 3.0

1

2

3

4c) Zaokruživanje

Slika 1: LP i odgovarajući IP problem

Odmah bi nam moglo pasti na pamet da potražimo optimalnu točku, kao rješenje klasičnog(realnog) LP problema i onda zaokruživanjem njenih koordinata prema dolje dobijemo cjelo-brojno rješenje. U našem bi primjeru zaokruživanjem dobili točku x = (2, 2)T i vrijednostfunkcije cilja z = 270.Zašto zaokruživanje prema gore ne bi imalo smisla?

Primijetite da je relativna pogreška funkcije cilja kod cjelobrojnog programiranja ( |z?−z?

I |z? ),

10%, dok je relativna pogreška funkcije cilja kod metode zaokruživanja ( |z?−z|z? ) znatno veća i

iznosi oko 30%.

Page 3: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 3

Zbog toga su u literaturi razrađene brojne metode za rješavanje problema cjelobrojnog pro-gramiranja. Najpoznatija takva metoda je metoda grananja i ograđivanja (Branch-and-boundMethod) (vidi primjerice (Sierksma, 2002)).

2.1 Neki specijalni problemi cjelobrojnog programiranja

2.1.1 Problem ranca

Primjer 2. (Sierksma, 2002) U kontejner poznatog volumena 15m3 treba smjestiti što višeprimjeraka od 5 objekata poznatog volumena i poznatog prihoda po komadu .

Objekt Prihod Volumen

A 5 5B 3 4C 6 7D 6 6E 2 2

Tablica 1: Podaci za problem ranca

Sa x1, x2, x3, x4, x5 označimo broj komada pojedinog od objekta A, B, C, D, E koji trebastaviti u kontejner tako da ukupni prihod bude maksimalan. Odgovarajući ILP (ineger linearprogramming) problem možemo zapisati

Maksimizirati z = 5x1 + 3x2 + 6x3 + 6x4 + 2x5 uz uvjete

5x1 + 4x2 + 7x3 + 6x4 + 2x5 ≤ 15

xi ∈ Z+

Rješenje ovog problema (x? = (3, 0, 0, 0, 0)T , z? = 15) može se dobiti slobodno dostupnimgotovim programom:http://www.zweigmedia.com/RealWorld/LPGrapher/lpg.html

Specijalno, može se promatrati problem ranca kod kojega je xi ∈ {0, 1}. To znači da ukontejner želimo staviti po jedan primjerak od samo nekih objekata, tako da ukupni prihodbude maksimalan. U tom slučaju govorimo o 0-1 programiranju. Prethodni primjer tada bimogli formulirati na sljedeći način:

Maksimizirati z = 5x1 + 3x2 + 6x3 + 6x4 + 2x5 uz uvjete (2.1)

5x1 + 4x2 + 7x3 + 6x4 + 2x5 ≤ 15

x1 ≤ 1, x2 ≤ 1, x3 ≤ 1, x4 ≤ 1, x5 ≤ 1

xi ∈ {0, 1}

Prethodno spomenuti gotovi program ne predviđa rješavanje ovakvih problema. Zato ćemo seposlužiti Mathematica–programom

Page 4: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 4

c = {5,3,6,6,2};A = {{5,4,7,6,2}, {1,0,0,0,0}, {0,1,0,0,0}, {0,0,1,0,0}, {0,0,0,1,0}, {0,0,0,0,1}};b = {15,1,1,1,1,1};lp = LinearProgramming[(-c), (-A), (-b), Automatic, Reals];Print["Real: x*= ", lp, ", z*=", c.lp]lp = LinearProgramming[(-c), (-A), (-b), Automatic, Integers];Print["Integer: x*= ", lp, ", z*=", c.lp]

Dobivamo 0 − 1 rješenje: x?I = (1, 1, 0, 1, 0)T , z?

I = 14. Provjerite ranije spomenutim gotovim pro-gramom da kao rješenje problema (2.1), kod kojeg umjesto uvjeta xi ∈ {0, 1} tražimo xi ≥ 0, dobivamo:x?R = (1, 0, 2

7 , 1, 1)T , z?R = 14.7143. Zaokruživanjem prema dolje dobivamo: x? = (1, 0, 0, 1, 1)T , z? = 13.

Zadatak 1. Razmotrite primjer naveden kod (Barković, 2010), str.78.

2.1.2 Problem asignacijePrimjedba 1. Vrijedi:• (∀a, b ∈ R) a · b = 0 ⇔ (a = 0 ∧ b 6= 0) ∨ (a 6= 0 ∧ b = 0) ∨ (a = 0 ∧ b = 0)• ∀a, b ∈ {0, 1},

a + b = 1 ⇔ (a = 1 ∧ b = 0) ∨ (a = 0 ∧ b = 1)a + b ≤ 1 ⇔ (a = 0 ∧ b = 0) ∨ (a = 0 ∧ b = 1) ∨ (a = 1 ∧ b = 0)

n – broj ponuditelja radova;m – broj poslova;cij – cijena po kojoj i-ti ponuditelj nudi izvođenje j-tog posla;

xij ={

1, i-ti ponuditelj izvodi j-ti posao,

0, i-ti ponuditelj ne izvodi j-ti posao

2

1

3

2

1

ponuditeljiposlovi

5

6

45

23

Slika 2: Problem asignacije

(a) Treba odrediti najpovoljniju ponudu tako da svaki posao (vidi Sliku 2) bude pridružen jednomponuditelju.

Minimizirati z = 5x11 + 4x12 + 2x13 + 6x21 + 5x22 + 3x23

uz uvjete x11 + x21 = 1x12 + x22 = 1x13 + x23 = 1

xij ∈ {0, 1}

Page 5: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 5

Matrični zapis:

A1 =

1 0 0 1 0 00 1 0 0 1 00 0 1 0 0 1

b1 =

111

z = cT x→ minA1x = b1

c = ( 5 4 2 6 5 3 )T

x = (x11, x12, x13, x21, x22, x23)T

Rješenje: x? = (1, 1, 1, 0, 0, 0)T , z? = 11.

(b) Treba odrediti najpovoljniju ponudu tako da svaki posao (vidi Sliku 2) bude pridružen jednomponuditelju i da svaki ponuditelj dobije barem jedan posao.Prethodnom sustavu restrikcija treba dodati

x11 + x12 + x13 ≥ 1x21 + x22 + x23 ≥ 1

Matrični zapis:

A2 =[

1 1 1 0 0 00 0 0 1 1 1

]b2 =

[11

] z = cT x→ minA1x = b1A2x ≥ b2

c = ( 5 4 2 6 5 3 )T

x = (x11, x12, x13, x21, x22, x23)T

Rješenje: x? = (0, 1, 1, 1, 0, 0)T , z? = 12.

Zadatak 2. Za slučaj (a) i slučaj (b) napišite odgovarajuće dualne probleme. Primjenom gotovog pro-grama pronađite rješenja i protumačite njihovo značenje.Rješenje: (a) y? = (5, 4, 2)T , z? = 11, (b) y? = (5, 4, 2, 0, 1)T , z? = 12

2.1.3 Transportni problemn – broj ishodišta (skladišta);m – broj odredišta (trgovina);Ishodište i raspolaže sa Si jedinica robeOdredište j potražuje barem Dj jedinica robecij – troškovi transporta jedne jedinice robe iz ishodišta i u odredište j;xij – količina robe koja iz ishodišta i odlazi u odreište j

2

1

3

2

1

(1200)

(1000)

(1000)

(400)

(750)ishodišta

odredišta

Slika 3: Transportni problem

Page 6: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 6

Minimizirati z = 35x11 + 30x12 + 40x13 + 37x21 + 40x22 + 42x23

uz uvjete x11 + x12 + x13 ≤ 1200x21 + x22 + x23 ≤ 1000x11 + x21 ≥ 1000x12 + x22 = 400x13 + x23 = 750

xij ∈ Z+

Matrični zapis:

A =

−1 −1 −1 0 0 00 0 0 −1 −1 −11 0 0 1 0 00 1 0 0 1 00 0 1 0 0 1

b =

−1200−10001000400750

z = cT x→ minAx ≥ b

c = ( 35 30 40 37 40 42 )T

x = (x11, x12, x13, x21, x22, x23)T

Rješenje: x? = (50, 400, 750, 950, 0, 0)T , z? = 78900.

Zadatak 3. Napišite odgovarajući dualni problem. Primjenom gotovog programa pronađite rješenje iprotumačite značenja dualnih varijabli.Rješenje: y? = (2, 0, 37, 32, 42)T , z? = 78900

2.1.4 Problem trgovačkog putnikaTrgovački putnik polazi iz ishodišta (čvor 0 na Slici 4) i mora obići n čvorova (gradova), tako da ni ujedan ne dolazi više od jedanput, a da troškovi puta budu minimalni. Na Slici 4 naznačeni su troškovipojedinih dionica puta. Primijetite da je broj svih mogućih ruta jednak broju svih permutacija redosljedaobilaska gradova. Primjerice, već za relativno mali broj n = 20, broj svih mogućih obilazaka je ogroman:n! = 2432008176640000 ≈ 2.4× 1018. Slično kao i ranije, označimo:cij – procijenjeni troškovi puta i↔ j;

xij ={

1, ako je putnik prešao putod čvora i do čvora j,

0, inače

0

1

2

3

4

4040

30

2550

50

45 65

35

80

Slika 4: Problem trgovačkog putnika (0 je početak i kraj puta)

Page 7: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 7

Polazni model:

Minimizirati z =n∑

i=0

∑j 6=i

cijxij (2.2)

uz uvjete∑j 6=i

xij = 1, za svaki i = 0, 1, . . . , n

(iz i-tog čvora putnik može otići samo u jedan novi čvor)∑i 6=j

xij = 1, za svaki j = 0, 1, . . . , n

(u j-ti čvor putnik može doći samo iz jednog čvora)

xij ∈ {0, 1}

Prvo prolazno rješenje pokazuje da se pojavilo kruženje u subputu 0− 2− 1− 0:

xij 0 1 2 3 40 × 0 1 0 01 1 × 0 0 02 0 1 × 0 03 0 0 0 × 14 0 0 0 1 ×

z? = 170

Zato dodajemo novu restrikciju čime dobivamo novo rješenje s malo povećanom vrijednosti funkcije cilja:

x01 + x10 + x12 + x21 + x02 + x20 ≤ 2,

xij 0 1 2 3 40 × 1 0 0 01 1 × 0 0 02 0 0 × 1 03 0 0 0 × 14 0 0 1 0 ×

z? = 175

I drugo prolazno rješenje pokazuje da se opet pojavilo kruženje u novom subputu 0−1−0. Zato dodajemonovu restrikciju

x01 + x10 ≤ 1,

i na taj način dobivamo novo – završno rješenje s konačnom vrijednosti funkcije cilja:

xij 0 1 2 3 40 × 0 0 1 01 1 × 0 0 02 0 1 × 0 03 0 0 0 × 14 0 0 1 0 ×

z? = 195

Dakle optimalna ruta je: 0− 3− 4− 2− 1− 0, pri čemu su troškovi puta z? = 195.Primjedba 2. Problem se može definirati tako da se automatski ispituju i eliminiraju subputovi. Modelu(2.2) treba dodati sljedeće restrikcije (vidi (Vanderbei, 2001)):

tj ≥ ti + 1− (n + 1)(1− xij), i ≥ 0, j ≥ 1, i 6= j,

t0 = 0,

ti ∈ {0, 1, . . . , n}.

Na taj način u modelu se pojavljuje n2 + n + 1 varijabla.

Page 8: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 8

2.1.5 Problem najkraćeg putam – broj čvorova;n – broj lukova (bridova);cij – trošak prolaza od i-tog do j-tog čvora;

xij ={

1, ako je luk od čvora i do čvora j na putu,

0, inače

1

2

3

6

5

4

Ishodište

Odredište

6

5

6

4

17

10

28

15

10

Slika 5: Problem najkraćeg puta

Za ishodišni čvor mogu postojati samo izlazi;Za odredišni čvor mogu postojati samo ulazi;Za svaki unutrašnji čvor vrijedi: ako uđemo u njega, moramo ga i napustiti.

Minimizirati z = 15x12 + 10x13 + 6x24 + 17x26 + 8x32 + 5x34 + 10x35 + 4x45 + 6x46 + 2x56

uz uvjete x12 + x13 = 1 (ishodišni čvor 1 mora se napustiti)

x12 + x32 − x24 − x26 = 0 (unutrašnji čvor 2 )

x13 − x32 − x34 − x35 = 0 (unutrašnji čvor 3 )

x24 + x34 − x45 − x46 = 0 (unutrašnji čvor 4 )

x35 + x45 − x56 = 0 (unutrašnji čvor 5 )

x26 + x46 + x56 = 1 (mora se doći u odrdišni čvor 6 )

xij ∈ {0, 1}

x : x12 x13 x24 x26 x32 x34 x35 x45 x46 x56x? : 0 1 0 0 0 1 0 1 0 1 z? = 21.

1

2

3

6

5

4

Ishodište

Odredište

6

5

6

4

17

10

28

15

10

Slika 6: Najkraći put

Page 9: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 9

Zadatak 4. Napišite odgovarajući dualni problem. Primjenom gotovog programa pronađite rješenje iprotumačite značenja dualnih varijabli.

2.1.6 Problem maksimalnog tokam – broj čvorova;n – broj lukova (bridova);cij – prihod od i-tog do j-tog čvora; ako je ci0,j0 = 0, nećmo ići od čvora i0 prema čvoru j0;

xij ={

1, ako je luk od čvora i do čvora j na putu,

0, inače

1

2

3

6

5

4F

F

10

10

6

4

8

12

1

1

0

0

0

2

0

5

0

0

0

4

3

2

Slika 7: Problem maksimalnog toka

Maksimizirati F = x12 + x13 (maksimalni protok)

uz uvjete x12 + x32 − x23 − x24 − x26 = 0 (unutrašnji čvor 2 )x13 + x23 + x43 − x32 − x34 − x35 = 0 (unutrašnji čvor 3 )x24 + x34 + x54 − x43 − x45 − x46 = 0 (unutrašnji čvor 4 )x35 + x45 − x54 − x56 = 0 (unutrašnji čvor 5 )x26 + x46 + x56 = x12 + x13 (ono što dolazi u čvor 6 jedanako je ulazu F

x12 ≤ 10, x13 ≤ 10, x23 ≤ 1, x26 ≤ 8, x24 ≤ 6, x32 ≤ 1, x34 ≤ 4,

x35 ≤ 12, x43 ≤ 4, x45 ≤ 2, x46 ≤ 3, x54 ≤ 2, x56 ≤ 5xij ≥ 0

1

2

3

6

5

4F ? = 16

F ? = 16

10

6

3

0

8

5

0

1 0 50

3

0

Slika 8: Maksimalni tok

x : x12 x13 x23 x24 x26 x32 x34 x35 x43 x45 x46 x53 x56x? : 10 6 0 3 8 1 0 5 0 0 3 0 5 F ? = 16.

Page 10: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 10

2.1.7 Metoda kritičnog puta za planiranje realizacije projektaKontrola i evaluacija projektaKako identificirati uska grlaKoliko je neophodno vrijeme za realizaciju projekta

m – broj čvorova;n – broj lukova (aktivnosti u projektu);cij – procijenjeno vrijeme trajanja projekta od čvora i do čvor j;

xij ={

1, ako je projektna aktivnost i→ j na kritičnom putu,

0, inačeNajkraće vrijeme potrebno za realizaciju projekta uzima se kao trajanje najdužeg puta.

Za podatke iz t.2.1.5 dobivamo

x : x12 x13 x24 x26 x32 x34 x35 x45 x46 x56x? : 0 1 0 1 1 0 0 0 0 0 z? = 35.

1

2

3

6

5

4

Ishodište

Odredište

6

5

6

4

17

10

28

15

10

Slika 9: Najduži put

2.1.8 Problem minimalnih troškova toka

1

2

3

4

5

(20)

(5)

(15)

4, 8

4, 15

2, ?

6, 10 1, 15

2, 4

3, 51, 4

2, ?

Slika 10: Problem minimalnih troškova toka ovisni o troškovima i kapacitetima lukova

Page 11: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 11

Minimizirati z = 4x12 + 4x13 + 2x23 + 2x24 + 6x25 + 1x34 + 3x35 + 2x45 + x53

uz uvjete x12 + x13 ≤ 20 (ishodišni čvor 1 dozvoljava 20)

x12 − x23 − x24 − x25 = 0 (unutrašnji čvor 2 )x13 + x23 + x53 − x34 − x35 = 0 (unutrašnji čvor 3 )x24 + x34 − x45 = 5 (čvor 4 potražuje 5)x25 + x35 + x45 − x53 = 15 (čvor 5 potražuje 15)x12 ≤ 15, x13 ≤ 8, x24 ≤ 4, x25 ≤ 10, x34 ≤ 15, x35 ≤ 5, x53 ≤ 4xij ≥ 0

Rješenje:x : x12 x13 x23 x24 x25 x34 x35 x45 x53x? : 12 8 8 4 0 11 5 10 0 z? = 150.

Ovaj problem uključuje sve prethodno razmatrane probleme, tj. svaki od prethodno razmatranihproblema može se promatrati kao specijalan slučaj problema minimalnih troškova toka:

• problem maksimalnog toka razmatran u t.2.1.6 može se gledati kao tok koji maksimizira kapaciteteu mreži;

• problem najkraćeg puta razmatran u t.2.1.5 može se gledati kao tok koji minimizira troškove umreži;

• transportni problem razmatran u t.2.1.3 može se gledati kao tok koji dozvoljava višestruka ishodištai odredišta.

2.1.9 Investicijsko odlučivanjeD – kapital raspoloživ za investiranje;n – broj projekata;dj – veličina investicije u projekt j;pj – profit od projekta j;

xj ={

1, poduzeće je odlučilo investirati u projekt j,

0, poduzeće neće investirati u projekt j∑nj=1 djxj – ukupna investicija;∑nj=1 pjxj – ukupni profit;∑nj=1 dj > D – kapital raspoloživ za investiranje nije dovoljan za pokretanje svih projekata.

Primjer 3. U niže navedenoj tablici vidljive su potrebne inesticija u projekte dj, profiti po projektima pj,a u Tablici 2 rješenja problema za D = 200, 300, 400. Pri tome komparirana su rješenja koja se dobivajurealnim i cjelobrojnim linearnim programiranjem uz korištenje programskog sustava Mathematica:

Projekt I II III IV

dj 100 80 120 150pj 25 20 30 40

Page 12: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 12

Primarni ILP:

Maksimizirati z =n∑

j=1pjxj

uz uvjeten∑

j=1djxj ≤ D, (veličina ukupne investicije ≤ raspoloživi kapital)

xij ∈ {0, 1}

In[1]:=c = {25., 20., 30., 40.};A = {{100., 80., 120., 150.}, {1., 0, 0, 0}, {0, 1., 0, 0},

{0, 0, 1., 0}, {0, 0, 0, 1.}};b = {400., 1., 1., 1., 1.};lp = LinearProgramming[(-c), (-A), (-b), Automatic, Integers];Print["Integer: x*= ", lp, ", z*=", c.lp]

D x1 x2 x3 x4

Real 200 0 0 .4167 1 52.5Integer 200 0 1 1 0 50.0Real 300 .3 0 1 1 77.5Integer 300 1 1 1 0 75.0Real 400 1 .375 1 1 102.5Integer 400 1 0 1 1 95.0

Tablica 2: Projekti u koje treba investirati

2.1.10 Problem raspoređivanjaProblem se može razmatrati za medicinske sestre, vozače autobusa, kontrolore leta itd. Razmotrimoproblem rasporeda broja medicinskih sestara u bolnici.

Zahtjevi RješenjeRed.br. Perod dana Potrebno sestara Počinje smjenu Pridruženo sestara

1 8:00 - 10:00 10 10 102 10:00 - 12:00 8 5 15 (10+5)3 12:00 - 14:00 9 3 18 (10+5+3)4 14:00 - 16:00 11 2 20 (10+5+3+2)5 16:00 - 18:00 13 3 13 (5+3+2+3)6 18:00 - 20:00 8 0 8 (3+2+3)7 20:00 - 22:00 5 0 5 (2+3)8 22:00 - 24:00 3 0 3 (3)

Tablica 3: Potreban broj medicinskih sestara u bolnici

Sestre imaju 8 satno radno vrijeme organizirano po smjenama koje mogu početi od 8:00, 10:00, 12:00,14:00, 16:00 sati. Na taj način pokriva se vrijeme od 8:00 do 24:00. U tom vremenu mogu postojati manjiili veći zahtjevi za brojem sestara koji se očituju potrebom za brojem sestara u dvosatnim periodima (vidi

Page 13: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 13

primjerice Tablicu 3). Treba pokriti radno vrijeme tako da budu ispunjeni zahtjevi po periodima, a dapri tome ukupni broj sestara bude minimalan.xi - broj sestara koje počinju rad u i-toj smjeni, i = 1, 2, 3, 4, 5.

Primjerice, x1 je broj sestara u prvoj smjeni (8:00-16:00), x2 je broj sestara u drugoj smjeni(10:00-18:00) itd.

10 8 9 11 13 8 5 38 10 12 14 16 18 20 22 24

x1x2

x3

x4x5

Slika 11: Pokrivanje radnog vremena sestrama po periodima

Primarni ILP:

Minimizirati z =8∑

i=1xi

uz uvjete x1 ≥ 10, (1. period: 8:00-10:00)x1 + x2 ≥ 8, (2. period: 10:00-12:00)x1 + x2 + x3 ≥ 9, (3. period: 12:00-14:00)x1 + x2 + x3 + x4 ≥ 11, (4. period: 14:00-16:00)x2 + x3 + x4 + x5 ≥ 13, (5. period: 16:00-18:00)x3 + x4 + x5 ≥ 8, (6. period: 18:00-20:00)x4 + x5 ≥ 5, (7. period: 20:00-22:00)x5 ≥ 3, (8. period: 22:00-24:00)xij ∈ Z+

Rješenje:

Počinje smjenu u: 8 : 00 10 : 00 12 : 00 14 : 00 16 : 00x : x1 x2 x3 x4 x5

x? : 10 5 3 2 3 z? = 23.

Dakle, u prvu smjenu treba doći 10 seatara, u drugu 5, u treću 3, u četvrtu 2 i u petu smjenu 3 sestre.Na taj način pokriveni su svi zahtjevi po periodima. Na Slici 11a prikazan je broj potrebnih (tamnije) izaposlenih-pridruženih (svjetlije) sestara po periodima.

10 8 9 11 13 8 5 38 10 12 14 16 18 20 22 24

x?1 = 10

x?2 = 5

x?3 = 3

x?4 = 2

x?5 = 3

Slika 12: Pokrivanje radnog vremena sestrama po periodima

Page 14: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 14

10 12 14 16 18 20 22 24

5

10

15

20

a) Početno stanje

8 10 12 14 16 18 20 22 24

5

10

15

20

b) Stanje nakon korekcije dualom

Slika 13: Broj potrebnih (tamnije) i zaposlenih-pridruženih (svjetlije) sestara po periodima

Dualni ILP:

Maximizirati z = 10y1 + 8y2 + 9y3 + 11y4 + 13y5 + 8y6 + 5y7 + 3y8

uz uvjete y1 + y2 + y3 + y4 ≤ 1,

y2 + y3 + y4 + y5 ≤ 1,

y3 + y4 + y5 + y6 ≤ 1,

y4 + y5 + y6 + y7 ≤ 1,

y5 + y6 + y7 + y8 ≤ 1,

yij ∈ Z+

Rješenje:

y : y1 y2 y3 y4 y5 y6 y7 y8y? : 1 0 0 0 1 0 0 0 z? = 23.

Ovo pokazuje da ako u prvom (odnosno petom) periodu broj potrebnih sestara smanjimo za 1, vrijednostfunkcije cilja (ukupni broj potrebnih sestara) smanjit će se za 1. Stvarno, ako u prvom periodu (8:00-10:00) zahtjev za brojem sestara smanjimo od 10 na 9 i u petom periodu (8:00-10:00) zahtjev za brojemsestara smanjimo od 13 na 12, dobivamo novo rješenje ILP-problema

Počinje smjenu u: 8 : 00 10 : 00 12 : 00 14 : 00 16 : 00x : x1 x2 x3 x4 x5

x? : 9 4 3 2 3 z? = 21.

Ponovo su ispunjeni svi zahtjevi po periodima, ali je ukupno potreban broj medicinskih sestara smanjenza 2. Na Slici 11b prikazan je broj potrebnih (tamnije) i zaposlenih-pridruženih (svjetlije) sestara poperiodima nakon navedene korekcije.

2.1.11 Oglašavanje u marketinguU nekoj zemlji izlazi 5 dnevnih listova (novina): A,B,C,D,E, a svaki pokriva barem jednu od 9 državnihregija (vidi Tablicu 4)

x1 ={

1, ako je oglas objavljen u dnevnom listu A,

0, ako oglas nije objavljen u dnevnom listu Aitd.Primarni ILP:

Minimizirati z = 3x1 + 4x2 + 3x3 + 7x4 + 5x5

uz uvjete

Page 15: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 15

Dnevni listovi Regije koje pokriva Cijena oglasa

A 1, 2, 3 3B 2, 3, 6 4C 4, 5, 6 3D 5, 7, 8 7E 6, 8, 9 5

Tablica 4: Pojednostavljeni problem oglašavanja

x1 ≥ 1, (pokrivenost 1. regije) x2 + x3 + x5 ≥ 1, (pokrivenost 6. regije)x1 + x2 ≥ 1, (pokrivenost 2. i 3. regije) x4 ≥ 1, (pokrivenost 7. regije)x3 ≥ 1, (pokrivenost 4. regije) x4 + x5 ≥ 1, (pokrivenost 8. regije)x3 + x4 ≥ 1, (pokrivenost 5. regije) x5 ≥ 1, (pokrivenost 9. regije)xi ∈ {0, 1}

Rješenje: x : x1 x2 x3 x4 x5x? : 1 0 1 1 1 z? = 18.

2.1.12 Problem krojenja/rezanja materijalaPromatrat ćemo jednostavni jednodimenzionalni problem. Skladište dasaka, koje raspolaže daskamaduljine 10-ft, primilo je narudžbu za 50 dasaka duljine 3-ft, 65 dasaka duljine 4-ft i 40 dasaka duljine5-ft. Problem je odrediti minimalni broj dasaka duljine 10-ft kojima će se pokriti tražena narudžba.

Način rezanja 3-ft daske 4-ft daske 5-ft daske otpad (ft) broj dasaka (xi)

#1 3 0 0 1 0#2 2 1 0 0 25#3 1 0 1 2 0#4 0 1 1 1 0#5 0 2 0 2 20#6 0 0 2 0 20

Tablica 5: Načini rezanja dasaka duljine 10-ft

Najprije primijetimo da se dasaka duljine 10-ft može rezati na više načina da bi se dobile traženeduljine dasaka: 3-ft, 4-ft, 5-ft (vidi Tablicu 5).xi = broj dasaka duljine 10-ft rezanih na način #i, i = 1, 2, 3, 4, 5, 6;

Primarni ILP:Minimizirati z = x1 + x2 + x3 + x4 + x5 + x6, uz uvjete

3x1 + 2x2 + x3 ≥ 50, (zahtjev za 3-ft daskama)x2 + x4 + 2x5 ≥ 65, (zahtjev za 4-ft daskama)x3 + x4 + 2x6 ≥ 40, (zahtjev za 5-ft daskama)xi ∈ Z+

Rješenje: x : x1 x2 x3 x4 x5 x6x? : 0 25 0 0 20 20 z? = 65.

Koliki je ukupni otpad?

Page 16: Kvantitativne metode za poslovno odlučivanje V. Cjelobrojno

Kvantitativne metode 16

Primjedba 3. Radi lakšeg korištenja stručne literature, koja je najviše dostupna na engleskom jezikunavedimo neke osnovne termine.

slack variable – dopunska varijablafeasible region – dopustivo područje

initial approximation – početna aproksimacijashadow prices – cijene u sjeni

objective function – funkcija ciljainteger programming – cjelobrojno programiranje

knapsack problem – problem rancaassignment problem – problem asignacije (pridruživanja)

transportation problem – transportni problemshorthest path problem – problem najkraćeg putamaximum flow problem – problem maksimalnog toka

kritical path method – metoda kritičnog putaminimal cost flow problem – problem minimalnih troškova tokatraveling salesman problem – problem trgovačkog putnika

capital budgeting applications – investicijsko odlučivanje(???)scheduling problem – problem raspoređivanja

LiteraturaH.Bader, S. Fröhlich, Matematika za ekonomiste, original: Einführung in die Mathematik für Volks- und

Betriebswirte, s njemačkog preveo prof. Bogumir Schön, Rad, Beograd, 1980.

D.Barković, Operacijska istraživanja, drugo izdanje, Sveučilište u Osijeku, Osijek, 2010.

M. S. Bazaraa, H.D. Sherali, C.M. Shetty, Nonlinear Programming. Theory and Algorithms, 3rd Edition,Wiley, New Jersey, 2006.

D. L.Boyd, L.Vandenberghe,Convex optimization, Cambridge University Press, Cambridge, 2004

L.Čaklović, Geometrija linearnog programiranja, Element, Zagreb, 2010.

Lj.Martić, Matematičke metode za ekonomske analize II, Narodne novine, Zagreb, 1966.

Lj.Martić, Primjena matematičkih metoda u ekonomskoj analizi, Informator, Zagreb, 1971.

L.Neralić, Uvod u matematičko programiranje, Element, Zagreb, 2003.

K. Sabo, Linearno programiranje (Radni materijal za predavanja), Odjel za matematiku, Sveučilište uOsijeku, 2011.http://www.mathos.hr/lp/Materijali/predavanje16_lp.pdf

R. J.Vanderbei, Linear Programming. Fundations and Extensions, 2rd Edition, Kluwer, 2001.

G. Sierksma, Linear and Integer Programming. Theory and Practice, 2rd Edition, Marcel Dekker, NewYork, 2002.