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