Optimointialgoritmit. Marko M. Mäkelä. Turun yliopisto Matematiikan laitos

Koko: px
Aloita esitys sivulta:

Download "Optimointialgoritmit. Marko M. Mäkelä. Turun yliopisto Matematiikan laitos"

Transkriptio

1 Optimointialgoritmit Marko M. Mäkelä Turun yliopisto Matematiikan laitos Syksy 2014

2 Sisältö Esipuhe 1 I Johdanto 2 1 Algoritmit ja algoritminen kuvaus 2 2 Suljettu kuvaus ja konvergenssi 4 3 Yhdistetyt kuvaukset 8 4 Algoritmien vertailuperusteita Yleisyys, luotettavuus ja tarkkuus Herkkyys parametrien ja datan suhteen Valmistelu- ja laskuaika eli algoritmin tehokkuus Konvergenssi II Yksiulotteinen optimointi eli viivahaku 15 5 Viivahaku ilman derivaattoja Tasavälinen haku Puolitusmenetelmä Kultaisen leikkauksen menetelmä eli jatkuvasuhdehaku Fibonacci-menetelmä Kultaisen leikkauksen menetelmän ja Fibonacci-menetelmän vertailua Yhteenveto Viivahaku derivaattoja käyttäen Bisektiomenetelmä Newtonin menetelmä Sekanttimenetelmä Kuutiopolynomi Muita viivahakumenetelmiä Toisen asteen polynomiapproksimaatio Epätarkka viivahaku Viivahakukuvauksen sulkeutuneisuus 38 III Moniulotteinen rajoitteeton optimointi 39

3 9 Suorat menetelmät Syklisten koordinaattien menetelmä Hooke Jeeves-menetelmä Rosenbrockin menetelmä Polytooppimenetelmä Satunnaisten suuntien menetelmät Derivaattoja käyttävät klassiset menetelmät Nopeimman laskeutumisen menetelmä (NLM) Newtonin menetelmä Levenberg Marquardt-algoritmi Luottamusaluealgoritmi Dog leg -algoritmi Konjugaattisuuntien menetelmät Konjugaattisuuntien merkitys Davidon Fletcher Powell-menetelmä (DFP) Broydenin perhe ja BFGS Skaalaus Konjugaattigradienttimenetelmät Powellin algoritmi Zangwillin algoritmi PARTAN-menetelmä Vertailu IV Rajoitteinen optimointi Sakko- ja reunafunktiomenetelmät Sakkofunktion käsite Ulkopuolinen sakkofunktiomenetelmä KKT-kertoimet ja sakkofunktiomenetelmä Eksakti sakkofunktiomenetelmä Lisätyn Lagrangen funktion menetelmä Reunafunktiomenetelmät Sallittujen suuntien menetelmät Lineaariset rajoitteet Epälineaariset epäyhtälörajoitteet Topkis Veinott-muunnelma

4 14 Rosenin gradientin projisiointi Redusoidun gradientin menetelmä Peräkkäiset kvadraattiset approksimaatiot (SQP-menetelmä) Yhtälörajoitteet Epäyhtälörajoitteet Kvasi-Newton-approksimaatio Globaalisesti konvergoiva muunnos Lineaariset approksimaatiot Peräkkäisten lineaaristen approksimaatioiden menetelmä Leikkaustasoalgoritmi LIITTEET 169 Ohjelmistot 169 Kirjallisuutta 176 3

5 Esipuhe Optimointialgoritmit on optimoinnin syventävä kurssi, jonka esitietoina oletetaan kuunnelluksi kurssi Konveksi analyysi ja optimointi. Kurssilla tutustutaan erilaisiin epälineaarisen optimoinnin menetelmiin ja ratkaisualgoritmeihin, joiden avulla optimointitehtäviä voidaan ratkaista numeerisesti tietokoneen avulla. Kurssilla tarkastellaan klassista (sileää, lokaalia ja yksitavoitteista) yksi- ja moniulotteista rajoitteeetonta sekä rajoitteista optimointia. Itse algoritmien lisäksi käydään läpi niiden konvergenssi-, tehokkuus-, ym. ominaisuuksia. Lopuksi esitellään vielä joitakin saatavilla olevia ohjelmistoja. Menetelmien suuresta lukumäärästä johtuen niitä on ymmärrettävyytensä parantamiseksi pyritty ryhmittelemään ja luokittelemaan ominaisuuksiensa mukaan. Yleisimmin luokittelua tehdään sen pohjalta käyttääkö menetelmä derivaattainformaatioita vaiko ei. Menetelmää kutsutaan suoraksi (tai derivaattavapaaksi), jos se hyödyntää toiminnassaan ainoastaan funktion arvoja eikä lainkaan derivaattaa tai gradienttia. Moniulotteisessa rajoitteettomassa optimoinnissa käsitellään lisäksi omana ryhmänään menetelmät, jotka hyödyntävät konjugaattisuutta. Rajoitteisessa optimoinnissa suoralla menetelmällä puolestaan ymmärretään sellaista algoritmia, joka käsittelee rajoitteita eksplisiittisesti. Sen sijaan epäsuorat menetelmät pyrkivät muuntamaan tehtävän ensiksi rajoitteettomaksi käyttäen esimerkiksi sakkofunktiota tai Lagrangen funtiota. Luentomoniste on laadittu emeritusprofessori Ulla Pursiheimon vuonna 1998 kirjoittaman samannimisen monisteen pohjalta. Kyseisen monisteen lähteenä on käytetty pääasiassa teoksen [1] lukuja Ohjelmistoja koskeva liite perustuu verkkojulkaisuun [7]. Kirjallisuusliitteessä on lueteltu lisäksi muita alaa koskevia klassikkoteoksia, joita ei ole käytetty suoraan tämän monisteen lähdekirjoina. Erityiskiitos Rami Rakkolaiselle tekstin huolellisesta ladonnasta ja kuvien tuottamisesta. Turussa syksyllä 2010 Marko M. Mäkelä 1

6 Osa I Johdanto 1 Algoritmit ja algoritminen kuvaus Tehtävän min f(x) (1.1) s. t. x S ratkaisutapa eli algoritmi on iteratiivinen prosessi, joka generoi jonon pisteitä tiettyjen sääntöjen mukaan ja lopettaa, kun tietty lopetuskriteeri astuu voimaan. Määritelmä 1.1. Olkoon piste x k annettu. Käyttämällä algoritmin sääntöjä saadaan seuraava piste x k+1. Tämä prosessi on nimeltään algoritminen kuvaus, josta käytetään merkintää A. Kuvaus on yleisemmin pisteeltä joukolle oleva kuvaus, joka liittää jokaiseen joukon X pisteeseen jonkin joukon X osajoukon. Algoritminen kuvaus määrittelee alkupisteestä x 1 lähtien jonon x 1, x 2,..., missä x k+1 A(x k ) kaikilla indeksin k arvoilla. Siirtyminen pisteestä x k pisteeseen x k+1 edustaa algoritmin yhtä iteraatiokierrosta. Esimerkki 1.2. Tarkastellaan tehtävää min x 2 s. t. x 1, jonka optimiratkaisu on x = 1. Olkoon pisteeltä pisteelle -kuvaus seuraava: A(x) = 1 (x + 1). 2 On helppo osoittaa, että kuvauksen generoima jono konvergoi kohti optimipistettä. Jos x 1 = 4, niin saadaan jono {4, 2.5, 1.75, 1.375,... }. Tarkastellaan toisena tapauksena pisteeltä joukolle olevaa kuvausta [ 1, 1 A(x) = (x + 1)], jos x 1 2 [ 1 (x + 1), 1], jos x < 1. 2 Jokaisen pisteen x kuva on suljettu väli ja mikä hyvänsä välin pisteistä voidaan valita seuraavaksi pisteeksi. Nytkin algoritmi konvergoi kohti optimipistettä. Esimerkiksi aloittamalla pisteestä x 1 = 4 saadaan yhdeksi mahdolliseksi pistejonoksi {4, 2, 1.2, 1.1, 1.02,... }. 2

7 (a) Pisteeltä pisteelle -kuvaus. (b) Pisteeltä joukolle -kuvaus. Kuva 1: Esimerkin 1.2 havainnollistus. Toivottavaa olisi, että algoritmi löytäisi globaalin optimipisteen, mutta näin ei aina käy. Monissa tapauksissa voidaan ja on pakko tyytyä vähempään. Yleensä algoritmi pysähtyy, kun jokin niin sanottu ratkaisujoukko Ω saavutetaan. Seuraavassa on esitetty joitakin esimerkkejä tehtävän (1.1) erilaisista ratkaisujoukoista: 1. Ω = {x x on tehtävän lokaali optimipiste}. 2. Ω = {x x S, f(x ) b}, missä b on jokin kohdefunktion hyväksyttävä raja. 3. Ω = {x x S, f(x ) LB + ε}, missä ε > 0 on annettu virheraja ja LB on optimiarvon alaraja. Tyypillinen alaraja saadaan Lagrangen duaalitehtävän avulla. 4. Ω = {x x S, f(x ) f < ε}, missä ε > 0 on annettu ja f on tunnettu globaalin optimin arvo. 5. Ω = {x x S, x y < ε}, missä ε > 0 on annettu ja y on tunnettu lokaali tai globaali optimipiste. 6. Ω = {x x on tehtävän KKT-piste}. 7. Ω = {x x on tehtävän Fritz John-piste}. Määritelmä 1.3. Algoritmi A : X X konvergoi eli suppenee joukossa Y X, jos jokaista aloituspistettä x 1 Y kohti sen generoiman jonon x 1, x 2,... mielivaltaisen konvergoivan osajonon rajapiste kuuluu ratkaisujoukkoon Ω. Jos Y = X, niin algoritmi konvergoi globaalisti eli lähtöpisteestä riippumatta. Jos Y X, niin algoritmi konvergoi lokaalisti. 3

8 2 Suljettu kuvaus ja konvergenssi Esimerkki 2.1. Tarkastellaan edelleen esimerkin 1.2 tapausta. Otetaan ratkaisujoukoksi globaali optimipiste eli Ω = {1} ja tarkastellaan kuvausta [ 3 A(x) = + 1x, 1 + 1x], jos x (x + 1), jos x < 2. 2 Jokaista aloituspistettä x 1 2 kohti algoritmin generoima jono konvergoi selvästi kohti pistettä ˆx = 2 / Ω. Toisaalta jokainen pisteestä x 1 < 2 alkava algoritmi konvergoi kohti optimipistettä x = 1. Kuva 2: Esimerkin 2.1 havainnollistus. Huomautus 2.2. Esimerkkien 1.2 ja 2.1 algoritmeilla on seuraavat ominaisuudet: 1. Jos x k S = {x x 1}, niin myös x k+1 S. 2. Jos x k S, mutta x k / Ω, niin f(x k+1 ) < f(x k ). 3. Jos x k S Ω, niin myös x k+1 S Ω. Esimerkin 1.2 algoritmit konvergoivat globaalisti, kun taas esimerkin 2.1 algoritmi konvergoi lokaalisti joukossa Y = (, 2). Määritelmä 2.3. Oletetaan, että X ja Y ovat epätyhjiä suljettuja joukkoja avaruuksissa R p ja R q. Olkoon A : X Y pisteeltä joukolle oleva kuvaus. Kuvaus A on suljettu pisteessä x X, jos siitä, että x k X, x k x y k A(x k ), y k y 4

9 seuraa y A(x). Kuvaus A on suljettu joukossa Z X, jos se on suljettu jokaisessa joukon Z pisteessä. Esimerkin 2.1 tapauksessa kuvaus ei ole suljettu, sillä jono {x k }, missä x k = 2 1 k konvergoi kohti pistettä x = 2, kun taas jono y k = A(x k ) = 3 1 konvergoi kohti pistettä 2 2k y = 3, mutta nyt y / A(x) = {2}. Sen sijaan esimerkin 1.2 molemmat algoritmit ovat 2 suljettuja. Seuraavassa konvergenssilauseessa on esitetty ne ehdot, jotka takaavat algoritmisen kuvauksen konvergenssin. Monen jäljempänä esitettävän algoritmin konvergenssi perustuu tähän tulokseen. Lause 2.4. Olkoon X epätyhjä suljettu joukko avaruudessa R n ja Ω X epätyhjä ratkaisujoukko. Algoritmi A : X X olkoon pisteeltä joukolle oleva kuvaus. Kun alkupiste x 1 X on annettu, niin jono {x k } generoidaan seuraavasti: Jos x k Ω, niin pysähdytään. Muutoin valitaan x k+1 A(x k ), korvataan k luvulla k + 1 ja toistetaan menettely. Oletetaan, että algoritmin generoima jono x 1, x 2,... sisältyy erääseen joukon X kompaktiin osajoukkoon ja oletetaan, että on olemassa jatkuva vähenemisfunktio α, jolle on voimassa α(y) < α(x), jos x / Ω ja y A(x). Jos algoritmi A on suljettu joukon Ω komplementissa, niin silloin algoritmi joko pysähtyy äärellisen askelmäärän jälkeen johonkin ratkaisujoukon Ω pisteeseen tai sitten se generoi päättymättömän jonon pisteitä {x k } siten, että 1. jokaisen jonon {x k } konvergoivan osajonon rajapiste kuuluu joukkoon Ω (eli algoritmi konvergoi) ja 2. on olemassa x Ω siten, että α(x k ) α(x). Todistus. Jos jollakin iteraatiokierroksella on saatu piste x k Ω, niin algoritmi pysähtyy. Oletetaan siis, että algoritmi generoi päättymättömän jonon pisteitä {x k }. Olkoon {x k } K jokin tämän jonon konvergoiva osajono ja x vastaava rajapiste. Koska α on jatkuva funktio, niin silloin α(x k ) α(x) indekseillä k K. Tämän nojalla jokaista annettua ε > 0 kohti on olemassa K K siten, että α(x k ) α(x) < ε, k K, k K. Erityisesti kun k = K, niin α(x K ) α(x) < ε. 5

