Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku

Size: px
Start display at page:

Download "Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku"

Transcription

1 Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Mateja Dumić Cjelobrojno linearno programiranje i primjene Diplomski rad Osijek, 2014.

2 Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Mateja Dumić Cjelobrojno linearno programiranje i primjene Diplomski rad Mentor: izv. prof. dr. sc. Domagoj Matijević Komentor: Ninoslav Čerkez, IN2 d.o.o. Osijek, 2014.

3 Sadržaj 1 Uvod 2 2 Problem linearnog programiranja Osnovni pojmovi Poliedar u R n, ekstremna točka i bazično dopustivo rješenje Simpleks metoda Tableau implementacija Simpleks metode Cjelobrojno linearno programiranje Tehnike modeliranja IP problema Jaka formulacija IP problema Metode za rješavanje IP problema Cutting plane algoritam Teorija složenosti Problem svod enja i transformacije N P-teški i N P-potpuni problemi Problem optimalnog troška putovanja Opis problema Modeliranje problema Varijable i oznake u modelu IP formulacija problema Rješavanje problema Arhitektura baze podataka Aplikacija Literatura 35 8 Sažetak 36 9 Title and summary Životopis 38 1

4 1 Uvod Linearno programiranje, kao jedna od metoda optimizacije, omogućava nam modeliranje svakodnevnih problema za koje je potrebno pronaći optimalno rješenje. Zbog mogućnosti da se veliki raspon problema zapiše u obliku problema linearnog programiranja (ili kraće: LP problema), metode za rješavanje ovih problema ubrzano se razvijaju od njegovih samih početaka. Problem linearnog programiranja dan je funkcijom više varijabli koju je potrebno optimizirati te uvjetima na te varijable. Područje koje čine sve one vrijednosti varijabli koje zadovoljavaju dane uvjete nazivamo dopustivo područje rješenja LP problema. Ponekad kao dopustivo područje rješenja za LP problem imamo neki diskretni skup, te nam rješenja ne mogu poprimiti bilo koji broj iz skupa realnih brojeva. Na primjer, ukoliko računamo koliko je potrebno radnika, a koliko strojeva da bi se optimizirala proizvodnja nekog proizvoda, onda nam ne odgovara dobiti racionalni broj radnika ili racionalni broj strojeva, a zaokruživanjem na manji ili na veći broj ne moramo nužno dobiti rješenje koje zadovoljava sve dane uvjete u što ćemo se i uvjeriti u radu. Općenito, u diskretnom optimizacijskom problemu tražimo x F, pri čemu je F diskretan skup, koji optimizira funkciju cilja f(x). Preciznije rečeno x predstavlja točku minimuma ili maksimuma funkcije f(x) ovisno promatramo li minimizacijski ili maksimizacijski problem, tj: f(x ) f(x), x F ili f(x ) f(x), x F. Diskretni problem optimizacije ima važnu ulogu u znanosti i inžinjerstvu, što ćemo imati priliku vidjeti kroz primjere dane u ovom radu. Logičan i sistematičan način proučavanja diskretnog problema optimizacije leži u iskazivanju tog problema u obliku cjelobrojnog linearnog programiranja (integer linear programming, u daljnjem tekstu: IP) koje je središnja tema proučavanja ovog rada. Cjelobrojno linearno programiranje zapravo predstavlja specijalni slučaj linearnog programiranja, te kako bi ga uopće mogli definirati prvo ćemo uvesti odred ene definicije i tvrdnje vezane uz samo linearno programiranje te se pobliže upoznati sa simpleks metodom, kao jednom od metoda koja u praksi daju dobre rezultate prilikom rješavanja LP problema. Osim toga, vidjet ćemo da odred ene tvrdnje koje nam olakšavaju rješavanje LP problema, zbog diskretnosti dopustivog područja rješenja IP problema nisu primjenjive prilikom rješavanja IP problema. Ta činjenica, kao i činjenica nepostojanja algoritma za rješavanje IP problema u polinomijalnom vremenu, će nas dovesti do zaključka da su IP problemi teži od LP problema te do definiranja nove klase unutar teorije složenosti: klase N P-teških problema. Pripadnost nekog problema klasi N P-teških problema predstavlja svojevrsno ograničenje jer ne možemo sa sigurnošću tvrditi da je moguće pronaći algoritam koji će uspjeti pronaći rješenje za te probleme, no ona za sobom ne povlači nužno i nerješivost problema. Naprotiv, postoje mnoge metode koje u praksi vrlo lako rješavaju takve probleme pri tom dajući rješenja koja su prihvatljiva u praktične svrhe. Neke od takvih metoda za rješavanje IP 2

5 problema ćemo spomenuti u ovom radu, a detaljnije obraditi cutting plane metodu koja se ubraja u takve. U radu ćemo modelirati i jedan od problema iz svakodnevnog života, a koji se može modelirati pomoću IP problema. Radi se o problemu odred ivanja optimalnog broja prijevoznih sredstava potrebnih za prijevoz djelatnika neke firme na službeni put u cilju optimiziranja putnih troškova. Prilikom modeliranja ovog problema bilo je važno pronaći model koji ispunjava sve zahtjeve, a ujedno ne sadrži preveliki broj varijabli, kako bi problem bio rješiv u prihvatljivom vremenu. Sam rad je podijeljen na nekoliko djelova. U prvom djelu rada susrest ćemo se s pojmovima koju su vezani općenito uz linearno programiranje, a koji su nam potrebni za detaljnije proučavanje cjelobrojnog linearnog problema. Zatim, u drugom djelu upoznat ćemo se s cjelobrojnim linearnim programiranjem kao specijalnim oblikom linearnog programiranja, tehnikama za modeliranje takvih problema te pokušati otkriti kako dobro formulirati problem cjelobrojnog linearnog problema. Treći dio nam donosi metode koje se koriste za rješavanje cjelobrojnih problema te se detaljnije bavi s jednom od njih. Metoda koja je detaljnije obrad ena u radu je cutting plane algoritam koji predstavlja svojevrsno rezanje, odnosno smanjivanje dopustivog područja rješenja sve dok se ne pronad e optimalno cjelobrojno rješenje. U zadnjem teorijskom djelu pobliže ćemo razmotriti činjenicu da su problemi cjelobrojnog programiranja općenito teško rješivi problemi. U posljednjem poglavlju ovog rada opisan je jedan konkretni problem koji je moguće modelirati i riješiti kao problem cjelobrojnog linearnog programiranja. Problem koji je iznesen je problem optimalnog troška putovanja prilikom odlaska djelatnika na službena putovanja. Formulacija ovog problema kao i rješenje dano u obliku web aplikacije rad eni su u suradnji s kolegicom Rebekom Čordaš pod vodstvom mentora izv. prof. dr. sc. D. Matijevića, dok ideja samog problema dolazi od strane kompanije IN2. 3

6 2 Problem linearnog programiranja Linearno programiranje je optimizacijska metoda kojom se traži optimalna vrijednost linearne funkcije više varijabli uz odred ene uvjete na te varijable. Svoje početke doživljava za vrijeme Drugog svjetskog rata gdje se razvija zbog potrebe minimizacije troškova vojske. Osobiti razvoj doživljava nakon otkrića Simpleks metode (Dantzig, 1947.), numeričke metode za rješavanje linearnog problema, koja i danas predstavlja osnovnu metodu za rješavanje problema linearnog programiranja. Razvojem računala, koja su uvelike ubrzala rješavanje linearnog problema, linearno programiranje postaje jedna od nezaobilaznih metoda prilikom rješavanja problema optimizacije (npr. problem transporta, optimalne prehrane, problem potrošnje energije i sl.). U ovom poglavlju donosimo osnovne definicije i tvrdnje vezane uz linearno programiranje, koje će nam kasnije omogućiti detaljnije proučavanje problema cjelobrojnog programiranja. 2.1 Osnovni pojmovi Za početak definirajmo problem linearnog programiranja: Definicija 1. Optimizacijski problem: uz uvjete: f(x) = c τ x min (i) a τ i x b i, i M 1 (ii) a τ i x b i, i M 2 (iii) a τ i x = b i, i M 3 pri čemu je f : R n R te c R n, a i R n, b i R, i M N, M skup indeksa za koji vrijedi M 1 M 2 M 3 = M i M i Mj, i j zovemo problem linearnog programiranja (kraće: LP problem). Funkciju f zovemo funkcija cilja, a vektor c vektor cijene. Vektor x R n sa svojstvima (i) (iii) zovemo dopustivo rješenje. Skup svih dopustivih rješenja zovemo dopustivo područje. Za dopustivo rješenje kažemo da je optimalno dopustivo rješenje ako je: f(x ) = c τ x c τ x = f(x) 4

7 Napomena 2.1. Uočimo kako vrijedi sljedeće: (i) maksimizacijski problem c τ x max može se svesti na minimizacijski problem c τ x min (ii) a τ i x = b i (a τ i x b i ) (a τ i x b i ) (iii) a τ i x b i a τ i x b i (iv) Svaki LP problem može se zapisati kao: c τ x min uz uvjete: Ax b pri čemu je A R m n, x R n, b R m, c R n te n broj varijabli, a m broj uvjeta. Definicija 2. Ako su A R m n, b R m, c R n onda se minimizacijski problem: c τ x min uz uvjet: Ax = b, x 0 zove standardni oblik LP problema ili kraće: SOLP. Uvjet x 0 zovemo uvjet nenegativnosti. Propozicija 2.2. Svaki LP problem može se prikazati kao SOLP. Ako neka varijabla ne zadovoljava uvjet nenegativnosti onda je zovemo slobodna varijabla. U skladu s definicijom SOLP-a zaključujemo da u SOLP-u nema slobodnih varijabli. 5

8 2.2 Poliedar u R n, ekstremna točka i bazično dopustivo rješenje Definicija 3. Neka su A R m n, b R m. Skup zovemo poliedar u R n. {x R n : Ax = b, x 0} R n Definicija 4. Neka je a R n, a 0, b R. Skup {x R n : a τ x = b} zovemo hiperravnina s vektorom normale a. Definicija 5. Neka je P poliedar u R n. Vektor x P je ekstremna točka poliedra P ako ne postoje vektori y, z P, y x i z x i skalar λ [0, 1] takvi da je x = λy + (1 λ)z. Ekstremnu točku interpretiramo kao onu točku poliedra koja se ne može zapisati kao netrivijalna kombinacija točaka iz poliedra, odnosno ako neka točka leži na segmentu neke dvije točke sadržane u poliedru tada ta točka nije ekstremna točka. Definicija 6. Neka je P poliedar iz R n. Vektor x R n je vrh poliedra ako postoji c R n takav da je c τ x < c τ y za y P takav da y x. Vrh poliedra je ona točka poliedra kroz koju možemo odrediti hiperravninu sa svojstvom da se sve točke poliedra osim nje same nalaze s iste strane hiperravnine. Kako bi definirali bazično i bazično dopustivo rješenje potrebne su nam sljedeće dvije definicije: Definicija 7. Ako za vektor x vrijedi a τ i 0 x = b i0 za neki i 0 M, gdje je M skup indeksa, onda kažemo da je uvjet s indeksom i 0 aktivan u x. Indeks i 0 zovemo aktivni indeks. Definicija 8. Za vektore a 1, a 2,, a k kažemo da su linearno nezavisni ako za sve skalare λ 1,, λ k R vrijedi: λ 1 a 1 + λ 2 a λ k a k = 0 λ 1 = = λ k = 0. U suprotnom kažemo da su vektori a 1, a 2,, a k linearno zavisni. Definirajmo sada i bazično i bazično dopustivo rješenje: Definicija 9. Neka je P poliedar u R n zadan na sljedeći način: a τ i x b i, i M 1 a τ i x b i, i M 2 a τ i x = b i, i M 3 te neka je I = {i M 1 M 2 M 3 : a τ i x = b i } skup indeksa aktivnih u vektoru x R n. 6

9 za vektor x R n kažemo da je bazično rješenje (kraće: BR) ako vrijede sljedeća dva uvjeta: (i) svi uvjeti koji sadrže jednakosti aktivni su u x (ii) skup {a i : i I} sadrži n linearno nezavisnih vektora bazično rješenje x R n koje zadovoljava sve uvjete zovemo bazično dopustivo rješenje (kraće: BDR). Sljedeći teorem nam donosi poveznicu izmed u vrha i ekstremne točke poliedra te bazičnog dopustivog rješenja. Teorem 2.3. Neka je P poliedar i neka je x P. Sljedeće tri tvrdnje su ekvivalentne: (i) x je vrh poliedra (ii) x je ekstremna točka poliedra (iii) x je bazično dopustivo rješenje Kako bi mogli konstruirati bazično dopustivo rješenje potrebne su nam još neke definicije i tvrdnje. Neka je zadan poliedar: P = {x R n : Ax = b, x 0}, A R m n, b R m, m < n. Pretpostavimo da je rang(a) = m < n 1, odnosno da je matrica punog ranga 2 i neka je x bazično dopustivo rješenje. Kako je x R n odnosno ima n komponenti zaključujemo kako i uvjeta nenegativnosti ima n, dok sustav linearnih jednadžbi Ax = b se sastoji od m jednadžbi. Prema definiciji BDR-a treba postojati n linearno nezavisnih uvjeta koji su aktivni u x. Zbog definicije poliedra svi uvjeti Ax = b moraju biti zadovoljeni, čime dobivamo m aktivnih indeksa u x pa zaključujemo da med u uvjetima nenegativnosti mora biti n m aktivnih indeksa, odnosno vektor x mora imati n m komponenti jednakih 0. Teorem 2.4. Neka je P = {x R n : Ax = b, x 0}, A R m n, b R m, m < n te rang(a) = m. Vektor x R n je bazično rješenje onda i samo onda ako je Ax = b te ako postoje indeksi B(1), B(2)..., B(m) takvi da vrijedi: (i) stupci A B(1),..., A B(m) su linearno nezavisni (ii) ako je i / {B(1),..., B(m)}, onda je x i = 0. 1 rang(a) je oznaka za rang matrice i predstavlja broj linearno nezavisnih stupaca matrice 2 matrica je punog ranga ako je broj linearno nezavisnih stupaca jednak broju linearno nezavisnih redaka 7

