Predavanje X 1
Osnovne postavke teorije lokacije Merenje rastojanja u lokacijskim problemima Medijane mreže Algoritam za određivanje jedne medijane mreže Algoritam za određivanje jedne medijane orijentisane mreže Rešavanje problema p-medijana primenom algoritma za generisanje skupa dopustivih rešenja Proždrljivi heuristički algoritam za rešavanje problema p medijana Centri mreže 2
Teorija lokacije pokušava da da odgovore na sledeća pitanja: a) Koliki je ukupan broj objekata na mreži u kojima se obavlja opsluga? b) Gde locirati ove objekte? c) Na koji način izvršiti iti alokaciju klijenata koji zahtevaju opslugu po pojedinim objektima? (Odrediti za svaki od objekata skup klijenata koji će da budu opsluženi iz objekta). 3
U određenim slučajevima objekte je moguće locirati u bilo kojoj tački posmatranog regiona (kontinualni lokacijski problemi) Drugu grupu lokacijskih problema predstavljaju problemi u kojima se podrazumeva da je lociranje objekata moguće izvršiti samo u određenim, unapred definisanim tačkama (diskretni lokacijski problemi). 4
Predmet našeg razmatranja biće lokacijski problemi kod kojih je lociranje objekata dozvoljeno samo u određenim tačkama kama. Najveći broj saobraćajnih terminala moguće je zbog postojanja geografskih, urbanističkih, pravnih, ekonomskih i organizacionih ograničenja locirati samo u određenom broju čvorova. 5
Prvi rad posvećen delom i lokacijskim problemima potiče iz 19-tog veka. Znameniti matematičar Fermat je ukazao u svom radu na sledeći problem: Za zadate tri tačke u ravni pronaći četvrtu, tako da zbir rastojanja između četvrte tačke i datih triju tačaka bude minimalan. Začetnikom moderne lokacijske analize se smatra Alfred Weber koje je razmatrao problem lokacije skladista (199) i težio u svojoj analizi da minimizira rastojanja između skladišta i korisnika skladišta 6
Od položaja određenih objekata na transportnoj mreži bitno zavise kako kvalitet saobraćajnih ajnih usluga, tako i ukupni troškovi transportnog sistema. Položaj objekta na mreži u kojima se vrši neko opsluživanje zavisi od vrste samog opsluživanja (vazduhoplovno pristanište, stanice javnog gradskog prevoza, vatrogasna brigada, stanica hitne pomoći, policijske stanice) 7
A. Broj objekata na mreži Na transportnoj mreži treba locirati samo jedan objekat Na transportnoj mreži treba locirati veći broj objekata B. Dozvoljena mesta za lociranje objekata Objekte je moguće locirati u bilo kojoj tački posmatranog regiona (kontinualni lokacijski problem) Objekte je moguće locirati samo u određenim, unapred definisanim tačkama (diskretni lokacijski problemi) 8
C. Vrsta objekta na mreži Medijane (Potrebno je locirati jedan ili više objekata na mreži, tako da se minimizira prosečno rastojanje između objekata i korisnika usluga) Centri (Potrebno je locirati jedan ili više objekata na mreži, tako da se minimizira rastojanje do najudaljenijeg korisnika) Objekti sa prethodno definisanim perfomansama sistema (Potrebno je locirati jedan ili više objekata na mreži, tako da se zadovolje unapred definisani standardi u pogledu pređenih rastojanja, vremena putovanja, vremena čekanja na opslugu ili nekog drugog atributa. Ovaj tip problema sa naziva problemima zahtevanja) 9
D. Tip algoritma za rešavanje lokacijskih problema Egzaktni algoritmi Heuristički algoritmi E. Broj kriterijumskih funkcija na osnovu kojih se određuje lokacija objekata Postoji jedna kriterijumska funkcija Postoji više kriterijumskih funkcija (problemi višekriterijumske optimizacije) 1
Euclidska rastojanja Manhattan rastojanja y x 11
Manhattan rastojanje m(i, J) između čvora i(x i, y i ) i čvora j(x j, y j ) je jednako m ( I, J ) = xi x j + yi y j Euklidsko rastojanje e(i, J): ( ) ( ) ( ) 2 2 e I, J = x x + y y i j i j Manhattan rastojanje i Euklidsko rastojanje su specijalni slučajevi l p rastojanja l ( I J) p p, = xi x j + yi y j p 1 p 12
U slučaju problema medijane potrebno je locirati jedan ili više objekata na mreži tako da se minimizira prosečno rastojanje (prosečno vreme putovanja, prosečni transportni troškovi) od objekta do korisnika ili od korisnika do objekta. Problem medijane su naročito značajni za transportnu delatnost, s obzirom da se ova grupa problema javlja prilikom projektovanja različitih distributivnih sistema. Problem p medijana prvi je formulisao Hakimi (1964). 13
G = (N, A) - transportna mreža N - skup čvorova mreže a i - potražnja u čvoru i d ij rastojanje između čvora i i čvora j p - ukupan broj objekata koje treba locirati Objekti mogu da budu locirani u bilo kome čvoru mreže 14
Problem p medijana: x i j = 1,, kada klijenti iz cvora i u ostalim slucajevima su opsluzeni u objektu j Minimizirati minf = n n aidijxij i= 1j= 1 15
pri ograničenjima: j n = 1 n j =1 x j j x i j = 1, i = 1,2, K, n x j j = p x, i, j = 1,2, K, n; i i j {,1}, i, j = 1,2, K n x i j, j 16
Definisana kriterijumska funkcija odražava težnju da se minimizira ukupno pređeno rastojanje između objekata i korisnika. Prvo ograničenje se odnosi na činjenicu da je svaki klijent (svaki čvor) opslužen od strane samo jednog objekta. Drugim ograničenjem se ukazuje da na mreži treba da postoji ukupno p objekata. Svaki klijent lociran u nekom od objekata dobija opslugu iz tog objekta. Ovo je iskazano kroz treće ograničenje. 17
Hakimi (1964) je pokazao da postoji najmanje jedan skup p-medijana u čvorovima mreže G, što znači da p optimalnih lokacija objekata u mreži mora da se nalazi isključivo ivo u čvorovima mreže. Ova činjenica u znatnoj meri olakšava proceduru iznalaženja p-medijana, jer je potrebno ispitati samo lokacije koje se nalaze u čvorovima. 18
Algoritam za generisanje skupa dopustivih rešenja Algoritmi zasnovani na teoriji grafova Heuristički algoritmi Algoritmi zasnovani na matematičkom programiranju 19
Jednostavan algoritam kojim se generiše skup dopustivih rešenja i određuje lokacija jedne medijane u slučaju neorijentisane mreže predložio je Hakimi (1965). Algoritam se sastoji iz sledećih algoritamskih koraka: 2
KORAK 1: Izračunati dužine najkraćih puteva d ij između svih parova čvorova (i, j) mreže G i prikazivati ih u matrici najkraćih puteva D (Čvorovi predstavljaju moguće lokacije za medijanu, a čvorovi j predstavljaju lokacije klijenata koji zahtevaju opslugu). KORAK 2. Pomnožiti j-tu kolonu matrice najkraćih puteva sa brojem zahteva za opslugom a j iz čvora j. Element a j d ij matrice [a j d ij ] predstavlja rastojanje koje prevale korisnici iz čvora j koji se opslužuju u čvoru i. Matricu [a j d ij ] označiti sa D. 21
KORAK 3: Izvršiti sumiranje duž svake vrste i matrice D. Izraz n j = 1 a j d predstavlja ukupno rastojanje koje prevale korisnici u slučaju kada je objekat lociran u čvoru i. i j KORAK 4: Čvor čijoj vrsti odgovara najmanje ukupno rastojanje koje prevaljuju korisnici predstavlja lokaciju za medijanu. 22
Primer Transportna mreža na kojoj treba odrediti lokaciju jedne medijane 23
Čvorovi transportne mreže su označeni respektivno sa A, B, C,.., H. Dnevni zahtevi za opslugom dati su u zagradama pored čvorova. Takođe su označene i dužine svih grana u mreži. Problem koji treba da rešimo sastoji se u sledećem: Gde locirati objekat u kome se pruža određena opsluga, tako da ukupno rastojanje koje prevale korisnici usluga do objekta bude minimalno (Korisnici usluga se nalaze u čvorovima). Na osnovu Hakimi-jeve teoreme (1964) možemo da zaključimo da postoji 8 mesta-kandidata za lociranje objekta. To su čvorovi A, B, C,.., H. 24
Matrica najkraćih rastojanja: 25 [ ] = 2 7 3 4 4 8 6 2 6 2 6 4 7 5 7 6 4 9 6 4 7 3 2 4 5 2 5 3 4 6 9 5 3 1 5 4 4 6 2 3 7 2 8 7 4 5 1 7 5 6 5 7 3 5 2 5 H G F E D C B A d H G F E D C B A j i 1 6 8 2 2 4 3 5
U sledećem koraku izračunajmo izraze a j d ij, tako što ćemo svaku kolonu matrice najkraćih rastojanja pomnožiti sa brojem zahteva za opslugom u čvoru j. [ a d ] j i j = A A B 5 C2 D5 E3 F7 G5 H 6 B 3 42 6 3 24 42 48 C 16 56 24 16 48 32 32 D 1 2 6 1 18 12 8 E 6 1 4 1 8 4 6 F 28 16 24 36 16 24 28 G 15 21 12 18 6 18 6 H 3 4 2 2 15 35 1 Σ 117 Σ 897 Σ 976... 26
Sumiranjem po vrstama matrice [a j d ij ] dobijaju se ukupna rastojanja koja bi prešli korisnici usluga, ukoliko bi objekat bio smešten u pojedinim čvorovima duž čijih vrsta se vrši sumiranje. Objekat treba locirati u onom čvoru duž čije vrste je dobijen najmanji zbir po izvršenom sumiranju. 27
Lokacija objekta je u čvoru Broj ostvarenih putničkih kilometara Lokacija objekta je u čvoru Broj ostvarenih putničkih kilometara A 117 E 762 B 897 F 914 C 976 G 966 D 1262 H 944 Brojevi ostvarenih putničkih kilometara 28
Objekat treba locirati u čvoru E Lociranje objekta u čvoru E 29
Izloženi algoritam za odeđivanje lokacije jedne medijane u slučaju neorijentisane mreže, može se u potpunosti primeniti i za određivanje lokacije ulazne, odnosno izlazne medijane. Neophodno je jedino voditi računa o orijentaciji mreže, odnosno o dužinama najkraćih puteva između pojedinih parova čvorova. 3
Orijentisana mreža u kojoj treba odrediti lokaciju jedne medijane 31
Čvorovi: A, B, C, D, E Matrica najkraćih rastojanja : 32 [ ] = 4 3 6 7 4 5 2 3 4 6 5 4 6 2 7 2 7 4 5 1 E D C B A d E D C B A j i
Ukoliko ulazna medijana bude u čvoru A, ukupno rastojanje koje će preći korisnici iznosi: 33 542 7 4 3 2 4 6 2 8 1 = + + + + [ ] = 4 3 6 7 4 5 2 3 4 6 5 4 6 2 7 2 7 4 5 1 E D C B A d E D C B A j i 1 8 6 2 4
Lokacija ulazne Broj ostvarenih medijane je u čvoru putničkih kilometara A 542 B 554 C 216 D 424 E 366 Broj ostvarenih putničkih kilometara 34
Medijana treba da bude locirana u čvoru C Loikacija ulazne medijane u čvoru C 35
Algoritam za generisanje skupa dopustivih rešenja enja podrazumeva ispitivanje svih mogućih rešenja lokacija p-medijana, izračunavanje odgovarajućih vrednosti definisane kriterijumske funkcije i određivanja optimalnog rešenja. Ovakav pristup moguće primeniti jedino u slučaju mreža sa manjim brojem čvorova na kojima treba locirati manji broj objekata. 36
Algoritam za generisanje skupa dopustivih rešenja se sastoji od sledećih koraka: Generisati sva dopustiva rešenja Za svako dopustivo rešenje izračunati vrednost kriterijumske funkcije Identifikovati optimalno rešenje Ukupan broj rešenja u slučaju kada imamo nčvorova i p objekata je: n p 37
n - ukupan broj čvorova u mreži (ukupan broj kandidata za lokaciju p-medijana) d ij - dužina najkraćeg puta od čvora i do čvora j d ij = a j d ij - rastojanje koje prevale korisnici iz čvora j koji se opslužuju u čvoru i 38
D - matrica čiji su elementi d ij X p = {v j1, v j2,..., v jp } - jedan od mogućih podskupova od p čvorova n Za svaki od p podskupova p-čvorova potrebno je izračunati sumu: n j = 1 { d, d,, d } min 2 j1 j j j K Podskup p-čvorova kome odgovara najmanja vrednost sume predstavlja skup čvorova u kome treba locirati p-medijana. 39 j p j
Primer: Za mrežu prikazanu na slici odrediti lokacije dve medijane. [ ] d ij = 7 7 8 13 7 11 5 11 7 11 6 6 8 5 6 6 13 11 6 6 4
Čvorovi: A, B, C, D, E Mreža sadrži 5 čvorova S obzirom da u mreži postoji 5 čvorova, to je ukupan broj kombinacija za lociranje 2 medijane jednak. 5 = 1 2 ( AB, ), ( AC, ), ( AD, ), ( AE, ), ( BC, ), ( BD, ), ( BE, ), ( CD, ), ( CE, ) i( DE, ) 41
Izračunajmo ukupno rastojanje koje će da prevale korisnici u slučaju da su medijane locirane u čvorovima A i B. Korisnici iz čvora A će dobijati opslugu u čvoru A. Takođe će korisnici iz čvora B dobijati opslugu u čvoru B. Čvoru C je bliži čvor A nego čvor B, tako da će korisnici iz čvora C da budu opsluživani u čvoru A. 42
Korisnici iz čvora D će da budu opsluženi u čvoru B. U čvoru B će da budu opsluženi i korisnici iz čvora E. Ukupno pređeno rastojanje u slučaju lokacije medijana u čvorovima A i B je jednako: 1+ 1+ 7 8+ 5 12+ 11 8 = 24 43
[ ] d ij 1 9 8 12 8 7 7 8 13 7 11 5 11 = 7 11 6 6 8 5 6 6 13 11 6 6 [ ij ij] a d 7 = 7 8 13 A B C D E A B C D E 63 99 45 99 56 88 48 48 96 6 72 72 14 88 48 48 44
Par čvorova u kojima su locirane medijane Ukupno pređeno rastojanje od strane korisnika Par čvorova u kojima su locirane medijane Ukupno pređeno rastojanje od strane korisnika (A, B) 24 (B, D) 166 (A, C) 219 (B, E) 178 (A, D) 141 (C, D) 163 (A, E) 183 (C, E) 241 (B, C) 178 (D, E) 173 45
Medijane treba locirati u čvorovima A i D 46
Proždrljivi heuristički algoritam (Greedy) za rešavanje problema p medijana su predlozili Kuehn i Hamburger (1963). Na početku je skup čvorova u kojima se nalaze medijane prazan. U prvom koraku proždrljivog algoritma treba rešiti problem jedne medijane. Čvor koji predstavlja resenje problema jedne medijane treba uključiti u skup medijana. 47
U svakom sledećem koraku se u skup čvorova u kojima se nalaze medijane uključuje jedan novi čvor. Čvor koji se uključuje u skup medijana je čvor cijim bi se uključenjem najviše smanjila vrednost ukupnog rastojanja koje prelaze korisnici usluga. 48
Primer: Za mrežu prikazanu na slici odrediti lokacije tri medijane primenom proždrljivog heurističkog algoritma. [ ] d ij = 7 7 8 13 7 11 5 11 7 11 6 6 8 5 6 6 13 11 6 6 49
5 [ ] = 6 6 11 13 6 6 5 8 6 6 11 7 11 5 11 7 13 8 7 7 d ij 1 9 8 12 8 [ ] = 72 48 99 13 48 48 45 8 48 72 99 7 88 6 88 7 14 96 56 63 d a ij ij
Sumiranjem po vrstama matrice [a j d ij ] dobijaju se ukupna rastojanja koja bi prešli korisnici usluga, ukoliko bi objekat bio smešten u pojedinim čvorovima duž čijih vrsta se vrši sumiranje. Ostvareni broj putničkih kilometara u zavisnosti od lokacije objekta Lokacija objekta je Broj ostvarenih putničkih u čvoru kilometara A 319 B 313 C 289 D 221 E 349 51
Čvorovi u kojima se nalaze medijane Ukupno preñeno rastojanje Smanjenja ukupnog rastojanja koje prevaljuju korisnici u odnosu na slučaj kada se medijana nalazi samo u čvorud (A,D) 141 221-141=8 (B,D) 166 221-166=55 (C,D) 163 221-163=58 (E,D) 173 221-173=48 52
Uključenjem čvora A u skup medijana najviše bi se smanjila vrednost ukupnog rastojanja koje prelaze korisnici usluga. Čvor A uključujemo u skup medijana, tako da skupu medijana pripadaju sada čvorovi A i D. Treća medijana može da bude locirana u čvoru B, čvoru C, ili čvoru E. 53
Vrednosti smanjenja ukupnog rastojanja koje prevaljuju korisnici u slučajevima kada je treća medijana locirana u čvorovima B, C, ili E su prikazane u tabeli. Čvorovi u kojima se nalaze Smanjenja ukupnog rastojanja koje medijane prevaljuju korisnici u odnosu na slučaj kada se medijana nalazi u čvorovimaai D (A, B, D) 45 (A, C, D) 48 (A, E, D) 48 54
Pod problemima centra podrazumeva se iznalaženje lokacije jednog ili više objekata na mreži, tako da se minimizira rastojanje rastojanje do najudaljenijeg korisnika. Rešavanje problema centra povezano je sa određivanjem položaja baza hitne pomoći, vatrogasne brigade ili policijskih stanica. 55
CENTRI CENTAR ČVOROVA Objekat moze biti lociran samo u čvorovim CENTAR MREŽE Objekat može biti lociran i na granama i u čvorovima. Najkraći putevi između svih parovačvorova moraju biti izračunati pre primene odgovarajućeg algoritma za pronalaženje centra transportne mreže. 56
Tačka x a na grani a se zove lokalni centar grane, ako je sledeća nejednačina tačna za svaku tačku x ( x ) f ( x) f a Rastojanje između lokalnog centra bilo koje grane i njemu najudaljenijeg čvora je manje ili jednako rastojanju između bilo koje tačke na toj grani i njoj najudaljenijegčvora. 57
Tačka j (c) se naziva apsolutnim centrom mreže G ako je sledeća nejednačina tačna za svaku tačku j f ( ( c) j ) f ( i) Rastojanje između apsolutnog centra mreže i njemu najudaljenijeg čvora je manje ili jednako rastojanju između bilo kojeg drugog čvora na mreži i njemu najudaljenijeg čvora. 58
59 Primer: Locirati centar u nekom od čvorova mreže [ ] = 2 4 3 2 6 2 4 6 4 3 2 5 5 4 5 5 E D C B A d E D C B A j i 7 7 7 7 min {7, 7, 7, 7, 5} = 5 čvor E je centar čvorova
Korak 1: Pronaći lokalni centar x a za svaku granu mreže G Korak 2: Izabrati lokalni centar sa najmanjom vrednošću f(x a ). Ovaj lokalni centar predstavlja apsolutni centar x mreže G. 6
61
Za svaku tačku x lociranu na linku (A, B) crta se funkcija d x,i za i = A, B, C, D, E. Na primer, ako se usvoji da je x = u A i x = 5 u B, tada je: dx, A = x, za x 5 dx, B = 5 x, za x 5 d x, C x + 4, za x 4 = 12 x, za 4 < x 5 62
d dx, D = 7 x, za x 5 x, E 5 + x, za x 1.5 = 8 x, za 1.5 < x 5 Funkcija f(x) je nacrtana sa podebljanom linijom Minimalna vrednost funkcije f(x) predstavlja lokalni centar mreže 63
Grana Funkcija Lokalni centri f(x) (A, B) f(x a ) = 6 1 jedinica od A ili 2 jedinice od A (A, E) f(x a ) = 4.5.5 jedinice od E Apsolutni centar (A, C) f(x a ) = 7 u A i C (E, C) f(x a ) = 5 u E (B, E) f(x a ) = 5 u E (B, D) f(x a ) = 6.5 1.5 jedinice od B (D, E) f(x a ) = 5 u E 64