4 Optimointitehtävä ja sen ratkaiseminen Optimointitehtävä Optimointitehtävän diskretointi

Samankaltaiset tiedostot
Mat Työ 1: Optimaalinen lento riippuliitimellä

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

Optimaalinen lento riippuliitimellä

Luento 2: Liikkeen kuvausta

Harjoitus 4: Matlab - Optimization Toolbox

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

12 Jatkuva-aikaisten tehtävien numeerinen ratkaiseminen

Kimppu-suodatus-menetelmä

Numeeriset menetelmät

Luento 11: Rajoitusehdot. Ulkopistemenetelmät

MS-C1340 Lineaarialgebra ja

2v 1 = v 2, 2v 1 + 3v 2 = 4v 2.. Vastaavasti ominaisarvoa λ 2 = 4 vastaavat ominaisvektorit toteuttavat. v 2 =

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt

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

Demo 1: Simplex-menetelmä

Harjoitustyö 3. Heiluri-vaunusysteemin parametrien estimointi

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

KJR-C1001 Statiikka ja dynamiikka. Luento Susanna Hurme

Numeeriset menetelmät

Numeeriset menetelmät

Differentiaali- ja integraalilaskenta 1 Ratkaisut 5. viikolle /

1. Olkoot vektorit a, b ja c seuraavasti määritelty: a) Määritä vektori. sekä laske sen pituus.

Harjoitus 8: Excel - Optimointi

Mat Dynaaminen optimointi, mallivastaukset, kierros 5

Differentiaali- ja integraalilaskenta 2 (CHEM) MS-A0207 Hakula/Vuojamo Kurssitentti, 12.2, 2018, arvosteluperusteet

Differentiaaliyhtälöryhmä

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

Ilmataisteluohjuksen ohjauslain identifiointi Bayesin. Mat Sovelletun matematiikan erikoistyöt

1 Perusteita lineaarisista differentiaaliyhtälöistä

Matematiikan tukikurssi

Numeeriset menetelmät Pekka Vienonen

1 Di erentiaaliyhtälöt

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

Harjoitus Tarkastellaan luentojen Esimerkin mukaista työttömyysmallinnusta. Merkitään. p(t) = hintaindeksi, π(t) = odotettu inflaatio,

Yhden muuttujan funktion minimointi

Harjoitus 3 ( )

Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 2017 Insinöörivalinnan matematiikan koe , Ratkaisut (Sarja A)

Luento 4: Liikkeen kuvausta, differentiaaliyhtälöt

Malliratkaisut Demot

infoa Viikon aiheet Potenssisarja a n = c n (x x 0 ) n < 1

[xk r k ] T Q[x k r k ] + u T k Ru k. }.

Jos siis ohjausrajoitusta ei olisi, olisi ratkaisu triviaalisti x(s) = y(s). Hamiltonin funktio on. p(0) = p(s) = 0.

Tekijä Pitkä matematiikka Suoran pisteitä ovat esimerkiksi ( 5, 2), ( 2,1), (1, 0), (4, 1) ja ( 11, 4).

Malliratkaisut Demot

1. Lineaarinen optimointi

Yleistä. Aalto-yliopisto Perustieteiden korkeakoulu Matematiikan ja systeemianalyysin laitos

BM20A5800 Funktiot, lineaarialgebra ja vektorit Harjoitus 4, Syksy 2016

Diskreettiaikainen dynaaminen optimointi

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

12. Differentiaaliyhtälöt

Normaaliryhmä. Toisen kertaluvun normaaliryhmä on yleistä muotoa

y + 4y = 0 (1) λ = 0

MAB3 - Harjoitustehtävien ratkaisut:

k=0 saanto jokaisen kolmannen asteen polynomin. Tukipisteet on talloin valittu

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

MS-A0104 Differentiaali- ja integraalilaskenta 1 (ELEC2) MS-A0106 Differentiaali- ja integraalilaskenta 1 (ENG2)

12. Hessen matriisi. Ääriarvoteoriaa

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

1 Rajoitettu optimointi I

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

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

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

3 Määrätty integraali

Harjoitus 3 ( )

Dynaamisten systeemien teoriaa. Systeemianalyysilaboratorio II

MAB3 - Harjoitustehtävien ratkaisut:

13. Taylorin polynomi; funktioiden approksimoinnista. Muodosta viidennen asteen Taylorin polynomi kehityskeskuksena origo funktiolle

Differentiaali- ja integraalilaskenta

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

KJR-C1001 Statiikka ja dynamiikka. Luento Susanna Hurme

Luento 3: Liikkeen kuvausta, differentiaaliyhtälöt

Juuri 12 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty

y = 3x2 y 2 + sin(2x). x = ex y + e y2 y = ex y + 2xye y2

Luento 9: Yhtälörajoitukset optimoinnissa

5 Differentiaaliyhtälöryhmät

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

= 6, Nm 2 /kg kg 71kg (1, m) N. = 6, Nm 2 /kg 2 7, kg 71kg (3, m) N

Laskuvarjohyppy. painovoima, missä on maan vetovoiman aiheuttama kiihtyvyys, sekä ilmanvastus, jota arvioidaan yhtälöllä

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

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

Optimaalisuusehdot. Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0

Harjoitus 6 ( )

Ristitulolle saadaan toinen muistisääntö determinantin avulla. Vektoreiden v ja w ristitulo saadaan laskemalla determinantti

Johdatus diskreettiin matematiikkaan Harjoitus 5, Ratkaise rekursioyhtälö

Osakesalkun optimointi

5. Numeerisesta derivoinnista

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

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

Antti Rasila. Kevät Matematiikan ja systeemianalyysin laitos Aalto-yliopisto. Antti Rasila (Aalto-yliopisto) MS-A0204 Kevät / 16

Differentiaaliyhtälöryhmän numeerinen ratkaiseminen

3.4 Liike-energiasta ja potentiaalienergiasta

LIITE 1 VIRHEEN ARVIOINNISTA

Kertaus. Integraalifunktio ja integrointi. 2( x 1) 1 2x. 3( x 1) 1 (3x 1) KERTAUSTEHTÄVIÄ. K1. a)

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

Mat Matematiikan peruskurssi K2

mlnonlinequ, Epälineaariset yhtälöt

Luodin massajakauman optimointi

Mat Dynaaminen optimointi, mallivastaukset, kierros 11

3 x 1 < 2. 2 b) b) x 3 < x 2x. f (x) 0 c) f (x) x + 4 x Etsi käänteisfunktio (määrittely- ja arvojoukkoineen) kun.

Transkriptio:

Suhteellisesti navigoivan lentolaitteen maksimilentomatkasta Mat-2.108 Sovelletun matematiikan erikoistyöt Pentti Säynätjoki 29. tammikuuta 2001 Sisältö 1 Johdanto 3 2 Mallit 5 2.1 Lentokoneen malli......................... 5 2.2 Ohjuksen malli.......................... 6 2.2.1 Suhteellinen navigointi.................. 6 2.2.2 Ohjuksen dynamiikan malli............... 9 3 Maksimiampumaetäisyyden laskeminen annettua ohjausta käyttävän lentokoneen tapauksessa 10 3.1 Laskentamenetelmä........................ 10 3.2 Yhtälöryhmän numeerinen ratkaiseminen............ 12 1

4 Optimointitehtävä ja sen ratkaiseminen 12 4.1 Optimointitehtävä......................... 12 4.2 Optimointitehtävän diskretointi................. 14 4.3 Diskretoidun optimointitehtävän numeerinen ratkaiseminen.. 15 5 Tulokset 16 5.1 Peliratkaisu suhteellisesti navigoivaa ohjusta vastaan..... 16 5.2 Optimiratkaisu suhteellista navigointia vastaan......... 18 5.2.1 Algoritmin toiminta................... 18 5.2.2 Tuloksia.......................... 22 6 Yhteenveto 22 Tiivistelmä Tässä työssä tutkitaan ilmataistelun mallia, jossa suhteellisesti navigoiva lentolaite pyrkii tavoittamaan vapaasti lentävän lentokoneen. Työssä pyritään vertaamaan lentolaitteen maksimilentomatkoja erilaisilla oletuksilla osapuolten toimintatavoista. Yhtäältä etsitään lentokoneen kannalta optimaalisia ratkaisuja soveltaen direct shooting - menetelmää tilanteesta muodostettuun optimointitehtävään. Toisaalta verrataan toisaalla lasketun optimaalisen peliratkaisun antamia tuloksia tuloksiin, jotka saadaan kun lasketaan suhteellisesti navigoivan lentolaitteen maksimilentomatka peliratkaisun mukaan toimivaa lentokonetta vastaan. Erot lentomatkoissa näiden tapausten välillä todetaan varsin suuriksi. 2

1 Johdanto Käytettäessä maaliinhakeutuvia ohjuksia ilmataistelussa on hyödyllistä tuntea käytettävien ohjusten suorituskyky, jotta ohjuksia ei tuhlata ennenaikaisiin laukauksiin. On myös hyvä, jos lentäjillä on tiedossa mahdollisimman hyviä väistötekniikoita vastustajan ohjuksia vastaan. Näitä kahta toisiinsa liittyvää ongelmaa on tutkittu melko paljon ja aiheesta on olemassa myöskin varsin paljon julkaisuja, vaikka suuri osa tutkimuksesta lieneekin julistettu salaiseksi. Ohjuksen väistämisessä voidaan erottaa kaksi eri osaa, ohjukselta pakeneminen (missile outrunning), ja loppupeli (end game) [7]. Pakenemisessa tavoitteena on ohjata lentokonetta siten, että ohjukselta loppuu energia (nopeus) ennen kuin se saa lentokoneen kiinni. Katso esim. [2, 7]. Kiinniotto voidaan määritellä esimerkiksi niin, että ohjus saavuttaa lentokoneen, mikäli se pääsee ennalta määritettyä rajaetäisyyttä lähemmäksi lentokonetta. Loppupeliin joudutaan, kun alkutilanne on sellainen, että lentokone ei voi pakenemalla väistää ohjusta. Loppupelissä tavoitteena voi olla esimerkiksi maksimoida ohjuksen ja koneen välinen minimietäisyys. Tällä pyritään maksimoimaan lentokoneen mahdollisuudet selvitä kohtaamisesta. Erilaisia loppupeliongelmia ovat tutkineet esimerkiksi Ong ja Pierson sekä Pöyhönen [1, 5, 6]. Näiden ongelmien ratkaisemisessa voidaan käyttää erilaisia menetelmiä riippuen siitä, miten paljon ohjuksen ohjauslaista tiedetään. Mikäli ohjuksen ohjauslakia ei tunneta, voidaan ongelmaa lähestyä pelinä ja pyrkiä löytämään lentokoneelle parhaat mahdolliset ohjaukset olettaen, että ohjus käyttää omalta kannaltaan parhaita ohjauksia [2]. Tässä työssä kuitenkin ohjuksen ohjauslaki oletetaan tunnetuksi. Kun ohjuksen ohjauslaki tunnetaan, tilannetta voidaan käsitellä dynaamisena optimointitehtävänä. Dynaamisen optimointitehtävän ratkaisemisessa voidaan käyttää monia menetelmiä, joita voidaan luokitella eri tavoilla. Eräs 3

usein käytetty jako on jako epäsuoriin ja suoriin menetelmiin. Epäsuorissa menetelmissä johdetaan tehtävän optimaalisuusehdot ja optimaalinen ohjaus saadaan ratkaisemalla optimaalisuusehtojen muodostama differentiaaliyhtälöryhmä. Suorissa menetelmissä taas muodostetaan joko lentoradalle tai ohjaukselle alkuarvaus ja tästä alkuarvauksesta lähtien etsitään optimaalinen lentorata ja ohjaus. Optimiratkaisun etsimisessä yleisimmin käytetään erilaisia diskretointimenetelmiä, joissa systeemistä muodostetaan staattinen epälineaarinen optimointitehtävä diskretoimalla dynaaminen tehtävä ajan suhteen ja tämä diksretoitu tehtävä ratkaistaan jollain epälineaarisen optimoinnin menetelmällä. Tällöin voidaan käyttää hyväksi olemassaolevia epälineaarisen ohjelmoinnin ohjelmistopaketteja. Diskretointia voidaan käyttää sekä suorien että epäsuorien menetelmien yhteydessä. Näitä menetelmiä ovat esitelleet artikkeleissaan mm. Hull ja Betts [3, 4]. Tässä työssä muodostettava dynaaminen optimointitehtävä ratkaistaan käyttäen diskretointiin perustuvaa suoraa direct shooting-menetelmää, jossa päätösmuuttujina ovat ohjaukset diskretointipisteissä. Saatu epälineaarinen optimointitehtävä ratkaistaan SQP algoritmilla. SQP (Sequential Quadratic Programming) algoritmi on numeerinen, iteratiivinen menetelmä epälineaarisen optimointitehtävän ratkaisemiseen. Algoritmi toimii siten, että optimointitehtävän kohdefunktiolle muodostetaan neliöllinen approksimaatio ja rajoitteille lineaariset approksimaatiot kullakin iteraatiokierroksella edellisellä kierroksella saadun ratkaisupisteen ympäristössä ja ratkaistaan näin saatu neliöllinen optimointitehtävä. Neliöllisen tehtävän ratkaisuna saadaan etsintäsuunta, jonka suunnassa suoritetaan viivahaku alkuperäiselle optimointitehtävälle muodostetun Lagrangen sakkofunktion minimipisteen löytämiseksi. Näin löydetty minimipiste otetaan seuraavalle iteraatiokierrokselle ratkaisun approksimaatioksi ja iteraatiota jatketaan, kunnes optimi löydetään. Shinar et al. ovat verranneet peliratkaisun ja optimointiratkaisun tuottamia 4