10 Procedura za konstrukciju bazičnog rješenja (i) odabrati m linearno nezavisnih stupaca matrice A, označimo ih s A B(1),..., A B(m) (ii) staviti x i = 0, i / {B(1),..., B(m)} (iii) riješiti sustav: pri čemu je: Bx B = b B = [ ] A B(1),..., A B(m), xb = x B(1). x B(m) (iv) vektor x = [x 1,..., x n ] τ { 0, j / {B(1),..., B(m)} x j = x B(i), j = B(i) je bazično rješenje. Varijable x B(1),..., x B(m) nazivamo bazičnim varijablama, vektore A B(1),..., A B(m) bazičnim vektorima, a indekse B(1),..., B(m) bazičnim indeksima. Matrica B predstavlja matricu baze. Uvedimo još definiciju degenerativnog bazičnog rješenja. Definicija 10. Neka je P = {x R n : a τ i x b i, i = 1,..., m}. Za bazično rješenje x R n kažemo da je degenerativno ako je više od n uvjeta aktivno u x. Definicija 11. Neka je P = {x R n : Ax = b, x 0}, A R m n, b R m poliedar u standardnom obliku te neka je x bazično rješenje. Vektor x je degenerativno bazično rješenje ako je više od n m komponenti od x jednaka Simpleks metoda Simpleks metoda je jedna od metoda za rješavanje LP problema. Ubraja se u numeričke iterativne metode, a razvio ju je George Dantzig krajem 20. stoljeća. Prilikom rješavanja LP problema kreće se od početnog bazičnog rješenja, koje mora biti dopustivo, te koje se kroz niz koraka (iteracija) poboljšava dok se ne postigne optimalno rješenje u skladu s postavljenim ciljevima. 8

11 Neka je P = {x R n : Ax = b, x 0} R n poliedar te neka je zadan LP problem: c τ x min uvjeti: Ax = b, x 0. Osnovna ideja simpleks metode dana je sljedećim algoritmom: Algoritam - Simpleks metoda (i) odaberimo jedno BDR (ii) ponavljati: provjeriti sve bridove poliedra P koji izlaze iz odabranog BDR-a ako: postoji brid po kojem možemo smanjiti vrijednost funkcije cilja idemo po tom bridu sve dok ne dod emo do sljedećeg BDR-a, ako takvo BDR ne postoji poliedar je neomed en i vrijednost funkcije cilja je inače: vrati BDR Brojni su načini za implementaciju simpleks metode. Neki od njih su korištenje sustava ograničavajućih jednadžbi (dopustivost i optimalnost) 3 te tableau implementacija koju ćemo u kratkim crtama obraditi u ovom radu Tableau implementacija Simpleks metode Neka su A R m n, b R m i neka je zadan LP problem u SOLP obliku: c τ x min uvjeti: Ax = b, x 0, x R n. Označimo s B R m m pripadnu matricu baze nekog BDR-a. regularna. Osim toga vrijedi: Znamo da je tada B Ax = b B 1 Ax = B 1 b. Proširenu matricu B 1 [b A] R m (n+1), kojom zapisujemo uvjete LP problema nazivamo simplex tablaeu. Stupac B 1 b se naziva nulti redak simplex tablaeua, a stupci B 1 A j, j 1,..., m predstavljaju j-ti stupac tablaeua. Simplex tablaeu se obično dodaje tzv. nulti redak [ c τ B B 1 b, c τ c τ B B 1 A] te dobivamo prošireni tablaeu: 3 detaljnije: pogledati u [1] 9

12 c τ B B 1 b B 1 b c τ c τ B B 1 A B 1 A Vektor c τ c τ B B 1 A nazivamo vektor utjecaja. Na osnovu sljedećeg teorema, a pomoću vektora utjecaja, možemo zaključiti kada je simpleks tablaeu završen, odnosno kada je pronad eno optimalno rješenje. Teorem 2.5. Neka je x bazično dopustivo rješenje, a B odgovarajuća matrica baze i c vektor utjecaja (i) ako je c 0, onda je x optimalno rješenje (ii) ako je x optimalno i nedegenerativno rješenje, onda je c 0. Rješavanje simplex tablaeua je iterativni postupak, a jedna iteracija je dana sljedećim postupkom. 1. pronaći nedegenerativno BDR, pripadnu matricu baze B te izračunati pripadni simplex tablaeu 2. pogledati vektor utjecaja, ukoliko su mu sve komponente pozitivne tada smo dobili optimalno rješenje, a inače odabrati indeks j takav da je j-ta komponenta c j vektora utjecaja negativna. 3. pregledati j-ti stupac tablaeua u = B 1 A j, koji nazivamo pivot stupac, ukoliko su mu sve vrijednosti negativne, tada je optimalna vrijednost funkcije cilja i algoritam završava x 4. pronaći indeks l takav da je: argmin B(i) ui >0,i=1,...,m u i, tada stupac A B(l) izlazi iz baze, a umjesto njega u bazu ulazi stupac A j. 5. l-ti redak, kojeg zovemo pivot redak potrebno je pomnožiti sa skalarom takvim da element koji se nalazi na presjeku pivot retka i pivot stupca (pivot element) postane 1, ostalim recima je potrebno dodati pivot redak pomnožen s takvim skalarom da svi elementi pivot stupca, osim pivot elementa nakon toga postanu 0. Uočimo kako u gornjem postupku nije točno odred eno koji stupac odabrati ukoliko postoji više negativnih komponenti vektora utjecaja. Ukoliko dod e do krivog odabira simpleks metoda ne mora završiti u konačnom broju koraka. Kako bi se to izbjeglo koristi se tzv. Blandovo pravilo koje glasi: 1. Med u svim nebazičnim varijablama pogodnim za ulazak u bazu, odabiremo onu s najmanjim indeksom 10

13 2. Med u svim bazičnim varijablama pogodnim za izbacivanje iz baze odabiremo onu s najmanjim indeksom. Da se tada radi o dobrom izboru jamči nam sljedeći teorem: Teorem 2.6. Ako krenemo od nedegenerativnog BDR-a i koristimo Blandovo pravilo simpleks metoda će završiti u konačno mnogo koraka. Riješimo jedan LP problem pomoću simpleks tablaeua. Primjer 2.1. Pronad i optimalno rješenje sljedećeg LP problema: x 1 2x 2 min 4x 1 + 6x 2 9 x 1 + x 2 4 x 1, x 2 0 Rješenje: Prvo zapišimo dani LP problem u SOLP obliku: x 1 2x 2 min 4x 1 + 6x 2 + x 3 = 9 x 1 + x 2 + x 4 = 4 x 1, x 2, x 3, x 4 0 Odnosno ukoliko zapišemo LP problem u obliku: c τ x min Ax = b, x 0 imamo: [ ] [ ] A =, b =, c τ = [ ] Za početno bazično dopustivo rješenje uzmimo x = (0, 0, 9, 4). Pripadna matrica baze je: [ 1 ] 0 B = 0 1 = I Dobivamo sljedeći simpleks tablaeu: 11

14 x 3 = x 4 = Vidimo da je jedino druga komponenta vektora utjecaja negativna tako da je drugi stupac pivot stupac, oba elementa pivot stupca su pozitivna pa računanjem omjera zaključujemo da je prvi redak pivot redak. Stoga u bazu nam ulazi x 2 a izlazi x 3. Pivot redak treba pomnožiti s 1/6, te nakon toga pomnožen s 2 dodajemo nultom retku odnosno pomnožen s 1 drugom retku. Nakon navedenih operacija, simpleks tablaeu ima sljedeće vrijednosti: x 2 = x 4 = Vektor utjecaja opet ima samo jednu negativnu komponentu pa lako zaključujemo da je pivot stupac prvi stupac, a kako u tom stupcu je samo jedan element pozitivan zaključujemo da je pivot redak drugi redak. U skladu s tim iz baze izlazi x 4, a ulazi x 1. Pivot redak pomnožimo s 3/5, a zatim pomnožen s 1/3 dodamo nultom stupcu, odnosno s 2/3 prvom stupcu. Dobivamo sljedeći tablaeu: x 2 = x 1 = Uočimo kako vektor utjecaja ima sve komponente pozitivne, što znači da je algoritam završio. Optimalno rješenje, dano u polaznim varijablama je: x = (3/2, 5/2), a vrijednost funkcije cilja iznosi 7/2. Za kraj odredimo još vremensku složenost simpleks metode implementirane preko tablaeua. U svakoj iteraciji potrebno je izračunati vrijednosti tableau. Ukoliko pretpostavimo da se problem sastoji od n varijabli i m uvjeta, tada se simpleks tablaeu sastoji od (m + 1) (n + 1) polja, odnosno za izračun vrijednosti tablaeua potrebno je O (mn) vremena. Zatim, potrebno je proći kroz nulti redak tablauea i provjeriti postoji li negativna komponenta unutar vektora utjecaja te odrediti pivot stupac primjenjujući pri tom Blandovo pravilo. Za navedene radnje potrebno je O (n) vremena. Nakon odred ivanja pivot stupca, potrebno je obaviti O (m) izračuna kako bi se odredio pivot redak. Zaključujemo da unutar jedne iteracije simpleks metode je potrebno O (mn) + O (m) + O (n) = O (mn) vremena. Potrebno je još odrediti broj ponavljanja iteracija, odnosno broj pivotiranja. Najbolji slučaj bi bio onaj u kojem smo krenuli od optimalnog BDR-a, odnosno simpleks metoda bi završila već nakon izračuna prvog tablaeua, dok najgori slučaj je onaj u kojem je potrebno 12

15 proći kroz sve vrhove poliedra kako bi došli do optimalnog rješenja. Da uistinu postoji problem u kojem će doći do slučaja kada će se posjetiti svi vrhovi prije pronalaska onog optimalnog dokazali su Klee i Minty. Naime, Klee i Minty su godine uspjeli konstruirati primjer u kojem poliedar definiran uvjetima problema ima eksponencijalno mnogo vrhova te u kojem je potrebno posjetiti sve vrhove kako bi se došlo do optimalnog rješenja (vidi [2]). Kako poliedar ima eksponencijalno mnogo vrhova, i kako se prilikom rješavanja problema posjeti svaki od njih, zaključujemo da broj ponavljanja jedne iteracije simpleks metode takod er eksponencijalan te time da je i vrijeme izvršenja algoritma eksponencijalno. Zbog mogućnosti pronalaska takvih primjera, simpleks algoritam spada u klasu algoritama s eksponencijalnim vremenom izvršenja. No bitno je napomenuti da su takvi primjeri u praksi vrlo rijetki, te da simpleks algoritam u praksi ima vrlo dobre performanse. 13

16 3 Cjelobrojno linearno programiranje Cjelobrojno linearno programiranje je oblik linearnog programiranja u kojem su neke varijable restringirane na cjelobrojne vrijednosti. S obzirom na restrikcije na odred ene varijable razlikujemo problem mješovitog cjelobrojnog programiranja i problem cjelobrojnog programiranja. Definicija 12. Neka su dane matrice A, B R m n, i vektori c, d R n, b R m tada problem: c τ x + d τ y min uz uvjete: Ax + By = b x, y 0, x Z n, y R n nazivamo problem mješovitog cjelobrojnog programiranja (ili kraće: MILP). Vektor y iz definicije 12 nazivamo još i kontinuirana varijabla, te ukoliko ona ne postoji problem mješovitog cjelobrojnog programiranja prelazi u problem cjelobrojnog programiranja. Pa dolazimo do sljedeće definicije: Definicija 13. Neka je dana matrica A R m n i vektori c R n, b R m. Tada problem: c τ x min uz uvjete: Ax = b x 0, x Z n nazivamo problem cjelobrojnog programiranja (ili kraće: IP). Ukoliko vektor x iz definicije 13 postiže isključivo vrijednosti 0 ili 1 tada taj problem nazivamo binarni problem cjelobrojnog programiranja (eng. zero-one or binary integer programming ili skraćeno ZOIP). Osim toga uobičajena je i pretpostavka da matrice A, B, te vektori b, c, d iz definicija 12 i 13 imaju cjelobrojne komponente. S obzirom da je skup mogućih rješenja problema binarnog i cjelobrojnog linearnog programiranja manji lako bi se moglo pomisliti da se ti problemi rješavaju barem toliko efikasno koliko problemi linearnog programiranja ako ne i lakše. No nažalost to nije tako. Iako se na prvi pogled čini da mogućih rješenja LP problema ima beskonačno mnogo, odnosno da rješenje može biti bilo koja točka unutar dopustivog područja, u prethodnom poglavlju smo već napomenuli kako optimalno rješenje nekog LP problema je nužno i vrh poliedra 14

17 odred enog uvjetima promatranog problema (vidi teorem 2.3 ) te je stoga potrebno ispitati samo vrhove tog poliedra. Osim toga, ukoliko imamo dvije točke koje su dopustive, onda bilo koja točka koja se nalazi na njihovoj poveznici je dopustiva (jer je svaki poliedar P iz R n konveksan 4 skup) 5. Prilikom rješavanja LP problema, kao brid po kojem ćemo se kretati prema sljedećem BDR-u odabiremo onaj koji smanjuje vrijednost funkcije cilja što nam dodatno olakšava pronalazak optimalnog rješenja. No situacija s IP problemima je znatno različita. Promotrimo to na sljedećem jednostavnom IP problemu: 2x 1 x 2 min uz uvjete: 3x 1 + 2x x 1 + 3x 2 16 x 1, x 2 0, x 1, x 2 Z. Dopustivo područje ovog IP problema na slici 3.1 prikazano je u osjenčanom djelu pomoću rombova koji predstavljaju točke s cjelobrojnim komponentama. Slika 3.1: Dopustivo područje zadanog IP problema 4 skup K je konveksan ukoliko za svaki x, y K i svaki λ (0, 1) vrijedi λx + (1 λ) y K 5 dokaz ove tvrdnje je dan u [1] 15

18 Prvo što uočavamo je postojanje vrhova poliedra koji nisu cjelobrojni, točnije samo vrh (0, 0) je cjelobrojan no on nije optimalno rješenje jer funkcija cilja npr. u točki (1, 1), koja je dopustiva, postiže manju vrijednost. Stoga zaključujemo da provjerom vrijednosti funkcije cilja samo u vrhovima ne dolazimo do rješenja IP problema, štoviše ne postoji neka generalna tvrdnja koja nam otkriva lokaciju optimalnog rješenja ili znatno smanjuje potragu za njim kao što to čini tvrdnja teorema 2.3 u rješavanju LP problema. Nadalje, cijela poveznica dviju dopustivih točaka IP problema nije sadržana u dopustivom području, koje kod IP problema nije konveksan skup, što znači da je potrebno prvo otkriti cjelobrojne točke problema te se kretati isključivo po skupu pronad enih točaka kako bi se očuvala dopustivost rješenja, no uzorak za takvo kretanje nije uvijek lako pronaći. Jedna od ideja koja bi nam se mogla javiti za rješavanje IP problema je zasigurno sljedeća: prvo riješiti LP problem izveden iz IP problema na način da je izostavljen uvjet cjelobrojnosti na varijable, te rješenje takvog problema zaokružiti na cjelobrojne vrijednosti. No, ukoliko taj način razmišljanja primjenimo na prethodni primjer lako ćemo utvrditi da on ne dovodi do optimalnog rješenja. Naime, optimalno rješenje danog problema u kojem je izostavljen uvjet cjelobrojnosti je točka (20/3, 0). Uočavamo da je druga komponenta cjelobrojna, te da je zaokruživanje potrebno napraviti samo na prvoj. Ukoliko prvu komponentu zaokružimo na 7 dobivamo točku (7, 0) koja nije dopustiva, a ako zaokružimo na 6 dobivamo točku (6, 0) koja iako je dopustiva nije optimalno rješenje jer funkcija cilja danog IP problema u točki (6, 1), koja je ujedno i optimalna za ovaj IP problem, postiže manju vrijednost. Iz gornjeg razmatranja možemo zaključiti kako je rješavanje cjelobrojnog i binarnog programiranja općenito teže i zahtjevnije od rješavanja problema linearnog programiranja. Jedini slučaj u kojem je rješavanje problema cjelobrojnog programiranja jednako teško kao i rješavanje linearnog problema je onda kada LP problem izveden iz danog IP problema na način da je jedino izostavljen uvjet cjelobrojnosti varijabli, daje cjelobrojno rješenje. U tom slučaju optimalno rješenje LP problema je ujedno i rješenje IP problema jer takvo rješenje zadovoljava i izostavljeni uvjet. No taj slučaj je u praksi, kako je i za očekivati, vrlo rijedak. 3.1 Tehnike modeliranja IP problema Važna upotreba binarnog linearnog programiranja je u modeliranju problema izbora izmed u dvije alternative. Komponenta optimalnog rješenja x može biti postavljena na 0 ili 1 ovisno o odabiru alternative. Primjer ruksak problem Na raspolaganju imamo n stvari, j-ta stvar ima težinu w j i vrijednost c j. Potrebno je u ruksak spremiti stvari čija ukupna težina ne prelazi K, a koje daju najveću moguću ukupnu vrijednost spremljenog u ruksak. 16

19 Rješenje: U svrhu modeliranja ovog problema definiramo binarnu varijablu x j koja poprima vrijednost 1 ukoliko je j-ta varijabla odabrana, a inače 0. Tada problem možemo formulirati na sljedeći način: n c j x j max uz uvjete: j=1 n w j x j K j=1 x j {0, 1}, j = 1,... n. U diskretnim problemima optimizacije česta pojava su uvjeti koji su med usobno zavisni. Na primjer, odluka A može biti donesena jedino ako je odluka B donesena. Kako bi modelirali takvu situaciju uvodimo binarnu varijablu x, odnosno y, koja poprima vrijednost 1 ukoliko je donesena odluka A, odnosno odluka B, a inače je 0. Tada ovisnost tih dviju odluka modeliramo uvjetom: x y. Razmotrimo ispravnost gornjeg uvjeta: ukoliko je y = 0 (tj. odluka B nije donesena) tada je zasigurno i x = 0 odnosno odluka A ne može biti donesena, a ako je y = 1 tada x = 0 ili x = 1 što znači da odluka A može i ne mora biti donesena. Primjer 3.2. (Problem lokacije postrojenja) Pretpostavimo da imamo n potencijalnih lokacija postrojenja i listu od m klijenata koje je potrebno opskrbiti iz tih postrojenja. Osim toga, poznati su trošak otvaranja postrojenja na lokaciji j i on iznosi c j, te trošak opskrbe klijenta i iz postrojenja j koji iznosi d ij. Cilj je odabrati skup lokacija postrojenja koji minimizira ukupni trošak opskrbe, pod uvjetom da je svakom klijentu pridjeljeno točno jedno postrojenje koje će ga opskrbljivati. Rješenje: Kako bi modelirali ovaj problem, uvodimo binarnu varijablu y j koja iznosi 1 ako je j-ta lokacija odabrana, odnosno 0 ukoliko nije odabrana. Potrebno je uvesti i binarnu varijablu x ij koja je jednaka 1 ako se i-ti klijent opskrbljuje s j-te lokacije, odnosno 0 ako mu nije pridružena j-ta lokacija. Tada gornji problem možemo zapisati u sljedećem obliku: n c j y j + j=1 m n d ij x ij min i=1 j=1 17

20 uz uvjete: n x ij = 1, i j=1 x ij y j, i, j x ij, y j {0, 1}, i, j 3.2 Jaka formulacija IP problema U linearnom programiranju, dobra formulacija problema je ona koja ima mali broj varijabli i uvjeta, jer kompleksnost problema polinomijalno raste s porastom varijabli i uvjeta. No, zbog postojanja više efikasnih algoritama za rješavanje LP problema sama formulacija ne utječe drastično na mogućnost pronalaska rješenja. No kod cjelobrojnog linearnog programiranja situacija je prilično drugačija, te je od ključne važnosti odabir dobre formulacije. Zbog toga u ovom poglavlju će biti iznesene smjernice za jaku formulaciju cjelobrojnog linearnog programiranja. Kao ključni dio te formulacije uvest ćemo pojam relaksacije linearnog programiranja. Definicija 14. Neka je dan MILP: c τ x + d τ y min uz uvjete: Ax + By = b x, y 0, x Z n, y R n pri čemu su A, B R m n dane matrice, a c, d R n, b R m dani vektori. Relaksacija linearnog programiranja danog MILP-a se definira kao: c τ x + d τ y min uz uvjete: Ax + By = b x, y 0, x, y R n, gdje je relaksiran zahtjev da je vektor x cjelobrojan. Nadalje, ako je cjelobrojna varijabla x j iz MILP-a poprimala isključivo vrijednosti 0 i 1, tada je relaksacija na x j dana kao x j 0, 1. Napomena 3.1. Ukoliko je optimalno rješenje relaksacije linearnog programiranja dopustivo za MILP, tada je ono ujedno i njegovo optimalno rješenje. 18

21 Primjer 3.3. (Problem lokacije postrojenja - alternativna formulacija problema) U primjeru 3.2. susreli smo se s IP problemom lokacije postrojenja. Razmotrimo sada i alternativnu formulaciju ovog problema: n c j y j + j=1 m n d ij x ij min i=1 j=1 uz uvjete: n x ij = 1, i j=1 m x ij my j, j i=1 x ij, y j {0, 1} i, j Alternativna formulacija od one iz primjera 3.2 razlikuje se samo u drugom uvjetu, pa provjerimo jesmo li promjenom tog uvjeta narušili originalnu formulaciju. Ukoliko je y j = 0 uvjet m i=1 x ij my j j osigurava da su x ij = 0 i, j, odnosno ako je y j = 1 tada omogućava da x ij = 1 i, j. Pa zaključujemo da je ovaj uvjet ekvivalentan uvjetu x ij y j, i = 1,..., m, odnosno zaključujemo da je optimalno rješenje u obje formulacije ovog problema jednako. Ono po čemu se razlikuju ove dvije formulacije je broj uvjeta. U originalnoj formulaciji imamo m + mn uvjeta, dok je taj broj u alternativnoj formulaciji manji i iznosi m + n uvjeta. Kako bi usporedili ove dvije formulacije, razmotrimo njihove relaksacije, odnosno uvjet x ij, y j {0, 1} i, j zamijenimo s uvjetom 0 x ij 1, 0 y ij 1 i, j. Označimo s P OF skup dopustivih rješenja relaksacije originalne formulacije problema lokacije postrojenja, a s P AF skup dopustivih rješenja relaksacije alternativne formulacije. Ti skupovi su poliedri koji imaju sljedeći zapis: { } n P OF = (x, y) R n : x ij = 1, x ij y j, 0 x ij 1, 0 y j 1, i, j P AF = { (x, y) R n : j=1 n x ij = 1, j=1 } m x ij my j, 0 x ij 1, 0 y j 1, i, j i=1 Uočimo da je P OF P AF, odnosno skup dopustivih rješenja relaksacije originalne formulacije je bliži skupu dopustivih rješenja originalnog problema, od skupa dopustivih rješenja relaksacije alternativne formulacije. 19

22 Označimo optimalnu cijenu problema cjelobrojnog programiranja lokacije postrojenja s C IP, a optimalne cijene relaksacija tog problema koje smo gore uveli s C OF i C AF. Tada zbog P OF P AF i činjenice da optimalno rješenje IP problema pripada poliedru P OF vrijedi: C AF C OF C IP. Dane nejednakosti nam ukazuju na to da što je dopustivo područje relaksiranog problema bliže dopustivom području rješenja IP problema i optimalno rješenje relaksiranog problema je bliže optimalnom rješenju IP problema. Općenito je moguće da linearna relaksacija originalne formulacije (koja ima veći broj varijabli od alternativne formulacije) ima cjelobrojno rješenje, koje je onda i rješenje IP problema, dok linearna relaksacija alternativne formulacije nema. U tom slučaju je, unatoč većem broju varijabli, lakše pronaći rješenje pomoću originalne formulacije problema. Pitanje koje se nakon ovog razmatranja nameće je: koja je idealna formulacija IP problema? Neka je T = { x 1,..., x k} skup dopustivih rješenja IP problema. Pretpostavimo da je skup T ograničen i konačan, te razmotrimo konveksnu ljusku skupa T: { k } k conv(t ) = λ i x i : λ i = 1, λ i 0, x i T. i=1 i=1 Konveksna ljuska conv(t ) je poliedar (pogledaj u [1] ) koji ima cjelobrojne ekstremne točke. Osim toga, skup dopustivih rješenja bilo koje linearne relaksacije zadovoljava conv(t ) P. Ako eksplicitno znamo conv(t ) i ako je možemo izraziti u sljedećem obliku: tada IP problem: conv(t ) = {x : Dx d} c τ x min, x T možemo riješiti tako da pronad emo ekstremnu točku koja je ujedno i rješenje LP problema: c τ x min, x conv(t ). Kako bi efikasno riješili IP problem poželjno je pronaći formulaciju čija linearna relaksacija čini konveksnu ljusku skupa dopustivih rješenja IP problema. Takvu formulaciju je često teško postići. Cilj prilikom modeliranja IP problema je svakako pronaći onu formulaciju čija relaksacija je bliska aproksimacija konveksne ljuske skupa dopustivih rješenja IP problema. U skladu s time potrebno je procjeniti kvalitetu formulacije problema, odnosno moći utvrditi koja od mogućih formulacija IP problema je bolja. Zbog toga uvodimo pojam jaka formulacija IP-problema, odnosno definiramo kada je formulacija A jača od formulacije B. Definicija 15. Neka su A i B dvije formulacije istog IP problema. Ako s P A i P B označimo skupove dopustivih rješenja odgovarajuće linearne relaksacije, tada formulaciju A smatramo barem toliko jakom kao formulacija B ukoliko: P A P B. 20

23 4 Metode za rješavanje IP problema Za razliku od LP problema, IP problemi su teško riješivi. Efikasan algoritam koji je primjenjiv na svaki IP problem ne postoji, no razvijeni su brojni algoritmi koji omogućavaju lakše rješavanje IP problema od kojih neki osiguravaju da se pronad e rješenje, neki da se pronad e suboptimalno rješenje u prihvatljivo mnogo koraka, ali ni jedan, generalno, ne osigurava da rješenje bude dovoljno dobro i da se pronad e u prihvatljivom vremenu. Postoje tri glavne kategorije algoritama za rješavanje IP problema: (i) Egzaktni algoritmi: osiguravaju pronalazak optimalnog rješenja, ali imaju eksponencijalno vrijeme izvršavanja. Med u njih se ubrajaju sljedeći algoritmi: cutting plane, branch and bound, branch and cut metode i metoda dinamičkog programiranja (ii) Algoritmi aproksimiranja: u polinomijalnom vremenu daju suboptimalno rješenje zajedno s granicom na stupanj suboptimalnosti (iii) Heuristički algoritmi: daju suboptimalno rješenje ali bez jamstva na njegovu kvalitetu. Vrijeme izvršavanja ovih algoritama nije uvijek polinomijalno, ali empirijski je pokazano da dosta ovih algoritama pronad e dobro rješenje vrlo brzo. Jedan od algoritama koji se ubraja u ovu skupinu je metode lokalnog traženja minimuma odnosno maksimuma. Unutar ovog rada obradit ćemo jednu metodu rješavanja IP problema - cutting plane koja se ubraja u egzaktne algoritme. 4.1 Cutting plane algoritam Neka je A R m n, c R n i b R m. Promotrimo IP problem dan s: i njegovu linearnu relaksaciju: c τ x min Ax = b x 0, x Z n (1) c τ x min Ax = b x 0. Glavna ideja ovog algoritma je rješavanje IP problem rješavanjem niza LP problema. Prvo riješimo linearnu relaksaciju IP problema danu s (2) te pronad emo njezino optimalno rješenje x. Ukoliko je x cjelobrojan tada je to ujedno i optimalno rješenje IP problema. Ukoliko nije, tada pronad emo nejednakost koju sva cjelobrojna rješenja IP problema (1) zadovoljavaju, a x ne zadovoljava. Tu nejednakost dodajemo linearnoj relaksaciji IP problema 21 (2)

24 te to iterativno ponavljamo dok ne pronad emo rješenje. Algoritam - cutting plane algoritam (i) Pronaći optimalno rješenje x linearne relaksacije problema dane s (2) (ii) Ukoliko je x Z n, x je optimalno rješenje IP problema (1) (iii) Ukoliko x nije cjelobrojan, dodati linearnu nejednakost relaksaciji (2) koju sva cjelobrojna rješenja IP problema (1) zadovoljavaju, a x ne; idi na korak (i) Vrijeme izvršenja ovog algoritma bitno ovisi o izboru nejednakosti kojom režemo ravninu, odnosno skup mogućih rješenja. U nastavku ćemo donijeti način na koji je potrebno birati nejednakosti kako bi dobili rješenje IP problema u konačno mnogo koraka. Neka je x optimalno rješenje relaksacije IP problema dane s (2) koje ima barem jednu bazičnu varijablu koja je racionalna. Neka je N skup indeksa nebazičnih varijabli. Bilo koje rješenje IP problema takvo da je x i = 0 za svaki i N je ujedno i rješenje LP problema i jednako je BDR-u x. Kako x nije dopustivo rješenje IP problema, tada sva dopustiva rješenja zadovoljavaju nejednakost: x j 1. j N Primjetimo da gornju nejednakost zadovoljavaju sva cjelobrojna rješenja IP problema (1), dok optimalno rješenje x ne zadovoljava. Stoga je ta nejednakost upravo ona koju treba dodati relaksaciji (2). Prvi konačni algoritam za rješavanje IP problema bio je Gomoryjev cutting plane algoritam iz godine. Ovaj algoritam koristi odred ene informacije koje se dobiju prilikom rješavanja simpleks tableaua. Postupak rješavanja IP problema pomoću ovog algoritma je sljedeći: Neka je x optimalno BDR i neka je B matrica pripadne baze. Dodatno, skup nebazičnih varijabli označimo s N. Vektor x rastavimo na vektor x B koji je sastavljen od bazičnih varijabli i vektor x N koji je sastavljen od nebazičnih varijabli. Iz simpleks tableaua lako iščitavamo B 1 Ax = B 1 b. S A N označimo matricu koju dobijemo tako da iz matrice A izvadimo stupce A i, i N. Iz zadnjeg koraka simpleks tableaua, tj. onog koraka u kojem smo došli do optimalnog rješenja, iščitamo koeficijente uvjeta: x B + B 1 A N x N = B 1 b. Neka je ā ij = (B 1 A j ) i i ā i0 = (B 1 b) i. Iz optimalnog tableau-a uzimamo jednakost u kojoj je ā i0 racionalan: x i + j N ā ij x j = ā i0. 22

25 Zbog danih uvjeta znamo da x j 0 j, te dobivamo: x i + j N ā ij x j x i + j N ā ij x j = ā i0. Kako x j treba biti cjelobrojan za svaki j zaključujemo: x i + j N ā ij x j ā i0. Ova nejednakost vrijedi za sva cjelobrojna rješenja, ali ju x ne zadovoljava. To zaključujemo zbog: x i = ā i0, x j = 0 j N i ā i0 < ā i0 (jer a i0 je racionalan po pretpostavci). Pokazano je da sustavno dodavanje ovih rezova i korištenje odred enih pravila koje sprječavaju nastanak ciklusa generalno vodi k rješenju IP problema u konačno mnogo koraka. No, u praksi, ova metoda zbog vremena izvršenja koje može biti eksponencijalno često nije primjenjiva. Primjer 4.1. (Ilustracija Gomoryjevog cutting plane algoritma) 6 Promotrimo sljedeći primjer IP problema: x 1 2x 2 min 4x 1 + 6x 2 9 x 1 + x 2 4 x 1, x 2 0, x 1, x 2 Z Dani problem prvo ćemo zapisati u standardnom obliku: x 1 2x 2 min 4x 1 + 6x 2 + x 3 = 9 x 1 + x 2 + x 4 = 4 x 1, x 2, x 3, x 4 0 x 1, x 2, x 3, x 4 Z. Rješavanjem linearne relaksacije gornjeg problema u terminima originalnih varijabli dobivamo optimalno rješenje x 1 = (3/2, 5/2) (pogledaj primjer 2.1 ). Jedna od jednakosti iz optimalnog tableaua, u kojoj je vrijednost u nultom stupcu racionalni broj je 6 primjer preuzet iz [1] x x x 4 =

26 Primjenjujući Gomoryjev algoritam zaključujemo da je rez: Linearnoj relaksaciji dodajemo uvjet: x 2 2. x 2 + x 5 = 2, x 5 0 Rješavanjem relaksacije s novim uvjetom dobivamo optimalno rješenje: x 2 = (3/4, 2). Jedna od jednakosti iz optimalnog tableau-a je: x x x 5 = 3 4. Novi Gomeryjev rez je: x 1 x 3 + x 5 0, odnosno u terminima originalnih varijabli x 1, x 2 : 3x 1 + 5x 2 7. Rješavanjem LP relaksacije s dodanim novim rezom pomoću simpleks tablaeua dolazimo do novog optimalnog rješenja x 3 = (1, 2) koje je ujedno i cjelobrojno pa je i optimalno rješenje IP problema. Problem s uvod enjem ovakvih rezova je što dolazi samo do malih smanjenja dopustivog područja rješenja, pa u praksi ovaj algoritam nema dobre performance. U skladu s tim uvedene su različite vrste rezova koje u većoj mjeri smanjuju dopustivo područje, no zbog potrebe poznavanja pojmova iz teorije grafova, ovo ćemo u radu uzeti samo na razini informacije da takvi rezovi postoje. 24

27 5 Teorija složenosti Unatoč postojanju brojnih algoritama za rješavanje IP problema još uvijek nije pronad en niti jedan koji omogućuje rješavanje ovakvih problema u polinomijalnom vremenu. Ova činjenica vrijedi i za mnoge druge diskretne probleme optimizacije. Teorija složenosti bavi se proučavanjem resursa (najčešće vremena i memorije/prostora) koji su potrebni za izračunavanje odred enog problema. Teorija složenosti proučava i relacije izmed u odred enih klasa problema koje imaju usporedive zahtjeve za izvršenje tzv. klase složenosti 7. Jedna od najvažniji takvih klasa je klasa P definirana kao klasa svih onih problema koji su riješivi pomoću algoritma čije je vrijeme izvršenja polinomijalno. U ovom poglavlju upoznat ćemo se s osnovnim pojmovima teorije složenosti koje ćemo iznijeti više na način da su intuitivno jasni nego što ćemo dati striktne i stroge matematičke izraze i tvrdnje. Cilj ovog poglavlja je iznijeti u kolikoj mjeri IP problemi mogu biti kompleksni za rješavanje. 5.1 Problem svod enja i transformacije Redukcija odnosno svod enje, je jedna od osnovnih metoda koja se koristi unutar matematike, a u sebi podrazumijeva da se novi problem pokuša svesti na neki već postojeći koji znamo riješiti. Idealan slučaj je kada je taj novi problem moguće svesti na neki već postojeći koji znamo efikasno riješiti. Osnovni koncept problema svod enja unutar teorije složenosti je vrlo sličan tom postupku. Jedan jednostavan primjer redukcije unutar linearnog programiranja je svod enje maksimizacijskog linarnog problema na minimizacijski problem pomoću odred enih pravila (vidi: Napomena 2.1), kada rješavanjem minimizacijskog problema dolazimo do rješenja početnog maksimizacijskog problema. Sljedeća definicija donosi najjednostavniji tip redukcije u kojoj se instanca problema Π 1 zamjenjuje ekvivalentnom instancom problema Π 2. Kako bi izbjegli općenitu definiciju ekvivalentnosti, usredotočiti ćemo se na problem prepoznavanja 8, odnosno problem koji ima binarni odgovor (da ili ne). Definicija 16. Neka su Π 1 i Π 2 dva problema prepoznavanja. Kažemo da se problem Π 1 transformira u problem Π 2 (u polinomijalnom vremenu) ukoliko postoji algoritam s polinomijalnim vremenom izvršenja koji za danu instancu I 1 problema Π 1 rezultira instancom I 2 problema Π 2 sa svojstvom da je instanca I 1 da instanca problema Π 1 ako i samo ako je I 2 da instanca problema Π 2. 7 eng. complexity classes 8 eng. recognition problem 25

28 Redukcija se najčešće koristi za dokazivanje da je neki problem lagan na način da se svede na neki problem za koji je dokazano da je lagan. Ta upotreba redukcije unutar teorije složenosti dana je sljedećim teoremom. Teorem 5.1. Ako se problem Π 1 transformira u problem Π 2 u polinomijalnom vremenu, onda ako je Π 2 P tada je i Π 1 P. Dokaz: Pretpostavimo da se problem Π 1 ima m, a problem Π 2 n varijabli. Pretpostavka teorema je da je problem Π 1 moguće transformirati u problem Π 2 u polinomijalnom vremenu, odnosno za transformaciju je potrebno O ( m k) pri čemu je k R neka konstanta. Druga pretpostavka je da je problem Π 2 P odnosno da postoji algoritam koji pronalazi rješenje problema Π 2 u polinomijalnom vremenu, tj vrijeme izvršenja tog algoritma ima asimptotsku složenost izvršenja danu s O ( n l) pri čemu je l R neka konstanta. Potrebno je pokazati da postoji algoritam koji daje rješenje problema Π 1 u polinomijalnom vremenu. Uzimajući u obzir dane pretpostavke, možemo konstruirati algoritam za rješavanje problema Π 1 na sljedeći način: prvo problem Π 1 transformiramo u problem Π 2 za što je potrebno O ( m k) vremena, te zatim rješimo problem Π 2 za što je potrebno O ( n l) vremena. Ukoliko je m > n konstruirani algoritam ima vrijeme izvršenja O ( m max{k,l}), a ako je n > m tada je vrijeme izvršenja O ( n max{k,l}). Kako se u oba slučaja radi o polinomijalnom vremenu izvršenja zaključujemo Π 1 P, što je i trebalo pokazati. Redukciju problema Π 1 na problem Π 2 možemo interpretirati na dva načina. Prvi način, koji je ujedno i uobičajen u matematici, je da problem Π 1 nije teži od problema Π 2. Druga interpretacija je da problem Π 2 je barem težak kao i problem Π 1, u smislu da ukoliko postoji algoritam za problem Π 2 čije je vrijeme izvršenja polinomijalno tada postoji i za Π 1. Iz teorema 5.1 vidimo i da ukoliko Π 1 / P i ako postoji redukcija od Π 1 na Π 2 tada možemo zaključiti Π 2 / P. Teorem 5.1 možemo primjeniti i na niz transformacija odnosno redukcija. Naprimjer ako imamo problem Π 1 koji je moguće transformirati u Π 2 koji je moguće transformirati u Π 3, tada ukoliko je Π 1 P tada je Π 2 P ali i Π 3 P. 5.2 N P-teški i N P-potpuni problemi Kod definiranja N P-teških problema krećemo od činjenice da se ZOIP problem čini težak te da se sumnja u postojanje algoritma koji bi generalno rješavao ZOIP probleme u polinomijalnom vremenu. Nadalje, za one probleme koji su barem teški kao i ZOIP takod er postoji mogućnost da nisu rješivi u polinomijalnom vremenu. Sljedećom definicijom se definiraju takvi problemi. 26

29 Definicija 17. Kažemo da je problem N P-težak ukoliko se ZOIP može transformirati u njega u polinomijalnom vremenu. Postojanje algoritma s polinomijalnim vremenom izvršenja za N P-težak problem vodilo bi postojanju algoritma s polinomijalnim vremenom izvršenja za ZOIP, što se ne smatra vrlo vjerojatnim. Stoga se pripadanje klasi N P-teških problema smatra prilično jakim dokazom da problem nije riješiv u polinomijalnom vremenu. Postoji veliki broj problema diskretne optimizacije koji pripadaju klasi N P-teških problema, a neki od njih su spomenuti i u ovom radu kao što su: problem ruksaka i problem optimalne lokacije postrojenja. Sljedeća definicija se odnosi na probleme koji nisu teži od ZOIP problema. Definicija 18. Kažemo da problem pripada klasi N P problema ukoliko se može transformirati u ZOIP u polinomijalnom vremenu. Može se pokazati da je klasa P polinomijalno rješivih problema sadržana u klasi N P, no nije poznato je li ta inkluzija striktna. Pitanje jednakosti ovih dviju klasa je jedno od otvorenih pitanja u teoriji složenosti. Ukoliko se pokaže da je P = N P tada bi to značilo da je ZOIP, kao i svi ostali problemi iz N P klase, rješiv u polinomijalnom vremenu i obrnuto ako bi se pokazalo da ZOIP pripada klasi P tada bi i svaki drugi problem iz N P pripadao klasi P. Zaključujemo: P = N P ako i samo ako je ZOIP riješiv u polinomijalnom vremenu. Definirajmo i probleme koji su jednako teški kao i ZOIP problemi. Definicija 19. Za problem Π kažemo da je N P-potpun ukoliko pripada N P klasi i ako je N P-težak, odnosno ako Π se može transformirati u ZOIP i ZOIP se može transformirati u Π. N P-potpuni problemi se mogu interpretirati kao najteži problemi u N P. Kako su svi N P-potpuni algoritmi med usobno ekvivalenti tada postojanje algoritma s polinomijalnim vremenom izvršenja za jedan od njih bi značilo postojanje takvog algoritma i za svaki od njih, štoviše i za svaki problem koji pripada N P klasi. Kako bi pokazali da je problem Π N P-težak možemo pokušati transformirati ZOIP u Π (definicija 17 ) ili iskoristiti sljedeći teorem. Teorem 5.2. Pretpostavimo da je problem Π 0 N P-težak te da se može transformirati u polinomijalnom vremenu u problem Π. Tada je i problem Π N P-težak. Dokaz teorema 5.2. se provodi transformacijom ZOIP problema u problem Π 0 (zbog činjenice da je Π 0 N P-težak to je moguće), te zatim transformacijom Π 0 u Π. Na taj način je ZOIP transformiran u Π što znači da je Π N P težak. Zbog činjenice da postoji veliki broj problema koji su N P-teški korist teorema 5.2. je velika, jer je ponekad puno lakše neki od tih problema transformirati u problem za koji želimo pokazati da je N P-težak nego transformirati ZOIP. 27

30 Sljedeće pitanje koje nam se nameće je: što ako je problem N P težak? Pripadnost N P- teškim problemima ne znači da je nemoguće pronaći algoritam s polinomijalnim vremenom izvršenje, jer postoji mogućnost da ZOIP pripada klasi P, ali znači da ukoliko se ne želimo suočiti s problemom pitanja je li P = N P trebamo odustati od traženja takvog algoritma. N P-teški problemi mogu se gledati kao odred eno ograničenje s obzirom da ne možemo sa sigurnošću tvrditi da postoji algoritam koji će uspjeti pronaći rješenje za te probleme. No, pripadnost klasi N P-teških problema ne znači da je taj problem nerješiv, štoviše u praksi se brojni problemi iz ove klase pomoću raznih algoritama rješavaju prilično lako. Iako su ponekad ta rješenja aproksimativna i bez jamstva ispravnosti, često su dovoljno dobra za korištenje u praktične svrhe. 28

31 6 Problem optimalnog troška putovanja Praktični dio ovoga rada ostvaren je zajedno s kolegicom Rebekom Čordaš s Odjela za matematiku sveučilišta J.J. Strossmayera u Osijeku, a u suradnji s Ninoslavom Čerkezom izvršnim direktorom u upravljanju kadrovima u kompaniji IN2 pod vodstvom mentora izv. prof. dr.sc. Domagoja Matijevića. Cilj praktičnog djela bilo je modelirati problem optimalnog rasporeda sudionika u vozila prilikom odlaska na službena putovanja. Ovaj problem modelirali smo pomoću cjelobrojnog linearnog programiranja s čijim osnovama smo se susreli u prethodnim poglavljima ovog rada. Prilikom rješavanja ovog problema korišten je Gurobi optimizer koji se koristi i za rješavanje problema mješovitog cjelobrojnog programiranja. Gurobi optimizer koristi najnaprednije i najnovije algoritme za rješavanje problema pri tom pokušavajući iskoristiti prednosti višejezgrenog procesora i moderne tehnologije 9. Osim modeliranja ovog problema te njegovog rješavanja pomoću Gurobi optimizera napravljena je web bazirana aplikacija pomoću koje se podaci o firmama, djelatnicima i kongresima unose u bazu. Osim toga ova aplikacija omogućava pozivanje pravljenja optimalnog rasporeda te njegov prikaz. 6.1 Opis problema Firma IN2 brine o stalnom usavršavanju svojih zaposlenika te ih u skladu s tim redovito šalje na razna dogad anja poput radionica, konferencija i sl. koje mogu doprinijeti njihovom stručnom usavršavanju. Zbog čestih putovanja njihovih djelatnika javilo se pitanje optimalnog rasporeda sudionika prilikom odlaska na neki od tih dogad aj kako bi se smanjili troškovi putovanja. Prilikom odred ivanja optimalnog rasporeda potrebno je uzeti u obzir sljedeće stvari: pojedini djelatnici imaju dodijeljeno službeno vozilo, te će prilikom odlaska na neko dogad anje koristiti to vozilo postoje vozila u vlasništvu firme koja su raspoloživa za korištenje prilikom putovanja zaposlenici mogu koristiti svoje privatna vozila, ukoliko nema raspoloživih službenih moguće je koristiti javni prijevoz svaki djelatnik može imati planiran svoj period boravka na dogad aju; ovisno o preferencijama, poziciji u firmi, privatnim razlozima... odnosno ne mora biti prisutan na dogad aju tijekom cijelog trajanja 9 detaljnije na: 29

32 Ulazni parametri za promatrani problem su: popis sudionika dogad aja za koji je potrebno napraviti optimalni raspored, te firma kojoj djelatnik pripada popis djelatnika koji imaju dodijeljeno vozilo popis službenih vozila koje su na raspolaganju za odlazak na kongres te termini u kojima su raspoloživi podatak o planiranom vremenu odlaska na kongres i povratka s kongresa pojedinog zaposlenika Kao rezultat potrebno je dobiti optimalni broj automobila koji idu na kongres zajedno s terminima njihovog odlaska, odnosno povratka te raspored djelatnika po automobilima. Ovakav rezultat ujedno osigurava i optimalan trošak putovanja. 6.2 Modeliranje problema Prije same formulacije problema potrebno je uvesti odred ene pretpostavke na ulazne parametre: broj djelatnika koji sudjeluje na kongresu iznosi m kongres traje r dana prilikom odluke o terminu odlaska, odnosno povratka na kongres moguće je odabrati datum i dio dana u kojem će se ići, odnosno vraćati se (prijepodne ili poslijepodne); na taj način je napravljena diskretizacija vremena odlaska i povratka s kongresa na sljedeći skup vremenskih jedinica {1, 2,..., 2r} na raspolaganju je n + 2r vozila od čega je l dodijeljenih vozila, h službenih vozila koja su na raspolaganju, n l h privatnih vozila te 2r vozila koja predstavljaju javni prijevoz čiji kapacitet za potrebe problema postavljamo na beskonačno problem je moguće podijeliti na potprobleme s obzirom na pripadnost djelatnika pojedinoj firmi; ti potproblemi su nezavisni. 30

33 6.3 Varijable i oznake u modelu Input: c j, j {1,..., n} - kapacitet j-tog vozila, poznate vrijednosti z ik, i {1,..., m}, k {1,..., 2r} - niz poznatih konstanti, ima vrijednost 1 ukoliko i - ta osoba ide u k - to vrijeme, odnosno 0 ukoliko ne ide. z ik, i {1,..., m}, k {1,..., 2r} - niz poznatih konstanti, ima vrijednost 1 ukoliko se i-ta osoba vraća s kongresa u k-to vrijeme, odnosno 0 ukoliko se ne vraća. Varijable: v jk, j {1,..., n}, k {1,..., 2r} - binarna varijabla kojom modeliramo ide li j-ti automobil u k-to vrijeme na kongres, poprima vrijednost 0 ukoliko ne ide, odnosno 1 ukoliko ide. v jk, j {1,..., n}, k {1,..., 2r} - binarna varijabla koja modelira vraća li se j-ti automobil u k-to vrijeme s kongresa, poprima vrijednost 0 ukoliko se ne vraća, odnosno 1 ukoliko se vraća. a k, k {1,..., 2r} - binarna varijabla kojom modeliramo korištenje javnog prijevoza u k-toj jedinici vremena, ima vrijednost 0 ukoliko niti jedan zaposlenik u k-tom trenutku ne koristi javni prijevoz, odnosno 1 ukoliko netko od zaposlenika u k-tom trenutku putuje javnim prijevozom 6.4 IP formulacija problema Problem koji modeliramo je pronalazak optimalnog rasporeda po vozilima prilikom odlaska na kongres. U ovom poglavlju iznijet ćemo formulaciju tog problema te objasniti po kojoj funkciji minimiziramo, te što koji uvjet u modelu predstavlja. Funkcija cilja: n 2r 2r min v jk + 2 a k (3) uvjeti: 2r k=1 j=1 k=1 2r k=1 2r k=1 v jk 1, j {1,..., n} (4) v jk v jk = 0, j {1,..., n} (5) k=1 31

34 2r v jk v jt 0, j {1,..., n}, k {1,..., 2r} (6) t=k m z ik i=1 m z ik i=1 n v jk c j + a k m, k {1,..., 2r} (7) j=1 n v jk c j + a k m, k {1,..., 2r} (8) j=1 Funkcija cilja našeg modela sastoji se iz dvije sume. Kao rezultat prve sume dobivamo broj automobila koji odlazi na kongres, dok druga suma predstavlja mogućnost korištenja javnog prijevoza. U drugoj sumi dodana je i težina varijabli koja označava koristi li se javni prijevoz ili ne, kako bi se preferirao prijevoz službenim ili privatnim vozilima. U ovom modelu minimiziramo broj automobila koji idu na kongres, čime se ujedno pronalazi i optimalan troška putovanja. Ovakva formulacija problema ima restrikciju na broj odlaska vozila na kongres odnosno vozilo na pojedini kongres može otići samo jednom tj. ne može otići pa se vratiti te ponovno otići. Ta restrikcija je dana uvjetom (4) koji osigurava da zbroj po svim mogućim vremenima odlaska j-tog automobila iznosi najviše 1. Sljedeći uvjet, uvjet (5) osigurava da ukoliko j-ti automobil ide na kongres, da se on tada mora s njega i vratiti. Uvjetom (6) je sprječena mogućnost da se neki automobil s kongresa vrati prije nego što je tamo otišao, odnosno da je nemoguće da vremenski trenutak u kojem se vraća bude manji od vremenskog trenutka u kojem odlazi. Uvjeti (7) i (8) su uvjeti na kapacitet vozila kojima se putuje. Drugi dio desne nejednakosti ovih uvjeta označava da se u k-tom trenutku koristi javni prijevoz s kapacitetom m koji ovdje predstavlja dovoljno velik broj (uočimo: m djelatnika ide na kongres) kako bi svi koji ne putuju automobilom mogli ići javnim prijevozom, što je u skladu s pretpostavkom da javni prijevoz ima kapacitet beskonačno. 6.5 Rješavanje problema U uvodu ovog poglavlja spomenuto je kako je korišten Gurobi Optimizer prilikom rješavanja ovog IP problema. Za implementaciju modela u Gurobi korišten je programski jezik C + +. Podaci potrebni za izračun rješenja dobiveni su iz baze podataka pomoću php-a. Kao output Gurobi vraća vrijeme kada odred eno vozilo ide, odnosno vraća se s kongresa, a ukoliko ne ide tada tom vozilu kao vremensku jedinicu pridružuje 0. Nakon što Gurobi vrati rješenje, onaj dio u kojem se djelatnici raspored uju po vozilima se vrši na razini same aplikacije. Kao metoda koju je Gurobi koristio prilikom rješavanja ovog problema navedena je simpleks metoda. 32

35 6.6 Arhitektura baze podataka Baza podataka potrebna za rad ove aplikacije sastoji se od 8 tablica. Struktura baze podataka, nazivi tablica te njihovih atributa dane su sljedećom slikom: Slika 6.2: Struktura baze podataka 6.7 Aplikacija Za izradu ove web aplikacije korišteni su: HTML, PHP, JavaScript, C + +, MySQL i Gurobi Optimizer. Za unos podataka u bazu koristi se 8 formi, kojima je moguće pristupiti preko linkova koji se nalaze s lijeve strane prozora. Osim linkova za pristup formama imamo i link Upit preko kojega pristupamo rješavanju optimizacijskog problema. Prije samog poziva za rješenje problema, odabiremo za koju firmu i kongres (od onih za koje podaci postoje u bazi) želimo pronaći optimalni raspored. Osim pojedinačne firme moguće je napraviti raspored generalno za neki kongres, odnosno odjednom za sve firme unesene u bazu. Prilikom poziva optimalnog rasporeda preko C + + se poziva Gurobi, koji vraća vremena polaska i povratka vozila, zatim se unutar php skripte napravi raspored djelatnika po tim vozilima te se taj raspored spremi u bazu. Nakon toga, na zaslonu se pojavi raspored za putovanje. Aplikacija omogućuje i promjenu trenutnog rasporeda na način da se putnici iz vozila koja putuju istog dana mogu med usobno zamijeniti ili se neka osoba može premjestiti u vozilo koje putuje tog istog dana bez zamjene ukoliko u njemu ima mjesta. Promjene je moguće spremiti te na taj način promijeniti prvotni raspored, no time nije narušena optimalnost putovanja, jer se broj vozila kao i njihovi polasci na taj način ne mijenjaju. 33

36 Izgled aplikacije vidljiv je na sljedećim slikama: Slika 6.3: Unos kongresa Slika 6.4: Prikaz rasporeda djelatnika po vozilima 34

Linearno programiranje i primjene

Linearno programiranje i primjene Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku Rebeka Čordaš Linearno programiranje i primjene Diplomski rad Osijek, 2014. Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku Rebeka

More information

ZANIMLJIV NAČIN IZRAČUNAVANJA NEKIH GRANIČNIH VRIJEDNOSTI FUNKCIJA. Šefket Arslanagić, Sarajevo, BiH

ZANIMLJIV NAČIN IZRAČUNAVANJA NEKIH GRANIČNIH VRIJEDNOSTI FUNKCIJA. Šefket Arslanagić, Sarajevo, BiH MAT-KOL (Banja Luka) XXIII ()(7), -7 http://wwwimviblorg/dmbl/dmblhtm DOI: 75/МК7A ISSN 5-6969 (o) ISSN 986-588 (o) ZANIMLJIV NAČIN IZRAČUNAVANJA NEKIH GRANIČNIH VRIJEDNOSTI FUNKCIJA Šefket Arslanagić,

More information

Algoritam za množenje ulančanih matrica. Alen Kosanović Prirodoslovno-matematički fakultet Matematički odsjek

Algoritam za množenje ulančanih matrica. Alen Kosanović Prirodoslovno-matematički fakultet Matematički odsjek Algoritam za množenje ulančanih matrica Alen Kosanović Prirodoslovno-matematički fakultet Matematički odsjek O problemu (1) Neka je A 1, A 2,, A n niz ulančanih matrica duljine n N, gdje su dimenzije matrice

More information

TEORIJA SKUPOVA Zadaci

TEORIJA SKUPOVA Zadaci TEORIJA SKUPOVA Zadai LOGIKA 1 I. godina 1. Zapišite simbolima: ( x nije element skupa S (b) d je član skupa S () F je podskup slupa S (d) Skup S sadrži skup R 2. Neka je S { x;2x 6} = = i neka je b =

More information

Quasi-Newtonove metode

Quasi-Newtonove metode Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Milan Milinčević Quasi-Newtonove metode Završni rad Osijek, 2016. Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Milan Milinčević

More information

PRIPADNOST RJEŠENJA KVADRATNE JEDNAČINE DANOM INTERVALU

PRIPADNOST RJEŠENJA KVADRATNE JEDNAČINE DANOM INTERVALU MAT KOL Banja Luka) ISSN 0354 6969 p) ISSN 1986 58 o) Vol. XXI )015) 105 115 http://www.imvibl.org/dmbl/dmbl.htm PRIPADNOST RJEŠENJA KVADRATNE JEDNAČINE DANOM INTERVALU Bernadin Ibrahimpašić 1 Senka Ibrahimpašić

