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.

3. PARALELNA IMPLEMENTACIJA (PGANP)<br />

Na osnovu teoreme o shemama može se uočiti pojava unutrašnjeg<br />

paralelizma GA. Pored toga, postoje dodatne mogućnosti za paralelizaciju GA<br />

pošto gotovo sve funkcije u GA implementaciji, sadrže visok stepen međusobne<br />

nezavisnosti, pa se mogu relativno uspešno paralelizovati.<br />

U ovom poglavlju će biti prikazana paralelna GA implementacija za<br />

rešavanje NP-kompletnih problema (PGANP - Paralelni Genetski Algoritam za<br />

rešavanje NP-kompletnih problema - Parallel Genetic Algorithm for solving the<br />

NP-complete problems). Dati paralelni genetski algoritam je implementiran<br />

koriščenjem WMPI razvojnog okruženja, koji podržava konstrukcije MPI<br />

standarda verzije 1.1 . Implementiran je distribuirani model paralelizacije GA, pri<br />

čemu su izdvojeni neki zajednički delovi koji mogu biti iskorišćeni i za<br />

implementaciju nekog drugog modela paralelizacije. Opis opštih karakteristika<br />

paralelne implementacije je dat u odeljku 3.2, a pojedinačnih funkcija vezanih<br />

distribuirani model u odeljku 3.3.<br />

3.1 Neke od postojećih paralelnih GA implementacija (PGA)<br />

Paralelizacija GA se najčešće odvija po distribuiranom ili centralizovanom<br />

modelu. U distribuiranom modelu PGA svaka potpopulacija primenjuje poseban<br />

operator selekcije, koji se izvršava nezavisno od drugih. Drugi model ima<br />

centralizovani mehanizam selekcije cele populacije, odnosno svih<br />

potpopulacija.<br />

U [Tns87] je primenjen PGA za optimizaciju Walsh-olikih funkcija<br />

korišćenjem paralelnog računara sa 64 procesora, povezanih kao hiperkocka<br />

(hypercube). Korišćen je distribuirani PGA, koji se u literaturi naziva i model<br />

ostrva (island model), gde svaki procesor izvršava genetski algoritam na<br />

sopstvenoj potpopulaciji. Dobre jedinke se periodično razmenjuju između<br />

susednih procesora, i uključuju se u potpopulaciju suseda u narednim<br />

generacijama. Razmena po susednim potpopulacijama, koje odgovaraju<br />

različitim dimenzijama hiperkocke, se odvija u različitim vremenskim trenucima.<br />

Iz prikazanih rezultata se vidi skoro linearno ubrzanje, u odnosu na t<strong>rad</strong>icionalni<br />

sekvencijalni GA izvršen 1000 generacija, a preporučuje se 8 potpopulacija kao<br />

najbolji kompromis. Jedno poboljšanje date PGA implementacije je opisano u<br />

[Tns89].<br />

Paralelna implementacija razmatrana u [Sta91] koristi nešto drugačiji pristup.<br />

Svaki procesor šalje kopije nekoliko svojih najboljih jedinki susednim<br />

procesorima, koji ih smeštaju na mesto najlošijih jedinki u svojoj potpopulaciji.<br />

Globalna veličina populacije je ostala fiksirana tokom izvršavanja, a

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

Saved successfully!

Ooh no, something went wrong!