Sei sulla pagina 1di 40

CAPÍTULO 7

MODELADO DE PROCESOS
DINÁMICOS-IV
Identificación de sistemas

CONTENIDO

Introducción
Propósito general de la IdS
El criterio de los mínimos cuadrados en la estimación de
parámetros
Relación criterio de los mínimos cuadrados-optimización
La IdS y la respuesta de sistemas de control
Sobre la Identificación de Sistemas (IdS). Su concepto.
La utilidad de la IdS
Del modelo desarrollado durante la IdS
Selección del modelo para una IdS
Análisis de la relación entrada-salida
Un modelo “hecho a la medida”
Otros modelos lineales que se utilizan en la IdS
Metodología típica para una IdS
Nomenclatura compacta en la IdS
Algunos modelos paramétricos para sistemas lineales e
invariantes en el tiempo
Otros modelos
Herramienta de identificación
Página 2 de 40

Introducción
Este último capítulo describe los fundamentos de la identificación de sistemas (IdS). Después de su
definición y objetivos se presentan unos ejemplos de aplicación en el área de control. Dado lo extenso
del tema, nos focalizaremos principalmente en los métodos de obtención de modelos mediante la
identificación paramétrica o métodos paramétricos y que se relacionan específicamente con la
estimación directa de los parámetros de uno o varios modelos matemáticos de estructura conocida
y preseleccionada. También existe el método de la identificación no-paramétrica o métodos no
paramétricos que no estiman en forma directa los parámetros de un modelo. De estos métodos los
más conocidos y utilizados son el análisis de Fourier, el de la respuesta transitoria, análisis de la
respuesta en frecuencia, y análisis espectral, por ejemplo. Empezamos presentando un panorama
general de la IdS, seguido de algunas definiciones.
Por tratarse de un primer curso en este tema, dedicaremos nuestro esfuerzo a realizar ejemplos
formativos, en lugar de ahondar en los fundamentos matemáticos de esta área de alta importancia en
los sistemas de control, particularmente en las etapas iniciales del modelado matemático. Espero dar
una idea clara de para qué, y cómo se hace la identificación de sistemas, que les aseguro es interesante
y requiere de un manejo conceptual apropiado, complementándose bastante bien con la experiencia
en el manejo de los programas especializados en esta área. De igual forma, así sea obvio, se necesita
partir de la comprensión clara del problema de identificación que se quiere resolver, lo cual intento
resaltar.

En una breve búsqueda en la base


de datos SCOPUSMR y relacionada
con el área de identificación de
sistemas y su correspondencia con
los sistemas de control, encontré
los resultados mostrados en la
figura 7.1, para los años 1961 a
2017 (feb). Se hallaron 15731
documentos, evidenciándose un
continuo crecimiento de este
tema en este período de tiempo

Figura 7.1. Artículos publicados en los años 1961 a 2017 (febrero).

La identificación de sistemas impactó muy positivamente el área del actual control moderno que se
inició a comienzos de la década de los sesenta. De igual forma, en esa misma década se desarrolló el
modelo lineal ARMAX (AutoRegressive-Moving Average with eXogenous terms), siendo uno de los
más utilizados a la fecha en el software comercial de identificación. Se resalta igualmente su uso en
procesos industriales que son difíciles de modelar utilizando métodos tradicionales.
Página 3 de 40

Antes de iniciar propiamente con la IdS, recordemos el criterio de mínimos cuadrados que se aprende
en los cursos de cálculo y se refuerza en los de análisis o métodos numéricos.
Propósito general de la IdS
Esta disciplina de las matemáticas aplicadas se orienta a la construcción y/o selección de modelos
matemáticos incluyendo la estimación de sus parámetros, que definan el comportamiento dinámico
de un sistema, pero con la característica relevante de que se parte de datos experimentales
recolectados de éste. Su nivel de desarrollo y estructura actual, también ha sido definitivo el uso de
la estadística que le ha permitido validar muchos de sus conceptos.
En otras palabras, la IdS está orientada a establecer un Modelado Matemático, con el propósito de
resolver problemas prácticos haciendo uso de él.
A continuación, pasamos a la descripción de algunos aspectos que considero necesarios para el cabal
entendimiento de qué es la IdS, su utilidad, características del modelo que se obtiene, finalizando con
la descripción de la metodología típica que se sigue en este proceso.
Sobre la Identificación de Sistemas (IdS). Su concepto.
Como se indicó, se entiende como IdS la estrategia de construir un modelo (usualmente empírico o
semi-empírico) fundamentado en el análisis del mismo sistema, así como la determinación de los
parámetros de uno ya existente.
La IdS es un área bastante desarrollada tanto a nivel conceptual, como en la herramienta
computacional requerida, existiendo ya software libre y comercial muy útil para esta tarea.
Típicamente se realiza la IdS asumiendo el sistema como una caja negra, es decir, no se le da relevancia
al proceso interno, pero en cambio seguimos los cambios de sus salidas, para unas determinadas
entradas.
La IdS utiliza en forma intensiva los métodos estadísticos con el objetivo de construir modelos de
sistemas dinámicos, todo ello a partir de datos experimentales previamente disponibles (identificación
fuera de línea), o en el mejor de los casos, en tiempo real (identificación on-line).
La utilidad de la IdS
Por ser una estrategia matemática ampliamente conocida, su aplicación a la vida real o mejor, a
problemas de la vida real, es variada. No solamente está orientada a validar MoMas, sino también a
ser una buena aproximación al modelado de problemas donde los métodos convencionales basados
en principios fundamentales son de difícil aplicación, o el fenómeno envuelve tantos de ellos, que es
prácticamente imposible dilucidar un modelo. Para este curso se resalta como una herramienta valiosa
en la etapa de modelado del proceso que se requiere controlar.
Del modelo desarrollado durante la IdS
En este punto cabe la pregunta, ¿Tiene algún fundamento en principios o leyes físicas el modelo
desarrollado mediante la IdS? y cuya respuesta es evidente: ¡¡ nooo…!! Estos tipos de modelos no
representan realmente los aspectos fundamentales del proceso que modela. Relaciona las salidas para
unas entradas definidas, pero sin involucrar el proceso en sí.
Página 4 de 40

Selección del modelo para una IdS


Conocida experimentalmente la relación entre las salidas o respuestas de un sistema para unas
entradas conocidas, se proponen varias estructuras o tipos de modelos, usualmente lineales, y al que
se le ajustan sus parámetros para que describan lo mejor posible los resultados obtenidos.
Seguidamente se evalúan cuál o cuáles de estos modelos describen con mejor “calidad” los resultados
observados en los experimentos. Es claro que se deben definir algunos criterios de “calidad” para la
selección del modelo que mejor los describe. Así las cosas, ¿Son arbitrarios los modelos que se
proponen para la IdS?, teniéndose respuesta directa: ¡¡sí!!
Análisis de la relación entrada-salida
Iniciamos con la pregunta típica, ¿Se puede utilizar cualquier tipo de entrada para estudiar las
relaciones entre la entrada y la salida?, a la que responderíamos con un supuestamente sí. No obstante,
ciertos tipos de entradas revelan más información que otras. De hecho, tampoco hay entradas
universales que revelen toda la información dinámica de un sistema. En forma convencional se utiliza
una entrada impulso. Así, se pueden construir modelos lineales estimando la respuesta al impulso o
función de frecuencia. Debe recordarse que un sistema lineal e invariante en el tiempo se caracteriza
completamente mediante su respuesta a una señal impulso, es decir, con esta respuesta se podrá
saber cómo será su respuesta frente a cualquier tipo de entrada. En general y sucede en la mayoría
de casos en el área de control de procesos, que se utilicen entradas definidas cuyas respuestas
analíticas se conocen para ciertos sistemas. Por ejemplo, se usan entradas escalón, rampa, parábola y
seniodales.
Un modelo “hecho a la medida”
Estos “modelos hechos a la medida” (taylor-made) se utilizan en la IdS con la característica de haberse
construido a partir de las leyes fundamentales que describen un sistema (proceso) en particular,
teniendo parámetros desconocidos y que deberán determinarse a partir de los datos experimentales
disponibles.
Otros modelos lineales que se utilizan en la IdS
Existen otros tipos de modelos denominados “previamente disponibles (ready-made)” o “modelos
estándar”, o “modelos de caja negra (black-box)” que tienen una estructura conocida y se utilizan
para describir un proceso sin que haya una razón clara de por qué se selecciona uno o el otro. Su
principal característica radica en la habilidad de cubrir un amplio rango de comportamientos
dinámicos. Usualmente están disponibles en el software comercial o libre que se utiliza para la IdS.
Para el modelo, o los modelos, pre-seleccionados se determinan sus parámetros a partir de los datos
experimentales de tal forma que satisfaga la dinámica de un sistema en particular. De esta clase de
modelos tal vez los más ampliamente conocidos son los modelos lineales. De igual forma, de los
modelos dinámicos estándares lineales y clasificados como cajas negras, los más conocidos en la IdS
son los ARMAX, ARX, BJ y OE, entre otros.
El modelo ARMAX, como se indicó un acrónimo del inglés AutoRegressive-Moving Average with
eXogenous terms, es en esencia un modelo de regresión lineal que en su estructura incluye un
Página 5 de 40

componente relacionado con la dinámica estocástica. De igual forma un modelo ARX esto es,
AutoRegressive with eXogenous terms, también captura la dinámica estocástica (aleatoria) como
parte de la dinámica de un sistema. Se considera el modelo más sencillo que incorpora las señales de
excitación. En ambos casos, la determinación de sus coeficientes se realiza, por ejemplo, mediante el
bien conocido método de los mínimos cuadrados. El modelo matemático BJ (Box-Jenkins) es auto-
regresivo, y se utiliza típicamente en la predicción del futuro en actividades económicas fundamentado
en su pasado conocido. En el modelo OE (Output Error) la fuente del ruido se define como el error
(una diferencia) entre la salida real del sistema y la misma, pero libre de ruido.
Es importante tener presente que todos esos modelos lineales y los no lineales (tales como los
generados por las redes neuronales) empleados en la identificación de sistemas, requieren el manejo
dispendioso en muchas de las veces, de grandes volúmenes de información en la forma de entradas-
salidas. De igual forma, se requerirá el cálculo de los parámetros del modelo mediante métodos
numéricos. Así las cosas, resulta evidente el uso del computador, debiéndose ahora tener claro los
fundamentos de la identificación de sistemas, junto con el desarrollo de las destrezas necesarias para
el manejo de un software especializado (propio, libre o comercial) que le facilitará el trabajo.
Metodología típica para una IdS
Si bien, para abordar un problema de selección del modelo que mejor describe el comportamiento
dinámico es propio del sistema que se aborda, se pueden reconocer algunas actividades comunes:
a. Realizar los experimentos apropiados que permitan recolectar la información para el rango en
el cual el modelo será válido. Usualmente se recomienda elaborar con anticipación un diseño
estadístico de experimentos.
b. Si se recurre a los modelos predefinidos y disponibles en la literatura o en el software que se
utiliza, se debe tener una mínima información de cuáles de ellos son los más apropiados para
el sistema que pretendemos modelar.
c. Si se dispone de un elevado número de estos modelos, se deberá definir algunos criterios que
permitan de manera objetiva, escoger uno o varios de ellos que satisfacen los datos
experimentales recolectados.
d. Contrastar (validar) los resultados que predice cada modelo frente a los experimentales, y
e. Definir el modelo seleccionado dejando claro las restricciones de su validez y forma de uso.