More information

KVADRATNE INTERPOLACIJSKE METODE ZA JEDNODIMENZIONALNU BEZUVJETNU LOKALNU OPTIMIZACIJU 1

KVADRATNE INTERPOLACIJSKE METODE ZA JEDNODIMENZIONALNU BEZUVJETNU LOKALNU OPTIMIZACIJU 1 MAT KOL (Banja Luka) ISSN 0354 6969 (p), ISSN 1986 5228 (o) Vol. XXII (1)(2016), 5 19 http://www.imvibl.org/dmbl/dmbl.htm KVADRATNE INTERPOLACIJSKE METODE ZA JEDNODIMENZIONALNU BEZUVJETNU LOKALNU OPTIMIZACIJU

More information

Mathcad sa algoritmima

Mathcad sa algoritmima P R I M J E R I P R I M J E R I Mathcad sa algoritmima NAREDBE - elementarne obrade - sekvence Primjer 1 Napraviti algoritam za sabiranje dva broja. NAREDBE - elementarne obrade - sekvence Primjer 1 POČETAK

More information

Projektovanje paralelnih algoritama II

Projektovanje paralelnih algoritama II Projektovanje paralelnih algoritama II Primeri paralelnih algoritama, I deo Paralelni algoritmi za množenje matrica 1 Algoritmi za množenje matrica Ovde su data tri paralelna algoritma: Direktan algoritam

