12 Jatkuva-aikaisten tehtävien numeerinen ratkaiseminen Ratkaisumenetelmät jaetaan epäsuoriin ja suoriin menetelmiin Epäsuora menetelmä yrittää ratkaista Pontryaginin minimiperiaatteen mukaiset vättlämättömät optimaalisuusehdot (kts. kalvot 49 49). Epäsuora menetelmä siis ratkaisee reuna-arvotehtävän F(x, ẋ, t) = 0. Suora menetelmä etenee iteratiivisesti kohti optimiratkaisua muodostaen jonon x 1, x 2,..., x siten, että F(x 1 ) > F(x 2 ) > > F(x ) (tässä F on kohdefunktionaali tai sen approksimaatio). Kummallakin menetelmällä tehtävä diskretoidaan ajan suhteen ja systeemin tila (ja liittotila) evaluoidaan diskreeteillä hetkillä Numeerista ratkaisemista varten ääretönulotteinen optimisäätötehtävä min φ(x(t f ), t f ) (12) ẋ = f(x(t),u(t), t), x(t 0 ) = x 0 (13) 0 = ψ(x(t f ), t f ), (14) missä t f on vapaa, on muunnettava äärellisulotteiseksi tehtäväksi. Muunnos tehdään parametrisoimalla optimisäätötehtävän muuttujat diskreeteillä ajanhetkillä t k eli solmuissa t 0 < t 1 < < t k < < t N 1 < t N = t f (15) missä askelpituus h k = t k t k 1 = (t f t 0 )/N on tyypillisesti vakio Parametreiksi voidaan valita 1. ohjausmuuttujat 2. ohjausmuuttujat ja tilamuuttujat joissain solmuissa 3. ohjaus- ja tilamuuttujat 4. tilamuuttujat Menetelmiä 1 4 kutsutaan vastaavasti ammunta-, monipisteammunta-, kollokaatioja differentiaali-inkluusiomenetelmiksi Menetelmissä 1 ja 2 tilayhtälöt (13) integroidaan eksplisiittisesti ja menetelmissä 3 ja 4 joko eksplisiittisesti tai implisiittisesti Parametrisointimenetelmästä riippumatta optimisäätötehtävä voidaan ratkaista numeerisesti joko epäsuoralla tai suoralla menetelmällä Suorassa menetelmässä parametrit ovat epälineaarisen optimointitehtävän muuttujia, joka voidaan ratkaista esim. SQP-menetelmällä 80
12.1 Epäsuorien ja suorien menetelmien välinen yhteys Määritellään tehtävälle (12) (14) Hamiltonin funktio sekä apufunktio Ψ H = λ T (t)f(x(t),u(t), t) (16) Ψ = φ + ν T ψ (17) Ehtojen (13) ja (14) lisäksi optimiratkaisun tulee toteuttaa välttämättömät optimaalisuusehdot λ(t) = Hx T (x(t),u(t), t) (18) 0 = H u (x(t),u(t), t) (19) λ(t f ) = Ψ x (x(t f ),u(t f ), t f ) (20) 0 = H (x(t f ),u(t f ), t f ) + Ψ t (x(t f ),u(t f ), t f ) (21) x(t 0 ) = x 0 (22) Oletetaan seuraavaksi alkutila x(t 0 ) = x 0 annetuksi ja määritellään NLP-tehtävälle (NLP = nonlinear programming) muuttujavektori y T = (u 0,x 1,u 1,x 2,,u N 1,x N,u N, t N ) (23) missä muuttujat evaluoidaan diskretoinnin (15) solmuissa. Oletetaan myös että lopputilalle ei ole rajoitetta. Approksimoidaan tilan derivaattaa differenssillä ẋ (x k+1 x k )/h ja sijoitetaan approksimaatio tilayhtälöihin (13) Määritellään tilayhtälöille virheet NLP-tehtävän rajoitteina sekä NLP-tehtävän kohdefunktio x k+1 x k hf(x k,u k, t k ) = 0, k = 0,...,N 1 (24) F(y) = φ(x N ) (25) Määritellään NLP-tehtävälle (23), (24) ja (25) Lagrangen funktio L (y, λ) = F(y) λ T c(y) = φ(x N, t N ) N 1 k=0 NLP-tehtävän välttämättömät optimaalisuusehdot ovat λ T k [x k+1 x k hf(x k,u k )] (26) = x k+1 x k hf(x k,u k ) = 0 k λ k (27) = (λ k λ k 1 ) + hλ T f k = 0 2 k N 1 x k x k (28) u k = hλ T k f u k = 0 k (29) = λ T N 1 x + φ = 0 (30) N x N 81
Kun N ja h 0, niin (27) (13); tilayhtälö (28) (18); liittotilayhtälö (29) (19); stationaarisuusehto (30) (20); transversaalisuusehto (huom. oletettiin, että lopputila ei ole rajoitettu) Toisin sanoen NLP-tehtävän välttämättömät optimaalisuusehdot lähestyvät optimisäätötehtävän välttämättömiä optimaalisuusehtoja, kun muuttujien lukumäärä kasvaa NLP-tehtävän Lagrangen kertoimet voidaan tulkita liittotilamuuttujien diskreeteiksi approksimaatioiksi 12.2 Tilarajoitetut tehtävät Lisätään seuraavaksi tehtävään (12) (14) yhtälömuotoiset tilarajoitteet g(x(t),u(t), t) = 0 (31) Kun g:n Jakobin matriisi on täyttä rangia, Hamiltonin funktio (16) korvataan muodolla H = λ T (t)f(x(t),u(t), t) + µ T g(x(t),u(t), t) (32) mikä muuttaa liittotila- ja stationaarisuusyhtälöitä (18) ja (19). Tarkastellaan seuraavaksi epäyhtälömuotoista tilarajoitetta g(x(t),u(t), t) 0 (33) Rajoite on kullakin ajanhetkellä joko aktiivinen tai ei-aktiivinen Ei-aktiivisilla osuuksilla välttämättömät ehdot Hamiltonin funktiolla (16) ja aktiivisilla modifioidulla Hamiltonin funktiolla (32) Hankaluuksia: 1. Tilarajoitettujen kaarien lukumäärää ekstremaalilla ei tiedetä etukäteen 2. Liittymäkohtia, jolloin tilarajoite muuttuu aktiiviseksi tai ei-aktiiviseksi, ei tunneta 3. Ohjaus- ja liittotilafunktiot saattavat olla epäjatkuvia liittymäkohdissa Liittymäkohdissa vaaditaan erityisten reunaehtojen toteutumista, minkä johdosta ehtojen (13), (14) ja (18) (22) muodostama kahden pisteen reuna-arvotehtävä muuttuu monen pisteen reuna-arvotehtäväksi 82
12.3 Epäsuorien ja suorien menetelmien edut ja haitat Epäsuorat menetelmät + Ratkaisun tarkkuus, valmista teoriaa reuna-arvotehtäville + Ratkaisut auttavat ymmärtämään dynaamisia ilmiöitä + Ongelman parametrien vaikutusten analysointi läpinäkyvää Välttämättömien ehtojen johtaminen voi olla hankalaa Tilarajoitteisiin liittyvät hankaluudet Singulaarivälit Herkkyys alkuyritteelle, mistä liittotilamuuttujien alkuarvot? Suorat menetelmät (jatkossa keskitytään näihin) + Välttämättömiä ehtoja ei tarvitse johtaa + Tilarajoitettuja kaariosuuksia ei tarvitse määritellä etukäteen + Robustisuus Ratkaisuiden tarkkuus ja optimaalisuus 12.4 Suora ammuntamenetelmä Parametrisoitu NLP-vektori on muotoa y T = (u 0,u 1,,u N, t N ) Integroidaan tilayhtälöt alkutilasta x 0 loppuhetkeen t N jollain eksplisiittisellä numeerisella integroimismenetelmällä käyttäen ohjauksia u 0,...,u N NLP-tehtävä on muotoa min y φ(x N ) g(x i,u i, t i ) 0, ψ(x N, t N ) = 0 i = 0, 1,..., N missä x i on integroitu tila hetkellä t i. Huom! Lagrangen muodossa annetuissa tehtävissä integraali kannattaa evaluoida kvadratuuriapproksimaationa tf t 0 w(x,u, t)dt = N 1 k=1 h i 2 (w k + w k+1 ) + NLP-muuttujien lukumäärä on vähäinen; helppo NLP-tehtävä 83
Pienet muutokset alkuvaiheen ohjauksissa voivat aiheuttaa suuria muutoksia lopputilassa x N (etenkin, jos solmuja on paljon) Kohdefunktio sekä loppupään tilarajoitteet voivat olla hyvin epälineaarisia ja hankalia ratkaista (myös lineaarisilla systeemeillä!) Näinollen NLP-tehtävän ratkaisemisessa vaadittavan Jakobin matriisin tarkan estimaatin määrittäminen voi olla hankalaa 12.5 Suora monipisteammuntamenetelmä Ammuntamenetelmän herkkyyteen liittyvä ongelma voidaan korjata jakamalla trajaktori useampaan ammuntasegmenttiin Oletetaan, että segmenteissä on ν askelta ja N on ν:n monikerta Segmentissä j = 0,...,N/ν 1 sovelletaan ammuntamenetelmää lähtien tilasta x jν ja päätyen tilaan x jν Parametrisoitu NLP-vektori on muotoa y T = (u 0,u 1,,u N,x ν,x 2ν,,x N ν, t N ) Trajektori pakotetaan jatkuvaksi segmenttien väleillä lisäämällä NLP-tehtävään jatkuvuusrajoitteet x ν x 0 x 2ν x ν c(y) =. x N ν x N 2ν NLP-tehtävän koko kasvaa lisättyjen muuttujien ja rajoitteiden takia; kumpiakin n(n/ν 1) kpl lisää + Jakobin matriisi on harva, koska alkupään muuttujat eivät vaikuta loppupään rajoitteisiin: ψ ui ( x N ν, t N ) = 0, i = 0,...,N ν 1 + NLP-ratkaisijat osaavat hyödyntää matriisin harvaa rakennetta 12.6 Kollokaatiomenetelmät Aikaväli [t 0, t f ] jaetaan osaväleiksi, olkoon t i i:nnen osavälin päätepiste, x i tilamuuttujan arvo ja u i ohjauksen arvo kyseisessä pisteessä Kullakin osavälillä x ratkaistaan kollokaatiomenetelmällä: muodostetaan approksimaatio x ja vaaditaan, että x = f annetuissa kollokaatiopisteissä, jolloin saadaan ns. kollokaatioehdot. 84
esim. puolisuunnikasmenetelmässä kollokaatioehto on x i+1 x i h i 2 [f(x i+1,u i+1, t i+1 ) + f(x i,u i, t i )] = 0. indeksiä i vastaten saadaan siis joukko yhtälörajoitteita, merkitään kaikkia näitä rajoiteyhtälöitä lyhyesti c(y) = 0, missä y sisältää kaikki muuttujat, eli Parametrisoitu NLP-tehtävä on muotoa y T = (u 0,x 1,u 1,x 2,,u N 1,x N,u N, t N ) min y φ(x N ) g(y) 0 c(y) = 0 ψ(x N, t N ) = 0, Muita kollokaatiomenetelmien tyyppisiä menetelmiä Kvadratuurimenetelmä: approksimoidaan tilayhtälöitä interpolantilla f(t), virheet muotoa ζ i = x i+1 x i + t i+1 t i f(t)dt Pseudospektraalimenetelmä: approksimoidaan koko tilatrajektoria interpolantilla x(t), virheet muotoa ζ i = f i x(t i ). NLP-muuttujien ja rajoitteiden lukumäärä on suuri + Jakobin matriisi on rakenteeltaan harva + Tila- ja ohjaustrajektoreille saadaan polynomiapproksimaatio + Virhearviot kollokaatioteoriasta 12.7 Differentiaali-inkluusiomenetelmä Ratkaistaan m tilayhtälöä ohjausten suhteen ja eliminoidaan ohjaukset lopuista n m tilayhtälöstä sekä tilarajoitteista. Oletetaan, että eliminoinnin tuloksena saadaan rajoitteet p(x,ẋ, t) = 0 ja q(x,ẋ, t) 0 Parametrisoitu NLP-vektori on muotoa ja NLP-tehtävä muotoa y T = (x 1,x 2,,x N, t N ) min y φ(x N ) p(x i,ẋ i, t i ) = 0 q(x i,ẋ i, t i ) 0 ψ(x N, t N ) = 0, 85
missä rajoitteet evaluoidaan kunkin välin h i keskipisteessä x i = x i + x i+1, ẋ i = x i+1 x i, t i = t i + t i+1 2 h i 2 + NLP-muuttujien ja rajoitteiden lukumäärä mahdollisesti pieni Jos ohjauksia ei saada eliminoitua analyyttisesti, menetelmän soveltaminen voi olla hankalaa 12.8 Muita menetelmiä Diskretointi + Dynaaminen ohjelmointi Haittapuolena dimensionaalisuuden kirous Hamilton-Jacobi-Bellman yhtälön ratkaiseminen kun tehtävä on diskontattu ja stationaarinen, niin ratkaistavana on lineaarinen differentiaaliyhtälösysteemi Stokastiset optimointimenetelmät (esim. geneettiset algoritmit) Soveltuvat ensisijaisesti kombinatorisille optimointitehtäville Laskennallisesti raskaita Voidaan soveltaa alkuyritteen laskentaan NLP-ratkaisijalle Liikkuvan horisontin ohjaus Ratkotaan alkuperäinen tehtävä lyhyemmällä horisontilla Päivitetään systeemin tila ohjaussekvenssin ensimmäisellä ohjauksella Toistetaan, kunnes ollaan viimeisessä solmussa Lopputuloksena alioptimaaliset ohjaukset joka solmulle Voidaan soveltaa alkuyritteen laskentaan NLP-ratkaisijalle 12.9 Lisätietoa Betts, J. T., Survey of Numerical Methods for Trajectory Optimization, Journal of Guidance, Control, and Dynamics, Vol. 21, No. 2, 1998, pp. 193 207 Hull, D. G., Conversion of Optimal Control Problems into Parameter Optimization Problems, Journal of Guidance, Control, and Dynamics, Vol. 20, No. 1, 1997, pp. 57 60 Seywald, H., Trajectory Optimization Based on Differential Inclusion, Journal of Guidance, Control, and Dynamics, Vol. 17, No. 3, 1994, pp. 480 487 86