El criterio de los mínimos cuadrados en la estimación de parámetros


La razón de estudiar o repasar este tema radica en que este concepto se utiliza como herramienta
numérica cuando queremos determinar, por ejemplo, los parámetros de un MoMa durante la
identificación de un sistema. Su estado de avance es tal que ya prácticamente todo el software de
propósito general, así como el disponible en la identificación de sistemas lo utilizan, mayormente
cuando se quiere ajustar una curva a una serie de datos. Si bien en nuestros días ya no vale la pena
hacerlo manualmente, sí es importante tener claro su metodología y saber qué y cómo se hace.
Página 6 de 40

El problema:
Se dispone de una serie de datos experimentales para los cuales se deben determinar los parámetros
del modelo que se propone para definir (estimar) su comportamiento. Se ilustrará la metodología
para los siguientes modelos:
a) Lineal de la forma 𝑦(𝑥) = 𝐴𝑥 + 𝐵
b) Exponencial de la forma 𝑦(𝑥) = 𝐴𝑒 −𝐵𝑥
c) De la forma 𝑦(𝑥) = 𝐴𝑥 𝐵
d) De la forma 𝑦(𝑥) = 𝐴𝑥 2 + 𝐵𝑥 + 𝐶
Resolvemos cada uno seguidamente:
a) La figura adjunta muestra los datos cuyo comportamiento se quiere modelar mediante una
línea recta. Es decir, en lugar de trastearnos para todo lado la gráfica o la tabla de datos, utilizaremos
el modelo de una línea recta para describirlos. Este modelo nos servirá, por ejemplo, para iniciar el
proceso de diseño y análisis de un sistema de control.

La idea es lograr que la suma de los cuadrados de las distancias (¡verticales!) de todos esos datos debe
ser la mínima posible. Se elevan esas distancias al cuadrado para evitar que se cancelen las distancias
cercanas de los puntos que estén arriba con los que están por debajo de la línea que representa el
MoMa que se va a ajustar mediante la determinación de los parámetros (𝐴; 𝐵).

La distancia vertical del 𝑘 −ésimo punto a aquel sobre la recta, teniendo ambos en común la misma
abscisa 𝑥 (variable independiente) viene dada por,

𝑑𝑘2 = (𝑦𝑘 − 𝑦𝑚𝑜𝑑𝑒𝑙𝑜 )2 ≡ (𝑦𝑚𝑜𝑑𝑒𝑙𝑜 − 𝑦𝑘 )2 = (𝐴𝑥 + 𝐵−𝑦𝑘 )2 ≡ (𝑦𝑘 − 𝐴𝑥 − 𝐵)2


Página 7 de 40

pero como existen 𝑁 número de pares (𝑥𝑘 ; 𝑦𝑘 ) de puntos experimentales, la suma de todos estos
términos al cuadrado conforma la función que nos servirá como punto de partida,

𝑁 𝑁 𝑁

𝐹𝑂(𝐴; 𝐵) = ∑ 𝑑𝑘2 = ∑(𝑦𝑚𝑜𝑑𝑒𝑙𝑜 − 𝑦𝑘 )2 = ∑(𝐴𝑥 + 𝐵 − 𝑦𝑘 )2


𝑘=1 𝑘=1 𝑘=1

a esta función (observe que está al cuadrado su término derecho), 𝐹𝑂(𝐴; 𝐵) comúnmente se le
conoce en la literatura como función objetivo (o función de costo) ya que ésta será la que se
minimizará (de ahí el nombre del criterio de mínimos cuadrados). Es decir, se deberán encontrar los
valores de (𝐴; 𝐵) de tal forma que cuando sume el cuadrado de todas las distancias verticales, ésta
sea mínima (la más corta de todas las posibles). Al ser esta distancia mínima, aseguramos que esa recta
es la mejor (y única), que podremos tener para que ella represente todo ese conjunto de puntos
experimentales. De esta manera, resumimos toda esa información que llevan los datos en una sola
ecuación que, para este ejemplo en particular es una línea recta.

De los cursos de cálculo aprendimos el primer método de optimización (minimización para este caso)
y es el criterio de la primera derivada. Si lo recuerda, derivamos la función e igualamos este resultado
a cero para encontrar los valores críticos (mínimo o máximo). Para saber si se trata de un valor
extremo mínimo o un valor extremo máximo, procedemos a realizar la segunda derivada. Si esta
nueva derivada es mayor que cero, tenemos un mínimo, y si es menor que cero, tendremos un
máximo. Si no podemos definirlo, se trata de un punto de inflexión.

Procederemos ahora utilizando la primera derivada y más adelante veremos otras alternativas.
Derivamos respecto a cada parámetro 𝐴 y 𝐵, que ahora se convierten en nuestras variables que
debemos calcular,

𝑁 𝑁
𝜕𝐹𝑂(𝐴; 𝐵)
= ∑(𝐴𝑥𝑘 + 𝐵 − 𝑦𝑘 )2 = ∑ 2(𝐴𝑥𝑘 + 𝐵 − 𝑦𝑘 ) 𝑥𝑘 = 0
𝜕𝐴
𝑘=1 𝑘=1
𝑁 𝑁
𝜕𝐹𝑂(𝐴; 𝐵)
= ∑(𝐴𝑥𝑘 + 𝐵 − 𝑦𝑘 )2 = ∑ 2(𝐴𝑥𝑘 + 𝐵 − 𝑦𝑘 ) =0
𝜕𝐵
𝑘=1 𝑘=1

quedando estas dos ecuaciones que se igualan a cero, para encontrar a partir de ellas los valores
críticos (mínimo o máximo). Reorganizando estas ecuaciones tenemos,

𝑁 𝑁 𝑁 𝑁

∑(𝐴𝑥𝑘2 + 𝐵𝑥𝑘 − 𝑦𝑘 𝑥𝑘 ) = 0 ⇒ 𝐴 ∑ 𝑥𝑘2 + 𝐵 ∑ 𝑥𝑘 = ∑ 𝑦𝑘 𝑥𝑘


𝑘=1 𝑘=1 𝑘=1 𝑘=1
𝑁 𝑁 𝑁 𝑁

∑ (𝐴𝑥𝑘 + 𝐵 − 𝑦𝑘 ) =0 ⇒ 𝐴 ∑ 𝑥𝑘 + 𝐵 ∑ 1 = ∑ 𝑦𝑘
𝑘=1 𝑘=1 𝑘=1 𝑘=1
Página 8 de 40

Se observa que estas ecuaciones algebraicas son LINEALES en 𝐴 y 𝐵. Cada término de la sumatoria
es un número que se obtiene de sumar los datos experimentales de la tabla de datos. Ilustremos este
caso con un ejemplo.

Ejemplo: Dados los datos indicados en la siguiente tabla. Determine los parámetros (𝐴; 𝐵) del MoMa de una
línea recta que es el primero que se quiere probar si representa los datos en forma aceptable.

𝑥𝑘 𝑦(𝑥𝑘 ) Solución: A partir de la tabla de datos se calculan las sumatorias

1 1 𝑁 𝑁 𝑁

∑ 𝑥𝑘2 = 191 ∑ 𝑥𝑘 = 31 ∑ 𝑦𝑘 𝑥𝑘 = 204,9


2 2,4 𝑘=1 𝑘=1 𝑘=1

3 2,8 𝑁 𝑁

∑ 𝑥𝑘 = 31 7 ∑ 𝑦𝑘 = 33.1
4 4,3
𝑘=1 𝑘=1

5 5,3
Así, el sistema de ecuaciones queda como:
6 6,5
191 𝐴 + 31 𝐵 = 204.9 𝐴 = 1,085600
10 10,8
31 𝐴 + 7𝐵 = 33.1 𝐵 = −0,079255

Quedando entonces el MoMa con los coeficientes calculados como,

𝒚(𝒙) = 𝟏, 𝟎𝟖𝟓𝟔𝟎𝟎𝒙 − 𝟎, 𝟎𝟕𝟗𝟐𝟓𝟓

Probando con los valores de la variable independiente, vemos que hay


diferencia (error) entre lo que predice el modelo y los datos experimentales.
Al parecer para este conjunto de datos el modelo lineal es apropiado,
obviamente, dependiendo de la precisión que se requiera para éste.
Página 9 de 40

b) Exponencial de la forma 𝑦(𝑥) = 𝐴𝑒 −𝐵𝑥 . Se procede de la misma forma, pero ahora la función
objetivo queda como,
𝑁 𝑁 𝑁

𝐹𝑂(𝐴; 𝐵) = ∑ 𝑑𝑘2 = ∑(𝑦𝑚𝑜𝑑𝑒𝑙𝑜 − 𝑦𝑘 )2 = ∑(𝐴𝑒 −𝐵𝑥𝑘 − 𝑦𝑘 )2


𝑘=1 𝑘=1 𝑘=1

Procedemos a derivar con respecto a las variables (que son los parámetros del modelo) quedando:

𝑁 𝑁
𝜕𝐹𝑂(𝐴; 𝐵)
= ∑(𝐴𝑒 −𝐵𝑥𝑘 − 𝑦𝑘 )2 = ∑ 2(𝐴𝑒 −𝐵𝑥𝑘 − 𝑦𝑘 ) 𝑒 −𝐵𝑥𝑘 = 0
𝜕𝐴
𝑘=1 𝑘=1
𝑁 𝑁
𝜕𝐹𝑂(𝐴; 𝐵)
= ∑(𝐴𝑒 −𝐵𝑥𝑘 − 𝑦𝑘 )2 = ∑ 2𝐴(𝐴𝑒 −𝐵𝑥𝑘 − 𝑦𝑘 ) 𝑒 −𝐵𝑥𝑘 (−𝑥𝑘 ) = 0
𝜕𝐵
𝑘=1 𝑘=1

y reorganizando este sistema,

𝑁 𝑁