maksimiampumaetäisyyksiä tapauksessa, jossa lentokone ja ohjus on rajoitettu vaakatasoon ja lentokoneen oletetaan lentävän vakionopeudella. [7] Tässä työssä on tarkoitus tehdä Shinarin työtä vastaava tutkimus kolmiulotteisessa tapauksessa, jossa myös lentokoneen nopeus on vapaa. Vertailussa käytettävä peliratkaisu on laskettu viittessä [2] ja optimiratkaisun ohjaukset lasketaan tässä työssä. Työssä verrataan maksimiampumaetäisyyttä tietyistä alkuarvoista kolmessa eri tapauksessa: 1. kun ohjus ja lentokone toimivat optimaalisen peliratkaisun mukaan [2] 2. kun suhteellisesti navigoiva ohjus ammutaan peliratkaisun satulapisteohjausta käyttävää lentokonetta kohti ja 3. kun lentokone suorittaa optimaalisen väistön suhteellisesti navigoivaa ohjusta vastaan. 2 Mallit 2.1 Lentokoneen malli Lentokonetta kuvataan pistemassana. Koneen massa oletetaan vakioksi. Pistemassamallissa koneen liikeyhtälöt ovat seuraavat [8]: _x p = v p cos fl p cos χ p _y p = v p cos fl p sin χ p _h p = v p sin fl p _fl p = g v p (n cos μ cos fl p ) _χ p = g v p n sin μ cos fl p _v p = 1 m p fut max;p (h; M) D p (M; n; m; q)g g sin fl p (1) 5

Lentokoneen ohjaukset ovat kuormitusmonikerta n, joka ilmoittaa koneen lentosuuntaa vastaan kohtisuoran kiihtyvyyden Maan vetovoiman kiihtyvyyden (g) monikertana, kallistuskulma μ ja kaasuasetus u, joka ilmoitetaan osuutena maksimityöntövoimasta T max;p (h p ;M p ). Tilamuuttujat ovat paikkamuuttujat x p ja y p [m], korkeus h p [m], ratakulma fl p [rad] (lentoradan ja xy-tason välinen kulma), suuntakulma χ p [rad] (lentoradan ja xh-tason välinen kulma) ja nopeus v p [m=s]. [1] Lentokoneen maksimityöntövoima T max;p (h p ;M p ) approksimoidaan korkeudesta h p ja Machin luvusta M p riippuvalla polynomilla. Koneeseen vaikuttava kokonaisvastusvoima D p (M; n; q; m) on muotoa D p (M; n; q; m) = C D (M; n; q; m) S q(h; v): (2) Kokonaisvastuskertoimen C D oletetaan noudattavan kvadraattista polaaria, jolloin se on muotoa C D (M; n; q; m) = C D0 (M) +C 2 L (n; q; m) C D I (M): (3) Approksimaatiot nollavastuskertoimelle C D0 ja indusoidun vastuksen kertoimelle C DI saadaan Machin luvun funktiona lentokoneen mallista ja nostovoimakerroin C L (n; q; m) = nmg. Lentokoneen referenssipinta-alaa merkitään Sq S:llä [2]. Ilmakehämallina käytetään ISA-standardi-ilmakehämallia. Ilmakehämallista saadaan ilman tiheys ρ(h) sekä Machin luku M(h; v). Kineettinen paine taas lasketaan seuraavasti: q(h; v) = 1 2 ρ(h)v2 (4) 2.2 Ohjuksen malli 2.2.1 Suhteellinen navigointi Suhteellisessa navigoinnissa ohjuksen kulmanopeutta pyritään muuttamaan jossain suhteessa ohjuksen ja lentokoneen välisen suuntiman muutosnopeu- 6

teen. Suuntima on ohjuksen ja lentokoneen välinen kulma mitattuna jonkin referenssiakselin suhteen. Tässä työssä käytetyssä mallissa kulmanopeuden muutos toteutetaan ohjuksen nopeutta vastaan kohtisuoralla ohjauskiihtyvyydellä. Ohjauskiihtyvyys on muotoa a m = N m V _ c ; (5) missä N m on ohjuksen navigaatiovakio, V c on ohjuksen ja lentokoneen välinen lähestymisnopeus ja _ on suuntiman muutosnopeus. Mallissa oletetaan, että ohjus pystyy mittaamaan lähestymisnopeuden ja suuntiman muutosnopeuden tarkasti, ilman mittausvirhettä. Suuntiman muutosnopeuden johtamisessa referenssiakselina käytetään yksinkertaisuuden vuoksi x-akselia, vaikka ohjus tietysti mittaa suuntiman oman pituusakselinsa suhteen. Suuntiman muutosnopeuteen tämä ero ei kuitenkaan vaikuta, kun oletetaan, että ohjus kulkee koko ajan pituusakselinsa suuntaan. Suuntima voidaan jakaa vaaka- ja pystysuoriin komponentteihin χ ja fl. Kun merkitään ohjuksen ja lentokoneen välisen etäisyyden komponentteja x-, y- ja h-akselien suunnassa r x :llä, r y :llä ja r h :lla, voidaan x- akselin suhteen mitatun suuntiman komponentit laskea ohjuksen ja lentokoneen paikkojen perusteella seuraavasti: χ = arctan( r y r x ) fl = arctan( r h q r 2 x + r 2 y ) ja näiden muutosnopeuksiksi saadaan _ χ = r x _r y r y _r x r 2 x + r2 y _ fl = (r2 x + r2 y )_r h r h r x _r x r h r y _r y (r 2 x + r2 y )3=2 (1 + r2 h r 2 x +r2 y ) : (6) Mallissa haluttu ohjauskiihtyvyys jaetaan kahteen komponenttiin a fl ja a χ joista ensimmäinen muuttaa ohjuksen ratakulmaa ja toinen suuntakulmaa. Ohjauskiihtyvyydet saadaan vastaavista suuntiman muutosnopeuden kom- 7

poneneteista seuraavasti: a fl;h = N m V c _ fl a χ = N m V c _ χ (7) Pystysuuntaisessa ohjauskiihtyvyydessä a fl;h kompensoidaan lisäksi maan vetovoiman kiihtyvyys, jolloin ohjauskiihtyvyydeksi saadaan a fl = N m V _ c fl + g cos fl m :fl m on ohjuksen ratakulma, joka on määritelty vastaavasti kuin lentokoneen ratakulma yhtälössä (1). Halutut ohjauskiihtyvyydet ovat siis a fl = N m V c _ fl + g cos fl m a χ = N m V c _ χ : (8) Ohjuksen ohjauskiihtyvyyden itseisarvo on lisäksi rajoitettu rakenteellisista syistä johonkin arvoon a max ja sitä rajoittaa myöskin ohjuksen suurin sallittu nostovoimakerroin C L;max, josta saadaan suurimmaksi sallituksi ohjauskiihtyvyydeksi a c;max = C l;maxv 2 m Smρ(hm) 2m m Halutun ohjauskiihtyvyyden itseisarvo ona = q a 2 fl + a 2 χ. Toteutettavissa oleva ohjauskiihtyvyyden itseisarvo on siis a tot = maxfa; a max ;a c;max g: Kun tämä jaetaan haluttujen ohjauskiihtyvyyksien suhteessa pysty- ja vaakakomponentteihin, saadaan a fl;tot = a fl a tot a a χ;tot = a χ a tot a (9) 8

