Identificación de sistemas dinámicos#
Objetivo del problema de identificación.#
El objetivo de la Identificación de Sistemas (IS) consiste en construir modelos matemáticos de sistemas dinámicos a partir de datos experimentales. En la actualidad, la IS es importante en áreas como control automático, procesamiento de señales, física, economía, medicina, ecología, sismología, biología, entre otros.
Gauss y Legendre fueron los primeros en introducir el método de mínimos cuadrados (LS) para predecir el movimiento de los planetas y cometas a partir de miediciones de telescopios. En consecuencia, diversos trabajos se realizaron sobre problemas de estimación de parámetros.
Existen diferentes clases de modelos. Por ejemplo, modelos lineales deterministicos en tiempo discreto en representación de espacio de estados así como de la forma entrada-salida. También hay representaciones de sistemas a partir de modelos lineales estocásticos de tiempo discreto. Estos modelos pueden ser vistos como sigue:
Filtros dinámicos lineales que permitan la generación, análisis y clasificación de señales aleatorias. Por ejemplo, autorregresivas (AR), modelos promedio (MA) y modelos ARMA.
Modelos lineales con ruido aditivo aleatorio que son capaces de representar ruido, perturbaciones externas y errores de modelado. Por ejemplo, ARX, ARMAX y modelos ARARX.
En la práctica, es común encontrar dos clases de modelos para representar sistemas del mundo real; los modelos no lineales (NL) y los modelos lineales de parámetros variables (LPV).
Los modelos LPV son ideales para modelar sistemas lineales de tiempo variable (LTV) así como representar sistemas no lineales linealizados sobre una trayectoria \(p(t)\). Este tipo de modelos pueden ser vistos como descripciones intermedias entre modelos lineales invariantes en el tiempo (LTI) y modelos no lineales variantes en el tiempo.
Por otro lado, los modelos NL son muy utilizados para describir fenómenos o procesos complejos por ejemplo: procesos bioquímicos en columnas de destilación, plantad hidráulicas, sistemas fisiológicos, vibraciones en estructuras, por mencionar algunos.
Los modelos NL orientados a bloques están compuestos por subsistemas dinámicos LTI y subsistemas estáticos NL donde la parte lineal son generalmente representaciones en funciones de transferencia, espacio de estados o I/O mientras que la parte NL pueden ser con memoria o sin memoria.
El proceso para realizar la identificación de sistemas, según Ljung [1998] consisten en seis pasos:
Diseño del experimento. Elección de la señal de excitación, periodo de muestreo, sensores para las señales de entrada y salida.
Mediciones de entrada y salida.
Elección de la estructura del modelo.
Determinación de la estructura de los parámetros. Criterio de información de Akaike [1974] (AIC) y el criterio de longitud de descripción mínima de Rissanen [1978].
Estimación paramétrica del modelo.
Validación del modelo. Medir el desempeño del modelo obtenido para representar los datos experimentales.
La elección de los algoritmos para la estimación de parámetros depende de dos factores:
La función costo a ser minimizada.
El algoritmo de optimización para encontrar la solución óptima.
De los métodos más utilizados para la estimación paramétrica podemos encontrar:
Método de mínimos cuadrados ponderado (WLS).
Estimador Gauss-Markov.
Mejor estimador lineal sin sesgo (BLUE).
Método de mínimos cuadrados generalizado (GLS).
Método de mínimos cuadrados extendido (ELS).
Método de mínimos cuadrados total (TLS).
Método de máxima verosimilitud (ML).
Método de máximo a posteriori (MAP).
Método de estimación de la mínima de la media del error al cuadrado (MMSE).
Método de estimación M de Huber.
Método de variable instrumental (IV).
Método de subespacio como el algoritmo MUSIC (MUltiple SIgnal Classification).
Variables aleatorias#
Asuma que el valor verdadero de una cantidad de datos es 20, donde el conjunto de datos está dado como sigue:
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|---|---|---|---|---|---|---|
20.13443 |
19.83828 |
20.01702 |
19.99835 |
19.94526 |
20.01415 |
19.96707 |
En términos estadísticos, se puede decir que los datos anteriormente mostrados son generados por una variable aleatoria \(X\) donde
Definition 8 (Variable aleatoria)
Una variable aleatoria es una variable que tiene un valor numérico único, determinado por casualidad, para cada resultado de un procedimiento.
Suponga un sistema simple como un dado en el cual necesitamos conocer la probabilidad de obtener un “3” al lanzar el dado. La probabilidad de obtener este valor es 1/6 o bien, 16.7%. En estadística, podemos escribir esto como
donde \(P\) es una función de probabilidad que representa la probabilidad del “evento” \(X_{1} = 3\) como un número entre \(0\) y \(1\). Para tal efecto, definimos
Definition 9 (Eventos y espacio muestral)
Un evento es cualquier colección de resultados o resultados de un procedimiento.
Un evento simple es un resultado o un evento que no se puede dividir en componentes más simples.
El espacio muestral para un procedimiento se conforma de todos los eventos simples posibles.
Por ejemplo, el espacio muestral para el ejemplo del dado está dado por el siguiente conjunto
y todos los subconjuntos \(A \subset S\) como \(A_{1} = \{1, 2\}\) o \(A_{2} = \{1, 3, 5 \}\) son eventos que pertenecen a un espacio muestral.
La función de probabilidad \(P\) parte de su definición en axiomas. Sin embargo, podemos definir probabilidad como sigue:
Proposition 1 (Probabilidad)
Dado un espacio muestral \(S\), la función de probabilidad \(P\) que asigna a cada evento \(A \subset \) un número \(P(A) \in [0,1]\), llamada *probabilidad” del evento \(A\), que dará una medida precisa de la posibilidad de que ocurra \(A\).
Proposition 2 (Enfoque clásico de probabilidad)
Un procedimiento dado tiene \(n\) eventos simples diferentes y que cada uno de esos eventos simples tiene las mismas posibilidades de ocurrir. Si el evento \(A\) puede ocurrir de estas \(n\) maneras, entonces
La aplica para el ejemplo del dado así como para otras variables discretas aleatorias similares que involucran un número finito de resultados posibles igualmente probables. No obstante, no aplica para variables aleatorias continuas con un número infinito de posibles resultados similares a la variable aleatoria \(X_{2}\).
Para el espacio muestral dado por el conjunto
que involucra un número inifito de posibles resultados continuamente distribuidos entre 0 y 15, se puede utilizar la siguiente expresión
Proposition 3 (Aproximación de frecuencia relativa)
Asuma que dado que un procedimiento es repetido \(n\) veces, y \(f_{n}(A)\) denota la frecuencia relativa con la cual un evento \(A\) ocurre, entonces
Representación de sistemas dinámicos en forma lineal con respecto a los parámetros.#
En los modelos de regresión (MR) se involucra el análisis de una variable dependiente en términos de una o más variables independientes. En estos modelos, los parámetros son ajustados para describir a los datos experimentales. Algunos autores consideran que los modelos de regresión son sistemas entrada-salida ya que contienen los elementos característicos de estos sistemas. Es decir, una entrada \(x\), una salida \(y\), un sistema tipo caja negra que transforma \(x\) en \(y\).
Modelo de regresión lineal#
Suponga que se tiene un conjunto de datos \(\left( x_{1}, y_{1} \right), \left( x_{2}, y_{2} \right), \dots, \left( x_{m}, y_{m} \right)\) \(\left( x_{i}, y_{i} \in \mathbb{R}, i=1, \dots, m, ~ m \in \mathbb{N} \right)\), entonces es posible describir datos experimentales utilizando una función de regresión o función de modelo de la forma
donde los coeficientes \(\beta_{0}\) y \(\beta_{1}\) son llamados coeficientes de regresión o parámetros del modelo de regresión. Además, \(x\) es usualmente llamada variable explicativa, variable predictora o variable independiente, mientras que \(\hat{y}\) es conocida como variable dependiente o variable respuesta.
Note
La expresión dada en la Ec. (60) es llamada función de regresión lineal debido a que los coeficientes \(\beta_{0}\), \(\beta_{1}\) dependen linealmente de esta función.
Se dice que el modelo (60) ajusta los datos experimentales si la diferencia \(y_{i}-\hat{y}(x_{i})~(i=1,\dots,m)\) es pequeña. Para lograr este objetivo, es necesario definir la siguiente expresión
Esta expresión es llamada suma residual de cuadrados (RSQ). RSQ mide la distancia entre los datos experimentales y el modelo; en un problema de regresión estos parámetros pueden ser encontrados planteando un problema de optimización
La solución de este problema de optimización se puede obtener utilizando el procedimiento de minimización de una función de varias variables visto en cálculo de varias variables. Entonces, obteniendo las derivadas parciales de la función \(RSQ(\beta_{0},\beta_{1})\) con respecto \(\beta_{0}\) y \(\beta_{1}\) a cero.
Note
RSQ es utilizado ya que realiza estimaciones de máxima verosimilitud de los parámetros del modelo, \(\beta_{0}\) y \(\beta_{1}\).
Ejemplo#
Considere los siguientes datos experimentales y encuentre un modelo de regresión lineal.
1 |
2 |
3 |
4 |
5 |
|
|---|---|---|---|---|---|
\(x\) |
10 |
20 |
30 |
40 |
50 |
\(y\) |
3 |
5 |
11 |
12 |
16 |
Note
Las funciones de regresión pueden ser utilizadas para predecir valores de la variable de respuesta a partir de las variables explicativas. Las buenas predicciones se alcanzan sólo si las funciones de regresión se ajustan lo suficientemente bien a los datos experimentales.
Coeficiente de determinación#
El coeficiente de determinación mide la calidad de ajuste entre los datos experimentales y el modelo. Dicho valor se encuntra en una escala entre 0 y 100%, donde 0% representa un ajuste pobre mientras que el 100% implica un ajuste perfecto entre el modelo y los datos. El coeficiente de determinación está definido como
donde \(\hat{y}_{i} = \hat{y}\left( x_{i} \right)\). Para el caso de los modelos de regresión lineal, esto se puede rescribir como
Note
Si se obtienen valores negativos de \(R^{2}\), entonces el modelo funciona peor que un modelo que produciría el valor medio.
Modelo de regresión no lineal#
Debido a que algunos datos experimentales siguen algún patrón curvo no lineal que no se puede describir utilizando un modelo lineal, una alternativa es utilizar una función de regresión polinomial de la forma
Si bien la Ec. (61) representa una función que puede ser altamente no lineal, si \(x\) es dado y además \(\hat{y}\) es calculado como una combinación lineal de los coeficientes de regresión \(\beta_{0},\beta_{1},\dots,\beta_{s}\). Por lo tanto, todas las funciones de regresión se pueden llevar a la forma
Regresión lineal múltiple#
Suponga un problema en el que se desea predecir la variable de interés \(y\) a partir de diversas variables independientes \(x_{1}, x_{2}, \dots, x_{n} \left(n \in \mathbb{N}\right)\). A este problema se le conoce como problema de regresión lineal múltiple (MRLM). La expresión que representa al MRLM está dada como sigue
Definition 10 (Regresión múltiple)
Las funciones de regresión múltiple \(\hat{y}(\mathrm{x})\) calculan una variable de respuesta \(y\) a partir de variables explicativas \(\mathrm{x} = \left( x_{1}, \dots, x_{n} \right)~ (n > 1)\) y los coeficientes de regresión \(\beta_{0}, \beta_{1}, \dots, \beta_{s}\). Si \(\hat{y}(\mathrm{x})\) depende linealmente de \(\beta_{0}, \beta_{1}, \dots, \beta_{s}\) entonces los datos experimentales pueden ser ajustados utilizando un modelo de regresión lineal múltiple.
Entonces, la forma general de un modelo de regresión lineal múltiple que involucra un número arbitrario de \(n\in \mathbb{N}\) variables explicatorias es
donde \(\mathrm{x} = \left( x_{1}, x_{2}, \dots, x_{n} \right)^{t}\) y \(f_{i}\) son funciones reales arbitrarias.
Redes Neuronales Artificiales#
En los casos en los que la función de regresión no puede obtenerse de la teoría o en la que es difícil obtener una representación gráfica de los datos se pueden utilizar las redes neuronales artificiales (ANN). Este tipo de modelos pueden ser considerados como funciones de regresión no lineales con un gran número de parámetros a ajustar para aproximar a cualquier función suave.
Redes neuronales de alimentación hacia adelante#
Este tipo de redes involucra una capa de entrada, una capa de salida y capas ocultas entre las capas de entrada y salida. En estos modelos se asume que la información viaja de izquierda a derecha y por esta razón reciben este nombre. Además, este tipo de representaciones matemáticas son suficientemente complejas para aproximar funciones suaves arbitrarias.
Asuma que se tienen \(n\in \mathbb{N}\) nodos de entrada que corresponden a las cantidades de entrada \(x_{1},\dots,x_{n}\), con \(H \in \mathbb{N}\) nodos ocultos y \(m \in \mathbb{N}\) nodos de salida que corresponden a las cantidades de salida \(y_{1},\dots,y_{m}\), si se multiplica cada entrada con una constante y se realiza la suma de todas las entradas y se agrega una constante se obtiene la siguiente expresión
donde los llamados pesos \(w_{ik;h_{1}}\) representan el coeficiente real utilizado por el nodo oculto para multiplicar a la \(k\)-ésima entrada (\(ik\)) mientras que los sesgos o “bias” \(b_{h_{1}}\) son sumados por el nodo oculto.
Para evitar que la expresión (62) sea considerada como una forma compleja de un modelo de regresión lineal múltiple es necesario que en el nodo oculto exista una función real no lineal llamada función de activación
La función de activación más utilizada es la función logística
donde el estado de los nodos ocultos \(l=1,\dots,H\) después del procesamiento de las entradas se puede representar como sigue
Asumiendo que la capa de salida procesa esta entrada de la misma manera que la capa oculta utilizando diferentes coeficientes y una función no lineal diferente, es posible obtener una salida a partir de
Máquina de aprendizaje extrema#
De acuerdo con Huang et al. [2006], los algoritmos de entrenamiento para redes neuronales son lentos y pueden llevar horas, días o inclusive más tiempo para encontrar los parámetros del modelo.
En la práctica, las redes neuronales se entrenan en un conjunto de entrenamiento finito. Partiendo de esta suposición, Huang and Babri [1998] mostraron que una red neuronal de retroalimentación (SLFN) con una capa oculta con máximo \(N\) nodos ocultos y casi cualquier función de activación no lineal puede aprender exactamente \(N\) observaciones distintas.
Para \(N\) muestras distintas arbitrarias \(\left( \mathrm{x}_{i}, \mathrm{t}_{i} \right)\) donde \(\mathrm{x}_{i} = \begin{bmatrix} x_{i1},x_{i2},\dots,x_{in} \end{bmatrix}^{T} \in \mathbb{R}^{n}\) y \(\mathrm{t}_{i} = \begin{bmatrix} t_{i1},t_{i2},\dots,t_{im} \end{bmatrix}^{T} \in \mathbb{R}^{m}\), la red feedforward de capa oculta única (SLFN) con nodos ocultos aleatorios y función de activación \(\varphi\) se modelada matemáticamente como
donde \(\mathrm{w}_{i} = \begin{bmatrix} w_{i1}, w_{i2}, \dots, w_{in} \end{bmatrix}^{T}\) es el vector de psos conectados al \(i\)-ésimo nodo oculto y los nodos de entrada, \(\beta_{i} = \begin{bmatrix} \beta_{i1}, \beta_{i2}, \dots, \beta_{im} \end{bmatrix}^{T}\) es el vector de pesos conectados al \(i\)-ésimo nodo oculto y los nodos de salida, además \(b_{i}\) es el umbral de el \(i\)-ésimo nodo oculto.
Entonces, la red SLFN con \(Ñ\) nodos ocultos y función de activación \(\varphi\) puede aproximar las \(N\) muestras con cero error \(\sum_{j=1}^{Ñ} ||\mathrm{o}_{j} - \mathrm{t}_{j}|| = 0 \), i.e. que existe \(\beta_{i}\), \(\mathrm{w}_{i}\) y \(b_{i}\) tal que
Las \(N\) ecuaciones se pueden rescribir como
donde
Para pesos de entrada fijos \(\mathrm{w}_{i}\) y sesgos de capa oculta \(b_{i}\), el entrenamiento de una red tipo SLFN es equivalente a encontrar una solución de mínimos cuadrados \(\hat{\beta}\) del sistema lineal \(\mathrm{H}\beta = \mathrm{T}\)
Si \(Ñ=\), entonces la matrix \(\mathrm{H}\) es cuadrada y por consiguiente tiene inversa cuando el vector de peso de entrada \(\mathrm{w}_{i}\) y los sesgos ocultos \(b_{i}\) son escogidos aleatoriamente.
En la práctica, \(Ñ \ll N\). Por lo tanto, \(\mathrm{H}\) es rectangular y podría no existir \(\mathrm{w}_{i}, b_{i}, \beta_{i}~(i=1,\dots,Ñ)\) tal que \(\mathrm{H}\beta \mathrm{T}\). Por consiguiente, la solución del sistema lineal está dada como sigue
donde \(\mathrm{H}^{\dagger}\) es la inversa generalizada Moore-Penrose de la matriz \(\mathrm{H}\) la cual satisface las siguientes condiciones:
\(\mathrm{H} \mathrm{H}^{\dagger} \mathrm{H} = \mathrm{H}\),
\(\mathrm{H}^{\dagger} \mathrm{H} \mathrm{H}^{\dagger} = \mathrm{H}^{\dagger}\),
\(\left( \mathrm{H} \mathrm{H}^{\dagger} \right)^{T} = \mathrm{H} \mathrm{H}^{\dagger}\),
\(\left( \mathrm{H}^{\dagger} \mathrm{H} \right)^{T} = \mathrm{H}^{\dagger} \mathrm{H}\).
Note
En el caso especial cuando la matriz \(\mathrm{H}\) es una matriz cuadrada no singular, la pseudoinversa de \(\mathrm{H}\) es simplemente su inversa, i.e. \(\mathrm{H}^{\dagger} = \mathrm{H}^{-1}\).
La pseudoinversa también está definida como
o bien
si \(\mathrm{H}^{T}\mathrm{H}\) o \(\mathrm{H} \mathrm{H}^{T}\) es no singular.
Finalmente, el método de entrenamiento para la SLFN llamado máquina de aprendizaje extrema (ELM) se presenta a continuación:
Algorithm 1 (Algoritmo ELM)
Entradas Dado un conjunto de entrenamiento \(\aleph = \left\{ \left( \mathrm{x}_{i}, \mathrm{t}_{i} \right) | \mathrm{x}_{i} \in \mathbb{R}^{n}, \mathrm{t}_{i} \in \mathbb{R}^{m}, i=1,\dots,N \right\}\), una función de activación \(\varphi(\xi)\), y nodo oculto \(Ñ\).
Asignar aleatoriamente pesos de entrada \(\mathrm{w}_{i}\) y sesgos \(b_{i}\).
Calcular la matriz de salida de la capa oculta \(\mathrm{H}\).
Calcular los pesos de salida \(\beta\).
donde \(\mathrm{T} = \begin{bmatrix} \mathrm{t}_{1},\dots,\mathrm{t}_{N} \end{bmatrix}^{T}\).
Identificación de sistemas utilizando modelos NARMAX#
Los modelos de media móvil autorregresiva no lineal con entrada exógena (NARMAX) fueron propuestos por Billings [1981], Chen and Billings [1989], Leontaritis and Billings [1985]. Este modelo puede ser descrito como sigue
donde \(n_{y} \in \mathbb{N}^{*}\), \(n_{x} \in \mathbb{N}\), \(n_{e} \in \mathbb{N}\) son los retrasos máximos para la salida y entrada del sistema; \(x_{k} \in \mathbb{R}^{n_{x}}\) es la entrada del sistema y \(y_{k} \in \mathbb{R}^{n_{y}}\) es la salida del sistema en tiempo discreto \(k \in \mathbb{N}^{n}\) mientras que \(e_{k} \in \mathbb{R}^{n_{e}}\) representa posible ruido e incertidumbres en el tiempo \(k\). Además, \(f\) es una función no lineal de los regresores de entrada y salida; \(d\) es un retardo de tiempo típicamente establecido en \(d=1\).
Aunque se pueden hacer diversas aproximaciones a la función \(f\), por ejemplo mediante redes neuronales, funciones de base radial, el modelo NARMAX polinomial de potencia es el más utilizado
donde \(p\) es el numero de regresores, \(\Theta_{i}\) los parámetros del modelo, \(a_{i}\), \(m\), \(b_{i}\), \(j\) y \(d_{i}\), \(l \in \mathbb{N}\) son los exponentes de la salida, la entrada y los términos de ruido, respectivamente.
Encontrar los parámetros de un modelo NARMAX es simple si la estructura del modelo se conoce a priori. Sin embargo, en la práctica no hay información sobre los términos que deben ser incluidos en el modelo final. No obstante, utilizar modelos NARMAX implica:
Seleccionar el número adecuado de regresores.
Estimar los parámetros del modelo.