10 Olkoon sitten k > K. Koska α on laskeva funktio, niin α(x k ) < α(x K ), jolloin edellisen nojalla saadaan α(x k ) α(x) = α(x k ) α(x K ) + α(x K ) α(x) < 0 + ε = ε. Koska tämä on voimassa kaikille indekseille k > K ja koska ε oli mielivaltainen, niin lim α(x k) = α(x). (2.1) k Osoitetaan seuraavaksi, että piste x Ω. Tehdään vastaoletus, että x / Ω ja tarkastellaan jonoa {x k+1 } K. Tämä on ääretön jono kompaktissa joukon X osajoukossa, joten sillä on konvergoiva osajono {x k+1 } K, jonka rajapiste olkoon x X. Nyt tuloksen (2.1) nojalla α(x) = α( x). Koska A on suljettu pisteessä x sekä x k x, x k+1 A(x k ) ja x k+1 x, kun k K, niin x A(x). Tällöin on oltava α( x) < α(x), mikä johtaa edellä saadun kanssa ristiriitaan ja näin ollen todistaa sen, että x Ω. Seuraus 2.5. Jos edellisessä lauseessa Ω = {x }, niin x k x. Huomautus 2.6. Jos x k / Ω, niin algoritmi generoi uuden iteraatiopisteen x k+1 siten, että α(x k + 1) < α(x k ). Vähenemisfunktioksi α valitaan usein suoraan kohdefunktio f, mutta esimerkiksi differentioituvassa rajoitteettomassa tapauksessa voidaan valita myös α(x) := f(x). Koska edellä olevan nojalla algoritmi saavuttaa ratkaisujoukon Ω yleensä vasta rajalla indeksin k lähestyessä ääretöntä, niin käytännön laskusuorituksia varten täytyy olla muita lopetussääntöjä. Seuraavassa on esitetty viisi tavallisesti käytettyä sääntöä, joissa ε on pieni positiivinen reaaliluku ja N on positiivinen kokonaisluku. 1. x k+n x k < ε. Algoritmi pysähtyy, jos pisteiden välinen etäisyys on pienempi kuin ε, kun pisteestä on edetty algoritmia käyttäen N askelta x k+1 x k x k < ε, x k = 0. Algoritmi pysähtyy, jos suhteellinen etäisyys siirryttäessä pisteestä seuraavaan on pienempi kuin ε. α(x k ) α(x k+n ) < ε. Algoritmi pysähtyy, jos vähenemisfunktio pienenee vähemmän kuin määrän ε siirryttäessä pisteestä N askelta eteenpäin. 6

11 4. α(x k ) α(x k+1 ) α(x k ) < ε α(x k ) 0. Algoritmi pysähtyy, jos vähenemisfunktion suhteellinen pieneneminen on vähemmän kuin ε siirryttäessä pisteestä seuraavaan. 5. α(x k ) α(x ) < ε, x Ω. Algoritmi pysähtyy, jos vähenemisfunktio on riittävän lähellä jotakin ratkaisujoukon Ω antamaa arvoa. Tämä on käytännöllinen lopetussääntö silloin kun jostain syystä tunnetaan funktion α arvo ratkaisujoukossa. Edellä olevat lopetussäännöt perustuvat menetelmän konvergenssiin. Niiden lisäksi voidaan käyttää myös optimaalisuuehtoihin perustuvia sääntöjä. 7

12 3 Yhdistetyt kuvaukset Useissa optimoitimenetelmissä algoritmilliset kuvaukset koostuvat yhdistetyistä kuvauksista, joissa ensin pyritään etsimään hakusuunta d k ja sen jälkeen optimaalista askelpituutta λ k siten, että se minimoi yksiulotteisen funktion α(x k + λd k ). Määritelmä 3.1. Olkoot X R n, Y R p ja Z R q epätyhjiä suljettuja joukkoja sekä B : X Y ja C : Y Z pisteeltä joukolle olevia kuvauksia. Yhdistetty kuvaus A = CB määritellään pisteeltä joukolle olevana kuvauksena seuraavasti: A(x) = C(y). y B(x) Kuva 3: Yhdistetty kuvaus. Lause 3.2. Olkoot X R n, Y R p ja Z R q epätyhjiä suljettuja joukkoja. Oletetaan, että B : X Y ja C : Y Z ovat pisteeltä joukolle olevia kuvauksia ja tarkastellaan yhdistettyä kuvausta A = CB. Oletetaan, että B on suljettu pisteessä x ja C on suljettu joukossa B(x). Edelleen oletetaan, että jos x k x ja y k B(x k ), niin on olemassa jonon {y k } konvergoiva osajono. Tällöin yhdistetty kuvaus A on suljettu pisteessä x. Todistus. Oletetaan, että x k x, z k A(x k ) ja z k z. Nyt riittää osoittaa, että z A(x). Kuvauksen A määrittelyn nojalla jokaista indeksiä k kohti on olemassa y k B(x k ) siten, että z k C(y k ). Oletuksen nojalla on olemassa konvergoiva osajono {y k } K, jonka rajapiste olkoon y. Koska B on suljettu pisteessä x, niin y B(x). Edelleen koska C on suljettu joukossa B(x), niin se on suljettu pisteessä y ja näin ollen z C(y). Tästä seuraa, että z C(y) CB(x) = A(x), joten kuvaus A on suljettu pisteessä x. 8

13 Seuraus 3.3. Olkoot X R n, Y R p ja Z R q epätyhjiä suljettuja joukkoja sekä B : X Y ja C : Y Z pisteeltä joukolle olevia kuvauksia. Oletetaan, että kuvaus B on suljettu pisteessä x, kuvaus C on suljettu joukossa B(x) ja joukko Y on kompakti. Tällöin A = CB on suljettu pisteessä x. Seuraus 3.4. Olkoot X R n, Y R p ja Z R q epätyhjiä suljettuja joukkoja, kuvaus B : X Y jatkuva funktio pisteessä x ja kuvaus C : Y Z pisteeltä joukolle oleva kuvaus. Oletetaan, että kuvaus C on suljettu pisteessä B(x). Tällöin A = CB on suljettu pisteessä x. Esimerkki 3.5. Tarkastellaan kuvauksia B : R R ja C : R R, kun 1 B(x) =, x 0 x 0, x = 0 C(y) = {z z y }. Helposti nähdään, että kuvaukset ovat suljettuja kaikkialla. Tarkastellaan sitten yhdistettyä kuvausta A = CB, jolloin kuvaukseksi saadaan {z z 1 x }, x 0 A(x) = CB(x) = {z z B(x) } = {0}, x = 0. Nyt huomataan, ettei kuvaus A ole suljettu origossa. Tämän osoittamista varten valitaan jono {x k }, missä x k = 1. Tällöin k A(x k ) = {z z k}. Nyt piste z k = 1 kuuluu joukkoon A(x k ) kaikilla indeksin k arvoilla ja tämän jonon rajapiste on triviaalisti z = 1. Jonon {x k } rajapiste on nyt x = 0, mutta tällöin z = 1 / A(x) = {0}, eikä kuvaus siis ole suljettu. Kuitenkin molemmat kuvaukset B ja C olivat suljettuja. Syy onkin siinä, että jonolla y k = B(x k ) = k ei ole konvergoivaa osajonoa. Lause 3.6. Olkoon X epätyhjä suljettu joukko avaruudessa R n ja olkoon Ω X epätyhjä ratkaisujoukko. Olkoon α : R n R jatkuva funktio. Tarkastellaan pisteeltä joukolle olevaa kuvausta C : X X, jolle on voimassa α(y) α(x) ja y C(x), kun x X on annettu. Olkoon B : X X pisteeltä joukolle oleva suljettu kuvaus joukon Ω komplementissa ja oletetaan, että on voimassa α(y) < α(x), jos x / Ω ja y B(x). Tarkastellaan algoritmia, jonka määrää yhdistetty kuvaus A = CB. Olkoon x 1 annettu ja generoidaan jono {x k } seuraavasti: X 9

14 Jos x k Ω, niin pysähdytään. Muutoin valitaan x k+1 A(x k ), korvataan luku k luvulla k + 1 ja toistetaan menettely. Oletetaan, että joukko Λ = {x α(x) α(x 1 )} on kompakti. Silloin algoritmi joko pysähtyy äärellisen askelmäärän jälkeen johonkin ratkaisujoukon Ω pisteeseen tai sitten se generoi päättymättömän jonon pisteitä {x k } siten, että jokaisen jonon {x k } konvergoivan osajonon rajapiste kuuluu joukkoon Ω (eli algoritmi konvergoi). Todistus. Jos jollakin iteraatiokierroksella on saatu x k Ω, niin algoritmi päättyy jälleen äärellisenä. Oletetaan siis, että algoritmi generoi äärettömän jonon pisteitä {x k }. Olkoon {x k } K jokin sen konvergoiva osajono ja sen rajapiste olkoon x. Tällöin α(x k ) α(x), kun k K. Käyttämällä lauseen 2.4 tapaan hyväksi funktion α monotonisuutta saadaan lim α(x k) = α(x). (3.1) k Osoitetaan nyt, että x Ω. Tehdään vastaoletus, että x / Ω ja tarkastellaan jälleen jonoa {x k+1 } K. Kuvauksen A määrittelyn mukaan x k+1 C(y k ) ja y k B(x k ). Nyt x k+1, y k Λ, joka oletuksen nojalla on kompakti joukko. Tällöin on olemassa indeksijoukko K K siten, että y k y ja x k+1 x, kun k K. Koska kuvaus B on suljettu pisteessä x / Ω, niin y B(x) ja α(y) < α(x). Koska x k+1 C(y k ), niin oletuksen nojalla α(x k+1 ) α(y k ) kaikilla indekseillä k K. Tästä saadaan α( x) α(y) menemällä rajalle k. Koska α(y) < α(x), niin α( x) < α(x), mikä on ristiriidassa tuloksen (3.1) kanssa, kun x k+1 x, missä k K. Siis vastaoletus on väärin ja lauseen väite on todistettu. Huomautus 3.7. Edellisessä lauseessa 1. kuvauksen C ei tarvitse olla suljettu. 2. joukko Λ on tasojoukko S α(x1 ). Seuraava lause osoittaa, että melko vähäisin oletuksin suuri joukko optimointialgoritmeja antaa ratkaisun. Lauseen todistusta ei tässä esitetä, mutta se löytyy teoksen [1] luvusta 7.3. Lause 3.8. Olkoon funktio f : R n R differentioituva ja tarkastellaan minimointitehtävää min x R n f(x). Tarkastellaan seuraavanlaista algoritmia A: Piste y A(x), merkitsee sitä, että y saadaan minimoimalla funktio f peräjälkeen suunnissa d 1, d 2,..., d n alkaen pisteestä x. Hakusuunnat d 1, d 2,..., d n voivat riippua pisteestä x ja niiden normeille on voimassa d k = 1 kaikilla indekseillä k. Oletetaan, että 1. on olemassa ε > 0 siten, että det(d 1, d 2,..., d n ) ε kaikilla x R n, 10

15 2. funktion f minimi mitä tahansa suuntaa pitkin on yksikäsitteinen. Oletetaan, että aloituspiste x 1 on annettu ja siitä lähtien algoritmi generoi pistejonon {x k }. Jos jollakin indeksin k arvolla f(x k ) = 0, niin algoritmi pysähtyy antaen optimipisteeksi pisteen x k. Muutoin x k+1 A(x), korvataan luku k luvulla k + 1 ja toistetaan prosessi. Jos jono {x k } tällöin sisältyy johonkin avaruuden R n kompaktiin osajoukkoon, niin silloin jokainen jonon {x k } kasautumispiste x toteuttaa ehdon f(x) = 0. Huomautus 3.9. Edellisessä lauseessa 1. kuvauksen A ei tarvitse olla suljettu. 2. ehdosta 1. seuraa, että suunnat d 1, d 2,..., d n ovat lineaarisesti riippumattomia. 3. ehdosta 2. seuraa, että f(x k+1 ) < f(x k ), kun f(x k ) ehto f(x) = 0 on tehtävän välttämätön optimaalisuuehto. 11

