Está en la página 1de 16

Captulo 5

Observadores de Estados
Como se vio en el captulo anterior, existen distintos enfoques dentro de la
comunidad FDI a la hora de generar residuos para la deteccin y diagnstico.
Entre estas tcnicas se encuentran los observadores de estados. En este captulo se van a mostrar los fundamentos de los observadores de estados, tanto
para sistemas lineales como para sistemas no lineales, y se ejemplificar su
uso para tareas de deteccin y aislamiento o localizacin.

5.1

Conceptos Fundamentales

En determinadas circunstancias resulta necesario estimar el valor de ciertas


variables de estado que no son medidas en un sistema. La estimacin de este
tipo de variables se determina observacin. Un dispositivo (o programa)
que estima u observa las variables de estado se llama observador de estados
(o simplemente observador ).
A la hora de precisar qu es un observador de estado, nos encontramos
con mltiples definiciones. Segn Ogata [79]:
Un observador de estados estima las variables de estado con base
en las mediciones de las variables de salida y de control.
Para Pouliezos y Stavrakakis [84] los observadores son:
Sistemas dinmicos cuyo propsito es reconstruir el estado x de
un modelo en espacio de estados basndose en las entradas
medidas u y en las salidas y.
Ms recientemente podemos destacar la definicin acuada por Kinnaert [59]:
Un observador de estados es un filtro que recibe como entradas
las seales de entrada, u(t), y de salida, y(t), de un sistema
y genera una estimacin sobre el estado x(t).
A la hora de dar una clasificacin de los tipos de observadores, Ogata [79]
se fija en el nmero de variables que son observadas. De esta manera propone
una clasificacin de observadores en tres tipos:
53

54

5.2. Observadores de Estado para Sistemas Lineales


Orden completo: el observador capta todas las variables del sistema,
sin importar si algunas estn disponibles para una medicin directa.
Orden reducido: el observador estima menos de n variables de estado,
en donde n es la dimensin del vector de estado.
Orden mnimo: es un observador de orden reducido con el mnimo
orden posible, es dedir, si n es la dimensin del vector de estado y m
es la dimensin del vector de salidas, el observador de orden mnimo
observa n-m variables.

Dentro de cada una de estas familias, podemos tener, a su vez, otras


subdivisiones. Por ejemplo, si consideramos el tipo de sistema que estamos
tratando podemos tener observadores para sistemas lineales y observadores
para sistemas no lineales.
A continuacin se mostrar los fundamentes de observadores de estados
para el caso ms general, el de observadores de orden completo para sistemas
lineales. Posteriormente se realizar una extensin para sistemas no lineales.

5.2
5.2.1

Observadores de Estado para Sistemas Lineales


Observador de Orden Completo

Consideramos que tenemos un sistema en espacio de estados de la siguiente


forma:
x(t)

= A x(t) + B u(t)

(5.1)

y(t) = C x(t)

(5.2)

En donde x(t) es el vector de estado (vector de dimensin n), u(t) es el


vector de entradas, y(t) es el vector de salidas, y A, B y C son matrices de
coeficientes constantes.
Podemos definir un observador de estados genrico 1 para dicho sistema
como [59, 79]:
x
(t) = A x
(t) + B u(t) + Ke (y(t) C x
(t))

(5.3)

y(t) = C x
(t)

(5.4)

El ltimo trmino, es un valor de correccin que contiene la diferencia entre la


salida medida y la salida estimada. El trmino de correccin ayuda a reducir
los efectos producidos por la diferencia entre el modelo dinmico y el sistema
real [79]. La matriz Ke funciona como una matriz de ponderacin.
En la figura 5.1 se puede ver de manera esquemtica el sistema en espacio
de estados y su observador genrico correspondiente.
1

A este observador de estados tambin se le conoce como observador de estados de


Luenberger, debido a que inicialmente fue propuesto por Luenberger [67, 68]

5. Observadores de Estados

55

++

++

++

- +

Ke
Observador de estados de orden completo

Figura 5.1: Esquema de un observador de estados de orden completo.


