TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

Samankaltaiset tiedostot
TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

Geneettiset algoritmit

Monitavoiteoptimointi

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

Algoritmit 2. Luento 12 Ke Timo Männikkö

Algoritmit 2. Luento 12 To Timo Männikkö

GA & robot path planning. Janne Haapsaari AUTO Geneettiset algoritmit

Osakesalkun optimointi

Kimppu-suodatus-menetelmä

Optimaalisuusehdot. Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

TIEA382 Lineaarinen ja diskreetti optimointi

Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto

Luetteloivat ja heuristiset menetelmät. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

AS Automaation signaalinkäsittelymenetelmät. Tehtävä 1. Käynnistä fuzzy-toolboxi matlabin komentoikkunasta käskyllä fuzzy.

4. Luennon sisältö. Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä

Katkonnanohjaus evoluutiolaskennan keinoin

Lentotiedustelutietoon perustuva tykistön tulenkäytön optimointi (valmiin työn esittely)

Talousmatematiikan perusteet: Luento 14. Rajoittamaton optimointi Hessen matriisi Ominaisarvot Ääriarvon laadun tarkastelu

Lineaarinen optimointitehtävä

1 Kertaus. Lineaarinen optimointitehtävä on muotoa:

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

TIES483 Epälineaarinen optimointi

TIES483 Epälineaarinen optimointi. Syksy 2012

Luento 13: Geneettiset Algoritmit

Mat Optimointiopin seminaari kevät Monitavoiteoptimointi. Tavoitteet

Optimointi. Etsitään parasta mahdollista ratkaisua annetuissa olosuhteissa. Ongelman mallintaminen. Mallin ratkaiseminen. Ratkaisun analysointi

Kombinatorinen optimointi

Malliratkaisut Demot

Pisteen x lähistö koostuu kaikista ratkaisuista, jotka on saatu x:stä tekemällä siihen yksi siirto:

Algoritmit 2. Luento 13 Ti Timo Männikkö

Algoritmit 1. Luento 10 Ke Timo Männikkö

Malliratkaisut Demot

Darwin: Tutkimusprojektin esittely

Parempaa äänenvaimennusta simuloinnilla ja optimoinnilla

Mat Sovelletun matematiikan erikoistyöt. Geneettiset algoritmit ja sukupuolten taistelu

TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio. Kimmo Berg. Mat Optimointioppi. 9. harjoitus - ratkaisut

Diskreettiaikainen dynaaminen optimointi

Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely)

Talousmatematiikan perusteet: Luento 13. Rajoittamaton optimointi Hessen matriisi Ominaisarvot ja vektorit Ääriarvon laadun tarkastelu

Kuvioton metsäsuunnittelu Paikkatietomarkkinat, Helsinki Tero Heinonen

Tutkimustiedonhallinnan peruskurssi

Gradient Sampling-Algoritmi

TIES483 Epälineaarinen optimointi. Monitavoiteoptimointi Syksy 2012

Este- ja sakkofunktiomenetelmät

Lineaarisen kokonaislukuoptimointitehtävän ratkaiseminen

Luento 6: Monitavoitteinen optimointi

Monitavoiteoptimoinnin ja erityisesti NIMBUS-menetelmän hyödyntäminen monitavoitteisessa päätöksenteossa.

OHJ-3100 Ohjelmien ylläpito ja evoluutio. Harjoitustyö. Ohjaaja: Outi Sievi-Korte TE213 Päivystys ti klo 14-16

Projektiportfolion valinta

Luento 6: Monitavoiteoptimointi

TIES483 Epälineaarinen optimointi

Malliratkaisut Demot

Piiri K 1 K 2 K 3 K 4 R R

III Perinnöllisyystieteen perusteita

Harjoitus 9: Optimointi I (Matlab)

Lineaarinen optimointi. Harjoitus 6-7, Olkoon A R m n, x, c R ja b R m. Osoita, että LP-tehtävän. c T x = min!

JYVÄSKYLÄN YLIOPISTO. 3. Luennon sisältö

Kuljetustehtävä. Materiaalia kuljetetaan m:stä lähtöpaikasta n:ään tarvepaikkaan. Kuljetuskustannukset lähtöpaikasta i tarvepaikkaan j ovat c ij

6. Luennon sisältö. Lineaarisen optimoinnin duaaliteoriaa

TIIVISTELMÄ. Poikselkä (2011) Pietsorakenteiden optimointi geneettisillä algoritmeilla. Oulun yliopisto, tietotekniikan osasto. Diplomityö, 59 s.

Algoritmit 2. Luento 4 To Timo Männikkö

Helsingin yliopisto/tktl Kyselykielet, s 2006 Optimointi Harri Laine 1. Kyselyn optimointi. Kyselyn optimointi

Joonas Haapala Ohjaaja: DI Heikki Puustinen Valvoja: Prof. Kai Virtanen

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

Luento 4: Lineaarisen tehtävän duaali

Luento 10: Optimointitehtävien numeerinen ratkaiseminen; optimointi ilman rajoitusehtoja

Lineaaristen monitavoiteoptimointitehtävien ratkaiseminen Bensonin algoritmilla

3.4 Peruutus (backtracking)

1 Rajoitettu optimointi I

Haku osittaisen informaation vallitessa

Harjoitus 4: Matlab - Optimization Toolbox

Search space traversal using metaheuristics

monitavoitteisissa päätöspuissa (Valmiin työn esittely) Mio Parmi Ohjaaja: Prof. Kai Virtanen Valvoja: Prof.

Jälki- ja herkkyysanalyysi. Tutkitaan eri kertoimien ja vakioiden arvoissa tapahtuvien muutosten vaikutusta optimiratkaisuun

1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI

Lineaaristen monitavoiteoptimointitehtävien

1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI

Data Envelopment Analysis (DEA) - menetelmät + CCR-DEA-menetelmä

Sekalukuoptimointi. Lehtonen, Matti Matemaattisen ohjelmoinnin seminaari, Tietojenkäsittelytieteen laitos Helsingin Yliopisto

Algoritmit 2. Luento 11 Ti Timo Männikkö

Algoritmit 1. Luento 13 Ti Timo Männikkö

Avainsanojen poimiminen Eeva Ahonen

Algoritmit 1. Luento 10 Ke Timo Männikkö

Evolutiivinen stabiilisuus populaation

Talousmatematiikan perusteet: Luento 15. Rajoitettu optimointi Lagrangen menetelmä Lagrangen kerroin ja varjohinta

min x x2 2 x 1 + x 2 1 = 0 (1) 2x1 1, h = f = 4x 2 2x1 + v = 0 4x 2 + v = 0 min x x3 2 x1 = ± v/3 = ±a x 2 = ± v/3 = ±a, a > 0 0 6x 2

Algoritmit 1. Luento 5 Ti Timo Männikkö

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

Harjoitus 6 ( )

Evolutiivisesti stabiilin strategian oppiminen

Kokonaislukuoptiomointi Leikkaustasomenetelmät

Lineaaristen monitavoiteoptimointitehtävien ratkaiseminen Bensonin algoritmilla

Numeeriset menetelmät

10.2. Säteenjäljitys ja radiositeettialgoritmi. Säteenjäljitys

Transkriptio:

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ä