16 4 Algoritmien vertailuperusteita Jatkossa tullaan esittelemään lukuisa määrä eri optimointialgoritmeja. Esiin nousee luonnollisesti kysymys siitä, mitä algoritmia pitäisi missäkin tilanteessa käyttää. Tähän ei voida antaa mitään yleispätevää vastausta, vaan jokaisen käyttäjän on itse analysoitava omat vaatimuksensa sekä niiden ja algoritmista käytettävissä olevien tietojen avulla yritettävä valita paras tai ainakin mahdollisimman sopiva algoritmi. Tällöin tulee kiinnittää huomiota useisiin algoritmin ominaisuuksiin, joista mainittakoon esimerkiksi yleisyys, luotettavuus ja tarkkuus, herkkyys parametrien ja datan suhteen, algoritmin valmistelu- ja laskuaika sekä konvergenssiominaisuudet. 4.1 Yleisyys, luotettavuus ja tarkkuus Eri algoritmit on tarkoitettu ratkaisemaan erityyppisiä epälineaarisia optimointitehtäviä, joita ovat esimerkiksi rajoitteettomat tehtävät, epäyhtälörajoitteiset tehtävät, yhtälörajoitteiset tehtävät sekä tehtävät, joissa on kumpaakin tyyppiä olevia rajoitteita. Näidenkin luokkien sisällä on lisäksi erityisiä oletuksia esimerkiksi tehtävän rakenteesta. Joissakin rajoitteettomissa tehtävissä kohdefunktio oletetaan differentioituvaksi, kun taas toisissa tätä olettamusta ei tehdä, vaan käytetään ainoastaan funktion arvoja. Yhtälörajoitteisissa tehtävissä eritellään yleensä tehtävät, joissa rajoitteet ovat pelkästään lineaarisia, kun taas toiset algoritmit huolehtivat tehtävistä, joissa on myös epälineaarisia rajoitteita. Tehtävän yleisyys viittaa siis siihen, kuinka laajaa tehtäväaluetta algoritmilla voidaan käsitellä vai rajoittuuko se kovin spesifiseen tehtävätyyppiin. Toinen tärkeä tekijä on algoritmin luotettavuus. On hyvin helppo konstruoida jokaista algoritmia kohti jokin tehtävä, jota kyseinen algoritmi ei pysty ollenkaan tai pystyy vain hyvin tehottomasti ratkaisemaan. Luotettavuus merkitseekin algoritmin kykyä ratkaista useimmat tehtävät kohtuullisen tarkasti ja tehokkaasti siinä luokassa, johon algoritmi on lähinnä tarkoitettu. Tämän ominaisuuden ei pitäisi juurikaan riippua siitä, mistä (sallitusta) aloituspisteestä algoritmi lähtee liikkeelle. Menetelmän luotettavuudella sekä tehtävän koolla ja rakenteella on siis tietty suhde. Jotkut algoritmit ovat luotettavia, mikäli tehtävän muuttujien lukumäärä ei ole liian suuri tai rajoitukset eivät ole kovin epälineaarisia, mutta muutoin algoritmi saattaa olla epäluotettava. Lauseen 2.4 nojalla algoritmin konvergenssi on rajaprosessi ja optimiratkaisu saavutetaan varsinaisesti vasta äärettömän monen iteraatiokierroksen jälkeen, jos yleensä konvergenssia tapahtuu. Kuitenkin käytännön kannalta on tarkoituksenmukaista mitata algoritmin suorituskykyä järkevän, äärellisen monen iteraatiokierroksen jälkeen. Sellaiset algoritmit, jotka pian aloituksen jälkeen antavat sallitun ratkaisun ja kohdefunktion arvokin on lähellä optimiarvoa, ovat suositeltavampia kuin ne, jotka lähestyvät pitkään optimia ei-sallitulla alueella. Erilaiset myöhemmin tarkasteltavat rangaistusfunktio- ja duaalityyppiset menetelmät generoivat koko ajan ei-sallittuja pisteitä, kunnes vasta algoritmin 12

17 päättyessä ne päätyvät sallittuun ratkaisuun. Tällaisissakin algoritmeissa olisi parempi, että melko aikaisin saadut ratkaisut olisivat kohtuullisen lähellä sallittua aluetta, jolloin korjaus sallituksi on helppoa, mikäli algoritmi joudutaan lopettamaan kesken laskuprosessin. 4.2 Herkkyys parametrien ja datan suhteen Useissa algoritmeissa käyttäjä joutuu asettamaan itse joitakin alkuarvoja ja parametreja, joista esimerkkejä ovat aloitusvektori, askelpituus, kiihdytyskerroin ja lopetuskriteeri. Jotkut algoritmit saattavat olla hyvin herkkiä näille parametreille ja tehtävän datalle, jolloin pientenkin muutosten jälkeen ne tuottavat aivan erilaisia pistejonoja tai joutuvat jopa lopettamaan laskut kesken. Hyvän algoritmin pitäisi ratkaista tehtävä oikein, kunhan parametrit ovat tiettyjen sovittujen arvojen joukossa. Lisäksi algoritmin pitäisi olla skaalainvariantti eli muuttujien skaalaus ei saisi vaikuttaa ratkaisuun eikä sen tehokkuuteen. Myöskään datana annetut parametrit eivät saisi vaikuttaa algoritmin toimintaan, mikäli ne ovat valitulla sovitulla alueella. 4.3 Valmistelu- ja laskuaika eli algoritmin tehokkuus Yksi vertailukriteeri on laskentaan kuluva kokonaisaika, joka koostuu valmistelusta ja itse tietokoneajasta. Jos algoritmi esimerkiksi tarvitsee erikseen omina aliohjelminaan kohdefunktion ja rajoitefunktioiden gradientit ja mahdollisesti Hessen matriisit, niin tähän valmisteluun kuluu aikaa, vaikka se suoritettaisiinkin tietokoneen symbolista laskentamenettelyä käyttäen. Tavallisesti algoritmin vaatima laskenta-aika ilmaistaan tietokoneen käyttämänä CPU-aikana, iteraatiokierroksina sekä funktiokutsujen lukumäärän avulla. Mikään näistä ei yksinään ole tyydyttävä mittari. Tietokoneen laskenta-aika riippuu tietokoneen tehokkuudesta ja sen kuormituksesta, mutta myös algoritmin koodauksen tehokkuudesta. Iteraatiokierrosten määrä ei myöskään kerro kaikkea, sillä iteraatiokierros käsitteenä saattaa olla eri algoritmeissa hyvin erilainen. Joissakin algoritmeissa yhteen iteraatioon saattaa kuulua vain yksi funktion arvon lasku, kun taas joissakin se saattaa sisältää kokonaisen suuren matriisin kääntämisen. Lopulta myös funktiokutsujen lukumäärä on harhaanjohtava, koska siinäkään ei tule esille muita vaativampia operaatioita. Esimerkiksi jos osittaisderivaatat lasketaan numeerisesti, niin silloin tarvitaan funktion arvon laskuja enemmän kuin siinä tapauksessa, että osittaisderivaatat olisi annettu suoraan omina funktioinaan. 4.4 Konvergenssi Algoritmin teoreettinen konvergenssi on tärkeä ominaisuus. Konvergenssia voidaan mitata algoritmin konvergenssiasteella. 13

18 Määritelmä 4.1. Olkoon {r k } jono reaalilukuja ja oletetaan, että jono konvergoi kohti arvoa r. Oletetaan, että jonossa r k r kaikilla indekseillä k. Jonon {r k } konvergenssiaste on suurin sellainen ei-negatiivinen luku p, joka toteuttaa ehdon lim sup k r k+1 r = β <. (4.1) r k r p Jos p = 1 ja konvergenssisuhde β < 1, niin sanotaan, että jonon konvergenssi on lineaarista tai että jonolla on lineaarinen konvergenssiaste, koska tällöin on asymptoottisesti voimassa r k+1 r = β r k r. Jos taas p > 1 tai jos p = 1 ja β = 0, niin sanotaan, että jonon konvergenssi on superlineaarista. Jos erityisesti p = 2 ja β <, niin tällöin jonolla on neliöllinen eli kvadraattinen konvergenssiaste. Esimerkin 1.2 algoritmin generoima jono on {r k }, missä r k+1 = 1(r 2 k + 1), jolloin r k 1. Tällöin r k+1 1 = 1(r 2 k 1) ja näin ollen p = 1 ja β = 1. Jos olisi p > 1, niin 2 silloin saataisiin β =, joten konvergenssi on lineaarista. Jos r 1 = 4, niin algoritmi antaa jonon {4, 2.5, 1.75, 1.375, ,... }. Jos edellisen sijasta algoritmi olisikin r k+1 = k (r k 1), niin tällä algoritmilla saadaan jono {4, 2.5, 1.375, ,... }. Jono konvergoi selvästi kohti arvoa 1. Nyt r k+1 1 r k 1 = 1 2 k. Tämä lähestyy arvoa nolla, kun k, joten konvergenssi on superlineaarista. Yleisesti jos kahdella algoritmilla on sama konvergenssiaste p, niin algoritmi, jonka konvergenssisuhde β on pienempi, konvergoi nopeammin. Kuitenkaan algoritmeja vertailtaessa ei pidä pelkästään tuijottaa konvergenssiasteeseen ja -suhteeseen, sillä nämäkin kertovat konvergenssista vasta äärettömyydessä. Parempi mitta olisi niin sanottu keskimääräinen konvergenssiaste, joka ottaa huomioon algoritmin kulun alusta lähtien. Määritellään vektori- tai pistejonon x k R n konvergenssi vastaavasti kuin kaavassa (4.1). Tällöin luvut p ja β määräytyvät ehdosta lim sup k x k+1 x x k x p = β <. Eräs optimoinnissa tärkeä kriteeri määriteltäessä algoritmin konvergenssikykyä on tarkastella algoritmin toimivuutta kvadraattisen funktion tapauksessa. Tämä siitä syystä, että lähellä minimiä funktion kvadraattinen approksimaatio on varsin hyvä. Jos algoritmi suoriutuu heikosti kvadraattisen funktion tapauksessa, niin se ei suoriudu hyvin muistakaan epälineaarisista funktioista varsinkaan silloin, kun haetaan viimeisiä tarkkoja arvoja. 14

19 Osa II Yksiulotteinen optimointi eli viivahaku 5 Viivahaku ilman derivaattoja Yksiulotteinen optimointi on oleellinen osa suurimmassa osassa kaikkia optimointialgoritmeja joitakin poikkeuksia lukuun ottamatta. Useimmat algoritmit toimivat nimittäin seuraavasti: Kun on annettu jokin iteraatiopiste x k, niin algoritmissa määrätään yleensä joku hakusuunta d k ja siinä suunnassa askelpituus λ k, jolloin seuraava iteraatiopiste on x k+1 = x k + λ k d k. Sen jälkeen prosessi toistetaan lähtien nyt pisteestä x k+1. Askelpituuden määrääminen tapahtuu usein siten, että määrätään hakusuunnassa d k funktion minimikohta. Toisin sanoen suoritetaan yksiulotteinen optimointi eli viivahaku seuraavasti: min λ f(x k + λd k ). Tässä luvun λ k täytyy olla sellainen, että saatu piste x k+1 = x k + λ k d k on sallittu. Olkoon funktio f : R n R differentioituva. Jos tarkastellaan viivahakua min λ θ(λ) = f(x k + λd k ), niin ensimmäinen ajatus on tietysti etsiä minimiä funktion derivaatan nollakohdasta ratkaisemalla yhtälö θ (λ) = 0. Kun kyseessä on useampiulotteisen funktion viivahaku, niin tämä johtaa yhtälöön θ (λ) = f(x k + λd k ) T d k = 0, jolloin tarvitaan funktion gradienttia ja yhtälö on usein hyvin epälineaarinen. Tästä syystä viivahaussa käytetäänkin usein menetelmiä, joissa ei tarvita gradienttia. Näitä menetelmiä kutsutaan suoriksi menetelmiksi. Määritelmä 5.1. Tarkastellaan funktion θ(λ) minimointia välillä a λ b. Koska minimin tarkkaa paikkaa tällä välillä ei tunneta, niin väliä kutsutaan epävarmuusväliksi (evv). Minimoinnin aikana suljetaan pois alueita, joilla minimi ei voi esiintyä, jolloin epävarmuusväli pienenee. Seuraavassa osoitetaan, että jos tiedetään funktion olevan aidosti kvasikonveksi, niin tämä on mahdollista laskemalla funktion arvo kahdessa välin pisteessä. Lause 5.2. Olkoon θ : R R aidosti kvasikonveksi funktio välillä [a, b] ja olkoot λ, µ [a, b] siten että λ < µ. Jos θ(λ) θ(µ) = θ(z) θ(µ), z [a, λ). Jos θ(λ) θ(µ) = θ(z) θ(λ), z (µ, b]. 15

