Kombinatorinen optimointi
|
|
- Markus Turunen
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 Kombinatorinen optimointi Sallittujen pisteiden lukumäärä on äärellinen Periaatteessa ratkaisu löydetään käymällä läpi kaikki pisteet Käytännössä lukumäärä on niin suuri, että tämä on mahdotonta Usein ratkaisua etsitään heuristisilla menetelmillä (eivät välttämättä löydä optimia, mutta yleensä hyvän ratkaisun) 1
2 Töidenjärjestelytehtävä Joukko töitä pitää suorittaa useammalla eri koneella Jokaisesta työstä tiedetään, missä järjestyksessä ne käsitellään eri koneissa ja mikä aika kuluu kullakin koneella Tavoite: Määrää töiden aikataulutus koneilla siten, että kaikkien töiden valmistumiseen kuluva kokonaisaika minimoituu 2
3 Optimiratkaisun löytäminen on hankalaa Eräs heuristinen ratkaisumenetelmä on SPT-sääntö (Shortest Processing Time): Kun jollakin koneella työ loppuu, valitaan seuraavaksi aina se mahdollinen työ, jonka vaatima aika tällä koneella on pienin 3
4 Esimerkki: Kahdeksan työtä, kolme konetta, jokaisella työllä kaksi tai kolme työvaihetta eri koneilla tietyssä järjestyksessä Työvaiheiden kestot kullekin työlle muotoa k:a, missä k on koneen numero ja a on aika kyseisellä koneella Työ :5 2:3 1:6 2:4 1:7 1:3 2:3 1:2 2:3 1:2 3:2 3:4 2:2 3:7 3:3 2:4 3:4 1:4 3:3 3:2 4
5 Asettelu järjestyksessä: K K K
6 SPT-säännöllä: K K K
7 Optimiratkaisu: K K K
8 Asettelutehtävä Levystä leikataan suorakulmion tai suorakulmaisen kolmion muotoisia paloja Leikkaus on voitava tehdä siten, että levy leikataan suoraan kokonaan poikki jossain suunnassa Tavoite: Leikkaa palat siten, että hukkapaloja tulee mahdollisimman vähän Jos palat voivat olla muunkin muotoisia = vielä hankalampi tehtävä 8
9 Rautateiden aikataulutus Tavoite: Optimoi junien aikataulut siten, että junien kulkuajat vastaavat matkustajien tarpeita, ja että vaihtoajat risteysasemilla ovat mahdollisimman lyhyitä 9
10 Laskennallinen vaativuus eli kompleksisuus Ongelman laskennallinen vaativuus: Kertoo, miten ongelman ratkaisuun kuluva aika riippuu ongelman koosta Olkoon s ongelman koko Polynomiset ratkaisumenetelmät: Ratkaisuajan määrää jokin s:n polynomi, jolloin merkitään O(s n ), missä n on jokin vakio Eksponentiaaliset ratkaisumenetelmät: Ratkaisuaika riippuu koosta s eksponentiaalisesti, esimerkiksi O(n s ), O(s s ) tai O(s!) 10
11 Ongelmaluokka P: Polynomisessa ajassa ratkeavat ongelmat, tai ongelmat, jotka voidaan muuntaa sellaiseksi NP-täydelliset ongelmat: Joukko ongelmia, joista tiedetään, että ne ovat joko kaikki luokassa P tai kaikki luokan P ulkopuolella, mutta ei tiedetä, kumpi vaihtoehto on tosi Käytännössä voidaan tehokkaasti ratkaista vain luokkaan P kuuluvia ongelmia Esimerkki NP-täydellisistä ongelmista: Kauppamatkustajan ongelma 11
12 Heuristiset menetelmät Kertamenetelmät: Muodostetaan ratkaisu valmiiksi käyttäen tiettyjä sääntöjä Korjaavat menetelmät: Jollain tavalla löydettyä ratkaisua pyritään parantamaan pienillä muutoksilla Yhdistetyt menetelmät: Muodostetaan alkuratkaisu kertamenetelmällä, ja parannetaan sitä korjaavalla menetelmällä Toistetut menetelmät: Toistetaan yhdistettyä menetelmää eri alkuratkaisuilla 12
13 Kauppamatkustajan ongelma Olkoon n paikkakuntaa, joiden väliset etäisyydet tunnetaan Kauppamatkustaja lähtee joltain paikkakunnalta, käy kaikilla muilla paikkakunnilla ja palaa lähtöpaikkaansa Tavoite: Määrää paikkakuntien kiertojärjestys siten, että reitin kokonaispituus minimoituu 13
14 Töiden järjestely: Koneella on suoritettavana n työtä Kun vaihdetaan työstä i työhön j, kuluu vaihdossa aikaa d ij Tavoite: Määrää töiden järjestys siten, että vaihtoihin kuluva kokonaisaika minimoituu Tulkitaan työt paikkakunniksi ja ajat d ij etäisyyksiksi = Kauppamatkustajan ongelma 14
15 Kuljetusten järjestely: Suoritettavana on joukko kuljetuksia paikoista a i paikkoihin b i Edellisen kuljetuksen loppupaikan b i ja seuraavan kuljetuksen alkupaikan a j välinen etäisyys on d ij Tavoite: Määrää kuljetusten järjestys siten, siirtymät edellisen kuljetuksen loppupaikasta seuraavan kuljetuksen alkupaikkaan minimoituvat Yhdistetään kunkin kuljetuksen alku- ja loppupaikat a i ja b i yhdeksi paikkakunnaksi = Kauppamatkustajan ongelma 15
16 Euklidisessa tasossa optimaalinen kauppamatkustajan reitti ei leikkaa itseään Euklidisessa tasossa ne solmut, jotka ovat solmujen konveksin peitteen kärkipistesolmuina, ovat optimaalisella kauppamatkustajan reitillä toisiinsa nähden samassa järjestyksessä kuin kierrettäessä konveksia peitettä 16
17 Kertamenetelmiä Lähimmän naapurin menetelmä: Lisätään reittiin alkusolmu Lisätään reittiin aina se solmu, joka on lähinnä reitin viimeistä solmua ja joka ei vielä kuulu reittiin Solmu lisätään aina reitin viimeisen solmun perään 17
18 Väliinsijoitus satunnaisessa järjestyksessä: Lisätään reittiin alkusolmu Lisätään reittiin muut solmut jossain järjestyksessä Solmu lisätään sellaiseen väliin, että sen lisääminen kasvattaa reitin pituutta mahdollisimman vähän 18
19 Reitin pituuden minimilisäys: Lisätään reittiin alkusolmu Lisätään reittiin aina se solmu, jonka lisääminen kasvattaa reitin pituutta mahdollisimman vähän Solmu lisätään aina reitin parhaaseen väliin 19
20 Kaukaisimman solmun lisäys: Lisätään reittiin alkusolmu Lisätään reittiin aina se solmu, joka on kauimpana reitin solmuista ja joka ei vielä kuulu reittiin Solmu lisätään aina reitin parhaaseen väliin 20
21 Korjaavia menetelmiä 2-opt: (Sopii vain symmetrisille tehtäville, ts. on oltava d ij = d ji ) Muodostetaan reitti jollain kertamenetelmällä (tai satunnaisesti) Valitaan reitiltä kaksi peräkkäisten solmujen muodostamaa paria a b ja c d Muutetaan reittiä siten, että a c ja b d, jos se lyhentää reittiä Käydään läpi kaikki mahdolliset parit Jos reitti ei muutu yhden tällaisen kierroksen aikana, lopetetaan 21
22 3-opt: (Sopii myös epäsymmetrisille tehtäville, ts. voi olla d ij d ji ) Muodostetaan reitti jollain kertamenetelmällä (tai satunnaisesti) Valitaan reitiltä kolme peräkkäisten solmujen muodostamaa paria a b, c d ja e f (voi olla b = c ja d = e) Muutetaan reittiä siten, että a d, c f ja e b, jos se lyhentää reittiä Käydään läpi kaikki mahdolliset kolmikot Jos reitti ei muutu yhden tällaisen kierroksen aikana, lopetetaan 22
23 Or in menetelmä: Kuten 3-opt, paitsi että kokeillaan vain ne kolmikot, joissa solmujen d ja e etäisyys on korkeintaan k solmua (esimerkiksi k = 3) 23
24 Lämpökäsittely eli simulated annealing Periaate: Ratkaisua korjataan heuristisesti parempaan suuntaan aina, kun siihen tulee tilaisuus, mutta tietyllä todennäköisyydellä voidaan siirtyä myös huonompaan suuntaan Fysikaalinen analogia: Materiaalia ensin kuumennetaan ja sitten annetaan sen jäähtyä hitaasti = Muodostuu optimaalinen kiderakenne, joka vastaa energiaminimiä 24
25 Lämpökäsittely yleisesti: Olkoon V (i) objektifunktion arvo systeemin tilassa i ja olkoon k kierroslaskuri 1. Valitaan satunnainen alkuratkaisu 2. Siirretään systeemi nykyisestä tilasta i johonkin toiseen tilaan j, jos V (j) < V (i) tai jos V (j) V (i) ja r k < exp( (V (j) V (i))/t k ) missä r k (0,1) on satunnaisluku ja T k pienenee, kun k kasvaa 3. Toistetaan kohtaa 2 kunnes ratkaisu ei muutu 25
26 Lämpökäsittelyn soveltaminen kauppamatkustajan ongelmaan: Käytetään esimerkiksi 3-opt-menetelmää Kokeiltaessa uutta kolmikkoa, tehdään muutos aina silloin, kun se lyhentää reittiä Jos taas uusi reitti olisi pidempi, hyväksytään se silti, jos edellä mainittu satunnaislukutesti sen sallii 26
Kokonaislukuoptimointi
Kokonaislukuoptimointi Optimointitehtävät, joissa muuttujat tai osa niistä voivat saada vain kokonaislukuarvoja Puhdas kokonaislukuoptimointitehtävä: Kaikki muuttujat kokonaislukuja Sekoitettu kokonaislukuoptimointitehtävä:
LisätiedotAlgoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 2.5.2017 Timo Männikkö Luento 13 Merkkijonon sovitus Horspoolin algoritmi Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydellisyys
LisätiedotAlgoritmit 2. Luento 12 Ke Timo Männikkö
Algoritmit 2 Luento 12 Ke 26.4.2017 Timo Männikkö Luento 12 Rajoitehaku Kauppamatkustajan ongelma Lyhin virittävä puu Paikallinen etsintä Vaihtoalgoritmit Geneettiset algoritmit Simuloitu jäähdytys Algoritmit
LisätiedotEsimerkkejä kokonaislukuoptimointiongelmista
Esimerkkejä kokonaislukuoptimointiongelmista (eli mitä kaikkea kokonaisluvuilla voi mallintaa) 27. marraskuuta 2013 Pääoman budjetointiongelma Kulut Projekti Vuosi 1 Vuosi 2 Vuosi 3 Tuotto 1 5 1 8 20 2
LisätiedotGraafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria
Graafit ja verkot Suuntamaton graafi: eli haaroja Joukko solmuja ja joukko järjestämättömiä solmupareja Suunnattu graafi: Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria Haaran päätesolmut:
LisätiedotAlgoritmit 2. Luento 12 To Timo Männikkö
Algoritmit 2 Luento 12 To 3.5.2018 Timo Männikkö Luento 12 Geneettiset algoritmit Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Algoritmit 2 Kevät 2018 Luento 12 To 3.5.2018 2/35 Algoritmien
LisätiedotAlgoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 30.4.2019 Timo Männikkö Luento 13 Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Ositus ja rekursio Rekursion toteutus Algoritmit 2 Kevät 2019 Luento 13 Ti 30.4.2019
LisätiedotAlgoritmit 2. Luento 11 Ti Timo Männikkö
Algoritmit 2 Luento 11 Ti 24.4.2018 Timo Männikkö Luento 11 Rajoitehaku Kapsäkkiongelma Kauppamatkustajan ongelma Paikallinen etsintä Lyhin virittävä puu Vaihtoalgoritmit Algoritmit 2 Kevät 2018 Luento
Lisätiedot4. Luennon sisältö. Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä
JYVÄSKYLÄN YLIOPISTO 4. Luennon sisältö Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä kevät 2012 TIEA382 Lineaarinen ja diskreetti optimointi Lineaarinen optimointitehtävä Minimointitehtävä
LisätiedotLineaarisen kokonaislukuoptimointitehtävän ratkaiseminen
Lineaarisen kokonaislukuoptimointitehtävän ratkaiseminen Jos sallittuja kokonaislukuratkaisuja ei ole kovin paljon, ne voidaan käydä kaikki läpi yksitellen Käytännössä tämä ei kuitenkaan ole yleensä mahdollista
LisätiedotLineaarinen optimointitehtävä
Lineaarinen optimointitehtävä Minimointitehtävä yhtälörajoittein: min kun n j=1 n j=1 c j x j a ij x j = b i x j 0 j = 1,..., n i = 1,..., m Merkitään: z = alkuperäisen objektifunktion arvo käsiteltävänä
LisätiedotMat Lineaarinen ohjelmointi
Mat-.34 Lineaarinen ohjelmointi 9..7 Luento Kokonaislukuoptimoinnin algoritmeja (kirja.-.) Lineaarinen ohjelmointi - Syksy 7 / Luentorunko Gomoryn leikkaava taso Branch & Bound Branch & Cut Muita menetelmiä
LisätiedotHarjoitus 6 ( )
Harjoitus 6 (21.4.2015) Tehtävä 1 Määritelmän (ks. luentomoniste s. 109) mukaan yleisen, muotoa min f(x) s. t. g(x) 0 h(x) = 0 x X olevan optimointitehtävän Lagrangen duaali on missä max θ(u, v) s. t.
LisätiedotKanta ja Kannan-vaihto
ja Kannan-vaihto 1 Olkoon L vektoriavaruus. Äärellinen joukko L:n vektoreita V = { v 1, v 2,..., v n } on kanta, jos (1) Jokainen L:n vektori voidaan lausua v-vektoreiden lineaarikombinaationa. (Ts. Span(V
LisätiedotOptimoinnin sovellukset
Optimoinnin sovellukset Timo Ranta Tutkijatohtori TTY Porin laitos OPTIMI 4.12.2014 Mitä optimointi on? Parhaan ratkaisun systemaattinen etsintä kaikkien mahdollisten ratkaisujen joukosta Tieteellinen
LisätiedotTIEA382 Lineaarinen ja diskreetti optimointi
TIEA382 Lineaarinen ja diskreetti optimointi Jussi Hakanen Tietotekniikan laitos jussi.hakanen@jyu.fi AgC 426.3 Yleiset tiedot Tietotekniikan kandidaattiopintojen valinnainen kurssi http://users.jyu.fi/~jhaka/ldo/
LisätiedotKuljetustehtävä. Materiaalia kuljetetaan m:stä lähtöpaikasta n:ään tarvepaikkaan. Kuljetuskustannukset lähtöpaikasta i tarvepaikkaan j ovat c ij
Kuljetustehtävä Materiaalia kuljetetaan m:stä lähtöpaikasta n:ään tarvepaikkaan Kuljetuskustannukset lähtöpaikasta i tarvepaikkaan j ovat c ij Lähtöpaikan i kapasiteetti on a i (oletetaan, että a i > 0
Lisätiedot14. Luennon sisältö. Kuljetustehtävä. Verkkoteoria ja optimointi. esimerkki. verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut
JYVÄSKYLÄN YLIOPISTO 14. Luennon sisältö Kuljetustehtävä esimerkki Verkkoteoria ja optimointi verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut kevät 2012 TIEA382 Lineaarinen ja diskreetti
LisätiedotYhden muuttujan funktion minimointi
Yhden muuttujan funktion minimointi Aloitetaan yhden muuttujan tapauksesta Tarpeellinen myös useamman muuttujan tapauksessa Tehtävä on muotoa min kun f(x) x S R 1 Sallittu alue on muotoa S = [a, b] tai
LisätiedotAlgoritmit 1. Luento 10 Ke Timo Männikkö
Algoritmit 1 Luento 10 Ke 14.2.2018 Timo Männikkö Luento 10 Algoritminen ongelmanratkaisu Suunnittelumenetelmät Raaka voima Järjestäminen eli lajittelu Kuplalajittelu Lisäyslajittelu Valintalajittelu Permutaatiot
LisätiedotAlgoritmit 1. Luento 9 Ti Timo Männikkö
Algoritmit 1 Luento 9 Ti 7.2.2017 Timo Männikkö Luento 9 Graafit ja verkot Kaaritaulukko, bittimatriisi, pituusmatriisi Verkon lyhimmät polut Floydin menetelmä Lähtevien ja tulevien kaarien listat Forward
LisätiedotPisteen x lähistö koostuu kaikista ratkaisuista, jotka on saatu x:stä tekemällä siihen yksi siirto:
24 10. Lokaali haku Optimoinnissa heuristisilla menetelmillä tarkoitetaan algoritmeja, jotka osassa tapauksista antavat tehtävälle hyvän tai lähes optimaalisen ratkaisun, mutta joiden toimivuutta ei voida
Lisätiedotv 8 v 9 v 5 C v 3 v 4
Verkot Verkko on (äärellinen) matemaattinen malli, joka koostuu pisteistä ja pisteitä toisiinsa yhdistävistä viivoista. Jokainen viiva yhdistää kaksi pistettä, jotka ovat viivan päätepisteitä. Esimerkiksi
LisätiedotEpädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna
Epädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna. q 0 x solmuina laskennan mahdolliset tilanteet juurena alkutilanne lehtinä tilanteet joista ei siirtymää,
LisätiedotJYVÄSKYLÄN YLIOPISTO. 3. Luennon sisältö
JYVÄSKYLÄN YLIOPISTO 3. Luennon sisältö Lineaarisen optimointitehtävän sallittu alue Optimointitehtävien muunnoksia Lineaarisen yhtälöryhmän perusmuoto ja perusratkaisut Lineaarisen optimointitehtävän
LisätiedotAlgoritmit 2. Luento 6 To Timo Männikkö
Algoritmit 2 Luento 6 To 28.3.2019 Timo Männikkö Luento 6 B-puun operaatiot Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2019 Luento 6 To 28.3.2019 2/30 B-puu 40 60 80 130 90 100
LisätiedotMalliratkaisut Demot
Malliratkaisut Demot 6 24.4.2017 Tehtävä 1 Määritelmän (ks. luentomonisteen s. 107) mukaan yleisen muotoa min f(x) s.t. g(x) 0 h(x) = 0 x X (1) olevan optimointitehtävän Lagrangen duaali on min θ(u,v)
LisätiedotHarjoitus 6 ( )
Harjoitus 6 (30.4.2014) Tehtävä 1 Määritelmän (ks. luentomoniste s. 109) mukaan yleisen, muotoa min f(x) s.t. g(x) 0 h(x) = 0 x X (1) olevan optimointitehtävän Lagrangen duaali on max θ(u,v) s.t. u 0,
LisätiedotLuetteloivat ja heuristiset menetelmät. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki
Luetteloivat ja heuristiset menetelmät Mat-2.4191, Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki Sisältö Branch and Bound sekä sen variaatiot (Branch and Cut, Lemken menetelmä) Optimointiin
LisätiedotTarkennamme geneeristä painamiskorotusalgoritmia
Korotus-eteen-algoritmi (relabel-to-front) Tarkennamme geneeristä painamiskorotusalgoritmia kiinnittämällä tarkasti, missä järjestyksessä Push- ja Raise-operaatioita suoritetaan. Algoritmin peruskomponentiksi
LisätiedotAlgoritmit 1. Luento 10 Ke 11.2.2015. Timo Männikkö
Algoritmit 1 Luento 10 Ke 11.2.2015 Timo Männikkö Luento 10 Algoritminen ongelman ratkaisu Suunnittelumenetelmät Raaka voima Järjestäminen eli lajittelu Kuplalajittelu Väliinsijoituslajittelu Valintalajittelu
Lisätiedotverkkojen G ja H välinen isomorfismi. Nyt kuvaus f on bijektio, joka säilyttää kyseisissä verkoissa esiintyvät särmät, joten pari
Tehtävä 9 : 1 Merkitään kirjaimella G tehtäväpaperin kuvan vasemmanpuoleista verkkoa sekä kirjaimella H tehtäväpaperin kuvan oikeanpuoleista verkkoa. Kuvan perusteella voidaan havaita, että verkko G on
LisätiedotV. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen
V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen Luento omatoimisen luennan tueksi algoritmiikan tutkimusseminaarissa 23.9.2002. 1 Sisältö Esitellään ongelmat Steiner-puu Kauppamatkustajan
LisätiedotKimppu-suodatus-menetelmä
Kimppu-suodatus-menetelmä 2. toukokuuta 2016 Kimppu-suodatus-menetelmä on kehitetty epäsileiden optimointitehtävien ratkaisemista varten. Menetelmässä approksimoidaan epäsileitä funktioita aligradienttikimpulla.
LisätiedotJälki- ja herkkyysanalyysi. Tutkitaan eri kertoimien ja vakioiden arvoissa tapahtuvien muutosten vaikutusta optimiratkaisuun
Jälki- ja herkkyysanalyysi Tutkitaan eri kertoimien ja vakioiden arvoissa tapahtuvien muutosten vaikutusta optimiratkaisuun 1 Hinnat ja varjohinnat Objektifunktio c T x = Kerroin c j ilmoittaa, paljonko
LisätiedotAlgoritmit 2. Luento 6 Ke Timo Männikkö
Algoritmit 2 Luento 6 Ke 29.3.2017 Timo Männikkö Luento 6 B-puun operaatiot B-puun muunnelmia Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2017 Luento 6 Ke 29.3.2017 2/31 B-puu
LisätiedotOptimaalisuusehdot. Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0
Optimaalisuusehdot Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0 i = 1,..., m j = 1,..., l missä f : R n R, g i : R n R kaikilla i = 1,..., m, ja h j : R n R kaikilla j = 1,..., l
Lisätiedot4.5 Kaksivaiheinen menetelmä simplex algoritmin alustukseen
4.5 Kaksivaiheinen menetelmä simplex algoritmin alustukseen Käypä kantaratkaisu löytyy helposti, esimerkiksi tapauksessa Ax b, b 0 x 0 jolloin sen määräävät puutemuuttujat. Tällöin simplex-menetelmän alustus
LisätiedotAlgoritmit 2. Luento 14 Ke Timo Männikkö
Algoritmit 2 Luento 14 Ke 3.5.2017 Timo Männikkö Luento 14 Ositus ja rekursio Rekursion toteutus Kertaus ja tenttivinkit Algoritmit 2 Kevät 2017 Luento 14 Ke 3.5.2017 2/30 Ositus Tehtävän esiintymä ositetaan
LisätiedotAlgoritmit 2. Luento 7 Ti Timo Männikkö
Algoritmit 2 Luento 7 Ti 4.4.2017 Timo Männikkö Luento 7 Joukot Joukko-operaatioita Joukkojen esitystapoja Alkiovieraat osajoukot Toteutus puurakenteena Algoritmit 2 Kevät 2017 Luento 7 Ti 4.4.2017 2/26
Lisätiedot6. Luennon sisältö. Lineaarisen optimoinnin duaaliteoriaa
JYVÄSKYLÄN YLIOPISTO 6. Luennon sisältö Lineaarisen optimoinnin duaaliteoriaa työkalu ratkaisun analysointiin Jälki- ja herkkyysanalyysiä mitä tapahtuu optimiratkaisulle, jos tehtävän vakiot hieman muuttuvat
LisätiedotImplementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely)
Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely) Jari Hast xx.12.2013 Ohjaaja: Harri Ehtamo Valvoja: Hari Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston
LisätiedotLaskennan vaativuus ja NP-täydelliset ongelmat
Laskennan vaativuus ja NP-täydelliset ongelmat TRAK-vierailuluento 13.4.2010 Petteri Kaski Tietojenkäsittelytieteen laitos Tietojenkäsittelytiede Tietojenkäsittelytiede tutkii 1. mitä tehtäviä voidaan
LisätiedotEsimerkkejä polynomisista ja ei-polynomisista ongelmista
Esimerkkejä polynomisista ja ei-polynomisista ongelmista Ennen yleisempiä teoriatarkasteluja katsotaan joitain tyypillisiä esimerkkejä ongelmista ja niiden vaativuudesta kaikki nämä ongelmat ratkeavia
Lisätiedot1 Kertaus. Lineaarinen optimointitehtävä on muotoa:
1 Kertaus Lineaarinen optimointitehtävä on muotoa: min c 1 x 1 + c 2 x 2 + + c n x n kun a 11 x 1 + a 12 x 2 + + a 1n x n b 1 a 21 x 1 + a 22 x 2 + + a 2n x n b 2 (11) a m1 x 1 + a m2 x 2 + + a mn x n
LisätiedotAlgoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 8.5.2018 Timo Männikkö Luento 13 Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydellisyys Kertaus ja tenttivinkit Algoritmit 2 Kevät
LisätiedotAlgoritmit 1. Luento 1 Ti Timo Männikkö
Algoritmit 1 Luento 1 Ti 10.1.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin toteutus Ongelman ratkaiseminen Algoritmin tehokkuus Algoritmin suoritusaika Algoritmin analysointi Algoritmit 1 Kevät 2017
LisätiedotAlgoritmit 1. Luento 8 Ke Timo Männikkö
Algoritmit 1 Luento 8 Ke 1.2.2017 Timo Männikkö Luento 8 Järjestetty binääripuu Solmujen läpikäynti Binääripuun korkeus Binääripuun tasapainottaminen Graafit ja verkot Verkon lyhimmät polut Fordin ja Fulkersonin
LisätiedotMat Lineaarinen ohjelmointi
Mat-.4 Lineaarinen ohjelmointi..7 Luento 7 Duaalisimple ja herkkyysanalyysi (kirja 4.5, 5., 5.5-5.6) Lineaarinen ohjelmointi - Syksy 7 / Duaalisimple Herkkyysanalyysi Luentorunko Parametrinen ohjelmointi
LisätiedotMalliratkaisut Demot
Malliratkaisut Demot 5 10.4.2017 Tehtävä 1 x 2 7 0,7 9,8 6 5 4 x 1 x 2 7 x 1 x 2 1 3 2 x 1 0 4,3 x 1 9 1 0,0 x 2 0 9,0 1 2 3 4 5 6 7 8 9 x 1 Kuva 1: Tehtävän 1 sallittu joukko S Optimointitehtävän sallittu
LisätiedotAlgoritmit 2. Luento 2 To Timo Männikkö
Algoritmit 2 Luento 2 To 14.3.2019 Timo Männikkö Luento 2 Tietorakenteet Lineaarinen lista, binääripuu Prioriteettijono Kekorakenne Keko-operaatiot Keon toteutus taulukolla Algoritmit 2 Kevät 2019 Luento
Lisätiedot3.4 Peruutus (backtracking)
3.4 Peruutus (backtracking) Tarkastellaan kahta esimerkkiongelmaa: Kahdeksan kuningattaren ongelma: sijoitettava 8 8 ruudun pelilaudalle 8 nappulaa siten, että millekään vaaka-, pysty- tai viistoriville
LisätiedotPartikkelit pallon pinnalla
Simo K. Kivelä, 14.7.2004 Partikkelit pallon pinnalla Tehtävänä on sijoittaa annettu määrä keskenään identtisiä partikkeleita mahdollisimman tasaisesti pallon pinnalle ja piirtää kuvio syntyvästä partikkelikonfiguraatiosta.
Lisätiedotisomeerejä yhteensä yhdeksän kappaletta.
Tehtävä 2 : 1 Esitetään aluksi eräitä havaintoja. Jokaisella n Z + symbolilla H (n) merkitään kaikkien niiden verkkojen joukkoa, jotka vastaavat jotakin tehtävänannon ehtojen mukaista alkaanin hiiliketjua
LisätiedotLisätehtäviä. Rationaalifunktio. x 2. a b ab. 6u x x x. kx x
MAA6 Lisätehtäviä Laske lisätehtäviä omaan tahtiisi kurssin aikan Palauta laskemasi tehtävät viimeistään kurssikokeeseen. Tehtävät lasketaan ilman laskint Rationaalifunktio Tehtäviä Hyvitys kurssiarvosanassa
LisätiedotJaetun muistin muuntaminen viestin välitykseksi. 15. lokakuuta 2007
Jaetun muistin muuntaminen viestin välitykseksi Otto Räsänen 15. lokakuuta 2007 1 Motivaatio 2 Valtuuden välitys Peruskäsitteitä 3 Kolme algoritmia Valtuuden välitys käyttäen laskuria ilman ylärajaa Valtuuden
LisätiedotMat Sovellettu todennäköisyyslasku A
TKK / Systeemianalyysin laboratorio Nordlund Mat-.090 Sovellettu todennäköisyyslasku A Harjoitus 7 (vko 44/003) (Aihe: odotusarvon ja varianssin ominaisuuksia, satunnaismuuttujien lineaarikombinaatioita,
Lisätiedot58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto)
811 Tietorakenteet (kevät 9) Harjoitus 11, ratkaisuja (Topi Musto) 1. Bellmanin-Fordin algoritmin alustusvaiheen jälkeen aloitussolmussa on arvo ja muissa solmuissa on arvo ääretön. Kunkin solmun arvo
LisätiedotMonitavoiteoptimointi
Monitavoiteoptimointi Useita erilaisia tavoitteita, eli useita objektifunktioita Tavoitteet yleensä ristiriitaisia ja yhteismitattomia Optimaalisuus tarkoittaa yleensä eri asiaa kuin yksitavoitteisessa
LisätiedotLuentorunko keskiviikolle Hierarkkinen ryvästäminen
Luentorunko keskiviikolle 3.12.2008 Hierarkkinen ryvästäminen Ryvästyshierarkia & dendrogrammi Hierarkkinen ryvästäminen tuottaa yhden ryvästyksen sijasta sarjan ryvästyksiä Tulos voidaan visualisoida
Lisätiedot7.4 Sormenjälkitekniikka
7.4 Sormenjälkitekniikka Tarkastellaan ensimmäisenä esimerkkinä pitkien merkkijonojen vertailua. Ongelma: Ajatellaan, että kaksi n-bittistä (n 1) tiedostoa x ja y sijaitsee eri tietokoneilla. Halutaan
LisätiedotTodellinen vuosikorko. Efektiivinen/sisäinen korkokanta. Huomioitavaa
Todellinen vuosikorko Huomioitavaa Edellinen keskimaksuhetkeen perustuva todellinen vuosikorko antaa vain arvion vuosikorosta. Tarkempi arvio todellisesta korosta saadaan ottamalla huomioon mm. koronkorko.
LisätiedotA-osa. Ratkaise kaikki tämän osan tehtävät. Tehtävät arvostellaan pistein 0-6. Taulukkokirjaa saa käyttää apuna, laskinta ei.
PITKÄ MATEMATIIKKA PRELIMINÄÄRIKOE 7..07 NIMI: A-osa. Ratkaise kaikki tämän osan tehtävät. Tehtävät arvostellaan pistein 0-. Taulukkokirjaa saa käyttää apuna, laskinta ei.. Valitse oikea vaihtoehto ja
LisätiedotBM20A5800 Funktiot, lineaarialgebra ja vektorit Harjoitus 4, Syksy 2016
BM20A5800 Funktiot, lineaarialgebra ja vektorit Harjoitus 4, Syksy 2016 1. Hahmottele karkeasti funktion f : R R 2 piirtämällä sen arvoja muutamilla eri muuttujan arvoilla kaksiulotteiseen koordinaatistoon
LisätiedotB. 2 E. en tiedä C. 6. 2 ovat luonnollisia lukuja?
Nimi Koulutus Ryhmä Jokaisessa tehtävässä on vain yksi vastausvaihtoehto oikein. Laske tehtävät ilman laskinta.. Missä pisteessä suora y = 3x 6 leikkaa x-akselin? A. 3 D. B. E. en tiedä C. 6. Mitkä luvuista,,,
LisätiedotMiten osoitetaan joukot samoiksi?
Miten osoitetaan joukot samoiksi? Määritelmä 1 Joukot A ja B ovat samat, jos A B ja B A. Tällöin merkitään A = B. Kun todistetaan, että A = B, on päättelyssä kaksi vaihetta: (i) osoitetaan, että A B, ts.
LisätiedotMat Lineaarinen ohjelmointi
Mat-.40 Lineaarinen ohjelmointi 5..007 Luento 9 Verkkotehtävän erikoistapauksia (kirja 7., 7.5, 7.9, 7.0) Lineaarinen ohjelmointi - Syksy 007 / Luentorunko (/) Verkkotehtävän ominaisuuksia Kuljetustehtävä
LisätiedotMuita vaativuusluokkia
Muita vaativuusluokkia Käydään lyhyesti läpi tärkeimpiä vaativuusluokkiin liittyviä tuloksia. Monet tunnetuista tuloksista ovat vaikeita todistaa, ja monet kysymykset ovat vielä auki. Lause (Ladner 1975):
LisätiedotNumeeriset menetelmät
Numeeriset menetelmät Luento 7 Ti 27.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 7 Ti 27.9.2011 p. 1/39 p. 1/39 Interpolointi Ei tunneta funktion f : R R lauseketta, mutta tiedetään funktion
LisätiedotHarjoitus 5 ( )
Harjoitus 5 (14.4.2015) Tehtävä 1 Figure 1: Tehtävän 1 sallittu joukko S. Optimointitehtävän sallittu alue S on pisteiden (0, 0), (0, 7), (4, 3), (9, 8) ja (9, 0) määräämä viisikulmio. Kyseinen alue saadaan
Lisätiedot58131 Tietorakenteet ja algoritmit (kevät 2013) Kurssikoe 2, , vastauksia
58131 Tietorakenteet ja algoritmit (kevät 2013) Kurssikoe 2, 652013, vastauksia 1 [6 pistettä] Vastaa jokaisesta alla olevasta väittämästä onko se tosi vai epätosi ja anna lyhyt perustelu Jokaisesta kohdasta
LisätiedotAlgoritmit. Ohjelman tekemisen hahmottamisessa käytetään
Ohjelmointi Ohjelmoinnissa koneelle annetaan tarkkoja käskyjä siitä, mitä koneen tulisi tehdä. Ohjelmointikieliä on olemassa useita satoja. Ohjelmoinnissa on oleellista asioiden hyvä suunnittelu etukäteen.
LisätiedotAlgoritmit 2. Luento 14 To Timo Männikkö
Algoritmit 2 Luento 14 To 2.5.2019 Timo Männikkö Luento 14 Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydelliset ongelmat Kertaus ja tenttivinkit Algoritmit
LisätiedotAlgoritmit 1. Luento 14 Ke 25.2.2015. Timo Männikkö
Algoritmit 1 Luento 14 Ke 25.2.2015 Timo Männikkö Luento 14 Heuristiset menetelmät Heuristiikkoja kapsäkkiongelmalle Kauppamatkustajan ongelma Lähimmän naapurin menetelmä Kertaus ja tenttivinkit Algoritmit
LisätiedotMonitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu
Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu (Valmiin työn esittely) 11.4.2011 Ohjaaja: Ville Mattila Valvoja: Raimo Hämäläinen Työn tavoite Tutkia evoluutioalgoritmia (Lee
LisätiedotKönigsbergin sillat. Königsberg 1700-luvulla. Leonhard Euler ( )
Königsbergin sillat 1700-luvun Königsbergin (nykyisen Kaliningradin) läpi virtasi joki, jonka ylitti seitsemän siltaa. Sanotaan, että kaupungin asukkaat yrittivät löytää reittiä, joka lähtisi heidän kotoaan,
LisätiedotMalliratkaisut Demo 1
Malliratkaisut Demo 1 1. Merkitään x = kuinka monta viikkoa odotetaan ennen kuin perunat nostetaan. Nyt maksimoitavaksi kohdefunktioksi tulee f(x) = (60 5x)(300 + 50x). Funktio f on alaspäin aukeava paraaeli,
Lisätiedot4.1 Kaksi pistettä määrää suoran
4.1 Kaksi pistettä määrää suoran Kerrataan aluksi kurssin MAA1 tietoja. Geometrisesti on selvää, että tason suora on täysin määrätty, kun tunnetaan sen kaksi pistettä. Joskus voi tulla vastaan tilanne,
LisätiedotMinimilatenssiongelman ratkaisualgoritmeja (valmiin työn esittely)
Minimilatenssiongelman ratkaisualgoritmeja (valmiin työn esittely) Antti Salmela 03.03.2014 Ohjaaja: Harri Ehtamo Valvoja: Harri Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston avoimilla verkkosivuilla.
LisätiedotGeneettiset algoritmit
Geneettiset algoritmit Evoluution piirteitä laskennassa Optimoinnin perusteet - Kevät 2002 / 1 Sisältö Geneettisten algoritmien sovelluskenttä Peruskäsitteitä Esimerkkejä funktion ääriarvon etsintä vangin
LisätiedotAlgoritmit 1. Luento 2 Ke Timo Männikkö
Algoritmit 1 Luento 2 Ke 11.1.2017 Timo Männikkö Luento 2 Algoritmin esitys Algoritmien analysointi Suoritusaika Asymptoottinen kertaluokka Peruskertaluokkia NP-täydelliset ongelmat Algoritmit 1 Kevät
LisätiedotKenguru 2019 Student lukio
sivu 0 / 7 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Koodi (ope täyttää): Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Oikeasta vastauksesta
LisätiedotPythagoraan polku 16.4.2011
Pythagoraan polku 6.4.20. Todista väittämä: Jos tasakylkisen kolmion toista kylkeä jatketaan omalla pituudellaan huipun toiselle puolelle ja jatkeen päätepiste yhdistetään kannan toisen päätepisteen kanssa,
LisätiedotValitaan alkio x 1 A B ja merkitään A 1 = A { x 1 }. Perinnöllisyyden nojalla A 1 I.
Vaihto-ominaisuudella on seuraava intuition kannalta keskeinen seuraus: Olkoot A I ja B I samankokoisia riippumattomia joukkoja: A = B = m jollain m > 0. Olkoon vielä n = m A B, jolloin A B = B A = n.
LisätiedotTIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen jussi.hakanen@jyu.fi syksy 2010
TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta Yliassistentti Jussi Hakanen jussi.hakanen@jyu.fi syksy 2010 NSGA-II Non-dominated Sorting Genetic Algorithm (NSGA) Ehkä tunnetuin EMO-menetelmä
LisätiedotKenguru 2014 Student sivu 1 / 8 (lukion 2. ja 3. vuosi)
Kenguru 2014 Student sivu 1 / 8 Nimi Ryhmä Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta
Lisätiedot811312A Tietorakenteet ja algoritmit , Harjoitus 2 ratkaisu
811312A Tietorakenteet ja algoritmit 2017-2018, Harjoitus 2 ratkaisu Harjoituksen aiheena on algoritmien oikeellisuus. Tehtävä 2.1 Kahvipurkkiongelma. Kahvipurkissa P on valkoisia ja mustia kahvipapuja,
LisätiedotHelsingin, Itä-Suomen, Jyväskylän, Oulun, Tampereen ja Turun yliopisto Matematiikan valintakoe 11.6.2012 klo 10 13 Ratkaisut ja pisteytysohjeet
Helsingin, Itä-Suomen, Jyväskylän, Oulun, Tampereen ja Turun yliopisto Matematiikan valintakoe 11.6.01 klo 10 13 t ja pisteytysohjeet 1. Ratkaise seuraavat yhtälöt ja epäyhtälöt. (a) 3 x 3 3 x 1 4, (b)
Lisätiedot13 Lyhimmät painotetut polut
TIE-20100 Tietorakenteet ja algoritmit 297 13 Lyhimmät painotetut polut BFS löytää lyhimmän polun lähtösolmusta graafin saavutettaviin solmuihin. Se ei kuitenkaan enää suoriudu tehtävästä, jos kaarien
LisätiedotPartikkelit pallon pinnalla
Simo K. Kivelä, 14.7.2004 Partikkelit pallon pinnalla Tehtävänä on sijoittaa annettu määrä keskenään identtisiä partikkeleita mahdollisimman tasaisesti pallon pinnalle ja piirtää kuvio syntyvästä partikkelikonfiguraatiosta.
LisätiedotHelsingin, Itä-Suomen, Jyväskylän, Oulun, Tampereen ja Turun yliopisto Matematiikan valintakoe klo 10 13
Helsingin, Itä-Suomen, Jyväskylän, Oulun, Tampereen ja Turun yliopisto Matematiikan valintakoe 11.6.2012 klo 10 13 1. Ratkaise seuraavat yhtälöt ja epäyhtälöt. (a) 3 2 x 2 3 2 3 x 1 4, (b) (x + 1)(x 2)
Lisätiedot58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, , vastauksia
58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, 10..2014, vastauksia 1. [9 pistettä] (a) Todistetaan 2n 2 + n + 5 = O(n 2 ): Kun n 1 on 2n 2 + n + 5 2n 2 + n 2 +5n 2 = 8n 2. Eli
LisätiedotMalliratkaisut Demo 4
Malliratkaisut Demo 4 1. tehtävä a) f(x) = 2x + 21. Funktio on lineaarinen, joten se on unimodaalinen sekä maksimoinnin että imoinnin suhteen. Funktio on konveksi ja konkaavi. b) f(x) = x (pienin kokonaisluku
LisätiedotAlgoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö
Algoritmit 1 Luento 13 Ti 23.2.2016 Timo Männikkö Luento 13 Suunnittelumenetelmät Taulukointi Kapsäkkiongelma Ahne menetelmä Verkon lyhimmät polut Dijkstran menetelmä Verkon lyhin virittävä puu Kruskalin
LisätiedotC C. x 2. x 3 x 3. Lause 3SAT p m VC Todistus. Olk. φ = C 1 C 2 C m 3-cnf-kaava, jossa esiintyvät muuttujat. φ toteutuva:
Lause 3SAT p m VC Todistus. Olk. φ = C 1 C C m 3-cnf-kaava, jossa esiintyvät muuttujat x 1,..., x n. Vastaava solmupeiteongelman tapaus G, k muodostetaan seuraavasti. G:ssä on solmu kutakin literaalia
Lisätiedot6. Approksimointialgoritmit
6. Approksimointialgoritmit Tässä luvussa käsitellään lyhyesti approksimointiin liittyvät peruskäsitteet ja joitain keskeisiä approksimoituvuustuloksia. Tavoitteena on, että opiskelija näkee approksimointialgoritmien
LisätiedotDynaaminen optimointi
Dynaaminen optimointi Tapa ratkaista optimointitehtävä Tehtävä ratkaistaan vaiheittain ja vaiheet yhdistetään rekursiivisesti Perustuu optimaalisuusperiaatteeseen: Optimaalisen ratkaisupolun loppuosa on
LisätiedotPARITUS KAKSIJAKOISESSA
PARITUS KAKSIJAKOISESSA GRAAFISSA Informaatiotekniikan t iik seminaari i Pekka Rossi 4.3.2008 SISÄLTÖ Johdanto Kaksijakoinen graafi Sovituksen peruskäsitteet Sovitusongelma Lisäyspolku Bipartite matching-algoritmi
LisätiedotSkedulointi, kuormituksen tasaus, robotin navigaatio
Skedulointi, kuormituksen tasaus, robotin navigaatio Esitelmä algoritmiikan tutkimusseminaarissa 17.2.2003 Kimmo Palin Tietojenkäsittelytieteen laitos Helsingin Yliopisto Skedulointi, kuormituksen tasaus,
Lisätiedot