Demo 1: Sisä- ja ulkopistemenetelmät
|
|
- Harri Halttunen
- 9 vuotta sitten
- Katselukertoja:
Transkriptio
1 Mat Optimoinnin perusteet Malliratkaisut 11 Ehtamo Demo 1: Sisä- ja ulkopistemenetelmät a) Ratkaise tehtävä min (x 1 2) 4 + (x 1 2x 2 ) 2 s.e. x 2 = x 2 1 käyttäen kvadraattista ulkopuolista sakkofunktiota. Tarkastele miten sakkoparametrin kasvatusnopeus vaikuttaa iteraation suppenemiseen. b) Ratkaise tehtävä min (x 1 2) 4 + (x 1 2x 2 ) 2 käyttäen estefunktiota s.e. x 2 x g(x), missä g(x) 0. Tarkastele esteparametrin vaikutusta iteraation suppenemiseen. Ratkaisu a) Rajoitetun tehtävän ratkaiseminen numeerisesti on usein hankalaa. Yksi menetelmä tällaisen tehtävän ratkaisemiseksi on käyttää sakkofunktiota. Menetelmässä kohdefunktioon f(x) lisätään sakkotermi p(x), joka on lähellä nollaa kun rajoitteet ovat voimassa. Vastaavasti kun rajoitteet eivät ole voimassa, sakkotermin arvo on suuri. Jos tehtävän rajoite on muotoa h(x) = 0, voidaan sakkotermiksi valita esimerkiksi p(x) = µh(x) 2 Kerrointa µ kutsutaan sakkokertoimeksi. Mitä suurempi sakkokertoimen arvo on, sitä paremmin tehtävä vastaa alkuperäistä rajoitettua optimointitehtävää. Nyt kaikki funkion h(x) poikkeamat nollasta aiheuttavat suuren laskun kohdefunktion arvoon. Huomaa. Maksimoitaessa valitaan vastaavasti p(x) = µh(x) 1
2 1.5 1 x x 1 Ratkaistaan tehtävä aluksi sakkoparametrin arvolla µ = 0.1. Tällöin sakkofunktion vaikutus on lähes olematon, ja tehtävän ratkaisuksi saadaan piste (2, 1). Piste on merkitty kuvaan punaisella rastilla. Kerrotaan sakkoparametri 10:llä, käytetään edellistä pistettä alkuarvauksena, ja ratkaistaan tehtävä uudestaan. Nyt sakkotermin vaikutus on suurempi ja tehtävän optimi on lähempänä rajoitussuoraa. Näin jatkamalla saadaan kuvan ympyröillä merkityt pisteet. Iteraatio suppenee rajoitekäyrältä löytyvään pisteeseen, joka on likimain (0, 9; 0, 9). Miksi sakkoparametrille ei anneta heti suurta arvoa? Seuraavaan kuvaan on piirretty kohdefunktion f(x) + p(x) = f(x) + µh(x) vakiokäyriä kun µ = 10. Vakiokäyrät muodostavat kapean laakson. Edellisissä laskuharjoituksissa todettiin, että tämänkaltainen kohdefunktio on monille optimointimenetelmille haastava. Kasvattamalla parametriä hitaasti laakson pitkulaisuus ei haittaa, sillä osatehtävien aloituspisteet saadaan valmiiksi lähelle optimia. 2
3 b) Estefunktiomenetelmä on vastaava kuin sakkofunktiomenetelmä, mutta sitä sovelletaan epäyhtälörajoitteellisiin tehtäviin. Estefunktion tulee olla sellainen, että kun tarkasteltava piste on lähellä rajoitetun alueen reunaa, estefunktion arvo kasvaa reunan suuntaan voimakkaasti. Eräs mahdollinen estefunktio on p(x) = µ/g(x), missä g(x) on rajoitefunktio ja µ on esteparametri x x 1 Valitaan aluksi µ = 100. Piste on merkitty kuvaan punaisella rastilla. Estefunktion vaikutus on suuri, jolloin optimi on kaukana rajoitteen reunasta. Pienennetään kerrointa kymmenesosaan ja ratkaistaan tehtävä uudestaan, jolloin saadaan ympyröillä 3
4 merkityt pisteet. Iteraatio suppenee rajoitusehdon reunalta löytyvään pisteeseen, joka on likimäärin (0, 9; 0, 9). Miksi esteparametriä ei laiteta heti aluksi hyvin pieneksi? Samoin kuin sakkofunktiomenetelmä, liian pienet esteparametrien arvot vaikeuttavat osatehtävien numeerista ratkaisua. Kun esteparametri on hyvin pieni, estefunktion arvo on likimain nolla. Poikkeuksena tähän kuitenkin alueen reunalla estefunktion arvo kasvaa kohti ääretöntä riippumatta parametrin suuruudesta. Jos nousu on liian äkillinen ja jyrkkä, saattaa optimointialgoritmi hypätä estefunktion toiselle puolelle. Seuraavassa kuvassa näemme tehtävän kohdefunktion ja estefunktion arvot x 1 :n funktiona kun muuttuja x 2 on kiinnitetty arvoon 1 ja esteparametrille on annettu arvo µ = 1. Käypä alue on punaisen katkoviivan vasemmalla puolella. Optimi löytyy likimain pisteestä x 1 = 0, 8. Kun sakkoparametriä pienennetään, optimi siirtyy lähemmäksi alueen reunaa. Huomaa. Jos optimointialgoritmi joutuu käyvän alueen ulkopuolelle, saattaa algoritmi päätyä rajoittamattoman tehtävän optimiin. Näin ei kuitenkaan välttämättä käy, jos piste on vain hieman epäkäyvän alueen puolella. Estefunktio saa suuria negatiivisia arvoja reunan toisella puolella, jolloin optimointialgoritmi ohjaa iteraation takaisin käyvän alueen reunalle f(x) 1/g(x) x 1 Demo 2: Optimointi MATLAB -ohjelmistolla Tutustaan MATLAB -ohjelmistoon ja sen Optimization Toolboxin funktiohin. a) Tutustu MATLAB:n muuttujiin. Varmista että osaat tallentaa muuttujaan arvon, lukea muuttujan arvon, ja käyttää muuttujaa lausekkeissa. b) Tee funktio, joka laskee lausekkeen (x 1 2) 2 + (x 2 3) 2. c) Laske b) kohdan funktion minimipiste d) Laske b) kohdan funktion minimipiste rajoitusehdolla x 2 x 2 1 4
5 Ratkaisu Matlab on numeerinen laskentaohjelmisto. Yksi keskeisimpiä eroja muihin vastaaviin ohjelmistoihin on se, että kaikki muuttujat ovat matriiseja. Peruslaskutoimitukset, kuten kertolasku, toimivat matriisien normaalien kertolaskusääntöjen mukaan. Vektorit ovat yksisarakkeisia matriiseja, ja skalaarit 1 1 matriiseja. Matlabin komentoja voi kirjoittaa joko suoraan Matlabin komentokehotteeseen tai erillisiin tiedostoihin. Matlab-tiedostot ovat nimeltään m-tiedostoja (m-files) ja ne tunnistaa tiedostopäätteestä.m. Tiedoston voi luoda tai sitä voi muokata kirjoittamalla komentokehotteeseen edit tiedosto.m, joka avaa erillisen muokkausikkunan. Tiedostoja voi ajaa painamalla muokkausikkunassa F5, jolloin tiedoston rivit ajetaan järjestyksessä aivan kuin ne olisi yksitellen kirjoitettu suoraan komentokehotteeseen. a) Matlabissa voit tallentaa muuttujaan arvon =-merkillä. Esimerkiksi, jos haluat tallentaa muuttujaan a arvon 5, kirjoita a = 5. Arvo voi olla myös matemattinen lauseke, esimerkiksi 3+4, pi*2 tai sin(4+sqrt(6)). Sijoituksen jälkeen Matlab näyttää juuri tallennetun muuttujan arvon. Jos et halua, että Matlab näyttää sijoituksen tuloksen, vaan on hiljaa, lisää komennon perään puolipiste (;). Voit tarkistaa minkä tahansa muuttujan arvon kirjoittamalla sen komentokehotteeseen ja painamalla enter. Muuttujia voidaan käyttää myös lausekkeissa aivan kuin mitä tahansa numeroa. Esimerkki: Tallennetaan ensiksi muuttujaan a arvo 5, ja sen jälkeen lasketaan muuttujalle b arvo 3*a+5. Tämä tapahtuu komentamalla: a=5; b=3 a+5 Matriisit ja vektorit merkitään hakasulkeilla. Merkintä alkaa [, jonka jälkeen tulee ensimmäisen rivin alkiot eroteltuna joko pilkuilla tai välilyönneillä. Tämän jälkeen luodaan uusi rivi puolipisteellä. Loppuun tulee ]. Esimerkiksi matriisit ja vektorit A = [ Syötetään Matlabiin komennoilla: ] [ 5 b = 6 ] c = [ 7 8 ] A = [ 1, 2 ; 3, 4 ] ; b = [ 5 ; 6 ] ; c = [ 7, 8 ] ; Huomaa. Matlab käyttää oletuksena peruslaskutoimituksissa matriisilaskutoimituksia. Jos haluat suorittaa matriisille tai vektorille jonkin laskutoimituksen alkioittain, lisää piste laskutoimituksen eteen. Esimerkiksi: a.*b tai a.^2. Matriisit ja vektorit voi transponoida heittomerkillä ( ), esimerkiksi a. Voit viitata matriisin alkioihin lisäämällä sulut ja haluamasi indeksit. Matriisin A rivin 3 ja sarakkeen 2 alkioon viitataan A(3,2). b) Matlab osaa kasan valmiita funktioita, joista esimerkkinä tavalliset sin(), cos(), log() ja exp(). Tietoa kustakin funktiosta ja sen käyttötavasta saat komennolla help funktionnimi. Voit myös luoda omia funktioita. Tätä varten luo uusi m-tiedosto, jolla on sama nimi kuin luotavalla funktiolla. Esimerkiksi funktiota laske varten sinun täytyy luoda tiedosto laske.m. Tiedosto täytyy aloittaa funktiomääritteellä 5
6 function y = laske(x), missä x on funktion parametri ja y on palautusarvo. Näitä muuttujanimiä käytetään kuitenkin vain kyseisessä m-tiedostossa. Voit kirjoittaa funktion toteutuksen function-rivin jälkeen. Kun funktion suoritus loppuu, palautettaan palautusarvomuuttujan arvo. Funktio f(x) = (x 1 2) 2 + (x 2 3) 2 voidaan määrittää seuraavasti: f u n c t i o n y = f ( x ) y = ( x ( 1 ) 2)ˆ2 + ( x ( 2 ) 3) ˆ 2 ; c) Matlabissa on valmiina laajat optimointikirjastot. Esittelemme tässä 2 funktiota, joista ensin rajoittamattomiin tehtäviin tarkoitettu fminunc. fminunc vaatii vähintään 2 parametriä, joista ensimmäinen on optimoitava funktio, ja toinen alkuarvaus. Funktiot annetaan parametrinä kirjoittamalla ja tämän jälkeen funktion nimi. Lasketaan nyt b) -kohdassa määritellyn funktion minimikohta käyttäen alkuarvauksena pistettä x 0 = [0, 0]: x_opt = fminunc [ 0 ; 0 ] ) Tämä palauttaa optimipisteen ja tallentaa sen muuttujaan x_opt. Rajoitteellista optimointia varten Matlabissa on olemassa erillinen fminconfunktio. Funktiolle voidaan antaa parametreinä monia erilaisia rajoitteita, ja tarkan järjestyksen voi tarkistaa komennolla help fmincon. Ainoastaan kaksi ensimmäistä parametriä, kohdefunktio ja alkuarvaus, ovat pakollisia, mutta näiden lisäksi voidaan antaa seuraavia parametrejä: Lineaariset epäyhtälörajoitteet (Ax b), lineaariset yhtälörajoitteet (Ax = b), ylä- ja alarajat (LB x UB) ja epälineaarinen rajoite (nonlcon). Epälineaarista rajoitetta lukuunottamatta rajoitteet annetaan funktiolle kerroinmatriisien -ja vektroreiden A, b jne. muodossa. Epälineaarisia rajoitteita varten täytyy luoda uusi funktio. Funktiolla tulee olla kaksi paluuarvoa: C ja Ceq. C tulee olla käyvällä alueella negatiivinen ja Ceq nolla. Jos rajoitteita on useampia, tulee paluuarvojen olla vektoreita, jonka alkiot vastaavat kutakin rajoitetta. Esimerkiksi rajoitetta x 2 x 2 1 varten luodaan seuraava funktio (tiedostoon rajoite.m): f u n c t i o n [ C, Ceq ] = rajoite ( x ) Ceq = [ ] ; C = x ( 1 ) ˆ2 x ( 2 ) ; Nyt voimme laskea kohdefunktion minimin komennolla fmincon [ 0 ; 0 ], [ ], [ ], [ ], [ ], [ ], [ ) ; Koska lineaarisia rajoitteita ei ole, ne tulee merkitä tyhjinää matriiseina ja vektoreina ([]). 6
7 Tehtävä 1: Funktion minimikohdan etsiminen a) Etsi funktion (x 1 2) 4 + (x 1 2x 2 ) 2 minimi. b) Etsi a) kohdan funktion minimi rajoitusehdoilla x 1 + 2x 2 3 3x 1 + 4x 2 1 c) Etsi a) kohdan funktion minimi rajoitusehdolla x 1 x Ratkaisu a) Kirjoitetaan kohdefunktiolle oma m-tiedosto (kohde.m): f u n c t i o n y = kohde ( x ) y = ( x ( 1 ) 2)ˆ4 + ( x ( 1 ) 2 x ( 2 ) ) ˆ 2 ; Tämän jälkeen käytetään rajoittamattoman tehtävän ratkaisemiseen tarkoitettua fminunc-funktiota: x_opt = fminunc [ 0 ; 0 ] ) Alkuarvauksena on käytetty pistettä x 0 = (0, 0). b) Tehtävä on rajoitettu tehtävä, ja se kannattaa ratkaista Matlabin fminconfunktiolla. Funktio haluaa lineaariset rajoitteet muodossa Ax b, joten selvitetään, mitkä ovat tämän tehtävän vastaavat matriisit A ja b. Matriisi A saadaan suoraan eri muuttujien kertoimista ja vektori b epäyhtälöiden oikealta puolelta: A = [ ] [ 3, b = 1 Matlabiin nämä voidaan syöttää komennoilla: ] A = [ 1, 2 ; 3, 4 ] ; b = [ 3 ; 1 ] ; Nyt voimme ratkaista optimin komennolla x_opt = fmincon [ 0 ; 0 ], A, b ) c) Rajoite on epälineaarinen, joten sitä varten täytyy luoda uusi m-tiedosto (rajoite2.m) f u n c t i o n [ C, Ceq ] = rajoite2 ( x ) Ceq = [ ] ; C = x ( 1 ) + x ( 2 ) ˆ2 + 4 ; Tämän jälkeen optimi löytyy komennolla 7
8 x_opt=fmincon [ 0 ; 0 ], [ ], [ ], [ ], [ ], [ ], [ ) Tehtävä 2: Kuvaajien piirtäminen Piirrä funktion e (n 3n2 ) 4 x 2 kuvaaja välillä [ 2, 2]. Ratkaise funktion maksimi, ja merkitse maksimi kuvaajaan. Ratkaisu Kirjoitetaan ensiksi funktiolle oma m-tiedosto (fun.m): f u n c t i o n y = fun ( n ) y = exp( (n 3 n. ˆ 2 ). ˆ 4 ) n. ˆ 2 ; Huomaa. Funktio on nyt kirjoitettu käyttäen piste-operaattoreita. Tämä on tehty sen vuoksi, että funktio halutaan evaluoida useassa pisteessä yhtäaikaa. Nyt voidaan eri pisteet antaa funktiolle vektorina ja funktio palauttaa saman kokoisen vektorin, jonka arvot vastaavat funktion arvoja syötevektorin pisteissä. Seuraavaksi piirretään funktion kuvaaja. Matlabissa kuvaajien piirtämistä varten täytyy piirrettävien pisteiden arvot laskea etukäteen. Kun kuvaaja halutaan pirtää muuttujan n arvoilla [ 2, 2], täytyy ensiksi määrittää vektori, jossa on kaikki halutut arvot. Matlabissa tälläinen vektori luodaan komenolla n = 2 : 0. 1 : 2 ; Kaksoispisteellä erotetaan vektorin aloituspiste, diskretointiväli ja lopetuspiste. Nyt voimme vielä laskea funktion arvot kussakin näistä pisteistä komennolla y = fun ( n ) ; Kuvan piirtäminen tapahtuu plot-komennolla. Parametreinä se vaatii piirrettävien pisteiden x- ja y-koordinaatit. Piirretään funktion kuvaaja komennolla p l o t ( n, y ) Voit antaa kuvaajalle myös lisämääreitä y-koordinaattivektorin jälkeen lisäämällä merkkijono-parametrin. Esimerkiksi komento p l o t ( n, y, ' kx : ' ) piirtää kuvaajan mustalla (k) katkoviivalla (:) ja merkitsee datapisteet rasteilla (x). Voit käyttää myös muita värejä (esim. r = punainen, b = sininen, g = vihreä, jne), viivatyyppejä (esim. - = yhtenäinen viiva, -. = viiva-pisteviiva, jne) ja merkkejä (esim. o = ympryrä,. = piste, jne.). Merkitään kuvaajaan vielä optimipiste. Aluksi meidän täytyy selvittää, mikä piste on kyseessä. Tämä selviää komennolla 8
9 x_opt = fminunc ( x ) fun ( x ), 4) Kohdefunktio täytyy antaa nyt hieman eri tavalla sillä haluamme löytää funktion maksimin. jälkeen sulut ja muuttujannimi, minkä jälkeen voit kirjoittaa kohdefunktion lausekkeen. Nyt kohdefunktioksi valitaan -fun(x), eli kohdefunktiomme evaluoituna pisteessä x ja miinusmerkki funktion edessä muutta arvot negatiivisiksi. Näin minimointialgoritmi löytää varsinaisen kohdefunktion maksimin. Toinen parametri (4) on käytetty alkuarvaus. Lasketaan vielä kohdefunktion arvo tässä pisteessä: y_opt = fun(x_opt);. Tämän jälkeen piste voidaan piirtää kuvaajaan komennoilla hold on ; p l o t ( x_opt, y_opt, ' ro ' ) Komento hold on tarvitaan, koska oletuksena Matlab pyyhkii edellisen kuvan pois kun seuraava plot-komento annetaan. Komento hold on jättää vanhat kuvat piirtoikkunaan. Asetuksen saa palautettua takaisin komennolla hold off. Tehtävä 3: Iteratiiviset menetelmät Kirjoita Matlab-funktio, joka ratkaisee funktion minimikohdan käyttäen Newtonin menetelmää. Minimointi tehdään vain yhden muuttujan suhteen. Voit käyttää testaamiseen jotain yksinkertaista funktiota, jonka optimi tunnetaan tarkasti. Esimerkiksi funktiota f(x) = cos x, käyttäen aloituspisteenä x 0 = 1. Ratkaisu Newtonin iteraatio perustuu funktion derivaatan nollakohdan etsimiseen sovittamalla derivaattaan suora, joka tangeeraa derivaatan kuvaajaa sen hetkisessä iteraatiopisteessä. Menetelmä aloitetaan valitsemalla jokin aloituspiste x 0, jonka jälkeen seuraavat pisteet lasketaan kaavalla x k + 1 = x k f (x k ) f (x k ). Matlabia varten voimme kirjoittaa aluksi funktion, joka laskee seuraavan iteraatiopisteen, kun sille annetaan parametrinä iteraatiopiste x k. Kirjoitetaan funktio tiedostoon newton.m: f u n c t i o n x2 = newton ( x ) x2 = x df ( x ) /ddf ( x ) ; Tässä df ja ddf ovat laskettavan funktion derivaatta ja toinen derivaatta. Näitä varten täytyy luonnollisesti luoda omat m-tiedostot. Esimerkkifunktiona käytetään nyt f(x) = cos(x). Tämän deriaatta on f (x) = sin(x) ja toinen derivaatta f (x) = cos(x). Kirjoitetaan vastaavat m-tiedostot: df.m: 9
10 f u n c t i o n y = df ( x ) y = s i n ( x ) ; ddf.m: f u n c t i o n y = ddf ( x ) y = cos ( x ) ; Nyt voimme ratkaista optimin Newtonin menetelmällä. Asetetaan alkuarvaus x=4. Seuraavaksi lasketaan uusi piste käyttäen newton -funktiota: x = newton(x). Iteraatiota toistetaan, kunnes piste ei enää muutu merkittävästi. Alkuarvauksesta riippuen iteraation pitäisi päätyä funktion lokaaliin minimiin x = 0. Menetelmä kannattaa myös kirjoittaa kokonaisuudessaan yhdeksi funktioksi, joka ottaa parametrinään alkupisteen ja iteroi Newton-iteraatioita tarvittavan määrän. Tälläinen funktio on esimerkiksi: f u n c t i o n x_opt = newtonoptimoi ( x0 ) tol = ; %haluttu tarkkuus max_n = 1000; %suurin s a l l i t t u maara i t e r a a t i o i t a n = 0 ; %a l u s t e t a a n laskurimuuttuja x = x0 ; x_edellinen = 10000; while ( abs ( x x_edellinen ) > tol && n < max_n ) % t o i s t e t a a n, kunnes p i s t e i d e n valimatka % on t a r p e e k s i p i e n i t a i maksimi % i t e r a a t i o m a a r a saavutetaan x_edellinen = x ; %t a l l e n n e t a a n e d e l l i n e n arvo x = newton ( x ) %l a s k e t a a n uusi arvo n = n+1; %p a i v i t e t a a n l a s k u r i end x_opt = x Nyt voimme hakea optimin seuraavalla komennolla. Alkuarvauksena on käytetty arvoa x = 4. newtonoptimoi ( 4 ) 10
11 Tehtävä 4: Hakumenetelmät Kirjoita Matlab-funktio, joka ratkaisee (1-ulotteisen) funktion minimikohdan käyttäen puolitusmenetelmää. Voit testata algoritmia jälleen yksinkertaisella funktiolla, kuten f(x) = cos(x). Tarkasteltava väli kannattaa valita testivaiheessa niin, että iteraatio ei suppene välittömästi, esimerkiksi [ 2, 1]. Ratkaisu Hakumenetelmissä määritellään aluksi jokin väli, joka sitten jaetaan kahteen tai kolmeen osaan. Funktion arvoista välin ja eri osien päätepisteissä riippuen valitaan välille uudet päätepisteet. Tätä toistetaan, kunnes väli on riittävän kapea, ja optimin paikka tiedetään halutulla tarkkuudella. Puolitusmenetelmässä väli jaetaan kahteen osaan. Funktion arvo lasketaan välin päätepisteissä ja puolivälin molemmin puolin. Merkitään välin päätepisteitä a ja b, ja puoliväliä pisteellä c = a+b 2. Pisteet, joissa funktion arvo lasketaan puolivälin molemmin puolin ovat c ε ja c + ε. Tässä ε on jokin pieni luku. Nyt jos funktion arvo on suurempi pisteessä c ε kuin pisteessä c + ε, tiedetään että funktion minimi on välillä [c + ε, b]. Vastaavasti toisinpäin. Kirjoitetaan puolitushaku seuraavalla tavalla: f u n c t i o n x_opt = puolitushaku ( a, b ) tol = ; % haluttu tarkkuus ep = ; % p u o l i v a l i n molemmin puolin % l a s k e t t a v a e t a i s y y s ( e p s i l o n ) fa = puolituskohde ( a ) ; % f u n k t i o n arvot p a a t e p i s t e i s s a fb = puolituskohde ( b ) ; % kaytetaan kohdefunktiona % f u n k t i o t a puolituskohde L = b a ; % v a l i n pituus while ( L > tol ) % t o i s t e t a a n kunnes tarkkuus on r i i t t a v a c = ( a+b ) / 2 ; % p u o l i v a l i fc_ala = puolituskohde ( c ep ) ;%fun. arvo ennen p u o l i v a l i a fc_yla = puolituskohde ( c+ep ) ;%fun. arvo p u o l i v a l i n j a l k. i f ( fc_yla > fc_ala ) %j o s f u n k t i o saa suuremman arvon p u o l i v a l i n j a l k e e n b = c+ep ; e l s e a = c ep ; end L = b a ; disp ( [ a, b ] ) % naytetaan i t e r a a t i o p i s t e end x_opt = ( a+b ) / 2 ; Nyt voimme hakea funktion minimin kirjoittamalla funktiolle oman m-tiedoston (puolituskohde.m) ja ajamalla puolitushaku-funktion halutuilla välin päätepisteillä: 11
12 puolitushaku ( 2,1) Edellisen tehtävän kohdefunktio voidaan kirjoittaa m-tiedostoon puolituskohde.m: f u n c t i o n y = puolituskohde ( x ) y = cos ( x ) Tällä funktiolla iteraation pitäisi supeta pisteeseen x = 0. Tehtävä 5: Gradienttimenetelmä Kirjoita MATLAB-funktio, joka annetun (n-ulotteisen) funktion minimikohdan käyttäen gradienttimenetelmää. Voit käyttää viivahakuna esimerkiksi tehtävässä 3 kirjoittamaasi algoritmia tai MATLABin valmiita optimointifunktioita. Ratkaise algoritmillasi funktion minimikohta. x 2 + y e x+y Ratkaisu Kirjoitetaan aluksi haluttu kohdefunktio Matlab-tiedostoon (kohde3.m): f u n c t i o n y = kohde3 ( x ) y = x ( 1 ) ˆ2 + x ( 2 ) ˆ exp( x ( 1 )+x ( 2 ) ) ; Gradienttimenetelmässä tarvitaan lisäksi funktion gradientti (kohde3grad.m): f u n c t i o n g = kohde3grad ( x ) g = [ 2 x ( 1 ) 100 exp( x ( 1 )+x ( 2 ) ) ; +x ( 2 ) ) ] ; 4 yˆ exp( x ( 1 ) Huomaa. Gradientti on nyt vektori, joten gradienttifunktion palautusarvo g on myös vektori. Gradienttimenetelmä laskee ensin kussakin iteraatiopisteessä funktion gradientin, ja tekee tässä suunnassa ns viivahaun: min f(x + αd), α missä d = f(x) on hakusuunta, ja α on kerroin, joka kertoo kuinka pitkälle hakusuunnassa mennään. Viivahaussa optimoidaan nimenomaan kerrointa α, joten se on yksiulotteinen optimointitehtävä. Gradienttimenetelmä voidaan ohjelmoida esimerkiksi seuraavasti. Luodaan funktio gradoptimoi, joka laskee funktion kohde3 minimin: 12
13 f u n c t i o n x_opt = gradoptimoi ( x0 ) tol = ; % l o p e t u s e h t o muutos = 1 ; % muuttuja, joka kertoo % i t e r a a t i o i d e n v a l i s e n muutoksen x = x0 ; %a l u s t e t a a n i t e r a a t i o m u u t t u j a while ( muutos > tol ) grad = kohde3grad ( x ) ; %g r a d i e n t t i i t e r a a t i o p i s t e e s s a d = grad ; %hakusuunta d on g r a d i e n t t i a_opt = fminunc ( a ) kohde3 ( x+a d ), 1) ; %viivahaku x = x + a_opt d ; %p a i v i t e t a a n uusi i t e r a a t i o p i s t e muutos = norm ( a_opt d ) ; %l a s k e t a a n s i i r r y t t y matka end x_opt = x ; Huomaa. fminunc ja fmincon -funktioille annettaville kohde- ja rajoitefunktioille ei tarvitse välttämättä luoda omia m-tiedostoja, vaan ne voidaan antaa @-merkin jälkeen sulkujen sisään tulee laskettavan funktion parametrit, ja tämän jälkeen laskettavan funktion lauseke. Esimerkiksi 2*x vastaa funktiota f(x) = 2x. Huomaa. Tässä esitetyllä gradienttimenetelmällä optimin saavuttaminen voi joskus olla hyvin vaikeaa, sillä kohdefunktion tasa-arvokäyrät voivat muodostaa pitkulaisen laakson. Gradienttimenetelmä jää tällöin sahaamaan edestakaisin laakson pohjalle, eikä pääse järkevässä ajassa riittävän lähelle optimia. 13
. 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ätiedotDemo 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ätiedotTEKNILLINEN 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ätiedotLuento 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ätiedotHarjoitus 4: Matlab - Optimization Toolbox
Harjoitus 4: Matlab - Optimization Toolbox Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Optimointimallin muodostaminen
LisätiedotHarjoitus 9: Optimointi I (Matlab)
Harjoitus 9: Optimointi I (Matlab) MS-C2107 Sovelletun matematiikan tietokonetyöt MS-C2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Optimointimallin muodostaminen Optimointitehtävien
LisätiedotMatriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.
Python linkit: Python tutoriaali: http://docs.python.org/2/tutorial/ Numpy&Scipy ohjeet: http://docs.scipy.org/doc/ Matlabin alkeet (Pääasiassa Deni Seitzin tekstiä) Matriisit ovat matlabin perustietotyyppejä.
LisätiedotTässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa.
Laskuharjoitus 1A Mallit Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa. 1. tehtävä %% 1. % (i) % Vektorit luodaan
LisätiedotHarjoitus 9: Optimointi I (Matlab)
Harjoitus 9: Optimointi I (Matlab) SCI-C0200 Fysiikan ja matematiikan menetelmien studio SCI-C0200 Fysiikan ja matematiikan menetelmien studio 1 Harjoituksen aiheita Optimointimallin muodostaminen Optimointitehtävien
LisätiedotMS-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ätiedotHarjoitus 1: Matlab. Harjoitus 1: Matlab. Mat Sovelletun matematiikan tietokonetyöt 1. Syksy 2006
Harjoitus 1: Matlab Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Tutustuminen Matlab-ohjelmistoon Laskutoimitusten
LisätiedotLuento 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ätiedotMS-A0003/A0005 Matriisilaskenta Laskuharjoitus 1 / vko 44
MS-A0003/A0005 Matriisilaskenta Laskuharjoitus / vko Tehtävä (L): Käynnistä Matlab-ohjelma ja kokeile laskea sillä muutama peruslaskutoimitus: laske jokin yhteen-, vähennys-, kerto- ja jakolasku. Laske
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ätiedotNumeeriset 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ätiedotTalousmatematiikan perusteet: Luento 14. Rajoittamaton optimointi Hessen matriisi Ominaisarvot Ääriarvon laadun tarkastelu
Talousmatematiikan perusteet: Luento 14 Rajoittamaton optimointi Hessen matriisi Ominaisarvot Ääriarvon laadun tarkastelu Luennolla 6 Tarkastelimme yhden muuttujan funktion f(x) rajoittamatonta optimointia
LisätiedotOsakesalkun 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ätiedotMatriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37
Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37 Tehtävä 1: Käynnistä Matlab-ohjelma ja kokeile laskea sillä muutama peruslaskutoimitus: laske jokin yhteen-, vähennys-, kerto- ja jakolasku. Laske
LisätiedotMatematiikan 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ätiedotTalousmatematiikan perusteet: Luento 13. Rajoittamaton optimointi Hessen matriisi Ominaisarvot ja vektorit Ääriarvon laadun tarkastelu
Talousmatematiikan perusteet: Luento 13 Rajoittamaton optimointi Hessen matriisi Ominaisarvot ja vektorit Ääriarvon laadun tarkastelu Viime luennolla Aloimme tarkastella yleisiä, usean muuttujan funktioita
Lisätiedotplot(f(x), x=-5..5, y=-10..10)
[] Jokaisen suoritettavan rivin loppuun ; [] Desimaalierotin Maplessa on piste. [] Kommentteja koodin sekaan voi laittaa # -merkin avulla. Esim. #kommentti tähän [] Edelliseen tulokseen voi viitata merkillä
LisätiedotKun yhtälöä ei voi ratkaista tarkasti (esim yhtälölle x-sinx = 1 ei ole tarkkaa ratkaisua), voidaan sille etsiä likiarvo.
Kun yhtälöä ei voi ratkaista tarkasti (esim yhtälölle x-sinx = 1 ei ole tarkkaa ratkaisua), voidaan sille etsiä likiarvo. Iterointi on menetelmä, missä jollakin likiarvolla voidaan määrittää jokin toinen,
Lisätiedotmlnonlinequ, Epälineaariset yhtälöt
Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos -e mlnonlinequ, Epälineaariset yhtälöt 1. Historiallisesti mielenkiintoinen yhtälö on x 3 2x 5 = 0, jota Wallis-niminen matemaatikko käsitteli,
LisätiedotMatematiikan 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ätiedotMalliratkaisut 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ätiedotHarjoitus 7 -- Ratkaisut
Harjoitus 7 -- Ratkaisut 1 Solve osaa ratkaista polynomiyhtälöitä, ainakin astelukuun 4 asti. Erikoistapauksissa korkeammankin asteen yhtälöt ratkeavat. Clear a, b, c, d, e, x ; Solve a x 3 b x 2 c 0,
LisätiedotKuva 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ätiedotMapu 1. Laskuharjoitus 3, Tehtävä 1
Mapu. Laskuharjoitus 3, Tehtävä Lineaarisessa approksimaatiossa funktion arvoa lähtöpisteen x 0 ympäristössä arvioidaan liikkumalla lähtöpisteeseen sovitetun tangentin kulmakertoimen mukaisesti: f(x 0
LisätiedotMatriiseista. Emmi Koljonen
Matriiseista Emmi Koljonen 3. lokakuuta 22 Usein meillä on monta systeemiä kuvaavaa muuttujaa ja voimme kirjoittaa niiden välille riippuvaisuuksia, esim. piirin silmukoihin voidaan soveltaa silmukkavirtayhtälöitä.
Lisätiedotmlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä
Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos mlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä osittaisderivaatoista: y 1... J F =.
LisätiedotZeon PDF Driver Trial
Matlab-harjoitus 2: Kuvaajien piirto, skriptit ja funktiot. Matlabohjelmoinnin perusteita Numeerinen integrointi trapezoidaalimenetelmällä voidaan tehdä komennolla trapz. Esimerkki: Vaimenevan eksponentiaalin
LisätiedotMatematiikan 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ätiedotNumeeriset 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ätiedotMATEMATIIKAN KOE PITKÄ OPPIMÄÄRÄ Merkitään f(x) =x 3 x. Laske a) f( 2), b) f (3) ja c) YLIOPPILASTUTKINTO- LAUTAKUNTA
1 YLIOPPILASTUTKINTO- LAUTAKUNTA 26.3.2018 MATEMATIIKAN KOE PITKÄ OPPIMÄÄRÄ A-osa Ratkaise kaikki tämän osan tehtävät 1 4. Tehtävät arvostellaan pistein 0 6. Kunkin tehtävän ratkaisu kirjoitetaan tehtävän
LisätiedotMS-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ätiedotDerivaatan sovellukset (ääriarvotehtävät ym.)
Derivaatan sovellukset (ääriarvotehtävät ym.) Tehtävät: 1. Tutki derivaatan avulla funktion f kulkua. a) f(x) = x 4x b) f(x) = x + 6x + 11 c) f(x) = x4 4 x3 + 4 d) f(x) = x 3 6x + 1x + 3. Määritä rationaalifunktion
LisätiedotMalliratkaisut 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ä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ätiedotBM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 7, Kevät 2018
BM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 7, Kevät 2018 Tehtävä 8 on tällä kertaa pakollinen. Aloittakaapa siitä. 1. Kun tässä tehtävässä sanotaan sopii mahdollisimman hyvin, sillä tarkoitetaan
Lisätiedot, 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ätiedotPiiri K 1 K 2 K 3 K 4 R R
Lineaarinen optimointi vastaus, harj 1, Syksy 2016. 1. Teollisuuslaitos valmistaa piirejä R 1 ja R 2, joissa on neljää eri komponenttia seuraavat määrät: Piiri K 1 K 2 K 3 K 4 R 1 3 1 2 2 R 2 4 2 3 0 Päivittäistä
LisätiedotTalousmatematiikan perusteet: Luento 15. Rajoitettu optimointi Lagrangen menetelmä Lagrangen kerroin ja varjohinta
Talousmatematiikan perusteet: Luento 15 Rajoitettu optimointi Lagrangen menetelmä Lagrangen kerroin ja varjohinta Viime luennolla Tarkastelimme usean muuttujan funktioiden rajoittamatonta optimointia:
LisätiedotEpälineaaristen pienimmän neliösumman tehtävien ratkaiseminen numeerisilla optimointimenetelmillä
Aalto-yliopisto Perustieteiden korkeakoulu Teknillisen fysiikan ja matematiikan tutkinto-ohjelma Epälineaaristen pienimmän neliösumman tehtävien ratkaiseminen numeerisilla optimointimenetelmillä kandidaatintyö
Lisätiedot12. 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ätiedotLineaarinen optimointi. Harjoitus 6-7, Olkoon A R m n, x, c R ja b R m. Osoita, että LP-tehtävän. c T x = min!
Lineaarinen optimointi Harjoitus 6-7, 016. 1. Olkoon A R m n, x, c R ja b R m. Osoita, että LP-tehtävän c T x = min! (T) Ax b x 0 duaalitehtävän duaali on tehtävä (T). Ratkaisu. (P) c T x = min! Ax b x
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ätiedotNumeeriset menetelmät
Numeeriset menetelmät Luento 3 Ti 13.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 3 Ti 13.9.2011 p. 1/37 p. 1/37 Epälineaariset yhtälöt Newtonin menetelmä: x n+1 = x n f(x n) f (x n ) Sekanttimenetelmä:
LisätiedotLuento 9: Newtonin iteraation sovellus: optimointiongelma
Luento 9: Newtonin iteraation sovellus: optimointiongelma ilman rajoitusehtoja Optimointiongelmassa tehtävänä on löytää annetun reaaliarvoisen jatkuvan funktion f(x 1,x,,x n ) maksimi tai minimi jossain
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ätiedot4 Yleinen potenssifunktio ja polynomifunktio
4 Yleinen potenssifunktio ja polynomifunktio ENNAKKOTEHTÄVÄT 1. a) Tutkitaan yhtälöiden ratkaisuja piirtämällä funktioiden f(x) = x, f(x) = x 3, f(x) = x 4 ja f(x) = x 5 kuvaajat. Näin nähdään, monessako
LisätiedotTEKNILLINEN TIEDEKUNTA, MATEMATIIKAN JAOS
1. Suorakaiteen muotoisen lämmönvaraajan korkeus on K, leveys L ja syvyys S yksikköä. Konvektiosta ja säteilystä johtuvat lämpöhäviöt ovat verrannollisia lämmönvaraajan lämpötilan T ja ympäristön lämpötilan
Lisätiedotn. asteen polynomilla on enintään n nollakohtaa ja enintään n - 1 ääriarvokohtaa.
MAA 12 kertaus Funktion kuvaaja n. asteen polynomilla on enintään n nollakohtaa ja enintään n - 1 ääriarvokohtaa. Funktion nollakohta on piste, jossa f () = 0, eli kuvaaja leikkaa -akselin. Kuvaajan avulla
LisätiedotLuento 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ätiedotJohdatus tekoälyn taustalla olevaan matematiikkaan
Johdatus tekoälyn taustalla olevaan matematiikkaan Informaatioteknologian tiedekunta Jyväskylän yliopisto 3. luento 17.11.2017 Neuroverkon opettaminen (ohjattu oppiminen) Neuroverkkoa opetetaan syöte-tavoite-pareilla
LisätiedotMatematiikan tukikurssi
Matematiikan tukikurssi Kertausluento 2. välikokeeseen Toisessa välikokeessa on syytä osata ainakin seuraavat asiat:. Potenssisarjojen suppenemissäde, suppenemisväli ja suppenemisjoukko. 2. Derivaatan
Lisätiedotmin 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ätiedotMS-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ätiedotMatemaattisen analyysin tukikurssi
Matemaattisen analyysin tukikurssi 10. Kurssikerta Petrus Mikkola 22.11.2016 Tämän kerran asiat Globaali ääriarvo Konveksisuus Käännepiste L Hôpitalin sääntö Newtonin menetelmä Derivaatta ja monotonisuus
LisätiedotHannu Mäkiö. kertolasku * jakolasku / potenssiin korotus ^ Syöte Geogebran vastaus
Perusohjeita, symbolista laskentaa Geogebralla Kielen vaihtaminen. Jos Geogebrasi kieli on vielä englanti, niin muuta se Options välilehdestä kohdasta Language suomeksi (finnish). Esittelen tässä muutaman
LisätiedotDifferentiaali- ja integraalilaskenta 2 Laskuharjoitus 4 / vko 40
Differentiaali- ja integraalilaskenta 2 Laskuharjoitus 4 / vko 40 Alkuviikolla harjoitustehtäviä lasketaan harjoitustilaisuudessa. Loppuviikolla näiden harjoitustehtävien tulee olla ratkaistuina harjoituksiin
LisätiedotMS-A0107 Differentiaali- ja integraalilaskenta 1 (CHEM)
. Lasketaan valmiiksi derivaattoja ja niiden arvoja pisteessä x = 2: f(x) = x + 3x 3 + x 2 + 2x + 8, f(2) = 56, f (x) = x 3 + 9x 2 + 2x + 2, f (2) = 7, f (x) = 2x 2 + 8x + 2, f (2) = 86, f (3) (x) = 2x
LisätiedotHarjoitus 3 (3.4.2014)
Harjoitus 3 (3..) Tehtävä Olkoon kaaren paino c ij suurin sallittu korkeus tieosuudella (i, j). Etsitään reitti solmusta s solmuun t siten, että reitin suurin sallittu korkeus pienimmillään olisi mahdollisimman
LisätiedotJuuri 12 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty
Kertaus K. a) Polynomi P() = 3 + 8 on jaollinen polynomilla Q() = 3, jos = 3 on polynomin P nollakohta, eli P(3) = 0. P(3) = 3 3 3 + 8 3 = 54 08 + 54 = 0. Polynomi P on jaollinen polynomilla Q. b) Jaetaan
LisätiedotMS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 8: Newtonin iteraatio. Taso- ja avaruusintegraalit
MS-A25/MS-A26 ifferentiaali- ja integraalilaskenta 2 Luento 8: Newtonin iteraatio. Taso- ja avaruusintegraalit Jarmo Malinen Matematiikan ja systeemianalyysin laitos 1 Aalto-yliopisto Kevät 216 1 Perustuu
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 10: Mathematica
Harjoitus 10: Mathematica Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Tutustuminen Mathematica-ohjelmistoon Mathematican
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ätiedotLuento 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ätiedotHarjoitus 8: Excel - Optimointi
Harjoitus 8: Excel - Optimointi Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Lineaarisen optimointimallin muodostaminen
LisätiedotHarjoitus 3 (31.3.2015)
Harjoitus (..05) Tehtävä Olkoon kaaren paino c ij suurin sallittu korkeus tieosuudella (i,j). Etsitään reitti solmusta s solmuun t siten, että reitin suurin sallittu korkeus pienimmillään olisi mahdollisimman
LisätiedotOletetaan 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ätiedotMatematiikan 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ätiedotEllipsoidimenetelmä. 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ätiedotNumeerinen analyysi Harjoitus 3 / Kevät 2017
Numeerinen analyysi Harjoitus 3 / Kevät 2017 Palautus viimeistään perjantaina 17.3. Tehtävä 1: Tarkastellaan funktion f(x) = x evaluoimista välillä x [2.0, 2.3]. Muodosta interpoloiva polynomi p 3 (x),
LisätiedotMalliratkaisut Demo 4
Malliratkaisut Demo 4 1. tehtävä a) () = 2+1. Funktio on lineaarinen, joten se on unimodaalinen sekä maksimoinnin että minimoinnin suhteen. Funktio on konveksi ja konkaavi. b) () = (suurin kokonaisluku
LisätiedotLuento 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ätiedotKeskeiset 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ätiedotEste- 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ätiedotMatematiikan tukikurssi
Matematiikan tukikurssi Kurssikerta 9 1 Implisiittinen derivointi Tarkastellaan nyt yhtälöä F(x, y) = c, jossa x ja y ovat muuttujia ja c on vakio Esimerkki tällaisesta yhtälöstä on x 2 y 5 + 5xy = 14
Lisätiedot2 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ätiedotFUNKTION KUVAAJAN PIIRTÄMINEN
FUNKTION KUVAAJAN PIIRTÄMINEN Saat kuvapohjan painamalla @-näppäintä tai Insert/Graph/X-Y-POT. Kuvapohjassa on kuusi paikanvaraaja: vaaka-akselin keskellä muuttuja ja päissä minimi- ja maksimiarvot pystyakselin
LisätiedotReaalilukuvälit, leikkaus ja unioni (1/2)
Luvut Luonnolliset luvut N = {0, 1, 2, 3,... } Kokonaisluvut Z = {..., 2, 1, 0, 1, 2,... } Rationaaliluvut (jaksolliset desimaaliluvut) Q = {m/n m, n Z, n 0} Irrationaaliluvut eli jaksottomat desimaaliluvut
LisätiedotBM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 1, Kevät 2018
BM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 1, Kevät 2018 1. (a) Tunnemme vektorit a = [ 5 1 1 ] ja b = [ 2 0 1 ]. Laske (i) kummankin vektorin pituus (eli itseisarvo, eli normi); (ii) vektorien
Lisätiedotf(x, y) = x 2 y 2 f(0, t) = t 2 < 0 < t 2 = f(t, 0) kaikilla t 0.
Ääriarvon laatu Jatkuvasti derivoituvan funktion f lokaali ääriarvokohta (x 0, y 0 ) on aina kriittinen piste (ts. f x (x, y) = f y (x, y) = 0, kun x = x 0 ja y = y 0 ), mutta kriittinen piste ei ole aina
LisätiedotKirjallisuuskatsaus sisäpistemenetelmiin ja niiden soveltamiseen eri optimointiluokille (valmiin työn esittely)
Kirjallisuuskatsaus sisäpistemenetelmiin ja niiden soveltamiseen eri optimointiluokille (valmiin työn esittely) Ilari Vähä-Pietilä 28.04.2014 Ohjaaja: TkT Kimmo Berg Valvoja: Prof. Harri Ehtamo Työn saa
LisätiedotPRELIMINÄÄRIKOE PITKÄ MATEMATIIKKA 9.2.2011
PRELIMINÄÄRIKOE PITKÄ MATEMATIIKKA 9..0 Kokeessa saa vastata enintään kymmeneen tehtävään.. Sievennä a) 9 x x 6x + 9, b) 5 9 009 a a, c) log 7 + lne 7. Muovailuvahasta tehty säännöllinen tetraedri muovataan
LisätiedotJuuri 12 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty
Juuri Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty 7.5.08 Kertaus K. a) Polynomi P() = + 8 on jaollinen polynomilla Q() =, jos = on polynomin P nollakohta, eli P() = 0. P() = + 8 = 54 08 +
Lisätiedot1. Lineaarinen optimointi
0 1. Lineaarinen optimointi 1. Lineaarinen optimointi 1.1 Johdatteleva esimerkki Esimerkki 1.1.1 Giapetto s Woodcarving inc. valmistaa kahdenlaisia puuleluja: sotilaita ja junia. Sotilaan myyntihinta on
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ätiedotMatematiikan tukikurssi
Matematiikan tukikurssi Kurssikerta 9 Korkeamman asteen derivaatat Tutkitaan nyt funktiota f, jonka kaikki derivaatat on olemassa. Kuten tunnettua, funktion toista derivaattaa pisteessä x merkitään f (x).
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ätiedotOsakesalkun 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ätiedotVektorianalyysi II (MAT21020), syksy 2018
Vektorianalyysi II (MAT21020), syksy 2018 Ylimääräisiä harjoitustehtäviä 1. Osoita, että normin neliö f : R n R, f(x) = x 2 on differentioituva pisteessä a R n ja, että sen derivaatalle on voimassa 2.
Lisätiedotz 1+i (a) f (z) = 3z 4 5z 3 + 2z (b) f (z) = z 4z + 1 f (z) = 12z 3 15z 2 + 2
BM20A5700 - Integraauunnokset Harjoitus 2 1. Laske seuraavat raja-arvot. -kohta ratkeaa, kun pistät sekä yläkerran että alakerran muotoon (z z 1 )(z z 2 ), missä siis z 1 ja z 2 ovat näiden lausekkeiden
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ätiedotTIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010
TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta Yliassistentti Jussi Hakanen jussi.hakanen@jyu.fi syksy 2010 Yleistä https://korppi.jyu.fi/kotka/r.jsp?course=96762 Sisältö Johdanto yksitavoitteiseen
LisätiedotMAA9.2 2014 Jussi Tyni Lue ohjeet huolellisesti! Tee pisteytysruudukko konseptin yläkertaan. Muista kirjoittaa nimesi. Kysymyspaperin saa pitää.
MAA9. 014 Jussi Tyni Lue ohjeet huolellisesti! Tee pisteytysruudukko konseptin yläkertaan. Muista kirjoittaa nimesi. Kysymyspaperin saa pitää. A-OSIO: Ei saa käyttää laskinta. MAOL saa olla esillä. Maksimissaan
LisätiedotDemo 1: Excelin Solver -liitännäinen
MS-C2105 Optimoinnin perusteet Malliratkaisut 1 Ehtamo Demo 1: Excelin Solver -liitännäinen Ratkaise tehtävä käyttäen Excelin Solveria. max 3x 1 + x 2 s.e. 2x 1 + 5x 2 8 4x 1 + 2x 2 5 x 1, x 2 0 Ratkaisu
LisätiedotNumeeriset menetelmät TIEA381. Luento 8. Kirsi Valjus. Jyväskylän yliopisto. Luento 8 () Numeeriset menetelmät / 35
Numeeriset menetelmät TIEA381 Luento 8 Kirsi Valjus Jyväskylän yliopisto Luento 8 () Numeeriset menetelmät 11.4.2013 1 / 35 Luennon 8 sisältö Interpolointi ja approksimointi Funktion approksimointi Tasainen
Lisätiedotjakokulmassa x 4 x 8 x 3x
Laudatur MAA ratkaisut kertausarjoituksiin. Polynomifunktion nollakodat 6 + 7. Suoritetaan jakolasku jakokulmassa 5 4 + + 4 8 6 6 5 4 + 0 + 0 + 0 + 0+ 6 5 ± 5 5 4 ± 4 4 ± 4 4 ± 4 8 8 ± 8 6 6 + ± 6 Vastaus:
Lisätiedot