Está en la página 1de 8

Capı́tulo 2

2.1.
obtener algoritmos que procesen, de forma eficiente y práctica, secuencialmente las medidas
en cada instante de tiempo a partir de las observaciones de las que disponemos previamente:
algoritmos recursivos.

El capı́tulo se iniciará con la descripción del modelo de espacio de estados donde se es-
tablecerán las hipótesis que se exigen al sistema considerado. Una vez descrito el modelo, se
estudiarán los problemas de predicción, filtrado y suavizamiento óptimo para el mismo. Pa-
ra finalizar, se realizará un ejemplo de simulación en el que aplicaremos el filtro de Kalman
mediante el software estadı́stico “R-project”.

2.2. Modelo de espacio de estados


Vamos a considerar un sistema estocástico lineal en tiempo discreto cuya modelización ma-
temática se realizará mediante la ecuación del estado y la ecuación de la observación que se
detallan a continuación.

ECUACIÓN DEL ESTADO. Es una ecuación vectorial en diferencias, que también sue-
le denominarse ecuación de transición del estado, dada por:

xk+1 = Φk+1,k xk + Γk+1,k wk , k ≥ 0, (2.1)

donde

xk ; k ≥ 0 es un proceso estocástico n-dimensional que representa el estado del sistema.


wk ; k ≥ 0 es un proceso estocástico r-dimensional que representa el ruido del estado ó
la perturbación aleatoria del estado.
Tanto Φk+1,k como Γk+1,k son matrices determinı́sticas conocidas en cualquier instante
k. Φk+1,k es conocida como matriz de transición del estado, y Γk+1,k conoce como matriz
de transición ó de ponderación de la perturbación aleatoria.

ECUACIÓN DE LA OBSERVACIÓN. Suponemos que el vector estado no es direc-


tamente accesible (no se puede observar), pero disponemos de una sucesión de observaciones
relacionadas linealmente con él, que a su vez están perturbadas por un ruido aditivo. La ecua-
ción de observación es pues una ecuación vectorial dada por:

zk = Hk xk + vk , k ≥ 0, (2.2)

1
2 CAPÍTULO 2.

donde

hzk ; k ≥ 0i es un proceso estocástico m-dimensional que representa las medidas u obser-


vaciones

hvk ; k ≥ 0i es un proceso estocástico m-dimensional que representa el ruido de la obser-


vación ó la perturbación aleatoria de la observación.

Hk es una matriz determinı́stica, conocida, denominada matriz de medidas o de observa-


ciones.

HIPÓTESIS DEL MODELO. Se imponen las siguientes hipótesis sobre el estado inicial y
los ruidos que intervienen en las ecuaciones (2.1) y (2.2):
1. El estado inicial, x0 , es un vector n-dimensional gaussiano con media cero, E[x0 ] = 0, y
matriz de covarianzas E[x0 xT0 ] = P0 .

2. El proceso hwk ; k ≥ 0i es una sucesión ruido blanco1 gaussiana, centrada, con matriz de
covarianzas E[wk wkT ] = Qk , k ≥ 0.

3. El proceso hvk ; k ≥ 0i es una sucesión ruido blanco gaussiana, centrada, con matriz de
covarianzas E[vk vkT ] = Rk , k ≥ 0 donde Rk es una matriz definida positiva.

4. El estado inicial, x0 , y los ruidos aditivoshwk ; k ≥ 0i y hvk ; k ≥ 0i son mutuamente


independientes.
Las matrices φk+1,k , Γk+,k , Qk , Rk y Hk se conocen como matrices del sistema, y si no
dependen del instante de tiempo k se dice que el sistema es invariante en el tiempo.

Las ecuaciones del modelo anteriormente descritas (ecuación del estado y de la observación),
junto con las hipótesis anteriores, se conocen como modelo de espacio de estados.

La matriz de transición del estado entre dos instantes arbitrarios k y j, notada φk,j , está
definida por:
φk,j = φk,k−1 φk−1,k−2 · · · φj+1,j , k > j,

φk,k = Inxn , donde Inxn es la matriz identidad de dimensión nxn.


