Search space traversal using metaheuristics

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

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

Minimilatenssiongelman ratkaisualgoritmeja (valmiin työn esittely)

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

3.4 Peruutus (backtracking)

Trimmitysongelman LP-relaksaation ratkaiseminen sarakkeita generoivalla algoritmilla ja brute-force-menetelmällä

Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu

Monte Carlo -menetelmä optioiden hinnoittelussa (valmiin työn esittely)

Algoritmit 2. Luento 13 Ti Timo Männikkö

Malliratkaisut Demot

Kiinalaisen postimiehen ongelma

Kirjallisuuskatsaus sisäpistemenetelmiin ja niiden soveltamiseen eri optimointiluokille (valmiin työn esittely)

Harjoitus 6 ( )

Demo 1: Simplex-menetelmä

Malliratkaisut Demot

Kuvioton metsäsuunnittelu Paikkatietomarkkinat, Helsinki Tero Heinonen

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

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

Algoritmit 2. Luento 12 To Timo Männikkö

Harjoitus 6 ( )

Algoritmit 2. Luento 12 Ke Timo Männikkö

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

Lineaaristen monitavoiteoptimointitehtävien

Tuotantoprosessin optimaalinen aikataulutus (valmiin työn esittely)

Lineaarinen optimointitehtävä

Optimization of Duties in Railway Traffic (valmiin työn esittely)

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!

Mat Lineaarinen ohjelmointi

4.5 Kaksivaiheinen menetelmä simplex algoritmin alustukseen

Johdatus verkkoteoriaan 4. luento

Peliteorian soveltaminen hajautettujen järjestelmien protokollasuunnittelussa (valmiin työn esittely)

Luento 4: Lineaarisen tehtävän duaali

Menetelmä Markowitzin mallin parametrien estimointiin (valmiin työn esittely)

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria

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

Scheduling of Genetic Analysis Workflows on Grid Environments (valmiin työn esittely) Arttu Voutilainen

Optimaaliset riskinalentamisportfoliot vikapuuanalyysissä (valmiin työn esittely)

Simulointimalli mellakkapoliisin resurssien kohdentamiseen (valmiin työn esittely)

Verkko-optimointiin perustuva torjuntatasan laskenta mellakkapoliisin resurssien kohdentamisessa (valmiin työn esittely) Paavo Kivistö

Tentissä on viisi tehtävää, jotka arvosteellaan asteikolla 0-6. Tehtävien alakohdat ovat keskenään samanarvoisia ellei toisin mainita.

Vesivoimaketjun optimointi mehiläisalgoritmilla (Valmiin työn esittely)

Luento 7: Kokonaislukuoptimointi

Luento 6: Monitavoitteinen optimointi

Lineaaristen monitavoiteoptimointitehtävien ratkaiseminen Bensonin algoritmilla

Haitallinen valikoituminen: yleinen malli ja sen ratkaisu

Kombinatorinen optimointi

Johdatus verkkoteoriaan luento Netspace

Työvuorosuunnittelun optimointi (valmiin työn esittely)

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

7.4 Sormenjälkitekniikka

Tietorakenteet, laskuharjoitus 7, ratkaisuja

Piiri K 1 K 2 K 3 K 4 R R

PARITUS KAKSIJAKOISESSA

Algoritmit 2. Luento 11 Ti Timo Männikkö

Aircraft Maintenance Scheduling with Multi- Objective Simulation- Optimization

Muurahaiskolonnaoptimointi ja kauppamatkustajan ongelma

Lineaarisen kokonaislukuoptimointitehtävän ratkaiseminen

Optimoinnin sovellukset

MS-C2105 Optimoinnin perusteet Malliratkaisut 5

Verkon värittämistä hajautetuilla algoritmeilla

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

Luento 7: Kokonaislukuoptimointi

4 Heuristinen haku. Eero Hyvönen Helsingin yliopisto

Lisäinformaation arvo monikriteerisessä projektiportfoliovalinnassa (valmiin työn esittely)

Harjoitus 3 ( )

Demo 1: Branch & Bound

Kokonaislukuoptimointi hissiryhmän ohjauksessa

Malliratkaisut Demot

Trichoderma reesein geenisäätelyverkoston ennustaminen Oskari Vinko

Suojarakenteiden vaikutus maalin selviytymiseen epäsuoran tulen tai täsmäaseen iskussa

Polaarisatelliittidataan perustuva lumentunnistusalgoritmi (valmiin työn esittely)

Vangin dilemma häiriöisessä ympäristössä Markov-prosessina (valmiin työn esittely) Lasse Lindqvist

Geneettiset algoritmit

Lineaaristen monitavoiteoptimointitehtävien ratkaiseminen Bensonin algoritmilla

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

Inferring Trichoderma reesei gene regulatory network

