Dynamische Systeme und Zeitreihenanalyse Zustandsraummodelle und Kalman Filter Kapitel 15 Statistik und Mathematik WU Wien Michael Hauser Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.0/?? Lernziele Repräsentation eines Zustandsraums: Beobachtungs- und Zustandsgleichung Ein Strukturmodell Darstellung eines ARIMA Modells als Zustandsraummodell Die Kalman Rekursion Schätzen von Zustandsraummodellen Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.1/?? Warum Zustandsraummodelle? Zustandsraummodelle, state space models, SSM, stellen eine Verallgemeinerung von ARIMA Modellen dar. Das strukturelle Zeitreihenmodell von Harvey(1990) kann ebenfalls eingebettet werden. Es ist eine stochastische Version der klassischen Zerlegung von Zeitreihen in Trend, Saison und irregulärer Komponente. Die Kalman Rekursionen erlauben eine einheitliche Behandlung von Schätzung, Prognose und Glättung basierend auf der Markoff Eigenschaft von Zustandsraummodellen. SSM erlauben eine einfache Berücksichtigung von fehlenden Beobachtungen. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p./??
Notation Im Folgenden bezeichnet W t einen n-dimensionalen Vektor von ZVen für t = 1,,.... W t WN(0, R t ) bezeichnet einen n-dimensionalen white noise, der das Mittel Null und Kovarianzmatrizen der Form E(W s W R t für s = t t) = 0 sonst besitzt. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.3/?? Zustandsraummodell Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.4/?? Die Beobachtungsgleichung Ein Zustandsraummodell für eine Zeitreihe {Y t, t = 1,,...} besteht aus Gleichungen. Die Beobachtungsgleichung: Y t = G X t + W t Sie besagt, dass die n-dimensionale Beobachtung Y t eine lineare Funktion einer r-dimensionalen Zustandsvariablen X t plus einer n-dimensionalen Störung ist. Wobei die Störung W t WN(0, R) und die Koeffizientenmatrix G die Dimension n r hat. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.5/??
Die Zustandsgleichung, Anfangswert Die Zustandsgleichung: X t+1 = F X t + V t Die Koeffizientenmatrix F hat die Dimension r r, die Störung V t WN(0, Q), und beide Störungen V t und W t sind unkorreliert (ie E(W t V s) = 0 für alle s und t). Der Anfangswertvektor X 1 ist unkorreliert mit allen V t und W t. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.6/?? Verallgemeinerungen Zeitabhängige Koeffizienten Die Matrizen G und F können zeitabhängig als G t und F t, t = 1,,..., gewählt werden. Zeitabhängige Kovarianzmatrizen der Fehler Die Matrizen R und Q können zeitabhängig als R t und Q t, t = 1,,..., gewählt werden. Kontrollvariable Zum Steuern des Systems kann in die Zustandsgleichung ein Kontrollterm der Form (H t u t ) mit der Kontrollvariablen u t eingeführt werden. Konstante und exogene Variable, Z t Y t = a t + G t X t + E t Z t + W t, X t+1 = b t + F X t + V t Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.7/?? Die rekursive Darstellung Wir lösen die Zustandsgleichung rekursiv: X t = F X t 1 + V t 1 = F (F X t + V t ) + V t 1... = F t 1 X 1 + F t V 1 +... + V t 1 = f(x 1, V 1,..., V t 1 ) und somit (ohne exogene Variable) Y t = a t + G t X t + W t = g(x 1, V 1,..., V t 1 ; a t, W t ) Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.8/??
Stochastische Eigenschaften Aus der rekursiven Darstellung folgt: Vergangene und gegenwärtige X s, wie auch Y s, sind unkorreliert mit V t. E(V t X s) = E(V t Y s) = 0, 1 s t Vergangene und gegenwärtige X s sind unkorreliert mit W t. E(W t X s) = 0, 1 s t Vergangene Y s sind unkorreliert mit W t. E(W t Y s) = 0, 1 s < t Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.9/?? Markoffeigenschaft, Stabilität des Systems Ist die Folge X 1, V 1,..., V t 1,... nicht nur unkorreliert, sondern auch unabhängig, so gilt für X t die Markoffeigenschaft. Ie, die Verteilung von X t+1 hängt nur vom Zustand X t in t ab. Die Fortsetzung der obigen Rekursion ergibt X t = F j V t j 1 j=0 Die Zustandsgleichung ist stabil, wenn die Eigenwerte der Matrix F innerhalb des Einheitskreises liegen, λ F < 1. (Bzw det(i F z) = 0 für z > 1, die Wurzeln außerhalb des Einheitskreises.) Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.10/?? Zustandsraumdarstellung Eine Zeitreihe {Y t, t = 1,,...} besitzt eine Zustandsraumdarstellung, wenn für {Y t } ein Zustandsraummodell existiert. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.11/??
ARIMA und Zustandsraummodelle Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.1/?? AR(1) Sei {Y t } ein 1-dimensionaler AR(1) Prozess Y t = α Y t 1 + Z t, α < 1, Z t WN(0, σ ) Wir definieren die Beobachtungs- und Zustandsgleichungen als Y t = X t, X t+1 = α X t + V t, t = 1,,... Die Koeffizientenmatrizen G und F sind: G = 1 und F = α, die Störungen W t = 0, ie R = 0, und V t = Z t. Der Anfangswert für X 1 ergibt sich aus der Rekursion eines AR(1) X 1 = j=0 α j Z 1 j Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.13/?? Das SSM eines AR(1) Der AR(1): Der AR(1) ist für t =,..., 1, 0, 1,..., nur definiert, wenn α < 1 ist. Geht man von einem Anfangszeitpunkt t = 1 mit einem Anfangswert X 1 aus, so ist der Prozess für beliebige α, also zb auch für α = 1, definiert. Das SSModell: Ausgehend von X 1 ist der Prozess für alle α und t = 1,,... definiert. Daher kann man auch nicht-stationäre Prozesse modellieren. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.14/??
AR(p) Beobachtungsgleichung Sei {Y t } ein 1-dimensionaler AR(p) Prozess, t = 0, ±1, ±,..., Y t = α 1 Y t 1 +... +α p Y t p + Z t, Z t WN(0, σ ) mit α(z) = 1 α 1 z... α p z p = 0 für z > 1. Wir führen einen p-dimensionalen Zustandsvektor X t ein X t = (Y t p+1, Y t p+,..., Y t ) Die Beobachtungsgleichung Y t = G 1 p X t + W t lautet Dabei ist W t = 0. Y t = [0 0... 0 1] X t Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.15/?? AR(p) Zustandsgleichung Die Zustandsgleichung X t+1 = F p p X t + V t ist 0 1 0... 0 0 0 1... 0 X t+1 =....... 0 0 0... 1 α p α p 1 α p... α 1 X t + 0 0. 0 1 Z t+1 mit V t = (0, 0,..., Z t+1 ). Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.16/?? ARMA(1, 1) Sei {Y t } ein 1-dimensionaler AR(1, 1) Prozess, t = 0, ±1, ±,..., Y t = α Y t 1 + Z t β Z t 1, Z t WN(0, σ ) mit α, β < 1. Wir definieren ein U t = (1 β L) 1 Y t, sodass (1 α L)[(1 β L) 1 Y t ] = (1 α L) U t = Z t und Y t = (1 β L) U t Wir führen einen -dimensionalen Zustandsvektor X t ein X t = (U t 1, U t ) Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.17/??
ARMA(1, 1)- Ein SSM Die Beobachtungsgleichung Y t = G 1 X t + W t lautet Dabei ist W t = 0. Y t = [ β 1] X t Die Zustandsgleichung X t+1 = F X t + V t ist X t+1 = 0 1 X t + 0 Z t+1 0 α 1 mit V t = (0, 0,..., Z t+1 ). (Y t = U t β U t 1, U t = U t, U t+1 = α U t + Z t+1 ) Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.18/?? ARIMA(1, 1, 1) Ist {Y t } ein ARIMA(1, 1, 1), so ist { Y t } ein ARIMA(1, 0, 1). Dh Y t hat die Darstellung von oben Y t = G X t X t+1 = F X t + V t. Y t ergibt sich aus Y t als Y t = Y t + Y t 1 = G X t + Y t 1 Die Beobachtungsgleichung mit t = 1,,... wird zu [ ] Y t = G 1 X t Y t 1 Ein neuer Zustandsvektor T t, definiert durch stacking von X t und Y t 1, liefert die Zustandsgleichung T t+1 = X t+1 = F 0 T t + V t Y t G 1 0 Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.19/?? Das Strukturmodell Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.0/??
Beobachtungsgleichung ohne Saison Das Zustandsraummodell ist sehr flexibel. Es erlaubt einfach deterministische und stochastische (lokale) Trends, wie auch deterministische und stochastische Saison zu beschreiben. Das Komponentenmodell (ohne Saison) besitzt die Beobachtungsgleichung Y t = M t + W t, W t WN(0,σ v) Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.1/?? Modell mit deterministischem Niveau Nehmen wir an M t = m t, m t deterministisch, so können unterschiedliche Niveaus m t zu verschiedenen Zeitpunkten vorgegeben werden. Die (erweiterte) Zustandsgleichung lautet M t+1 = m t+1 + F M t + V t mit F = 0 und E(V t ) = Var(V t ) = 0. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p./?? Modell mit stochastischem Niveau Die Zustandsgleichung ist M t+1 = M t + V t, V t WN(0,σ v) mit Anfangsniveau M 1. Sie ist ein random walk ohne Drift. Zusammen mit der Beobachtungsgleichung ergibt sich ein random walk plus noise. Y t = M t + W t, M t+1 = M t + V t Dieser Prozess ist ein ARIMA(0, 1, 1). Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.3/??
Stoch Niveau und ARIMA(0, 1, 1) Der differenzierte Prozess Y t gehorcht Y t = Y t Y t 1 = V t 1 + W t W t 1 Er ist stationär mit Mittel Null und besitzt die ACF {ρ 0, ρ 1, ρ, ρ 3,...} = {1, σ w/(σw +σv), 0, 0,...} eines MA(1) Prozesses ρ 1 = β/(1 + β ), ρ s = 0, s > 1, mit ( Y t ) = Z t β Z t 1 V( Y t ) = σ w +σ v = (1 + β )σ z. β explizit ist β = 1 σw (σw +σv σ v σv + 4σw) Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.4/?? Modelle mit lokalem Niveau u lok Steigung Die Zustandsgleichung ist M t+1 = M t + B t + V t Lokales determ Niveau und lokale determ Steigung M t+1 = m t + β t, m t,β t gegeben Stochastisches Niveau und lokale determ Steigung M t+1 = M t + β t + V t, β t gegeben Determ Niveau und stoch Steigung, m t gegeben M t+1 = m t + B t, B t+1 = B t + U t, U t WN(0,σu) Stoch Niveau und stoch Steigung, V t WN(0,σv) M t+1 = M t + B t + V t, B t+1 = B t + U t, U t WN(0,σu) Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.5/?? Die SS-Form f stoch Niveau u stoch Steigung Wir führen einen Zustandsvektor X t = (M t, B t ) ein. Die Zustandsgleichung ist X t+1 = M t+1 B t+1 = 1 1 0 1 X t + V t U t Die Beobachtungsgleichung ist [ Y t = 1 0 ] X t + W t Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.6/??
Beispiel - Linearer Trend Beispiel: Linearer Trend Beobachtungsgleichung: Y t = a + b t +ǫ t Y t = M t + V t, {V t } WN(0,σv) Zustandsgleichung: M t+1 = M t + β t mit M 1 = a, β t = b, V t = ǫ t Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.7/?? Die Kalman Rekursionen Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.8/?? Prognose-, Filter-, Glättungsproblem Die Kalman Rekursionen geben Lösungen im Sinne der Minimierung der Fehlerquadratsumme für das Prognoseproblem: Gegeben Y 0, Y 1,..., Y t 1, gesucht Y t. Filterproblem: Gegeben Y 0, Y 1,..., Y t, gesucht Y t. Glättungsproblem: Gegeben Y 0, Y 1,..., Y T, T > t, gesucht Y t. für Y 0 = (1,..., 1), Vektor der Konstanten, und t = 1,,..., an. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.9/??
Prognose eines Vektors Im Gegensatz zum univariaten Fall, prognostizieren/filtern/glätten wir hier einen Vektor. Prognostizieren/Filtern/Glätten ist komponentenweise zu verstehen. ZB für die 1-Schritt Prognose eines Vektors X t : ˆX t t 1 = ( ˆX 1,t t 1,..., ˆX n,t t 1 ) Wir schreiben ˆX k,t t 1 = E(X k,t Y 0, Y 1,..., Y t 1 ) ˆX t t 1 = E(X t Y 0, Y 1,..., Y t 1 ) = E t 1 (X t ) Hier ist E t 1 (X t ) die Projektion von X t auf die Vergangenheit von Y t inklusive einer Konstanten. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.30/?? Kalman Rekursion für die Prognose Wir geben nur die Kalman Rekursion für die Prognose an. Der Kalman Filter berechnet rekursiv die 1-Schritt Prognosen ˆX 1 0, ˆX 1, usw zusammen mit der Folge der MSE-Matrizen der 1-Schritt Prognosefehler, Ω t t 1 = E[(X t ˆX t t 1 )(X t ˆX t t 1 ) ] Wir beginnen mit ˆX 1 0 = E(X 1 ), Ω 1 0 = E[(X 1 EX 1 )(X 1 EX 1 ) ] E(X 1 ) ist die unbedingte Erwartung von X 1. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.31/?? Kalman Rekursion für die Prognose (Fs) Und weiter, t = 1,,..., gelten die Rekursionen ˆX t+1 t = F ˆX t t 1 + Θ t 1 t (Y t G ˆX t t 1 ) mit Ω t+1 t = F Ω t t 1 F + Q Θ t 1 t Θ t t = G Ω t t 1 G + R, Θ t = F Ω t t 1 G 1 t ist die generalisierte Inverse von t. Die 1-Schritt Prognose für Y t ist einfach Ŷ t t 1 = G ˆX t t 1 Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.3/??
Kalman Rekursion für die Prognose (Fs) Interpretation der Rekursion für ˆX t+1 t Die Prognose für X t+1 ist eine Linearkombination aus der letzten Prognose ˆX t t 1 und dem Prognosefehler der Prognose von Y t. Oft werden die einzelnen Schritte als (1) Anfangswerte festlegen (diskutieren wir nicht) () Prognose von Y t, Ŷ t t 1 (3) Update von X t berechnen, ˆX t t (hier nicht explizit sichtbar) (4) Prognose von X t+1, ˆX t+1 t beschrieben. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.33/?? Exkurs: Generalisierte Inverse Gegeben sei eine Matrix A r s. Die generalisierte Inverse X = A 1 s r zu A ist eine Lösung der Gleichung A X A = A Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.34/?? Die h-schritt Prognose Die h-schritt Prognose, ˆX t+h t = E t X t+h, ergibt sich aus ˆX t+1 t = F ˆX t t 1 + Θ t 1 t (Y t Ŷ t t 1 ) ˆX t+h t = F ˆX t+h 1 t Aus der Beziehung = F h ˆX t+1 t Ŷ t+h t = G ˆX t+h t X t+h ˆX t+h t = F (X t+h 1 ˆX t+h 1 t ) + V t+h 1 finden wir für h =, 3,... Ω t+h t = F Ω t+h t F + Q Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.35/??
Die h-schritt Prognose (Fs) Analog ergibt sich für h = 1,, 3,... (h) t := E[(Y t+h Ŷ t+h t ) (Y t+h Ŷ t+h t ) ] bzw (h) t = G Ω t+h t G + R Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.36/?? Beispiel: Random walk plus noise Das Modell ist Y t = X t + W t, W t WN(0,σ w) X t+1 = X t + V t, V t WN(0,σ v) In die Kalman Prognosegleichung setzen wir für Y 0 := 1, G = 1, F = 1 und R = σ w, Q = σ v. Ŷ t+1 t = E t Y t+1 = ˆX t t 1 + Θ t t (Y t Ŷ t t 1 ) = (1 a t ) Ŷ t t 1 + a t Y t [Ŷ t t 1 = G ˆX t t 1 und ˆX t+1 t = F ˆX t t 1 + Θ t 1 t (Y t G ˆX t t 1 )] a t = Θ t t = Ω t t 1 Ω t t 1 +σ w Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.37/?? Beispiel: Random walk plus noise (Fs) Ω t t 1 = Ω, Ω t t 1 ist unabhängig von t, so existiert eine steady-state Lösung, Ω t+1 t = Ω = Ω t t 1. Ω Ω t+1 t = Ω +σv Ω +σw = Ω Lösung der quadratischen Gleichung für Ω > 0 ist Ω = 1 (σ v + σv 4 + 4σ vσw) und die a t konvergieren mit t zu a mit a = Ω Ω +σw Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.38/??
Schätzung von Zustandsraummodellen Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.39/?? Die Likelihood Sei θ ein Vektor, der alle Parameter, die in dem Modell auftreten umfasst. Die Likelihood ist L(θ; Y 1,..., Y T ) = T f t (Y t Y t 1,..., Y 0 ) t=1 Dies folgt aus der einfachen Beziehung für die Wahrscheinlichkeit des Durchschnitts von zwei Ereignissen A und B Bei drei Ereignissen: P(A B) = P(A) P(B A) P(A B C) = P(A) P(B A) P(C B, A) Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.40/?? Die Gaussian Likelihood Unter Annahme von gemeinsam normalverteilten Fehlern ist Y t X t und W t MVN(0, R) X t+1 Y t,..., Y 0 MVN( ˆX t+1 t, Ω t+1 t ) wie oben angegeben. Unter sehr allgemeinen Bedingungen gilt, dass der ML Schätzer konsistent, asymptotisch normalverteilt, asymptotisch unverzerrt und asymptotisch effizient ist. Dh die üblichen t-tests können angewendet werden. Dynamische Systeme und Zeitreihenanalyse // Zustandsraummodelle und Kalman Filter 15 p.41/??