20 Todistus. Oletetaan, että θ(λ) θ(µ) ja tarkastellaan jotakin pistettä z [a, λ). Tehdään vastaoletus, että θ(z) < θ(µ). Koska nyt λ on pisteiden z ja µ konveksi kombinaatio, niin aidon kvasikonveksisuuden nojalla θ(λ) < max {θ(z), θ(µ)} = θ(µ), mikä on ristiriidassa oletuksen θ(λ) θ(µ) kanssa. Siis vastaoletus on väärin ja lauseen väite oikein. Toinen osa lausetta todistetaan samoin. Tällä menettelyllä alkuperäinen epävarmuusväli voidaan pienentää joko väliksi [a, µ] tai [λ, b]. Seuraavassa esitetään joitakin menetelmiä, joilla aidosti kvasikonveksin funktion epävarmuusväliä pienennetään pelkästään funktion arvoja laskemalla. Oletetaan siis jatkossa, että funktio θ on aidosti kvasikonveksi. 5.1 Tasavälinen haku Tasavälinen haku on esimerkki rinnakkaisesta hausta, jossa määrätään etukäteen ne pisteet, joissa funktion arvo lasketaan. Epävarmuusväli [a 1, b 1 ] jaetaan pienempiin osaväleihin jakopisteillä (grid points) a 1 + kδ, missä k = 1, 2,..., n ja välin päätepiste b 1 saadaan kaavasta b 1 = a 1 + (n + 1)δ. Funktion θ arvot lasketaan kaikissa n eri jakopisteessä. Olkoon λ se jakopiste, jossa funktio saa pienimmän arvonsa. Jos θ on aidosti kvasikonveksi, niin silloin minimi sijaitsee välillä [λ δ, λ + δ]. Huomataan, että n funktion arvon laskemista pienentää alkuperäisen epävarmuusvälin pituudeltaan 2δ olevaksi epävarmuusväliksi. Jos halutaan lopputulokseksi tietyn pituinen epävarmuusväli, niin tarvitaan b1 a 1 n = 1 δ funktion arvon laskemista. Ilman rinnakkaislaskennan mahdollisuutta tämä on hyvin tehoton algoritmi. Silloinkin kannattaa suorittaa muutama kierros algoritmia pienentäen joka kierroksella osavälejä. Yleensä algoritmit käyttävät hyväkseen informaatiota, joka kertyy edellisillä kierroksilla aikaisempia funktion arvoja laskettaessa. Tällaisia menetelmiä esitellään seuraavassa kolme: puolitusmenetelmä, kultaisen leikkauksen menetelmä ja Fibonacci-menetelmä. 5.2 Puolitusmenetelmä Tarkastellaan funktiota θ, joka on minimoitava välillä [a 1, b 1 ]. Oletetaan, että funktio on aidosti kvasikonveksi. Tarvitaan vähintään kaksi uutta funktion arvon laskua, jotta epävarmuusväliä voitaisiin pienentää. Oletetaan, että uudet arvot lasketaan pisteissä λ 1 16

21 ja µ 1, jolloin uusi epävarmuusväli on joko [a 1, µ 1 ] tai [λ 1, b 1 ] saaduista funktion arvoista riippuen. Uuden epävarmuusvälin pituus on näin ollen joko µ 1 a 1 tai b 1 λ 1. Koska etukäteen ei tiedetä, kumpi väli tulee uudeksi epävarmuusväliksi, niin on järkevää toimia niin, että huonoinkin vaihtoehto on mahdollisimman hyvä. Jakopisteet kannattaa näin ollen valita, että max {b 1 λ 1, µ 1 a 1 } minimoituu. Tämän tehtävän ratkaisu johtaa kuitenkin tilanteeseen λ 1 = µ 1 = 1 2 (a 1 + b 1 ), jolloin ei saadakaan kahta jakopistettä. Ratkaisuna valitaan pisteet mahdollisimman läheltä alkuperäisen epävarmuusvälin keskipistettä. Tietokoneen pitää pystyä erottamaan kahdessa pisteessä lasketut funktion arvot, joten valitaan Algoritmi 5.3. (Puolitusalgoritmi) λ 1 = 1 2 (a 1 + b 1 ) ε µ 1 = 1 2 (a 1 + b 1 ) + ε. Askel 1. Valitse vakio ε > 0 siten, että funktioiden arvot ovat erotettavissa vakion 2ε välein. Valitse lopullisen epävarmuusvälin suuruus L > 0 ja aloitusepävarmuusväli [a 1, b 1 ]. Aseta k = 1 ja siirry askeleeseen 2. Askel 2. Jos b k a k < L, niin lopeta. Minimi sijaitsee tällöin välillä [a k, b k ]. Muutoin määrää jakopisteet ja siirry askeleeseen 3. λ k = 1 2 (a k + b k ) ε, µ k = 1 2 (a k + b k ) + ε Askel 3. Jos θ(λ k ) < θ(µ k ) = a k+1 = a k, b k+1 = µ k. Jos θ(λ k ) θ(µ k ) = a k+1 = λ k, b k+1 = b k. Aseta k k + 1 ja siirry askeleeseen 2. Nyt huomataan, että kierroksen k + 1 alussa epävarmuusvälin pituus on b k+1 a k+1 = 1 2 (b k 1 a 1 ) + 2ε (1 12 ). k Esimerkki 5.4. Määrätään funktion f(x) = x lopetusepävarmuusväli lähtien liikkeelle aloitusepävarmuusvälistä [a 1, b 1 ] = [ 1, 2]. Tällöin a 1 = 1, b 1 = 2, b 1 a 1 = 3, λ 1 = = 0.49, µ 1 = = Nyt f(λ 1 ) < f(µ 1 ) = a 2 = 1, b 2 = 0.51, λ 2 = 0.255, µ 2 =

22 Tällöin taas f(λ 2 ) > f(µ 2 ) = a 3 = 0.255, b 3 = 0.51, b 3 a 3 = Kahden kierroksen eli neljän funktion arvon laskun jälkeen lopetusepävarmuusvälin pituus on = , missä 3 on aloitusepävarmuusvälin pituus. Kuva 4: Epävarmuusvälit esimerkissä Kultaisen leikkauksen menetelmä eli jatkuvasuhdehaku Yleinen tapa verrata viivahakualgoritmien tehokkuutta on laskea tehokkuussuhde r n = epävarmuusvälin pituus n funktion arvon laskun jälkeen. epävarmuusvälin pituus alussa Mitä pienempi tämä suhde on, sitä tehokkaampi algoritmi on. Edellisessä puolitushaussa tämä suhde on likimain r n = 1. Kultaisen leikkauksen menetelmällä suhteeksi saadaan 2 n 2 r n = n 1, joka osoittaa, että se on tehokkaampi kuin puolitusmenetelmä. Kultaisen leikkauksen menetelmä perustuu siihen, että vaikka kullakin kierroksella tarvitaan kaksi jakopistettä epävarmuusvälin pienentämiseksi, niin vain toisessa niistä tarvitsee laskea funktion arvo. Toinen arvo saadaan valmiiksi edellisen kierroksen avulla. Algoritmissa on seuraavat periaatteet: Kierroksella k uuden epävarmuusvälin pituus b k+1 a k+1 ei riipu siitä, kumpi väli kierroksella k on valittu uudeksi epävarmuusväliksi. Näin ollen jakopisteet sijaitsevat symmetrisesti epävarmuusvälin keskipisteen suhteen eli b k λ k = µ k a k. Lisäksi oletetaan, että joka kierroksella epävarmuusvälin pituus pienenee aina samassa suhteessa. Tällöin on oltava λ k = a k + (1 α)(b k a k ) (5.1) µ k = a k + α(b k a k ), jolloin b k+1 a k+1 = α(b k a k ). 18

23 Kun valitaan uudet jakopisteet λ k+1 ja µ k+1, niin silloin joko λ k+1 = µ k tai µ k+1 = λ k, ja tarvitaan siis vain yksi uusi funktion arvon lasku. Tapaus I: Jos θ(λ k ) > θ(µ k ), niin valitaan a k+1 = λ k ja b k+1 = b k. Jotta olisi λ k+1 = µ k, niin käyttämällä kaavoja (5.1) saadaan ehto µ k = λ k+1 = a k+1 + (1 α)(b k+1 a k+1 ) = λ k + (1 α)(b k λ k ). Sijoitetaan tähän jakopisteiden λ k ja µ k lausekkeet kaavoista (5.1), jolloin saadaan a k + α(b k a k ) = a k + (1 α)(b k a k ) + (1 α) [b k (a k + (1 α)(b k a k ))]. Tämä yksinkertaistuu muotoon α 2 + α 1 = 0. Tapaus II: Jos θ(λ k ) θ(µ k ), niin valitaan a k+1 = a k ja b k+1 = µ k. Jotta nyt olisi µ k+1 = λ k, niin kaavojen (5.1) avulla saadaan λ k = µ k+1 = a k+1 + α(b k+1 a k+1 ) = a k + α(µ k a k ). Sijoittamalla tähän jakopisteiden λ k ja µ k lausekkeet kaavoista (5.1) saadaan yhtälö a k + (1 α)(b k a k ) = a k + α 2 (b k a k ). Tämäkin sievenee edellä saaduksi yhtälöksi α 2 + α 1 = 0. Yhtälön juuret ovat α 1 = , α 2 = , joista vain ensimmäinen kelpaa. Luku on kultaisen leikkauksen suhde. Algoritmi 5.5. (Kultaisen leikkauksen menetelmä) Askel 1. Valitse lopetusepävarmuusvälin pituus L, aloitusepävarmuusväli [a 1, b 1 ] ja määrää ensimmäiset jakopisteet kaavoilla λ 1 = a 1 + (1 α)(b 1 a 1 ) µ 1 = a 1 + α(b 1 a 1 ). Laske funktion arvot θ(λ 1 ) ja θ(µ 1 ). Aseta k = 1 ja siirry askeleeseen 2. Askel 2. Jos b k a k < L, niin lopeta, jolloin lopetusepävarmuusväli on [a k, b k ]. Muussa tapauksessa toimi seuraavasti: Jos θ(λ k ) > θ(µ k ), niin siirry askeleeseen 3. Jos θ(λ k ) θ(µ k ), niin siirry askeleeseen 4. 19

24 Askel 3. Aseta a k+1 = λ k, b k+1 = b k, λ k+1 = µ k ja µ k+1 = a k+1 + α(b k+1 a k+1 ). Laske arvo θ(µ k+1 ) ja siirry askeleeseen 5. Askel 4. Aseta a k+1 = a k, b k+1 = µ k, µ k+1 = λ k ja λ k+1 = a k+1 + (1 α)(b k+1 a k+1 ). Laske arvo θ(λ k+1 ) ja siirry askeleeseen 5. Askel 5. Aseta k k + 1 ja siirry askeleeseen 2. Esimerkki 5.6. Tarkastellaan esimerkin 5.4 tapausta kultaisen leikkauksen menetelmällä. Nyt siis a 1 = 1, b 1 = 2, b 1 a 1 = 3, λ 1 = = 0.146, µ 1 = = Tällöin f(λ 1 ) < f(µ 1 ) = a 2 = a 1 = 1, b 2 = µ 1 = µ 2 = λ 1 = λ 2 = = Nyt f(λ 2 ) > f(µ 2 ) = a 3 = λ 2 = 0.292, b 3 = b 2 = λ 3 = µ 2 = µ 3 = = 0.416, jolloin f(λ 3 ) < f(µ 3 ) = a 4 = a 3 = 0.292, b 4 = µ 3 = 0.416, b 4 a 4 = Lopetusepävarmuusvälin pituus on = , missä 3 on aloitusepävarmuusvälin pituus. Koska jokaisella kierroksella epävarmuusvälin pituus on kertainen edelliseen verrattuna, niin n funktion arvon laskun jälkeen lopetusepävarmuusvälin pituus on n 1 kertaa aloitusepävarmuusväli. Kuvassa 6 nähdään virheen kertyminen, jos jakopisteet lasketaan vähennyslaskun avulla käyttäen hyväksi pisteiden symmetristä sijaintia. Kuva 7 puolestaan esittää pisteitä kaavojen (5.1) mukaan laskettuna. 20

25 Kuva 5: Epävarmuusvälit esimerkissä 5.6. Kuva 6: Jakopisteiden laskenta symmetriaa hyödyntäen. Kuva 7: Jakopisteiden laskenta kaavaa (5.1) käyttäen. 5.4 Fibonacci-menetelmä Tämän menetelmän voidaan teoreettisesti osoittaa olevan paras suorien menetelmien joukossa. Menetelmä perustuu myös siihen, että toinen jakopiste siirtyy aina seuraavalle kierrokselle, jolloin kullakin kierroksella tarvitaan vain yksi uusi funktion arvon lasku. Kultaisen leikkauksen menetelmästä poiketen epävarmuusväli ei kuitenkaan pienene vakiokertoimella. Nimensä algoritmi on saanut siitä, että oleellista osaa siinä esittävät Fibonaccin 21