More information

Metode izračunavanja determinanti matrica n-tog reda

Metode izračunavanja determinanti matrica n-tog reda Osječki matematički list 10(2010), 31 42 31 STUDENTSKA RUBRIKA Metode izračunavanja determinanti matrica n-tog reda Damira Keček Sažetak U članku su opisane metode izračunavanja determinanti matrica n-tog

More information

Mirela Nogolica Norme Završni rad

Mirela Nogolica Norme Završni rad Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Mirela Nogolica Norme Završni rad Osijek, 2014. Sveučilište J.J. Strossmayera u Osijeku Odjel za

More information

Geometrijski smisao rješenja sustava od tri linearne jednadžbe s tri nepoznanice

Geometrijski smisao rješenja sustava od tri linearne jednadžbe s tri nepoznanice Osječki matematički list 6(2006), 79 84 79 Geometrijski smisao rješenja sustava od tri linearne jednadžbe s tri nepoznanice Zlatko Udovičić Sažetak. Geometrijski smisao rješenja sustava od dvije linearne

More information

Hornerov algoritam i primjene

Hornerov algoritam i primjene Osječki matematički list 7(2007), 99 106 99 STUDENTSKA RUBRIKA Hornerov algoritam i primjene Zoran Tomljanović Sažetak. U ovom članku obrad uje se Hornerov algoritam za efikasno računanje vrijednosti polinoma

