You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
134 Paralelizacija GA za rešavanje nekih NP-kompletnih problema<br />
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯<br />
• Rešenje je verifikovano (dokazano) kao optimalno. Ovaj kriterijum se koristi<br />
samo ako je realizovana odgovarajuća funkcija za verifikaciju optimalnosti<br />
rešenja;<br />
• Optimalno rešenje je unapred poznato za datu instancu problema i<br />
dostignuto je pri izvršavanju GA.<br />
ProveOptimalSolution = fp<br />
Dati parametar zadaje funkciju za verifikaciju optimalnosti rešenja, ukoliko je<br />
ona realizovana. Ova funkcija zavisi od prirode samog problema, pa je njena<br />
eventualna realizacija data u odgovarajućem delu programskog koda.<br />
Napomenimo da je ova opcija predviđena u budućoj primeni, jer za date<br />
probleme rešavane u ovom <strong>rad</strong>u (SPLP, UNDP i ISP), ovakva funkcija nije još<br />
uspešno realizovana.<br />
A.3 Konfigurisanje paralelnih aspekata<br />
Pomoću datoteke PARAL.CFG se postavljaju svi parametri vezani za<br />
paralelno izvršavanje genetskog algoritma. Na osnovu toga se može fleksibilno<br />
vršiti izbor raznih varijanti pri paralelizaciji: centralizovani ili distribuirani model,<br />
razne virtuelne arhitekture, način međuprocesorske komunikacije, i drugo.<br />
Napomenimo da je u ovom trenutku dostupan samo distribuirani model, i da<br />
je on korišćen za rešavanje problema opisanih u ovom <strong>rad</strong>u (SPLP, UNDP i<br />
ISP), dok je centralizovani model još u fazi testiranja.<br />
A.3.1 Zajednički deo<br />
[Common]<br />
U ovoj sekciji se bira model paralelizacije GA i na osnovu toga se postavljaju<br />
odgovarajuće vrednosti parametara bitnih za njegovo izvršavanje.<br />
Implementation = fp<br />
Dati model može biti jedan od:<br />
CentralizedPGA<br />
DistributedPGA<br />
Centralizovani model, gde osnovni proces izvršava<br />
GA, a ostali procesi mu pomažu u računanju<br />
vrednosti jedinki koje im on šalje.<br />
Distribuirani model, gde svaki proces izvršava GA na<br />
svojoj potpopulaciji, uz povremenu razmenu dobrih<br />
jedinki između njih.<br />
A.3.2 Paralelna arhitektura<br />
[Arhitecture]<br />
Ova sekcija se koristi za postavljanje virtuelne arhitekture po kojoj<br />
komuniciraju pojedinačni procesori. Poželjno je, ali nije neophodno, da data<br />
virtuelna arhitektura prati konkretne fizičke veze između datih procesora.<br />
Napomenimo da je ona mnogo značajnija u slučaju distribuiranog modela jer se<br />
njome zadaje i šema prosleđivanja jedinki između potpopulacija, nego kod