2.2.2 Ohjuksen dynamiikan malli Ohjuksen massapistemalli on seuraavanlainen: _x m = v m cos fl m cos χ m _y m = v m cos fl m sin χ m _h m = v m sin fl m _fl m = a tfl g cos fl m _χ m = v m a tχ v m cos fl m _v m = T m(t) D m (h m ;v m ;M m ;a tfl ;a tχ ;m m (t)) m m (t) _a tfl = a fl;tot a tfl fi _a tχ = a χ;tot a tχ fi g sin fl m (10) Ohjuksen tilamuuttujat ovat paikkakoordinaatit x m ja y m, korkeus h m, ratakulma fl m, suuntakulma χ m ja nopeus v m, jotka on määritelty vastaavasti kuin lentokoneen tilamuuttujat yhtälössä (1). a tfl ja a tχ ovat toteutuvat ohjauskiihtyvyydet, kun ohjauksen hitautta approksimoidaan ensimmäisen kertaluvun systeemillä ja halutut ohjauskiihtyyvyydet saadaan yhtälöstä (9). Ohjuksen työntövoima T m (t) ja massa m m (t) saadaan suoraan ajan funktiona ohjusmallista. Tässä työssä käytettävä malli on muotoa m m (t) = T m (t) = 8 >< >: 8 >< >: 22760; 0» t» 3 5400; 3 <t» 15 0; t>15 150 8:0751 t; 0» t» 3 131:5488 1:9067 t; 3 <t» 15 102:948; t>15: Ohjukseen vaikuttavan kokonaisvastusvoiman oletetaan noudattavan vastaavaa kvadraattista polaaria kuin lentokoneen vastusvoima. Ohjuksen sivuttaiskiihtyvyyden itseisarvo a n saadaan suoraan ohjuksen ohjauskiihtyvyyksistä: a n = q a 2 tfl + a 2 tχ: Vastus on siis muotoa D p (M;a n ;q;m) = C D (M;a n ;q;m) S q(h; v); (11) 9

missä C D (M;a n ;q;m) = C D0 (M) +C 2 L (a n;q;m) C DI (M): (12) Nostovoimakerroin C L (a n ;q;m) lasketaan ohjuksen sivuttaiskiihtyvyydestä, massasta ja kineetttisestä paineesta: C L (a n ;q;m)= a nm Sq (13) ja vastuskertoimet C D0 ja C DI saadaan ohjusmallista Machin luvun funktiona. 3 Maksimiampumaetäisyyden laskeminen annettua ohjausta käyttävän lentokoneen tapauksessa 3.1 Laskentamenetelmä Tässä luvussa esitetään menetelmä, jolla voidaan laskea suhteellisesti navigoivan ohjuksen maksimiampumaetäisyys annettua ohjausta käyttävää lentokonetta vastaan annetusta alkutilasta. Suhteellisessa navigoinnissa ohjus mittaa lentokoneen etäisyyttä ja suuntimaa ja näiden mittausten perusteella seuraa lentokonetta ennalta määrätyn ohjauslain mukaan. Tällöin ohjuksen ohjaukset ja siis myös lentorata määräytyvät täysin systeemin alkutilasta ja lentokoneen ohjauksista. Merkitään X(t) = [x p (t) y p (t) h p (t) fl p (t) χ p (t) v p (t) ::: x m (t) y m (t) h m (t) fl m (t) χ m (t) v m (t) a tfl (t) a tχ (t)] U(t) = [n(t) μ(t) u(t)] t 2 [0;t f ] (14) ja F (X; U) on vektoriarvoinen funktio, jonka komponentteina ovat oikeat puolet yhtälöistä (1) ja (10). 10

Kun tunnetaan ohjaus U(t);t 2 [0;t Λ f ] ja alkutila X 0, saadaan X(t 1 );t 1 <t f ratkaistua integroimalla differentiaaliyhtälö _X(t) = F (X(t);U(t)) (15) välillä [0 t 1 ]. alkuehdolla X(0) = X 0 Määritellään vielä lentokoneen ja ohjuksen välinen etäisyys: q r(x) = (x p x m ) 2 +(y p y m ) 2 +(h p h m ) 2 (16) ja kiinniotto siten, että ohjus on saanut lentokoneen kiinni hetkellä t, jos r(x(t))» r c Ohjus siis saa lentokoneen kiinni, mikäli se pääsee rajaetäisyyttä r c lähemmäs lentokonetta. Rajatapauksessa, jossa ohjus juuri ja juuri saa lentokoneen kiinni, luonnollisesti etäisyys on r c ja lähestymisnopeus =0eli r(x(t)) = r c _r(x(t)) = 0: (17) Samaa kiinniottoehtoa käytetään viitteessä [2] ja tämän työn toisessa osassa, jossa optimoidaan lentokoneen ohjaukset suhteellisesti navigoivaa ohjusta vastaan. Näillä merkinnöillä voidaan muodostaa seuraavanlainen tehtävä maksimiampumaetäisyyden laskemiseksi: Olkoon annettu U(t);t 2 [0;t f ] ja X 0 poislukien x m (0). Määritä x m (0) ja t Λ f <t f siten, että ohjus vielä saa lentokoneen kiinni. Yhdistämällä edellä sanallisesti annettu tehtävä kiinniottorajan määritelmään (17) voidaan muodostaa kahden yhtälön ja kahden tuntemattoman epälineaarinen yhtälöryhmä joka voidaan ratkaista numeerisesti. r(x m0 ;t Λ f ) = r c _r(x m0 ;t Λ f ) = 0; (18) 11