Harjoitus 4 ( )

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

Seurantalaskimen simulointi- ja suorituskykymallien vertailu (valmiin työn esittely) Joona Karjalainen

Kimppu-suodatus-menetelmä

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

Harjoitus 3 ( )

Este- ja sakkofunktiomenetelmät

Luodin massajakauman optimointi

Informaation leviäminen väkijoukossa matemaattinen mallinnus

Rakenteisen ohjelmoinnin harjoitustyö

Polkuriippuvuus trade-off-painotuksessa (valmiin työn esittely)

V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen

Rinnakkaistietokoneet luento S

Harjoitus 1 ( )

Suomen rautatieverkoston robustisuus

8. Ensimmäisen käyvän kantaratkaisun haku

Algoritmit 1. Demot Timo Männikkö

Mat Lineaarinen ohjelmointi

Talousmatematiikan perusteet: Luento 11. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

Operatioanalyysi 2011, Harjoitus 3, viikko 39

Talousmatematiikan perusteet: Luento 12. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen

Valitaan alkio x 1 A B ja merkitään A 1 = A { x 1 }. Perinnöllisyyden nojalla A 1 I.

MS-C2105 Optimoinnin perusteet Malliratkaisut 4

Transkriptio:

Search space traversal using metaheuristics Mika Juuti 11.06.2012 Ohjaaja: Ville Mattila Valvoja: Harri Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston avoimilla verkkosivuilla. Muilta osin kaikki oikeudet pidätetään.

Työn tavoite Tutkia (lyh. ACS) metaheuristiikkaa Verrata ACS:n ja simuloidun jäähdytyksen (lyh. SJ) suorituskykyä yleisesti käytetyissä testiongelmissa Kuvata ACS:n käyttöönottoa kombinatorista optimointitehtävää varten 2

Moniulotteinen selkärepun täyttöongelma (MKP) Täytä (yksi) selkäreppu niillä esineillä, jotka antavat parhaan tuoton Rajoitteita voi olla enemmän kuin yksi m-dimensional knapsack problem (MKP) Esim. budjetointitehtävä NP-kova tehtävä, polynomiaikaista algoritmia ei tiettävästi ole 3

Ylläpitää muurahaisten rakentamia ratkaisuja ja feromonipolkuja Kukin muurahainen päättää minne mennä jokaisella iteraatiolla naapurustoinformaation perusteella iteraatio hidas (noin 2.5 ms testikoneella) Konvergoi optimia kohden tietyn oletuksin, kun laskenta-aika lähestyy ääretöntä Ratkaisee graafi-ongelmia Konstruktiivinen menetelmä, rakentaa ratkaisuja lisäämällä käypiä esineitä nykyiseen ratkaisuun 4

MKP graafi-ongelmana Yhdistetään valitut esineet (noodi) viivoilla (kaari) Naapurusto voidaan tulkita eri lailla: Kaikki ratkaisut, joihin on lisätty tai poistettu yksi esine (SJ) Kaikki käyvät ratkaisut, jotka on saatu lisäämällä esine (ACS) 5

Esimerkki Muurahainen 1 aloittaa esineestä 1 ja valitsee seuraavan esineen heuristiikan perusteella, osaratkaisu on (x 1 ). Muurahainen 1 valitsi esineen 4 ja voi jatkaa ratkaisun rakentamista, osaratkaisu on (x 1, x 4 ). 6

Muurahainen 1 valitsi esineen 3 eikä voi jatkaa, ratkaisu on (x 1, x 4, x 3 ). Ratkaisu on paras tähän mennessä. Muurahainen 2 aloittaa esineestä 2, osaratkaisu on (x 2 ). 7

Muurahainen 2 valitsi esineen 4 ja voi jatkaa, osaratkaisu on (x 2, x 4 ). Muurahainen 2 valitsee esineen 1, eikä voi jatkaa. Ratkaisu on (x 2, x 4, x 1 ). Ratkaisu on paras tähän mennessä. Iteraatiokierros päättyy kun viimeinen muurahainen on rakentanut ratkaisunsa. Paras ratkaisu palkitaan lisäämällä feromonia ( ) tällä polulla. Seuraavilla kierroksilla vähennetään feromonia aina silloin, kun kuljetaan jotain polkua pitkin. 8

Simuloitu jäähdytys (SJ) Generoidaan alkuratkaisu Siirrytään naapurustossa poistamalla ja lisäämällä esineitä Ei käytä muistia, jokainen iteraatio nopea (noin 30 µs testikoneella) Konvergoi optimia kohti, kun laskenta-aika lähestyy ääretöntä 9