More information

Nelder Meadova metoda: lokalna metoda direktne bezuvjetne optimizacije

Nelder Meadova metoda: lokalna metoda direktne bezuvjetne optimizacije Osječki matematički list (2), 131-143 Nelder Meadova metoda: lokalna metoda direktne bezuvjetne optimizacije Lucijana Grgić, Kristian Sabo Sažetak U radu je opisana poznata Nelder Meadova metoda, koja

More information

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku DIOFANTSKE JEDNADŽBE

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku DIOFANTSKE JEDNADŽBE Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Violeta Ivšić DIOFANTSKE JEDNADŽBE Završni rad Osijek, 2016. Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Violeta Ivšić DIOFANTSKE

More information

Šime Šuljić. Funkcije. Zadavanje funkcije i područje definicije. š2004š 1

Šime Šuljić. Funkcije. Zadavanje funkcije i područje definicije. š2004š 1 Šime Šuljić Funkcije Zadavanje funkcije i područje definicije š2004š 1 Iz povijesti Dvojica Francuza, Pierre de Fermat i Rene Descartes, posebno su zadužila matematiku unijevši ideju koordinatne metode

More information

LINEARNI MODELI STATISTIČKI PRAKTIKUM 2 2. VJEŽBE

LINEARNI MODELI STATISTIČKI PRAKTIKUM 2 2. VJEŽBE LINEARNI MODELI STATISTIČKI PRAKTIKUM 2 2. VJEŽBE Linearni model Promatramo jednodimenzionalni linearni model. Y = β 0 + p β k x k + ε k=1 x 1, x 2,..., x p - varijable poticaja (kontrolirane) ε - sl.

