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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

66 Paralelizacija GA za rešavanje nekih NP-kompletnih problema<br />

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

eksperimentisano je sa različitim veličinama potpopulacija dodeljenih svakom<br />

procesoru. Najbolji rezultati su dobijeni korišćenjem promenljivog nivoa<br />

mutacije, koji tokom izvršavanja GA raste do neke, unapred zadate vrednosti,<br />

paralelno sa rastom sličnosti jedinki u populaciji. Pri povećavanju broja potrebno<br />

je mnogo pažljivije odrediti granice i tok promene nivoa mutacije, jer je kod<br />

manjih potpopulacija mnogo veća mogućnost preuranjene konvergencije, ili<br />

gubitka genetskog materijala. Rezultati izvršavanja takođe ukazuju da je veoma<br />

bitno pravilno odrediti učestalost razmene jedinki jer ako je ona previše česta, ili<br />

jako retka, dolazi do značajnog pogoršanja performansi date implementacije.<br />

PGA za rešavanje problema K-podele (K-partition problem) je opisan u<br />

[Coh91]. Svaki od 16 procesora povezanih u hiperkocku, izvršava GA na<br />

potpopulaciji od 80 jedinki uz razmenu jedinki na svakih 50 generacija. U datom<br />

problemu su u razmatranje uključene i nekorektne jedinke, pa je funkcija<br />

prilagođenosti računata po formuli f(x) = c(x) + λ ⋅ p(x), gde je c(x) prilagođenost<br />

jedinke a p(x) kaznena funkcija. Eksperimenti sa korišćenjem kaznene funkcije<br />

su pokazali da su najbolji rezultati dobijeni ako je za svaku potpopulaciju<br />

generisan slučajan broj λ∈[0, 1], umesto fiksnog izbora λ=1 za sve<br />

potpopulacije.<br />

Gordon i Whitley su u <strong>rad</strong>u [Grd93] izvršili uporednu analizu osam različitih<br />

PGA i verziju Goldberg-ovog prostog GA ([Gol89]) na optimizaciji nekoliko<br />

raznolikih test funkcija. Testiranje je pokazalo da je distribuirani "model ostrva"<br />

postigao dobre rezultate, čak i na najtežim test-primerima.<br />

Jedna od najpoznatijih paralelnih implementacija GA je data u [Müh92]. Ona<br />

je iskorišćena za rešavanje problema trgovačkog putnika (Traveling Salesman<br />

Problem - TSP) i problema podele grafa (graph partitionig problem). Korišćen je<br />

centralizovani model PGA, pa je populacija globalna, a svaka jedinka je<br />

dodeljena tačno jednom procesoru. Pri tome se genetski operatori selekcije,<br />

ukrštanja i mutacije vrše isključivo uz pomoć susednih jedinki, odnosno, jedinki<br />

koje pripadaju susednim procesorima u datoj paralelnoj arhitekturi, bez ikakve<br />

globalne kontrole. Nakon toga se kvalitet rešenja svake jedinke dodatno<br />

poboljšava korišćenjem lokalnog pretraživanja. Predlaže se sporo prosleđivanje<br />

dobrih jedinki kroz celu populaciju kao metod za sprečavanje preuranjene<br />

konvergencije. Dodatne informacije o raznim mogućnostima date PGA<br />

implementacije se mogu dobiti u [Müh91a] i [Müh91b].<br />

U [Las91] je opisana PGA implementacija za rešavanje problema podele<br />

grafa korišćenjem 64-procesorskog transpjuterskog sistema. Selekcija se odvija<br />

nezavisno za svaku jedinku, korišćenjem nekoliko susednih jedinki u<br />

dvodimenzionalnoj višeprocesorskoj arhitekturi. Roditelj se zamenjuje<br />

potomkom, ukoliko ovaj ima veću ili jednaku vrednost najmanje jedne susedne<br />

jedinke. Najbolji rezultati su dobijeni korišćenjem velike veličine populacije uz<br />

mali broj suseda.<br />

Dobri rezultati, pri rešavanju TSP-a su postignuti korišćenjem PGA na 64-<br />

procesorskom transpjuterskom sistemu kao što se može videti u [Grg91].<br />

Veličina globalne populacije je bila 64, uz 8 suseda za svaku jedinku.<br />

Prilagođenost pojedinačne jedinke se računa relativno u odnosu na susede, a<br />

ne globalno za celu populaciju. Mehanizam selekcije u datoj implementaciji<br />

sadrži elitističku strategiju, u kojoj je potomak izabran u narednu generaciju,<br />

samo u slučaju da je bolji od svog roditelja. U paralelnoj implementaciji je<br />

ostvarena mala međuprocesorska komunikacija, zbog relativno malog broja

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

Saved successfully!

Ooh no, something went wrong!