26 luvut {F n }, jotka määritellään seuravasti: F 0 = 1, F 1 = 1 F n+1 = F n + F n 1, n = 1, 2,... Fibonaccin lukujonon alku on 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,... Tarvittavien funktiolaskujen lukumäärä n kiinnitetään etukäteen. Algoritmissa iteraatiokierroksella k epävarmuusvälin ollessa [a k, b k ] määrätään jakopisteet kaavoilla λ k = a k + F n k 1 F n k+1 (b k a k ), k = 1, 2,..., n 1 (5.2) µ k = a k + F n k F n k+1 (b k a k ), k = 1, 2,..., n 1, Lauseen 5.2 nojalla uusi epävarmuusväli on [a k+1, b k+1 ] = [λ k, b k ], jos θ(λ k ) > θ(µ k ). Toisaalta epävarmuusväli on [a k+1, b k+1 ] = [a k, µ k ], jos θ(λ k ) θ(µ k ). Edellisessä tapauksessa saadaan uuden epävarmuusvälin pituudeksi b k+1 a k+1 = b k λ k = b k a k F n k 1 F n k+1 (b k a k ) = Jälkimmäisessä tapauksessa epävarmuusväli taas on b k+1 a k+1 = µ k a k = F n k F n k+1 (b k a k ). F n k F n k+1 (b k a k ). Näin pisteet todella sijaitsevat symmetrisesti keskipisteen suhteen ja uusi epävarmuusväli on pituudeltaan sama riippumatta siitä, kumpi puoli valitaan. Samalla huomataan, että epävarmuusväli pienenee kertoimella F n k F n k+1 siirryttäessä kierrokselta toiselle. Osoitetaan sitten, että näin määriteltäessä toinen jakopisteistä on myös seuraavan kierroksen jakopiste eli µ k+1 = λ k tai λ k+1 = µ k. Oletetaan, että on saatu tulos θ(λ k ) > θ(µ k ). Tällöin a k+1 = λ k ja b k+1 = b k. Käyttämällä kaavoja (5.2) saadaan λ k+1 = a k+1 + F n k 2 (b k+1 a k+1 ) = λ k + F n k 2 (b k λ k ) F n k F n k = a k + F n k 1 (b k a k ) + F ( n k 2 b k a k F n k+1 F [ n k Fn k 1 = a k + + F ( n k 2 1 F )] n k 1 (b k a k ) F n k+1 F n k F ( n k+1 Fn k 1 = a k + + F n k 2 F n k+1 F n k+1 F n k 1 F n k+1 (b k a k ) ) (b k a k ) = a k + F n k F n k+1 (b k a k ) = µ k. Samoin voidaan toisessa tapauksessa θ(λ k ) θ(µ k ) osoittaa, että µ k+1 = λ k. Esimerkki 5.7. Valitaan n = 5, jolloin tarvittavat Fibonaccin luvut ovat n F n )

27 Tarkastellaan väliä [0, 1] ja oletetaan, että valitaan aina vasen puoli. Tällöin epävarmuusvälin evv 1 pituus on evv 1 = kierros: 2. kierros: 3. kierros: 4. kierros: λ 1 = F 3 F 5 = 3 8, µ 1 = F 4 F 5 = 5 8, evv 2 = 5 8. λ 2 = F 2 F = = 2 8, µ 2 = λ 1 = 3 8, evv 3 = 3 8. λ 3 = F 1 F = = 1 8, µ 3 = λ 2 = 2 8, evv 4 = 2 8. λ 4 = F 0 F = = 1 8, µ 4 = λ 3 = 1 8. Huomataan, että neljännellä kierroksella jakopisteet ovat samat, joten epävarmuusväliä ei voida pienentää. Jatketaan kuitenkin vielä yksi kierros ja valitaan sitä varten pisteeksi µ 4 hieman sen varsinaisen paikan oikealla puolella oleva piste µ 4 = λ 4 +ε. Tällöin lopulliseksi epävarmuusvälin pituudeksi saadaan noin 1 8 = 1 F 5. Kuva 8: Epävarmuusvälit esimerkissä 5.7. Tarkastellaan sitten yleistä tapausta. Olkoon evv k+1 = µ k a k = F n k F n k+1 (b k a k ) uusi epävarmuusvälin pituus. Tällöin epävarmuusväleille saadaan seuraavat pituudet: 1. kierros: (2 funktion arvoa laskettu) evv 2 = F n 1 F n (b 1 a 1 ). 23

28 2. kierros: (3 funktion arvoa laskettu) 3. kierros: (4 funktion arvoa laskettu) evv 3 = F n 2 F n 1 (b 1 a 1 ) = F n 2 (b 1 a 1 ). F n 1 F n F n evv 4 = F n 3 F n 2 (b 1 a 1 ) = F n 3 (b 1 a 1 ). F n 2 F n F n k:s kierros: (k + 1 funktion arvoa laskettu) F n. evv k+1 = F n k F n k+1 (b 1 a 1 ) = F n k (b 1 a 1 ). F n k+1 F n (n 2):s kierros: (n 1 funktion arvoa laskettu) (n 1):s kierros:. evv n 1 = F 2 F 3 F 3 F n (b 1 a 1 ) = F 2 F n (b 1 a 1 ) = 2 F n (b 1 a 1 ). λ n 1 = a n 1 + F 0 (b n 1 a n 1 ) = a n 1 + b n 1 F 2 2 µ n 1 = a n 1 + F 1 (b n 1 a n 1 ) = a n 1 + b n 1, F 2 2 jolloin λ n 1 = µ n 1. Valitaan siis µ n 1 = λ n 1 + ε, jossa pisteessä lasketaan n:s funktion arvo. Silloin epävarmuusvälille on voimassa likimain evv n = F 1 F 2 F 2 F n (b 1 a 1 ) = F 1 F n (b 1 a 1 ) = 1 F n (b 1 a 1 ). Jotta aloitusepävarmuusvälistä, jonka pituus on b 1 a 1, päästään pituudeltaan lukua L pienempään lopetusepävarmuusväliin, niin valitaan luvuksi n sellainen kokonaisluku, että 1 F n (b 1 a 1 ) < L. Esimerkki 5.8. Tarkastellaan aikaisemmin käsiteltyjä esimerkkejä 5.4 ja 5.6. Valitaan n = 4, jolloin joudutaan laskemaan funktion arvo neljä kertaa samoin kuin edellisissä algoritmeissa. Tarvittavat Fibonaccin luvut saadaan edellä olleesta taulukosta. Epävarmuusväliksi saadaan ensin [a 1, b 1 ] = [ 1, 2] ja lasketaan sitten λ 1 = a 1 + F 2 F 4 (b 1 a 1 ) = = 0.2 µ 1 = a 1 + F 3 F 4 (b 1 a 1 ) = =

29 Nyt θ(λ 1 ) < θ(µ 1 ), joten [a 2, b 2 ] = [ 1, 0.8] ja seuraavaksi saadaan λ 2 = a 2 + F 1 (b 2 a 2 ) = = 0.4 F 3 3 µ 2 = λ 1 = 0.2. Tällä kertaa θ(λ 2 ) > θ(µ 2 ), joten [a 3, b 3 ] = [ 0.4, 0.8] ja seuraavaksi saadaan µ 3 = a 3 + F 0 (b 3 a 3 ) = = 0.2 F 2 2 λ 3 = µ 2 = 0.2. Valitaan µ 3 = , jolloin θ(λ 3 ) < θ(µ 3 ) ja lopetusepävarmuusväli on [ 0.4, ]. = 0.2 kertaa aloitusepävarmuus- 1 Lopetusepävarmuusvälin pituus on nyt eli F 4 välin pituus. = 1 5 Kuva 9: Epävarmuusvälit esimerkissä 5.8. Algoritmi 5.9. (Fibonacci-algoritmi) Askel 1. Valitse lopetusepävarmuusvälin pituus L > 0 ja vakio ε > 0, jolla välillä funktion arvot ovat vielä erotettavissa. Olkoon [a 1, b 1 ] aloitusepävarmuusväli. Valitse luku n siten, että F n > 1 L (b 1 a 1 ). Määrää ensimmäiset jakopisteet kaavoilla λ 1 = a 1 + F n 2 F n (b 1 a 1 ) µ 1 = a 1 + F n 1 F n (b 1 a 1 ). Laske funktion arvot θ(λ 1 ) ja θ(µ 1 ). Aseta k = 1 ja siirry askeleeseen 2. Askel 2. Jos θ(λ k ) > θ(µ k ), niin siirry askeleeseen 3. Jos θ(λ k ) θ(µ k ), niin siirry askeleeseen 4. Askel 3. Aseta a k+1 = λ k, b k+1 = b k ja λ k+1 = µ k. Jos k = n 2, niin siirry askeleeseen 6. Muutoin laske µ k+1 = a k+1 + F n k 1 F n k (b k+1 a k+1 ), ja määrää θ(µ k+1 ). Siirry askeleeseen 5. 25

30 Askel 4. Aseta a k+1 = a k, b k+1 = µ k ja µ k+1 = λ k. Jos k = n 2, niin siirry askeleeseen 7. Muutoin laske λ k+1 = a k+1 + F n k 2 F n k (b k+1 a k+1 ) ja määrää θ(λ k+1 ). Siirry askeleeseen 5. Askel 5. Aseta k k + 1 ja siirry askeleeseen 2. Askel 6. Aseta λ n 1 = µ n 2 ja µ n 1 = µ n2 + ε. Siirry askeleeseen 8. Askel 7. Aseta λ n 1 = λ n 2 ja µ n 1 = λ n 2 + ε. Siirry askeleeseen 8. Askel 8. Jos Muutoin jos θ(λ n 1 ) > θ(µ n 1 ) = a n = λ n 1, b n = b n 1. θ(λ n 1 ) θ(µ n 1 ) = a n = a n 1, b n = µ n 1. Lopeta, jolloin lopullinen epävarmuusväli on [a n, b n ]. 5.5 Kultaisen leikkauksen menetelmän ja Fibonacci-menetelmän vertailua Kultaisen leikkauksen menetelmässä epävarmuusvälin pituus n funktion arvon laskun jälkeen on KL(n) = α n 1 (b 1 a 1 ), missä α on yhtälön α 2 + α 1 = 0 juuri eli α = Fibonacci-algoritmissa lopetusepävarmuusväli n funktion arvon laskun jälkeen on Fib(n) = 1 F n (b 1 a 1 ), joten pituuksien suhde on KL(n) Fib(n) = αn 1 F n. Määrätään tämä suhde käyttämällä hyväksi Fibonaccin lukujen esitystä ( ) F n = 1 n+1 ( ) n+1 = 1 [ (α + 1) n+1 ( α) n+1] Tällöin KL(n) Fib(n) = αn 1 F n = 1 [ (α(α + 1)) α 2 n+1 ( α 2 ) n+1] 5 = 1 [ 1 ( α α 2 2 ) n+1] 1 5 α , kun n. 5 Jo hyvin pienillä luvun n arvoilla suhde on lähellä tätä raja-arvoa. Seuraavassa taulukossa on esitetty, kuinka monta prosenttia pidempi kultaisen leikkauksen lopullinen epävarmuusväli on verrattuna Fibonacci-algoritmin antamaan lopetusepävarmuusväliin, kun funktion arvo lasketaan n kertaa. n %

31 5.6 Yhteenveto Tarkastellaan edellä esitettyjä neljää algoritmia määräämällä pienin funktion arvojen laskun määrä, joka tarvitaan alkuperäisen epävarmuusvälin saamiseksi riittävän pieneksi. Otetaan lopetusepävarmuusvälin pituusvaatimukseksi aloitusepävarmuusvälin pituus kerrottuna jollakin luvun kymmenen negatiivisella potenssilla eli Tällöin saadaan seuraavasti: Tasavälinen haku Puolitusmenetelmä L = 10 k (b 1 a 1 ). 2 b 1 a 1 n + 1 < 10 k (b 1 a 1 ) = n > 2 10 k 1 b 1 a 1 2 n 2 < 10 k ln 10 (b 1 a 1 ) = n > 2k ln k Kultaisen leikkauksen menetelmä (0.618) n 1 (b 1 a 1 ) < 10 k ln 10 (b 1 a 1 ) = n > 1 k ln k Fibonacci-menetelmä b 1 a 1 F n < 10 k (b 1 a 1 ) = F n > 10 k. Alla olevassa taulukossa on määrätty luvun n arvot eli tarvittavien funktion laskukertojen määrä, kun eksponentti k saa arvot 1, 2,..., 8. k tasavälinen haku puolitushaku kultainen leikkaus Fibonacci

32 Huomautus Vaikka näissä algoritmeissa käytetään indeksoituja merkintöjä pisteistä a k, b k, λ k ja µ k, niin se ei tarkoita sitä, että tietokoneohjelmassa nämä pitäisi esittää vektoreina. Kaikissa näissä algoritmeissa tarvitaan kerrallaan vain yhden kierroksen pisteitä, joten edellisten kierrosten pisteitä ei tarvitse säilyttää. Algoritmeissa esiintyy myös vertailu θ(λ k ) > θ(µ k ), jota ei kannata sellaisenaan kirjoittaa tietokoneohjelmaan, sillä tällä tavalla merkittäessä ohjelma käy joka kerta laskemassa funktion arvon niin λ- kuin µ-pisteessä. Parempi tapa on siirtää jo laskettu funktion arvo valmiina muuttujan arvona seuraavalle kierrokselle ja verrata sitä uudella kierroksella laskettavaan funktion arvoon. 28