𝐴 ∑ 𝑒 −2𝐵𝑥𝑘 − ∑ 𝑦𝑘 𝑒 −𝐵𝑥𝑘 =0
𝑘=1 𝑘=1
𝑁 𝑁

−𝐴 ∑ 𝑥𝑘 𝑒 −2𝐵𝑥𝑘 + ∑ 𝑦𝑘 𝑥𝑘 𝑒 −𝐵𝑥𝑘 =0
𝑘=1 𝑘=1

y se trata de un sistema de ecuaciones NO-LINEAL en 𝐵. Su solución manual es dispendiosa ya sea


con el método de Newton-Raphson o inclusive habiéndolo linealizado y utilizando obviamente el
Página 10 de 40

computador. Aquí es donde se aprovecha de la simplicidad de la optimización y en particular de los


algoritmos ya programados en software comercial o los propios. Por la disponibilidad en la universidad
de MatlabMR, lo haremos a título de ejemplo.

Ejemplo: Para los siguientes datos experimentales determine los parámetros del MoMa exponencial
resolviendo el problema mediante una estrategia de optimización. Proponer otro MoMa alterno.

Información del proceso: el MoMa se presume tiene la forma 𝒚(𝒙) = 𝑨𝒆−𝑩𝒙 donde (𝐴; 𝐵) son los
parámetros que se desean conocer a partir del comportamiento entrada-salida del proceso.

𝑥𝑘 𝑦(𝑥𝑘 ) Solución: Al utilizar el criterio de mínimos cuadrados para este modelo no-lineal tiene la
función objetiva de la forma,
0 1800
𝑁=7
2 1200
𝐹𝑂(𝐴; 𝐵) = ∑(𝐴𝑒 −𝐵𝑥𝑘 − 𝑦𝑘 )2
3 888 𝑘=1

4 600
En lugar de resolver el sistema, lo único que debemos hacer es reemplazar la pareja de
5 400 valores experimentales (𝑥𝑘 ; 𝑦𝑘 ) y utilizar un algoritmo de optimización tales como
fminunc, y fminsearch de la toolbox de optimización. De esta manera la función objetivo
6 280 es,
8 10
𝐹𝑂(𝐴; 𝐵) = (𝐴 ∗ 𝑒 −𝐵∗0 − 1800)2 + (𝐴 ∗ 𝑒 −2∗𝐵 − 1200)2 + (𝐴 ∗ 𝑒 −3∗𝐵 − 888)2
+ (𝐴 ∗ 𝑒 −4∗𝐵 − 600)2 + (𝐴 ∗ 𝑒 −5∗𝐵 − 400)2 + (𝐴 ∗ 𝑒 −6∗𝐵 − 280)2
+ (𝐴 ∗ 𝑒 −8∗𝐵 − 10)2

Esta función se digita en la ventana de entrada del optimizador. No se demostrarán los pasos pues no es el
objetivo del problema ni del presente texto. En clase se explica cómo hacerlo, aunque no es para nada
complicado y sí ahorra tiempo. Seguidamente aparece el script que se utilizó para resolver el problema,
como alternativa al hacerlo directamente mediante el toolbox (su GUI).

function p=optimizacion(R)
clc Se digita en la pantalla:
format long
A =R(1);B=R(2); >> fminsearch('optimizacion',[1 1])
p = (A.*exp(-B*0)-1800)^2+…
(A.*exp(-2*B)-1200)^2+… y del programa de optimización se tiene que el MoMa con sus
(A.*exp(-3*B)-888)^2+...
parámetros es:
(A.*exp(-4*B)-600)^2+...
(A.*exp(-5*B)-400)^2+...
(A.*exp(-6*B)-280)^2+... 𝒚(𝒙) = 𝟏𝟖𝟕𝟓. 𝟗𝟕𝟐𝟑𝟒𝟖𝟏𝟏𝟕𝟎𝟗𝟏 𝒆−𝟎.𝟐𝟖𝟓𝟏𝟒𝟔𝟎𝟗𝟖𝟏𝟏𝟕 𝒙
(A.*exp(-8*B)-10)^2;

La gráfica de los datos experimentales, junto con el MoMa exponencial y el parabólico se observa a
continuación. Al parecer el modelo parabólico tiene un mejor desempeño al modelar los datos
experimentales. En este punto se deben calcular los errores medio, máximo y el cuadrático medio para
respaldar tal aseveración. Esta información usualmente la proporciona el mismo software.
Página 11 de 40

Ahora, si hablamos de mil o diez mil datos este método de solución se deberá manejar con archivos.

Procedemos a resolver los otros dos ejercicios, pero asumiendo que ya sabemos cómo se llega a la
expresión mediante el criterio de los mínimos cuadrados, y que necesitamos lograr para desarrollar
el problema mediante una estrategia de optimización.

c) De la forma 𝑦(𝑥) = 𝐴𝑥 𝐵 d) De la forma 𝑦(𝑥) = 𝐴𝑥 2 + 𝐵𝑥 + 𝐶


𝑁=7 𝑁=7
2 2
𝐹𝑂(𝐴; 𝐵) = ∑ (𝐴𝑥𝑘𝐵 − 𝑦𝑘 ) 𝐹𝑂(𝐴; 𝐵) = ∑ (𝐴𝑥𝑘2 + 𝐵𝑥𝑘 + 𝐶 − 𝑦𝑘 )
𝑘=1 𝑘=1

Con el propósito de comparación, utilicemos los siguientes datos experimentales para ambos MoMas:

𝑥𝑘 1 2 3 4 5 6 8

𝑦(𝑥𝑘 ) 1800 1200 888 600 400 280 10

𝐹𝑂(𝐴; 𝐵) = (𝐴1𝐵 − 1800)2 + (𝐴2𝐵 − 1200)2 + 𝐹𝑂(𝐴; 𝐵) = (𝐴12 + 𝐵1 + 𝐶 − 1800)2 + (𝐴22 +


(𝐴3𝐵 − 888)2 + (𝐴4𝐵 − 600)2 +(𝐴5𝐵 − 400)2 + 𝐵2 + 𝐶 − 1200)2 + (𝐴32 + 𝐵3 + 𝐶 − 888)2 +
(𝐴6𝐵 − 280)2 + (𝐴8𝐵 − 10)2 (𝐴42 + 𝐵4 + 𝐶 − 600)2 + (𝐴52 + 𝐵5 + 𝐶 −
Página 12 de 40

400)2 + (𝐴62 + 𝐵6 + 𝐶 − 280)2 +(𝐴82 + 𝐵8 +


𝐶 − 10)2
Se digita en la pantalla: Se digita en la pantalla:
>> fminsearch('optimizacion',[1 1]) >> fminsearch('optimizacion',[1 1 1])

y del programa de optimización se tiene que el y del programa de optimización se tiene que el
MoMa con sus parámetros es: MoMa con sus parámetros es:

𝒚(𝒙) = 𝟏𝟖𝟗𝟐. 𝟔𝟏𝟑𝟏𝟐𝟕𝟐𝟗𝟑𝟐𝟔𝟐 𝒙−𝟎.𝟖𝟖𝟓𝟕𝟎𝟖𝟏𝟎𝟓𝟓𝟔𝟓 𝒚(𝒙) = 𝟑𝟐. 𝟒𝟗𝟖𝟎𝟑𝟐𝟐𝟒𝟓𝟔𝟑𝟓 𝒙𝟐


− 𝟓𝟑𝟏. 𝟓𝟗𝟕𝟏𝟗𝟖𝟏𝟕𝟒𝟕𝟏𝟑 𝒙
y se utilizó el siguiente script + 𝟐𝟐𝟐𝟐. 𝟒𝟒𝟔𝟐𝟓𝟔𝟑𝟓𝟓𝟗𝟓𝟒

function p=optimizacion(R) y se utilizó el siguiente script


clc
format long function p=optimizacion(R)
A=R(1);B=R(2); clc
p= (A-1800)^2+ format long
(A.*2^B-200)^2+ A=R(1);B=R(2);C=R(3);
(A.*3^B -88)^2+ p= (A+B+C-1800)^2+
(A.*4^B-600)^2+ (A*2^2+B*2+C-1200)^2+
(A.*5^B-400)^2+ (A*3^2+B*3+C-888)^2 +
(A.*6^B-280)^2+ (A*4^2+B*4+C-600)^2+
(A.*8^B-10)^2; (A*5^2+B*5+C-400)^2+
(A*6^2+B*6+C-280)^2 +
(A*8^2+B*8+C-10)^2;
Página 13 de 40

Se observa de esta figura que el mejor MoMa que predice el comportamiento de los datos experimentales
es el cuadrático. No obstante, se debe tener un criterio para evaluar el error que se comete, tal como el
error máximo, el error medio y el error cuadrático medio.

Ya habiendo comprendido la sustancia de esta sencilla pero muy útil estrategia numérica, se deja como
ejercicio al lector demostrar que realmente se minimizó la función objetivo,

𝑁 𝑁

𝐹𝑂(𝐴; 𝐵) = ∑ 𝑑𝑘2 = ∑(𝑦𝑚𝑜𝑑𝑒𝑙𝑜 − 𝑦𝑘 )2


𝑘=1 𝑘=1

Relación criterio de los mínimos cuadrados-optimización


Como se presentó, es posible realizar la identificación de los parámetros de un MoMa mediante la
solución del problema utilizando una estrategia de optimización en lugar de resolver el respectivo
sistema de ecuaciones, que en general es no-lineal. En otras palabras, un problema de identificación
se puede transformar en uno de optimización. Se resalta la importancia de adquirir un conocimiento
básico en OPTIMIZACIÓN, esto debido a que, con cada vez más exigencia, se requiere que los
procesos o sistemas físicos, químicos, mecánicos, eléctricos, o de cualquier otra naturaleza, operen
en forma óptima, y para ello se requerirán conceptos de esta área transversal para la mayoría de
disciplinas profesionales.
Hace algunas décadas, pero más notoriamente en las últimas dos, se aprecia un crecimiento
exponencial de ALGORITMOS DE OPTIMIZACIÓN GLOBAL, específicamente haciendo uso de los
denominados algoritmos metaheurísticos. Se invita al lector a que consulte la bibliografía y observe la
gran variedad de aplicaciones de estos en la ingeniería electrónica, y que cada día se incrementa en
forma apreciable.
Durante el desarrollo del presente curso se explicarán en clase algunos de estos algoritmos de
optimización global y lo utilizaremos en forma concreta en la IdS y que por razones de espacio no
incluyeron en este libro.

La IdS y la respuesta de sistemas de control