3.2 Yhtälöryhmän numeerinen ratkaiseminen Edelläkuvattu tehtävä ratkaistiin CSC Tieteellinen laskenta Oy:n laskentapalvelimella Fortran 90 ohjelmointikieltä ja NAG aliohjelmakirjastoa käyttäen. Loppuehtojen arvojen laskemisessa tarvittava integrointi suoritettiin NAG aliohjelmakirjaston differentiaaliyhtälön alkuarvotehtävän ratkaisimella D02PCF. D02PCF ratkaisee tehtävän käyttäen Runge-Kutta menetelmää muuttuvalla askelpituudella. Yhtälöryhmän ratkaisemiseen käytettiin NAG-kirjaston rutiinia C05NBF, jolle muuttujat annettiin skaalattuina siten, että niiden arvot olivat samaa suuruusluokkaa. Skaalauksella pyritään parantamaan yhtälöryhmän ratkaisuiteraation suppenemista ratkaisuun. 4 Optimointitehtävä ja sen ratkaiseminen 4.1 Optimointitehtävä Merkitään X(t) = [x p (t) y p (t) h p (t) fl p (t) χ p (t) v p (t) ::: x m (t) y m (t) h m (t) fl m (t) χ m (t) v m (t) a tfl (t) a tχ (t)] U(t) = [n(t) μ(t) u(t)] t 2 [0;t Λ f ] (19) ja F (X; U) on vektoriarvoinen funktio, jonka komponentteina ovat oikeat puolet yhtälöistä (1) ja (10). Olkoot ohjauksen ylä- ja alarajat vektoreina U l ja U u, kineettisen paineen yläraja q p;max ja lentokoneen minimikorkeus h p;min ja määritellään lentokoneen ja ohjuksen välinen etäisyys r(x(t)) yhtälön (16) mukaisesti. Loppuhetkel- 12

lä t f tulee olla voimassa samat kiinniottoehdot kuin edellä, eli loppuehdot saadaan yhtälöstä (17). Tehtävänä on maksimoida ampumaetäisyys r(x(0)) siten, että tilayhtälöt, loppuehdot ja polkurajoitteet ovat voimassa eli optimointitehtäväon muotoa max U;t f ;X 0 s.e. r(x(0)) _X = F (X; U) X(0) = X 0 r(x(t f )) = r c _r(x(t f )) = 0 U l» U(t)» U u q p (t)» q p;max h p (t) h p;min (20) Kun asetetaan alkuhetkeksi t = 0, sijoitetaan alkuhetkellä lentokone xytason origon yläpuolelle ja ohjus negatiiviselle x-akselille ja kiinnitetään muut alkuarvot siten, että alkutila on haluttu, saadaan optimointitehtäväksi min U;t f ;x m0 s.e. x m0 _X = F (X; U) X(0) = X 0 r(t f ) = r c _r(t f ) = 0 U l» U(t)» U u q p (t)» q p;max h p (t) h p;min (21) Eri ampumasuuntien vaikutus voidaan tässä tehtävässä ottaa huomioon muuttamalla lentokoneen suuntakulmaa lähtöhetkellä (χ p0 ). 13

4.2 Optimointitehtävän diskretointi Tehtävä (21) ratkaistaan direct shooting menetelmällä, jossa dynaaminen optimointitehtävä muutetaan epälineaariseksi optimointitehtäväksi diskretoimalla ajan suhteen ja ottamalla optimointitehtävän päätösmuuttujiksi ohjaukset diskretointipisteissä, loppuaika ja lähtöetäisyys. Diskretointipisteiden välillä ohjaus interpoloidaan lineaarisesti ohjauksen arvoista diskretointipisteissä. [3] Valitussa pisteistössä diskretointivälit ovat vakiopituisia ensimmäisen 15 sekunnin ajan, riippuen ainoastaan valitusta diskretointipisteiden määrästä. Tämä väli on jaettu edelleen kahtia siten, että diskretointivälin pituus muuttuu hetkellä t =3s, ja yksi diskretointipiste on aina hetkellä t =3s. 15 sekunnin jälkeen diskretointivälin pituus muuttuu loppuajan muuttuessa siten, että diskretointivälit ovat samanpituisia.[6] Jakopisteiksi on valittu 3 ja 15 sekuntia, koska ohjuksen moottorin työntövoima muuttuu kyseisinä hetkinä ja tilannetta kuvaavassa differentiaaliyhtälösysteemissä on epäjatkuvuuskohta. Loppuehtojen ja polkurajoitteiden arvot saadaan integroimalla yhtälösysteemi _X = F (X; U) X(0) = X 0 välillä [0 t f ] ja laskemalla diskretointipisteitä vastaavat rajoitefunktioiden arvot X:n arvoista diskretointipisteissä. Polkurajoitteiden arvot tutkitaan jokaisessa diskretointipisteessä erikseen, ja ratkaisua pidetään käypänä, mikäli rajoitteet toteutuvat kaikissa diskretointipisteissä. Olkoon diskretointipisteiden lukumäärä N: Merkitään ohjauksen arvoa diskretointipisteessä i vektorilla U i =[n i ;μ i ;u i ];i =1;:::;N, loppuaikaa t f :llä ja ohjuksen lähtöetäisyyttä x m0 :lla. Tällöin epälineaarisen optimointitehtävän päätösmuuttujavektoriksi saadaan Y =[U 1 ;U 2 ;:::;U N ;t f ;x m0 ] 14

ja epälineaarinen optimointitehtävä on seuraavanlainen min Y s:e: x m0 h p;i h p;min ;i =1:::N 0» q i» q p;max ;i =1:::N U l» U i» U u ;i =1:::N r N = r c _r N = 0; (22) missä U l ja U u ovat ohjausten ylä- ja alarajat, r N = r(x(t f )) ja _r N = _r(x(t f )): 4.3 Diskretoidun optimointitehtävän numeerinen ratkaiseminen Optimointitehtävän ratkaisemisessa tarvittavat laskut suoritettiin samassa ympäristössä kuin edellä kappaleessa 3.2 yhtälöryhmän ratkaisemisesta kerrottiin. Integrointirutiini toteutettiin siten, että se palautti systeemin tilan kaikissa diskretointipisteissä. Nämä tiedot tarvittiin polkurajoitteiden arvojen laskemiseen. Itse optimointitehtävä (22) ratkaistiin NAGin aliohjelmalla E04UCF, joka on monipuolinen SQP-algoritmin toteutus. Algoritmissa tarvittavat rajoitusehtojen gradientit laskettiin numeerisesti lukuun ottamatta niitä gradienttialkioita, joiden tiedettiin olevan =0. Kohdefunktion gradientti laskettiin analyyttisesti. Jotta SQP-algoritmi suppenisi optimipisteeseen luotettavasti, on muuttujat skaalattava siten, että muuttujien arvot ja rajoitteiden ja kohdefunktion gradienttien arvot ovat samaa suuruusluokkaa. 15

