TSRT62 Modellbygge och Simulering
Transcription
TSRT62 Modellbygge och Simulering
TSRT62 Modellbygge & Simulering Föreläsning 6 Christian Lyzell Avdelningen för Reglerteknik Institutionen för Systemteknik Linköpings Universitet C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 1 / 25 Sammanfattning: Föreläsning 5 Skattningens kvalitet: bias och varians Fysikaliska parametriserade modeller Olinjära svartlådemodeller I Lokala modeller I Lokala linjära modeller I Olinjära regressionsmodeller; neuronnät C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 2 / 25 Föreläsning 6: Systemidentifiering i praktiken Innehåll Överanpassning och korsvalidering AIC, FPE, MDL Residualtester Lite modellbyggesfilosofi Några modeller utan facit Läsanvisning: Kapitel 14 i boken C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 3 / 25 TSRT62 Modellbygge och simulering Ickeparametriska metoder Bindningsgrafer Systemidentifiering Parametriska metoder C. Lyzell (LiTH) Fysikaliska principer Differentialalgebraiska ekvationer TSRT62 Modellbygge & Simulering Objektorienterat modellbygge 2013 4 / 25 Systemidentifiering i praktiken Designa Experiment Samla in data Efterbehandla data Välj modellstruktur Skatta modell Validera modell Nej Modellen ok? Ja C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 5 / 25 Experimentdesign och datainsamling Allmänna frågor: Vilka signaler i processen kan mätas? Hur skall insignalen väljas? Vilket samplingsintervall ska användas? Hur mycket data behöver samlas in? C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 6 / 25 Experimentdesign och datainsamling Ofta lämpligt med två steg: 1 2 Inledande experiment: I Transientanalys (t.ex. stegsvar) för att få grundläggande förståelse för systemdynamiken. I Linjärt, statisk förstärkning, tidsfördröjning, tidskonstanter, samplingstid, . . . Datainsamling för modellskattning: I Noggrant utformat för att möjliggöra bra modellanpassning (och validering) I Arbetspunkt, typ av insignal, antal datapunkter, . . . C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 7 / 25 Transientanalys: Stegsvar ωr Statisk förstärkning 1 0:5 Td Tr 0 0 1 2 3 4 5 6 7 8 Användbart för att få en uppfattning om: Dötid, statisk förstärkning Tidskonstanter (ur stigtid), resonanser Samplingsfrekvens (tumregel: 4–10 sampel per stigtid) C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 8 / 25 Identifiering under återkoppling Se upp vid datainsamling under återkoppling: Problem: insignalen blir korrelerad med bruset Information om öppna systemet minskar Se till att variera referenssignalen (och/eller regulatorn) Spektralskattning kan vara felaktig c c (i ! ) = G S C. Lyzell (LiTH) YS (i ! ) US (i ! ) ! G (i !)ΦrΦ(!()!) +[FΦ(i !(!)]) r TSRT62 Modellbygge & Simulering 1Φ v (! ) v 2013 9 / 25 Exempel: Identifiering under återkoppling Systemet 1) = bu(t y (t) + ay (t 1) + e(t) identifieras under återkopplingen: 1 u(t) = −ky (t) 2 u(t) = k r (t) − y (t) där e(t) och r (t) är vita brus med varians 0:32 respektive 1. System ARX, u = ky ARX, u = k(r y ) 100 10 1 10 3 C. Lyzell (LiTH) 10 2 10 1 100 TSRT62 Modellbygge & Simulering 2013 10 / 25 Efterbehandling av data Titta på data I Rätt signalnivåer, frekvenser, störningar, . . . Ta bort I Eventuella transienter för att nå rätt arbetspunkt (om olinjärt system) I Signalernas medelvärden (om ej fysikalisk modell) I Långsamma trender (detrend i MATLAB) I “Outliers” (uppenbart felaktiga mätningar) C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 11 / 25 Val av modellstruktur Konfektion eller skräddarsytt? “Halvfysikaliskt” modellbygge Praktisk princip: TSTF (“Try Simple Things First”) Val av linjär konfektionsmodell: I ARX och ARMAX har gemensamma nämnare: Bra om störningar kommer in “tidigt” i processen I BJ har olika nämnare: Bra om störningarna främst är mätbrus F I Ofta första som testas vid identifiering av återkopplade system OE kan vara bra om man inte är intresserad av en störningsmodell C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 12 / 25 Överanpassning Om man lägger till en parameter i en modell så kan man normalt modellera allt som den gamla modellen kunde plus en del nytt. I Den gamla modellen kan återskapas genom att sätta den nya parametern till noll Det blir alltså förmånligt att ta in fler parametrar. I praktiken anpassas ofta modeller med många parametrar mer till bruset än till underliggande fysik. Detta kallas överanpassning (overfit). C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 13 / 25 Skydd mot överanpassning Korsvalidering: Utvärdera modellanpassningen på nya data I Valideringsdata, data som ej använts vid beräkning av bN 100 v u PN u t t=1 y (t) PN 1 t=1 2 ! yb(t j bN ) y (t) 2 y¯ Ta hänsyn till antalet parametrar d i kriteriet. AIC: 2d min 1 + d ; N MDL: min (1 + d ; C. Lyzell (LiTH) "2 (t ; ) t=1 N 1 + d =N 1 X "2 (t ; ) min 1 + d ; 1 d =N N t=1 FPE: N X N X 2d log N) "2 (t ; ) N t=1 TSRT62 Modellbygge & Simulering 2013 14 / 25 Exempel: Modellordning Anpassning av ARX(na , nb , 1)-modeller då det sanna är ARX(2, 2, 1) Estimeringsdata Valideringsdata Model Misfit vs number of par’s Model Misfit vs number of par’s 55 45 54 53 44 Unexplained output variance (in %) Unexplained output variance (in %) 44.5 MDL, AIC 43.5 43 42.5 42 "Bäst" 41.5 41 AIC MDL 51 50 Bäst 49 48 47 40.5 40 52 46 0 5 10 15 Number of par’s C. Lyzell (LiTH) 20 25 30 45 0 5 TSRT62 Modellbygge & Simulering 10 15 Number of par’s 20 25 2013 30 15 / 25 Exempel: Modellordning Notera tecken på överanpassning hos modellen med högst ordningstal Step Response MDL (valid) Bäst (valid) "Bäst" (estim) MDL (valid) 0.7 Frequency response 0 10 0.8 Amplitude "Bäst" (estim) 0.6 Sann AIC 0.5 −1 10 −1 10 0 1 10 10 0.4 AIC 0.3 Bäst (valid) 0 sant Phase (deg) −50 0.2 0.1 0 −100 −150 0 1 2 3 4 C. Lyzell (LiTH) 5 Time 6 7 8 9 10 −200 −1 10 TSRT62 Modellbygge & Simulering 0 1 10 Frequency (rad/s) 10 2013 16 / 25 Residualtest: Korskovarians Residualer: "(t ; bN ) = y (t) yb(t j bN ) Idealt bör "(t ; bN ) vara oberoende av u(t) Skatta korskovariansen: Rb"u ( ) = N 1 X "(t + )u(t) N t=1 Plotta Rb"u ( ). Korrelation för negativa : Kanske återkoppling Rb"u (0 ) signifikant nollskild: indikerar att u(t modellen. C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 0 ) bör inkluderas i 2013 17 / 25 Residualtest: Kovarians Residualer: "(t ; bN ) = y (t) yb(t j bN ) Idealt bör dessa vara oberoende (om brusmodellen är väl skattad) Skatta kovariansen: N 1 X b R" ( ) = "(t + )"(t) N t=1 Plotta Rb" ( ). C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 18 / 25 Exempel: Residualtest Blå kurva: modell av lägre ordning än det sanna systemet. Autocorrelation of residuals for output y1 0.5 Korskovariansen mellan " och u antyder att 0 modellen måste utökas så att den kan ta hänsyn till äldre värden på u. −0.5 −20 −15 −10 −5 0 5 10 15 20 Cross corr for input u1 and output y1 resids Röd kurva: en högre ordningens modell där 0.5 korskovariansen mellan " och u försvunnit (dessutom har korrelationen i " gått ner 0 något) −0.5 −20 −15 −10 −5 0 Samples C. Lyzell (LiTH) 5 10 15 20 TSRT62 Modellbygge & Simulering 2013 19 / 25 Modellkvalitet Måste bedömas med hänsyn till syftet Fysikalisk bas viktig för modellens trovärdighet vid t.ex. extrapolation Korrekt förutsägelse av det oväntade ökar trovärdighet I Neptunus (Newton-Kepler versus Ptolemeios) C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 20 / 25 Modellens syfte viktigt Exempel: Två modeller G1 (s) = 1 s + 0:1 och G2 (s) = 1 (s + 1)4 Vilken beskriver verkligheten bäst? Stegsvar Stegsvar, PI-reglering 2 2 1:5 1:5 1 1 0:5 0:5 0 0 2 4 6 8 10 Här beskriver G2 verkligheten bäst C. Lyzell (LiTH) 0 System G1 (s) G2 (s) 0 2 4 6 8 10 Här beskriver G1 verkligheten bäst TSRT62 Modellbygge & Simulering 2013 21 / 25 Modellens syfte viktigt: Frekvenstolkning 101 System G1 (i ! ) G2 (i ! ) 100 10 1 10 2 10 2 10 1 100 101 G2 approximerar bäst vid låga frekvenser; viktigt vid öppen styrning G1 approximerar bäst runt skärfrekvensen; viktigt vid reglering C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 22 / 25 Ptolemaios modell 1.5 ”Ofysikalisk grund”, epicykler (”cirklar i cirklar”) 1 Q * 0.5 o P o P 0 Q * P o Q * Kunde inte förutsäga banor hos nyupptäckta planeter -0.5 -1 -1.5 -1.5 Mycket bra på att förutsäga banor hos de kända planeterna Kunde inte förutsäga existensen av nya planeter -1 -0.5 C. Lyzell (LiTH) 0 0.5 1 1.5 TSRT62 Modellbygge & Simulering 2013 23 / 25 Keplers och Newtons modell Fysikalisk bas: gravitationslagen och rörelselagarna Kan förutsäga banor med utomordentlig precision Kan förutsäga banor hos nya planeter med minimala indata Bild: R. J. Hall C. Lyzell (LiTH) Förutsåg existensen av Neptunus TSRT62 Modellbygge & Simulering 2013 24 / 25 Sammanfattning: Validering Några valideringssynpunkter: Testa modellen på nya data. “Korsvalidering” Beräkna olika modeller i olika strukturer och på olika mätdata. Modellerna överensstämmer (t.ex. i simulering eller i Bodediagram) stort förtroende. ) Kolla residualerna "(t ; ) = y (t) I Testa korrelation med insignal I Testa inbördes korrelation. yb(t j ) Tänk på modellens syfte. C. Lyzell (LiTH) TSRT62 Modellbygge & Simulering 2013 25 / 25