TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta Yliassistentti Jussi Hakanen jussi.hakanen@jyu.fi syksy 2010
Evoluutiopohjainen monitavoiteoptimointi
MCDM ja EMO Monitavoiteoptimointi kuuluu monitavoitteisen päätöksenteon (Multiple Criteria Decision Making, MCDM) kenttään MCDM sisältää ns. perinteiset menetelmät monitavoitteisten tehtävien ratkaisemiseen Kurssilla tähän asti esitellyt monitavoiteoptimointimenetelmät kuuluvat MCDM:n alle Viimeisten parin vuosikymmenen aikana evoluutiopohjainen monitavoiteoptimointi (Evolutionary Multiobjective Optimization, EMO) on noussut erittäin suosituksi tavaksi ratkoa monitavoitteisia tehtäviä
MCDM ja EMO Suurin ero MCDM- ja EMO-lähestymistavoissa MCDM käsittelee yhtä ratkaisua kerralla, yleensä deterministisillä menetelmillä EMO käsittelee kerralla useaa ratkaisua (populaatio) käyttäen stokastisia menetelmiä, jotka ovat saaneet vaikutteita evoluutiosta MCDM on vanhempi tieteenala MCDM ja EMO ovat kehittyneet itsenäisesti Viimeisen vuosikymmenen aikana ne ovat lähestyneet toisiaan ja alkaneet tekemään yhteistyötä
EO: 1 tavoite Evoluutiopohjainen optimointi (Evolutionary Optimization, EO) Klassisten optimointimenetelmien idea tarkastellaan yhtä ratkaisupistettä kerralla valitaan aloituspiste (muuttuja-avaruudessa) määritetään muuttuja-avaruudessa suunta ja siihen askelpituus, jotta päästään parempaan ratkaisuun iteroidaan kunnes ratkaisu täyttää lopetuskriteerit
EO: 1 tavoite EO-menetelmien idea Tarkastellaan kerrallaan joukkoa ratkaisuita (populaatio) Muodostetaan muuttuja-avaruuteen alkupopulaatio (kattaa mahdollisimman hyvin sallitun alueen) Kehitetään populaatiota suorittamalla sen jäsenille satunnaisuutta sisältäviä geneettisiä operaatioita (valinta, risteytys, mutaatio, elitismi) Saadaan uusi sukupolvi (vastaa iteraatiota), joka pyrkii sisältämään parempia ratkaisuita Muodostetaan uusia sukupolvia kunnes lopetuskriteerit täyttyvät
EO-algoritmit Hyvät puolet ei käytä (yleensä) gradientteja sopii monenlaisille optimointitehtäville välttää lokaalit optimit tarkastelee yhdellä iteraatiolla joukkoa ratkaisuita enemmän tietoa tehtävän käyttäytymisestä voi löytää useita vaihtoehtoisia optimeja (jos optimi ei yksikäsitteinen) mahdollistaa laskennan rinnakkaistamisen
EO-algoritmit Huonot puolet populaatiopohjainen lähestymistapa on laskennallisesti vaativa vaatii paljon funktion arvojen laskemista ei varsinaisia (optimaalisuusehtoihin perustuvia) lopetusehtoja ei gradienttitietoa ei pysty kilpailemaan konveksien ja strukturoitujen optimointitehtävien ratkomisessa klassisille menetelmille
EO: 1 tavoite klassinen optimointi evoluutiopohjainen optimointi S aloituspiste lokaali optimi globaali optimi alkupopulaatio uusi generaatio Lähestytään globaalia optimia!
Käsitteitä Ratkaisu kuvataan geeneillä Populaatio (population) joukko ratkaisuita, määrä yleensä kiinnitetty (N pop ) Sukupolvi (generation) populaatio muuttuu, sukupolvi vaihtuu (vastaa iteraatiota) Ratkaisun hyvyys (fitness) kertoo ratkaisun hyvyyden, yhdistelmä objektifunktion arvosta ja rajoitteista Alkupopulaatio (initial population) menetelmän alustus, pyritään kattamaan koko sallittu alue
Geneettiset operaatiot Muokataan populaatiosta uusi sukupolvi Perustuvat evoluutioon Sisältävät satunnaisuutta Operaatiot Valinta Risteytys Mutaatio Elitismi
Valinta (selection) Valitaan populaatiosta joukko ratkaisuita, jotka osallistuvat seuraavan sukupolven muodostamiseen Suurempi todennäköisyys paremmille ratkaisuille (mukaan myös huonoja ratkaisuja kyetään ylläpitämään populaation diversiteettiä) Saattaa sisältää samoja ratkaisuita Esim. valitaan populaatiosta satunnaisesti kaksi ratkaisua ja parempi niistä pääsee vanhemmaksi
Risteytys (cross-over) Otetaan joukosta satunnaisesti kaksi tai useampia ratkaisuita toimimaan vanhempina (parent) seuraavalle sukupolvelle Muodostetaan yksi tai useampia jälkeläisiä (child) yhdistelemällä vanhempia (globaali haku) Esim. n reaaliarvoista muuttujaa ja 2 vanhempaa. Jokainen muuttuja voidaan risteyttää erikseen käyttäen vanhempien muuttujan arvojen erotuksesta riippuvaa tn. jakaumaa 2 uutta muuttujan arvoa Risteytys operaattoria ei sovelleta kaikkiin yksilöihin, vaan tietyllä todennäköisyydellä 0 p c 1, loput yksilöt kopioidaan muutettuun populaatioon sellaisenaan
Mutaatio (mutation) Jokaiseen risteytyksellä tuotettuun jälkeläiseen sovelletaan mutaatiota Jokainen muuttuja mutatoituu todennäköisyydellä p m Yleensä p m = 1/n eli keskimäärin yksi muuttuja ratkaisussa muuttuu Arvoa muutetaan nykyisen arvon läheisyydessä (lokaali haku) Ei riipu populaation muista ratkaisuista
Elitismi (elitism) Muodostetaan vanhasta populaatiosta ja muutetusta populaatiosta uusi sukupolvi (N pop ratkaisua) Otetaan aina vanhan populaation paras jäsen mukaan seuraavaan sukupolveen ratkaisu ei huonone Voidaan esimerkiksi valita mukaan parhaan hyvyysarvon omaavat ratkaisut Kannattaa kuitenkin hyväksyä myös huonompia ratkaisuja ainakin ratkaisuprosessin alussa ettei globaalin optimin sisältämä alue jää tarkastelematta
Lopetusehdot Ei ratkaisun optimaalisuuteen perustuvia lopetusehtoja (vrt. optimaalisuusehdot lokaalissa optimoinnissa) saatu ratkaisu ei välttämättä ole edes lokaalisti optimaalinen todennäköisesti se on kuitenkin lähempänä globaalia optimia kuin jokin lokaali optimi Yleensä algoritmi päättyy, kun ennaltamäärätty määrä sukupolvia on generoitu Voidaan myös lopettaa esim., jos tietyn sukupolvimäärän aikana populaation paras ratkaisu ei ole muuttunut
Lopetusehdot 2 1.5 1 0.5 0-0.5-1 -1.5-5 -4-3 -2-1 0
EO - huomioita Geneettisten operaatioiden toteutus vaikuttaa paljon algoritmin toimintaan tuunaaminen ratkaistavan tehtävän erikoisominaisuuksien mukaan yleensä auttaa Algoritmit sisältävät paljon parametreja N pop, N gen, p c, p m, Miten valita sopivat arvot? Ennen aikainen (premature) konvergenssi populaatio konvergoituu esim. lokaaliin minimiin (tai eioptimaaliseen ratkaisuun), jos sen diversiteettiä ei pidetä riittävästi yllä alkuvaiheessa Paljon sovelluksia, koska tehtävältä oletetaan vähän
EMO Evoluutiopohjaiset optimointimenetelmät soveltuvat hyvin monitavoiteoptimointitehtävien ratkaisemiseen populaatiopohjainen lähestymistapa
Dominanssi Monitavoiteoptimoinnissa ratkaisuilla osittainen järjestys Ratkaisuiden välille voidaan määritellä dominanssi Dominassi määritellään vastaavasti objektivektoreille
Dominanssi EMO-lähestymistapa: optimaaliset ratkaisut ovat populaation dominoimattomia ratkaisuja f 2, min populaatio dominoimattomat ratkaisut ratkaisut ainoastaan dominoimattomia, ei välttämättä PO f 1, min
EMO Tavoitteet etsi joukko ratkaisuja, jotka ovat Paretooptimaalisia etsi joukko ratkaisuja, jotka ovat riittävän erilaisia kattaakseen koko PO joukon Populaation koko = PO ratkaisujen määrä Myös algoritmeja, joissa populaation koko voi muuttua Ratkaisujen hyvyys perustuu dominanssiin
EMO Perinteisesti käsitellään vain kahden tai kolmen objektifunktion tehtäviä laskennallilnen vaativuus kasvaa merkittävästi objektifunktioiden lisääntyessä Tarkoituksena on approksimoida koko PO joukkoa kuuluvat PO pisteiden määräämismenetelmiin aiemman luokituksen perusteella DM tekee päätöksen laskennan päätyttyä