Mat-.148 Dynaaminen optimointi Mitri Kitti/Ilkka Leppänen Mallivastaukset, kierros 1 1. Olkoon maaston korkeus y(s) derivoituva funktio ja etsitään tien profiilia x(s). Päätösmuuttuja on tien jyrkkyys u(s) dx ds = u(s), a u(s) a ja pyritään minimoimaan tien ja maaston korkeuden neliövirhettä min S [x(s) y(s)] ds, kun tien korkeus alussa x() ja lopussa x(s) ovat kummatkin vapaat. Jos siis ohjausrajoitusta ei olisi, olisi ratkaisu triviaalisti x(s) = y(s). Hamiltonin funktio on ja liittotilayhtälö H = (x y) + pu ṗ(s) = [x(s) y(s)]. Vapaista alku- ja loppuehdoista seuraa transversaalisuusehdot Silloin ja p(s) = S Havaitaan kolmenlaisia ratkaisuvälejä: p() = p(s) =. p(s) > : u(s) = a, p(s) = : u(s) = ẏ(s), p(s) < : u(s) = +a, Singulaariväleillä p(s) = siis ehto [x(τ) y(τ)] dτ [x(τ) y(τ)] dτ =. [x(τ) y(τ)] dτ < ; [x(τ) y(τ)] dτ = ; [x(τ) y(τ)] dτ >. (x y) min! x(s) = y(s) kiinnittää ohjauksen, kun oletus y(s) derivoituva on voimassa. Tällöin edellä esitetty ratkaisu u(s):lle on yksikäsitteinen ja antaa minimin.. Kalapopulaation kasvua kuvaava systeemiyhtälö: Ṅ(t) = an(t) bn (t) c(t), a, b >. (1)
Jos ei kalasteta (c = ), niin steady-state tila N s on = an s bn s N s = a/b = N(). Alussa siis populaatio on tasapainotilassa. Etsi kalastusnopeus c(t) s.e. hyödyn nykyarvo maksimoituu max missä U on konkaavi ja kasvava hyötyfunktio. e rt U[c(t)] dt, Muistetaan aikaisemmista laskareista nykyarvo-hamiltonin käsite: Välttämätön optimaalisuusehto on Ĥ = e rt H = U(c) + p [ an bn c ]. Ĥ c = U (c) p = p = U (c). Koska Ĥ = U (c) <, c on kyseessä maksimi. Nykyarvo-liittotilan yhtälöksi saadaan vastaavasti harjoituksen 9 tehtävässä 3 näytettiin, että p(t) = r p(t) Ĥ x, eli p(t) = r p(t) [ a bn(t) ] p(t). Toisaalta p(t) = U [c(t)], p(t) = U [c(t)]c (t), joten nykyarvoliittotila voidaan eliminoida ja päästään yhtälöön eli U [c(t)]c (t) = [ r a + bn(t) ] U [c(t)] c (t) = [ r a + bn(t) ] U [c(t)]. () U [c(t)] }{{} < Yhdessä tilayhtälön (1) kanssa nämä muodostavat differentiaaliyhtälösysteemin, joka kuvaa välttämättömiä ehtoja populaation muutokselle optimikalastuksella. Riippuen siitä, mistä alkutilasta (N(), c()) lähdetään liikkeelle, saadaan eri ratkaisuja. Näistä yksi (tai useampia) ovat optimiratkaisuja. Tarkastellaan optimisysteemiä vaihetasossa. Ensin tarvitaan systeemin tasapainopiste: ċ(t) = N s = a r b (a r)(a + r) Ṅ(t) = c s = 4b kun siis a > r. Nämä eivät ole siis samoja tasapainopisteitä kuin edellä, vaan esittävät systeemin ainoaa steady-state tilaa. Hypoteesi on, että optimiratkaisu on nimenomaan se ratkaisu, joka päätyy steady-state tilaan. Nyt tasapainopisteen laadun määrittämiseksi voitaisiin laskea
Jakobin matriisin ominaisarvot tasapainopisteessä, mutta näistä tulee varsin monimutkainen juurilauseke, jossa esiintyy termiä U (c s ). Tyydytään siis tarkastelemaan isokliinejä sekä systeemin käyttäytymistä niiden rajaamissa alueissa. Paraabeli an bn = c jakaa tason kahtia, sen yläpuolella on dn < ja alapuolella dn >. dt dt Vastaavasti, kun valitaan U(c) = c, niin silloin suora N = (a r)/(b) jakaa tason kahtia, ja sen vasemmalla puolella dc dc > ja oikealla puolella <. Kuvassa 1 on esitetty systeemin dt dt isokliinit sekä gradienttikenttä, jota ratkaisutrajektorin tangentit pyrkivät noudattamaan. Alkutilassa ollaan kuvan oikeassa reunassa, N() = 15. Mikäli alussa kalastetaan jonkin verran nopeammin kuin tasapainotilassa, c() > c s, niin silloin on mahdollista päätyä lopulta optimaaliseen steady-state ratkaisuun, jossa sitten pysytään. 18 16 14 1 Kalastusnopeus c 1 8 6 4 4 6 8 1 1 14 16 Kalapopulaatio N Kuva 1: Kalastustehtävän välttämättömät ehdot karakterisoivan yhtälön gradienttikenttä. Tehtävän optimitrajektori on se, jolla päädytään lopulta steady state -tasapainotilaan. 3. Osoitettava, että tehtävällä tilayhtälöllä max e rt( u (t) + x(t)u(t) x (t)) dt, r > 1 ẋ(t) = u(t), x() = x ei ole optimaalista steady-state ratkaisua. Nykyarvo-Hamilton on Ĥ = u (t) Välttämätön ehto optimiohjaukselle on + x(t)u(t) x (t) + pu. Ĥ u = u + x + p = u (t) = x(t) + p.
Kuten aikaisemminkin, nykyarvoliittotilayhtälö on p(t) = r p(t) u(t) + x(t). Sijoittamalla saadaan ohjaus eliminoitua ja välttämättömät ehdot kirjoitettua systeeminä Tämä on lineaarinen systeemi, jonka ominaisarvot ovat ẋ(t) = x(t) + p(t) (3) p(t) = (r 1) p(t). (4) λ 1 = 1, λ = r 1. Jos nyt r > 1, niin tehtävän ominaisarvot ovat positiiviset ja kyseessä on epästabiili napa. Tällöin ei steady-state ratkaisua ole olemassa. Ratkaisemalla yhtälöstä (4) saadaan p(t) = p e (r 1)t. Sijoittamalla optimiohjaus kustannusfunktionaalin saadaan 1 = 1 = 1 p e rt[ u(t) x(t) ] dt e rt p (t) dt e rt e (r 1)t dt, jonka arvo maksimoituu, kun p = (koska integraalin arvo on positiivinen). Silloin p(t), x(t) = x e t, u(t) = x e t. Tämä ei siis selvästikään lähesty mitään tasapainotilaa. 4. Olkoon ja kulutusta kuvaava yhtälö on c kulutus, c(t) k pääoma, k() = k, k(t) c(t) = f[k(t)] k(t), (5) missä f() =, f on kasvava ja konkaavi tuotantofunktio. Maksimoidaan hyödyn odotusarvoa max e rt U [ f[k(t)] k(t) ] dt, missä hyötyfunktio U on kasvava ja konkaavi. Eulerin yhtälö: e rt U c f (k) + d dt[ e rt U c ] = eli U cc (c) ċ = r f (k). (6) U c (c) }{{} <
Optimaalinen ratkaisu toteuttaa nyt välttämättömät ehdot (5) ja (6). Ratkaistaan isokliinit vaihetasossa: ċ = f (k) = r. Olkoon f (k s ) = r. Jos nyt k > k s, niin koska f on vähenevä niin silloin ċ <. Vastaavasti jos k < k s, niin silloin ċ >. k = c = f(k). Tämä on siis jokin origon kautta kulkeva käyrä. Kun ollaan sen yläpuolella, niin k < ja jos ollaan sen alapuolella niin k >. Kuvaan on piirretty tuotantofunktion f(k) = k tilannetta esittävä vaihetason gradienttikenttä. Isokliinit jakavat vaihetason neljään kvandranttiin. Alussa ollaan suoralla k = k. Mikäli k < k s tulee valita c() < c s sopivasti niin, että lopuksi trajektori päätyy steady state -tilaan. Vastaavasti jos k > k s tulee valita c() > c s. Joka tapauksessa steady state -tila on olemassa kaikilla alkuarvoilla k. 1 9 8 7 Kulutus c 6 5 4 3 1 5 1 15 5 3 35 4 45 5 Pääoma k Kuva : Kulutustehtävän välttämättömät ehdot karakterisoivan yhtälön gradienttikenttä. Vain kaksi neljästä kvadrantista johtaa steady-state tasapainotilaan. 5. Vaimennetun heilurin tilanyhtälöt ovat: θ = g sin θ r θ L ẋ 1 = x ẋ = g L sin x 1 rx. Epälineaarisen systeemin tasapainotiloja voidaan etsiä asettamalla tilojen derivaatat nolliksi ja ratkaisemalla saatu yhtälö: Saadaan kaksi eri tasapainotilaa: x =, g L sin x 1 = x 1 = ±nπ, n Z. (x 1, x ) = (, ), (x 1, x ) = (π, ).
Tasapainotilojen laatua voidaan tarkastella linearisoimalla systeemi niiden ympäristössä. Jakobin matriisiksi saadaan [ ] 1 J f = g cosx. L 1 r Tasapainopisteessä (x 1, x ) = (, ) Jakobin matriisin ominaisarvot ovat λ = r ± r 4g/L eli systeemi on stabiili ainakin jossain origon pienessä ympäristössä. Toisaalta tasapainopisteessä (x 1, x ) = (π, ) Jakobin matriisin ominaisarvot ovat <, λ = r ± r + 4g/L, jolloin toinen ominaisarvo on positiivinen ja toinen negatiivinen. Tällöin tasapainopiste on epästabiili satulapiste. Heilurisysteemin kokonaisenergiaa tasapainopisteen (, ) ympäristössä esittää Lyapunovin funktio x V (x 1, x ) = + g }{{} l (1 cosx 1). }{{} kineettinen energia potentiaalienergia Kun rajoitutaan välille x 1 ( π, π), niin tämän yksikäsitteinen minimi on piste (x 1, x ) = (, ). Lisäksi V on jatkuvasti derivoituva ja V (x 1, x ) = x ẋ + g L sin(x 1)ẋ 1 = x (ẋ + g L sin x 1) = rx <, (x 1, x ) (, ), joten origo on systeemin asymptoottisesti stabiili tasapainopiste. Peruskursseilta muistetaan, että systeemin sanotaan olevan stabiili jonkin tasapainopisteen x s ympäristössä jos kaikille palloille B(x s, δ) pätee, että mikäli valitaan tarpeeksi pieni säde ε niin pallosta B(x s, ε) lähdettäessä ei voida koskaan päätyä B(x s, δ):n ulkopuolelle, t.s. δ > ε > s.e. x() B(x s, ε) x(t) Ω, t [, ). Asymptoottinen stabiilius on voimakkaampi käsite, ja sille pätee x() B(x s, ε) lim t x(t) = x s. Lyapunovin funktio antaa samantien joukon B(x s, ε), jossa asymptoottinen stabiilius pätee, eli heiluritehtävälle origon ympäristössä ε = π. Yläasennossa (x 1, x ) = (π, ) heiluri ei ole stabiili, mutta se voidaan ohjauksella siellä pitää. Olkoon heilurin kantapisteeseen kohdistuva voima F = mẅ,
ja tilayhtälöissä merkitään kulmaa pystyasennosta φ:llä, t.s. φ = π θ. Kun nyt valitaan tilamuuttujiksi x 1 = φ ja x = φ, niin tilanyhtälöt muuttuvat muotoon 1 = x ja valitaan ohjaukseksi kiihtyvyys = ẅ L cosx 1 + g L sin x 1 rx, v := F m. Etsitään ohjausta v lineaarikombinaationa tilamuuttujista v(t) = c 1 x 1 (t) + c x (t) ẅ = c 1 x 1 c x. Silloin ohjattu systeemi voidaan kirjoittaa muodossa 1 = x = c 1x 1 L cosx 1 + c x L cosx 1 + g L sin x 1 rx. Linearisoidaan systeemi tasapainotilassa. Jakobin matriisi tilassa (x 1, x ) = (, ) on [ ] 1 J f = c L. r ja tämän ominaisarvot ovat c 1L + g L λ = (r c /L) ± (r c /L) + 4(c 1 /L + g/l). Vakiot c 1, c tulee valita siten, että ominaisarvot ovat vasemmassa puolitasossa. Valitaan esimerkiksi c 1 = (L + g) ja c = rl L, jolloin λ = 1 ± i 3.