Teniendo en cuenta esta definición y la ecuación (2,1) es posible representar el vector estado
mediante la siguiente expresión:

k
X
xk = Φk,j xj + Φk,j Γi,i−1 Wi−1 , k > j. (2.3)
i=j+1

En el Capı́tulo 1 nos hemos centrado en la estimación del estado xk en cualquier instante k,


a partir de un número arbitrario de observaciones zo , . . . , zj . En el caso de que j < k nos
encontramos ante un problema de predicción, si j = k el problema se denomina de filtrado y,
finalmente, si j > k el problema se denomina de suavizamiento. Estos problemas se tratarán
por separado en las secciones 2.3, 2.4 y 2.5 respectivamente.
1
Se denomina ruido blanco a una sucesión de variables aleatorias incorreladas.
2.3. PREDICCIÓN ÓPTIMA 3

2.3. Predicción óptima


En esta sección, establecemos un procedimiento para obtener los estimadores de predicción
óptimos x̂k/j , k > j, a partir del estimador de filtrado x̂j/j . También estudiaremosel proceso
error { x̃k/j ; k > j }, donde x̃k/j = xk − x̃k/j , presentando sus propiedades fundamentales y
estableciendo una expresión para su matriz de covarianzas, Pk/j = E[x̃k/j x̃Tk/j ], que proporciona
una medida de la magnitud del error y, por tanto, de la bondad de los estimadores.
Estos resultados, que se establecen en el teorema siguiente, suponen que el filtro óptimo, x̂j/j , y
la matriz de covarianzas, Pj/j = E[x̃j/j x̃Tj/j ] del correspondiente error de filtrado x̃j/j = xk − x̃j/j ,
son conocidos para algún j; el algoritmo para obtener x̃j/j y Pj/j será desarrollado en la sección
siguiente.

Teorema 2.1. Bajo las hipótesis establecidas en la Sección 2.2, si el filtro óptimo, x̃j/j , y
la matriz de covarianzas del correspondiente error de filtrado, Pj/j , son conocidas para algún
j < k entonces se tiene que:

I El predictor óptimo, x̃j/j , está dado por:

x̃k/j = Φk,j x̃j/j , k>j (2.4)

I El proceso error de predicción, {x̃k/j ; k > j}, es gaussiano, tiene media cero y su matriz de
covarianzas, Pk/j , verifica la siguiente relación:

k
X
Pk/j = Φk,j Pj/j ΦTk,j + Φk,j Γi,i−1 Qi−1 ΓTi,i−1 ΦTk,i , k>j (2.5)
i=j+1

Demostración
Demostración del apartado a): Ya que, por el colorario de Doob, x
bk/j = E [xk /z0 , ..., zj ], usando
(2.3) y la linealidad de la esperanza condicionada, se tiene
k
X
x
bk/j = Φk,j E [xj /z0 , ..., zj ] + Φk,i Γi,i−1 E [wi−1 /z0 , ..., zj ] , k>j (2.6)
i=j+1

Puesto que, para i > j, wi−1 es independiente de z0 , ..., zj , tenemos que E [wi−1 /z0 , ..., zj ] =
E [wi−1 ] , i > j. Ası́, como E [wi−1 ] = 0, de (2.6)obtenemos que la relación (2.4) es cierta.
Demostración del apartado b): El error de predicción , x̃k/j , es gaussiano,
  puesa diferencia
 de
dos vectores gaussianos ,xk y x bk/j , y su esperanza es cero ya que E x bk/j = E xk/j .
Teniendo en cuenta las expresiones (2.3)y (2.4)para xk y x bk/j , respectivamente ,obtenemos
quex̃k/j se puede expresar como:

k
X
x̃k/j = Φk,j x̃j/j + Φk,i Γi,i−1 wi−1 , k > j, (2.7)
i=j+1
 T

y, ya que E x̃j/j wi−1 = 0, la expresión (2.5) es inmediata sin más que tener en cuenta las
hipótesis del modelo.

Un caso particular en el estudio del problema de predicción, denominado predicción óptima


