FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 1-
EL FILTRO DE KALMAN: APLICACION AL ESTUDIO DEL CICLO ECONOMICO
DOCTORADO EN MODELIZACION ECONOMICA APLICADA. INSTITUTO L. R. KLEIN. UNIVERSIDAD AUTONOMA DE MADRID Febrero 2001
Julián Moral Carcedo Area Macroeconomía
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 2-
INDICE 1.- Representación de sistemas dinámicos lineales en el espacio de los estados. 2.- El filtro de Kalman. 3.- La estimación de las matrices de parámetros. 4.- Alisado de los vectores de estado. 5.-Aplicación práctica. BIBLIOGRAFIA RECOMENDADA. • J.D. Hamilton. (Capítulo 13). Time series analysis. Princeton University Press. 1991 • J.D. Hamilton. State space Models. Handbook of Econometrics. Volumen IV. 1994. • A.C. Harvey. Forecasting structural time series model and the Kalman filter.
Cambridge University Press. 1989. • Chang-Jin Kim y Charles R. Nelson. State-Space Models with regime switching.
MIT Press (1999).
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 3-
1.- Representación de sistemas dinámicos lineales en el espacio de los estados (Hamilton. 1994. Handbook of econometrics vol. IV) Un sistema dinámico es aquel que evoluciona en función del tiempo, o alternativamente aquel en el que una o más variables dependen de sus valores en otro instante del tiempo. El requisito de linealidad se traduce en que las variables que forman parte del sistema se relacionan entre sí a través de relaciones lineales. El caso más simple de modelo dinámico lineal lo constituye un proceso AR(1):
ttt YY εφ += −1
Dada la estructura del proceso AR(1), toda la información necesaria para predecir la dinámica futura del sistema se halla en tY , así:
ktkttk
tk
tk
kt YY +−++−
+−
+ +++++= εεφεφεφφ 122
11 ...
tk
tkttttkt YYYEYYYYE φ== +−−+ )(,...),,( 21
La representación en el espacio de los estados (state-space representation) de un sistema dinámico lineal, consiste en capturar la parte dinámica del sistema en un vector de estado tξ formado por, posiblemente, r variables no observadas. La dinámica del vector de estado se resume en:
11 ++ += ttt vFξξ (rx1) (rxr)(rx1) (rx1) Donde F es una matriz (r x r )de coeficientes y tν una perturbación aleatoria que se distribuye idéntica e independientemente (i.i.d) como una normal multivariante N(0,Q). Las n variables observadas del sistema se relacionan con el vector de estado a través de la ecuación de observación o medida:
tttt wHxAy ++= ξ''
(nx1) (1xk)(kx1) (1xr)(rx1) (nx1) Donde tw se distribuye i.i.d como una N(0,R). También se incluye un conjunto de k variables exógenas Xt , normalmente de tipo determinístico y en todo caso carentes de información relevante sobre el futuro del sistema, así puede contener valores retardados de Yt o variables independientes del vector de estado y de la perturbación aleatoria de la ecuación de medida.
[ ][ ] t
kktttttktkt
ttttktktktttttkt
FHxAyyEHxA
yywHxAEyyyE
ξξξξ
ξξξξξ
'',...,,...,,,''
,...,,...,,,)''(,...),,...,,(
11
1111
+=+=
=++=
+−−++
−−+++−−+
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 4-
Ejemplo de representación en el espacio de los estados: AR(p)
tptpttt YYYY εφφφ ++++= −−− ...2211
Ecuación de estado (vector de estado)
-
+
=
−
−
−
+−
−
0
0
010
001 2
121
1
1
MM
L
MMM
L
M
t
pt
t
tp
pt
t
t
Y
YY
Y
YY εφφφ
tξ = F * 1−tξ + tν
Ecuación de medida
[ ]
=
+−
−
1
1001
pt
t
t
t
Y
YY
YM
L
Yt = H’ tξ
2.-El filtro de Kalman. El punto de partida es la representación del sistema en la forma del “espacio de los estados” (state-space representation), en la que la dinámica de n variables “endógenas” está determinada por el siguiente sistema de ecuaciones1:
tttt wHxAy ++= ξ'' Ecuación de medida /observación.
(nx1) (1xk)(kx1) (1xr)(rx1) (nx1)
ttt vF += −1ξξ Ecuación de estado.
(rx1) (rxr)(rx1) (rx1) asumiéndose además:
=0
)'(Q
vvE t τ
1 James D.Hamilton. Time Series Analysis. Princeton University Press.1994.
Para t=τ En otro caso
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 5-
=0
)'(R
wwE t τ
0)( =τwvE t para todo t y τ.
Adicionalmente se asume que los valores retardados de ξ no esta correlacionados con ninguna de las perturbaciones aleatorias. El filtro de Kalman consiste en un algoritmo que proporciona estimaciones de la ecuación de estado a partir de la información disponible hasta el momento t (“condicionada” a la información disponible en t) y de la ecuación de medida, para posteriormente, corregir las estimaciones conforme se amplia la información disponible. El algoritmo precisa de dar un valor inicial t=1 al vector ξ, el cual no se basa en información muestral, sino que puede considerarse un prior que se impone o bien simplemente se toma la esperanza incondicional del vector, así :
)(ˆ10/1 ξξ E=
que llevará asociada una matriz de errores cuadráticos medios (MSE: mean squared error):
[ ])'ˆ)((ˆ( 1/1/1/ −−− −−= tttttttt EP ξξξξ que en la primera recursión, si se asume la esperanza incondicional, consistiría en la varianza incondicional :
[ ] [ ]))'())(((()'ˆ)((ˆ( 11110/110/110/1 ξξξξξξξξ EEEEP −−=−−=
Otra posibilidad es sustituir el valor de 0/1ξ y de 0/1P por valores a priori (similar a un
prior bayesiano), recogiendo 0/1P la incertidumbre del prior (será una matriz semidefinida positiva con los elementos de la diagonal principal mayores cuanto mayor sea la incertidumbre). A partir de los valores iniciales del vector de estado se produce la “predicción” de la ecuación de medida :
1/1/ˆ''ˆ −− += ttttt HxAy ξ
donde el error cometido es:
ttttttttttttt HHxAHxAyy ωξξξωξ +−=+−++=− −−− )ˆ('ˆ''''ˆ 1/1/1/ cuyo MSE es:
)')ˆ(')()ˆ('()'ˆ)(ˆ( 1/1/1/1/ tttttttttttttt HHEyyyyE ωξξωξξ +−+−=−− −−−−
Para t=τ En otro caso
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 6-
)'()'ˆ)(ˆ('
)')ˆ(')()ˆ('(
1/1/
1/1/
tttttttt
tttttttt
EHHE
HHE
ωωξξξξ
ωξξωξξ
+−−=
=+−+−
−−
−−
dado que asumimos que las variables de estado no están correlacionadas con la
perturbación aleatoria de la ecuación de medida, por lo que )'ˆ( 1/ −− ttttE ξξω =0.
Definíamos antes el MSE de la ecuación de estado como:
[ ])'ˆ)((ˆ( 1/1/1/ −−− −−= tttttttt EP ξξξξ Por lo que podemos escribir:
RHPH
EHHEyyyyE
tt
tttttttttttttt
+=
=+−−=−−
−
−−−−
1/
1/1/1/1/
'
)'()'ˆ)(ˆ(')'ˆ)(ˆ( ωωξξξξ
El siguiente paso es actualizar el vector de estado en base a la observación de la ecuación de medida en t , es decir:
[ ]021021/ ,...,,...,,,,/ˆ xxxyyyxyE ttttttttt −−−−= ξξ lo cual, siguiendo a Hamilton (1994, op.cit.), proporciona la siguiente ecuación:
)ˆ''()'(ˆˆ1/
11/1/1// −
−−−− −−++= tttttttttttt HxAyRHPHHP ξξξ
con un MSE asociado dado por:
1/1
1/1/1// ')'( −−
−−− +−= tttttttttt PHRHPHHPPP
El siguiente paso sería predecir de nuevo tt /1ˆ
+ξ a partir de la ecuación de estado:
0ˆˆ//1 +=+ tttt Fξξ
con MSE igual a QFFPP tttt +=+ '//1 .
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 7-
DIAGRAMA DE FLUJO EN EL FILTRO DE KALMAN
Chang-Jin Kim and Charles R. Nelson. State-Space Models with regime switching. MIT Press (1999). 3.-La estimación de las matrices de parámetros En la anterior exposición hemos asumido conocidas F, H, Q, R y los valores iniciales del vector de estado y MSE inicial, sin embargo rara es la ocasión en que sea así, de hecho lo habitual es que haya que proceder a su estimación.
0|00/1 Pξ
1|11| −−− = tttt Fξξ
QFFPP tttt += −−− '1|11|
1|1| '' −− += ttttt HxAy ξ
1||1|1| '' −−− −−=−= ttttttttt HxAyyy ξη
RHPHf tttt += −− 1/1| '
)()( 1|1
1|1/1// −−
−−− += tttttttttt fHP ηξξ
1/1
1/1/1// ')( −−
−−− −= tttttttttt PHfHPPP
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 8-
Una de las propiedades del filtro de Kalman es que en cada iteración nos proporciona la forma de determinar la función de verosimilitud del modelo ( la probabilidad de que el verdadero PGE sea el que se ha supuesto), concretamente la función de verosimilitud se determinaría a través de:
1|1|1'
1|1| 21
))2ln((21
)( −−−
−− ∑∑ −−= ttttttttn ffl ηηπθ
Para determinar las matrices F, H, Q, y R “simplemente” habría que maximizar esta expresión, es decir, partiendo de unos valores F, H, Q y R determinados (bastaría “inventárselos”) obtendríamos una verosimilitud determinada, a continuación modificaríamos los valores de F,H, Q y R de manera que aumentase la verosimilitud del sistema. Procediendo iterativamente acabaríamos por obtener un máximo de la función de verosimilitud de existir éste.
Existen varios procedimientos iterativos, algoritmo EM, Newton-Marquadt, Berndt, Hall, Hall y Hausman,..., que nos permitirían realizar estos cálculos (los dos últimos proporcionan además la covarianza de los estimadores). 4.-Alisado de los vectores de estado Dado que el vector de estado se estima a partir de la información contenida en la observación inmediatamente anterior, resulta a veces conveniente estimar el vector de estado teniendo en cuenta toda la información muestral, para ello se diseño el alisado de los vectores de estado que no son más que un conjunto de recursiones (en sentido opuesto) que nos permiten incorporar toda la información disponible (ver Hamilton). 5.-Aplicación práctica filtro de Kalman Una de las aplicaciones más interesantes del filtro de Kalman fue la propuesta por Stock y Watson en 1991 (A probability model of the coincident economic indicators”. Contenido en “ Leading Economic Indicators: new approaches and forecasting records”). En aquella aplicación los autores trataban de obtener un indicador del ciclo económico (variable inobservada) a partir de la información contenida en un conjunto de indicadores coyunturales habitualmente usados en EE.UU. La idea subyacente en ese trabajo es sumamente intuitiva y razonable: suponemos que la evolución del indicador es debida a condicionantes propios del indicador y a condicionantes derivados del ciclo económico, es decir, sea jtI el valor
del indicador j en el momento t. Según lo expuesto este indicador evoluciona en función de componentes específicos, jtCE , y de un componente común al resto de indicadores
(“el ciclo económico”), tCC , por lo tanto:
tjtjt CCCEI +=
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 9-
Los componentes específicos y según la hipótesis de los componentes inobservables, pueden descomponerse en tendencia, jtT , estacionalidad, jtE e irregularidad, jtε , que
en este caso identificaremos con un ruido blanco. En resumen:
jttjtjtjt CCETI ε+++=
Si consideramos 3 indicadores podemos expresar en forma matricial:
t
t
t
ETETECCT
III
+
=
3
2
1
3
3
2
2
1
1
3
2
1
1100010
0011010
0000111
εεε
Asumiremos que la tendencia puede recogerse a través de un proceso integrado de orden 1:
jTtjtjt vTT += −1
La estacionalidad responde a la presencia de un proceso AR(11) de raíces complejas unitarias en las frecuencias estacionales:
jEtjtjtjtjtjt vEEEEE +−−−−−= −−−− 11321 ...
Supondremos que el Ciclo Común puede expresarse como un AR(1)
Cttt vCCCC += −1φ Así para el indicador j podemos expresar la representación en el espacio de los estados: Ecuación de medida:
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 10-
( ) Jt
tjt
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
t
jt
jt
EEEEEEEEEEECCT
I ε+
=
−
−
−
−
−
−
−
−
−
−
10
9
8
7
6
5
4
3
2
1
0000000000111
Ecuación de estado:
+
−−−−−−−−−−−
=
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
0
0
0
0
0
0
0
0
0
0
0100000000000
0010000000000
0001000000000
0000100000000
0000010000000
0000001000000
0000000100000
0000000010000
0000000001000
0000000000100
1111111111100
000000000000
0000000000001
11
10
9
8
7
6
5
4
3
2
1
1
1
10
9
8
7
6
5
4
3
2
1
jEt
CCt
jTt
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
t
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
t
jt
vvv
EEEEEEEEEEE
CCT
EEEEEEEEEEECCT
φ
Para obtener la expresión en el espacio de los estados de los tres indicadores conjuntamente, introducimos la siguiente notación:
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 11 -
−−−−−−−−−−−
=Φ
0100000000000
0010000000000
0001000000000
0000100000000
0000010000000
0000001000000
0000000100000
0000000010000
0000000001000
0000000000100
1111111111100
0000000000001
j j=1,2
(12 x 12)
−−−−−−−−−−−
=Ω
0100000000000
0010000000000
0001000000000
0000100000000
0000010000000
0000001000000
0000000100000
0000000010000
0000000001000
0000000000100
1111111111100
000000000000
0000000000001
φ
(13 x 13)
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 12 -
=Α
−
−
−
−
−
−
−
−
−
−
10
9
8
7
6
5
4
3
2
1
1
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
t
jt
EEE
EEEEEEEE
CCT
;
=Β
−
−
−
−
−
−
−
−
−
−
10
9
8
7
6
5
4
3
2
1
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
jt
j
EEE
EEEEEEEE
T
; j=1,2
(13 x 1) (12 x 1)
=
0
0
0
0
0
0
0
0
0
0
1
jEt
CCt
jTt
vvv
V
=
0
0
0
0
0
0
0
0
0
0jEt
jTt
j
v
v
W j = 1, 2
(13 x 1) (12x1)
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 13 -
Por lo tanto la expresión conjunta de la ecuación de medida es:
+
=
t
t
t
ttBBA
III
2
2
1
2
1
1
3
2
1
001100000010
000001100010
000000000111
εεε
LLL
LLL
LLL
(3x1) (3x 37) (37 x 1) (3 x1) Y la ecuación de estado:
+
ΦΦ
Ω=
− 2
1
1
12
1
1
2
1
1
00
00
00
WWV
BBA
BBA
tt
(37 x 1) (37 x 37) (37 x 1) (37 x 1) Desarrollo de la aplicación: Se han seleccionado tres indicadores: Consumo de Cemento, Consumo de Energía eléctrica e Indice de Producción Industrial en el período Enero 1978 – Marzo 2000. A efectos de la aplicación se ha seleccionado φ= -0,6. En la aplicación estricta del filtro de Kalman se ha supuesto que R=I(3),(matriz identidad de tamaño 3); Q=I(37), valores iniciales del vector de estado = 0 (37), matriz de varianzas y covarianzas del vector de estado = I(37). (a) (b)
0 5 0 1 0 0 1 5 0 2 0 0 2 5 0 3 0 0
1 0 0 0
1 5 0 0
2 0 0 0
2 5 0 0
3 0 0 0
3 5 0 0
4 0 0 0
0 5 0 1 0 0 1 5 0 2 0 0 2 5 0 3 0 0
0 . 6
0 . 8
1
1 . 2
1 . 4
1 . 6
1 . 8x 1 0
4
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 14 -
(c) (a)=Consumo de cemento (b)= Consumo de electricidad (c)=IPI De la observación de la representación gráfica de las series podemos observar que presentan comportamientos específicos en la tendencia y estacionalidad o alternativamente no parece que posean una tendencia común (dado que presentan niveles muy distintos) y no existe justificante económico que nos haga pensar que presente patrones estacionales similares, asimismo, si es posible creer que ambas responden al ciclo de una forma similar (todas las series económicas se ven afectadas por la posición cíclica de la economía)
0 50 100 150 200 250 30040
50
60
70
80
90
100
110
120
130
140
-
2 .000
4.000
6.000
8.000
1 0 . 0 0 0
1 2 . 0 0 0
1 4 . 0 0 0
1 6 . 0 0 0
1 8 . 0 0 0
20.000
1 9 1 7 2 5 3 3 4 1 4 9 5 7 6 5 7 3 8 1 8 9 9 7 1 0 1 1 1 2 1 2 1 3 1 4 1 5 1 6 1 6 1 7 1 8 1 9 2 0 209 2 1 225 233 2 4 249 257 265
- 1 5 , 0
3 5 , 0
8 5 , 0
1 3 5 , 0
1 8 5 , 0
Consumo cemento C electricidad IPI
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 15 -
- 500
-
500
1 . 0 0 0
1 . 5 0 0
2.000
2.500
3.000
3.500
4.000
1 9 1 7 2 5 3 3 4 1 4 9 5 7 6 5 7 3 8 1 8 9 9 7 1 0 1 1 1 2 1 2 1 3 1 4 1 5 1 6 1 6 1 7 1 8 1 9 2 0 209 2 1 225 233 2 4 249 257 265
Consumo cemento Tendencia
-
2 .000
4.000
6.000
8.000
1 0 . 0 0 0
1 2 . 0 0 0
1 4 . 0 0 0
1 6 . 0 0 0
1 8 . 0 0 0
20.000
1 9 1 7 2 5 3 3 4 1 4 9 5 7 6 5 7 3 8 1 8 9 9 7 1 0 1 1 1 2 1 2 1 3 1 4 1 5 1 6 1 6 1 7 1 8 1 9 2 0 209 2 1 225 233 2 4 249 257 265
Consumo electricidad Tendencia
-
20
40
60
80
1 0 0
1 2 0
1 4 0
1 6 0
1 8 0
1 9 1 7 2 5 3 3 4 1 4 9 5 7 6 5 7 3 8 1 8 9 9 7 1 0 1 1 1 2 1 2 1 3 1 4 1 5 1 6 1 6 1 7 1 8 1 9 2 0 209 2 1 225 233 2 4 249 257 265
IPI Tendencia
FILTRO DE KALMAN: APLICACIÓN AL ESTUDIO DEL CICLO Julián Moral Carcedo
- 16 -
Ciclo común Como podemos observar el ciclo común está altamente contaminado con ruido, por ello aplicamos un filtro de paso bajo (media móvil centrada de 8 términos) para obtener una estimación más clara del ciclo común.
-80,00
-60,00
-40,00
-20,00
0,00
20,00
40,00
60,00
80,00
1 15 29 43 57 71 85 99 113 127 141 155 169 183 197 211 225 239
-10,00
-5,00
0,00
5,00
10,00
15,00
20,00
-0,03
-0,02
-0,01
0
0,01
0,02
0,03
0,04
0,05
0,06
0,07
11980
11982
11984
11986
11988
11990
11992
11994
11996
11998
12000
-10
-5
0
5
10
15
20
PIB Ciclo Comun
Top Related