Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Problem dizajniranja mreže neograničenog kapaciteta<br />
101<br />
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯<br />
Unakrsno razlaganje (cross decomposition) je takođe primenjivano za<br />
rešavanje datog problema, kao kombinacija Bender-ovog razlaganja i<br />
Lagrange-ove relaksacije. Ova metoda je posebno razvijena za rešavanje<br />
problema mešovitog celobrojnog programiranja (Mixed Integer Programming -<br />
MIP) , i detaljno opisana u <strong>rad</strong>u [VRo83]. U [Hlm90] je dokazano da dati<br />
postupak konvergira ka rešenju u konačnom broju koraka. Međutim, pokazalo<br />
se da iako nešto bolji od prethodne metode (Bender-ovog razlaganja), pri<br />
rešavanju UNDP ipak zadržava neke njene nedostatke. Pomenimo i neka<br />
njena unapređenja: metoda unakrsnog razlaganja pomoću srednje vrednosti<br />
(mean value cross decomposition) opisanu u [Hlm92] i hibridizacija unakrsnog<br />
razlaganja i uopštene metode opisane u [Kor65].<br />
Jedna od značajnih heuristika za rešavanje UNDP je i dualna metoda<br />
penjanja (dual ascent), opisana u <strong>rad</strong>u [Bla89]. Ona vrlo brzo daje rešenje<br />
relativno dobrog kvaliteta (greška 1% - 4% od opitmalnog rešenja), ali dobijeno<br />
rešenje ne može dalje da se poboljšava. Pokušaji da se data metoda uklopi kao<br />
subg<strong>rad</strong>ijentna u neku drugu metodu nisu dali očekivane rezultate (videti<br />
[Hel94] i [Hlm97b]).<br />
Lagranževa heuristika koja je uspešno korišćena za rešavanje lokacijskih<br />
problema ([Hlm97a]), prilagođena je datom problemu i primenjena uz BnB. Dati<br />
pristup otklanja neke nedostatke prethodnih metoda pa su dobijeni odlični<br />
rezultati pri izvršavanju na UNDP instancama velike dimenzije (70 čvorova,<br />
1000 grana i 138 artikala), koji su optimalno rešeni.<br />
Osim navedenih, pomenimo i još neke metode opisane u sledećim<br />
<strong>rad</strong>ovima: [Lin82], [Tar83], [Bla87], [Brme95] i [Grö95]. Za rešavanje UNDP se<br />
mogu koristiti i programski paketi za rešavanje opštijeg problema mešovitog<br />
celobrojnog programiranja. Napomenimo da su dati programski paketi<br />
projektovani za proizvoljan problem mešovitog celobrojnog programiranja, pa<br />
ne uključuju specifične karakteristike ovog problema, što se ogleda u prilično<br />
lošijim performansama. Njihova prednost je u opštoj primeni na bilo koji problem<br />
iz date klase, gde je potrebno zadati samo funkciju koja se optimizuje i uslove<br />
zadatka, bez potrebe za dodatnim programiranjem. Još neke metode za<br />
rešavanje problema dizajniranja mreža i ostale korisne informacije se mogu<br />
naći i u <strong>rad</strong>ovima [Hlm91], [Hei92] i [Sas97].<br />
6.3 GA implementacija<br />
6.3.1 Kodiranje i vrednosna funkcija<br />
Ovaj problem formulisan kao (6.1) - (6.4), ima ukupno (|C|+1) ⋅ |A|<br />
promenljivih (y ij i x k ij : (i,j)∈A, k∈C), i u takvom obliku nije pogodan za primenu<br />
GA na UNDP instancama veće dimenzije. Međutim, broj promenljivih potrebnih<br />
za kodiranje se može smanjiti, na sledeći način. Ukoliko fiksiramo elemente y ij ,<br />
dati problem se svodi na |C| problema nalaženja najkraćeg puta u grafu. U tom<br />
k<br />
slučaju preostale promeljive x ij možemo generisati relativno lako, algoritmom<br />
polinomske složenosti za nalaženje najkraćeg puta u grafu. Na taj način se<br />
kodiraju samo elementi niza y ij (i,j)∈A, što je mnogo pogodnije za primenu<br />
genetskog algoritma, jer su oni binarne vrednosti (y ij ∈ {0,1}).<br />
Zbog svega prethodno navedenog, svaki bit u genetskom kodu jedinke<br />
predstavlja odgovarajuću vrednost za niz y ij . Na taj način je generisan podgraf<br />
G‘ = grafa G, gde je A‘ = {(i,j) | (i,j)∈A ∧ y ij = 1}. On predstavlja podgraf