🧠 Filtro de Kalman y Espacio de Estados

Estimación recursiva de estados latentes en sistemas dinámicos

Estado Predicción Actualización Suavizado
Módulo 8 de 12
💡 Piénsalo así: Kalman es como navegar con GPS: tienes una estimación de tu posición (estado), el GPS te da una medición ruidosa, y el filtro combina ambas para dar la mejor estimación posible. Si la señal GPS se pierde, el filtro "predice" tu posición basado en tu velocidad anterior hasta recuperar señal.
  • Comprender la representación en espacio de estados y sus componentes: ecuación de estado y ecuación de observación.
  • Aplicar el filtro de Kalman: paso de predicción y paso de actualización.
  • Estimar parámetros variantes en el tiempo (TVP) usando Kalman.
  • Distinguir entre filtrado, pronóstico y suavizado.
  • Espacio de Estados

    📐 Ecuación de Estado (Transición)

    Describe cómo evoluciona el estado latente θₜ en el tiempo: θₜ = F·θₜ₋₁ + ηₜ con ηₜ ~ N(0, Q). F es la matriz de transición (cómo el estado anterior influye en el actual) y Q es la covarianza del error de estado.

    Intuición: Es como un modelo autorregresivo para el estado mismo. Por ejemplo, si θₜ es el PIB potencial, hoy depende del PIB potencial de ayer más un shock.

    Ejemplo: Para un AR(2): yₜ = φ₁yₜ₋₁ + φ₂yₜ₋₂ + εₜ, el estado es θₜ = [yₜ, yₜ₋₁]' y la transición es: [yₜ, yₜ₋₁]' = [φ₁, φ₂; 1, 0]·[yₜ₋₁, yₜ₋₂]' + [εₜ, 0]'.

    Peligro común: Si la matriz F tiene valores propios fuera del círculo unitario, el estado es no estacionario y el filtro puede no converger.

    📏 Ecuación de Observación

    Conecta el estado latente con los datos observados: yₜ = H·θₜ + εₜ con εₜ ~ N(0, R). H es la matriz de medición (qué parte del estado se observa) y R es la varianza del error de medición.

    Intuición: No vemos el estado directamente, sino una versión ruidosa de él. Es como tratar de adivinar la "temperatura real" (estado) leyendo un termómetro imperfecto (observación).

    Ejemplo: En un modelo de factor dinámico, el estado es el "factor común" de la economía (no observable) y las observaciones son PIB, empleo, consumo, inflación, que dependen del factor con diferentes cargas.

    Peligro común: Si R (varianza de medición) se subestima, el filtro confía demasiado en los datos ruidosos y el estado estimado será muy volátil.

    🔁 Filtro de Kalman: Predicción-Actualización

    El filtro itera dos pasos: Predicción: θₜ|ₜ₋₁ = F·θₜ₋₁|ₜ₋₁, Pₜ|ₜ₋₁ = F·Pₜ₋₁|ₜ₋₁·F' + Q. Actualización: Kₜ = Pₜ|ₜ₋₁·H'·(H·Pₜ|ₜ₋₁·H' + R)⁻¹, θₜ|ₜ = θₜ|ₜ₋₁ + Kₜ·(yₜ - H·θₜ|ₜ₋₁), Pₜ|ₜ = (I - Kₜ·H)·Pₜ|ₜ₋₁.

    Intuición: Primero predices dónde estará el estado basado en la dinámica anterior. Luego, cuando llega la nueva observación, actualizas la estimación. K (Ganancia de Kalman) decide cuánto peso dar a la nueva información vs. la predicción.

    Ejemplo numérico: Si K ≈ 1, confías casi totalmente en la nueva observación (el modelo de estado es poco confiable). Si K ≈ 0, ignoras la observación (el ruido de medición es enorme).

    Peligro común: Las matrices Q y R son difíciles de estimar. En la práctica se estiman por máxima verosimilitud junto con los parámetros del modelo.

    Kₜ = Pₜ|ₜ₋₁H' (H Pₜ|ₜ₋₁H' + R)⁻¹

    🔮 Suavizado vs. Filtrado vs. Pronóstico

    Filtrado: Estimas θₜ usando datos hasta t (θₜ|ₜ). Pronóstico: Estimas θₜ₊ₖ usando datos hasta t (θₜ₊ₖ|ₜ). Suavizado: Estimas θₜ usando todos los datos disponibles T > t (θₜ|ₜ).

    Intuición: El filtrado es tiempo real (lo que sabes ahora), el pronóstico es hacia adelante, el suavizado es mirar hacia atrás con información completa.

    Ejemplo: En un modelo de inflación subyacente: filtrado te da la inflación subyacente hoy, pronóstico te da la esperada en 3 meses, y suavizado (Rauch-Tung-Striebel) te da la inflación subyacente revisada para todo el período histórico.

    Peligro común: El suavizado siempre es más preciso que el filtrado (usa más información), pero solo es posible para análisis históricos, no en tiempo real.

    Aplicaciones Clave

    📈 TVP (Time-Varying Parameters)

    Modelos con parámetros que cambian lentamente: yₜ = βₜ·xₜ + εₜ, con βₜ = βₜ₋₁ + ηₜ. El filtro de Kalman estima βₜ en tiempo real. Usado para medir la evolución de la NAIRU, la elasticidad PIB-empleo, o el beta de una acción.

    📊 Filtro de Hodrick-Prescott (HP)

    Una versión simplificada de un filtro de Kalman. Descompone una serie en tendencia (estado) y ciclo. Aunque popular, tiene limitaciones: parámetro λ arbitrario, efecto de punto final, y asume que la tendencia es I(2).

    Simulación: Filtro de Kalman

    Genera un estado latente y una observación ruidosa. El filtro estima recursivamente el estado.

    Presiona "Kalman" para ver el filtro en acción.
    Ejemplo Paso a Paso: Kalman para un Modelo AR(1) Local
    Paso 1: Especificar el espacio de estados

    Modelo: yₜ = μₜ + εₜ (observaciones = nivel local + ruido) y μₜ = μₜ₋₁ + ηₜ (el nivel sigue un random walk). Estado: θₜ = μₜ. Ecuación de observación: yₜ = [1]·μₜ + εₜ. Ecuación de estado: μₜ = [1]·μₜ₋₁ + ηₜ. Asume Q = 1, R = 1.

    Paso 2: Inicializar el filtro

    μ₀|₀ = y₁ (primera observación como estimación inicial). P₀|₀ = 1 (varianza inicial). En t=1, predecimos: μ₁|₀ = μ₀|₀, P₁|₀ = P₀|₀ + Q = 2. Luego actualizamos con y₁: K₁ = P₁|₀·(P₁|₀ + R)⁻¹ = 2/(2+1) = 0.67. μ₁|₁ = μ₁|₀ + 0.67·(y₁ - μ₁|₀). ¡La ganancia de Kalman es 0.67!

    Paso 3: Iterar para t = 2, 3, ...

    Para t=2: μ₂|₁ = μ₁|₁, P₂|₁ = P₁|₁ + Q. Después de actualizar, P₁|₁ = (1-K₁)·P₁|₀ = 0.33·2 = 0.66. Entonces P₂|₁ = 0.66 + 1 = 1.66. K₂ = 1.66/(1.66+1) = 0.62. Observa que K disminuye con el tiempo a medida que el filtro gana confianza en la estimación del estado.

    Paso 4: Interpretar resultados

    Después de suficientes períodos, K converge a un valor de estado estacionario (depende de la razón Q/R). Las estimaciones filtradas μₜ|ₜ son más suaves que las observaciones originales yₜ. La verosimilitud se calcula del error de predicción: -2·ln(L) = Σ[ln(2π·Sₜ) + vₜ²/Sₜ], donde vₜ = yₜ - μₜ|ₜ₋₁ y Sₜ = Pₜ|ₜ₋₁ + R.

    Mini Quiz: Filtro de Kalman
    💡 Responde las preguntas sobre el filtro de Kalman.

    📌 Resumen del módulo

  • Espacio de estados separa el estado latente (dinámica) de las observaciones (medición ruidosa).
  • Filtro de Kalman: predice (usa la dinámica) y actualiza (incorpora nueva observación con la ganancia K).
  • Ganancia K equilibra la confianza entre el modelo de estado y las observaciones.
  • Suavizado (RTS) da estimaciones más precisas del estado histórico usando toda la muestra.