Podemos obtener la dinmica del error en la estimacin del estado restando la ecuacin 5.1 de la ecuacin 5.3:
x(t)
x
(t) = A x(t) A x
(t) Ke (C x(t) C x
(t))
= (A Ke C) (x(t) x
(t))
Y definiendo la diferencia entre x(t) y x
(t) como el vector de error ex (t):
ex (t) = x(t) x
(t)
Entonces el error en la estimacin del estado, nos queda:
e x (t) = (A Ke C) ex (t)

(5.5)

A partir de la ecuacin 5.5 podemos ver que el comportamiento dinmico


del vector de error se determina mediante los valores caractersticos de la
matriz (A Ke C). Si la matriz es estable, el vector converger a cero para
cualquier vector de error inicial (e(0)). Es decir que x
(t) converger a x(t) sin
considerar los valores de x
(0) y x(0). Si se eligen los valores caractersticos de
la matriz A Ke C de manera que el comportamiento dinmico del vector de
error sea asintticamente estable y suficientemente rpido, cualquier vector
de error tender a 0 con una velocidad adecuada.
Al igual que para el error en la estimacin del estado, podemos obtener
el error en la estimacin de la salida como:
ey (t) = y(t) C x
(t)

56

5.2. Observadores de Estado para Sistemas Lineales

Que est directamente relacionado con el error en la estimacin del estado


de la siguiente manera:
ey (t) = C ex (t)

5.2.2

Problema Dual

Como acabamos de ver, el problema a la hora de disear un observador es


determinar la matriz Ke tal que la dinmica del error sea asintticamente
estable con una velocidad de respuesta suficiente, es decir, determinar Ke ,
tal que A Ke C tenga los valores caractersticos deseados. Este problema
se corresponde con el problema de ubicacin de polos [79].
Consideramos el siguiente sistema lineal en espacio de estados:
x = A x + B u
y = C x
Al disear el observador de estados de orden completo, resolvemos el
problema dual, es decir, solucionamos el problema de ubicacin de polos
para el sistema dual:
z = A z + C v
n = B z
Suponiendo que la seal de control v es (realimentacin de estado):
v = K z
Si el sistema dual es de estado completamente controlable, la matriz de
ganancias de realimentacin del estado K se determina de tal modo que
la matriz A C K produzca un conjunto de los valores caractersticos
deseados.
Si 1 , 2 , . . . , n son los valores caractersticos de la matriz del observador
de estado, tomando los mismos i que los valores caractersticos deseados
de la matriz de ganancias de realimentacin del estado del sistema dual,
obtenemos:
|sI (A C K)| = (s 1 )(s 2 ), . . . , (s n )
Considerando que los valores caractersticos de A C K y los de A
son iguales, tenemos que,

K C

|sI (A C K)| = |sI (A K C)|


Comparando el polinomio caracterstico |sI (A K C)| y el polinomio
caracterstico |sI (A Ke C)| para el sistema observador, encontramos que
Ke y K se relacionan mediante
Ke = K
Por tanto, usando la matriz K determinada mediante el enfoque de ubicacin de polos en el sistema dual, la matriz de ganancias del observador Ke
para el sistema original se determina a partir de la relacin Ke = K [79].

5. Observadores de Estados

57

Condicin necesaria y suficiente para la observacin del estado La


condicin necesaria y suficiente para la determinacin de la matriz de ganancias del observador Ke para los valores caractersticos deseados de A Ke C
es que el dual del sistema original:
z = A z + C v
sea de estado completamente controlable. La condicin de controlabilidad
completa del estado para este sistema dual es que el rango de:
.
. .
[C ..A C .. ..(A )n1 C ]
sea n. Por tanto, sta es la condicin para una observabilidad completa
del sistema original.

5.2.3

Diseo de Observadores

La seal de realimentacin a travs de Ke funciona como una seal de correccin para el modelo de la planta. Si tenemos implcitos factores desconocidos
de la planta con valores significativos, la seal de realimentacin debera ser
grande (es decir, el valor de Ke ). Sin embargo, si la salida est excesivamente
contaminada con ruidos o perturbaciones, esta seal ya no es confiable y por
lo tanto la seal de realimentacin debera ser relativamente pequea. A la
hora de disear la matriz Ke debemos prestar atencin a los efectos de perturbaciones y ruido. Habitualmente se suele disear como un compromiso
una respuesta rpida y la sensibilidad frente a perturbaciones y ruido.
Existen diversas tcnicas que podemos destacar a la hora de realizar un
diseo automtico de la matriz de ganancias. Segn Ogata [79] podemos
destacar principalmente tres tcnicas para el diseo:
Enfoque directo
Enfoque de sustitucin
Frmula de Ackerman
Debido a que la Frmula de Ackerman es la ms genrica, as como la
ms usada, a continuacin se proceder a describir esta tcnica, dejando al
lector la consulta de las otras dos en [79].
5.2.3.1

