DET TEKNISK - NATURVITENSKAPELIGE FAKULTET Institutt for data- og elektroteknikk Løsningsforslag Eksamen i MIK3, Systemidentikasjon ( sp) Dato: onsdag 23 november 2 Lengde på eksamen: 4 timer Tillatte hjelpemidler: Kun standard enkel kalkulator, Citizen SR-27X, HP3S, Casio FX82 eller TI-3. Løsningsforslag Innhold Diskretisering av førsteordenssystem 2 2 Lodd som henger i ei fjør 2 3 Kalmanlter og RLS for parameterestimering 5
Diskretisering av førsteordenssystem (Antall poeng for denne oppgaven er ) Her har en G(s) y(s) u(s) 2 4s +.5 s +.25 2.25 s +.25. (.) I formeldelen av oppgaven er det oppgitt to transformasjonspar og en kan da nne L{ e ct } L{} L{e ct } s c + s c (.2) (s + c)s.a (5 poeng) Her har vi c.25 og T.5 og når en bruker relevant formel fra formelarket i oppgaven får en { h(z) ( z )Z [L t.5k 2 (.3) (s +.25)s} } 2( z )Z [{ e.25t t.5k (.4) 2( z )(Z[ Z[e k/8 ) (.5) ( 2( z ) z ) (.6) z e /8 2z ( e /8 ) 2( e /8 ) (.7) z e /8 z e /8.235 (.8) z.8825 2 Lodd som henger i ei fjør (Antall poeng for denne oppgaven er 5+5++5+5++545) 2.a (5 poeng) Fra oppgaven ser vi at matrisen A i ligning 3 er [ A a 2, der a k f /m 5. (2.) Det er altså ei matrise på form som gitt i ligning 3 i oppgaven og har egenverdier ±ja, der j. Her får vi altså at de to egenverdiene er ±j k f /m ±5j. 2.b (5 poeng) Håndregelen er at T bør være mindre eller lik en tidel av den inverse av den største av absoluttverdiene av egenverdiene for det kontinuerlige systemet, altså:. T. (2.2) {eig(a)} max 2
Dermed bør vi ha T./5.2 [s. Med samplingsfrekvens Hz blir tidssteget T /. [s. 2.c ( poeng) Med nullteordens holdeelement og Eulers forovermetode har en x(k + ) x(k) + T ẋ(k). D og E er som i det kontinuerlige tilfellet. Det gir [ Φ I + AT [ Γ BT T k f /m [ T T k f /m [.25..25. (2.3), D [, E. (2.4) 2.d (5 poeng) Med å ta Eulers forovermetode på ligning 9 i oppgaven får vi x 2 (k + ) T k f m x (k) + x 2 (k) + T k f m u(k) + T k f m v u(k). (2.5) Standardavvik for v u (k) her er oppgitt til.5 [m, med v 2 (k) T (k f /m)v u (k) får vi da standardavvik for v 2 (k) til σ v2 T (k f /m).5.25.5.25. Vi har da σ 2 v 2.25 2.5625.6 6 [m 2. Den nye støyen v som i ligning 4 i oppgaven er v [v v 2 T. Her har vi da variansene for hver komponent, diagonalelementene i kovariansmatrisa for støyen, gitt som σv 2 [m 2 og σv 2 2.6 6 [m 2. 2.e (5 poeng) Vi skal her nne egenverdiene λ for matrisa [ [ T Φ EF I + AT T k f /m..25. (2.6) Subskrift EF står for Eulers forovermetode. Vi har ikke oppgitt løsningen her i oppgaven og må da regne den ut. Fra denisjonen av egenverdier har vi det(λi Φ EF ) (2.7) ( [ [ λ T ) det (2.8) λ T k f /m ( [ λ T ) det (2.9) T k f /m λ (λ ) 2 + T 2 k f /m (2.) (λ ) 2 T 2 k f /m (2.) (λ ) ±jt k f /m (2.2) λ ± jt k f /m (2.3) 3
Her har vi k f /m 25 og får da egenverdiene λ ± 5T j. Med T. gir dette egenverdiene λ ±.5j. 2.f ( poeng) Eksakt diskretisering gir Φ e AT og A er som i deloppgave a her i løsningsforslaget, med a k f /m 5 som før. I oppgaven i ligning 4 er da e AT gitt. [ Φ e AT cos at a sin at. (2.4) a sin at cos at med rekkeutvikling har en (merk Φ EF er første ledd for hvert element, til og med T ) [ Φ e AT (at 2 )2 + (at 24 )4 T 6 a2 T 3 + 2 a4 T 5 a 2 T + 6 a4 T 3 2 a6 T 5 + (at 2 )2 + (at. 24 )4 (2.5) med tall [.9988. Φ e AT. (2.6).25.9988 Det å nne Γ er kanskje litt vanskeligere. Fra ligning 7 i oppgaven ser en at ved å multiplisere med A på begge sider, på høyre side yttes A inn i alle ledd i parentesen, så får en AΓ (Φ I)B. Dermed får en Γ A (Φ I)B. B er gitt i oppgaven ligning 3, B [ a 2 T, der a k f /m 5. A er gitt i oppgaven og Φ ble nettopp funnet. Vi får [ a 2 Γ [ cos at a sin at a sin at cos at [ a 2 Vi multipliserer sammen de to høgre faktorene først [ [ [ a 2 a sin at cos at Γ a 2 (cos at ) a sin at med rekkeutvikling har en (merk Γ EF er ledd til og med T) [ [ cos at Γ (at 2 )2 (at 24 )4 + a sin at a 2 T 6 a4 T 3 + 2 a6 T 5 + med tall Γ [ cos at a sin at [.2.25. (2.7). (2.8) (2.9). (2.2) Fra rekkeutviklingen ser en at dieransen mellom Φ e AT og Φ EF I + AT er alle ledd der T er med med grad 2 eller høyere. Dette gjelder også for Γ og Γ EF. 2.g (5 poeng) Egenverdiene for Φ e AT er gitt i oppgaven som cos at ± j sin at. Med T. og at.5 gir dette egenverdiene λ.9988 ±.5j. 4
3 Kalmanlter og RLS for parameterestimering (Antall poeng for denne oppgaven er ++5+5++545) 3.a ( poeng) Tilstandene i Kalmanlteren x blir de ukjente parametrene θ, det er altså to tilstander a og b som skal estimeres fortløpende. Uten mer forhåndskunnskap kan en sette begge disse til initielt. En skal også gi initiell verdi for kovariansmarisa P, for eksempel ei 2 2 identitetsmatrise. En skal legge merke til at i Kalmanlter bruker en normal både aprioriestimat (strek) og apoterioriestimat (hatt), her kan disse gjerne slås sammen da aprioriestimatene i et tidssteg er de samme som aposterioriestimatene i forrige tidssteg. Nedenfor er tilstandsrommodellen som er utgangspunktet for Kalmanlteret. x(k + ) Φ(k)x(k) + Γ(k)u(k) + Ω(k)v(k) (3.) y(k) D(k)x(k) + w(k). (3.2) Systemmatrisa Φ blir ei 2 2 identitetsmatrise. Pådraget u(k) i TRM er ikke u(k) i systemligningen gitt i oppgaven, for TRM regner en ikke noe pådrag her, u(k) og/eller Γ er da. Ω settes (som det ofte gjøres med mindre en konkret vet noe annet) til ei 2 2 identitetsmatrise. Prosesstøyen v(k) tillater at parametrene kan endre seg etter som tiden går, den regnes som uavhengig og hvit og kovariansmatrisa Q brukes som tuningsparameter. Store verdier tillater mye endring i parameterestimatene fra steg til steg, mens liten, eller, Q gir mindre endringer. Initiell verdi på. (som gur i oppgaven) er ganske passe her. Systemligningen i oppgaven blir måleligningene i tilstandsrommodellen for Kalmanlteret. Dermed blir D matrisa, 2, regresjonsvektoren, D [ y(k ), u(k ). (E matrise er som vanlig ). w(k) her tilsvarer e(k) i systemligningen i oppgaven, og dermed gis denne samme varians, altså settes kovariansmatrisa R,, til.. R kan også brukes som tuningsmatrise om en vil, men som så ofte ellers for Kalmanlter velger vi å bruke kun Q som tuningsmatrise. I stedet for større R kan en sette mindre Q, og i stedet for mindre R kan en sette større Q. Detaljer i form av Matlab-kode kan nnes i øving 8, både oppgave, løsningsforslag og ov8.m. Ellers er det også litt mer detaljer i notat 4, del 3.5. 3.b ( poeng) Resultatene er tegnet i gur og 2. For stor Q i gur må en ha med at variansen er betydelig større på estimatene enn for guren i oppgaven. En må også ha med omtrent momentant skifte 5
Kalman filter initiell Q., a og a estimert.2.4.6.8 5 5 Kalman filter, b og b estimert.8.6.4.2 5 5 Figur : Parameterestimatene for spørsmål b med Q. I 2. De virkelige verdiene er som rette linjer og kunne blitt tegnet med linjal. De estimerte verdiene går mer opp og ned. Kalman filter initiell Q, a og a estimert.2.4.6.8 5 5 Kalman filter, b og b estimert.8.6.4.2 5 5 Figur 2: Parameterestimatene for spørsmål b med Q I 2. De virkelige verdiene er som rette linjer og kunne blitt tegnet med linjal. De estimerte verdiene går mer opp og ned. 6
av middelverdi når parametrene skifter verdi, altså at estimatene hele tiden svinger om sanne verdier. Og som tredje punkt kan en her ha med at de er annerledes helt i starten, selv om det er vanskelig å se her. For Q i gur 2 må en ha med at variansen gradvis blir mindre og mindre. En må også ha med at det er en treghet på ere hundre tidssteg når parametrene skifter verdi etter 75 steg. Her er det viktig at en også får med seg det tredje punkt, nemlig at estimatene er annerledes helt i starten, at begge estimatene starter med slik som i guren gitt i oppgaven, (selv om b-parameteren starter med et krag oversving fra til og så går ned mot.4 etter hvert.) Forklaringen er at når Q er stor (.) så tillater en store endringer (standardavvik.) for hvert tidssteg på begge tilstandene. Dette gir raskt lter, og gjerne (altfor) mye virring. Når Q er derimot er null så tillater en i prinsippet kun endringer fordi det etter hvert blir ere målinger (data) og fordi initialtilstanden for x her settes reltivt stor, P er initielt lik identitetsmatrisa som tilsvarer at standardavviket for hvert initielt estimat er. 3.c (5 poeng) Med større Q så tillater en mer endring i hvert tidssteg, en legger da mer vekt på hver måling og forsterkningsfaktoren K blir større. En vil fortsatt ha svingninger (siden pådraget fortsatt er en sinus). Det blir omvent med mindre Q og når Q så vil forsterkningsfaktoren K gå mot. De faktiske resultatene (fra øving 8) viser i gurene 3 og 4. 3.d (5 poeng) Det kan for eksempel gjøres som i ov8.m. Det viktigste her er å få med at D matrisa tilsvarer `regresjonsvektoren' i RLS og endres i hvert tidssteg (2 p), deretter poeng for P, K og θ. for k 2 : N D [-y(k-), u(k-); % datavektoren, phi'(k) P P + Q; K P*D' / (D*P*D'+ R); th(:,k) th(:,k-) + K*( y(k)-d*th(:,k-) ); P (eye(nx) - K*D)*P; end 3.e ( poeng) Forskjeller, fordeler og ulemper kommer fram av punktlista nedenfor. Likhetene viser tydelig i oversikten med ligningene.. I Kalmanlteret er det forholdet mellom Q og R bestemmer glemmefaktoren, hvor raskt parameterestimatene endres. Liten Q er liten varians for parameterstøyen v(k) og brukes når en antar stabile parametere som endres lite fra steg til steg. 7
2 Kalman filter, K (k) 2 3 5 5 6 Kalman filter, K 2 (k) 4 2 2 5 5 Figur 3: Forsterkningsfaktorene for kjøringen med Q. I 2. 2 Kalman filter, K (k) 2 3 5 5 5 Kalman filter, K 2 (k) 4 3 2 5 5 Figur 4: Forsterkningsfaktorene for kjøringen med Q. 8
Liten R er når det er lite målestøy og brukes når en vil legge mye vekt på siste måling. Det gir raskere endring av parametrene. En låser ofte en av disse, helst R, og bruker den andre for tuning av Kalman-lteret. 2. Kalman-lter er mer eksibelt enn RLS. Det kan enklere utvides og enklere styres. 3. Forløpende linearisering av ulineære modeller kan gjøres med Kalman- lter. (strengt tatt kan vel tilsvarende fortløpende linearisering også gjøres med RLS, selv om vi ikke har sett noe på det i faget). 4. RLS er muligens litt enklere å forstå, det vil si at en enklere (uten forventningsoperatoren) kan formulere hva som minimeres når en nne estimatet. RLS er løsningene av en (vektet) lineært ligningssystem. 5. Q matrisa i RLS er deterministisk og entydig denert ut fra data. 6. Q matrisa (eller matrisene ˆQ og Q) er denert som estimat(er) av en stokastisk variabel, nemlig kovariansmatrisa til estimeringsavviket. 7. RLS kan være numerisk ustabil, spesielt kan det være en fare for det hvis det er lite eksitasjon av systemet. De følgende ligninger viser hvor like RLS og Kalman-lter algoritmene egentlig er. For hvert tidsteg gjøres en gjennomgang gjennom ligningene nedenfor. I ligningene nedenfor har en ϕ ϕ(k). RLS Kalman-lter λ Q, R (3.3) [ y(k ) ϕ D ϕ T [ y(k ), u(k ) (3.4) u(k ) K P ϕ ϕ T P ϕ + λ K P D T DP D T + R (3.5) ɛ y(k) ϕ T ˆθ(k ) ɛ y(k) Dˆθ(k ) (3.6) ˆθ(k) ˆθ(k ) + Kɛ ˆθ(k) ˆθ(k ) + Kɛ (3.7) P (I Kϕ T )P P (I KD)P (3.8) P P/λ P P + Q (3.9) 3.f (5 poeng) D matrisa eller om en vil regressoren (datavektoren) settes nå som D φ T (k) [ y(k ) u(k ) e(k ). (3.) 9
Der den i prinsippet ukjente e(k ) settes til e(k ) y(k ) φ T (k )ˆθ(k ) (3.) Deretter kan Kalmanlter, eller RLS, brukes til parameterestimering som før.