More information

Ivan Soldo. Sažetak. U članku se analiziraju različiti načini množenja matrica. Svaki od njih ilustriran je primjerom.

Ivan Soldo. Sažetak. U članku se analiziraju različiti načini množenja matrica. Svaki od njih ilustriran je primjerom. Osječki matematički list 5(005), 8 Različiti načini množenja matrica Ivan Soldo Sažetak U članku se analiziraju različiti načini množenja matrica Svaki od njih ilustriran je primjerom Ključne riječi: linearni

More information

KLASIFIKACIJA NAIVNI BAJES. NIKOLA MILIKIĆ URL:

KLASIFIKACIJA NAIVNI BAJES. NIKOLA MILIKIĆ   URL: KLASIFIKACIJA NAIVNI BAJES NIKOLA MILIKIĆ EMAIL: nikola.milikic@fon.bg.ac.rs URL: http://nikola.milikic.info ŠTA JE KLASIFIKACIJA? Zadatak određivanja klase kojoj neka instanca pripada instanca je opisana

More information

pretraživanje teksta Knuth-Morris-Pratt algoritam

pretraživanje teksta Knuth-Morris-Pratt algoritam pretraživanje teksta Knuth-Morris-Pratt algoritam Jelena Držaić Oblikovanje i analiza algoritama Mentor: Prof.dr.sc Saša Singer 18. siječnja 2016. 18. siječnja 2016. 1 / 48 Sadržaj 1 Uvod 2 Pretraživanje

More information

Formule za udaljenost točke do pravca u ravnini, u smislu lp - udaljenosti math.e Vol 28.

Formule za udaljenost točke do pravca u ravnini, u smislu lp - udaljenosti math.e Vol 28. 1 math.e Hrvatski matematički elektronički časopis Formule za udaljenost točke do pravca u ravnini, u smislu lp - udaljenosti Banachovi prostori Funkcija udaljenosti obrada podataka optimizacija Aleksandra

More information

Nilpotentni operatori i matrice

Nilpotentni operatori i matrice Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Nikolina Romić Nilpotentni operatori i matrice Završni rad Osijek, 2016. Sveučilište J. J. Strossmayera

More information

Teorem o reziduumima i primjene. Završni rad

Teorem o reziduumima i primjene. Završni rad Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Matej Petrinović Teorem o reziduumima i primjene Završni rad Osijek, 207. Sveučilište J. J. Strossmayera

More information

Ariana Trstenjak Kvadratne forme

Ariana Trstenjak Kvadratne forme Sveučilište Josipa Jurja Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Ariana Trstenjak Kvadratne forme Završni rad Osijek, 014. Sveučilište Josipa Jurja Strossmayera

More information

Slika 1. Slika 2. Da ne bismo stalno izbacivali elemente iz skupa, mi ćemo napraviti još jedan niz markirano, gde će

Slika 1. Slika 2. Da ne bismo stalno izbacivali elemente iz skupa, mi ćemo napraviti još jedan niz markirano, gde će Permutacije Zadatak. U vreći se nalazi n loptica različitih boja. Iz vreće izvlačimo redom jednu po jednu lopticu i stavljamo jednu pored druge. Koliko različitih redosleda boja možemo da dobijemo? Primer

More information

Maja Antolović Algoritmi u teoriji brojeva

Maja Antolović Algoritmi u teoriji brojeva Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku Preddiplomski studij matematike Maja Antolović Algoritmi u teoriji brojeva Završni rad Osijek, 2017. Sveučilište J.J.Strossmayera u Osijeku Odjel

More information

Sveučilište Josipa Jurja Strossmayera u Osijeku Odjel za matematiku

Sveučilište Josipa Jurja Strossmayera u Osijeku Odjel za matematiku Sveučilište Josipa Jurja Strossmayera u Osijeku Odjel za matematiku Valentina Volmut Ortogonalni polinomi Diplomski rad Osijek, 2016. Sveučilište Josipa Jurja Strossmayera u Osijeku Odjel za matematiku

More information

Tina Drašinac. Cramerovo pravilo. Završni rad

Tina Drašinac. Cramerovo pravilo. Završni rad Sveučilište JJStrossmayera u Osijeku Odjel za matematiku Preddiplomski studij matematike Tina Drašinac Cramerovo pravilo Završni rad U Osijeku, 19 listopada 2010 Sveučilište JJStrossmayera u Osijeku Odjel

More information

Metoda parcijalnih najmanjih kvadrata: Regresijski model

Metoda parcijalnih najmanjih kvadrata: Regresijski model Sveučilište u Zagrebu Prirodoslovno-matematički fakultet Matematički odsjek Tamara Sente Metoda parcijalnih najmanjih kvadrata: Regresijski model Diplomski rad Voditelj rada: Izv.prof.dr.sc. Miljenko Huzak

More information

Fajl koji je korišćen može se naći na

Fajl koji je korišćen može se naći na Machine learning Tumačenje matrice konfuzije i podataka Fajl koji je korišćen može se naći na http://www.technologyforge.net/datasets/. Fajl se odnosi na pečurke (Edible mushrooms). Svaka instanca je definisana

More information

Karakteri konačnih Abelovih grupa

Karakteri konačnih Abelovih grupa Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Matija Klarić Karakteri konačnih Abelovih grupa Završni rad Osijek, 2015. Sveučilište J. J. Strossmayera