33 6 Viivahaku derivaattoja käyttäen 6.1 Bisektiomenetelmä Etsitään funktion θ minimiä suljetulla välillä. Oletetaan, että funktio θ on pseudokonveksi ja siis differentioituva. Iteraatiokierroksella k epävarmuusväli on [a k, b k ]. Lasketaan pisteessä λ k funktion derivaatta θ (λ k ), jolloin on seuraavat kolme mahdollisuutta: 1. Jos θ (λ k ) = 0, niin silloin λ k on pseudokonveksisuuden nojalla globaali minimipiste. 2. Jos θ (λ k ) > 0, niin silloin θ (λ k )(λ λ k ) > 0, jos λ > λ k, ja tällöin pseudokonveksisuuden nojalla θ(λ) θ(λ k ). Uudeksi epävarmuusväliksi saadaan [a k, λ k ]. 3. Jos θ (λ k ) < 0, niin silloin θ (λ k )(λ λ k ) > 0, jos λ < λ k, ja tällöin pseudokonveksisuuden nojalla θ(λ) θ(λ k ). Uudeksi epävarmuusväliksi saadaan [λ k, b k ]. Valittiinpa kumpi puoli tahansa, niin mahdollisimman edulliseen epävarmuusväliin päästään asettamalla λ k = 1 2 (b k + a k ). Lopetusepävarmuusväli on pituudeltaan 1 2 n (b 1 a 1 ), kun on suoritettu n funktion derivaatan laskua. Algoritmi 6.1. (Bisektioalgoritmi) Askel 1. Olkoon aloitusepävarmuusväli [a 1, b 1 ]. Valitse lopetusepävarmuusvälin pituus L > 0 ja pienin positiivinen luku n siten, että Aseta k = 1 ja siirry askeleeseen 2. Askel 2. Valitse λ k = 1 2 (b k + a k ) ja laske θ (λ k ). 1 2 n (b 1 a 1 ) < L. Jos θ (λ k ) = 0, niin silloin λ k on minimipiste ja lopeta. Jos θ (λ k ) > 0, niin siirry askeleeseen 3. Jos θ (λ k ) < 0, niin siirry askeleeseen 4. Askel 3. Aseta a k+1 = a k ja b k+1 = λ k. Siirry askeleeseen 5. Askel 4. Aseta a k+1 = λ k ja b k+1 = b k. Siirry askeleeseen 5. Askel 5. Jos k = n, niin lopeta. Minimi sijaitsee nyt välillä [a n+1, b n+1 ]. Muutoin aseta k k + 1 ja siirry askeleeseen 2. Esimerkki 6.2. Tehtävänä on määrätä min θ(λ) = λ 2, kun aloitusepävarmuusväli on [ 1, 2]. 1. kierros: λ 1 = 1 ( ) 1 2, θ = 1 > 0 = epävarmuusväli = 2 [ 1, 1 ]. 2 29

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

Luento 10: Optimointitehtävien numeerinen ratkaiseminen; optimointi ilman rajoitusehtoja Luento 10: Optimointitehtävien numeerinen ratkaiseminen; optimointi ilman rajoitusehtoja Seuraavassa esitetään optimointitehtävien numeerisia ratkaisumenetelmiä, eli optimointialgoritmeja, keittokirjamaisesti.

Lisätiedot

. Kun p = 1, jono suppenee raja-arvoon 1. Jos p = 2, jono hajaantuu. Jono suppenee siis lineaarisesti. Vastaavasti jonolle r k+1 = r k, suhde on r k+1

. Kun p = 1, jono suppenee raja-arvoon 1. Jos p = 2, jono hajaantuu. Jono suppenee siis lineaarisesti. Vastaavasti jonolle r k+1 = r k, suhde on r k+1 TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio Mat-.39 Optimointioppi Kimmo Berg 8. harjoitus - ratkaisut. a)huomataan ensinnäkin että kummankin jonon raja-arvo r on nolla. Oletetaan lisäksi että

Lisätiedot

Yhden muuttujan funktion minimointi

Yhden 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ätiedot

Keskeiset tulokset heikko duaalisuus (duaaliaukko, 6.2.1) vahva duaalisuus (6.2.4) satulapisteominaisuus (6.2.5) yhteys KKT ehtoihin (6.2.

Keskeiset tulokset heikko duaalisuus (duaaliaukko, 6.2.1) vahva duaalisuus (6.2.4) satulapisteominaisuus (6.2.5) yhteys KKT ehtoihin (6.2. Duaalisuus Lagrangen duaalifunktio ja duaalitehtävä määrittely ja geometria max θ(u,v), missä θ(u,v)=inf x X ϕ(x,u,v) s.e u 0 Lagr. funktio ϕ(x,u,v)=f(x)+u T g(x)+v T h(x) Keskeiset tulokset heikko duaalisuus

Lisätiedot

Luento 8: Epälineaarinen optimointi

Luento 8: Epälineaarinen optimointi Luento 8: Epälineaarinen optimointi Vektoriavaruus R n R n on kaikkien n-jonojen x := (x,..., x n ) joukko. Siis R n := Määritellään nollavektori 0 = (0,..., 0). Reaalisten m n-matriisien joukkoa merkitään

Lisätiedot

Kimppu-suodatus-menetelmä

Kimppu-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ätiedot

Malliratkaisut Demot

Malliratkaisut Demot Malliratkaisut Demot 3.2.27 Tehtävä. Valmisohjelmistolla voidaan ratkaista tehtävä min c T x s. t. Ax b x, missä x, c ja b R n ja A R m n. Muunnetaan tehtävä max x + 2x 2 + 3x 3 + x s. t. x + 3x 2 + 2x

Lisätiedot

Luento 11: Rajoitusehdot. Ulkopistemenetelmät

Luento 11: Rajoitusehdot. Ulkopistemenetelmät Luento 11: Rajoitusehdot. Ulkopistemenetelmät ja sisäpistemenetelmät Lagrangen välttämättömien ehtojen ratkaiseminen Newtonin menetelmällä Jos tehtävässä on vain yhtälörajoituksia, voidaan minimipistekandidaatteja

Lisätiedot

Luento 8: Epälineaarinen optimointi

Luento 8: Epälineaarinen optimointi Luento 8: Epälineaarinen optimointi Vektoriavaruus R n R n on kaikkien n-jonojen x := (x,..., x n ) joukko. Siis R n := Määritellään nollavektori = (,..., ). Reaalisten m n-matriisien joukkoa merkitään

Lisätiedot

Este- ja sakkofunktiomenetelmät

Este- ja sakkofunktiomenetelmät Este- ja sakkofunktiomenetelmät Keijo Ruotsalainen Mathematics Division Luennon kulku Este- ja sisäpistemenetelmät LP-ongelmat ja logaritminen estefunktio Polun seuranta Newtonin menetelmällä Sakkofunktiomenetelmistä

Lisätiedot

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016 Osakesalkun optimointi Anni Halkola Turun yliopisto 2016 Artikkeli Gleb Beliakov & Adil Bagirov (2006) Non-smooth optimization methods for computation of the Conditional Value-at-risk and portfolio optimization.

Lisätiedot

Malliratkaisut Demot

Malliratkaisut Demot Malliratkaisut Demot 1 23.1.2017 1. Päätösmuuttujiksi voidaan valita x 1 : tehtyjen peruspöytin lukumäärä x 2 : tehtyjen luxuspöytien lukumäärä. Optimointitehtäväksi tulee max 200x 1 + 350x 2 s. t. 5x

Lisätiedot

1 Kertaus. Lineaarinen optimointitehtävä on muotoa:

1 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ätiedot

12. Hessen matriisi. Ääriarvoteoriaa

12. Hessen matriisi. Ääriarvoteoriaa 179 12. Hessen matriisi. Ääriarvoteoriaa Tarkastelemme tässä luvussa useamman muuttujan (eli vektorimuuttujan) n reaaliarvoisia unktioita : R R. Edellisessä luvussa todettiin, että riittävän säännöllisellä

Lisätiedot

Numeeriset menetelmät TIEA381. Luento 12. Kirsi Valjus. Jyväskylän yliopisto. Luento 12 () Numeeriset menetelmät / 33

Numeeriset menetelmät TIEA381. Luento 12. Kirsi Valjus. Jyväskylän yliopisto. Luento 12 () Numeeriset menetelmät / 33 Numeeriset menetelmät TIEA381 Luento 12 Kirsi Valjus Jyväskylän yliopisto Luento 12 () Numeeriset menetelmät 25.4.2013 1 / 33 Luennon 2 sisältö Tavallisten differentiaaliyhtälöiden numeriikasta Rungen

Lisätiedot

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

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki Duaalisuus kokonaislukuoptimoinnissa Mat-2.4191, Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki Sisältö Duaalisuus binäärisissä optimointitehtävissä Lagrangen duaalisuus Lagrangen

Lisätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 2 To 8.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 2 To 8.9.2011 p. 1/33 p. 1/33 Lukujen tallennus Kiintoluvut (integer) tarkka esitys aritmeettiset operaatiot

Lisätiedot

Malliratkaisut Demot

Malliratkaisut Demot Malliratkaisut Demot 5 2.2.28 Tehtävä a) Tehtävä voidaan sieventää muotoon max 5x + 9x 2 + x 3 s. t. 2x + x 2 + x 3 x 3 x 2 3 x 3 3 x, x 2, x 3 Tämä on tehtävän kanoninen muoto, n = 3 ja m =. b) Otetaan

Lisätiedot

Oletetaan ensin, että tangenttitaso on olemassa. Nyt pinnalla S on koordinaattiesitys ψ, jolle pätee että kaikilla x V U

Oletetaan ensin, että tangenttitaso on olemassa. Nyt pinnalla S on koordinaattiesitys ψ, jolle pätee että kaikilla x V U HY / Matematiikan ja tilastotieteen laitos Vektorianalyysi II, syksy 018 Harjoitus 4 Ratkaisuehdotukset Tehtävä 1. Olkoon U R avoin joukko ja ϕ = (ϕ 1, ϕ, ϕ 3 ) : U R 3 kaksiulotteisen C 1 -alkeispinnan

Lisätiedot

Epälineaaristen yhtälöiden ratkaisumenetelmät

Epälineaaristen yhtälöiden ratkaisumenetelmät Epälineaaristen yhtälöiden ratkaisumenetelmät Keijo Ruotsalainen Division of Mathematics Perusoletus Lause 3.1 Olkoon f : [a, b] R jatkuva funktio siten, että f(a)f(b) < 0. Tällöin funktiolla on ainakin

Lisätiedot

Malliratkaisut Demo 1

Malliratkaisut 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ätiedot

Osakesalkun optimointi

Osakesalkun optimointi Osakesalkun optimointi Anni Halkola Epäsileä optimointi Turun yliopisto Huhtikuu 2016 Sisältö 1 Johdanto 1 2 Taustatietoja 2 3 Laskumetodit 3 3.1 Optimointiongelmat........................ 4 4 Epäsileän

Lisätiedot

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi. Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi. Konveksisuus Muista x + αd, α 0, on pisteestä x R n alkava puolisuora, joka on vektorin d suuntainen. Samoin

Lisätiedot

1 Lineaariavaruus eli Vektoriavaruus

1 Lineaariavaruus eli Vektoriavaruus 1 Lineaariavaruus eli Vektoriavaruus 1.1 Määritelmä ja esimerkkejä Olkoon K kunta, jonka nolla-alkio on 0 ja ykkösalkio on 1 sekä V epätyhjä joukko. Oletetaan, että joukossa V on määritelty laskutoimitus

Lisätiedot

, on säännöllinen 2-ulotteinen pinta. Määrää T x0 pisteessä x 0 = (0, 1, 1).

, on säännöllinen 2-ulotteinen pinta. Määrää T x0 pisteessä x 0 = (0, 1, 1). HY / Matematiikan ja tilastotieteen laitos Vektorianalyysi II, syksy 017 Harjoitus 4 Ratkaisuehdotukset 4.1. Osoita, että tasa-arvojoukko S F (0), F : R 3 R, F (x) = 3x 1 x 3 + e x + x e x 3, on säännöllinen

Lisätiedot

b 1. b m ) + ( 2b Ax) + (b b)