Frmula de Ackerman

La frmula de Ackerman para la determinacin de la matriz de ganancias


del observador Ke , viene dada por la siguiente ecuacin:

58

5.2. Observadores de Estado para Sistemas Lineales

Ke

(A)
=

C
CA
CA2
..
.

CAn1

0
0
0
..
.

en donde (A) es igual a (S) que es el polinomio caracterstico deseado


para el observador de estado. Viene dado por la expresin 5.6:
n
Y
(S) =
(S i ) = (S 1 )(S 2 ) . . . (S n )

(5.6)

i=1

en donde 1 , 2 , . . . , n son los valores caractersticos deseados. La eleccin


de dicho conjunto de valores en muchos casos, no es nica [79]. Por tanto, podran elegirse muchas ecuaciones caractersticas diferentes como ecuaciones
caractersticas deseadas. Para cada ecuacin caracterstica deseada, tenemos
una matriz Ke diferente.
A la hora de disear un observador de estado, resulta conveniente calcular varias matrices de ganancias del observador Ke con base en varias
ecuaciones caractersticas deseadas distintas. Para cada una de las matrices
de ganancias que obtenemos, deben realizarse pruebas en simulacin con el
fin de ver el comportamiento y la respuesta del observador generado. Como
se ha comentado previamente, en muchos casos prcticos la eleccin de la
mejor matriz Ke se resuelve en un compromiso entre la respuesta rpida y
la sensibilidad ante perturbaciones y ruidos.

5.2.4

Observadores de Estados para Deteccin y Diagnstico


de Fallos

Considerando que tenemos el mismo sistema en espacio de estados que hemos utilizado anteriormente (ecuaciones 5.1 y 5.2), podemos ampliar este
sistema de modo que se considere la influencia de fallos y perturbaciones de
la siguiente manera:
x(t)

= A x(t) + B u(t) + f (t) + w(t)

(5.7)

y(t) = C x(t) + C(t) + v(t)

(5.8)

donde f (t) denota los fallos en el proceso, C(t) los fallos en los sensores, y
w(t), v(t) los ruidos en el proceso y en el sensor, respectivamente.
Considerando esta nueva descripcin de sistema, se modifican las ecuaciones de error en la estimacin de la salida y del estado, obteniendo lo
siguiente:
e x (t) = (A Ke C) ex (t) + w(t) + f (t)

5. Observadores de Estados

59

ey (t) = C ex (t) + C + v(t)


En ausencia de fallos y perturbaciones f (t), C, w(t) y v(t) son cero y
por lo tanto la matriz A Ke C hace que el error en la estimacin de la salida
(ey (t)) tienda a 0 (despus de los transitorios en los instantes iniciales). En
cambio, si ocurre un fallo, la seal ey (t) se va a ver afectada por este fallo,
por eso podemos utilizar el error en la estimacin de la salida como
residuo para la deteccin y el diagnstico de fallos.
A la hora de explotar las cualidades de estos residuos se proponen varias tcnicas. En la literatura se proponen diversas clasificaciones de estas
tcnicas, aunque segn Kinnaert [59] podemos destacar principalmente dos
tcnicas:
La primera consiste en seleccionar matriz de ganancias del observador
de manera que las trayectorias generadas por cada tipo de fallo se confinen es subespacios independientes del espacio ey . Proyectando ey (t)
en cada uno de esos subespacios y analizando la magnitud de cada
proyeccin podemos lograr el aislamiento de los fallos.
La segunda tcnica consiste en utilizar un banco de observadores, y
ofrece ms flexibilidad que la anterior. El banco de observadores estar
formado por p observadores de estados, diseados de tal manera que
cada observador i sea sensible nicamente al fallo i (esquema de observador dedicado o simplificado [28, 27]), o que cada observador
i sea sensible a todos los fallos excepto al fallo i (esquema de observador generalizado [41]). En la figura 5.2 se puede ver un esquema
de observador de estados dedicado.