More information

NIZOVI I REDOVI FUNKCIJA

NIZOVI I REDOVI FUNKCIJA SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Danijela Piškor NIZOVI I REDOVI FUNKCIJA Diplomski rad Voditelj rada: izv. prof. dr. sc. Ljiljana Arambašić Zagreb, rujan 206.

More information

Simetrične matrice, kvadratne forme i matrične norme

Simetrične matrice, kvadratne forme i matrične norme Sveučilište JJStrossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Martina Dorić Simetrične matrice, kvadratne forme i matrične norme Završni rad Osijek, 2014 Sveučilište

More information

Funkcijske jednadºbe

Funkcijske jednadºbe MEMO pripreme 2015. Marin Petkovi, 9. 6. 2015. Funkcijske jednadºbe Uvod i osnovne ideje U ovom predavanju obradit emo neke poznate funkcijske jednadºbe i osnovne ideje rje²avanja takvih jednadºbi. Uobi

More information

Neprekidan slučajan vektor

Neprekidan slučajan vektor Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Ana Leko Neprekidan slučajan vektor Završni rad Osijek, 3 Sveučilište J.J.Strossmayera u Osijeku Odjel

More information

Pellova jednadžba. Pell s equation

Pellova jednadžba. Pell s equation Osječki matematički list 8(2008), 29 36 29 STUDENTSKA RUBRIKA Pellova jednadžba Ivona Mandić Ivan Soldo Sažetak. Članak sadrži riješene primjere i probleme koji se svode na analizu skupa rješenja Pellove

More information

KRITERIJI KOMPLEKSNOSTI ZA K-MEANS ALGORITAM

KRITERIJI KOMPLEKSNOSTI ZA K-MEANS ALGORITAM SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Stela Šeperić KRITERIJI KOMPLEKSNOSTI ZA K-MEANS ALGORITAM Diplomski rad Voditelj rada: doc.dr.sc. Pavle Goldstein Zagreb, Srpanj

More information

Metode praćenja planova

Metode praćenja planova Metode praćenja planova Klasična metoda praćenja Suvremene metode praćenja gantogram mrežni dijagram Metoda vrednovanja funkcionalnosti sustava Gantogram VREMENSKO TRAJANJE AKTIVNOSTI A K T I V N O S T

More information

O aksiomu izbora, cipelama i čarapama

O aksiomu izbora, cipelama i čarapama O aksiomu izbora, cipelama i čarapama Aksiom izbora može se izreći u raznim ekvivalentnim formama. Dokazi ekvivalencije aksioma izbora npr. sa Zornovom lemom, ili pak sa Zermelovim teoremom o dobrom uredaju,

More information

Uvod u relacione baze podataka

Uvod u relacione baze podataka Uvod u relacione baze podataka Ana Spasić 2. čas 1 Mala studentska baza dosije (indeks, ime, prezime, datum rodjenja, mesto rodjenja, datum upisa) predmet (id predmeta, sifra, naziv, bodovi) ispitni rok

More information

Red veze za benzen. Slika 1.

Red veze za benzen. Slika 1. Red veze za benzen Benzen C 6 H 6 je aromatično ciklično jedinjenje. Njegove dve rezonantne forme (ili Kekuléove structure), prema teoriji valentne veze (VB) prikazuju se uobičajeno kao na slici 1 a),

More information

Metode rješavanja kvadratičnog problema pridruživanja

Metode rješavanja kvadratičnog problema pridruživanja SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA MAGISTARSKI RAD Metode rješavanja kvadratičnog problema pridruživanja Dipl. ing. Zvonimir Vanjak Mentor: Prof.dr. Damir Kalpić . Sadržaj. SADRŽAJ...2

More information

Strojno učenje. Metoda potpornih vektora (SVM Support Vector Machines) Tomislav Šmuc

Strojno učenje. Metoda potpornih vektora (SVM Support Vector Machines) Tomislav Šmuc Strojno učenje Metoda potpornih vektora (SVM Support Vector Machines) Tomislav Šmuc Generativni i diskriminativni modeli Diskriminativni Generativni (Učenje linije koja razdvaja klase) Učenje modela za

More information

Strojno učenje. Metoda potpornih vektora (SVM Support Vector Machines) Tomislav Šmuc

Strojno učenje. Metoda potpornih vektora (SVM Support Vector Machines) Tomislav Šmuc Strojno učenje Metoda potpornih vektora (SVM Support Vector Machines) Tomislav Šmuc Generativni i diskriminativni modeli Diskriminativni Generativni (Učenje linije koja razdvaja klase) Učenje modela za

More information

Matrične dekompozicije i primjene

Matrične dekompozicije i primjene Sveučilište JJ Strossmayera u Osijeku Odjel za matematiku Goran Pavić Matrične dekompozicije i primjene Diplomski rad Osijek, 2012 Sveučilište JJ Strossmayera u Osijeku Odjel za matematiku Goran Pavić

More information

Iterativne metode za rješavanje linearnih sustava

Iterativne metode za rješavanje linearnih sustava Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Marija Mecanović Iterativne metode za rješavanje linearnih sustava Završni rad Osijek, 2017. Sveučilište

More information

Matea Ugrica. Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni diplomski studij matematike i računarstva

Matea Ugrica. Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni diplomski studij matematike i računarstva Sveučilište J J Strossmayera u Osijeku Odjel za matematiku Sveučilišni diplomski studij matematike i računarstva Matea Ugrica Upravljivost linearnih vremenski neovisnih sustava Diplomski rad Osijek, 215

More information

Vektori u ravnini i prostoru. Rudolf Scitovski, Ivan Vazler. 10. svibnja Uvod 1

Vektori u ravnini i prostoru. Rudolf Scitovski, Ivan Vazler. 10. svibnja Uvod 1 Ekonomski fakultet Sveučilište J. J. Strossmayera u Osijeku Vektori u ravnini i prostoru Rudolf Scitovski, Ivan Vazler 10. svibnja 2012. Sadržaj 1 Uvod 1 2 Operacije s vektorima 2 2.1 Zbrajanje vektora................................

More information

Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku. Sveučilišni preddiplomski studij matematike

Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku. Sveučilišni preddiplomski studij matematike Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Lorena Škalac Fermatova metoda beskonačnog spusta Završni rad Osijek, 014. Sveučilište J.J.Strossmayera

More information

Položaj nultočaka polinoma

Položaj nultočaka polinoma Osječki matematički list 4 (204), 05-6 Položaj nultočaka polinoma Mandalena Pranjić Rajna Rajić Sažetak Prema Rolleovom teoremu, bilo koji segment čiji su krajevi međusobno različite realne nultočke polinoma

More information

Rekurzivni algoritmi POGLAVLJE Algoritmi s rekurzijama

Rekurzivni algoritmi POGLAVLJE Algoritmi s rekurzijama POGLAVLJE 8 Rekurzivni algoritmi U prošlom dijelu upoznali smo kako rekurzije možemo implementirati preko stogova, u ovom dijelu promotriti ćemo probleme koje se mogu izraziti na rekurzivan način Vremenska

More information

Matrice traga nula math.e Vol. 26. math.e. Hrvatski matematički elektronički časopis. Matrice traga nula. komutator linearna algebra. Sažetak.

Matrice traga nula math.e Vol. 26. math.e. Hrvatski matematički elektronički časopis. Matrice traga nula. komutator linearna algebra. Sažetak. 1 math.e Hrvatski matematički elektronički časopis komutator linearna algebra Marijana Kožul i Rajna Rajić Matrice traga nula marijana55@gmail.com, rajna.rajic@rgn.hr Rudarsko-geološko-naftni fakultet,

More information

Uvod u numericku matematiku

Uvod u numericku matematiku Uvod u numericku matematiku M. Klaricić Bakula Oujak, 2009. Uvod u numericku matematiku 2 1 Uvod Jedan od osnovnih problema numericke matematike je rješavanje linearnih sustava jednadbi. U ovom poglavlju

More information

Kvantitativne metode za poslovno odlučivanje IV. Linearno programiranje

Kvantitativne metode za poslovno odlučivanje IV. Linearno programiranje Kvantitativne metode za poslovno odlučivanje IV. Linearno programiranje Rudolf Scitovski, Ivan Vazler, Martina Briš. siječnja 3. Sadržaj Uvod Maksimizacija profita primarni LP problem. Geometrijska interpretacija

More information

PRIMJENA LINEARNOGA PROGRAMIRANJA NA PROBLEME PROMIDŽBE. Diplomski rad

PRIMJENA LINEARNOGA PROGRAMIRANJA NA PROBLEME PROMIDŽBE. Diplomski rad VELEUČILIŠTE U POŽEGI Danijela Japarić PRIMJENA LINEARNOGA PROGRAMIRANJA NA PROBLEME PROMIDŽBE Diplomski rad Lipanj, 2014. VELEUČILIŠTE U POŽEGI SPECIJALISTIČKI DIPLOMSKI STUDIJ TRGOVINSKO POSLOVANJE PRIMJENA

More information

Prsten cijelih brojeva

Prsten cijelih brojeva SVEUČILIŠTE JOSIPA JURJA STROSSMAYERA U OSIJEKU ODJEL ZA MATEMATIKU Marijana Pravdić Prsten cijelih brojeva Diplomski rad Osijek, 2017. SVEUČILIŠTE JOSIPA JURJA STROSSMAYERA U OSIJEKU ODJEL ZA MATEMATIKU

More information

Osobine metode rezolucije: zaustavlja se, pouzdanost i kompletnost. Iskazna logika 4

Osobine metode rezolucije: zaustavlja se, pouzdanost i kompletnost. Iskazna logika 4 Matematička logika u računarstvu Department of Mathematics and Informatics, Faculty of Science,, Serbia novembar 2012 Rezolucija 1 Metod rezolucije je postupak za dokazivanje da li je neka iskazna (ili

More information

PRIKAZ BALASOVOG ALGORITMA ZA 0-1 PROGRAMIRANJE

PRIKAZ BALASOVOG ALGORITMA ZA 0-1 PROGRAMIRANJE Tihomir^Hunjak U D K : $, Fakultet organizacije i informatike Stručni rad V a r a ž d i n PRIKAZ BALASOVOG ALGORITMA ZA - 1 PROGRAMIRANE U uvodnom dijelu rada govori e o cjelobrojnom i nula-jedan pro gramiranju.

More information

SITO POLJA BROJEVA. Dario Maltarski PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK. Diplomski rad. Voditelj rada: Doc. dr. sc.

SITO POLJA BROJEVA. Dario Maltarski PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK. Diplomski rad. Voditelj rada: Doc. dr. sc. SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Dario Maltarski SITO POLJA BROJEVA Diplomski rad Voditelj rada: Doc. dr. sc. Filip Najman Zagreb, rujan 2014. Ovaj diplomski

More information

Fibonaccijev brojevni sustav

Fibonaccijev brojevni sustav Fibonaccijev brojevni sustav Ljerka Jukić asistentica Odjela za matematiku Sveučilišta u Osijeku, ljukic@mathos.hr Helena Velić studentica Odjela za matematiku Sveučilišta u Osijeku, hvelic@mathos.hr Sažetak

More information

1 Konveksni skupovi i konveksne funkcije

1 Konveksni skupovi i konveksne funkcije Nediferencijabilna optimizacija 1 Odjel za matematiku Sveučilište J. J. Strossmayera u Osijeku Nediferencijabilna optimizacija Poslijediplomski doktorski studij matematike 1 Konveksni skupovi i konveksne funkcije

More information

ALGORITAM FAKTORIZACIJE GNFS

ALGORITAM FAKTORIZACIJE GNFS SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA ALGORITAM FAKTORIZACIJE GNFS Ivan Fratrić Seminar iz predmeta Sigurnost računalnih sustava ZAGREB, Sažetak Faktorizacija brojeva jedan je od

More information

Vedska matematika. Marija Miloloža

Vedska matematika. Marija Miloloža Osječki matematički list 8(2008), 19 28 19 Vedska matematika Marija Miloloža Sažetak. Ovimčlankom, koji je gradivom i pristupom prilagod en prvim razredima srednjih škola prikazuju se drugačiji načini

More information

Iskazna logika 1. Matematička logika u računarstvu. oktobar 2012

Iskazna logika 1. Matematička logika u računarstvu. oktobar 2012 Matematička logika u računarstvu Department of Mathematics and Informatics, Faculty of Science,, Serbia oktobar 2012 Iskazi, istinitost, veznici Intuitivno, iskaz je rečenica koja je ima tačno jednu jednu

More information

ALGORITMI PODIJELI PA VLADAJ

ALGORITMI PODIJELI PA VLADAJ SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Petra Penzer ALGORITMI PODIJELI PA VLADAJ Diplomski rad Voditelj rada: izv.prof.dr.sc. Saša Singer Zagreb, rujan 2016. Ovaj diplomski

More information

Sortiranje podataka. Ključne riječi: algoritmi za sortiranje, merge-sort, rekurzivni algoritmi. Data sorting

Sortiranje podataka. Ključne riječi: algoritmi za sortiranje, merge-sort, rekurzivni algoritmi. Data sorting Osječki matematički list 5(2005), 21 28 21 STUDENTSKA RUBRIKA Sortiranje podataka Alfonzo Baumgartner Stjepan Poljak Sažetak. Ovaj rad prikazuje jedno od rješenja problema sortiranja podataka u jednodimenzionalnom

More information

Linearni operatori u ravnini

Linearni operatori u ravnini Linearni operatori u prostoru 1 Linearni operatori u ravnini Rudolf Scitovski Ivana Kuzmanović, Zoran Tomljanović 1 Uvod Neka je (O; e 1, e, e 3 ) pravokutni koordinatne sustav u prostoru X 0 (E). Analogno

More information

NTRU KRIPTOSUSTAV. Valentina Pribanić PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK. Diplomski rad

NTRU KRIPTOSUSTAV. Valentina Pribanić PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK. Diplomski rad SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Valentina Pribanić NTRU KRIPTOSUSTAV Diplomski rad Voditelj rada: Andrej Dujella, prof. dr. sc. Zagreb, srpanj 2015. Ovaj diplomski

More information

BROJEVNE KONGRUENCIJE

BROJEVNE KONGRUENCIJE UNIVERZITET U NOVOM SADU PRIRODNO-MATEMATIČKI FAKULTET DEPARTMAN ZA MATEMATIKU I INFORMATIKU Vojko Nestorović BROJEVNE KONGRUENCIJE - MASTER RAD - Mentor, dr Siniša Crvenković Novi Sad, 2011. Sadržaj Predgovor...............................

More information

HRVATSKA MATEMATIČKA OLIMPIJADA

HRVATSKA MATEMATIČKA OLIMPIJADA HRVATSKA MATEMATIČKA OLIMPIJADA prvi dan 5. svibnja 01. Zadatak 1. Dani su pozitivni realni brojevi x, y i z takvi da je x + y + z = 18xyz. nejednakost x x + yz + 1 + y y + xz + 1 + z z + xy + 1 1. Dokaži

More information

Matematika i statistika

Matematika i statistika Klasteri 1 Strojarski fakultet u Slavonskom Brodu Sveučilište J. J. Strossmayera u Osijeku 1 Uvod Matematika i statistika II. Grupiranje podataka: klasteri R. Scitovski, M. Benšić, K. Sabo Definicija 1.

More information

Mostovi Kaliningrada nekad i sada

Mostovi Kaliningrada nekad i sada Osječki matematički list 7(2007), 33 38 33 Mostovi Kaliningrada nekad i sada Matej Kopić, Antoaneta Klobučar Sažetak.U ovom radu su najprije dane stvarne situacije oko Kalingradskih mostova kroz povijest.

More information

Matematika (PITUP) Prof.dr.sc. Blaženka Divjak. Matematika (PITUP) FOI, Varaždin

Matematika (PITUP) Prof.dr.sc. Blaženka Divjak. Matematika (PITUP) FOI, Varaždin Matematika (PITUP) FOI, Varaždin Dio II Bez obzira kako nam se neki teorem činio korektnim, ne možemo biti sigurni da ne krije neku nesavršenost sve dok se nam ne čini prekrasnim G. Boole The moving power

More information

DISTRIBUIRANI ALGORITMI I SISTEMI

DISTRIBUIRANI ALGORITMI I SISTEMI Postavka 7: međusobno isključivanje sa read/write promenljivama 1 DISTRIBUIRANI ALGORITMI I SISTEMI Iz kursa CSCE 668 Proleće 2014 Autor izvorne prezentacije: Prof. Jennifer Welch Read/Write deljene promenljive

More information

Grupiranje podataka u skupine 1 Rudolf Scitovski, Odjela za matematiku, Sveučilište u Osijeku 2

Grupiranje podataka u skupine 1 Rudolf Scitovski, Odjela za matematiku, Sveučilište u Osijeku 2 Klaster analiza 1 U tekstu vjerojatno ima pogrešaka. Ako ih uočite, molim da mi to javite Grupiranje podataka u skupine 1 Rudolf Scitovski, Odjela za matematiku, Sveučilište u Osijeku 2 1 Formulacija problema

More information

Uvod u analizu (M3-02) 05., 07. i 12. XI dr Nenad Teofanov. principle) ili Dirihleov princip (engl. Dirichlet box principle).