Complementemos esta sección con algunos ejemplos que nos ilustran en qué consiste la identificación
de sistemas y más concretamente, la estimación paramétrica en el área de los sistemas de control.
Asumamos que requerimos encontrar el valor de los parámetros de un MoMa conocido, y que,
además, disponemos previamente de información experimental.
Página 14 de 40

Ejemplo: Para el siguiente sistema que sospechamos es de primer orden con retardo puro, determine la
ganancia estática del proceso, la constante de tiempo y el tiempo de retardo. Se conoce para este sistema su
respuesta experimental medida para una entrada escalón unitario, indicada en la siguiente figura,

Solución: Partimos de la suposición de que el sistema


tiene entonces la siguiente representación:
𝐺(𝑠) 𝐾
= 𝑒 −𝐷𝑠
𝑅(𝑠) 𝑠 + 𝑎

Si la entrada 𝑅(𝑠) es un escalón unitario,


𝐾 𝐾
𝐺(𝑠) 1 𝐾 { } { }
= 𝑒 −𝐷𝑠
= 𝑎 − 𝑎
𝑅(𝑠) 𝑠 (𝑠 + 𝑎) 𝑠 (𝑠 + 𝑎)

De lo visto en capítulos anteriores, sabemos que


para un sistema de primer orden (con o sin retardo),
la constante de tiempo corresponde al tiempo en
que su respuesta equivale al 63% del valor final
alcanzado, es decir: De igual forma se sabe que,
𝑉𝑎𝑙𝑜𝑟 𝑝𝑎𝑟𝑎 (𝑡 ≡ 𝜏) = 0,63 ∗ 0,845 ≅ 0,53235 1 1
𝑎= = =1
𝜏 1
De la figura podemos ver que corresponde a un
tiempo Como el valor final corresponde a

𝜏 ≅ 1,0 [𝑠] 𝐾
= 0,845
𝑎
Hay que tener presente que este valor se mide a
partir del tiempo en que el sistema responde, es que conlleva a
Página 15 de 40

decir, una vez finalice el tiempo de retardo. Para este 𝐾 ≅ 0,845


caso el tiempo de retardo es de un segundo.
Ahora, con estos valores podemos construir el
MoMa del sistema en el dominio de la transformada
de Laplace quedando:
𝐺(𝑠) 𝐾 0,845 −𝑠
= 𝑒 −𝐷𝑠 = 𝑒
𝑅(𝑠) 𝑠 + 𝑎 𝑠+1

Nomenclatura compacta en la IdS


Dado que la IdS aborda modelos lineales o no lineales, variantes o no en el tiempo, SISO (una entrada-
una salida) o MIMO (múltiples entradas-múltiples salidas), conviene abordar en orden, de lo sencillo
a lo complejo, el estudio de estos. En el presente capítulo incluiremos solo modelos lineales e
invariantes en el tiempo y además SISO y que también se conocen como de caja negra (black-box).
De igual forma a como sucede en otras disciplinas, esta área tiene una nomenclatura y definiciones
estándar que es útil conocer.

1) El modelo: Comúnmente la literatura describe un modelo lineal con coeficientes constantes


en la forma de una ecuación de diferencia (discreta o discontinua en el tiempo), esto con el argumento
que durante la medición realmente estamos muestreando la señal y solo tomamos una “muestra”
para un instante dado. Sin embargo, se puede trasformar fácilmente de esta forma discreta a continua
en el tiempo y viceversa. La figura 1 muestra las variables presentes en la identificación de sistemas.

Figura 1. Nomenclatura para la IdS

De esta forma, su modelo se presenta seguidamente teniendo un intervalo de muestreo de una unidad
de tiempo, y queda como

𝑦(𝑡) + 𝑎1 𝑦(𝑡 − 1) + 𝑎2 𝑦(𝑡 − 2) + ⋯ 𝑎𝑛 𝑦(𝑡 − 𝑛) = 𝑏1 𝑢(𝑡 − 1) + 𝑏2 𝑢(𝑡 − 2) + ⋯ 𝑏𝑚 𝑢(𝑡 − 𝑚) + 𝑒(𝑡)

en donde,
𝑦(𝑡) es la salida del sistema para el tiempo 𝑡,
𝑎𝑖 ; 𝑏𝑖 son los parámetros ajustables del modelo,
Página 16 de 40

𝑦(𝑡 − 1) es la salida del sistema para el tiempo (𝑡 − 1),


𝑢(𝑡 − 1) es la entrada al sistema para el tiempo (𝑡 − 1).
𝑒(𝑡) el error blanco, que asumiremos cero por ahora.

y que, reorganizando se convierte en,

𝑦(𝑡) = −𝑎1 𝑦(𝑡 − 1) − 𝑎2 𝑦(𝑡 − 2) − ⋯ − 𝑎𝑛 𝑦(𝑡 − 𝑛) + 𝑏1 𝑢(𝑡 − 1) + 𝑏2 𝑢(𝑡 − 2) + ⋯ + 𝑏𝑚 𝑢(𝑡 − 𝑚)

Esta ecuación permite evaluar la salida para el tiempo 𝑡, conocido sus valores de tiempos anteriores.
Ahora, utilizando la misma notación se condensa a,

𝑦(𝑡) = 𝜑𝑡𝑟 (𝑡) 𝜃

siendo,

𝜃 = [𝑎1 𝑎2…. 𝑎𝑛 𝑏1 𝑏2 … , 𝑏𝑚 ]𝑡𝑟

𝜑𝑡𝑟 (𝑡) = [−𝑦(𝑡 − 1) − 𝑦(𝑡 − 2) − ⋯ − 𝑦(𝑡 − 𝑛) 𝑢(𝑡 − 1) 𝑢(𝑡 − 2) … 𝑢(𝑡 − 𝑚)]𝑡𝑟

y 𝑡𝑟 la transpuesta. Utilizando la interpretación de 𝑦(𝑡) como el valor calculado (o incluso el valor adivinado),

𝑦̂{𝑡|𝜃} = 𝜑𝑡𝑟 (𝑡)𝜃

que se lee en su parte izquierda, “el valor calculado (estimado/adivinado) de 𝑦 para el tiempo 𝑡,
conocido 𝜃, es igual a …”

Este modelo lineal se conoce en la IdS como modelo ARX, cuya estructura se muestra en la figura 2
y se explica más adelante cómo se conforma. Es lineal en 𝜃 haciendo que este proceso sea una
regresión lineal, esto porque se trata de estimar (calcular) la salida 𝑦(𝑡) utilizando el vector de
regresión 𝜑(𝑡) compuesto de información de esta variable, pero en tiempos precedentes mediante
una relación funcional lineal.

Figura 2. La estructura del modelo paramétrico ARX. 𝑢 es la entrada, 𝑦 es la salida y 𝑒 el error


blanco. Los polinomios (𝐴; 𝐵) se definen más adelante.
Página 17 de 40

Seguidamente transformamos a la nomenclatura compacta de IdS, el método de los mínimos


cuadrados ya estudiado.

2) Mínimos cuadrados aplicados a una regresión lineal: En este caso debemos conocer las
entradas y salidas y queremos ahora conocer los parámetros ajustables del modelo, es decir, ahora la
incógnita es 𝜃. Si asumimos que la variable 𝑅 almacena las entradas y las salidas obtenidas en el
intervalo 1 ≤ 𝑡 ≤ 𝑁, tenemos que,

𝑁
𝑅 = {𝑢(1), 𝑦(1), 𝑢(2), 𝑦(2) … . 𝑢(𝑁), 𝑦(𝑁)}

De esta forma, la función objetivo que se requiere optimizar (minimizar) es,

𝑁 𝑁
1 1
𝐹𝑂𝐵( 𝑁𝑅 , 𝜃) = ∑(𝑦(𝑡) − 𝑦̂{𝑡|𝜃})2 = ∑(𝑦(𝑡) − 𝜑𝑡𝑟 (𝑡) 𝜃)2
𝑁 𝑁
𝑡=1 𝑡=1

o en forma sucinta,

min 𝐹𝑂𝐵( 𝑁𝑅 , 𝜃) ⇔ 𝜃̂𝑁 = 𝑎𝑟𝑔 min 𝐹𝑂𝐵( 𝑁𝑅 , 𝜃)


𝜃 𝜃

siendo la última expresión interpretada como aquel valor de 𝜃 (arg) que minimiza la función objetivo
𝐹𝑂𝐵( 𝑁𝑅 , 𝜃). Inclusive podemos ir un poco más lejos recordando que podemos aplicar el criterio de
la primera derivada para optimizar (minimizar) la función objetivo, es decir,

𝑁
𝑑𝐹𝑂𝐵( 𝑁𝑅 , 𝜃) 2
= − ∑ 𝜑(𝑡)(𝑦(𝑡) − 𝜑𝑡𝑟 (𝑡)𝜃) = 0
𝑑𝜃 𝑁
𝑡=1

que, reorganizando,

𝑁 𝑁 𝑁

∑ 𝜑(𝑡)(𝑦(𝑡) − 𝜑𝑡𝑟 (𝑡)𝜃) = 0 ⇒ ∑ 𝜑(𝑡)𝑦(𝑡) = ∑ 𝜑(𝑡)𝜑𝑡𝑟 (𝑡)𝜃


𝑡=1 𝑡=1 𝑡=1

y despejando el vector de parámetros ajustables calculados,

𝑁 −1 𝑁

𝜃̂𝑁 = [∑ 𝜑(𝑡)𝜑𝑡𝑟 (𝑡)] ∑ 𝜑(𝑡)𝑦(𝑡)


𝑡=1 𝑡=1

conocidos previamente 𝑦(𝑡) y 𝜑(𝑡).

Ejemplo: Se selecciona el siguiente modelo para describir un proceso:


Página 18 de 40

𝑦(𝑡) + 𝑎𝑦(𝑡 − 1) = 𝑏𝑢(𝑡 − 1) ∴ 𝑦(0) = 0

Determine el vector de parámetros ajustables calculados 𝜃̂𝑁 .

Solución: Partiendo de la definición de cada componente de este vector se tiene que,

𝜃 = [𝑎 𝑏]𝑡𝑟 −𝑦(𝑡 − 1)
𝑦̂{𝑡|𝜃} = [ ] [𝑎 𝑏]1𝑥2
𝑢(𝑡 − 1) 2𝑥1

𝑁 −1 𝑁

𝜑(𝑡) = [−𝑦(𝑡 − 1) 𝑢(𝑡 − 1)]𝑡𝑟 𝜃̂𝑁 = [∑ 𝜑(𝑡)𝜑𝑡𝑟 (𝑡)] ∑ 𝜑(𝑡)𝑦(𝑡)


𝑡=1 𝑡=1