Sistema

Observador 1

..
.

y1
y2
yp

ey1

.
.
.

Observador p

eyp

Figura 5.2: Esquema de observador dedicado.

60

5.3. Observadores de Estado para Sistemas No Lineales

Otros autores, como Isermann [51] considera un mayor espectro de tcnicas que Kinnaert y considera tcnicas que ste no tena en cuenta, como
filtros de Kalman o bancos de observadores excitados por todas las salidas
(adems de los ya mencionados bancos de observadores excitados por una
salida y por todas las salidas excepto una).
Por su parte, Pouliezos y Stavrakakis [84], hacen una clasificacin de
tcnicas fijndose en el tipo de fallo que queremos aislar. As consideran tres
tipos: esquemas de deteccin de fallos en sensores, actuadores y componentes.

5.3

Observadores de Estado para Sistemas No Lineales

Al contrario que para los sistemas lineales, que han sido ampliamente estudiados y existe un campo terico bien fundado, para los sistemas no lineales
no ocurre lo mismo [86]. Los fundamentos tericos estn lejos de la solidez
que tienen para sistemas lineales, y su aplicacin prctica tampoco es comparable. Otro problema con los sistemas no lineales es que no existe una
tcnica genrica para disear este tipo de observadores, y su resultado final
depender directamente del tipo de sistema con el que estemos trabajando.
Existen mltiples aproximaciones para el diseo de observadores no lineales [59, 3, 86, 16, 54]. Algunas consisten en emplear directamente los
conocimientos existentes para la generacin de observadores lineales, o en
extenderlos para sistemas no lineales (como el observador de Luenberger extendido [121] o el filtro de Kalman extendido [6, 43]), otras son nicamente
aplicables en determinados tipo de sistemas no lineales (como, por ejemplo,
para sistemas bilineales [59, 3]), tambin existen aproximaciones basadas en
tcnicas de optimizacin (observador de horizonte mvil [71, 94], observador
con algoritmos genticos [119, 83]), etc...
En el presente apartado se pretende dar un introduccin a las tcnicas
ms conocidas y usadas en la literatura.

5.3.1

Diseo bsico

Consideremos un sistema no lineal con la siguiente forma2 :


x = f (x)x <n
y = h(x)x <p
Recordando lo que habamos visto previamente, un observador de estados
para un sistema lineal viene definido por las ecuaciones 5.9 y 5.10.
x
(t) = A x
(t) + B u(t) + Ke (y(t) C x
(t))
2

(5.9)

Este tipo de sistema no lineal, en el que el estado es funcin nicamente del estado
y no de la entrada, se considerar nicamente en este apartado de diseo bsico. Posteriormente se ampliar la definicin sistema no lineal.

5. Observadores de Estados
y(t) = C x
(t)

61
(5.10)

El ltimo trmino de la ecuacin 5.9 (Ke (y(t) C x


(t))) se conoce
habitualmente como inyeccin de salida. Utilizando esta inyeccin de salida
directamente sobre el sistema no lineal podemos tener una primera aproximacin a un observador de estados no lineal. Esta tcnica se conoce como
aproximacin lineal [86].
5.3.1.1

Aproximacin Lineal

Como primer intento para la construccin de un observador de estados para


un sistema no lineal, empleamos la misma tcnica que utilizamos para sistemas lineales [86]. El observador de estados nos quedar como se puede ver
en las ecuaciones 5.11 y 5.12.
x
= f (
x) + Ke (
y y)

(5.11)

y = h(
x)

(5.12)