adelantada una etapa ó predicción en una etapa, se representa en el siguiente colorario.
4 CAPÍTULO 2.

Colorario 2.1. Bajo las hipótesis establecidas en la Sección 2.2, si el filtro óptimo, x
bk/j ,
y la matriz de covarianzas del error de filtrado, Pk/k , se conocen para algún k ≥ 0, entonces se
verifica que

a) El predictor óptimo en una etapa está dado por:

x
bk+1/k = Φk+1,k x
bk/k , k ≥ 0.

b) El proceso error de predicción ,{x̃k+1/k ; k ≥ 0}, es gaussiano, tiene media cero y su matriz
de covarianzas viene dada por la expresión:

Pk+1/k = Φk+1/k Pk/k ΦTk+1,k + Γk+1,k Qk ΓTk+1,k , k ≥ 0.

Tanto el Teorema 2.1 como el Corolario 2.1 presentan limitaciones a la hora de realizar
predicciones pues es necesario conocer el filtro y la matriz de covarianzas del error de filtrado.
En la sección siguiente veremos que los problemas de predicción y filtrado están relacionados
ya que el filtro se obtendrá a partir del predictor en una etapa y, como ya se ha establecido en
el Corolario 2.1, el predictor en una etapa se obtiene a partir del filtro.

2.4. Filtrado óptimo


Para tratar el problema de filtrado óptimo serı́a ideal disponer de algoritmos eficientes (que
usen poca memoria y proporcionen la salida de forma rápida) y prácticos (útiles y que se pue-
dan aplicar con facilidad). Concretamente, algoritmos recursivos que procesen las observaciones
secuencialmente y proporcionen estimaciones en cada instante de tiempo en función de las es-
timaciones obtenidas en el instante anterior, sin necesidad de repetir todos los cálculos desde
el inicio. El algoritmo que más interés ha suscitado es el conocido filtro de Kalman. En 1960,
Kalman [12] establece un algoritmo recursivo para obtener el filtro óptimo basándose en la
utilización del modelo de espacio de estados. En principio, Kalman consideró un sistema en el
cual la ecuación de la observación no se encontraba afectada por ningún ruido; sin embargo,
en esta sección, sı́ tendremos en cuenta el ruido de las observaciones. Concretamente, en el
teorema siguiente se presenta el algoritmo de filtrado de Kalman para los sistemas descritos en
la Sección 2.2.

Teorema 2.2 (filtro de kalman) Consideramos el modelo de espacio de estados descrito


en la Sección 2.2. En esta situación se tiene que:

a) El filtro óptimo, x
bk/k , se obtiene recursivamente por la relación:
 
x̂k/k = φk,k−1 x̂k−1/k−1 + Kk zk − Hk φk,k−1 x̂k−1/k−1 , k > 0, (2.8)
x
b0/0 = K0 z0

donde Kk es una matriz n × m, denominada matriz de ganancia del filtro, especificada


por la siguiente expresión:
−1
Kk = Pk/k−1 HkT Hk Pk/k−1 HkT + Rk

, k ≥ 0, (2.9)

y Pk/k−1 es la matriz de covarianzas del error de predicción, dada por

Pk/k−1 = Φk,k−1 Pk−1/k−1 ΦTk,k−1 + Γk,k−1 Qk−1 ΓTk,k−1 , k > 0,


P0/−1 = P0
2.4. FILTRADO ÓPTIMO 5

b) El proceso error de filtrado, x̃k/k ; k ≥ 0 es gaussiano, centrado y su matriz de covarian-
zas, Pk/k , está dada por:

Pk/k = [Inxn − Kk Hk ] Pk/k−1 , k ≥ 0 (2.10)


Demostración
Demostración del apartado a): Si tenemos en cuenta las hipótesis de gaussianidad e independen-
cia mutua (hipótesis 1 a 4),el filtro óptimo de xk basado en las observaciones hasta el instante
k coincide con el estimador lineal de menor error cuadrático medio, y a partir de la ecuación
de Wiener Hopf se obtiene que
 