Uvod u analizu (M3-02) 05., 07. i 12. XI dr Nenad Teofanov. principle) ili Dirihleov princip (engl. Dirichlet box principle). Uvod u analizu (M-0) 0., 07. i. XI 0. dr Nenad Teofanov. Kardinalni broj skupa R U ovom predavanju se razmatra veličina skupa realnih brojeva. Jasno, taj skup ima beskonačno mnogo elemenata. Pokazaće se,

More information

Sveučilište J.J. Strossmayera u Osijeku. Odjel za matematiku. David Komesarović. Mooreovi grafovi. Diplomski rad. Osijek, 2017.

Sveučilište J.J. Strossmayera u Osijeku. Odjel za matematiku. David Komesarović. Mooreovi grafovi. Diplomski rad. Osijek, 2017. Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku David Komesarović Mooreovi grafovi Diplomski rad Osijek, 2017. Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni nastavnički

More information

BROWNOV MOST I KOLMOGOROV-SMIRNOVLJEVA STATISTIKA

BROWNOV MOST I KOLMOGOROV-SMIRNOVLJEVA STATISTIKA SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Nikolina Blažević BROWNOV MOST I KOLMOGOROV-SMIRNOVLJEVA STATISTIKA Diplomski rad Zagreb, veljača 2016. Voditelj rada: doc. dr.

More information

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni nastavnički studij matematike i informatike. Sortiranje u linearnom vremenu

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni nastavnički studij matematike i informatike. Sortiranje u linearnom vremenu Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni nastavnički studij matematike i informatike Tibor Pejić Sortiranje u linearnom vremenu Diplomski rad Osijek, 2011. Sveučilište J.

More information

Konformno preslikavanje i Möbiusova transformacija. Završni rad

Konformno preslikavanje i Möbiusova transformacija. Završni rad Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Lucija Rupčić Konformno preslikavanje i Möbiusova transformacija Završni rad Osijek, 2017. Sveučilište

More information

PARALELNI ALGORITMI ZA PROBLEM GRUPIRANJA PODATAKA

PARALELNI ALGORITMI ZA PROBLEM GRUPIRANJA PODATAKA SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Anto Čabraja PARALELNI ALGORITMI ZA PROBLEM GRUPIRANJA PODATAKA Diplomski rad Voditelj rada: doc. dr. sc. Goranka Nogo Zagreb,

More information

Turingovi strojevi Opis Turingovog stroja Odluµcivost logike prvog reda. Lipanj Odluµcivost i izraµcunljivost

Turingovi strojevi Opis Turingovog stroja Odluµcivost logike prvog reda. Lipanj Odluµcivost i izraµcunljivost Odluµcivost logike prvog reda B. µ Zarnić Lipanj 2008. Uvod Turingovi strojevi Logika prvoga reda je pouzdana. Logika prvog reda je potpuna. Γ `LPR K ) Γ j= SPR K Γ j= SPR K ) Γ `LPR K Prema tome, ako

More information

Mersenneovi i savršeni brojevi

Mersenneovi i savršeni brojevi Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Diplomski studij matematike Ana Maslać Mersenneovi i savršeni brojevi Diplomski rad Osijek, 2012. Sveučilište J.J. Strossmayera u Osijeku Odjel

More information

Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku. Velibor Gojić. Blok dizajni. Diplomski rad. Osijek, 2014.

Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku. Velibor Gojić. Blok dizajni. Diplomski rad. Osijek, 2014. Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Velibor Gojić Blok dizajni Diplomski rad Osijek, 2014. Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Velibor Gojić Blok dizajni

More information

Pitagorine trojke. Uvod

Pitagorine trojke. Uvod Pitagorine trojke Uvod Ivan Soldo 1, Ivana Vuksanović 2 Pitagora, grčki filozof i znanstvenik, često se prikazuje kao prvi pravi matematičar. Ro - den je na grčkom otoku Samosu, kao sin bogatog i zaslužnog

More information

AKSIOME TEORIJE SKUPOVA

AKSIOME TEORIJE SKUPOVA MAT-KOL (Banja Luka) ISSN 0354/6969 XV(1)(2009), 17-25 AKSIOME TEORIJE SKUPOVA Duško Bogdanić 1, Bojan Nikolić 2 i Daniel A. Romano 2 Sažetak: Postoji više od jedne mogućnosti aksiomatizacije teorije skupova.

More information

1. M.S. Shrikhande, S.S. Sane, Quasi-symmetric designs, Cambridge University

1. M.S. Shrikhande, S.S. Sane, Quasi-symmetric designs, Cambridge University Kvazisimetrični dizajni V. Krčadinac, 2016./2017., 30 sati. Dizajn s parametrima t-(v, k, λ) je skup od v točaka s familijom k-članih podskupova koje nazivamo blokovima, takvom da je svaki t-člani skup

More information

GENERALIZIRANI LINEARNI MODELI. PROPENSITY SCORE MATCHING.

GENERALIZIRANI LINEARNI MODELI. PROPENSITY SCORE MATCHING. GENERALIZIRANI LINEARNI MODELI. PROPENSITY SCORE MATCHING. STATISTIƒKI PRAKTIKUM 2 11. VJEšBE GLM ine ²iroku klasu linearnih modela koja obuhva a modele s specijalnim strukturama gre²aka kategorijskim

More information

AKSIOM IZBORA I EKVIVALENCIJE

AKSIOM IZBORA I EKVIVALENCIJE Sveučilište J.J. Strossmayera Odjel za matematiku Preddiplomski sveučilišni studij matematike Igor Sušić AKSIOM IZBORA I EKVIVALENCIJE Završni rad Osijek, 2013. Sveučilište J.J. Strossmayera Odjel za matematiku

More information

Mehurasto sortiranje Brzo sortiranje Sortiranje učešljavanjem Sortiranje umetanjem. Overviev Problemi pretraživanja Heš tabele.

Mehurasto sortiranje Brzo sortiranje Sortiranje učešljavanjem Sortiranje umetanjem. Overviev Problemi pretraživanja Heš tabele. Bubble sort Razmotrimo još jedan vrlo popularan algoritam sortiranja podataka, vrlo sličan prethodnom algoritmu. Algoritam je poznat pod nazivom Bubble sort algoritam (algoritam mehurastog sortiranja),

More information

Kvaternioni i kvaternionsko rješenje kvadratne jednadžbe

Kvaternioni i kvaternionsko rješenje kvadratne jednadžbe Kvaternioni i kvaternionsko rješenje 1 Uvod Kvaternioni i kvaternionsko rješenje kvadratne jednadžbe Željko Zrno 1 i Neven Jurić Što je matematika? Na što prvo čovjeka asocira riječ matematika? Matematika

More information

POOPĆENJE KLASIČNIH TEOREMA ZATVARANJA PONCELETOVOG TIPA

POOPĆENJE KLASIČNIH TEOREMA ZATVARANJA PONCELETOVOG TIPA SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Petra Zubak POOPĆENJE KLASIČNIH TEOREMA ZATVARANJA PONCELETOVOG TIPA Diplomski rad Voditelj rada: prof. dr. sc. Juraj Šiftar

More information

Procjena funkcije gustoće

Procjena funkcije gustoće Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Jelena Milanović Procjena funkcije gustoće Diplomski rad Osijek, 2012. Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Jelena Milanović

More information

Zanimljive rekurzije

Zanimljive rekurzije Zanimljive rekurzije Dragana Jankov Maširević i Jelena Jankov Riječ dvije o rekurzijama Rekurzija je metoda definiranja funkcije na način da se najprije definira nekoliko jednostavnih, osnovnih slučajeva,

More information

ANALYSIS OF THE RELIABILITY OF THE "ALTERNATOR- ALTERNATOR BELT" SYSTEM

ANALYSIS OF THE RELIABILITY OF THE ALTERNATOR- ALTERNATOR BELT SYSTEM I. Mavrin, D. Kovacevic, B. Makovic: Analysis of the Reliability of the "Alternator- Alternator Belt" System IVAN MAVRIN, D.Sc. DRAZEN KOVACEVIC, B.Eng. BRANKO MAKOVIC, B.Eng. Fakultet prometnih znanosti,

More information

Primjena optimizacije kolonijom mrava na rješavanje problema trgovačkog putnika

Primjena optimizacije kolonijom mrava na rješavanje problema trgovačkog putnika Fakultet elektrotehnike i računarstva Zavod za elektroniku, mikroelektroniku, računalne i inteligentne sustave Primjena optimizacije kolonijom mrava na rješavanje problema trgovačkog putnika Seminarski

More information

Razni načini zadavanja vjerojatnosti

Razni načini zadavanja vjerojatnosti Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike Sanja Pešorda Razni načini zadavanja vjerojatnosti Završni rad Osijek, 2017. Sveučilište J. J. Strossmayera

More information

Metrički prostori i Riman-Stiltjesov integral

Metrički prostori i Riman-Stiltjesov integral Metrički prostori i Riman-Stiltjesov integral Sadržaj 1 Metrički prostori 3 1.1 Primeri metričkih prostora................. 3 1.2 Konvergencija nizova i osobine skupova...................... 12 1.3 Kantorov

More information

Pogled u povijest razvoja algoritama

Pogled u povijest razvoja algoritama Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Tea Fijačko Pogled u povijest razvoja algoritama Diplomski rad Osijek, 2011. Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Tea

More information

Nekoliko kombinatornih dokaza

Nekoliko kombinatornih dokaza MAT-KOL (Banja Luka) ISSN 0354-6969 (p), ISSN 1986-5228 (o) http://www.imvibl.org/dmbl/dmbl.htm Vol. XXII (2)(2016), 141-147 Nekoliko kombinatornih dokaza Duško Jojić Prirodno-matematički fakultet, Univerzitet

More information