A la hora de disear la matriz de ganancias Ke existen diversas propuestas en la literatura. Entre ellas podemos destacar [121], en donde Zeitz
presenta una extensin del observador de Luenberger para ser aplicado en
sistemas no lineales. En este artculo se propone un conjunto de ecuaciones
para el clculo de la matriz Ke . Posteriormente, Adjallah et al. [2] tambin
proponen un mtodo para el clculo de dicha matriz.
Al igual que ocurra en el caso lineal, consideramos el error en la estimacin del estado de la siguiente manera:
e = x
x = f (
x) f (x) + Ke (h(
x) h(x))
Aunque en este caso la dinmica del error ser no lineal, por lo que no queda
del todo clara la estabilidad en la dinmica del error.
Debido a que la estabilidad de un sistema linealizado en torno a un
punto fijo implica estabilidad local para el sistema no lineal correspondiente
en torno a dicho punto fijo, podemos intentar linealizar la dinmica del error
en torno a su punto fijo (e = 0) [86]:
e = f (
x) f (x) + Ke (h(
x) h(x))
= f (x + e) f (x) + Ke (h(x + e) h(x))
h
2
= ( f
x (x) + Ke x (x))e + O(e )
De tal forma que el sistema linealizado es [86]:
f
h
(x) + Ke (x))e
x
x
Desafortunadamente, dicha linealizacin depende directamente de un estado x que, por una parte no es una cantidad fija, y, por otra parte es
desconocida para nosotros, por lo que no podemos garantizar la estabilidad
del sistema.
e = (

62
5.3.1.2

5.3. Observadores de Estado para Sistemas No Lineales


Mtodos de Lyapunov

Los mtodos de Lyapunov [86] intentan solucionar el problema de la falta


de estabilidad en la aproximacin lineal. Se trata de utilizar la teora de
estabilidad de Lyapunov para analizar y determinar las condiciones bajo las
cuales la dinmica del error no lineal tiene un comportamiento estable en
torno a un punto fijo (e = 0). Como resultados ms importantes dentro de
esta aproximacin podemos destacar los trabajos de Kou et al. [61] y de
Thau [105].
Por lo general se trata de una aproximacin terica, que raramente ofrece
la posibilidad de construir dichos observadores, ya que no da ninguna pista
sobre la manera en la que construir las funciones de Lyapunov ni cmo
disear el observador.
5.3.1.3

Mtodo de Linealizacin Extendida

El mtodo de linealizacin extendida utiliza la inyeccin de salida, al igual


que para la aproximacin lineal, excepto que ahora este trmino inyectado
es de tipo no lineal. El mtodo de linealizacin extendida fue propuesto por
Baumann y Rugh [11]. El mtodo propuesto consiste en utilizar la inyeccin de salida no lineal con la intencin de lograr que la dinmica del error
linealizado tenga autovalores localmente constantes.
A pesar de que Baumann y Rugh demostraron para el sistema del pndulo invertido que los resultados obtenidos son mejores que los que se pueden
obtener linealizando el sistema y diseando un observador lineal, la aproximacin tiene ciertas limitaciones. Primero, cabe destacar que el observador
est diseado de manera que slo puede operar en torno a un conjunto de
puntos del sistema original (aunque esto hace que funcione bien como controlador). Adems, resulta complicada su extensin para sistemas con mltiples
entradas.
5.3.1.4

Tcnicas Lie-algebraic

La idea bsica de estas tcnicas consiste en transformar los sistemas no lineales en sistemas en los que sea vlida la teora para sistemas lineales. En la
literatura podemos encontrar mltiples aportaciones, entre las que cabe destacar el trabajo Keller [58] y el trabajo de Krener e Isidori [62]. La ventaja
de estas tcnicas es que explotan el enorme conocimiento disponible para
el diseo de observadores lineales reduciendo el problema del observador no
lineal a un problema que pueda ser manejado con tcnicas lineales.
El problema a la hora de su aplicacin es que el sistema lineal sobre el que
aplicarla debe cumplir una serie de restrictivas propiedades, y que (aunque
las cumpla) encontrar la transformacin del sistema no resulta una tarea
sencilla.

5. Observadores de Estados

5.3.2

63

Mtodos Basados en el Filtro de Kalman

Una de las herramientas ms usadas para la construccin de observadores de


estados (y para otro gran nmero de aplicaciones) es el filtro de Kalman. En
1960 Rudolph E. Kalman public su famoso artculo [56] en el que establece
los fundamentos de esta tcnica. Desde entonces, han surgido multitud de
aplicaciones, herramientas, trabajos y libros describiendo y ampliando las
cualidades de este filtro. Entre ellos cabe destacar [43] y [6] como dos de los
libros ms completos sobre el tema, y ms recientemente el curso de Welch
y Bishop [118] como una completa introduccin.
El filtro de Kalman es esencialmente un conjunto de ecuaciones matemticas que implementan un estimador del tipo predictor-corrector que es
ptimo en el sentido de que minimiza la covarianza del error estimado. La
gran ventaja del filtro de Kalman es su relativa sencillez y su robustez, ya
es capaz de trabajar considerablemente bien en multitud de situaciones.
5.3.2.1

Filtro de Kalman Discreto

Supongamos que tenemos un sistema lineal discreto en espacio de estado con


la siguiente forma:
xk = Axk1 + Buk + wk1
yk = Cxk + vk
Donde wk es una variable que representa el ruido en el proceso y vk representa
el ruido en la medida. Ambas variables son independientes la una de la otra
(no correlacionadas), blancas, y con una distribucin normal de probabilidad:
p(wk1 ) N (0, Q)
p(vk ) N (0, R)
El filtro de Kalman realiza estimaciones de las variables de estado de un
proceso utilizando una especie de control realimentado: el filtro estima el
estado del proceso en un instante de tiempo y posteriormente obtiene una
realimentacin de las medidas. Por esto, podemos dividir las ecuaciones del
filtro de Kalman en dos grupos: actualizacin en el tiempo (conocida como
prediccin) y actualizacin en las medidas (conocida como correccin)3 .
En la figura 5.3 podemos ver un esquema a alto nivel del funcionamiento
del filtro de Kalman dividido en estas dos etapas.
3

Para una clara compresin de los conceptos del filtro de Kalman, las variables y
algunas matrices llevan un doble subndice (por ejemplo, x
k1|k1 ). El significado del
primer trmino del subndice se corresponde con el instante de tiempo (k es el instante
actual, mientras que k 1 es el instante anterior). El significado del segundo trmino del
subndice se corresponde con la fase del filtro de Kalman (k 1 es la fase de prediccin,
mientras que k es la fase de correccin).

64

5.3. Observadores de Estado para Sistemas No Lineales


xk|k-1

Pk|k-1

PREDICCIN

Valores
iniciales

yk

CORRECCIN

xk|k

Pk|k

Figura 5.3: Lazo del filtro de Kalman.


En la fase de prediccin se realiza el clculo del estado actual (ecuacin 5.13) y de la covarianza del error (conocida como P ) a partir de la
covarianza del error en instante anterior (ecuacin 5.14).
x
k|k1 = A
xk1|k1 + Buk

(5.13)

Pk|k1 = APk1|k1 AT + Q

(5.14)

Durante la fase de correccin se realiza la actualizacin de la ganancia


de Kalman usando la covarianza del error calculada en la fase de prediccin
(ecuacin 5.15), se toman las medidas y se corrige la estimacin del estado
calculado en la fase de prediccin (ecuacin 5.16), y por ltimo se actualiza
la covarianza del error (P ) con la ganancia de Kalman y la covarianza del
error calculada en el instante anterior (ecuacin 5.17).
Kk = Pk|k1 C T (CPk|k1 C T + R)1

(5.15)

x
k|k = x
k|k1 + Kk (yk C x
k|k1 )

(5.16)

Pk|k = (I Kk C)Pk|k1

(5.17)

El filtro de Kalman resulta bastante fcil de calcular debido que es prcticamente lineal (excepto por la inversin de la matriz). Tambin se puede
probar que el filtro de Kalman es un estimador ptimo del estado de un
proceso, dada una mtrica de error cuadrtica. Para ms informacin sobre
el filtro de Kalman, aplicaciones y fundamentos tanto computacionales como
estadsticos, se recomienda [6], [43] o [118] entre otros.
5.3.2.2

Filtro de Kalman Extendido

El filtro de Kalman extendido (EKF, extended Kalman filter) [6, 43, 118] es
una variacin del filtro de Kalman para tratar el problema de la estimacin
de estados cuando estamos trabajando con un sistema que es no lineal.

5. Observadores de Estados

65

Supongamos que tenemos un sistema no lineal con la siguiente forma:


xk = f (xk1 , uk , wk1 )
yk = h(xk , vk )
Al igual que para el filtro de Kalman discreto, wk es una variable que
representa el ruido en el proceso y vk representa el ruido en la medida. Ambas
variables son independientes la una de la otra (no correladas), blancas, y con
una distribucin normal de probabilidad:
p(wk1 ) N (0, Qk1 )
p(vk ) N (0, Rk )
La forma del filtro de Kalman extendido es similar a la del filtro de Kalman discreto, slo que ahora estamos tratando con un sistema no lineal que,
por tanto, tiene que ser linealizado para poderle aplicar el filtro de Kalman.
EKF soluciona este problema de la linealizacin calculando las matrices jacobianas de f y h en torno al estado estimado:
A ser la jacobiana de la funcin de estado f respecto al estado x:
A[i,j] =

f[i]
(
x
, uk , 0)
x[j] k1|k1

(5.18)

W ser la jacobiana de la funcin de estado f respecto al ruido en el


modelo w:
W[i,j] =

f[i]
(
x
, uk , 0)
w[j] k1|k1

(5.19)

C ser la jacobiana de la funcin de salida h respecto al estado x:


C[i,j] =

h[i]
(
x
, 0)
x[j] k|k1

(5.20)

V ser la jacobiana de la funcin de salida h respecto al ruido en el


sensor v:
V[i,j] =

h[i]
(
x
, 0)
v[j] k|k1

(5.21)

Al igual que antes, en la fase de prediccin se realiza el clculo del


estado actual (ecuacin 5.22) y de la covarianza del error (conocida como P )
a partir de la covarianza del error en instante anterior (ecuacin 5.23).
x
k|k1 = f (
xk1|k1 , uk , 0)

(5.22)

Pk|k1 = Ak Pk1|k1 ATk + Wk Qk1 WkT

(5.23)

66

5.3. Observadores de Estado para Sistemas No Lineales

Para la fase de correccin del filtro de Kalman extendido, tambin se


realiza la actualizacin de la ganancia de Kalman usando la covarianza del
error calculada en la fase de prediccin (ecuacin 5.24), se toman las medidas y se corrige la estimacin del estado calculado en la fase de prediccin
(ecuacin 5.25), y por ltimo se actualiza la covarianza del error (P ) con
la ganancia de Kalman y la covarianza del error calculada en el instante
anterior (ecuacin 5.26).
Kk = Pk|k1 CkT (Ck Pk|k1 CkT + Vk Rk VkT )1

(5.24)

x
k|k = x
k|k1 + Kk (yk h(
xk|k1 , 0))

(5.25)

Pk|k = (I Kk Ck )Pk|k1

(5.26)

Como vemos, el filtro de Kalman extendido es una forma de obtener


aproximaciones de primer orden de los trminos ptimos. Cuando el modelo
es extremadamente no lineal, estas aproximaciones pueden generar esperanzas y covarianzas muy distintas a las esperanzas y covarianzas reales. Estas
discrepancias, pueden conducir a un mal funcionamiento del filtro o incluso
a su divergencia [116]. Otro inconveniente del filtro de Kalman extendido es
que requiere el clculo de las matrices jacobianas (ecuaciones 5.18 a 5.21),
lo cual no es trivial en la mayora de los casos, pudiendo producirse errores
de clculo difciles de detectar.

5.3.2.3

Unscented Kalman Filter

A pesar de las ventajas que EKF proporciona para su uso en sistemas no


lineales, como acabamos de ver tambin tiene ciertos problemas o inconvenientes. Con la intencin de solucionar estos problemas surgi el Unscented
Kalman Filter (UKF). UKF fue propuesto por Julier y Uhlmann [55] y posteriormente ampliado y perfeccionado por Wan y van der Merwe [116].
En lugar de utilizar linealizacin de funciones, Julier y Uhlmann proponen realizar la transformacin unscented. Esta transformacin utiliza un
conjunto de puntos y los propaga a lo largo de la funcin no lineal, eliminando
as la linealizacin.
Al igual que EKF, el filtro de Kalman Unscented es recursivo y requiere
las dos etapas de prediccin-correccin. La gran ventaja de esta tcnica frente
a EKF es que evita el clculo de las matrices Jacobianas, presentando adems
una complejidad de clculo numrico comparable a la del EKF, y adems
genera estimaciones de mayor orden. Existen diversos trabajos que comparan
experimentalmente los resultados de ambas tcnicas, entre ellos cabe destacar [80], que aplica ambas tcnicas a un sistema de seguimiento de aviones
por radar, o [111] para un sistema de navegacin.

5. Observadores de Estados

5.3.3

67

Mtodos de Horizonte Mvil

Los mtodos de horizonte mvil (Moving Horizon Estimator, MHE) [71], [94],
[47] realizan estimaciones de estados sin utilizar linealizacin del modelo ni
informacin estadstica de las perturbaciones. MHE realiza las estimaciones
ajustando el modelo de acuerdo a un horizonte de datos pasados y estimando,
a partir del modelo ajustado, los nuevos datos.
La idea bsica de estimacin con horizonte mvil es utilizar nicamente
los N ltimos datos para realizar la estimacin. El horizonte se mueve hacia
delante en cada instante de muestreo para poder as utilizar las medidas
actuales. Supongamos que el horizonte comienza en un instante de muestreo
k N , siendo k el instante de tiempo actual. MHE realiza un proceso de dos
pasos:
Minimizar una funcin de coste (ecuacin 5.27) con respecto al estado
inicial (x(k N )) y a las perturbaciones del modelo (wk ). La funcin
de coste empleada (ecuacin 5.27), es la medida de la distancia entre
la salida del sistema y la salida del estimador (ecuacin 5.28) a lo largo
de un intervalo de tiempo anterior al instante de tiempo para el que se
requiere la estimacin del estado (N intervalos hacia el pasado).
minxkN |k ,wkN |k ,...,wk1|k

k1
X

T
w
j|k
Q1 w
j|k

j=kN

vj|k = yj hj (xj )

k
X

T
vj|k
R1 vj|k(5.27)

j=kN

(5.28)

Posteriormente, partiendo del estado inicial ptimo y de las perturbaciones ptimas, se itera recursivamente el modelo desde el instante
t N hacia el futuro para estimar el estado en el instante o instantes
siguientes.
En la figura 5.4 puede verse un esquema del funcionamiento del MHE.
En la literatura cabe destacar el trabajo de Haseltine y Rawlings [49]
en el que se compara de manera crtica la aproximacin del estimador con
horizonte deslizante y el filtro de Kalman extendido como estimadores para
sistemas no lineales.

5.3.4

Programacin Gentica

Una propuesta adicional a la hora de estimar los estados de un sistema no


lineal consiste en utilizar algoritmos genticos [119, 120, 83, 16]. Algunos
autores proponen la utilizacin de algoritmos evolutivos como solucin a la
hora de seleccionar los valores ms adecuados de la matriz de ganancias del

68

5.3. Observadores de Estado para Sistemas No Lineales


Estado x

Estimacin para k

Estimacin para k+1

k-N

k-N+1

k+1
Tiempo

Figura 5.4: Estimacin por horizonte mvil.


observador. Consideremos el sistema no lineal de las ecuaciones 5.29 y 5.30:
xk = f (xk1 , uk1 )

(5.29)

yk = h(xk )

(5.30)

Para solucionar el problema de la construccin de un observador de estados se propone la siguiente estructura (ecuaciones 5.31 y 5.32):
x
k|k = x
k|k1 + K(k|k1 , uk1 ) k|k1
k|k1 = yk h(
xk|k1 )

(5.31)
(5.32)

Donde k|k1 indica el error a priori de la salida, x


k|k1 es el estado estimado
a priori, y K() es una funcin que depende directamente de las funciones del
error a priori del sistema y de la entrada. El problema radica en identificar
la funcin K() de tal manera que se minimice la media normalizada del
error en la salida (ecuacin 5.33) dado un conjunto de pares entrada salida
{uk , yk }nk=1 .
s =

N
1 X
kk k
N

(5.33)

k=1

En el caso de que se desconozca el modelo del sistema el problema se


puede reducir a la identificacin simultnea del modelo del sistema y de la
matriz de ganancia [119].

También podría gustarte