5 Tulokset 5.1 Peliratkaisu suhteellisesti navigoivaa ohjusta vastaan Viitteessä [2] on muun muassa tutkittu lentokoneen ja ohjuksen kohtaamista peliteorettisesti. Kyseisessä tutkimuksessa lentokoneen ja ohjuksen dynamiikka-, aerodynamiikka- ja työntövoimamallit ohjuksen ohjauslakia lukuunottamatta ovat samat kuin tässä työssä käytetyt. Ohjuksen ohjauslaista em. työssä ei oleteta mitään, vaan sekä lentokoneen että ohjuksen oletetaan toimivan pelissä omien tavoitteidensa kannalta optimaalisesti. Näillä oletuksilla on laskettu maksimaalisia ampumaetäisyyksiä erilaisista alkutilanteista. Tässä sovelletaan luvussa 3 kuvattua menetelmää tilanteeseen, jossa lentokone käyttää viitteessä kuvatulla menetelmällä laskettua optimiohjausta tietystä alkutilasta ja verrataan yhtälöryhmän ratkaisuna saatuja maksimiampumaetäisyyksiä viitteessä samasta alkutilasta saatuihin maksimietäisyyksiin. Tässä tilanteessa yhtälöryhmän ratkaisu toimi varsin hyvin, kun yhtälöryhmän tuntemattomat skaalattiin sopivasti. Riittävän hyvä skaalaus oli sellainen, jossa lähtöetäisyyden arvo jaettiin tuhannella ja loppuaika annettiin rutiinille sellaisenaan. Aivan kaikista alkuarvoista tosin ei oikeaa ratkaisua löytynyt, mutta se oli odotettavissakin. Kuitenkin viimeistään kolmannella yrityksellä sopiva alkuarvo yleensä löytyi, ja koska yksittäisen tapauksen ratkaiseminen ei kestänyt kuin enintään 10 sekuntia, oli ratkaisujen etsiminen aivan riittävän nopeaa tässä työssä tarvittaviin laskuihin. Maksimaaliset ampumaetäisyydet laskettiin kolmessa eri tapauksessa. Kaikissa tapauksissa v p0 = 400;v m0 = 300;h p0 = 3000;x p0 = y p0 = y m0 = fl p0 = fl m0 = χ m0 = a m0 = 0, kun taas x m0 ;h m0 ja χ p0 vaihtelivat tapauksesta toiseen. Taulukkoon 1onkoottu vertailua varten tässä työssä lasketut ja viitteen [2] kuvista arvioidut peliratkaisun antamat maksimietäisyydet (x m0 ) ja kohtaamisen kestoajat (t f ). 16

Taulukko 1: Peliratkaisun ja suhteellisen navigoinnin vertailu Lähtötila Peliratk. Peli vs. suht. h m0 χ p0 5000 0 6000 ß=2 6000 ß x m0 t f 33200 154 46800 163 54300 164 x m0 t f 13500 44,4 15700 46,4 21400 46,2 Tuloksista havaitaan, että maksimiampumaetäisyys on peliratkaisuun verrattuna huomattavasti lyhyempi ohjuksen käyttäessä puhtaasti suhteellista navigointia. Nyt tutkituissa tapauksissa etäisyys pienenee alle puoleen. Tämä tulos on tietysti odotettu, koska suhteellisella navigoinnilla ohjuksen liikehdintä on huomattavasti rajoitetumpaa kuin peliratkaisussa. Peliratkaisussa ohjus lentää vapaasti sellaisella lentoradalla joka maksimoi ampumaetäisyyden, kun taas suhteellissesti navigoivan ohjuksen liikkeet ovat suoraan kytketyt lentokoneen liikkeisiin. Tällöin ohjus ei pääse optimaaliselle lentoradalle, se menettää energiansa nopeammin kuin peliratkaisussa ja maksimiampumaetäisyys on pienempi. Optimaalisessa peliratkaisussa ohjus nousee lentonsa alkuvaiheessa voimakkaasti ylöspäin muun muassa vähentääkseen ilmanvastusta. Tätä voidaan verrata kuvassa 1 esitettyyn suhteellisesti navigoivan ohjuksen lentorataan samaa ohjausta käyttävää lentokonetta vastaan. Lähtötilanteessa ohjus on suoraan lentokoneen takana 5000 m korkeudessa lentokoneen ollessa 3000 m korkeudessa. Tässä ratkaisussa ohjus lähtee hieman alaspäin kunnes havaitessaan koneen lähtevän nousuun, nousee itsekin. Ensimmäisten kahden sekunnin jälkeen ohjus on nousussa koko ajan siihen saakka kunnes saa koneen kiinni. Ohjus siis nousee pitkän aikaa myöskin niin, että sen moottori on jo sammunut, mikä tietysti kuluttaa sen nopeutta hyvin nopeasti. Peliratkaisussa vastaavasti ohjus pyrkii nousemaan moottorillaan mahdollisimman korkealle pienempään ilmanvastukseen ja käyttää saavuttamaansa korkeutta hyväkseen säilyttääkseen nopeutensa. 17

Kuva 1: Lentokoneen ja ohjuksen radat ja nopeudet, kun lentokone käyttää optimaalista peliratkaisua ja ohjus suhteellista navigointia. x,h 7000 6000 5000 4000 3000 1 0.5 0 0.5 1 1.5 x 10 4 1000 500 0 500 0 5 10 15 20 25 30 35 40 5.2 Optimiratkaisu suhteellista navigointia vastaan Tässä työssä oli tarkoitus tutkia lentokoneen optimaalisia lentoratoja kaukaa ammuttua suhteellisesti navigoivaa ohjusta vastaan ja ohjuksen maksimiampumaetäisyyksiä erilaisista lähtötilanteista. 5.2.1 Algoritmin toiminta Edellä luvussa 4 on esitetty optimointitehtävä, jonka ratkaisuna saadaan lentokoneen optimaalinen lentorata suhteellisesti navigoivaa ohjusta vastaan ja algoritmi, jolla tämä optimointitehtävä voidaan ratkaista. Kuvatussa menetelmässä kuitenkin ilmeni työtä tehdessäni ongelmia, joiden vuoksi optimilentoratojen määrittäminen ei luotettavasti onnistunut. Ongelmalliseksi osoittautui SQP algoritmin parametrien löytäminen ja päätösmuuttujien ja rajoitusten skaalaaminen sopiviksi laskentaa varten. Myöskin numeerisen integroinnin rajallinen tarkkuus aiheutti ongelmia joissakin ti- 18