Esimerkki Generoidaan tasajakaumasta alkuratkaisu ongelmalle (x 2, x 3 = 1; x 1, x 4 = 0) Valitaan esine joukosta (x 1, x 2, x 3, x 4 ) Valittiin 4 4 ei ole mukana ratkaisussa lisätään 4 ratkaisuun Ratkaisu ei ole käypä, pudotetaan satunnaisesti esine Pudotettiin 2 Ratkaisu käypä (x 3, x 4 = 1; x 1, x 2 = 0) 10

Valitaan satunnaisesti yksi esineistä Valittiin 1 Ratkaisu käypä (x 1, x 3, x 4 = 1; x 2 = 0) Jatkuu... 11

Algoritmien testaus 25 testiongelmaa OR librarystä Esineitä 100-500 kpl, rajoitteita 5-30 kpl Tiukkuus-suhde on 0.25, 0.50 tai 0.75 c i n j 1 r ij x i Viisi iteraatiota per ongelma, parhaista tuloksista keskiarvo 12

in iteraatiopolitiikat Iteraatiopolitiikka A: Valitaan muurahaisten alkuratkaisuksi yksi ensimmäisistä kymmenestä esineestä Ei välttämättä johda globaaliin optimiin Iteraatiopolitiikka B: Valitaan muurahaisten alkuratkaisuksi satunnainen esine Konvergoi globaaliin optimiin 13

Laskenta-ajan vaikutus Keskiarvot viiden ongelman parhaille ratkaisuille 100,00 % 98,00 % 96,00 % 94,00 % 92,00 % Optimaalinen ratkaisu iteraatiopolitiikka A 250 esinettä 10 rajoitusta = 0.50 5 iteraatiota Ratkaisun laatu (%:a optimaalisesta) 90,00 % 88,00 % 86,00 % Simuloitu Jäähdytys iteraatiopolitiikka B 84,00 % 82,00 % iteraatiopolitiikka B symmetrisillä feromonipoluilla 80,00 % 10 s 30 s 120 s 300 s Laskenta-aika (s) 14

Rajoitusten ja esineiden vaikutus Käyttäytyminen rajoitteiden lukumäärän suhteen 100,00 % Käyttäytyminen esineiden lukumäärän suhteen 100,00 % 98,00 % 96,00 % iteraatiopolitiikka A 98,00 % 96,00 % iteraatiopolitiikka A Ratkaisun laatu (%:a LPrelaksoidusta) 94,00 % 92,00 % 90,00 % 88,00 % Simuloitu Jäähdytys LP-relaksoitu ratkaisu Ratkaisun laatu (%:a LP-relaksoidusta) 94,00 % 92,00 % 90,00 % 88,00 % Simuloitu Jäähdytys LP-relaksoitu ratkaisu 86,00 % 84,00 % iteraatiopolitiikka B 86,00 % 84,00 % iteraatiopolitiikka B 82,00 % 80,00 % 5 10 30 Rajoitteiden lukumäärä (m) iteraatiopolitiikka B symmetrisillä feromonipoluilla 82,00 % 80,00 % 100 250 500 Esineiden lukumäärä (n) iteraatiopolitiikka B symmetrisillä feromonipoluilla 250 esinettä 120 s laskenta-aikaa = 0,50 10 rajoitusta 120 s laskenta-aikaa = 0,50 15

Tiukkuus-suhteen vaikutus 100,00 % Tiukkuus-suhde 250 esinettä 98,00 % 96,00 % 10 rajoitusta Ratkaisun laatu (%:a optimaalisesta) 94,00 % 92,00 % 90,00 % 88,00 % iteraatiopolitiikalla A Simuloitu Jäähdytys LP-relaksoitu ratkaisu 120 s laskentaaikaa 86,00 % 84,00 % 82,00 % iteraatiopolitiikka B 80,00 % 78,00 % iteraatiopolitiikka B symmetrisillä feromonipoluilla 76,00 % 0.25 0.50 0.75 Tiukkuus-suhde 16

Havainnot Isot tehtävät (n = 500) odotetusti vaikeita ACS:n iteraatiopolitiikassa A ratkaisun laatu ei parantunut 2 minuutin ja 5 minuutin ajon välillä Stagnaatio Ei huomattavia eroja symmetrisen ja epäsymmetrisen feromonipäivityksen välillä ACS toteutti yhtä laadukkaita ratkaisuja kuin SJ Muurahaisten oma heuristiikka ohjaa algoritmia hyviin ratkaisuihin ACS toimi huomattavasti paremmin korkean tiukkuus-suhteen tehtävissä 17

Johtopäätökset ACS antaa korkealaatuisia tuloksia jo pienellä laskenta-ajalla Konstruktiiviset menetelmät tehokkaampia, kun ongelman tiukkuussuhde korkea Alkuesineiden valinnalla merkitystä varsinkin lyhyissä laskennoissa 18