Sammanfattning av föreläsning 4 Modellbygge & Simulering, TSRT62 Föreläsning 5. Identifiering av olinjära modeller Reglerteknik, ISY, Linköpings Universitet Linjära parametriserade modeller: ARX, ARMAX, OE, Box-Jenkins Generering av prediktionen ŷ(t θ) Minimering av kvadratsumman på prediktionsfelen ger θ Slumpmässiga och systematiska fel Formel för bias-felet. Två viktiga formler från förel. 4 Föreläsning. Fysikaliska och olinjära modeller Prediktion: ŷ(t θ) = ( ) H (q, θ) y(t) + H (q, θ)g(q, θ)u(t) Bias-fel: När N : (N=antal datapunkter) θ = argmin θ π π G (e iω ) G(e iω, θ) 2 Φ u (ω) H (e iω ) 2 dω Hur bra blir skattningarna? Variansfel Identifierbarhet? Olinjära fysikaliska modeller Olinjära svartlådemodeller Bra modell där det finns tillräckligt mycket insignalenergi.
Hur bra blir skattningen? Variansfelet Varians hos överföringsfunktion Två slags fel: Slumpmässiga, minskar när antalet datapunkter (N) växer. Varians Fel i modellstrukturen, finns kvar även när N. Bias Inverkan av slumpmässiga fel när modellstrukturen är rätt: där λ är brusvariansen och E( ˆθ N θ )( ˆθ N θ ) T λ N R n = modellens ordningstal N = antalet data Φ u = insignalspektrum Φ w = brusspektrum VarG(e iω, ˆθ N ) n N Φ w (ω) Φ u (ω) R = Eψ(t, θ )ψ(t, θ ) T, ψ(t, θ) = d dθ ŷ(t θ) Identifierbarhet Identifiering av y(t) + ay(t ) = bu(t ) + e(t) återkoppling: u(t) = k(r(t) y(t)). Identifierad modell: (sann heldragen, ARX prickad, spektralanalys streckad) AMPLITUD Olika värden på θ bör ge olika prediktioner. Att detta inte är uppfyllt kan beror på parametriseringen i sig insignalvalet återkoppling - -2 - frekvens (rad/sek) FAS -5 - -5-2 -2 - frekvens (rad/sek)
Olinjära skräddarsydda modeller Skattning av tankdynamik Modell: ẋ = f (x, u; θ) y = h(x, u, θ) + e Kriteriefunktion V 6 4 Brusmodell: additivt vitt brus. Prediktion: ẋ = f (x, u; θ) ŷ = h(x, u, θ) 2 8 6 ḣ(t) = θ 2g h(t) + u(t) ŷ(t θ) = θ 2g h(t) (Jämför OE-modell) θ beräknas genom minimering av V N (θ) = N N 2 (y(t i) ŷ(t i θ)) 2 i= 4 2..2.3.4.5.6.7.8.9 Exempel: Elmotor med mättning och friktion En enkel elmotor bör kunna beskrivas linjärt: ŷ(t θ) = ay(t ) + b(u(t ) I verkligheten fungerar dock ofta en olinjär modell bättre: ŷ(t θ) = g(y(t ), (u(t ), θ) y.2.5..5.5..5.2.25.3 y. (sim) 5 5 2 25 3 Measured lin; fit: 64.27% olin; fit: 9.8% Olinjära svartlådemodeller Finns det en helt allmän beskrivning av ett olinjärt system? Diskret tid, samplingsintervall = olinjär ARX (NARX): ŷ(t θ) = g(y(t ),..., y(t n), u(t ),..., u(t m), θ) Klumpa samman gamla u och y i regressionsvektor ϕ(t) = (y(t ),..., y(t n), u(t ),..., u(t m)) ŷ(t θ) = g(ϕ(t), θ) Försök hitta bra modellklasser för g. Lokala modeller Lokala linjära modeller Olinjära regressionsmodeller
Exempel: Elmotor med mättning och friktion Lokala modeller.5 Linjär modell.5 Olinjär modell ŷ(t) = N normeringsfaktor Exempel på κ-funktioner: N N κ(β k φ(t) φ k )y k yhat(t) yhat(t).5.5.5 2 y(t ) 2 5 u(t ) 5.5 2 y(t ) 2 5 u(t ) 5.5 2.5.5.5.5 2.5 2.5.5.5.5 2 Lokala linjära modeller En ganska allmän olinjär modell Det finns en mätbar variabel ρ som anger arbetspunkt För ett antal arbetspunkter ρ,..,ρ d gör man linjära modeller, t.ex. ARX-modeller ŷ(t θ) = g(φ(t), θ) = d α k κ(β k (φ γ k )) Ett vanligt val av κ är mättande element av s k sigmoidtyp: ŷ(t θ) = ϕ T (t)θ (k) där θ (k) är de parametrar som hör till ρ k Den totala modellen är en sammanviktning av de lokala: ŷ(t θ) = d w k (ρ, ρ k )ϕ T (t)θ (k) Ett exempel på en funktion med detta principiella utseende är Byggsten i s k neuronnät. σ(x) = + e x
En (artificiell) neuron Neuronnät x w x 2 w 2.. x N w N Insignal-utsignalsamband: där Σ σ( ) b y y = σ ( w i x i + b ) = σ(wx + b) w = (w,..., w N ) Inspirationskälla: mänskliga hjärnans uppbyggnad Genom att koppla utgångarna från vissa neuroner till ingångarna på andra, kan neuronnät av godtycklig komplexitet byggas upp. Matematiskt är det fråga om en funktion från R n till R m där n är antalet insignaler och m antalet utsignaler. För polynom vet man att varje kontinuerlig funktion kan approximeras godtyckligt väl. Motsvarande resultat gäller för neuronnät. En vanlig konfiguration är l neuroner i parallell följda av en neuron med linjär σ-funktion: y = c + l j= Framkopplingsnät med ett dolt lager c j σ(w (j) x + b j ) NARX, NOE Hammerstein och Wiener-modeller Finns naturliga neuronnätsvarianter av ARX- och OE-modeller: NARX, NOE Parametrarna är vikterna i neuronerna. I princip samma metod att minimera V N som i konventionell identifiering. Gradienten av V N kan beräknas genom att man följer signalvägarna i neuronnätet: s.k. back propagation Neuronnätsterminologi: Identifiering = inlärning Två vanliga olinjära modellstrukturer fås genom att kombinera ett linjärt dynamiskt system G(q) och en statisk olinjäritet f ( ): Hammerstein-modell: y(t) = G(q)z(t), (olinjäritet på insignalen) Ex: olinjär aktuator (ventil, roder,... ) Wiener-modell: y(t) = f (z(t)), z(t) = f (u(t)) z(t) = G(q)u(t) (olinjäritet på utsignalen) Ex: olinjär mätgivare (lambda-sond, ph-mätningar,... ) Dessa kan också kombineras (olinjäritet på både in- och utsignal)
Exempel: Elmotor med mättning.3.2. y. (sim) Measured lin; fit: 55% olin; fit: 94.6% y..2.3.4.5 5 5 2 25 3