−𝑦(𝑡 − 1) 𝑁
𝜑(𝑡)𝜑𝑡𝑟 (𝑡) = [ ] [−𝑦(𝑡 − 1) 𝑢(𝑡 − 1)]
𝑢(𝑡 − 1) − ∑ 𝑦(𝑡 − 1)𝑦(𝑡)
−𝑦(𝑡 − 1) 𝑡=1
[ ] 𝑦(𝑡) = 𝑁
𝑢(𝑡 − 1)
𝑁 𝑁 ∑ 𝑢(𝑡 − 1)𝑦(𝑡)
2
∑ 𝑦 (𝑡 − 1) − ∑ 𝑦(𝑡 − 1)𝑢(𝑡 − 1) [ 𝑡=1 ]
𝑡=1 𝑡=1
= 𝑁 𝑁

− ∑ 𝑦(𝑡 − 1)𝑢(𝑡 − 1) − ∑ 𝑢2 (𝑡 − 1)
[ 𝑡=1 𝑡=1 ]

𝑁 𝑁 −1 𝑁
2
∑ 𝑦 (𝑡 − 1) − ∑ 𝑦(𝑡 − 1)𝑢(𝑡 − 1) − ∑ 𝑦(𝑡 − 1)𝑦(𝑡)
𝑎̂𝑁 𝑡=1 𝑡=1 𝑡=1
[̂ ] = 𝑁 𝑁 𝑁 ∴ 𝑦(0) = 0
𝑏𝑁
− ∑ 𝑦(𝑡 − 1)𝑢(𝑡 − 1) − ∑ 𝑢2 (𝑡 − 1) ∑ 𝑢(𝑡 − 1)𝑦(𝑡)
[ 𝑡=1 𝑡=1 ] [ 𝑡=1 ]

Ejemplo: Para la siguiente serie de datos experimentales (𝑁=5),

t 𝒚(𝒕) valor 𝒚(𝒕 − 𝟏) valor 𝒖(𝒕 − 𝟏) valor


1 𝑦(1) 2 𝑦(0) 0 𝑢(0) 10

2 𝑦(2) 4 𝑦(1) 2 𝑢(1) 20

3 𝑦(3) 6 𝑦(2) 4 𝑢(2) 30


Página 19 de 40

4 𝑦(4) 8 𝑦(3) 6 𝑢(3) 20

5 𝑦(5) 10 𝑦(4) 8 𝑢(4) 10

y el modelo, del tipo ARX sin error blanco

𝑦(𝑡) + 𝑎𝑦(𝑡 − 1) = 𝑏𝑢(𝑡 − 1) ∴ 𝑦(0) = 0

determine sus parámetros ajustables.

Solución: A partir de la solución de ejemplo anterior podemos calcular cada uno de los componentes,

𝟓 𝟓 −𝟏 𝟓
𝟐
∑ 𝒚 (𝒕 − 𝟏) − ∑ 𝒚(𝒕 − 𝟏)𝒖(𝒕 − 𝟏) − ∑ 𝒚(𝒕 − 𝟏)𝒚(𝒕)
̂𝑵
𝒂 𝒕=𝟏 𝒕=𝟏 𝒕=𝟏
[̂ ] = 𝟓 𝟓 𝟓
∴ 𝒚(𝟎) = 𝟎
𝒃𝑵
− ∑ 𝒚(𝒕 − 𝟏)𝒖(𝒕 − 𝟏) − ∑ 𝒖𝟐 (𝒕 − 𝟏) ∑ 𝒖(𝒕 − 𝟏)𝒚(𝒕)
[ 𝒕=𝟏 𝒕=𝟏 ] [ 𝒕=𝟏 ]

t 𝑦(𝑡) 𝑦(𝑡 − 1) 𝑦 2 (𝑡 − 1) 𝑦(𝑡 − 1) 𝑢(𝑡 − 1) 𝑢(𝑡 − 1) 𝑦(𝑡 − 1) 𝑢2 (𝑡 − 1)


∗ 𝑦(𝑡) ∗ 𝑦(𝑡) ∗ 𝑢(𝑡 − 1)

1 𝑦(1) 2 𝑦(0) 0 0 0 𝑢(0) 10 20 0 100

2 𝑦(2) 4 𝑦(1) 2 4 8 𝑢(1) 20 80 40 400

3 𝑦(3) 6 𝑦(2) 4 16 24 𝑢(2) 30 180 120 900

4 𝑦(4) 8 𝑦(3) 6 36 48 𝑢(3) 20 160 120 400

5 𝑦(5) 10 𝑦(4) 8 64 80 𝑢(4) 10 100 80 100

20 120 160 90 540 360 1900

quedando el sistema como,

𝑎̂𝑁 120 −360 −1 −160 −0.9911


[̂ ] = [ ] [ ]= [ ]
𝑏𝑁 −360 −1900 540 0.1141

y el modelo,

𝑦(𝑡) − 0.9911 𝑦(𝑡 − 1) = 0.1141 𝑢(𝑡 − 1) ∴ 𝑦(0) = 0


Página 20 de 40

Existe otro método para determinar esos parámetros ajustables denominado de Variables
Instrumentales y considerado como una generalización del anterior método y ampliamente usado
cuando se presume que existe una correlación del ruido y la salida del sistema. El lector encontrará
su desarrollo en las referencias dadas en la sección final de este capítulo y por supuesto en la internet.

Modelos paramétricos para sistemas lineales e invariantes en el tiempo


Teniendo presente que una de las actividades importantes durante un proceso de la IdS es la definición
del modelo o modelos más apropiados para un caso en particular, se presenta a continuación algunos
de los modelos paramétricos lineales e invariantes en el tiempo más comunes.

El modelo ARX
Partiendo nuevamente de la ecuación lineal de diferencia, pero ahora incluyendo el termino de ruido
blanco,

𝑦(𝑡) + 𝑎1 𝑦(𝑡 − 1) + ⋯ + 𝑎𝑛 𝑦(𝑡 − 𝑛) = 𝑏1 𝑢(𝑡 − 1) + ⋯ + 𝑏𝑚 𝑢(𝑡 − 𝑚) + 𝑒(𝑡)

Recordando igualmente que el vector de parámetros ajustables es 𝜃 y dado por

𝜃 = [𝑎1 𝑎2…. 𝑎𝑛 𝑏1 𝑏2 … , 𝑏𝑚 ]𝑡𝑟

Al introducir la notación estándar se tienen las siguientes variables,

𝐴(𝑞) = 1 + 𝑎1 𝑞 −1 + 𝑎2 𝑞 −2 + . . . . 𝑎𝑛 𝑞 −𝑛

𝐵(𝑞) = 𝑏1 𝑞 −1 + 𝑏2 𝑞 −2 + . . . . 𝑏𝑚 𝑞 −𝑚

De estas dos últimas expresiones, 𝑞 es un operador de desplazamiento hacia a delante o hacia atrás
definidos como:

𝑞𝑦(𝑡) = 𝑦(𝑡 + 1) ; 𝑞 −1 𝑦(𝑡) = 𝑦(𝑡 − 1)

𝑞𝑢(𝑡) = 𝑢(𝑡 + 1) ; 𝑞 −1 𝑢(𝑡) = 𝑢(𝑡 − 1)

Construyéndose en esos términos,

𝐵(𝑞) 1
𝑦(𝑡) = 𝐺(𝑞, 𝜃)𝑢(𝑡) + 𝐻(𝑞, 𝜃)𝑒(𝑡) ∴ 𝐺(𝑞, 𝜃) = ∴ 𝐻(𝑞, 𝜃) =
𝐴(𝑞) 𝐴(𝑞)

Cabe mencionar de esta expresión general de un modelo lineal (hay una suma de contribuciones tanto
de la entrada 𝑢(𝑡), como del ruido blanco 𝑒(𝑡)), donde la función de transferencia 𝐺(𝑞, 𝜃) involucra
Página 21 de 40

las propiedades dinámicas del sistema y el modelo de perturbación 𝐻(𝑞, 𝑡) las correspondientes al
ruido.

La regresión lineal correspondiente para la predicción de la salida con este modelo paramétrico está
dada por,

𝑦̂{𝑡|𝜃} = 𝐵(𝑞) 𝑢(𝑡) + [1 − 𝐴(𝑞)] 𝑦(𝑡)

o mediante su equivalente,

𝑦̂{𝑡|𝜃} = 𝜃 𝑡𝑟 𝜑(𝑡) = 𝜑𝑡𝑟 (𝑡) 𝜃

Puesto que se requiere evaluar que tan acertado son los valores predichos por el modelo
identificado 𝑦̂{𝑡|𝜃}, comparados con los datos experimentales 𝑦(𝑡), se utiliza el error de predicción
o residuos definido como,

𝜀(𝑡; 𝜃) = 𝑦(𝑡) − 𝑦̂{𝑡|𝜃}

Finalmente, existe otro método para determinar estos coeficientes que en últimas es una variante del
método de los mínimos cuadrados,

2𝑑
𝐹𝑂𝐵𝐴𝐼𝐶 ( 𝑁𝑅, 𝜃) = (1 + ) 𝐹𝑂𝐵( 𝑁𝑅, 𝜃)
𝑁

donde el 𝐹𝑂𝐵𝐴𝐼𝐶 ( 𝑁𝑅, 𝜃) corresponde a la función objetivo del método de Akaike, 𝑑 el número de
parámetros ajustables del modelo y 𝑁 el número de datos, como antes.

Existe otras estructuras para estos modelos paramétricos tales como el ARMAX, ARARMAX, Box-
Jenkins, y otros. La estructura general de estos modelos es,

𝐵(𝑞) 𝐶(𝑞)
𝐴(𝑞)𝑦(𝑡) = 𝑢(𝑡) + 𝑒(𝑡)
𝐹(𝑞) 𝐷(𝑞)

con su respectiva ecuación de regresión (predicción),

𝐵(𝑞)𝐷(𝑞) 𝐴(𝑞)𝐷(𝑞)
𝑦̂{𝑡|𝜃} = 𝑢(𝑡) + (1 − ) 𝑦(𝑡)
𝐶(𝑞)𝐹(𝑞) 𝐶(𝑞)

La figura 3 describe el diagrama de bloques de este modelo lineal de estructura general.


Página 22 de 40

Figura 3. Diagrama de bloques para la estructura general

Ejemplo: Exprese los siguientes modelos ARX en el dominio transformado utilizando la variable 𝑞.

𝑦(𝑡) + 𝑎1 𝑦(𝑡 − 1) + 𝑎2 𝑦(𝑡 − 2) = 𝑏1 𝑢(𝑡 − 1) + 𝑏2 𝑢(𝑡 − 4)