x̂k/k = x̂k/k−1 + Kk zk − ẑk/k−1 , (2.11)
 
donde ẑk/k−1 = E zk /z0 , . . . , zk/k−1 . Ası́, si tenemos en cuenta la expresión (2.2), la li-
nealidad de la esperanza condicionada y la independencia de vk respecto de las observciones
z0 , . . . , zk/k−1 , tenemos la siguiente expresión para el estimador lineal de menor error cuadrático
medio de zk basado en las observaciones pasadas:

ẑk/k−1 = Hk x̂k/k−1 , k > 0,

ẑ0/−1 = E[z0 ] = 0 (2.12)


Entonces, sustituyendo (2.12) en (2.11) y teniendo en cuenta que x̂k/k−1 = Φk+1,k x̂k−1/k−1
(Corolario 2.1), la expresión recursiva (2.8) del filtro óptimo es inmediata. A continuación
vamos a obtener la expresión (2.9) para la matriz de ganancia Kk . Para ello partimos de (2.11)
para obtener que x̃k/k = x̃k/k−1 − Kk z̃k/k−1 , con z̃k/k−1 = zk − ẑk/k−1 y claramente tenemos que

E x̃k/k zkT = E x̃k/k−1 zkT − Kk E z̃k/k − 1zkT


     

   
Entonces,
h ya quei por el Lema de proyecciones
h ortogonales,
i E x̃k/k zkT = 0, E x̃k/k−1 zkT =
T
 
E x̃k/k−1 z̃k/k−1 yE z̃k/k−1 zkT = E z̃k/k−1 z̃k/k−1
T
, se deduce que,
 T
  T
−1
Kk = E x̃k/k−1 z̃k/k−1 E z̃k/k−1 z̃k/k−1 ,k ≥ 0
Ahora, partiendo de quez̃k/k−1 = Hk x̃k/k−1 + vk , k ≥ 0, obtenemos que:

T
= Pk/k−1 HkT , k ≥ 0,
 
E x̃k/k−1 z̃k/k−1
T
(2.13)
= Hk Pk/k−1 HkT + Rk , k ≥ 0
 
E x̃k/k−1 z̃k/k−1

y, sin más que sustituir en la expresión anterior Kk , (2.9) queda probada. Notemos que al ser
Rk definida positiva, la inversa que aparece en (2.9) existe siempre.

Demostración del apartado b): El error de estimación, x̃k/k = xk − x̂k/k , es gaussiano pues
es una diferencia de vectores gaussianos y claramente tiene media cero ya que E[x̂k/k ] = E[xk ].

Para demostrar la expresión de su matriz de covarianzas partimos de la siguiente expresión


del error del filtrado obtenida de (2.11):

x̃k/k = x̃k/k−1 − Kk z̃k/k−1 , k ≥ 0,


6 CAPÍTULO 2.

de donde utilizando (2.13), se obtiene,

Pk/k = Pk/k−1 − Pk/k−1 HkT KkT − Kk Hk Pk/k−1 + Kk [Hk Pk/k−1 HkT + Rk ]KkT , k ≥ 0

Finalmente, por la expresión (2.9), tenemos que Kk [Hk Pk/k−1 HkT + Rk ] = Pk/k−1 HkT , y por
tanto, (2.10) queda probada.

El algoritmo recursivo establecido en este teorema se conoce como algoritmo de filtrado


de Kalman o, simplemente, filtro de Kalman.

Notemos que, si suprimimos la hipótesis de normalidad del estado inicial y de los ruidos, no
se puede garantizar que el filtro proporcione la esperanza condicionada del vector estado dadas
las observaciones. No obstantes, como se ha mostrado en el Capı́tulo 1, podemos asegurar que
el filtro es el estimador óptimo de xk , en el sentido de mı́nimos cuadrados, si nosremitimos a la
clase de todos los estimadores lineales.

2.5. Suavizamiento óptimo