b 1. b m ) + ( 2b Ax) + (b b) TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio Mat-9 Optimointioppi Kimmo Berg 5 harjoitus - ratkaisut min Ax b (vertaa PNS-tehtävät) a x + + a n x n a) Ax b = a m x + + a mn x n = x a a m }{{}

Lisätiedot

Taustatietoja ja perusteita

Taustatietoja ja perusteita Taustatietoja ja perusteita Vektorit: x R n pystyvektoreita, transpoosi x T Sisätulo: x T y = n i=1 x i y i Normi: x = x T x = ni=1 x 2 i Etäisyys: Kahden R n :n vektorin välinen etäisyys x y 1 Avoin pallo:

Lisätiedot

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat.

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat. MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat. Antti Rasila Matematiikan ja systeemianalyysin laitos Aalto-yliopisto Kevät 2016 Antti Rasila

Lisätiedot

Optimaalisuusehdot. 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 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ätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 5 Ti 20.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 5 Ti 20.9.2011 p. 1/40 p. 1/40 Choleskyn menetelmä Positiivisesti definiiteillä matriiseilla kolmiohajotelma

Lisätiedot

Avaruuden R n aliavaruus

Avaruuden R n aliavaruus Avaruuden R n aliavaruus 1 / 41 Aliavaruus Esimerkki 1 Kuva: Suora on suljettu yhteenlaskun ja skalaarilla kertomisen suhteen. 2 / 41 Esimerkki 2 Kuva: Suora ei ole suljettu yhteenlaskun ja skalaarilla

Lisätiedot

Matematiikan johdantokurssi, syksy 2016 Harjoitus 11, ratkaisuista

Matematiikan johdantokurssi, syksy 2016 Harjoitus 11, ratkaisuista Matematiikan johdantokurssi, syksy 06 Harjoitus, ratkaisuista. Valitse seuraaville säännöille mahdollisimman laajat lähtöjoukot ja sopivat maalijoukot niin, että syntyy kahden muuttujan funktiot (ks. monisteen

Lisätiedot

Gradient Sampling-Algoritmi

Gradient Sampling-Algoritmi 1/24 Gradient Sampling-Algoritmi Ville-Pekka Eronen April 20, 2016 2/24 Perusidea -"Stabiloitu nopeimman laskeutumisen menetelmä" - Laskevan suunnan haku: lasketaan gradientit nykyisessä pisteessä sekä

Lisätiedot

1 sup- ja inf-esimerkkejä

1 sup- ja inf-esimerkkejä Alla olevat kohdat (erityisesti todistukset) ovat lähinnä oheislukemista reaaliluvuista, mutta joihinkin niistä palataan myöhemmin kurssilla. 1 sup- ja inf-esimerkkejä Nollakohdan olemassaolo. Kaikki tuntevat

Lisätiedot

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä.

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä. MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä. Antti Rasila Matematiikan ja systeemianalyysin laitos Aalto-yliopisto Kevät 2016

Lisätiedot

Inversio-ongelmien laskennallinen peruskurssi Luento 7 8

Inversio-ongelmien laskennallinen peruskurssi Luento 7 8 Inversio-ongelmien laskennallinen peruskurssi Luento 7 8 Kevät 2011 1 Iteratiivisista menetelmistä Tähän mennessä on tarkasteltu niin sanottuja suoria menetelmiä, joissa (likimääräinen) ratkaisu saadaan

Lisätiedot

Luento 9: Yhtälörajoitukset optimoinnissa

Luento 9: Yhtälörajoitukset optimoinnissa Luento 9: Yhtälörajoitukset optimoinnissa Lagrangen kerroin Oletetaan aluksi, että f, g : R R. Merkitään (x 1, x ) := (x, y) ja johdetaan Lagrangen kerroin λ tehtävälle min f(x, y) s.t. g(x, y) = 0 Olkoon

Lisätiedot

802320A LINEAARIALGEBRA OSA I

802320A LINEAARIALGEBRA OSA I 802320A LINEAARIALGEBRA OSA I Tapani Matala-aho MATEMATIIKKA/LUTK/OULUN YLIOPISTO SYKSY 2016 LINEAARIALGEBRA 1 / 72 Määritelmä ja esimerkkejä Olkoon K kunta, jonka nolla-alkio on 0 ja ykkösalkio on 1 sekä

Lisätiedot

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat.

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat. MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat. Jarmo Malinen Matematiikan ja systeemianalyysin laitos 1 Aalto-yliopisto Kevät 2016 1 Perustuu

Lisätiedot

Harjoitus 6 ( )

Harjoitus 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ätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 10 1 Funktion monotonisuus Derivoituva funktio f on aidosti kasvava, jos sen derivaatta on positiivinen eli jos f (x) > 0. Funktio on aidosti vähenevä jos sen derivaatta

Lisätiedot

1 Määrittelyjä ja aputuloksia

1 Määrittelyjä ja aputuloksia 1 Määrittelyjä ja aputuloksia 1.1 Supremum ja infimum Aluksi kerrataan pienimmän ylärajan (supremum) ja suurimman alarajan (infimum) perusominaisuuksia ja esitetään muutamia myöhemmissä todistuksissa tarvittavia

Lisätiedot

2 Konveksisuus ja ratkaisun olemassaolo

2 Konveksisuus ja ratkaisun olemassaolo 2 Konveksisuus ja ratkaisun olemassaolo Ratkaisun olemassaolon tutkimiseen tarvitaan perustietoja konvekseista joukoista ja lineaarialgebrasta. Niitä tarvitaan myös ratkaisualgoritmin ymmärtämiseen. Tutkitaan

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 2 Lisää osamurtoja Tutkitaan jälleen rationaalifunktion P(x)/Q(x) integrointia. Aiemmin käsittelimme tapauksen, jossa nimittäjä voidaan esittää muodossa Q(x) = a(x x

Lisätiedot

Demo 1: Simplex-menetelmä

Demo 1: Simplex-menetelmä MS-C2105 Optimoinnin perusteet Malliratkaisut 3 Ehtamo Demo 1: Simplex-menetelmä Muodosta lineaarisen tehtävän standardimuoto ja ratkaise tehtävä taulukkomuotoisella Simplex-algoritmilla. max 5x 1 + 4x

Lisätiedot

MATEMATIIKAN JA TILASTOTIETEEN LAITOS

MATEMATIIKAN JA TILASTOTIETEEN LAITOS f ( n JYVÄSKYLÄN YLIOPISTO MATEMATIIKAN JA TILASTOTIETEEN LAITOS n Harjoitusten 8 ratkaisut Topologiset vektoriavaruudet 2010 8.1. Olkoon P n = {f : K K p on enintään asteen n 1 polynomi} varustettuna

Lisätiedot

1 Rajoittamaton optimointi

1 Rajoittamaton optimointi Taloustieteen matemaattiset menetelmät 7 materiaali 5 Rajoittamaton optimointi Yhden muuttujan tapaus f R! R Muistutetaan mieleen maksimin määritelmä. Funktiolla f on maksimi pisteessä x jos kaikille y

Lisätiedot

Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus

Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus 1 / 51 Lineaarikombinaatio Johdattelua seuraavaan asiaan (ei tarkkoja määritelmiä): Millaisen kuvan muodostaa joukko {λv λ R, v R 3 }? Millaisen

Lisätiedot

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi. Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi. Konveksisuus Muista. + αd, α 0, on pisteessä R n alkava puolisuora, joka on vektorin d suuntainen. Samoin 2

Lisätiedot

Lineaarinen optimointitehtävä

Lineaarinen 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ätiedot

Luku 2. Jatkuvien funktioiden ominaisuuksia.

Luku 2. Jatkuvien funktioiden ominaisuuksia. 1 MAT-1343 Laaja matematiikka 3 TTY 21 Risto Silvennoinen Luku 2. Jatkuvien funktioiden ominaisuuksia. Jatkossa väli I tarkoittaa jotakin seuraavista reaalilukuväleistä: ( ab, ) = { x a< x< b} = { x a

Lisätiedot

Lineaarinen yhtälöryhmä

Lineaarinen yhtälöryhmä Lineaarinen yhtälöryhmä 1 / 39 Lineaarinen yhtälö Määritelmä 1 Lineaarinen yhtälö on muotoa a 1 x 1 + a 2 x 2 + + a n x n = b, missä a i, b R, i = 1,..., n ovat tunnettuja ja x i R, i = 1,..., n ovat tuntemattomia.

Lisätiedot

Ratkaisuehdotus 2. kurssikoe

Ratkaisuehdotus 2. kurssikoe Ratkaisuehdotus 2. kurssikoe 4.2.202 Huomioitavaa: - Tässä ratkaisuehdotuksessa olen pyrkinyt mainitsemaan lauseen, johon kulloinenkin päätelmä vetoaa. Näin opiskelijan on helpompi jäljittää teoreettinen

Lisätiedot

MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Yhteenveto, osa I

MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Yhteenveto, osa I MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Yhteenveto, osa I G. Gripenberg Aalto-yliopisto 21. tammikuuta 2016 G. Gripenberg (Aalto-yliopisto) MS-A0207 Differentiaali- ja integraalilaskenta

Lisätiedot

Cantorin joukon suoristuvuus tasossa

Cantorin joukon suoristuvuus tasossa Cantorin joukon suoristuvuus tasossa LuK-tutkielma Miika Savolainen 2380207 Matemaattisten tieteiden laitos Oulun yliopisto Syksy 2016 Sisältö Johdanto 2 1 Cantorin joukon esittely 2 2 Suoristuvuus ja

Lisätiedot

1 Supremum ja infimum

1 Supremum ja infimum Pekka Alestalo, 2018 Tämä moniste täydentää reaalilukuja ja jatkuvia reaalifunktioita koskevaa kalvosarjaa lähinnä perustelujen ja todistusten osalta. Suurin osa määritelmistä jms. on esitetty jo kalvoissa,

Lisätiedot

Johdatus matematiikkaan

Johdatus matematiikkaan Johdatus matematiikkaan Luento 7 Mikko Salo 11.9.2017 Sisältö 1. Funktioista 2. Joukkojen mahtavuus Funktioista Lukiomatematiikassa on käsitelty reaalimuuttujan funktioita (polynomi / trigonometriset /

Lisätiedot

Sekalaiset tehtävät, 11. syyskuuta 2005, sivu 1 / 13. Tehtäviä

Sekalaiset tehtävät, 11. syyskuuta 2005, sivu 1 / 13. Tehtäviä Sekalaiset tehtävät, 11. syyskuuta 005, sivu 1 / 13 Tehtäviä Tehtävä 1. Johda toiseen asteen yhtälön ax + bx + c = 0, a 0 ratkaisukaava. Tehtävä. Määrittele joukon A R pienin yläraja sup A ja suurin alaraja

Lisätiedot

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0.

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0. Vapaus Määritelmä Oletetaan, että v 1, v 2,..., v k R n, missä n {1, 2,... }. Vektorijono ( v 1, v 2,..., v k ) on vapaa eli lineaarisesti riippumaton, jos seuraava ehto pätee: jos c 1 v 1 + c 2 v 2 +

Lisätiedot

Matematiikan tukikurssi, kurssikerta 3

Matematiikan tukikurssi, kurssikerta 3 Matematiikan tukikurssi, kurssikerta 3 1 Epäyhtälöitä Aivan aluksi lienee syytä esittää luvun itseisarvon määritelmä: { x kun x 0 x = x kun x < 0 Siispä esimerkiksi 10 = 10 ja 10 = 10. Seuraavaksi listaus

Lisätiedot

Dierentiaaliyhtälöistä

Dierentiaaliyhtälöistä Dierentiaaliyhtälöistä Markus Kettunen 4. maaliskuuta 2009 1 SISÄLTÖ 1 Sisältö 1 Dierentiaaliyhtälöistä 2 1.1 Johdanto................................. 2 1.2 Ratkaisun yksikäsitteisyydestä.....................

Lisätiedot

Täydellisyysaksiooman kertaus

Täydellisyysaksiooman kertaus Täydellisyysaksiooman kertaus Luku M R on joukon A R yläraja, jos a M kaikille a A. Luku M R on joukon A R alaraja, jos a M kaikille a A. A on ylhäältä (vast. alhaalta) rajoitettu, jos sillä on jokin yläraja

Lisätiedot

Likimääräisratkaisut ja regularisaatio

Likimääräisratkaisut ja regularisaatio Luku 3 Likimääräisratkaisut ja regularisaatio Käytännön inversio-ongelmissa annettu data y ei aina ole tarkkaa, vaan sisältää häiriöitä. Tuntemattomasta x on annettu häiriöinen data y F (x + }{{}}{{} ε.

Lisätiedot

1. Osoita, että joukon X osajoukoille A ja B on voimassa toinen ns. de Morganin laki (A B) = A B.

1. Osoita, että joukon X osajoukoille A ja B on voimassa toinen ns. de Morganin laki (A B) = A B. HY / Avoin yliopisto Johdatus yliopistomatematiikkaan, kesä 2015 Harjoitus 3 Ratkaisuehdotuksia Tehtäväsarja I Seuraavissa tehtävissä harjoitellaan muun muassa kahden joukon osoittamista samaksi sekä joukon

Lisätiedot

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

TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio. Kimmo Berg. Mat Optimointioppi. 9. harjoitus - ratkaisut TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio Mat-2.139 Optimointioppi Kimmo Berg 9. harjoitus - ratkaisut 1. a) Viivahakutehtävä pisteessä x suuntaan d on missä min f(x + λd), λ f(x + λd) = (x

Lisätiedot

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio Ellipsoidimenetelmä Kokonaislukuoptimointi Sovelletun matematiikan lisensiaattiseminaari Kevät 2008 / 1 Sisällys Ellipsoidimenetelmän geometrinen perusta ja menetelmän idea Formaali ellipsoidimenetelmä

Lisätiedot

Ratkaisuehdotus 2. kurssikokeeseen

Ratkaisuehdotus 2. kurssikokeeseen Ratkaisuehdotus 2. kurssikokeeseen 4.2.202 (ratkaisuehdotus päivitetty 23.0.207) Huomioitavaa: - Tässä ratkaisuehdotuksessa olen pyrkinyt mainitsemaan lauseen, johon kulloinenkin päätelmä vetoaa. Näin

Lisätiedot

Positiivitermisten sarjojen suppeneminen

Positiivitermisten sarjojen suppeneminen Positiivitermisten sarjojen suppeneminen Jono (b n ) n= on kasvava, jos b n+ b n kaikilla n =, 2,... Lemma Jokainen ylhäältä rajoitettu kasvava jono (b n ) n= raja-arvo on lim n b n = sup n Z+ b n. suppenee

Lisätiedot

Injektio (1/3) Funktio f on injektio, joss. f (x 1 ) = f (x 2 ) x 1 = x 2 x 1, x 2 D(f )

Injektio (1/3) Funktio f on injektio, joss. f (x 1 ) = f (x 2 ) x 1 = x 2 x 1, x 2 D(f ) Injektio (1/3) Määritelmä Funktio f on injektio, joss f (x 1 ) = f (x 2 ) x 1 = x 2 x 1, x 2 D(f ) Seurauksia: Jatkuva injektio on siis aina joko aidosti kasvava tai aidosti vähenevä Injektiolla on enintään

Lisätiedot

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

Talousmatematiikan perusteet: Luento 12. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla Talousmatematiikan perusteet: Luento 12 Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla Esimerkki Esim. Yritys tekee kahta elintarviketeollisuuden käyttämää puolivalmistetta,

Lisätiedot

Konjugaattigradienttimenetelmä

Konjugaattigradienttimenetelmä Konjugaattigradienttimenetelmä Keijo Ruotsalainen Division of Mathematics Konjugaattigradienttimenetelmä Oletukset Matriisi A on symmetrinen: A T = A Positiivisesti definiitti: x T Ax > 0 kaikille x 0

Lisätiedot

1 sup- ja inf-esimerkkejä

1 sup- ja inf-esimerkkejä Alla olevat kohdat (erityisesti todistukset) ovat lähinnä oheislukemista reaaliluvuista, mutta joihinkin niistä palataan myöhemmin kurssilla. 1 sup- ja inf-esimerkkejä Kaarenpituus. Olkoon r: [a, b] R

Lisätiedot

2 Osittaisderivaattojen sovelluksia

2 Osittaisderivaattojen sovelluksia 2 Osittaisderivaattojen sovelluksia 2.1 Ääriarvot Yhden muuttujan funktiolla f(x) on lokaali maksimiarvo (lokaali minimiarvo) pisteessä a, jos f(x) f(a) (f(x) f(a)) kaikilla x:n arvoilla riittävän lähellä

Lisätiedot

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

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 TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio Mat-39 Optimointioppi Kimmo Berg 6 harjoitus - ratkaisut min x + x x + x = () x f = 4x, h = x 4x + v = { { x + v = 4x + v = x = v/ x = v/4 () v/ v/4

Lisätiedot

Derivaatta: funktion approksimaatio lineaarikuvauksella.

Derivaatta: funktion approksimaatio lineaarikuvauksella. Viikko 5 Tällä viikolla yleistetään R 2 :n ja R 3 :n vektorialgebran peruskäsitteet n-ulotteiseen avaruuteen R n, ja määritellään lineaarikuvaus. Tarkastellaan funktioita, joiden määrittelyjoukko on n-ulotteisen

Lisätiedot

6. Differentiaaliyhtälösysteemien laadullista teoriaa.

6. Differentiaaliyhtälösysteemien laadullista teoriaa. 1 MAT-13450 LAAJA MATEMATIIKKA 5 Tampereen teknillinen yliopisto Risto Silvennoinen Kevät 2010 6. Differentiaaliyhtälösysteemien laadullista teoriaa. Olemme keskittyneet tässä kurssissa ensimmäisen kertaluvun

Lisätiedot

JAKSO 2 KANTA JA KOORDINAATIT

JAKSO 2 KANTA JA KOORDINAATIT JAKSO 2 KANTA JA KOORDINAATIT Kanta ja dimensio Tehtävä Esittele vektoriavaruuden kannan määritelmä vapauden ja virittämisen käsitteiden avulla ja anna vektoriavaruuden dimension määritelmä Esittele Lause

Lisätiedot

Harjoitus 6 ( )

Harjoitus 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ätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 6 To 22.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 6 To 22.9.2011 p. 1/38 p. 1/38 Ominaisarvotehtävät Monet sovellukset johtavat ominaisarvotehtäviin Yksi

Lisätiedot

r > y x z x = z y + y x z y + y x = r y x + y x = r

r > y x z x = z y + y x z y + y x = r y x + y x = r HY / Matematiikan ja tilastotieteen laitos Vektorianalyysi I, syksy 018 Harjoitus Ratkaisuehdotukset Tehtävä 1. Osoita, että avoin kuula on avoin joukko ja suljettu kuula on suljettu joukko. Ratkaisu.

Lisätiedot

MS-C1340 Lineaarialgebra ja

MS-C1340 Lineaarialgebra ja MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt Matriisinormi, häiriöalttius Riikka Kangaslampi Kevät 2017 Matematiikan ja systeemianalyysin laitos Aalto-yliopisto Matriisinormi Matriisinormi Matriiseille

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 8 1 Funktion kuperuussuunnat Derivoituva funktio f (x) on pisteessä x aidosti konveksi, jos sen toinen derivaatta on positiivinen f (x) > 0. Vastaavasti f (x) on aidosti

Lisätiedot

FUNKTIONAALIANALYYSIN PERUSKURSSI 1. 0. Johdanto

FUNKTIONAALIANALYYSIN PERUSKURSSI 1. 0. Johdanto FUNKTIONAALIANALYYSIN PERUSKURSSI 1. Johdanto Funktionaalianalyysissa tutkitaan muun muassa ääretönulotteisten vektoriavaruuksien, ja erityisesti täydellisten normiavaruuksien eli Banach avaruuksien ominaisuuksia.

Lisätiedot

Funktion raja-arvo ja jatkuvuus Reaali- ja kompleksifunktiot

Funktion raja-arvo ja jatkuvuus Reaali- ja kompleksifunktiot 3. Funktion raja-arvo ja jatkuvuus 3.1. Reaali- ja kompleksifunktiot 43. Olkoon f monotoninen ja rajoitettu välillä ]a,b[. Todista, että raja-arvot lim + f (x) ja lim x b f (x) ovat olemassa. Todista myös,

Lisätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 12 To 13.10.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 12 To 13.10.2011 p. 1/38 p. 1/38 Tavalliset differentiaaliyhtälöt Yhtälöissä tuntematon funktio Tavalliset

Lisätiedot

3.1 Väliarvolause. Funktion kasvaminen ja väheneminen

3.1 Väliarvolause. Funktion kasvaminen ja väheneminen Väliarvolause Funktion kasvaminen ja väheneminen LAUSE VÄLIARVOLAUSE Oletus: Funktio f on jatkuva suljetulla välillä I: a < x < b f on derivoituva välillä a < x < b Väite: On olemassa ainakin yksi välille

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 8 Väliarvolause Oletetaan, että funktio f on jatkuva jollain reaalilukuvälillä [a, b] ja derivoituva avoimella välillä (a, b). Funktion muutos tällä välillä on luonnollisesti

Lisätiedot

Analyysi III. Jari Taskinen. 28. syyskuuta Luku 1

Analyysi III. Jari Taskinen. 28. syyskuuta Luku 1 Analyysi III Jari Taskinen 28. syyskuuta 2002 Luku Sisältö Sarjat 2. Lukujonoista........................... 2.2 Rekursiivisesti määritellyt lukujonot.............. 8.3 Sarja ja sen suppenminen....................

Lisätiedot

1 Reaaliset lukujonot

1 Reaaliset lukujonot Jonot 10. syyskuuta 2005 sivu 1 / 5 1 Reaaliset lukujonot Reaaliset lukujonot ovat funktioita f : Z + R. Lukujonosta käytetään merkintää (a k ) k=1 tai lyhyemmin vain (a k). missä a k = f(k). Täten lukujonot

Lisätiedot

(iv) Ratkaisu 1. Sovelletaan Eukleideen algoritmia osoittajaan ja nimittäjään. (i) 7 = , 7 6 = = =

(iv) Ratkaisu 1. Sovelletaan Eukleideen algoritmia osoittajaan ja nimittäjään. (i) 7 = , 7 6 = = = JOHDATUS LUKUTEORIAAN (syksy 07) HARJOITUS 7, MALLIRATKAISUT Tehtävä Etsi seuraavien rationaalilukujen ketjumurtokehitelmät: (i) 7 6 (ii) 4 7 (iii) 65 74 (iv) 63 74 Ratkaisu Sovelletaan Eukleideen algoritmia

Lisätiedot

Analyysi 1. Harjoituksia lukuihin 1 3 / Syksy Osoita täsmällisesti perustellen, että joukko A = x 4 ei ole ylhäältä rajoitettu.

Analyysi 1. Harjoituksia lukuihin 1 3 / Syksy Osoita täsmällisesti perustellen, että joukko A = x 4 ei ole ylhäältä rajoitettu. Analyysi Harjoituksia lukuihin 3 / Syksy 204. Osoita täsmällisesti perustellen, että joukko { 2x A = x ]4, [. x 4 ei ole ylhäältä rajoitettu. 2. Anna jokin ylä- ja alaraja joukoille { x( x) A = x ], [,

Lisätiedot

Matematiikan peruskurssi 2

Matematiikan peruskurssi 2 Matematiikan peruskurssi Demonstraatiot III, 4.5..06. Mikä on funktion f suurin mahdollinen määrittelyjoukko, kun f(x) x? Mikä on silloin f:n arvojoukko? Etsi f:n käänteisfunktio f ja tarkista, että löytämäsi

Lisätiedot

1 Sisätulo- ja normiavaruudet

1 Sisätulo- ja normiavaruudet 1 Sisätulo- ja normiavaruudet 1.1 Sisätuloavaruus Määritelmä 1. Olkoon V reaalinen vektoriavaruus. Kuvaus : V V R on reaalinen sisätulo eli pistetulo, jos (a) v w = w v (symmetrisyys); (b) v + u w = v

Lisätiedot

IV. TASAINEN SUPPENEMINEN. f(x) = lim. jokaista ε > 0 ja x A kohti n ε,x N s.e. n n

IV. TASAINEN SUPPENEMINEN. f(x) = lim. jokaista ε > 0 ja x A kohti n ε,x N s.e. n n IV. TASAINEN SUPPENEMINEN IV.. Funktiojonon tasainen suppeneminen Olkoon A R joukko ja f n : A R funktio, n =, 2, 3,..., jolloin jokaisella x A muodostuu lukujono f x, f 2 x,.... Jos tämä jono suppenee

Lisätiedot

Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9

Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9 Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9 Tuntitehtävät 9-10 lasketaan alkuviikon harjoituksissa ja tuntitehtävät 13-14 loppuviikon harjoituksissa. Kotitehtävät 11-12 tarkastetaan loppuviikon

Lisätiedot

Malliratkaisut Demot

Malliratkaisut 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ätiedot

6. Luennon sisältö. Lineaarisen optimoinnin duaaliteoriaa

6. 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ätiedot

Kuva 1: Funktion f tasa-arvokäyriä. Ratkaisu. Suurin kasvunopeus on gradientin suuntaan. 6x 0,2

Kuva 1: Funktion f tasa-arvokäyriä. Ratkaisu. Suurin kasvunopeus on gradientin suuntaan. 6x 0,2 HY / Matematiikan ja tilastotieteen laitos Vektorianalyysi I, syksy 018 Harjoitus Ratkaisuehdotukset Tehtävä 1. Olkoon f : R R f(x 1, x ) = x 1 + x Olkoon C R. Määritä tasa-arvojoukko Sf(C) = {(x 1, x

Lisätiedot

Diofantoksen yhtälön ratkaisut

Diofantoksen yhtälön ratkaisut Diofantoksen yhtälön ratkaisut Matias Mäkelä Matemaattisten tieteiden tutkinto-ohjelma Oulun yliopisto Kevät 2017 Sisältö Johdanto 2 1 Suurin yhteinen tekijä 2 2 Eukleideen algoritmi 4 3 Diofantoksen yhtälön

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 10 1 Lokaalit ääriarvot Yhden muuttujan funktion f (x) lokaali maksimi on piste x 0, jossa f (x) on suurempi kuin muualle pisteen x 0 ympäristössä, eli kun f (x 0 )

Lisätiedot