Solución:
Utilizando la definición del operador 𝑞:
𝑞 −1 𝜗(𝑡) = 𝜗(𝑡 − 1)
Se tiene para cada término del modelo
𝑦(𝑡) + 𝑎1 𝑞 −1 𝑦(𝑡) + 𝑎2 𝑞 −2 𝑦(𝑡) = 𝑏1 𝑞 −1 𝑢(𝑡) + 𝑏2 𝑞 −4 𝑢(𝑡)

𝑦(𝑡)(1 + 𝑎1 𝑞 −1 + 𝑎2 𝑞 −2 ) = 𝑢(𝑡)(𝑏1 𝑞 −1 + 𝑏2 𝑞 −4 )

𝑦(𝑡) 𝑏1 + 𝑏2 𝑞 −3
= 𝑞 −1
𝑢(𝑡) 1 + 𝑎1 𝑞 −1 + 𝑎2 𝑞 −2

Se observa que este modelo tiene dos parámetros tanto para 𝐴(𝑞 −1 ), como también para 𝐵(𝑞 −1 ). De igual
forma, se observa que el sistema tiene un retardo de valor uno.

𝑦(𝑡) + 𝑎1 𝑦(𝑡 − 2) − 𝑎2 𝑦(𝑡 − 4) + 𝑎3 𝑦(𝑡 − 6) = 𝑏1 𝑢(𝑡 − 2) + 𝑏2 𝑢(𝑡 − 3) − 𝑏3 𝑢(𝑡 − 5)

Solución: Nuevamente con ayuda de la definición del operador q se llega a,


𝑦(𝑡) + 𝑎1 𝑞 −2 𝑦(𝑡) − 𝑎2 𝑞 −4 𝑦(𝑡) + 𝑎3 𝑞 −6 𝑦(𝑡) = 𝑏1 𝑞−2 𝑢(𝑡) + 𝑏2 𝑞 −3 𝑢(𝑡) − 𝑏3 𝑞 −5 𝑢(𝑡)

𝑦(𝑡) 𝑏1 + 𝑏2 𝑞 −1 − 𝑏3 𝑞 −3
= 𝑞 −2
𝑢(𝑡) 1 + 𝑎1 𝑞 −2 − 𝑎2 𝑞 −4 + 𝑎3 𝑞 −6

Este modelo tiene tres parámetros para 𝐴(𝑞 −1 ), y tres para 𝐵(𝑞 −1 ). El sistema tiene un retardo de valor
dos.

También resulta útil poder transformar un modelo discreto a uno continuo de una manera rápida. El ejemplo
siguiente ilustra cómo hacerlo.
Página 23 de 40

Ejemplo: Transforme la siguiente representación en transformada discreta en el tiempo a una continua.

𝑞−1
𝐺(𝑧) =
𝑞 2 + 1.5𝑞 + 0.8

Solución: Se utilizará Matlab haciendo uso del Se obtiene el siguiente resultado,


siguiente script:
52.64 s + 4.997e-13
clear all GC =------------------------------------
clc
% El retenedor continuo en el tiempo de orden cero.
s^2 + 2.231 s + 659.4
% Muestreo: 0.1s
GD = tf([1 -1], [1 1.5 0.8], 0.1); y se recupera el original con el comando c2d(GD).
GC = d2c(GD)
% Verificar
% Discretización con el método de orden cero y
% tiempo de muestreo de 0.1s
c2d(GC,0.1)

Ejemplo: Asumamos que tenemos de una base de datos compuesta de dos columnas: una para una entrada
variable en el tiempo y otra para una salida igualmente variante en el tiempo. Se requiere encontrar al menos
un modelo matemático que describa estos datos experimentales. Se propone probar un modelo ARX de la
forma

𝑦(𝑡) + 𝑎1 𝑦(𝑡 − 𝑇) + 𝑎2 𝑦(𝑡 − 2𝑇) = 𝑏1 𝑢(𝑡 − 𝑇) + 𝑏2 𝑢(𝑡 − 5𝑇)

donde T es el período de muestreo. Se realizó el muestreo para T=1 s.


Solución: Como se hará numéricamente más adelante y en clase, al disponer de los datos experimentales en
un archivo podremos una vez seleccionado el modelo, utilizar un software propio o comercial que nos ayudará
a encontrar los coeficientes (𝑎1; 𝑎2 ; 𝑏1 ; 𝑏2 ). Eso es todo. Se resuelve con asistencia de la toolbox Ident.
Se utilizan los sencillos comandos del siguiente script:
clear all Así el modelo ARX completo es:
clc
th=arx(ejer1,[2,2,1]) 𝑦(𝑡) + 0.553𝑦(𝑡 − 1) + 1.384𝑦(𝑡 − 2) = 7.775𝑢(𝑡 − 1) + 2.67𝑢(𝑡 − 5)
present (th)

Como se observa, lo de menos es utilizar un software para resolver este tipo de problemas, pues es solo
aprender sus comandos y deja así de ser el objetivo del aprendizaje, aunque es una gran ayuda para economizar
tiempo.
Página 24 de 40

Otros modelos
La tabla 1 resume algunos de los modelos paramétricos SISO más usados, aunque existen muchos más
dependiendo del tipo de polinomios que utilice en su estructura. Es claro que se debe dentro de todo el
proceso definir el modelo, establecer el orden (grado) de cada uno de esos polinomios 𝐴(𝑞), 𝐵(𝑞), 𝐶(𝑞), 𝐷(𝑞)
y 𝐹(𝑞) , así como el eventual retardo entre la entrada y la salida en caso de existir.

Tabla 1. Modelos lineales paramétricos una entrada-una salida (SISO)


Modelo Simplificación del modelo general Ecuación de regresión (predictor)
Paramétrico 𝑩(𝒒) 𝑪(𝒒)
̂{𝒕|𝜽} =
𝑩(𝒒)𝑫(𝒒) 𝑨(𝒒)𝑫(𝒒)
𝑨(𝒒)𝒚(𝒕) = 𝒖(𝒕) + 𝒆(𝒕) 𝒚 𝒖(𝒕) + (𝟏 − ) 𝒚(𝒕)
𝑨(𝒒) 𝑫(𝒒) 𝑪(𝒒)𝑭(𝒒) 𝑪(𝒒)

ARX 𝐴(𝑞) 𝐵(𝑞)𝐷(𝑞) 𝐵(𝑞) ∗ 1


= ;
𝐵(𝑞) 𝐶(𝑞)𝐹(𝑞) 1 ∗ 1
𝐴(𝑞)
𝐶(𝑞) 1 𝐴(𝑞)𝐷(𝑞) 𝐴(𝑞) ∗ 1
= (1 − ) = (1 − )
𝐷(𝑞) 1 𝐶(𝑞) 1

OE 𝐴(𝑞) = 1 𝐵(𝑞)𝐷(𝑞) 𝐵(𝑞) ∗ 1


= ;
𝐵(𝑞) 𝐵(𝑞) 𝐶(𝑞)𝐹(𝑞) 1 ∗ 𝐹(𝑞)
=
𝐴(𝑞) 1
𝐶(𝑞) 1 𝐴(𝑞)𝐷(𝑞) 1∗ 1
= (1 − ) = (1 − )=0
𝐷(𝑞) 1 𝐶(𝑞) 1

ARMA 𝐴(𝑞) 𝐵(𝑞)𝐷(𝑞) 1∗1


= ;
𝐵(𝑞) 1 𝐶(𝑞)𝐹(𝑞) 𝐶(𝑞) ∗ 1
=
𝐴(𝑞) 𝐴(𝑞)
𝐶(𝑞) 𝐶(𝑞) 𝐴(𝑞)𝐷(𝑞) 𝐴(𝑞) ∗ 1
= (1 − ) = (1 − )
𝐷(𝑞) 1 𝐶(𝑞) 𝐶(𝑞)

ARMAX 𝐴(𝑞) 𝐵(𝑞)𝐷(𝑞) 𝐵(𝑞) ∗ 1


= ;
𝐵(𝑞) 𝐶(𝑞)𝐹(𝑞) 𝐶(𝑞) ∗ 1
𝐴(𝑞)
𝐶(𝑞) 𝐶(𝑞) 𝐴(𝑞)𝐷(𝑞) 𝐴(𝑞) ∗ 1
= (1 − ) = (1 − )
𝐷(𝑞) 1 𝐶(𝑞) 𝐶(𝑞)

ARARX 𝐴(𝑞) 𝐵(𝑞)𝐷(𝑞) 𝐵(𝑞)𝐷(𝑞)


= ;
𝐵(𝑞) 𝐶(𝑞)𝐹(𝑞) 1 ∗ 1
𝐴(𝑞)
𝐶(𝑞) 1 𝐴(𝑞)𝐷(𝑞) 𝐴(𝑞)𝐷(𝑞)
= (1 − ) = (1 − )
𝐷(𝑞) 𝐷(𝑞) 𝐶(𝑞) 1

ARARMAX 𝐴(𝑞) 𝐵(𝑞)𝐷(𝑞) 𝐵(𝑞)𝐷(𝑞)


=
𝐵(𝑞) 𝐶(𝑞)𝐹(𝑞) 𝐶(𝑞) ∗ 1
𝐴(𝑞)
𝐶(𝑞) 𝐴(𝑞)𝐷(𝑞)
(1 − )
𝐷(𝑞) 𝐶(𝑞)

BJ 𝐴(𝑞) = 1 𝐵(𝑞)𝐷(𝑞)
(Box- 𝐵(𝑞) 𝐵(𝑞) 𝐶(𝑞)𝐹(𝑞)
=
Jenkins) 𝐴(𝑞) 1
Página 25 de 40

𝐶(𝑞) 𝐴(𝑞)𝐷(𝑞) 1 ∗ 𝐷(𝑞)


(1 − ) = (1 − )
𝐷(𝑞) 𝐶(𝑞) 𝐶(𝑞)

La figura 3 muestra el diagrama de bloques de algunos de los modelos descritos arriba.

Modelo OE

Modelo BJ

Modelo ARMAX

Figura 3. Diagramas de bloques de algunos modelos paramétricos lineales de una entrada-una salida.

En conclusión, hasta aquí tenemos claro que, durante el proceso de identificación paramétrica, se
debe elegir tanto el modelo (su estructura, esto es, ARX, ARMAX, BJ, etc.) como el orden (grado)
de cada uno de los polinomios que le correspondan a cada estructura elegida (A, B, C, D, F).
Seguidamente, se procede a estimar los parámetros ajustables que permiten el mejor ajuste
(predicción) de los datos experimentales con los del modelo obtenido. En la determinación de estos
parámetros del modelo (lineal e invariante en el tiempo con una entrada y una sola salida), se debe
en la mayoría de los casos realizarse con software propio o comercial dedicado a la IdS, esto a como
se dijo, se manejan relativamente grandes volúmenes de datos que impide hacerse en forma manual.