lanteissa. SQP algoritmin parametrit ja päätösmuuttujien skaalaukset liittyvät toisiinsa, sillä parametreissa on useita erilaisia käypyystoleransseja ja optimaalisuustoleransseja, joihin skaalaukset vaikuttavat suoraan. Suurimmat ongelmat algoritmin suppenemisessa liittyvät juuri päätösmuuttujien ja rajoitusten skaalaukseen siten, että algoritmi suppenisi nopeasti ja luotettavasti kohti todellista optimia. Paaätösmuuttujien ja rajoitusten skaalauksessa on se idea, että kaikkien päätösmuuttujien ja rajoitusten arvojen tulisi olla samaa suuruusluokkaa. Samoin rajoitusten osittaisderivaattojen päätösmuuttujien suhteen tulisi olla keskenään samassa suuruusluokassa. Tämän toteuttamiseksi tässä työssä kokeiltiin kolmea hieman erityyppistä skaalausmenetelmää. Yksinkertaisimmillaan skaalaus on sellainen, jossa kaikki päätösmuuttujien ja rajoitteiden arvot jaetaan optimointialgoritmin käynnistyksessä sopivilla luvuilla niin että optimointialgoritmille menevät luvut ovat sopivansuuruisia. Tässä päätösmuuttujina ovat ohjaukset kunakin ajanhetkenä ja rajoituksina ovat loppuehdot ja lentokoneen dynaamiset rajoitteet. Helpoiten skaalaus voidaan toteuttaa siten, että kutakin ohjauksen komponenttia skaalataan kaikkina ajanhetkinä samalla tavalla, samoin kuin dynaamisia rajoitteita. Skaalauskertoimen arvo tietysti riippuu skaalattavasta muuttujasta. Loppuehdoille voidaan myös ottaa lineaariset skaalaukset. Tämä skaalaus oli ensimmäinen jota yritettiin käyttää tässä työssä. Tässä skaalauksessa on kuitenkin ongelmana se, että ohjauksen vaikutus rajoitteen arvoon riippuu paljon siitä, onko ohjaus lennon alku- vai loppuvaiheessa. Alkuvaiheesa tehty pieni muutos vaikuttaa esimerkiksi lentokoneen ja ohjuksen loppuetäisyyteen huomattavasti enemmän kuin loppuvaiheessa tehty vastaavansuuruinen muutos. Siis etäisyyden osittaisderivaatat ohjauksien suhteen ovat erisuuruisia lennon eri vaiheissa. Tämä saattaa johtaa esimerkiksi siihen, että lennon lopppuvaiheiden ohjauskia ei optimoinnin kuluessa muuteta ollenkaan, vaikka seolisi tarpeen oikean optimin löytämiseksi. 19

Osittaisderivaattojen käyttäytymistä voi yrittää parantaa muuttamalla edelläkuvattua skaalausta siten, että ohjauksen komponenttien skaalauskertoimia muutetaan eri aikoina erilaisiksi Loppuvaiheessa ohjausmuuttujien arvot skaalataan pienemmiksi kuin alussa, jolloin pieni muutos ohjauksessa missä tahansa kohdassa vaikuttaa suunnilleen samalla tavalla rajoitusten arvoihin. Tätäkin yritettiin tässä työssä, mutta tulokset eivät olleet juurikaan parempia kuin vakioskaalauksilla saadut. Kummallakin menetelmällä ratkaisun löytyminen oli varsin satunnaista ja herkkää käytetylle alkuarvaukselle. Loppuehtoihin yritettiin myös soveltaa epälineaarista skaalausta arkustangenttifunktiolla, pyrkein pienetämään suurten virheiden vaikutusta optimoinnin loppuehdon arvoon, mutta tämänkään tyyppinen skaalaus ei merkittävästi vaikuttanut optimoinnin toimintaan. Oma lukunsa päätösmuuttujien skaalauksissa on ohjauksiin ja alkuarvoihin (lähtöetäisyys ja loppuaika) liittyvien päätösmuuttujien keskinäiset suuruussuhteet. Mikäli alkuarvomuuttujat on skaalattu pieniksi ohjauksiin nähden, saattavat ohjauksien muutokset vaikuttaa loppuehtoihin niin vähän, että niitä pidetään merkityksettöminä. Mikäli lisäksi alkuarvaus on käypä, käy niin, että ainoastaan lähtöetäisyys ja loppuaika muutetaan sellaisiksi että loppuehdot toteutuvat ja ohjauksia ei muuteta lainkaan. Algoritmi väittää näin saatua tulosta optimaaliseksi, vaikka se mitä ilmeisimmin ei ole optimaalinen. Kuvassa 2 on esimerkki selkeästi ei-optimaalisesta tuloksesta, jota E04UCF kuitenkin piti optimaalisena. Alkuarvaus on ollut ei-käypä siten, että lopussa lentokone on rikkonut kineettisen paineen rajaa. Ohjaukset ovat olleet ajan suhteen vakiot. Tässä on kyseessä edelläkuvattu tilanne, että ohjauksen muutokset lopussa vaikuttavat loppuehtoihin niin vähän, että niitä ei muuteta muuten kuin rajoitteiden täyttämiseksi. Optimointi on ainoastaan muuttanut kaasuasetusta niin, että kineettisen paineen raja täyttyy koko lennon ajan. Integrointitarkkuudesta johtuvat ongelmat tulevat esille lähinnä silloin, kun ohjus pääsee lähelle lentokonetta. Tällöin ohjuksen ohjauskiihtyvyydet tule- 20

Kuva2:Lentokoneen ja ohjuksen optimiradat ja lentokoneen optimiohjaukset x,y n 10 8 5 6 0 4 5 2 10 5000 4000 3000 800 600 400 200 1 0.5 0 0.5 1 x,h x 10 4 1 0.5 0 0.5 1 v x 10 4 0 0 10 20 30 myy 2 0 2 0.5 0 10 20 30 u 1 0 0 10 20 30 0 0 10 20 30 vat suuriksi ja integraalin arvon laskeminen vaatisi tietokoneen laskentatarkkuudelle liian lyhyttä askelpituutta. Tähän saattaa vaikuttaa myös ohjuksen kiihtyvyysrajoitteiden aktivoituminen, josta seuraa epäjatkuvuus tilannetta kuvaavaan differentiaaliyhtälösysteemiin. Kun integrointi keskeytetään askelpituuden pienenemisen vuoksi, tulee integroinnin lopputuloksesta väärä. Keskytyshetken jälkeisille ajanhetkille tilamuuttujien arvot ovat ne, mihin ne ovat edellisessä onnistuneessa integroinnissa jääneet. Tällöin loppuehtojen arvot ja osa rajoituksista lasketaan väärin, jolloin myös niitä vastaavat gradienttien arvot ovat väärät ja optimointialgoritmi menee sekaisin. Integroinnin keskeytymisestä aiheutuvat virheet voisi yrittää välttää sillä, että käyttäisi jotain integrointimenettelyä, joka ei valvo integrointiin liittyvää virhettä millään tavoin, esimerkiksi jotain kiinteän askelpituuden menetelmää. Tästä kuitenkin saattaisi seurata uusia ongelmia, kun integroinnin (eli kohdefunktion ja rajoitteiden) tarkkuudesta ei olisi mitään tietoa. Integrointiaskel jouduttaisiin myös valitsemaan melko pieneksi, mikä taas saattaisi vaikuttaa menetelmän tehokkuuteen. 21

