state estimation markovian models standard kalman … · the selection of the probability of the...
Post on 20-Apr-2020
3 Views
Preview:
TRANSCRIPT
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
STATE ESTIMATIONMARKOVIAN MODELSSTANDARD KALMAN FILTERBAYESIAN ENSEMBLE OF MODELSDYNAMIC SYSTEM IDENTIFICATION MARKOVIAN MULTISTATE KALMAN FILTERBAYESIAN ENSEMBLE OF KALMAN MODELS
CASE: FORECAST OF STREAM FLOWS
Ing. Jesús Velásquez-Bermúdez, Dr. Eng. Chief Scientist DecisionWare - DO Analytics
jesus.velasquez@decisionware.net
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
2
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
Ing. Jesús Velásquez-Bermúdez, Dr. Eng.
Chief Scientist DecisionWare - DO Analytics jesus.velasquez@decisionware.net
ABSTRACT
The paper presents the basics of Machine Learning (ML) and the use of the concepts of State Estimation to implement machine learning algorithms to understand the behavior of a system using
advanced algorithms based on the fundamental concepts that support the so-called Kalman Filter
(KF, Kalman and Bucy, 1961). The Multiple-State Kalman Filter (MS-KF, Velásquez, 1978, [7]) is presented. MS-KF is a methodology that allows to combine: i) the process of determination of
possible Markovian states where can be a system with ii) response functions identified by Kalman Filter for each of the possible states of the system. The selection of the probability of the Markov
State in which the system is located is determined based on a model of Bayesian inference. Basic examples are included to illustrate the concepts.
The learning process associate to MS-KF can be termed as Deep Learning, since it assumes the dynamics of the system as part of the process of identification of parameters, without pre-set a
response function as stationary and certain. The dynamics of the MS-KF allows you to completely re-estimate the system response function considering the information contained in the data more
recent.
If you like an English version please send an email to jesus.velasques@decisionware.net
RESUMEN
El artículo presenta los conceptos básicos de Machine Learning (ML) y el uso de los conceptos de
estimación de estado como un medio para implementar procesos de aprendizaje en una máquina para comprender el comportamiento de un sistema utilizando algoritmos avanzados, basados en los
conceptos fundamentales que soportan el denominado Filtro de Kalman (Kalman Filter, KF, Kalman y Bucy, 1961). Específicamente se presenta la metodología del Filtro de Kalman con Múltiples Estados
(Multiple State Kalman Filter, MS-KF, Velásquez, 1978) la cual permite combinar: i) el proceso
de determinación de los posibles estados markovianos en los que puede estar un sistema, con ii) las funciones de respuesta identificadas por Filtro de Kalman para cada uno de los posibles estados del
sistema. La selección de la probabilidad del estado markoviano en que se encuentra el sistema es determinada con base en un modelo de inferencia bayesiana. Se incluyen ejemplos básicos para
ilustrar los conceptos.
El proceso de aprendizaje asociado al MS-KF se puede denominar Deep Learning, ya que asume
la dinámica del sistema como parte del proceso de identificación de parámetros, sin preestablecer una función de respuesta estacionaria y cierta. La dinámica del MS-KF le permite reestimar
completamente la función de respuesta del sistema teniendo en cuenta la información que contienen los datos mas recientes.
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
3
1. FUNDAMENTOS
1.1. EL CONOCIMIENTO
El conocimiento (“knowledge”) suele entenderse como: hechos o información adquiridos por una persona (o por una máquina) a través de la experiencia o de la educación que conlleva a la
comprensión (teórica o práctica) de un asunto referente a la realidad requerido para dar respuesta a: ¿por qué?, ¿cómo?, ¿cuándo? y ¿dónde?
La rama de la filosofía que estudia el conocimiento es la epistemología y se trata del estudio de la función del entendimiento propio de la persona.
El conocimiento se da en dos formas:
▪ Percepción: es la forma en la que el cerebro detecta las sensaciones que recibe a través de los sentidos para formar una impresión consciente (interpretación) de la realidad física de su
entorno; se resume en el conjunto de procesos mentales mediante el cual una persona
selecciona, organiza e interpreta la información proveniente de estímulos, de pensamientos y de sentimientos, a partir de su experiencia previa.
▪ Matemática: es el conocimiento formal soportado en el razonamiento lógico que se concreta en propiedades y relaciones (ecuaciones) entre entidades abstractas. La matemática es un
lenguaje formal, universal, que puede ser utilizado para plantear problemas de manera no
ambigua en contextos específicos. Estos mismos fundamentos son los que se utilizan para proporcionar conocimiento a las
computadoras, y más específicamente a los robots.
La forma de acumular conocimiento es mediante el aprendizaje que es el proceso a través del cual se modifican y se adquieren habilidades, destrezas, conocimientos, conductas, y valores, como
resultado del estudio, la experiencia, la instrucción, el razonamiento, y la observación. ... El
aprendizaje humano está relacionado con la educación y con el desarrollo personal.
El mundo de la computación (cálculos matemáticos y manejo de la información) ha sido una preocupación fundamental para el ser humano desde hace muchísimos años. Se puede afirmar que
el antecedente de la computación más antiguo (2500 a.C.) se encuentra en el ábaco que consistían
en una serie de piedras que se colocaban en hileras paralelas en el suelo y se movían de derecha a izquierda (los egipcios), o de izquierda a derecha (los griegos), para contar, sumar, restar y
multiplicar.
La hiladora Jenny fue una máquina hiladora multibobina, inventada en Inglaterra en 1764 por James
Hargreaves (aunque algunos identifican también a Thomas Highs como posible inventor). Este dispositivo redujo enormemente el trabajo requerido para la producción de hilo, dando a un solo
trabajador la capacidad de manejar ocho o más carretes a la vez. Fue la primera innovación técnica importante que abrió las puertas a la Revolución Industrial, siendo considerada por ello un símbolo
de la automatización.
Se puede considerar que el pionero en la lucha contra la limitación material de cálculo fue el
matemático y científico británico Charles Babbage (1791-1871), quien vio la posibilidad, en 1823, de crear una máquina que hiciera posible operaciones matemáticas que el hombre no podría realizar a
lo largo de una vida por existir. Babbage convenció al gobierno inglés para que financiara su “ingenio analítico” capaz de solucionar todo tipo de cálculos. Los esfuerzos de Babbage se unieron a los de
Herman Hollerith (1860-1929) que estaba confeccionando el censo de Estados Unidos y tenía el
problema de que apenas había terminado el censo de un ciclo temporal ya tenía que comenzar el próximo, dada la cantidad de tiempo que llevaban los cálculos y tabulaciones. Hollerith introdujo las
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
4
primeras tarjetas perforadas para almacenar información consiguió reducir el tiempo a la mitad. La
idea procedía del sistema de cartulinas perforadas utilizado Joseph Marie Jacquard (1752-1834) para hacer que los telares urdiesen complicados tejidos. Las tarjetas perforadas todavía se utilizaban en
la década de los años setenta del siglo pasado, 150 años después de su invención.
El primer esbozo de un computador moderno es obra, en 1930, del ingeniero alemán Konrad Zuse
(1910-1995) quien construyó una calculadora que ya operaba según el modo binario: la Z1. Posteriormente, varios científicos (Atanasoff, Turing, Aiken, Ecker, Mauchly) desarrollan
computadores que van abriendo el camino a los computadores actuales.
Pero la llegada e introducción de la electrónica hizo posible contar con un factor nuevo de capital
importancia: la velocidad operativa. El ordenador con programación almacenada nacería hacia 1948; lo lanzó IBM con una revolucionaria idea fruto de las investigaciones de John von Neumann (1903-
1957) de la Universidad de Princeton, en New Jersey.
Los computadores cambian la forma de ver el proceso de aprendizaje de los científicos. Es así como
Herbert Simon, Premio Nobel en Economía (1978), afirma: "the computer-based mathematical modeling is the greatest invention of all times".
El proceso se concentra en el proceso a seguir para darle inteligencia a las máquinas computadoras.
Se puede afirmar, de manera muy general, que existen dos corrientes para dar inteligencia a las
máquinas: i) la Inteligencia Artificial (AI, Artificial Intelligence), basados en los principios de la percepción y ii) la Programación Matemática (MP, Mathematical Programming), como su
nombre lo indica, basados en los principios de la matemática.
Independiente de su nombre, que puede estar muy influido por razones comerciales, el objetivo es: implementar procesos de aprendizaje en las computadoras, para que permitan al ser humano
extender su capacidad de cálculo científico, como un medio necesario para extender su conocimiento
del entorno en que se mueve.
1.2. MACHINE LEARNING
MACHINE LEARNING (ML) es el estudio científico de los algoritmos que utilizan sistemas de
información (datos) para mejorar progresivamente su rendimiento en una tarea específica, normalmente orientada a comprender el comportamiento de un sistema complejo, el cual puede
variar desde un “gran sistema”, como una cuenca, hasta un “sistema sencillo” compuesto por un individuo en particular.
Los algoritmos de ML construyen un modelo matemático (por ejemplo, estiman los parámetros de un modelo algebraico) a partir de los datos de la muestra, conocidos como "datos de entrenamiento",
con la finalidad de hacer predicciones o tomar decisiones sin haber sido explícitamente programados para realizar esa tarea.
ML se utiliza en múltiples tipos de aplicaciones como, las cuales se pueden clasificar en dos grandes
tipos:
1. Detección de patrones (estructuras aleatorias discretas), por ejemplo: filtraje de correo
electrónico, detección de intrusos, visión por computador, reconocimiento de voz, procesamiento del lenguaje natural, reconocimiento de audio, filtrado de redes social, traducción automática,
bioinformática, análisis de imagen médica, inspección de materiales, estrategias en juegos, … ;
donde no es factible desarrollar un algoritmo de instrucciones específicas para realizar la tarea,
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
5
produciendo resultados comparables, y en algunos casos, cada vez más, superiores a los expertos
humanos.
2. Predicción de variables aleatorias (variables cuantitativas o cualitativas), por ejemplo la
cantidad de lluvia a caer sobre una cuenca, … . Esta función está estrechamente vinculada al modelamiento estadístico que se centra en hacer predicciones usando computadoras.
En su aplicación a través de problemas, ML se conoce también como análisis predictivo.
De acuerdo con la literatura técnica, las metodologías más utilizadas en ML son: ▪ Support Vector Machines (SVM)
▪ Artificial Neural Networks (ANN) ▪ Bayesian Networks
▪ Genetic Algorithms ▪ Data Mining (DM)
ML también tiene vínculos íntimos con optimización: muchos problemas de cuando aprendizaje están formulados como minimización de una función de pérdida (penalización), como es el casos de SVM.
Las relaciones entre los diferentes tipos de metodologías son fuertes y en muchos casos, bajo determinadas condiciones (parámetros) son iguales, así la denominada Support Vector Regression
(SVR) es igual a la regresión estadística convencional cuando la holgura en los errores es igual a
cero.
Una de las principios fundamentales de ML es que los modelos ML se refiere a minimizar las penalizaciones de muestras invisibles no conocidas a priori, y no a los errores de muestras
históricas evaluadas durante el período de entrenamiento. Para lograr lo anterior, se requieren incorporar el concepto de aprendizaje que debe seguir las tecnologías ML para lograr un aprendizaje
permanente (dinámico) con respecto al sistema objeto de la aplicación.
Así nacen conceptos como Deep Learning (aprendizaje profundo estructurado o aprendizaje
jerárquico) como parte de una familia más amplia de métodos ML basados en representaciones orientadas a aprender de los datos, en contraposición a los algoritmos de tareas específicas de que
permanecen estáticos ante la dinámica de los datos. El aprendizaje puede ser supervisado, semi
supervisado o no-supervisado.
Todo indica que la literatura técnica se orienta a vincular el aprendizaje de las máquinas con las metodologías de la AI. Sin embargo, existe múltiples metodologías matemáticas que pueden cumplir
las funciones especificadas en la definición de ML y de los diferentes tipos de aprendizaje. Una de
ellas es el uso de las metodologías de estimación de estado, las cuales cumplen con los conceptos de ML y han sido utilizadas por mucho tiempo en soluciones reales, como es el caso de las
aplicaciones del Filtro de Kalman [5] para guiar misiles convirtiéndose en su inteligencia para perseguir un objetivo especificado.
1.3. CADENAS DE MARKOV
1.3.1. FUNDAMENTOS
Un proceso de Márkov, llamado así por el matemático ruso Andréi Márkov (1856-1922), es un fenómeno aleatorio dinámico para el cual se cumple la Propiedad Markoviana: no tiene memoria,
o sea que es un proceso para el cual la probabilidad condicional sobre el estado presente, el futuro
y el pasado del sistema son independientes de la trayectoria.
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
6
La importancia práctica es el uso de la propiedad de Márkov es que se puede utilizar con el fin de
construir modelos estadísticos de un proceso estocástico, de tal manera que permita transitar por un grupo de estados en el que la influencia de pasar por un estado decline a lo largo del tiempo.
Frecuentemente el término Cadena de Márkov se usa para dar a entender que un proceso de Márkov tiene un espacio de estados discreto (infinito o numerable). Usualmente una cadena de
Márkov sería definida para un conjunto discreto de períodos (es decir, una Cadena de Márkov de Tiempo Discreto), aunque algunos autores usan la misma terminología donde "tiempo" y/o los
estados puede tomar valores continuos. A continuación, se presentan dos ejemplos simples de
Cadenas Markovianas.
HYDROCLIMATIC PROCESS
MARKOV CHAIN
MARKET PROCESS
Las dos anteriores relacionadas con dos sistemas diferentes: un mercado de activos y con un proceso hidro-climático; cada uno de ellos puede modelarse como de estados discreto y tiempo discreto, o
como, de tiempo continuo y estado continuo. La decisión de como se realiza el modelamiento depende de los datos, del problema específico y del modelador.
Se pueden considerar dos tipos de modelos de Markov:
▪ Markovianos: Las probabilidades de transición se suponen constantes a lo largo del tiempo, lo que se puede expresar como
P(xt+1 = j | xt = i) = i,j
donde xt representa el estado del sistema durante el periodo t, P(A|B) la probabilidad
condicionada de A condicionada en B y la probabilidad de una transición del estado i al estado j.
▪ Semi-markovianos): Las probabilidades de transición entre estados pueden variar a medida que transcurren más ciclos; un ejemplo claro es el modelamiento de la esperanza de vida, el
riesgo de muerte, cuya probabilidad aumenta con la edad. Matemáticamente se expresa como
P(xt+1 = j | xt = i) = i,j(t)
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
7
Se puede decir que la realidad es semi-markoviana, ya que casi todos los procesos son dinámicos en
su parte aleatoria, y la forma de responder un sistema puede evolucionar tendencial o cíclicamente a lo largo del tiempo
Para modelar un Proceso Markoviano, se requiere: ▪ Estados: Las condiciones en las cuales se encuentra el sistema
▪ Probabilidad de Transición: La probabilidad de pasar de un estado actual i al estado j en una transición, o período. La cual puede ser estacionaria o variante a lo largo del tiempo.
El diagrama presenta los elementos de un sistema markoviano.
STATE TRANSITION DIAGRAM FOR A MARKOV CHAIN MODEL
STATE TRANSITION MATRIX
Para modelar un proceso como markoviano se deben identificar las dos anteriores características: los
estados, que en muchos casos no son evidentes y pueden provenir de un estudio de segmentación que puede realizarse con metodologías de ML; posteriormente a la definición de los estados, se
requiere un muestra en la que se puedan estimar las transacciones entre estados, el proceso será más complejo en la medida que se consideren matrices de transición dinámicas.
Uno de los usos actuales de la teoría markoviana es uso para representar el comportamiento de las personas en sus relaciones con una organización.
1.3.2. MARKOV CHAIN DECISION PROCESS
Los procesos decisorios basados en un modelaje markoviano (Markov Chain Decision Process, MCDP), hoy en día también conocidos como Reinforcement Learning, son el objetivo final del
modelamiento matemático del proceso de toma de decisiones.
Estos procesos incluyen las acciones de decisión tratando de afectar el proceso estocástico, entendido como la trayectoria a través de los estados del sistema. Una aplicación clara de estas metodologías
puede asociarse a las decisiones de las empresas para tratar de manejar el ciclo de vida de sus
clientes. Para lograr esto se incluye: 1. El concepto de probabilidades de transición condicionadas en las decisiones
2. La remuneración/ganancia/pérdida por estar (visitar) en un estado específico.
El siguiente diagrama describe un MCDP en el que se tienen:
1. Tres estados para un cliente: S1 (first time), S2 (repeated purchase) y S3 (loyal customer).
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
8
2. Para cada estado se definen las acciones de control del decisor, así para cada estado:
▪ S1: special offer or nothing ▪ S2: club membership or nothing
▪ S3: nothing
3. Para cada decisión se tienen probabilidades de transición y remuneraciones diferentes.
MARKOV CHAIN DECISION PROCESS(REINFORCEMENT LEARNING)
El objetivo del modelamiento es implementar un modelo que maximiza a corto/largo plazo las
ganancias del decisor. Las decisiones se toman de manera tal que siempre que se llega a un estado i se toma una decisión D(i).
1.4. INFERENCIA BAYESIANA
La Inferencia Bayesiana es un método basado en el Teorema de Bayes que se utiliza para actualizar la probabilidad de una hipótesis teniendo en cuenta la información que se adquiere como
consecuencia de un evento. como más evidencia o información disponible. La inferencia bayesiana ha encontrado aplicación en una amplia gama de actividades, incluyendo la ciencia, ingeniería,
filosofía, medicina, deporte y derecho.
El Teorema de Bayes resuelve el problema conocido como "de la probabilidad inversa". Esto es,
valorar probabilísticamente las posibles condiciones que rigen el evento que se ha observado. Los seguidores de la inferencia bayesiana afirman que la trascendencia de la probabilidad inversa reside
en que es ella la que realmente interesa a la ciencia, dado que procura sacar conclusiones generales (enunciar leyes) a partir de lo objetivamente observado, y no viceversa.
El Teorema de Bayes expresa la probabilidad condicional de un evento aleatorio A dado B en términos de la distribución de probabilidad condicional del evento B dado A y la distribución de probabilidad
marginal de sólo A.
Matemáticamente se formula como {A1, A2, A3, … AT} un conjunto de sucesos/eventos mutuamente excluyentes y colectivamente exhaustivos, tales que la probabilidad de cada uno de ellos es distinta
de cero (0); y sea B un evento cualquiera del que se conocen las probabilidades condicionales de B
dado un eveto Ai, P(B|Ai); entonces, la probabilidad condicionada de un evento Ai dado el evento B, P(Ai|B), viene dada por la expresión:
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
9
P(Ai|B) = P(Ai) P(B|Ai) / P(B)
donde
P(Ai) Probabilidad a priori de Ai P(B|Ai) Probabilidad a priori de B dado Ai
P(Ai|B) Probabilidad a posteriori de Ai dado B P(B) Probabilidad de B
El Teorema de Bayes puede escribirse como:
P(Modelo|Data) = P(Modelo) [ P(Data|Modelo) / P(Data) ]
o
Probabilidad a Posteriori = Probabilidad a Priori
[ Función de Verosimilitud / Probabilidad de la Evidencia ]
El enfoque bayesiano es particularmente importante en el análisis dinámico de una secuencia de datos, y por sí mismo implica un proceso de aprendizaje a partir de los datos.
2. ESTIMACIÓN DE ESTADO
A continuación, se presenta los fundamentos matemáticos básicos del modelaje de estimación de estado utilizando como referencia la teoría desarrollada por R.E. Kalman y R.S. Bucy [5] comúnmente
conocida como Kalman Filter (KF, Filtro de Kalman).
2.1. CONCEPTUALIZACIÓN
El enfoque de Estimación de Estado (State Estimation) se soporta en una concepción de los
procesos estocásticos en los que están claramente diferenciadas las variables aleatorias de sus medidas, entendiéndose que lo que dispone el modelador son medidas de las variables aleatorias y
no del verdadero valor de dichas variables.
Por lo tanto, todas las observaciones disponibles son consideradas como variables aleatorias, de las
que se tiene información de sus medidas, pero que, por razón del sistema de medición son sujetas de errores de precisión; por lo tanto, asumirlas como ciertas (determinísticas) induce errores; más
aún, podría existir más de una medida para una misma variable aleatoria, obtenidas por diferentes sistemas de medición.
En el modelaje de estimación de estado se consideran dos tipos de ruidos (errores):
▪ (t), errores debidos al modelaje del sistema, que reflejan la incertidumbre con respecto al
conocimiento de las funciones (ecuaciones y/o parámetros) que determinan el comportamiento
del sistema que se está modelando; y
▪ (t), errores de medición que provienen de la precisión con la que se miden las variables
aleatorias asociadas al sistema.
Desde este punto de vista, los modelos estadísticos convencionales, basados en estadística clásica,
solo consideran un tipo de error, (t), que integra los errores de modelaje y los de medición, en
tanto que el modelaje de estimación de estado diferencia claramente los dos tipos de errores.
La mayor ventaja del enfoque de estimación de estado radica en: DIFERENCIAR LOS CONCEPTOS DE VARIABLE DE ESTADO Y DE SU MEDIDA.
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
10
Otras ventaja es la posibilidad de asumir hipótesis sobre la dinámica de variación de los parámetros de los modelos matemáticos; Desde este punto de vista deben tenerse en cuenta los siguientes
aspectos:
▪ Los estimadores de los parámetros de un sistema son variables aleatorias dependientes de las observaciones, y por lo tanto deben ser sujetos de ajuste de acuerdo con la información que se
va obteniendo. ▪ Los parámetros de un sistema varían a lo largo del tiempo, ya que muchos de ellos cambian
como consecuencia su evolución técnico-socio-económico y por su evolución natural.
2.2. FORMULACIÓN MATEMÁTICA
Nota: Para facilidad del lector se aclara que la notación X(t), X mayúscula, se refiere a la variable
aleatoria y x(t1|t2) se refiere al estimador de X(t1) dada la información recibida hasta el instante t2. La relación entre t1 y t2 define varios tipos de funciones (asumiendo que t2 es el tiempo presente,
t, se tiene:
▪ Smoothing (t1<t): implica la predicción a posteriori de la variable de estado en el pasado, antes de t.
▪ Filtering (t1=t): implica la corrección de la predicción de las variables de estado en , en el momento mismo que llega la información;
▪ Forecasting (t1>t): implica la predicción de las variables de estado para períodos posteriores
al presente. Las dos ultimas funciones son las más utilizadas; sin embargo, la predicción del pasado tiene todo el
sentido cuando se reconoce que en el pasado solo teníamos estimadores de la variable de estado, los cuales pueden ser mejoras por la información que llega a posteriori a predicción realizada.
Consideremos un sistema cuyo estado en cualquier instante del tiempo se sintetiza con base en el
valor de un conjunto de variables representativas agrupadas en el vector de estado X(t). Las acciones
exógenas al sistema se realizan a través de un conjunto de variables de control agrupadas en el vector de control U(t). Con base en estas definiciones se puede formular un sistema de ecuaciones
diferenciales que represente la dinámica intertemporal del sistema:
tX(t) = Ft [X(t), U(t)]
donde Ft[X(t),U(t)] es una función vectorial. El anterior sistema de ecuaciones tiene como condición
de frontera el estado inicial, X(0). Esto es:
tX(t) = Ft[X(t), U(t); X(0)]
La función Ft[X(t),U(t)] representa, exacta o aproximadamente, la dinámica del sistema. En el caso
de una aproximación se deben considerar errores de propios del modelaje del sistema por medio del
vector de ruido en el modelaje (t). Bajo esta consideración, la ecuación dinámica se convierte en
una ecuación diferencial estocástica y se reformula como
tX(t) = Ft[X(t), U(t), (t); X(0)]
Las variables de estado X(t) se miden a través de un conjunto de variables que se agrupan en el vector de observación Z(t). La relación entre las variables de estado y las variables de observación
se representan como:
Z(t) = Ht[X(t)]
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
11
siendo Ht[X] una función vectorial.
Si consideramos que el sistema de observación no es perfecto, ya sea por el modelaje representado
en Ht[X] o por la precisión de las mediciones, es necesario incluir errores en la ecuación
representados por el vector de ruido en la observación (t). La ecuación queda:
Z(t) = Ht[X(t), (t)].
El propósito del modelaje de estimación de estado, como su nombre lo indica, es realizar estimaciones
x(t) del vector de estado X(t) a partir del vector de observaciones Z(t).
3. EL FILTRO DE KALMAN
El presente numeral presenta los fundamentos matemáticos que soportan el Filtro de Kalman (KF), también conocido como Linear Quadratic Estimation (LQE).
3.1. FORMULACIÓN MATEMÁTICA.
Consideremos funciones Ft[.] y Ht[.] lineales:
1. Ecuación de Estado:
tX(t) = f(t) X(t) + b(t) U(t) + W(t) (t)
donde se cumplen las siguientes definiciones
X(t) vector de estado del sistema (n,1)
f(t) matriz de transición (n,n) U(t) vector de control (k,1)
b(t) matriz de interacción de control (n,k)
(t) vector de ruido en el modelaje (p,1)
W(t) matriz de interacción del ruido (n,p).
Sin pérdida de generalidad, la anterior ecuación puede aproximarse por medio de una ecuación de diferencias
X(t+1) = A(t)X(t) + B(t)U(t) + L(t)(t)
donde las matrices A(t), B(t) y L(t) están directamente relacionadas con las matrices f(t), b(t) y
W(t) La versión discreta será la considerada en adelante.
2. Ecuación de Observación:
Z(t) = H(t)X(t) + (t)
donde se cumplen las siguientes definiciones Z(t) vector de observación (m,1),
H(t) matriz de medición (m,n),
(t) vector de ruido en la medición (m,1).
3.2. SUPUESTOS ESTADÍSTICOS
Para el desarrollo de la teoría del filtro de Kalman se asumen los siguientes supuestos estadísticos:
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
12
1. Estado inicial del sistema X(0): ▪ valor esperado:
x(0) = E[X(0)]
▪ matriz de varianza-covarianza:
(0) = E[{X(0)-x(0)} {X(0)-x(0)}T]
2. Ruido en el modelaje dinámico del sistema (t):
▪ valor esperado:
E[(t)] = 0
▪ matriz de varianza-covarianza:
E[(t)(t)T] = Q(t)
donde Q(t) es una matriz diagonal.
3. Ruido en el sistema de observación (t):
▪ valor esperado:
E[(t)] = 0
▪ matriz de varianza-covarianza:
E[(t)(t)T] = R(t)
4. Vector de control U(t): determinístico.
5. A(t), B(t), L(t) y H(t): con componentes determinísticas.
Bajo los anteriores supuestos el proceso de estimación desarrollado por Kalman [5] garantiza estimadores x(t) de la media del vector X(t) que minimizan la traza de la matriz de varianza-
covarianza (t)
(t) = E[{X(t)-x(t)} {X(t)-x(t)}T]
Si adicionalmente consideramos que las componentes aleatorias del sistema, X(0), (t) y (t) siguen
funciones de distribución de probabilidad de tipo gaussiano, se tendrán las siguientes características
para x(t): ▪ Mejores estimadores lineales insesgados (BLUE),
▪ Estimadores de máxima verosimilitud, ▪ Estimadores bayesianos a posteriori.
Con respecto a las matrices de varianza-covarianza se debe notar que: i) R(t) se puede estimar a
través de las medidas; en tanto que ii) Q(t) es difícil de estimar, dado que no se tiene acceso al
estado X(t).
3.3. PROCEDIMIENTO DE ESTIMACIÓN
El procedimiento de estimación propuesto por Kalman proporciona el mejor estimador bayesiano de
la media de X(t) condicionado en:
1. la información procesada hasta el instante t
U(tp) = { U(1), U(2), ... U(tp) }
Z(tp) = { Z(1), Z(2), ... Z(tp) }
información que se denotará como I(tp)
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
13
I(tp) = {Z(tp), U(tp)}
2. el estimador del valor del vector estado y de la matriz de varianza-covarianza en el instante cero,
x(0) y (0).
En adelante el estimador de X(t) dada la información hasta el instante tp se denota como:
x(t/tp) = E[X(t) | Z(tp), u(tp), x(0), (0)]
De manera similar el estimador de la matriz de varianza-covarianza es
(t/tp) = E[{X(t)-x(t/tp)} {X(t)-x(t/tp)}T]
los estimadores a priori para el sistema se definen como:
x(0/0) = x(0)
(0/0) = (0).
El filtro de Kalman define un proceso secuencial de estimación a partir de la combinación bayesiana
de la información a priori obtenida hasta el instante t-1 con la información a posteriori obtenida en el instante t. Este proceso se resume en seis pasos:
1. Estimación a priori de la matriz de varianza-covarianza (t):
(t/t-1) = A(t-1)(t-1/t-1) AT(t-1)
+ L(t-1)Q(t-1)L(t-1)
2. Estimación a posteriori de (t):
(t/t) = (t/t-1)[I - HT(t){H(t)(t/t-1)HT(t)
+ R(t)}-1H(t)](t/t-1)
3. Cálculo de la denominada matriz de ganancia M(t):
M(t) = (t/t)HT(t)R(t)-1
4. Estimación a priori de la media del vector de estado X(t):
x(t/t-1) = A(t-1)x(t-1/t-1) + B(t-1)U(t-1)
5. Estimación de los residuos de predicción r(t):
r(t) = Z(t) - HT(t)x(t-1/t-1)
6. Estimación a posteriori de la media de X(t):
x(t/t) = x(t/t-1) + M(t)r(t)
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
14
KALMAN FILTER
Z(t)
x(t/t-1)Ht[.] + (t)
z(t/t-1)
MEASURESYSTEM
“X(t)”
-r(t)
M[.]
x(t/t) = x(t/t-1) + M(t) r(t)
Ft[.] + (t)
x(t-1/t-1)t=t+1
SYSTEM
U(t)Control
State A Priori Estimation
MeasuresA Priori
Estimation
State A Posterior Estimation
Gain Matrix
Errors
MeasuresReal State
En el anterior proceso, los pasos 1, 2, y 3 relacionados con los cálculos para los estimadores de la
matriz de varianza-covarianza (t/tp) y para la determinación de la matriz de ganancia M(t) pueden
realizarse previamente a la obtención de las observaciones, y son denominados cálculos “off-line”. Los pasos 4, 5 y 6 dependen de los valores de Z(t) y corresponden al denominado proceso "on-line".
Esta característica está relacionada con la hipótesis de linealidad de las ecuaciones.
A manera de síntesis, definiremos el conjunto de estimadores (t/t) como
(t/t) = {x(t/t), (t/t)} = BAYES[(t/t-1), Z(t), U(t), Q(t), R(t)]
donde el operador BAYES[.] representa la combinación bayesiana de la información propuesta por Kalman.
3.4. ESTIMACIÓN DE ESTADO MEDIANTE OPTIMIZACIÓN
Los estimadores a priori x(t/t-1) pueden obtenerse maximizando la función de verosimilitud de X(t) a priori que, para el caso de funciones de una distribución normal multivariada, puede escribirse
como
{2|Q(t)|}-n/2 Exp[w(t)TV(t-1)-1w(t)]
donde
w(t) = X(t) - A(t-1)x(t-1/t-1)-B(t-1)U(t-1)
V(t) = A(t)(t/t)A(t)T + L(t)Q(t)L(t)
Los estimadores x(t/t-1) se obtienen maximizando el argumento de la función exponencial, que se puede escribir como
X(t)TV(t)-1X(t) - 2{A(t-1)x(t-1/t-1) - B(t-1)U(t-1)}TV(t)-1X(t)
-{A(t-1)x(t-1/t-1)-B(t-1)U(t-1)}TV(t)-1
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
15
{A(t-1)x(t-1/t-1)-B(t-1)U(t-1)}
que es una función cuadrática para X(t), en la cual el último término es constante. Los estimadores
a posteriori x(t/t) pueden interpretarse como estimadores de máxima verosimilitud para X(t). En
términos probabilísticos, y con base en el Teorema de Bayes, la probabilidad de X(t) dada la información obtenida hasta el instante t puede escribirse como:
Prob[X(t)|Z(t),Z(t-1),...]
= Prob[Z(t)|X(t),Z(t-1),...]
Prob[X(t)|Z(t-1),Z(t-2),...]/Prob[Z(t)]
La anterior función de verosimilitud es
Prob[X(t)|Z(t), Z(t-1), Z(t-2), ...]
= (2)-n-m/2 |R(t)|-m/2 |(t/t-1)|-n/2
Exp[ {Z(t)-H(t)X(t)}TR(t)-1{Z(t)-H(t)X(t)}
- {X(t)-x(t/t-1)}T(t/t-1)-1{X(t)-x(t/t-1)} ]
Los estimadores x(t/t) se obtienen al maximizar Prob[X(t)|Z(t),Z(t-1),Z(t-2),...] con respecto a X(t), lo que se consigue al maximizar el argumento de la función exponencial que se puede escribir
como
X(t)T{H(t)TR(t)-1H(t)+(t/t-1)-1}X(t)
- 2{Z(t)TR(t)-1H(t)+x(t/t-1)T(t/t-1)-1}X(t)
+ Z(t)TR(t)-1Z(t) + x(t/t-1)T(t/t-1)-1x(t/t-1)
que es una función cuadrática para X(t), en la cual los dos últimos términos son constantes.
La visión del proceso desde el punto de vista de la optimización permite extender los conceptos de
KF para enfrentar dos nuevos tipos de problemas:
1. Asumir distribuciones de probabilidad diferentes de la normal multivariada; en este caso se debe
sustituir en el modelo de optimización la función de verosimilitud, por la que corresponde de acuerdo con la función de distribución de probabilidad asumida.
2. Otra extensión KF es la relacionada con la estimación de variables de estado que deben cumplir
con un conjunto de condiciones que determinan la región factible en la cual existen soluciones para el vector de estado. En este caso debe modificarse el proceso de estimación de forma tal
de tener estimadores factibles y coherentes.
En el segundo caso, las restricciones para el vector de variables de estado se pueden expresar como:
G[X(t),U(t)] = 0
donde G[.] es una función vectorial. La introducción de restricciones altera el proceso de cálculo de los estimadores de X(t) tanto a priori como a posteriori.
Maximizar
X(t)TV(t-1)-1X(t) - 2{A(t-1)x(t-1/t-1)-B(t-1)U(t-1)}TV(t-1)-1X(t)
sujeto a:
G[X(t),U(t)] = 0
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
16
La estructura de las restricciones determina la complejidad de los problemas de optimización. En el caso de restricciones lineales los problemas son del tipo de programación cuadrática. El cálculo de
los estimadores de las matrices de varianza-covarianza del vector de estado también se altera.
Desde el punto de vista estadístico, la inclusión de restricciones altera las características de los
estimadores. El problema se simplifica si se consideran x(t/t) y x(t/t-1) como estimadores obtenidos como resultado de un proceso de mínimos cuadrados ponderados restringidos, donde las
matrices de varianza-covarianza corresponden a las matrices de ponderación que implícitamente
representan la credibilidad que se tiene en la información a priori.
Los estimadores obtenidos en este caso son coherentes, cumplen con las restricciones, pero dejan de ser estimadores BLUE (Best Linear Unbiased Estimators).
4. COMBINACIÓN BAYESIANA DE MODELOS
4.1. CONCEPTUALIZACIÓN
Dado que no existe el modelo “verdadero” de un sistema físico, o de uno técnico-económico, una alternativa para mejorar las predicciones es utilizar combinación de varios modelos que
potencialmente puedan representar dicho sistema. En este sentido puede resultar ilustrativa la
experiencia de Alan Blinder (Former Federal Reserve Vice Chairman, 1998):
“Mi manera de enfocar este problema mientras estuve en la Reserva Federal fue relativamente sencilla: utilizar una amplia variedad de modelos y jamás confiar demasiado
en uno solo de ellos”.
“… Cuando los expertos de la Reserva Federal exploraban las consecuencias de distintas
medidas, yo siempre insistía en ver los resultados de: i) nuestro propio modelo econométrico trimestral, ii) algunos otros modelos econométricos y iii) toda una variedad de vectores
autorregresivos (VAR) que desarrollé a tal fin. Mi procedimiento habitual era realizar simulaciones de las distintas políticas utilizando el mayor número posible de modelos,
descartar el(los) resultados(s) extremos(s) y promediar el resto”.
La evidencia empírica es consistente con los argumentos de Blinder que estimulan el uso de distintas
metodologías/tecnologías con el objetivo de mejorar el desempeño de los pronósticos. Por lo tanto, se puede esperar un menor error de pronóstico mediante una combinación de técnicas obtenida
mediante un proceso de búsqueda de los ponderadores óptimos de cada uno de los modelos.
La posición más simple, es utilizar el promedio; sin embargo, existen otras posibilidades, como la
combinación bayesiana de modelos la cual ha sido aplicada en múltiples casos, como es el caso de la predicción del fenómeno ENOS (en inglés ENSO El Niño Southern Oscillation) que realiza el
International Research Institute for Climate and Society (IRI, http://iri.columbia.edu) de Columbia University, que utiliza dos tipos de modelos para la predicción del ENOS:
Dinámicos: basados en la explicación física de la dinámica del proceso; y
Estadísticos: basados en la evidencia empírica del proceso ajustada por medio de modelos estadísticos.
IRI publica resultados de dos metodologías:
Subjetiva, basada en un consenso entre analistas del CPC (Climate Prediction Center) y del IRI.
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
17
Objetiva, basada en un modelo matemático que determina los factores de ponderación de cada uno
de los modelos disponibles con base en los resultados obtenidos en los pasados períodos con base en una combinación bayesiana de modelos.
Los beneficios de este enfoque son:
1. Discriminación de un modelo como el verdadero,
2. Composición de un modelo general con base en la ponderación de diferentes modelos, 3. Selección dinámica de la estructura del modelo, lo que implica un proceso de aprendizaje.
4.2. FORMULACIÓN MATEMÁTICA
A continuación, se presenta la extensión de la teoría del Filtro de Kalman con el fin de cotejar
simultáneamente varios modelos sobre un sistema.
Para el desarrollo teórico que sigue se especificar un modelo con base en el conjunto de parámetros
Mi
Mi=
{Ai(t),Bi(t),Li(t),Hi(t),Qi(t),Ri(t),xi(0/0),i(0/0)}
el subíndice i indica el modelo al cual se asocia el parámetro.
Consideremos i(t/tp) como el conjunto de los estimadores de los primeros momentos para la
distribución de probabilidad del vector de estado en el tiempo t cuando se ha procesado la
información disponible hasta el tiempo tp
i(t/tp) = { Xi(t/tp), i(t/tp) }
Sea i(t) la probabilidad a posteriori de que el modelo i sea el verdadero cuando se ha procesado
toda la información hasta el tiempo t
i(t) = Prob[modelo(t) = i | I(t)]
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
18
Con base al Teorema de Bayes el valor i(t) está definido como:
i(t) = C x Prob[Z(t) | modelo(t-1) = i, I(t-1)] Prob[modelo(t-1) = i | I(t-1)]
donde modelo(t) representa el estimador del modelo verdadero en el tiempo t. La anterior expresión
es igual a
i(t) = C x Li[Z(t) | xi(t/t-1), i(t/t-1)] i(t-1)
donde Li[.] corresponde a la función de verosimilitud de Z(t) condicionada en los estimadores xi(t/t-
1) y i(t/t-1) y se define como
Li[.] = {2 |Vi(t/t-1)|}-m/2
Exp [i(t/t-1)TVi(t/t-1)-1i(t/t-1)]
donde
i(t/t-1) = Z(t) - H(t) Xi(t/t-1)
Vi(t/t-1) = Hi(t)Ti(t/t-1)Hi(t) + Ri(t)
y la constante C es una constante de normalización igual a
C = 1. / {i Li[.] i(t-1)}
El anterior proceso está condicionado en la probabilidad a priori para cada modelo, i(0) y permite:
▪ Seleccionar un modelo de un conjunto de modelos probables, tomando como verdadero aquel
que tenga la mayor probabilidad a posteriori; o
▪ Generar un modelo combinado con base en la ponderación de modelos de acuerdo con sus
probabilidades a posteriori, este caso el estimador del estado del sistema se formula como
x(t/tp) = i i(t) xi(t/tp)
5. MULTIPLE-STATE KALMAN FILTER (MS-KF)
5.1. CONCEPTUALIZACIÓN
La teoría del Filtro de Kalman puede extenderse para considerar el modelaje de sistemas cuya
representación dinámica depende del estado, o régimen, en que se encuentre el sistema. En este
caso el régimen en el cual se encuentra el sistema se debe considerar como una variable de estado adicional que debe estimarse “en línea”.
Multiple-State Kalman Filter (MS-KF, Velásquez, 1978) corresponde a la extensión de la Teoría
del Filtro de Kalman para considerar el modelaje de sistemas cuya representación dinámica depende
del estado, o régimen, en que se encuentre el sistema.
Ejemplo de estado de un sistema pueden ser: ▪ En una persona: buen genio, mal genio, tranquilo.
▪ En una cuenca: seca, húmeda, es transición
▪ En un cliente: contento, descontento, …
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
19
Existen infinidad de ejemplos que se pueden citar. En todos ellos se tiene que la respuesta del sistema
(persona, cuenca, cliente, … ) puede responder a estímulos del entorno de acuerdo con el estado en que se encuentra, el cual en muchos casos no está plenamente identificado.
Por lo tanto, el concepto de estados puede asociarse a un proceso semi-markoviano (matrices de transición dependientes del tiempo) en los cuales puede encontrarse un sistema, existiendo una
probabilidad de transición de un estado a otro en cualquier intervalo de longitud t, la cual no es
estacionaria y puede cambiar en la medida que se desarrolla el proceso a lo largo del tiempo.
En este caso el régimen/estado en el cual se encuentre el sistema se debe considerar como una
variable de estado adicional que debe estimarse “en línea”.
1W1(t)
iWi(t)
NWN(t)
1W1(t+t)
jWj(t+t)
NWN(t+t)
1,1(t)
N,N(t)
i,j(t)
PROBABILIDAD DETRANSICIÓN DE ESTADO
lj(t)
PROBABILIDAD A PRIORIESTADO DEL SISTEMA
lj(t+t)
PROBABILIDAD A POSTERIORIESTADO DEL SISTEMA
t t + t
Los estados se identifican por los subíndices i y j. Los estados j se caracterizan el conjunto de parámetros asociados a cada estado, los cuales pueden identificarse utilizando el Filtro de Kalman.
5.2. FORMULACIÓN MATEMÁTICA
El Filtro de Kalman se debe modificar para determinar la probabilidad a posteriori de que el sistema
se encuentre en un estado j teniendo en cuenta todas las transiciones que pueden haber ocurrido
de un estado i al estado j durante el período t. Cada estado j se caracteriza por los siguientes parámetros
Wj(t) = { j(t), Aj(t), Bj(t), Lj(t), Hj(t),Qj(t), Rj(t) }
donde j(t) representa la probabilidad a priori de que el sistema se encuentre en el estado j en el
tiempo t, la cual cumple con la siguiente ecuación dinámica
j(t) = lj(t-1)
donde lj(t) es la probabilidad a posteriori de que el sistema se encuentre en el estado j en el tiempo
t.
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
20
Consideremos la probabilidad que entre t-1 y t se realice una transición del estado i al estado j
definida como
i,j(t) = Prob[estado(t) = j, estado(t-1) = i | I(t)]
Con base en el Teorema de Bayes el valor de i,j(t) se define como
i,j(t) = C x Prob[Z(t) | estado(t)=j, estado(t-1)=i, I(t-1)]
x Prob[estado(t)=j | estado(t-1)=i, I(t-1) ] x Prob[estado(t-1)=i | I(t-1) ]
lo que es igual a
i,j(t) = C x L[Z(t) | estado(t)=j, estado(t-1)=i, I(t-1)] x j(t) x li(t)
donde L[.] representa la función de verosimilitud de Z(t) condicionada en que se realice la transición de i a j, y en la información procesada hasta el instante t-1. C es la constante de normalización.
Para expresar la anterior expresión en términos de los estimadores de las variables de estado y de la
matriz de varianza-covarianza es necesario definir estimadores i,j(t/t) de acuerdo con
i,j(t/t) = {xi,j(t/t),i,j(t/t)}]
= BAYES [i(t/t-1), Z(t), U(t), Qj(t), Rj(t)]
Con base en los anteriores estimadores L[.] queda definida como
L[.] = {2 |Vi,j(t/t-1)|}-m/2
Exp [i(t/t-1)TVi,j(t/t-1)-1i(t/t-1)]
donde
i(t/t-1) = Z(t) - H(t)xi(t/t-1)
Vi,j(t/t-1) = Hi(t)Ti(t/t-1)Hi(t) + Rj(t)
Los estimadores a priori se definen como
xj(t/t-1) = Aj(t-1)xj(t-1/t-1) + Bj(t-1)U(t-1)
j(t/t-1) = Aj(t-1)j(t-1/t-1)AjT(t-1)
+ Lj(t-1)Qj(t-1)Lj(t-1)
La información a posteriori se puede condensar mediante el siguiente proceso
lj(t) = i=1,N i,j(t)
xj(t/t) = i=1,N i,j(t) xi,j(t/t)
j(t/t) = i=1,N i,j(t) i,j(t/t)
determinando el estimador condensado con base la integración sobre todas las posibles transiciones
a un estado j a partir de N estados posibles.
La predicción del régimen del sistema se puede realizar con base en la ponderación de todos los posibles regímenes, o seleccionando aquel que tiene mayor probabilidad.
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
21
6. IDENTIFICACIÓN Y ESTIMACIÓN DE PARÁMETROS
En los pasados numerales se presentaron la metodología de KF y algunas de sus variaciones. La
idea principal de KF está orientada a estimar un conjunto de variables físicas que resumen el estado
en que se encuentra el sistema. Para determinar la evolución del sistema se dispone de: i) variables de control (acciones del decisor) y ii) ecuaciones dinámicas (discretas o continuas) que permiten
determinar la trayectoria esperada el sistema.
Con respecto a las ecuaciones dinámicas, se deben considerar dos casos: i) se conocen con certeza,
o deben ser identificadas durante el proceso de aprendizaje en el conocimiento del sistema. Nos concentraremos en el segundo caso.
Una primera aproximación es asumir que en el momento inicial (t=0) los parámetros de la función
de respuesta del sistema han sido identificados y estimados exógenamente, considerándose en el modelo de estimación de estado como componentes determinísticos, supuesto bastante fuerte ya
que provienen de modelos en los cuales han sido considerados como variables aleatorias. Esta
estimación inicial puede corresponder a un modelo probabilístico del sistema bajo estudio.
Teniendo en cuenta que el momento t=0 es solo una referencia, es de esperarse que los parámetros de una función de respuesta probabilística sigan siendo variables aleatorias después del instante
inicial, y por lo tanto deben continuar estimándose de acuerdo con la recepción de nueva información
a partir de t=1. A continuación, se analiza el uso del enfoque de estimación de estado para la estimación de parámetros y para la identificación de modelos de sistemas (técnicos, físicos,
económicos, sociales, …). Para fines específicos de este análisis las variables endógenas y exógenas se considerarán como determinísticas. Estas variables hacen referencia a la muestra de variables
incluidas en un modelamiento estadístico.
Previo a la presentación del análisis matemático, es conveniente anotar que paradójicamente para la
estimación de los parámetros de un modelo es necesario mirarlos como variables de estado y asociarlos a los estimadores que se tienen para los parámetros en un momento dado. Este enfoque
permite suponer estructuras dinámicas para la variación de los parámetros, lo que conlleva a modelos más flexibles que los que se obtienen haciendo uso de las limitadas herramientas que ofrecen los
métodos basados en la estadística clásica. También se debe entender que el proceso de estimación
de estimación de estado corresponde a un proceso bayesiano en el que se van recalculando los estimadores en la misma medida que llega la información.
Desde este punto de vista, la identificación del comportamiento un sistema no se limita a evaluar
parámetros que resumen el comportamiento promedio del sistema como resultado de integrar su
variabilidad sobre un lapso pasado, y a partir de allí considerarlos estáticos, sino en la determinación de los estimadores de los parámetros que para el instante de tiempo actual t representan “mejor”
dinámica del sistema de acuerdo con los datos observados. Al concentrar el esfuerzo en la evaluación de los cambios que están ocurriendo, es posible determinar en "tiempo real" cambios estructurales
del sistema que se reflejan en cambios en los valores de los parámetros, lo que en modelos clásicos solo se realiza después de que estos cambios han ocurrido.
Las ventajas del enfoque de estimación de estado sobre los métodos clásicos se presentan a continuación:
1. La mayor ventaja de este esquema radica en la posibilidad de asumir hipótesis sobre la dinámica
de variación de los parámetros. Desde este punto de vista deben tenerse en cuenta los siguientes
aspectos:
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
22
▪ Los estimadores de los parámetros de un sistema son variables aleatorias dependientes de
las observaciones, y por lo tanto deben ser sujetos de ajuste de acuerdo con la información que se va obteniendo.
▪ Los parámetros de un sistema varían a lo largo del tiempo, ya que muchos de ellos son
afectados por cambios que ocurren en una cuenca como consecuencia su desarrollo socioeconómico y por su evolución natural.
▪ Desde el punto de vista de monitoreo de un sistema es conveniente utilizar valores de los parámetros que se ajusten a las circunstancias presentes, en vez de valores que integran el
conocimiento de su comportamiento en el pasado.
▪ Muchos de los cambios que ocurren en el comportamiento de un sistema son consecuencias de eventos inesperados; ante estas eventualidades esquemas basados en múltiples estados,
o similares, permiten determinar los momentos en que los cambios estructurales ocurren, diferenciándolos de efectos de puro carácter estocástico.
2. La integración de métodos bayesianos a los procesos de estimación permite discriminar, y/o
integrar, diferentes estructuras de modelos, seleccionando aquella que mejor se acopla a las
observaciones en un momento dado.
3. Una de las limitaciones más grandes en muchos sistemas está referida a la facilidad y a la frecuencia en la adquisición de los datos. En muchos casos los datos son obtenidos con
frecuencias inferiores a las requeridas para el monitoreo del sistema (ej. datos semanales,
mensuales, anuales). El modelaje de estimación de estado permite a partir de la información observada realizar estimaciones sobre todas las variables del sistema, incluyendo las que no han
sido medidas en ese momento.
4. Respecto a las hipótesis estadísticas, los modelos clásicos de predicción asumen que las variables, endógenas y exógenas, son determinísticas, ya que no es posible corregir la información pasada
de acuerdo con las nuevas observaciones que se van procesando. La metodología de estimación
de estado permite predicciones a posteriori (smoothing) de forma tal que en el caso de valores atrasados de las variables los datos utilizados no son los medidos inicialmente, sino los valores
obtenidos como resultado del proceso de estimación en línea, lo que corrige errores sistemáticos que se producen como resultado de mediciones erróneas o poco representativas.
5. Los métodos clásicos acumulan los errores de medición y los de modelaje en el error del modelo, lo que conlleva a confundir las razones de los ruidos del sistema.
6. Desde el punto de vista de control, la metodología propuesta permite el análisis en línea de los
fenómenos que están ocurriendo, en tanto que los métodos convencionales están orientados a
realizar análisis "expost" para describir fenómenos ya pasados.
6.1. PARÁMETROS INVARIANTES EN EL TIEMPO
6.1.1. MODELO UNIVARIADO
Consideremos un modelo con por una variable dependiente:
Z(t) = TW(t) + (t)
donde Z(t) variable dependiente en el tiempo t; por ejemplo, el caudal de un río
W(t) vector de variables independientes en el tiempo t; por ejemplo,caudales aguas arriba, lluvia,
viento,
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
23
vector de parámetros del modelo,
(t) error del modelo en el tiempo t.
Se puede formular un modelo de estimación de estado equivalente al anterior utilizando las siguientes
definiciones:
1. Ecuación de estado:
(t+1) = (t) =
2. Ecuación de observación:
Z(t) = WT(t)(t) + (t)
Los estimadores de en el tiempo t corresponden a los estimadores de las variables de estado
(t/tp) cuando se ha procesado la información disponible hasta el período tp. Para aplicar KF es
necesario disponer de estimadores del estado inicial
(0/0) = 0
(0/0) = 0
y de la varianza del error en la medición
R(t) = s2
El anterior modelo, equivalente a un modelo clásico, tiene las siguientes implicaciones:
1. Implícitamente se ha asumido que no existe error en el modelaje de la dinámica del sistema, esto
es que (t) es igual a cero y que su matriz de varianza-covarianza -Q(t)- es igual a cero. Con
esta hipótesis se asume que el modelo es perfecto, en este caso que es lineal y que los parámetros
son constantes e invariantes en el tiempo. En términos estadísticos, esto implica que cuando t tiende a infinito la matriz de varianza-covarianza de los estimadores tiende a cero, convergiendo
estos a un vector constante independiente del valor de t, o sea que a medida que transcurre el tiempo la nueva información no proporciona ningún conocimiento adicional sobre el sistema.
2. KF asume que se conoce la varianza del error en la medición s2. Estrictamente esta varianza está asociada a la precisión del sistema de medición y debería ser conocida a priori, ya que el sistema
de medición es un medio físico conocido. Al no asumir error en el modelaje, el error en la medición integra los errores del modelo y los errores del sistema de medición, convirtiéndose en un
parámetro que debe ser estimado. Existen varias alternativas para manejar este problema:
▪ Si se consideran distribuciones gaussianas para todas las componentes estocásticas del modelo, es posible trabajar con base en modelos de regresión bayesiana en los cuales se
extiende el proceso de estimación a s2, esta solución es la más formal desde el punto de vista estadístico,
▪ Se puede extender el vector de estado para incluir a s2. Esta solución es consistente con el
hecho que en el modelo las variables de estado representan los parámetros del sistema, ▪ Otra alternativa es el uso de una combinación bayesiana de varios modelos, asumiendo en
cada uno de ellos diferentes valores para s2, y determinar a posteriori la probabilidad de que cada modelo sea el verdadero [8].
3. Se requiere información a priori sobre los estimadores de los parámetros, (0/0), y sobre la
matriz de varianza-covarianza de dichos estimadores, (0/0), información que normalmente es
desconocida. Este problema se puede resolver asumiendo información a priori difusa, que se representa por medio de una matriz de varianza-covarianza que tiende a infinito. En este caso, el
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
24
valor de (0/0) no representa información, pudiéndose asumir cualquier valor para el mismo.
Estudios experimentales [4] [8] han demostrado que asintóticamente los estimadores (t/t) y
(t/t) son independientes de la información a priori.
6.1.2. MODELO MULTIVARIADO
Consideremos un modelo multivariado
Z(t) = TW(t) + (t)
donde
Z(t) vector de variables dependientes en el tiempo t, W(t) vector de variables independientes en el tiempo t,
matriz de parámetros del modelo, con vectores filas i,
(t) vector de errores del modelo en el tiempo t.
En términos de estimación de estado puede formularse el siguiente modelo
1. Ecuación de estado
i(t+1) = i(t) = i
2. Ecuación de observación
Zi(t) = WT(t)i(t) + i(t)
La anterior formulación representa un sistema lineal en el cual las variables de estado están
agrupadas en una matriz de estado, con vectores i(t), y las observaciones en una matriz de
observaciones con componentes Zi(t). Las expresiones del filtro pueden derivarse a partir de un
esquema de regresión bayesiana multivariada [9].
6.2. PARÁMETROS VARIANTES EN EL TIEMPO
Los modelos basados en estadística clásica presentan limitaciones en el modelaje de sistemas que
involucren parámetros variantes en el tiempo. Esta limitación se resuelve tradicionalmente asumiendo formas de variación preestablecidas (por ejemplo, modelos asociados a los meses del año, o las
estaciones climáticas, … )
El modelaje de estimación de estado permite considerar sistemas con parámetros variantes en el tiempo. La variación temporal puede ocurrir por razones puramente estocásticas, o por cambios
constantes en la estructura del sistema durante un período. Consideremos el modelo univariado:
Z(t) = (t)TW(t) + (t)
asumiendo el vector de parámetros (t) variante en el tiempo.
Con respecto al modelaje anterior, la hipótesis de invarianza de los parámetros está directamente
relacionada con la eliminación del término correspondiente al ruido, (t), en la ecuación de estado.
Si se asume que la matriz de varianza-covarianza Q(t) es diferente de cero, se permitirán variaciones
en los parámetros debido a razones de tipo estocástico. En este caso, el estimador de la matriz de
varianza-covarianza (t/t) no converge asintóticamente a cero.
Un modelaje alternativo puede realizarse permitiendo tendencias de variación en los parámetros.
Definamos la dinámica de los parámetros con base en la siguiente ecuación:
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
25
(t+1) = (t) + (t)
donde (t) representa el cambio en el valor del parámetro en el tiempo t, esto es:
(t) = tb(t)
En este caso el modelo de estimación de estado se puede definir como
1. Ecuación de estado
(t+1) = (t) + (t) + (t)
(t+1) = (t) + (t)
2. Ecuación de observación
Z(t) = H(t)T(t) + (t)
debiéndose realizar estimaciones para (t) y para (t).
Si el sistema se halla estructuralmente estable se debe cumplir que
t(t) = 0
Alternativamente, si está en un proceso de ajuste la tendencia de cambio se estima con base a (t)
que será diferente de cero hasta volver al equilibrio. En el siguiente numeral, correspondiente al modelaje con múltiples estados, se analiza con mayor detenimiento el problema de cambios en los
parámetros de la función de respuesta del sistema.
7. CASO: MS-KF EN SISTEMAS HÍDRICOS
La función de respuesta de un sistema es el reflejo de la forma de funcionamiento de su estructura
interna. Los cambios estructurales producen cambios en la función de respuesta. Una de las limitaciones en el modelaje de sistemas dinámicos es la relacionada con la hipótesis de que se conoce
a priori la función de respuesta, no pudiéndose modelar fácilmente cambios estructurales del sistema.
Ejemplos de cambios estructurales debidos a eventos: i) naturales (tsunamis, terremotos,… ), ii) procesos cíclicos (climáticos, cambios de verano a invierno pasando por las estaciones intermedias),
iii) económicos (crisis económicas, … ).
Con el fin de modelar cambios estructurales se formula la siguiente hipótesis: un sistema puede
hallarse en uno de múltiples estados, o regímenes; con respecto a su forma de comportamiento se asumen las hipótesis de MS-KF caracterizados por las matrices de varianza-covarianza de los errores
Q(t), Q(t) y R(t).
Consideremos el caso de tres estados:
▪ Estado estable
▪ Estado transitorio estructural ▪ Estado transitorio estocástico.
En estado estable los parámetros que definen la dinámica del sistema no varían, esto es
t(t) = 0
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
26
En estado transitorio estructural, la dinámica del sistema está cambiando lo que se traduce en
cambios en los parámetros
t(t) 0
En el estado transitorio estocástico, el sistema es afectado por shocks debidos a su carácter
probabilístico intrínseco, que no siempre son explicados por la dinámica del sistema, ni obedecen a cambios estructurales, reflejándose su efecto en los errores de medición.
Un sistema debe encontrarse en uno de los tres estados, y el estado en que se encuentre debe ser sujeto de estimación, ya que no puede ser identificado a priori. Un caso real son los efectos del
calentamiento global que esta cambiando la forma del comportamiento de los sistemas hídricos de manera inesperada; por ejemplo, si se dispone de una representada por modelos de comportamiento
asociados a los meses del año, por estar los meses asociados a los cambios climáticos; el impacto de los atrasos y de los adelantamiento de las estaciones del clima (invierno primavera, verano, otoño)
no puede asociarse a meses del año, se debe asociar al estado del sistema. Un modelo estacionario-
estacional, 12 modelos para el año, no pueden manejar apropiadamente este nuevo proceso.
Los modelos basados en métodos clásicos no pueden reaccionar (“learning”) ante cambios estructurales debido a que no tienen una clara señal de los cambios que están ocurriendo, y no
diferencian los cambios estructurales de los efectos puramente estocásticos. La consecuencia de este
hecho es que los modelos reaccionan lentamente durante los períodos de cambio estructural, y pueden interpretar como indicio de cambio estructural efectos de origen aleatorio.
Si consideramos un modelo con parámetros variantes en el tiempo regido por las siguientes
ecuaciones
1. Ecuación de estado
(t+1) = (t) + (t) + (t)
(t+1) = (t) + (t)
2. Ecuación de observación
Z(t) = H(t)T(t) + (t)
es posible caracterizar los diferentes estados con base en las matrices de varianza-covarianza de los
diferentes términos de error; esto basado en que la función de respuesta de un sistema es el reflejo
de la forma de funcionamiento de su estructura interna. Los cambios estructurales producen cambios en la función de respuesta.
Con el fin de modelar cambios estructurales en un sistema se formula la siguiente hipótesis: un
sistema puede hallarse en uno de tres estados: ▪ Estado estable
▪ Estado transitorio estructural
▪ Estado transitorio estocástico
La caracterización propuesta tiene en mente que la entropía de un sistema dinámico no es independiente del estado en el cual se encuentra, y que tampoco puede ser caracterizada por valores
de las variables de estado, ya que dicha entropía puede ser generada exógenamente, y se refleja en
las matrices de varianza-covarianza que varían dependiendo del estado en que se encuentre el sistema. La tabla siguiente presenta cualitativamente las características de estas matrices
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
27
ESTADO TIPO DE RUIDO
Q(t) Q(t) R(t)
Estable Normal Normal Normal
Transitorio Estructural Normal Grande Normal
Transitorio Estocástico Normal Normal Grande
Este caso puede considerarse como un caso particular MS-KF.
En 1978, Velásquez [7] utiliza un MS-KF para la predicción de caudales en la cuenca del río Caroní
en Venezuela. Se trata de predecir el caudal en diferentes partes de la cuenca del rio Caroní que alimenta el embalse del Guri, el cual alimenta un sistema de hydro-generación de más de 10.000 MW
de capacidad instalada nominal. Dado el tamaño del embalse, y la poca altura de la presa, 162 metros, ligeras variaciones en la altura del agua en el embalse, genera grandes variaciones en la
curva de hidro-generación.
AREKUNA
LA PARAGUA
SAN PEDRO
A continuación, se presentan los resultados de un modelo de predicción con anticipación de un día, para dos sitios en la cuenca: i) San Pedro, punto donde se unen el río Caroní con el río Paragua
(98.000 kmts2), y ii) Arekuna, una estación de medición de caudal ubicada sobre el río Caroní aguas arriba de San Pedro (46.000 kmts2).
Los modelos estadísticos tienen la siguiente estructura:
▪ Modelo San Pedro:
QSP(t) = SP(t) + j=1,2 q=1,TVI(j) i,q(t) Qj(t-q) + (t)
donde Qj(t) representa el caudal medio en el sitio j {Arekuna, La Paragua} durante el período t,
i,q(t) el parámetro estimado en el período t para la fracción de caudal que llega a San Pedro q días
después de haber pasado por el sitio j y j(t) el caudal base esperado para el día t en el sitio j.
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
28
▪ Modelo Arekuna:
QAR(t) = AR(t) + j=1,2 q=1,TVI(j) i,q(t) Pj(t-q) + (t)
donde i,q(t) representa el parámetro estimado en el período t para la fracción de lluvia que llega a
Arekuna q días después de haber caído en la zona asociada al sitio j, {Arekuna, Wonken, Kanavaten,
Uriman}.
Para el modelaje de estimación de estado se utilizan las ecuación de estado y la de observación
presentadas previamente.
El siguiente cuadro presenta el resumen de los resultados obtenidos cuando son evaluados con base en los estadísticos definidos por la Organización Meteorológica Mundial, OMM. K-I corresponde a n
KF estándar y K-V a un MS-KF. Como resultado destacado se puede verificar como MS-KF sigue la señal del caudal mucho más pegado los caudales extremos y la media, lo que muestra la mejora en
los resultados gracias al proceso de aprendizaje que va ajustando la función de respuesta y el estado
del sistema de acuerdo con la recepción de los datos.
APLICACIÓN PREDICCIÓN CAUDAL RIO CARONÍ
EESSTTAADDÍÍSSTTIICCOOSS OO..MM..MM..
MMooddeelloo
CCAAUUDDAALLEESS DDIIAARRIIOOSS CCAAUUDDAALL PPIICCOO MMEENNSSUUAALL CCAAUUDDAALL BBAAJJOO MMEENNSSUUAALL VVOOLLUUMMEENN
mmccss AA RR CC mmccss AA RR CC mmccss AA RR CC MMMM33 CC
SSaann PPeeddrroo
RREEAALL 44990055 77111155 11119988 1122444400
KK--II 44885511 ..003322 ..001100 ..005500 77111100 ..004400 ..000000 ..005566 11220066 ..002244 ..000099 ..003333 1122661133 ..001199
AArreekkuunnaa
RREEAALL 22449944 44113388 779988 66442255
KK--VV 22449977 ..113311 ..000011 ..117744 33991177 ..004444 ..003333 ..112222 774466 ..220099 ..000011 ..229966 66442288 ..001155
KK--II 22553377 ..115544 ..001177 ..119933 33554455 ..113399 ..113311 ..118822 11225511 ..550077 ..556677 ..558899 66550022 ..114433
KK--II KKAALLMMAANN IINNVVAARRIIAANNTTEE
KK--VV KKAALLMMAANN VVAARRIIAANNTTEE MMÚÚLLTTIIPPLLEESS EESSTTAADDOOSS
CC == [[ ((YYcc -- YYoo)) 22//nn))11//22 // YYmm
RR == [[ ((YYcc -- YYoo)) //nnYYmm
AA == [[ YYcc -- YYoo //nnYYmm
YYcc CCaauuddaall ccaallccuullaaddoo
YYoo CCaauuddaall oobbsseerrvvaaddoo
YYmm CCaauuddaall mmeeddiioo oobbsseerrvvaaddoo ((YYmm == YYcc//nn ))
8. IMPLEMENTACIÓN
MS-KF hace parte del sistema de OPCHAIN-SAAM. - STOCHASTIC ADVANCED ANALYTICS
MODELS desarrollado por DecisionWare.
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
29
REFERENCIAS
[1] Jazwinski, A. H. “Stochastic Process and Filtering Theory”. Academic Press (1970)
[2] Poveda, G. y Mesa, O. “Metodologías de Predicción de la Hidrología Colombiana considerando el Fenómeno El Niño/Oscilación del Sur (ENOS)”. Revista Atmosfera No.
20.
[3] Smith, R. Informe de Investigación entregado a ISA (1995).
[4] Rodríguez-Iturbe, I., Valdez, J. y Velásquez, J., "Keynote Lecture on the Applications of
Kalman Filter in Rainfall-Runoff Studies". American Geophysical Union Chapman
Conference on Applications of Kalman Filter to Hydrology, Hydraulics and Water Resources, Pittsburg, U.S.A. (1978).
[5] Kalman, R.E. and Bucy, R.S. “New Results in Linear Filtering and Prediction Theory”.
Trans ASME, Ser D. J. Basic Eng. 83 (1961)
[6] Velásquez, J., "Modelo de Kalman con Múltiples Estados para Predicción de Caudales".
IX Congreso Latinoamericano de Hidráulica, Mérida, Venezuela (1980)
[7] Velásquez, J., "A Multi-State Kalman Approach to Short-term Forecasting of Streamflows". Seminario Internacional de Hidrología y Recursos Hidráulicos, Universidad
Simón Bolívar, Caracas, Venezuela (1978).
[8] Valdez, J., Velásquez, J. y Rodríguez-Iturbe, I., "Bayesian Discrimination on Hydrology
Forecasting Models based on the Kalman Filter". American Geophysical Union Chapman Conference on Applications of Kalman Filter to Hydrology, Hydraulics and Water Resources,
Pittsburg, U.S.A. (1978).
[9] Box, G. and Tiao, G. “Bayesian Inference in Statisticas Analysis”. Addison-Wesley
Publishing Co. (1973).
[10] Natale, L and Todini, E. “A Constrained Parameter Estimation Technique for Linear Models in Hydrology”. Artículo en Mathematical Models for Surface Water Hydrology. Jhon
Wiley & Sons (1977).
DYNAMIC MACHINE LEARNING USING A MULTI-STATE KALMAN FILTER (MS-KF)
30
[11] Doodge, J. “Linear Theory of Hydrologic Systems”. United States Department of
Agriculture. Technical Bulletin 1468 (1973)
top related