Hay otros factores que se deben tener presente durante la IdS, tales como la forma y metodología de
tomar los datos del sistema, elección de las señales que se van a medir, elección del tipo de entradas,
del periodo de muestreo, número de muestras que se deben adquirir, pre y post tratamiento de los
Página 26 de 40

datos, análisis de residuos, detección y eliminación de perturbaciones a alta frecuencia, tratamiento


de nivel de continua, principalmente. Igualmente importante, es la validación del modelo, actividad
que convenientemente se hace mediante su simulación. Como estrategia se recomienda dejar una
porción de la información recolectada al inicio de la IdS para validar con ella, el o los modelos
obtenidos. Este aspecto se ilustrará con un ejemplo.

Usualmente, sobre todo en la etapa de aprendizaje, es recomendable disponer de un método de


generar datos sintéticos de procesos (sistemas). A continuación, se muestran dos formas sencillas de
disponer datos con y sin ruido.

Ejemplo: Ilustrar la presencia de ruido blanco en la señal de salida. Para este caso se muestra cómo podemos
adicionar ruido blanco en busca de una señal sintética distorsionada con un factor snr conocido.

Solución: Se utiliza el siguiente script para ilustrar la adición de ruido blanco a la señal de salida de un modelo.
clear all;clc
S = RandStream('mt19937ar','seed',5489); Se construyó entonces las figuras de abajo superponiendo a la
reset(RandStream.getGlobalStream) señal “pura” el ruido blanco (la función de Matlab awng).
y1 = sin(0:pi/32:6*pi);
y2 = awgn(y1,30,0,S);
subplot(2,1,1); A medida que se disminuye el escalar snr, (que define la relación
plot(y1);hold on;plot(y2) de señal a ruido de una muestra y expresado en Db), se crea
hold off mayor distorsión de la señal original. Cuando este valor está por
y3 = sin(0:pi/32:6*pi);y4 = awgn(y3,5,0,S); encima de los 50 dB su efecto es imperceptible.
subplot(2,1,2);plot(y3);hold on
plot(y4)

Otra forma de adicionarle ruido a una señal es mediante la función randn.


Página 27 de 40

Herramienta de Identificación
Como se indicó desde un inicio, este libro no intenta volverse un manual de un software comercial o
propio. No obstante, es innegable la necesidad de utilizar el computador para las actividades de
modelado y simulación, y particularmente en la IdS que es una etapa eminentemente práctica. Por
esta razón se explicará en clase el uso de la System Identification Toolbox (MATLAB) un recurso
disponible actualmente en la universidad, teniendo como referencias los siguientes documentos:

a. Lennart Ljung, System Identification Toolbox for use with Matlab, User´s guide. The
MathWorks, www.mathworks.com
b. Lennart Ljung, System Identification Theory for the user, second Ed., Prentice Hall, 2012.
c. Diversos videos de YouTube y páginas web sobre identificación de sistemas.

Esta toolbox en particular se puede utilizar en forma directa mediante la interfaz con el usuario, o en
modo de comandos.

A continuación, aparece un problema de identificación de sistemas que se desarrolla modularmente


con ejemplos consecutivos utilizando Ident en el modo de comandos. Se trata del desarrollo de un
problema ilustrativo, sin pretender utilizar todas las funciones que posee este programa, ni de
convertirse en una persona diestra en su primera sesión de manejo. En los cursos de control se espera
lo aprenda a utilizar en forma competente.

Como se observará, no es para nada complicado manejar este tipo de software (y aún más sencillo
con la interfaz gráfica) y aunque éste podrá generar una gran cantidad de gráficas muy bonitas, sin el
manejo conceptual apropiado, ellas y la demás información que brinda, no dejarán de ser meros
resultados. El análisis y uso de esta información es la esencia de saber hacer una correcta IdS.

El proceso: Para un sistema cuya respuesta en el tiempo está dado en la siguiente figura se requiere
construir su MoMa. Se sabe que el proceso es lineal e invariante el tiempo. De igual forma se sospecha
que el sistema es de cuarto orden.
Página 28 de 40

El Problema: Identificar el sistema proponiendo al menos un modelo lineal que pueda utilizarse para
describir su dinámica

Ejemplo: Grafique la totalidad de la información experimental que se utilizará en la IdS. Se tienen las entradas
(𝑢) y las correspondientes salidas del sistema (𝑦).

Solución: La siguiente figura muestra la salida para la entrada que varía como se indica. Una vez conocido
este comportamiento, se observa aparentemente que no hay datos eventualmente en extremo fuera de la
tendencia y que nos indujera a pensar que son errores en la medición o en los sensores.

Se utilizó la siguiente sección del script completo para realizar esta actividad:
%%%%%%%%%%
Load [y u] La figura seguida muestra los resultados de esta primera etapa orienta a
ejerdatos=[y u]; visualizar la tendencia de variación de los datos tomados. Para una entrada
figure
% idplot(ejerdatos) : versión del binaria de amplitud 20 como se indicada en rojo, el sistema responde de la
% comando obsoleta forma mostrada en negro.
plot(ejerdatos)
grid on
Página 29 de 40

Ejemplo: Divida la información experimental en una porción (50%) para ser utilizada en la identificación. El
otro 50% de ésta se utilizará para la etapa final de validación de los resultados de ese proceso de identificación.

Solución: Esta actividad se realizó con la siguiente porción del script completo:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% datos experimentales: una entrada, una salida (siso) Una vez se determina el número total de
% se dividen los datos en: identificación y validación datos, se procede a reorganizarlos en dos
Ndatos=length(y);
datosIDENT=[y(1:Ndatos/2) u(1:Ndatos/2)]; archivos. Para este caso se toma igual número
datosVALIDA=[y(Ndatos/2+1:Ndatos) u(Ndatos/2+1:Ndatos)]; de datos; el archivo completo se divide en
plot(datosIDENT) dos. La figura siguiente ilustra esta situación.
figure Otras alternativas resultan también valederas.
plot(datosVALIDA)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Página 30 de 40

Ejemplo: Elimine los niveles de continua de los datos experimentales utilizados en la IdS.

Solución: Para realizar esta operación se hace uso de otra función de ese software.

%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Se siguen analizando los datos experimentales recolectados Para realizar esta eliminación se usó esta
%ejerdatos2=detrend(ejerdatos) porción del script completo.
%plot(ejerdatos2)
%figure
% Se mantiene la información dinámica consignada
datosIDENT2=detrend(datosIDENT); en estos datos, habiéndose eliminado la
plot(datosIDENT2) componente estática (o continua).
figure
%
datosVALIDA2=detrend(datosVALIDA)
plot(datosVALIDA2)
grid on
%%%%%%%%%%%%%%%%%%%%%%%%%%%%

a. Para los datos que se utilizarán para la IDENTIFICACIÓN:


Página 31 de 40

b. Para los datos que se utilizarán en la VERIFICACIÓN:

Como antes, se observa que se mantiene la información dinámica consignada, habiéndose eliminado la
componente estática (o continua). Compárese con los datos originales.
Página 32 de 40

Ejemplo: Para los datos que se utilizarán en la identificación realice el filtrado con dentro de las bandas [1, 200].
Grafique los resultados.

Solución:

%%%%%%%%%%%%%%%%%%%%%%%%%%%
% identificacin paramétrica. Filtrado de datos
datosIDENTF = idfilt(datosIDENT,[1 100]);
plot(datosIDENTF)
grid on
hold on
%figure
%datosIDENT2F = idfilt(datosIDENT2,[1 5])
%plot(datosIDENT2F)
%grid on
%%%%%%%%%%%%%%%%%%%%%%%%%%%

Ejemplo: Encuentre los parámetros ajustables para los modelos lineales discretos AR, ARX, ARMAS BJ, y, OE.

Solución: Seguidamente aparece la porción del script requerido para encontrar cada uno de los parámetros
de los modelos:

%%%%%%%%%%%%%%%
th=ar(y,2);
present (th)
Página 33 de 40

%%
th=arx(datosIDENT,[2,2,2]);
present (th)
%%
th=armax(datosIDENT,[ 2 2 2 2]);
present (th)
%%
th=bj(datosIDENT,[2 2 2 2 2]);
present (th);
%%
th=oe(datosIDENT,[ 2 2 2 ]);
present (th);
%%%%%%%%%%%%%%%

a) AR, cuyos resultados corresponden a un solo coeficiente 𝐴(𝑧):

th=Discrete-time AR model: A(z)y(t) = e(t)

A(z) = 1 + 0.1779 (+/- 0.04251) z^-1 - 0.3186 (+/- 0.04254) z^-2

Sample time: 1 seconds


Parameterization:
Polynomial orders: na=2
Number of free coefficients: 2
Status:
Estimated using AR ('fb/now') on "y".
Fit to estimation data: 4.497%
FPE: 26.37, MSE: 26.06

b) ARX, siendo los coeficientes𝐴(𝑧),B(z):

th=Discrete-time ARX model: A(z)y(t) = B(z)u(t) + e(t)

A(z) = 1 + 0.5564 (+/- 0.03228) z^-1 - 0.04254 (+/- 0.0321) z^-2


B(z) = 0.9781 (+/- 0.02522) z^-2 - 0.7001 (+/- 0.02854) z^-3

Sample time: 1 seconds


Parameterization:
Polynomial orders: na=2 nb=2 nk=2
Number of free coefficients: 4
Status:
Estimated using ARX on time domain data.
Fit to estimation data: 66.51% (prediction focus)
FPE: 3.173, MSE: 3.075
Página 34 de 40

c) ARMAX, cuyos tres coeficientes 𝐴(𝑧), 𝐵(𝑧), 𝐶(𝑧):

th=Discrete-time ARMAX model: A(z)y(t) = B(z)u(t) + C(z)e(t)

A(z) = 1 + 0.5651 (+/- 0.03839) z^-1 - 0.2114 (+/- 0.03563) z^-2


B(z) = 0.864 (+/- 0.0192) z^-2 - 0.615 (+/- 0.02712) z^-3
C(z) = 1 + 0.347 (+/- 0.06023) z^-1 - 0.5737 (+/- 0.06027) z^-2

Sample time: 1 seconds


Parameterization:
Polynomial orders: na=2 nb=2 nc=2 nk=2
Number of free coefficients: 6

Status:
Termination condition: Near (local) minimum, (norm(g) < tol).
Number of iterations: 10, Number of function evaluations: 21
Estimated using ARMAX on time domain data.
Fit to estimation data: 69.65% (prediction focus)
FPE: 2.727, MSE: 2.526

d) BJ para el que se evaluaron los coeficientes 𝐵(𝑧), 𝐶(𝑧), 𝐷(𝑧), 𝐹𝑧):