Kuva 3:Lentokoneen optimiohjaukset takaa ammuttua ohjusta vastaan x,y n 0 8 200 400 1 0.5 0 x,h 0.5 1 x 10 4 3000 2000 1000 1 0.5 0 v 0.5 1 x 10 4 800 600 400 200 0 0 10 20 30 6 4 2 0 0 10 20 30 myy 2 0 2 0.5 0 10 20 30 u 1 0 0 10 20 30 5.2.2 Tuloksia Edellä esitetyistä syistä johtuen uskottavia tuloksia optimoinneista ei juurikaan saatu ja tulosten vertaamisessa peliratkaisun antamiin ei olisi juurikaan järkeä. Kuvassa 3 on lentokoneen lasketut optimiohjaukset ja optimaalinen lentorata, kun lentokone lähtee 3000 m korkeudesta nopeudesta 400 m/s ja ohjus suoraan lentokoneen takaa korkeudesta 1000 m ja nopeudesta 300 m/s. Lentorata täyttää oletetut optimaalisen lentoradan kriteerit siinä suhteessa, että ohjauksessa on "bang bang-rakenne kaasuasetuksen ja g-voimien suhteen. Kuitenkaan tämäkään tuskin todellisuudessa on optimaalinen ratkaisu tähän tehtävään vaan ainoastaan lokaali optimi. 6 Yhteenveto Tässä työssä tutkittiin keskipitkän matkan suhteellisesti navigoivan ilmataisteluohjuksen maksimiampumaetäisyyttä eri lähtötilanteista eri tavoin liikeh- 22

tivää lentokonetta vastaan. Yhtäältä verrattiin optimaalisen peliratkaisun mukaan liikehtivän ohjuksen maksimiampumaetäisyyttä etäisyyteen jolta suhteellisesti navigoiva ohjus saa peliratkaisun mukaisesti liikehtivän lentokoneen kiinni. Verrattaessa saatuja ampumaetäisyyksiä havaitaan, että suhteellisesti navigoivan ohjuksen ampumaetäisyys on huomattavasti peliratkaisun mukaan toimivan ohjuksen ampumaetäisyyttä pienempi. Eräs syy tähän voidaan löytää vertaamalla suhteelisesti navigoivan ja peliratkaisun mukaan toimivan ohjuksen lentoratoja pystysuunnassa. Suhteellisesti navigoivan ohjuksen lentorata on huomattavasti matalampi, jolloin siihen vaikuttava ilmanvastus on paljon suurempi kuin peliratkaisun mukaan toimivaan ohjukseen vaikuttava ilmanvastus. Tästä syystä suhteellisesti navigoiva ohjus menettää nopeuttaan huomattavasti nopeammin ja lentomatka jää lyhyemmäksi. Toisaalta tarkoituksena oli tutkia lentokoneen optimaalisia väistölentoratoja suhteellisesti navigoivaa ohjusta vastaan ja verrata optimaalisen väistön tuottamia ohjuksen maksimiampumaetäisyyksiä ampumaetäisyyksiin, jotka saadaan pelitehtävän ratkaisun mukaisesti lentävää lentokonetta vastaan. Tämän tehtävän ratkaisemiseksi muodostettiin optimointitehtävä, jonka tavoite oli löytää maksimaalinen ampumaetäisyys lentokoneen ja ohjuksen lentoon liittyvien fysikaalisten rajoitusten ollessa voimassa. Optimointitehtävä ratkaistiin diskretoimalla se direct shooting menetelmällä ajan suhteen. Direct shooting menetelmässä diskretoidun tehtävän päätösmuuttujiksi otettiin lentokoneen ohjaukset diskretointipisteissä ja rajoitusehtojen arvot laskettiin integroimalla tilayhtälösysteemiä lähtöhetkestä alkaen. Diskretoimalla saatu epälineaarinen optimointitehtävä ratkaistiin SQP algoritmilla. Muodostettu optimointitehtävä osoittautui kuitenkin oletettua hankalammaksi ratkaista, jolloin optimaalisen lentoradan ja ampumaetäisyyden laskentaa ei saatu toimimaan luotettavasti. Niinpä optimiratkaisun antamien ampumaetäisyyksien vertailu muihin ampumaetäisyyksiin ei onnistunut. 23

Ongelmat optimoinnin toiminnassa johtuivat kahdesta eri syystä. SQP-algoritmille oli hankalaa löytää sopivia parametrien arvoja ja päätösmuuttujien skaalauksia, joilla algoritmi olisi supennut luotettavasti kohti optimipistettä. Suppeneminen riippui olennaisesti myöskin käytetysä alkuarvauksesta. Toisaalta käytetty integrointimenettely aiheutti joissain tilanteissa ongelmia, kun vaadittua tarkkuutta integroinnin tulokselle ei voitu saavuttaa lyhentämättä askelpituutta liian pieneksi tietokoneen laskentatarkkuuteen nähden, jolloin integrointia ei voitu suorittaa loppuun. Päätösmuuttujien skaalaukseen yritettiin muutamaa erilaista skaalaustapaa, joista mikään ei toiminut ratkaisevasti muita paremmin. Yksi suurimmista ongelmista skaalauksiin liittyen oli, että eri ajanhetkinä ohjauksen vaikutus loppuehtojen arvoihin oli eri suuri. Tämän vuoksi lennon eri osissa olisi päätösmuuttujia skaalattava eri tavalla. Integrointitarkkuudesta johtuvan optimoinnin epäonnistumisen voisi estää käyttämällä jotain integrointimenettelyä, jossa ei valvota integroinnin tarkkuutta millään tavoin. Esimerkiksi voisi käyttää jotain kiinteän askelpituuden menetelmää sopivan pienellä integrointiaskeleella. Tästä tosin seuraisi todennäköisesti uusia ongelmia kun integroinnin tarkkuudesta ei olisi mitään varmuutta. Myös menetelmän tehokkuus saattaisi kärsiä, koska integroinnin askelpituus pitäisi valita melko pieneksi. Viitteet [1] S. Pöyhönen : "Takaa-ajotilanteen numeerisesta ratkaisusta", Sovelletun matematiikan erikoistyö, Systeemianalyysin laboratorio TKK, 1997 [2] T. Raivio : "Computational Methods for Dynamic Optimization and Pusuit-Evasion Games", Helsinki University of Technology, Systems Analysis Laboratory Research Report A80, 2000 [3] D. G. Hull : "Conversion of Optimal Control Problems into Parameter Optimization Problems", Journal of Guidance, Control and Dynamics, 24

Vol. 20, No. 1, 1997 [4] J.T. Betts: "Survey of Numerical Methods for Trajectory Optimization", Journal of Guidance, Control and Dynamics, Vol. 21, No. 2, 1998 [5] S. Y. Ong and B. L. Pierson: "Optimal Planar Evasive Aircraft Maneuvers Against Proportional Navigation Missiles", Journal of Guidance, Control and Dynamics, Vol. 19, No. 6, 1996 [6] S. Y. Ong and B. L. Pierson: "Optimal Evasive Maneuvers Against a SAM Guided by Proportional Navigation", AIAA-92-4348-CP [7] J. Shinar, M. Guelman, G. Silberman and A. Green: "On Optimal Missile Avoidance A Comparison Between Optimal Control and Differential Game Solutions", IEEE International Conference on Control and Applications Proceedings, 1989 [8] A. Miele: Flight mechanics, Addison-Wesley, Massachusetts, 1962 25