En esta sección se estudia el problema de suavizamiento óptimo para el sistema definido en
2.2. Como ya hemos comentado, el problema de suavizamiento consiste en estimar el estado
xk dadas las observaciones {z0 , ...., zj } con j = k + 1, k + 2, .... Nuevamente, las hipótesis de
gaussianidad e independecia mutua (hipótesis 1-4) que se han exigido al sistema garantizan que
el suavizador óptimo x̂k/j es:
x̂k/j = K[xk /z0 , ..., zj ].

Es posible establecer una clasificación del problema de suavizamiento de acuerdo a que los
ı́ndices k y j sean variables ó fijos: Suavizamiento punto fijo, suavizamiento intervalo fijo y
suavizamiento retraso fijo (ver Medith [13]). En este trabajo nos centraremos en la obtención
de un algoritmo de suavizamiento punto fijo.

2.5.1. Suavizamiento punto fijo


Fijado un instante k, el suavizamiento punto fijo consiste en obtener recursivamente es-
timadores de xk cuando el número de observaciones aumenta. A continuación se presenta el
algoritmo para obtener el suavizador punto fijo y la matriz de covarianzas del error de estima-
ción.

Teorema 2.3 (Suavizamiento punto fijo) Consideramos el modelo de espacio de estados


descrito en la Sección 2.2 y suponemos que el filtro óptimo y la matriz de covarianzas del error
de filtrado son conocidos en cualquier instante de tiempo. En esas condiciones se tiene que:

a) El suavizador óptimo punto fijo, x̂k/j , viene dado por la expresión


 
x̂k/j = x̂k/j−1 + Kk,j zj − Hj φj,j−1 x̂j−1/j−1 , j = k + 1, k + 2, ..., (2.14)
y la condición inicial es el filtro, x̂k/k .
2.5. SUAVIZAMIENTO ÓPTIMO 7

b) La matriz de ganancia del suavizador punto fijo, Kk,j verifica que


−1
Kk,j = Lk,j−1 φTj,j−1 HjT Hj Pj,j−1 HjT + Rj

, j = k + 1, k + 2, ..., (2.15)
donde Lk,j es obtenido recursivamente por la relación

Lk,j = Lk,j φTj,j−1 [I − Kj Hj ]T , j = k + 1, k + 2, ...,


Lk,k = Pk/k

c) La matriz de covarianzas del error, Pk/j , viene dado por

Pk/j = Pk/j−1 − Kk/j Hj Pj/j−1 HjT + Rj Kk,j


  T
, j = k + 1, k + 2, ... (2.16)
y la condición inicial es la matriz de covarianzas del error de filtrado Pk/k .

Demostración

Demostración del apartado a): Si tenemos en cuenta las hipótesis de gaussianidad e inde-
pendencia mutua exigidas al sistema (hipótesis 1-4), el suavizador óptimo de xk basado en las
observaciones hasta el instante j coincide con el estimador lineal de menor error cuadrático
medio. Si partimos de la expansión recursiva dada en (1.3), y tenemos en cuenta la expresión
(2.12) y la expresión del predictor en una etapa, se obtiene fácilmente la expresión recursiva
del suavizador dada en (2.14).

Demostración del apartado b): A continuación vamos a obtener la expresión (2.15) para la matriz
de ganancia Kk,j . Si partimos de la expresión (2.14) obtenemos que x̃k/j = x̃k/j−1 − Kk,j z̃j/j−1 ,
con z̃j/j−1 = zj ẑj/j−1 , y por lo tanto:

E[x̃k/j zjT ] = E[x̃k/j−1 zjT ] − Kk,j E[z̃j/j−1 zjT ]

Entonces, ya que por el Lema de proyecciones ortogonales, E[x̃k/j zjT ] = 0, E[x̃k/j−1 zjT ] =
T
E[x̃k/j−1 z̃j/j−1 ] y E[z̃j/j−1 zjT ] = E[z̃j/j−1 z̃j/j−1
T
], se deduce que,

T
E[x̃k/j−1 z̃j/j−1 T
](E[z̃j/j−1 z̃j/j−1 ])−1 , j = k + 1, k + 2, ...,

Dado que z̃j/j−1 = Hj x̃j/j−1 + vj , k >= 0, se tiene que:

T
E[x̃k/j−1 z̃j/j−1 ] = Lk,j−1 Φj,j−1 HjT , j = k + 1, k + 2, ...,
T
(2.17)
E[z̃j/j−1 z̃j/j−1 ] = Hj Pj/j−1 HjT + Rj , j = k + 1, k + 2, ...,

donde E[x̃k/j−1 x̃Tj−1/j−1 ] = Lk,j−1 se puede obtener recursivamente a partir de la siguiente rela-
ción:

Lk,j = Lk,j−1 ΦTj,j−1 [I − Kj Hj ]T , j = k + 1, k + 2, ...,


Lk,k = Pk/k·
8 CAPÍTULO 2.

Ası́, la expresión (2.15) queda probada sin más que sustituir (2.17) en la expresión de Kk,j ante-
T
riormente mostrada. Notemos que al ser Rk definida positiva, la matriz inversa E[Z̃j/j−1 Z̃j/j−1 ]−1
existe siempre.
Demostración del apartado c): Consideremos el error de estimación definido por x̃k/j = xk −
Xbk/j . Para demostrar la expresión de su matriz de covarianzas dada en (2.16) partimos de la
expresión del error de suavizado obtenida a partir de (2.14):

x̃k/j = x̃k/j−1 − Kk,j z̃j/j−1 , j = k + 1, k + 2, ...,

de donde utilizando (2.17) se obtiene,

T
Pk/j = Pk/j−1 − Kk,j [Hj Pj/j−1 HjT + Rj ]Kk,j , j = k + 1, k + 2, ...
y por tanto (2.16) queda probada.
Este algoritmo proporciona el estimador óptimo de xk para un instante fijo k basado
en el conjunto de observaciones { z0 , ..., zj ; k ≥ 0} a partir del estimador de xk basado en
{ z0 , ..., zj−1 ; k ≥ 0} donde j = k + 1, k + 2. Por lo tanto, es un algoritmo recursivo en j hacia
adelante.

2.6. Ejemplo de aplicación del filtro de Kalman


Para comprobar la actuación del filtro de Kalman, el estimador de predicción y el suavizador
punto fijo, vamos a aplicarlos a un ejemplo de simulación y, para ello, se han implementado sus
correspondientes algoritmos desarrollados a lo largo de este capı́tulo (ver apéndice A). En cada
iteración, el programa simula el estado que se desea estimar y su correspondiente observación
y, a partir de las mismas, proporciona las estimaciones de predicción, filtrado y suavizamiento,
ası́ como las varianzas de los errores de estimación que nos proporcionarán una medida de la
bondad de ajuste de los mismos.
Concretamente, hemos considerado el siguiente sistema invariante en el tiempo:

xk+1 = 0,9xk + wk , k ≥ 0

zk = xk + vk , k≥0
Donde x0 es una variable gaussiana con media cero y varianza uno;el ruido hw(k); k ≥ 0i
es una sucesión blanca gaussiana, centrada, con varianzas 0.15, y hvk ; k ≥ 0i es un proceso de
ruido blanco gaussiano, centrado y con varianzas R = 0,5.

Se han realizado 50 iteraciones del algoritmo, y los resultados obtenidos se presentan en las
figuras 1-6.

En la Figura 1, se ha representado una simulación del estado, las correspondientes observa-


ciones y las estimaciones de predicción en una etapa, filtrado y suavizamiento punto fijo x̂ k +1 .
k
Se puede observar cómo el filtro proporciona mejores estimaciones que el predictor y, a su vez,
el suavizador punto fijo proporciona mejores estimaciones que el filtro. Este resultado era es-
perable puesto que el estimador de suavizamiento utiliza más observaciones que el estimador
de filtrado, y este utiliza más información que el predictor (para calcular las estimaciones de
filtrado en un instante arbitrario, se utilizan las observaciones hasta ese instante k , el suaviza-
dor punto fijo utiliza k + 1 observaciones y el estimador de predicción en una etapa utiliza las
observaciones hasta el instante k − 1).

También podría gustarte