08.03.2015 Views

Ceo rad - PDF (1.3 MB)

Ceo rad - PDF (1.3 MB)

Ceo rad - PDF (1.3 MB)

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Prost lokacijski problem 89<br />

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯<br />

5.3.2.1 Računanje u slučaju e > e 0<br />

Ako je e dovoljno veliko (e > e 0 ) u računanju vrednosti jedinke koristimo listu<br />

indeksa. Za svakog korisnika nalazimo najpovoljnijeg snabdevača, na sledeći<br />

način:<br />

• Za datog korisnika nalazimo odgovarajuću listu indeksa;<br />

• Pretražujemo datu listu do prve pojave y i =1;<br />

• Za snabdevanje tekućeg korisnika je izabran snabdevač sa lokacije i.<br />

Primenom date procedure, pošto je svaka vrsta uređena u neopadajućem<br />

poretku troškova transporta izbrane su najpovoljnije lokacije za snabdevanje<br />

svakog od korisnika. Pošto je broj uspostavljenih lokacija za snabdevanje veliki<br />

(e > e 0 ), potrebno je samo nekoliko koraka za nalaženje prvog elementa koji<br />

zadovoljava y i =1, u listi indeksa, pa je vreme izvršavanja vrednosne funkcije<br />

malo.<br />

Nalaženje niza y i iz genetskog koda date jedinke je vremenske složenosti<br />

O(m). Za svakog od m korisnika, potrebno je prosečno m/e koraka za<br />

pretraživanje liste indkesa, pri nalaženju najpogodnije lokacije za snabdevanje.<br />

Zbog toga je vremenska složenost vrednosne funkcije u ovom slučaju jednaka<br />

⎛<br />

Om+ n⋅<br />

m ⎞<br />

⎜<br />

⎝ e ⎠ .<br />

5.3.2.2 Računanje u slučaju e ≤ e 0<br />

Prethodna procedura daje dobre rezultate samo ako je e veliko, pa je niz y<br />

"gust" (sadrži mnogo elemenata jednakih jedan). U suprotnom, ako je niz y<br />

"redak", prethodna strategija daje loše rezultate, jer je potrebno mnogo više<br />

koraka pri pretraživanju liste indeksa, da bi pronašli element za koji je y i =1.<br />

Zbog toga, u datom slučaju, primenjujemo drugačiju strategiju za nalaženje<br />

najpovoljnijih lokacija za snabdevanje. Pri tome više ne koristimo listu indeksa,<br />

jer to nije celishodno, već formiramo niz o koji sadrži indekse nenultih članova<br />

niza y (odnosno elemente za koje je y i =1). Dakle, o j = i, ako y i = 1 predstavlja j-ti<br />

nenulti element po redosledu pojavljivanja u nizu y. Veličina niza o je mala, jer<br />

je niz y "redak", pa ima malo nenultih elemenata.<br />

Pri nalaženju najpovoljnije lokacije za snabdevanje datog korisnika,<br />

pretražujemo samo niz o. Iako niz o nije uređen u nekom poretku (kao na<br />

primer lista indeksa), pa zahteva pretraživanje po svim članovima niza, on je<br />

male dužine, jer je e malo, što garantuje brzo izvršavanje. Konstrukcija niza o<br />

zahteva O(m) vremena, ali se ona izvršava samo jednom na početku, a koristi<br />

se n puta, pri nalaženju najpovoljnije lokacije snabdevanja za svakog korisnika.<br />

Za pretraživanje niza o je potrebno e koraka, pa je tada ukupna vremenska<br />

složenost date vrednosne funkcije jednaka O(m + n· e).<br />

5.3.2.3 Teorijska ocena složenosti<br />

U ovom odeljku ćemo dati teorijsku ocenu složenosti celokupne funkcije za<br />

računanje vrednosti jedinke.<br />

Teorema 5.1. U opštem slučaju vreme izvršavanja vrednosne funkcije nije<br />

veće od Om ( + n⋅ m)<br />

.<br />

Dokaz: Za e > e 0 primenjujemo prvu strategiju, pa je

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!