th = Discrete-time BJ model: y(t) = [B(z)/F(z)]u(t) + [C(z)/D(z)]e(t)

B(z) = 0.8259 (+/- 0.01669) z^-2 - 0.5849 (+/- 0.02824) z^-3


C(z) = 1 - 0.03345 (+/- 0.1497) z^-1 - 0.1508 (+/- 0.1501) z^-2
D(z) = 1 - 0.01356 (+/- 0.1445) z^-1 + 0.2963 (+/- 0.1446) z^-2
F(z) = 1 + 0.5593 (+/- 0.04095) z^-1 - 0.2018 (+/- 0.03645) z^-2

Sample time: 1 seconds


Parameterization:
Polynomial orders: nb=2 nc=2 nd=2 nf=2 nk=2
Number of free coefficients: 8

Status:
Termination condition: Near (local) minimum, (norm(g) < tol).
Number of iterations: 19, Number of function evaluations: 46

Estimated using BJ on time domain data.


Fit to estimation data: 70.59% (prediction focus)
FPE: 2.469, MSE: 2.222

e) OE, siendo sus coeficientes 𝐵(𝑧), 𝐹(𝑧):

th = Discrete-time OE model: y(t) = [B(z)/F(z)]u(t) + e(t)

B(z) = 0.8848 (+/- 0.02171) z^-2 - 0.6552 (+/- 0.03381) z^-3


F(z) = 1 + 0.5272 (+/- 0.04651) z^-1 - 0.2027 (+/- 0.0411) z^-2

Sample time: 1 seconds


Página 35 de 40

Parameterization:
Polynomial orders: nb=2 nf=2 nk=2
Number of free coefficients: 4

Status:
Termination condition: Maximum number of iterations reached.
Number of iterations: 20, Number of function evaluations: 41

Estimated using OE on time domain data.


Fit to estimation data: 68.19%
FPE: 2.738, MSE: 2.599

Ejemplo: Compare la salida del modelo con uno que se asume, para propósitos ilustrativos, se conoce y asume
como real. Utilice los datos reservados para la validación y evalúe los residuos del modelo.

Solución:
Las figuras siguientes se realizaron con la porción del script adjunto,

%%%%%%%%%%%% Se seleccionó el modelo ARMAX. Aunque se pude encontrar el modelo óptimo


%% VALIDACION a partir de todos los modelos lineales probados (AR, ARX, ARMAX, BJ, OE).
grid on
compare(datosVALIDA,th)
grid on En la siguiente figura se contrasta el modelo obtenido frente a los datos que se
resid(datosVALIDA,th) reservaron para el proceso de validación. Existe una porción de datos donde el
grid on modelo se asemeja bastante a la información, mientras que otras hay un error
%%%%%%%%%%%% de predicción con este modelo.
Página 36 de 40

En una IdS típica, después de realizar una la comparación entre la salida simulada y la real del sistema,
conviene realizar el cálculo de los errores de predicción de los modelos encontrados o del model óptimo,
la predicción de salidas futuras, así como el cálculo de residuos del o de los modelos.

A continuación, aparece un análisis de correlación de los residuos y entre la única entrada y los residuos de
la única salida:

Como otro criterio de validación, se calcula el error para el modelo identificado lineal ARMAX. La siguiente
figura ilustra este caso,
Página 37 de 40

Finalmente, se puede realizar la denominada identificación recursiva. En ésta se estiman los


parámetros de un modelo en particular y en forma simultánea se capturan los datos entrada/salida.
De esta forma, se realiza una actualización en tiempo real (on-line) especialmente cuando se suceden
cambios en el procese que se identifica.

Ejercicios propuestos

1. Para los siguientes datos se requiere ajustarlos con los modelos propuestos. Calcule el error medio,
máximo y el error cuadrático medio:

De los modelos de prueba siguientes, seleccione el que posea el menor error cuadrático medio. Grafique
los modelos junto los valores experimentales suministrados. Reporte algunas conclusiones.

Tiempo, s Distancia, m
𝑥𝑘 𝑦𝑘
1 2 𝑦(𝑡) = 𝑎𝑔𝑡 1/2 1 2 1
0.2 0.1960 𝑦(𝑡) = 𝑔𝑡 𝑦(𝑡) = 𝑔𝑡 + 𝑎 𝑦(𝑡) = 𝑔𝑡
2 2 2
0.3 0.4444

0.4 0.7835

0.5 1.3777
Página 38 de 40

0.6 1.7630 Utilice las siguientes definiciones para el cálculo de estos errores:

0.7 2.4888 𝑬𝒎á𝒙 = 𝒎á𝒙{|𝒇(𝒙𝒌 ) − 𝒚𝒌 | ∴ 𝟏 ≤ 𝒌 ≤ 𝑵}


𝑵
0.8 3.1399 𝟏
𝑬𝒎𝒆𝒅 = ∑|𝒇(𝒙𝒌 ) − 𝒚𝒌 |
𝑵
0.9 4.0555 𝒌=𝟏

𝑵
1.0 4.8975 𝟏
𝑬𝒄𝒖𝒂𝒅.𝒎𝒆𝒅 = √ ∑|𝒇(𝒙𝒌 ) − 𝒚𝒌 |𝟐
𝑵
𝒌=𝟏

Para estas definiciones:


𝑒𝑘 = 𝑓(𝑥𝑘 ) − 𝑦𝑘 ∴ 1 ≤ 𝑘 ≤ 𝑁

siendo:

𝑓(𝑥𝑘 ) el valor del modelo que se prueba para un 𝑥𝑘 experimental


𝑦𝑘 el valor experimental suministrado para un determinado 𝑥𝑘
𝑁 el número total de datos experimentales suministrados

2. Para la siguiente información experimental ajuste los modelos que se requieren probar. Grafique y
analice sus resultados:

𝑥𝑘 𝑦𝑘

-2.0 15.4500

-1.0 13.4500 Los modelos:

0.0 0.30111 𝒇(𝒙) = 𝒂𝒆𝒃𝒙 𝒇(𝒙) = (𝒂𝒙 + 𝒃)−𝟐 𝒇(𝒙) = (𝒂𝒙 + 𝒃)−𝟏
0.5 1.37777
𝒇(𝒙) = 𝒂𝒙𝒃 𝒇(𝒙) = 𝒙(𝒂𝒙 + 𝒃)−𝟏 𝒇(𝒙) = 𝒂𝒙𝒆−𝒃𝒙
1.0 0.67000

1.5 0.44444 De igual forma determine los errores medio, máximo y el cuadrático medio. Define el
“mejor modelo” fundamentado en el valor de los errores.
2.0 0.15555

3.0 0.02222

4.0 0.00888
Página 39 de 40

3. Para la información experimental ajuste el mejor plano en el sentido de los mínimos cuadrados, y sus
tres errores definidos anteriormente,

𝑥𝑘 𝑦𝑘 𝑧𝑘

-2.0 15.4500 7.0000

-1.0 13.4500 4.4567 También para los siguientes modelos determine sus tres
parámetros y los respectivos errores del modelo:
0.0 0.30111 3.3333

0.5 1.37777 2.3456


𝑧 = 𝑎𝑥 2 + 𝑏𝑦 + 𝑐
1.0 0.67000 3.1939 𝑧 = 𝑎𝑥 2 + 𝑏𝑦 2 + 𝑐𝑥𝑦 + 𝑑
𝑧 = 𝑎𝑥 3 + 𝑏𝑦 2 + 𝑐
1.5 0.44444 1.3333

2.0 0.15555 1.6818

3.0 0.02222 7.7777

4.0 0.00888 5.5555

4. Para la siguiente información determine el mejor polinomio trigonométrico que los describe.
Grafique los resultados y determine los errores correspondientes,

𝑥𝑘 𝑦𝑘

-4.0 -1.7777

-3.0 -1.4500 Utilice el polinomio trigonométrico de grado 𝑀 (≤ 4) de la forma,


𝑀
-2.0 -0.7111 𝑎0
𝑓(𝑥) = + ∑ 𝑎𝑘 sin(𝑘𝑥) + 𝑏𝑘 cos(𝑘𝑥)
-1.0 1.3777 2
𝐾=1

0.0 0.0000

1.0 0.2500

2.0 0. 5555

3.0 1.0222

4.0 1.8888
Página 40 de 40

5. Utilice el siguiente programita para graficar los datos disponibles en MatLab.

Load dryer2 Practique a analizar esta


numerodedatos=length(u2) información utilizando los
datosparaidentif=[ y2(: numerodedatos/2) u2(1:numerodedatos/2)] comandos disponibles para la
datosparavalidar=[ y2(:numerodedatos /2+1: numerodedatos) identificación de sistemas en
u2(1: numerodedatos/2)+1 numerodedatos)]
MatLab. Observe que los datos
idplot(datosparaidentif)
se dividieron en la mitad
(arbitrariamente) para encontrar
un modelo mediante la identificación y la otra mitad para validar los resultados obtenidos.

6. Utilizando la internet y particularmente YouTube, siga los videos del uso los programas (toolbox) de
identificación de sistemas que posee MatLab.

Algunas referencias tradicionales muy útiles:


1. Lennart Ljung, System Identification, Theory for the User, PTR Prentice Hall Information and System
Science Serie, Thomas Kailath series editor, second edition, May 2012.
2. Lennart Ljung, System Identification Toolbox for use with Matlab, User´s guide. The
MathWorks, www.mathworks.com, 2017.
3. Lennart Ljung, Introduction to System Identification, YouTube, 2012.
4. Schoukens, J., Pintelon, R., Mastering System Identification in 100 Exercises, Wiley InterScience (Online
service); Rolain, Yves. Hoboken, N.J. : Wiley-IEEE Press. 2012. e-Book.
5. Arun K. Tangirala, Principles of System Identification, Theory and Applications, Ed. Taylor and Francis,
CRC Press, 2015.
6. María Helena López Guillen, Identificación de sistemas. Aplicación al modelado de un motor
de continua. Documento en la internet. http://www.ie.itcr.ac.cr/einteriano/control/
Laboratorio/3.7Identificacion%20de%20sistemas.PDF
7. Keesman K., System Identification. An introduction, Ed. Springer, 2011.
8. Rik Pintelon, Johan Schoukens, System Identification: A Frequency Domain Approach, 2nd
Edition, IEEE, Wiley, e-book, March 2012.
9. Van Den Bosch, P Van Den Bosch, Alex Van Den Bossche, Modeling, Identification and Simulation of
Dynamical System, CRC Press, 1994.
10. Torsten B., Interactive System Identification: Prospects and Pitfalls, Springer-Verlag, 2012.

Potrebbero piacerti anche