1 / 14

Neformalna Grupa za evolucijsko ra čunanje

Neformalna Grupa za evolucijsko ra čunanje. Marin Golub Domagoj Jakobović Marko Čupić http://gp.zemris.fer.hr. Grupa u brojkama…. Predmeti: 1 preddiplomski 3 diplomska 2 doktorska Vođenje s tudenata (93) : preddiplomski : 26 diplomski : 35 FER1 : 16 poslijediplomski: 16

Download Presentation

Neformalna Grupa za evolucijsko ra čunanje

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Neformalna Grupa za evolucijsko računanje Marin Golub Domagoj Jakobović Marko Čupić http://gp.zemris.fer.hr

  2. Grupa u brojkama… • Predmeti: • 1 preddiplomski • 3 diplomska • 2 doktorska • Vođenje studenata (93): • preddiplomski: 26 • diplomski: 35 • FER1: 16 • poslijediplomski: 16 • Prosječna godišnja proizvodnja: • seminar: 28 • završni rad: 17 • diplomski rad: 15 (prva godina) • FER1 diplomski: 8 (u padu)

  3. Pregled • ECF – programsko okruženje za evolucijsko računanje • Paralelizacija evolucijskih algoritama • Raspoređivanje uz pomoć genetskog programiranja

  4. 1. ECF – Evolutionary computation framework • C++ okruženje za evolucijske i srodne algoritme • Java inačica u razvoju • osnovne osobine: • jednostavnost – osim programiranja funkcije cilja, nije potrebno definirati druge parametre • proširivost – neovisnost algoritma o problemu • paralelno izvođenje – pokretanje na više procesora/računala uz pomoć MPI standarda • namjena: • brzo ostvarenje evolucijskog programa za korisnički problem (rapid prototyping) • usporedba učinkovitosti prikaza rješenja, algoritama, operatora... (test environment) • ispitivanje paralelizacije algoritama, primjena na grozdu/spletu računala

  5. ECF komponente: genotip • Genotip – prikaz rješenja • postojeći: niz bitova, binarni realni vektor, permutacijski vektor, stablo • svaki genotip: predefinirani genetski operatori (mutacija, križanje) • kombinacije: jedinkasadrži bilo koje genotipe u bilo kojem broju • parametri genotipa (preciznost, dimenzija, završni čvorovi stabla...) dinamički iz konfiguracijske datoteke • u razvoju: floating point vektor

  6. ECF komponente: algoritam • Algoritam – provedba evolucije • slijedni: GA/GP inačice, PSO • paralelni: više inačica • može biti neovisan ili ovisan o genotipu • npr: PSO inačica zahtijeva vektor realnih vrijednosti • u razvoju: GAn, DE, XCS

  7. ECF komponente: sustav • dodavanje korisničkih komponenata: genotipa, algoritama, operatora • kriteriji zaustavljanja: generacije, vrijeme, funkcija cilja, stagnacija, algoritamski... • subpopulacije + operator migracije • u razvoju/planu: • skupno pokretanje • parsiranje algoritma (konfiguracijska datoteka) • OpenMP paralelizacija • višekriterijska optimizacija, koevolucija • deterministički optimizacijski algoritmi

  8. 2. Paralelizacija evolucijskih algoritama • razvoj u okviru ECF-a • temeljen na MPI tehnologiji (višeprocesni rad, razmjena poruka) • podjela po strukturi podataka: • globalno paralelni algoritmi – svaka jedinka u dodiru sa svakom drugom jedinkom • eksplicitno paralelni • implicitno paralelni • raspodijeljeni algoritmi - subpopulacije koje evoluiraju zasebno, uključen operator migracije • hijerarhijski paralelni algoritmi • globalni unutar raspodijeljenog algoritma • podjela po vrsti: • sinkroni • asinkroni (rad s podacima)

  9. Globalno paralelni algoritmi • Eksplicitni paralelni algoritam: • algoritam uključuje uloge (voditelj, radnik) i/ili komunikacijske mehanizme (pošalji, primi) • dostupno: • sinkroni (voditelj čeka da radnici završe) • asinkroni (voditelj radi s nepotpunim jedinkama) • Implicitni paralelni algoritam: • izvodi se slijedni algoritam • korisnik bira operacije koje se izvode paralelno • dostupne paralelne operacije: • evaluacija, mutacija (+ evaluacija) • izvode se paralelno pod kontrolom sustava • načini implicitne paralelizacije: • sinkroni: jedinke se privremeno sklanjaju iz populacije • asinkroni: dio populacije čine nepotpune jedinke

  10. Raspodijeljeni i hijerarhijski algoritmi • raspodijeljeni algoritam: • svaka subpopulacija evoluira zasebno • operator migracije za razmjenu jedinki • migracija: sinkrona i asinkrona (u razvoju) • hijerarhijski algoritam: • izvođenje globalnog paralelnog algoritma na razini subpopulacija • mogućnosti: različiti algoritmi (slijedni i/ili paralelni) na različitim subpopulacijama

  11. 3. Raspoređivanje uz pomoć genetskog programiranja • problem: raspoređivanje u proizvoljnoj okolini • heuristički algoritmi, dinamički uvjeti rada • praksa: korištenje pravila raspoređivanja • WSPT, EDD, ATC(S) ... • primjena: koje pravilo? • ovisno o okruženju i kriteriju raspoređivanja • kombinacije: nepostojanje odgovarajućeg pravila • rješenje: evolucija (učenje) pravila uz pomoć GP-a • moguće za bilo koju kombinaciju okruženja i kriterija • uvjet: postojanje skupa primjera za učenje

  12. Struktura algoritma raspoređivanja • Meta-algoritam:dodjeljuje sredstva aktivnostima • ovisi o zadanom okruženju, definira se ručno • primjer: više strojeva, dinamički dolasci poslova • Funkcija prioriteta: ocjenjuje važnost poslova • funkciju prioriteta evoluira genetski program • elementi funkcije: svojstva poslova (trajanje, broj sljedbenika…), strojeva (brzina, iskorištenost...) i sustava (broj preostalih poslova, ukupno trajanje...) dok(ima poslova) { cekaj dok barem jedan stroj (M) i jedan posao nisu dostupni; pmin = trajanje najkraceg spremnog posla na stroju M; izracunaj prioritete svih poslova koji su spremni u intervalu [0, pmin]; rasporedi posao s najvecim prioritetom; }

  13. Primjena • preduvjeti: • ne traži se optimalno već prihvatljivo rješenje (ograničenje trajanja izgradnje rasporeda) • dinamičko okruženje (ispadi strojeva, dolasci poslova, promjene parametara) • postojanje skupa za učenje • neprikladno u uvjetima: • nepromjenjivosti okoline • neograničenog trajanja izrade rasporeda

  14. Neke teme studentskih radova Kombinacije problema i tehnika rješavanja: • kombinatorički problemi: TSP, raspoređivanje (scheduling, timetabling), vehicle routing • aproksimacija, simboličko integriranje, upravljanje robotom, sažimanje slike, problem N tijela, izgradnja kombinacijskih sklopova, GP strojno učenje • algoritmi: GA/GP, particle swarm, ant conlony, clone selection, prilagodljivi algoritmi, harmony search, neuronske mreže, LCS • računalna sigurnost (mnoge teme)

More Related