Sistema de Identificación de un modelo hidráulico no ...

109
Universidad de La Salle Universidad de La Salle Ciencia Unisalle Ciencia Unisalle Ingeniería en Automatización Facultad de Ingeniería 2021 Sistema de Identificación de un modelo hidráulico no lineal Sistema de Identificación de un modelo hidráulico no lineal mediante metodología NARMAX mediante metodología NARMAX Sergio Arley Cortes Garavito Universidad de La Salle, Bogotá Follow this and additional works at: https://ciencia.lasalle.edu.co/ing_automatizacion Part of the Engineering Commons Citación recomendada Citación recomendada Cortes Garavito, S. A. (2021). Sistema de Identificación de un modelo hidráulico no lineal mediante metodología NARMAX. Retrieved from https://ciencia.lasalle.edu.co/ing_automatizacion/796 This Trabajo de grado - Pregrado is brought to you for free and open access by the Facultad de Ingeniería at Ciencia Unisalle. It has been accepted for inclusion in Ingeniería en Automatización by an authorized administrator of Ciencia Unisalle. For more information, please contact [email protected].

Transcript of Sistema de Identificación de un modelo hidráulico no ...

Page 1: Sistema de Identificación de un modelo hidráulico no ...

Universidad de La Salle Universidad de La Salle

Ciencia Unisalle Ciencia Unisalle

Ingeniería en Automatización Facultad de Ingeniería

2021

Sistema de Identificación de un modelo hidráulico no lineal Sistema de Identificación de un modelo hidráulico no lineal

mediante metodología NARMAX mediante metodología NARMAX

Sergio Arley Cortes Garavito Universidad de La Salle, Bogotá

Follow this and additional works at: https://ciencia.lasalle.edu.co/ing_automatizacion

Part of the Engineering Commons

Citación recomendada Citación recomendada Cortes Garavito, S. A. (2021). Sistema de Identificación de un modelo hidráulico no lineal mediante metodología NARMAX. Retrieved from https://ciencia.lasalle.edu.co/ing_automatizacion/796

This Trabajo de grado - Pregrado is brought to you for free and open access by the Facultad de Ingeniería at Ciencia Unisalle. It has been accepted for inclusion in Ingeniería en Automatización by an authorized administrator of Ciencia Unisalle. For more information, please contact [email protected].

Page 2: Sistema de Identificación de un modelo hidráulico no ...

Sistema de Identificación de un modelohidráulico no lineal mediante

metodología NARMAX.

Sergio Arley Cortes Garavito

Universidad de la SalleFacultad de Ingeniería

Programa de Ingeniería en AutomatizaciónBogotá D.C, Colombia

2021

Page 3: Sistema de Identificación de un modelo hidráulico no ...

Sergio Arley Cortes Garavito

Tesis de grado presentada como requisito parcial para optar al título de:Ingeniero en Automatización

Director(a):José Fabián Salazar Cáceres, MSc

Línea de Investigación: Innovación y TecnologíaUniversidad de la SalleFacultad de Ingeniería

Programa de Ingeniería en AutomatizaciónBogotá D. C., Colombia

2020

Sistema de Identificación de un modelo hidráulico no lineal mediante

metodología NARMAX.

Page 4: Sistema de Identificación de un modelo hidráulico no ...

Dedicatoria

Dedico el presente trabajo a mi papa quien es pilar fundamental de mi vida y de mi carreraprofesional quien me formo con excelentes valores y me motivo al desarrollo de mi carreraprofesional, agradezco a mi hermano por su acompañamiento de mi carrera, sus conse-jos y su perseverancia, agradezco a mi tía por ayudarme en momentos de incertidumbrebrindándome su apoyo, agradezco a la oportunidad brindada donde espero lograr grandesproyectos y desarrollar excelentes ideas siempre en beneficio del ser humano.

Sergio Arley Cortes Garavito

Page 5: Sistema de Identificación de un modelo hidráulico no ...

Agradecimientos

En uno de los momentos más importantes de mi carrera personal y profesional agradezcoa mi familia quien me brindo el apoyo necesario para culminar mis estudios, apoyándomeincondicionalmente en momentos de incertidumbre y brindándome amor cuando más lonecesite. Agradezco a mi novia Valentina quien me ayudo para el desarrollo de este trabajootorgándome paciencia y dedicación para ella mi más profunda gratitud e infinitos deseospara su éxito profesional, agradezco a mis compañeros de carrera especialmente a Stiven,Deiber, Nikolas, Rubiano, Camilo, Meza, Marco, Angie, Cristancho y Manuel quienes meotorgaron toda la ayuda posible y me dieron los mejores consejos para el desarrollo de misproyectos en la carrera, los considero grandes amistades y le deseo los mejores éxitos ensus vidas profesionales.

Agradezco a los docentes que me brindaron el conocimiento para convertir en un inge-niero responsable, cívico y honesto, infinitas gracias doy por su paciencia y profesionalis-mo.

Finalmente agradezco al docente Fabian Salazar quien considero un pilar fundamental deeste proyecto ya que me otorgo la idea de principal brindándome apoyo y acompañamien-to durante la realización de este proyecto, doy muchas gracias a todo su conocimientobrindado y su buen trato.

Page 6: Sistema de Identificación de un modelo hidráulico no ...

Resumen

La identificación de sistemas es uno de los campos mas estudiados dentro de la teoríade control, y el estudio de sistemas dinámicos, resulta una de las estrategias mas usadaspara identificar el modelo matemático de un proceso donde solo se conocen sus datos deentrada y salida, en las últimas décadas se han desarrollado metodologías lineales y nolineales para la obtención de los preciados modelos dinámicos.

Los modelos matemáticos obtenidos generalmente se usan para predecir el comportamien-to de un sistema, sea este económico, químico o físico, para la teoría de control resulta unaetapa importante ya que se necesita identificar correctamente el comportamiento de laplanta para poder controlarlo debido a que las estrategias de control se basan en la contro-labilidad del sistema.

Los métodos NARMAX son los mas usados para la identificación de sistemas no lineales,resulta que en la naturaleza los sistemas que se encuentran a menudo tienden a tener nolinealidades en su comportamiento; la teoría lineal convencional no logra aproximar co-rrectamente estos modelos, por lo tanto, la solución NARMAX, redes neuronales o mode-los Wavelet son los principales identificadores de no linealidades. Generalmente el modeloNARMAX es usado para plantas que no son severamente no lineales, en caso contrario seusa una red neuronal o un modelo Wavelet, en otras palabras, el modelo NARMAX puedeidentificar no linealidades continuas que afecten el comportamiento del sistema.

I

Page 7: Sistema de Identificación de un modelo hidráulico no ...

Prefacio

Los modelos matemáticos de procesos reales son necesarios teniendo una suma importan-cia en todas las disciplinas, principalmente son muy utilizados en los análisis de sistemas;permiten obtener un mejor entendimiento del sistema que se desea estudiar. En nuevos di-seños de procesos y en técnicas de implementación como diseño de controladores, super-visión, optimización, predicción, detección de fallas, diagnostico entre otras, los modelosson la base estructural que permite obtener un resultado coherente y eficiente. Por tal mo-tivo obtenerlos es de suma importancia, la teoría de identificación de sistemas está basadaen el desarrollo de modelos matemáticos con el uso de datos de entrada y salida de unsistema, la calidad del modelo implica la calidad de la solución que se está buscando paraun determinado problema, por lo tanto, la identificación de sistemas es un proceso críticodel que depende la solución del problema en cuestión (Escobar y Rodrigo)[1].

El desarrollo de este proyecto nace a partir de la necesidad del ingeniero para desarrollary estudiar una técnica de identificación de modelos no lineales con el objetivo de adqui-rir una herramienta para la teoría de control de procesos y para la predicción de datos, laimportancia de obtener modelos matemáticos de un algoritmo es un proceso fundamentalque facilitara las tareas de control, de desarrollo entre otras generando un gran beneficiopara futuros proyectos. Este proyecto busca desarrollar en profundidad la teoría de iden-tificación de sistemas NARMAX para que el usuario obtenga modelos no lineales de susrespectivos procesos.

Finalmente, el proyecto se centrará en el estudio de un modelo no lineal NARMAX para unsistema hidráulico de tanque cónico no lineal con el objetivo de observar la eficiencia delmodelo, capturar su capacidad de predicción y obtener la similitud del modelo NARMAXreferente con el modelo de tanque cómico. Para finalmente comparar la identificación nolineal con la lineal buscando obtener el menor error posible.

II

Page 8: Sistema de Identificación de un modelo hidráulico no ...

Summary

Systems identification is one of the most studied fields within control theory, and the studyof dynamic systems is one of the most used strategies to identify the mathematical model ofa process where only its input and output data are known. In recent decades, linear and non-linear methodologies have been developed to obtain the precious dynamic models.

The mathematical models obtained are generally used to predict the behavior of a system,be it economic, chemical or physical, for the control theory it is an important stage since itis necessary to correctly identify the behavior of the plant to be able to control it becausethe Control strategies are based on the controllability of the system.

The NARMAX methods are the most used for the identification of non-linear systems, itturns out that in nature the systems that are found often tend to have non-linearities in theirbehavior; Conventional linear theory cannot correctly approximate these models, therefo-re, the NARMAX solution, neural networks or Wavelet models are the main identifiersof non-linearities. Generally the NARMAX model is used for plants that are not severelynon-linear, otherwise a neural network or a Wavelet model is used, in other words, theNARMAX model can identify continuous non-linearities that affect the behavior of thesystem.

III

Page 9: Sistema de Identificación de un modelo hidráulico no ...

Índice general

Resumen I

Prefacio II

Summary III

Tabla de Contenido IV

Lista de Tablas VII

Lista de Figuras VIII

Nomenclature 1

1. Introducción 21.1. Descripción del Problema . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2. Sinopsis del Documento (Thesis outline) . . . . . . . . . . . . . . . . . 4

2. Diseño del sistema piloto cónico. 52.1. Modelamiento del sistema cónico hidráulico. . . . . . . . . . . . . . . . 52.2. Numero de Reynolds. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.3. Relación del Angulo y la altura en el tanque. . . . . . . . . . . . . . . . . 82.4. Ecuación diferencial del nivel del tanque. . . . . . . . . . . . . . . . . . 92.5. Simulación del modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3. Identificación NARMAX 133.1. Metodología de la identificación de sistemas. . . . . . . . . . . . . . . . 143.2. Identificación Lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.2.1. Métodos no paramétricos . . . . . . . . . . . . . . . . . . . . . . 163.2.2. Métodos paramétricos . . . . . . . . . . . . . . . . . . . . . . . 163.2.3. Media móvil autorregresiva con modelo de entrada exógena . . . 17

IV

Page 10: Sistema de Identificación de un modelo hidráulico no ...

3.2.4. Modelo FIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.2.5. Modelo AR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.2.6. Modelo MA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.2.7. Modelo ARMA . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.2.8. Modelo ARX . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.2.9. Modelo ARMAX . . . . . . . . . . . . . . . . . . . . . . . . . . 213.2.10. Modelo Box–Jenkins . . . . . . . . . . . . . . . . . . . . . . . . 22

3.3. Identificación no lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.3.1. Series de Volterra . . . . . . . . . . . . . . . . . . . . . . . . . . 243.3.2. Modelos NARMAX . . . . . . . . . . . . . . . . . . . . . . . . 253.3.3. Polinomio NARMAX . . . . . . . . . . . . . . . . . . . . . . . 273.3.4. Modelo NARX . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.3.5. NARMAX Racional . . . . . . . . . . . . . . . . . . . . . . . . 303.3.6. Redes Neuronales Artificiales . . . . . . . . . . . . . . . . . . . 32

4. Estimación de parámetros del modelo NARMAX. 354.1. Mínimos cuadrados ortogonales OLS . . . . . . . . . . . . . . . . . . . 36

4.1.1. Ortogonalización de Gram-Schmidt . . . . . . . . . . . . . . . . 364.1.2. Factorización QR . . . . . . . . . . . . . . . . . . . . . . . . . . 374.1.3. Definición del OLS . . . . . . . . . . . . . . . . . . . . . . . . . 374.1.4. Error Reduction Ratio . . . . . . . . . . . . . . . . . . . . . . . 394.1.5. Algoritmo OLS . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.2. Minimos cuadrados ortogonales con regresion hacia adelante FROLS . . 424.2.1. Algoritmo FROLS . . . . . . . . . . . . . . . . . . . . . . . . . 444.2.2. Mínimos cuadrados extendidos . . . . . . . . . . . . . . . . . . . 474.2.3. Suma de la tasa de reduccion de errores . . . . . . . . . . . . . . 484.2.4. Algoritmo NARMAX . . . . . . . . . . . . . . . . . . . . . . . 49

5. Implementación y Resultados 525.1. Implementación del algoritmo OLS . . . . . . . . . . . . . . . . . . . . 525.2. Implementación del algoritmo FROLS . . . . . . . . . . . . . . . . . . . 535.3. Implementación del algoritmo NARMAX . . . . . . . . . . . . . . . . . 585.4. Implementación del algoritmo NARMAX a la planta . . . . . . . . . . . 635.5. Análisis de la dinámica no lineal del sistema. . . . . . . . . . . . . . . . 70

5.5.1. Caudal elevado. . . . . . . . . . . . . . . . . . . . . . . . . . . . 715.5.2. Caudal estable. . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.5.3. Caudal bajo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755.5.4. Modelo final. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

6. Comparación con la identificación lineal 796.1. Implementación de la identificación lineal. . . . . . . . . . . . . . . . . . 79

7. Conclusiones y Trabajo Futuro 82

Bibliography 83

V

Page 11: Sistema de Identificación de un modelo hidráulico no ...

Anexos 87A. Código . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

A.1. Algoritmo NARMAX en MATLAB . . . . . . . . . . . . . . . . 87

VI

Page 12: Sistema de Identificación de un modelo hidráulico no ...

Índice de tablas

2.1. Parámetros del sistema de tanque cónico. . . . . . . . . . . . . . . . . . 11

5.1. Regresor de ejemplo.[14] . . . . . . . . . . . . . . . . . . . . . . . . . . 535.2. Parámetros obtenidos por el algoritmo OLS. . . . . . . . . . . . . . . . . 535.3. Parámetros obtenidos por el algoritmo FROLS. . . . . . . . . . . . . . . 555.4. Parámetros obtenidos por el algoritmo NARMAX. . . . . . . . . . . . . 595.5. Parámetros obtenidos por el algoritmo NARMAX para la planta. . . . . . 685.6. Términos y parámetros con su correspondiente ERR del caudal elevado. . 715.7. Términos y parámetros con su correspondiente ERR del caudal estable. . 735.8. Términos y parámetros con su correspondiente ERR del caudal estable. . 755.9. Términos y parámetros finales del modelo NARMAX . . . . . . . . . . . 77

VII

Page 13: Sistema de Identificación de un modelo hidráulico no ...

Índice de figuras

2.1. Sistema de tanque cónico. [6] . . . . . . . . . . . . . . . . . . . . . . . . 62.2. Función de presión y flujo en una válvula.[7] . . . . . . . . . . . . . . . 62.3. (a)Flujo laminar en un tubo, (b) Flujo turbulento en un tubo.[8] . . . . . . 72.4. Tanque cónico. (a) Vista en tercera dimensión. (b)Vista de corte[7] . . . . 82.5. Simulación del tanque cónico. [6] . . . . . . . . . . . . . . . . . . . . . 112.6. Comportamiento de la altura en el tanque. [6] . . . . . . . . . . . . . . . 12

3.1. Proceso de identificación de un sistema.[11] . . . . . . . . . . . . . . . . 153.2. Diagrama de bloques de la media móvil autorregresivo con modelo de

entrada exógena donde z−1 = q. [15] . . . . . . . . . . . . . . . . . . . 183.3. Estructura del modelo FIR. [16] . . . . . . . . . . . . . . . . . . . . . . 183.4. Estructura del modelo AR.[15] . . . . . . . . . . . . . . . . . . . . . . . 193.5. Curva de predicción y curva original. [18] . . . . . . . . . . . . . . . . . 203.6. Estructura del modelo ARX. [13] . . . . . . . . . . . . . . . . . . . . . . 213.7. Estructura del modelo ARMAX. [15] . . . . . . . . . . . . . . . . . . . 213.8. Estructura del modelo Box–Jenkins. [13] . . . . . . . . . . . . . . . . . . 223.9. Estructura de un sistema no lineal. [19] . . . . . . . . . . . . . . . . . . . 233.10. Estructura de la serie de Volterra. [21] . . . . . . . . . . . . . . . . . . . 253.11. Estructura del polinomio NARMAX. [23] . . . . . . . . . . . . . . . . . 283.12. Estructura del polinomio NARX [23] . . . . . . . . . . . . . . . . . . . . 303.13. Estructura de una neurona.[25] . . . . . . . . . . . . . . . . . . . . . . . 323.14. Estructura de una red neuronal.[26] . . . . . . . . . . . . . . . . . . . . . 333.15. Estructura de una R-NARX-R.[14] . . . . . . . . . . . . . . . . . . . . . 34

5.1. Señal de entrada distribuida entre [-1,1]. . . . . . . . . . . . . . . . . . . 545.2. Señal de ruido aleatorio gaussiano con medida estándar 0.1 y media 0. . . 555.3. Respuesta del sistema vs respuesta del modelo. . . . . . . . . . . . . . . 565.4. SERR del modelo NARX en la ecuación 5.1. . . . . . . . . . . . . . . . 565.5. SERR del modelo NARX perspectiva lateral. . . . . . . . . . . . . . . . 57

VIII

Page 14: Sistema de Identificación de un modelo hidráulico no ...

5.6. Variación del SERR conforme el incremento del retraso de entrada delmodelo NARX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.7. Variación del SERR conforme el incremento del retraso de salida del mo-delo NARX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.8. Señal de entrada distribuida entre [-1,1] para NARMAX. . . . . . . . . . 605.9. Señal de ruido aleatorio gaussiano con medida estándar 0.1 y media 0. . . 605.10. Respuesta del sistema vs respuesta del modelo NARMAX. . . . . . . . . 615.11. SERR del modelo NARMAX en la ecuación 5.2. . . . . . . . . . . . . . 615.12. SERR del modelo NARMAX perspectiva de estabilización de entrada. . . 625.13. Variación del SERR conforme el incremento del retraso de entrada del

modelo NARMAX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625.14. Variación del SERR conforme el incremento del retraso de salida del mo-

delo NARMAX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635.15. Modelo de bloques para la señal PSRB. . . . . . . . . . . . . . . . . . . 645.16. Simulación final de la planta. . . . . . . . . . . . . . . . . . . . . . . . . 645.17. Señal de entrada PSRB distribuida entre [2,3] para la planta NARMAX. . 645.18. Vista lateral SERR de la planta con NARMAX. . . . . . . . . . . . . . . 655.19. Vista frontal SERR de la planta con NARMAX. . . . . . . . . . . . . . . 665.20. Variación del SERR conforme el incremento del retraso de entrada de la

planta con NARMAX. . . . . . . . . . . . . . . . . . . . . . . . . . . . 665.21. Variación del SERR conforme el incremento del retraso de entrada de la

planta con NARMAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675.22. Señal del ruido obtenida por NARMAX. . . . . . . . . . . . . . . . . . . 685.23. Señal de salida del modelo NARMAX calculada con el regresor final. . . 685.24. Señal de salida del modelo NARMAX calculada con los parámetros. . . . 695.25. Señal de error entre la respuesta medida de los datos de la planta y la

respuesta aproximada de los datos del modelo. . . . . . . . . . . . . . . . 695.26. Simulación del sistema cónico no lineal con adición de ruido y salida del

sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705.27. Respuesta no lineal de la salida del sistema con adición de ruido en la

entrada y salida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715.28. Entrada al sistema para el caudal elevado. . . . . . . . . . . . . . . . . . 725.29. Ruido del sistema para el caudal elevado. . . . . . . . . . . . . . . . . . 725.30. Respuesta no lineal de la salida del sistema y la salida aproximada por el

modelo para el caudal elevado. . . . . . . . . . . . . . . . . . . . . . . . 735.31. Entrada al sistema para el caudal estable. . . . . . . . . . . . . . . . . . . 745.32. Ruido del sistema para el caudal estable. . . . . . . . . . . . . . . . . . . 745.33. Respuesta no lineal de la salida del sistema y la salida aproximada por el

modelo para el caudal estable. . . . . . . . . . . . . . . . . . . . . . . . 755.34. Entrada al sistema para el caudal bajo. . . . . . . . . . . . . . . . . . . . 765.35. Ruido del sistema para el caudal bajo. . . . . . . . . . . . . . . . . . . . 765.36. Respuesta no lineal de la salida del sistema y la salida aproximada por el

modelo para el caudal bajo. . . . . . . . . . . . . . . . . . . . . . . . . . 77

6.1. System identification Toolbox. . . . . . . . . . . . . . . . . . . . . . . . 806.2. Respuesta del modelo lineal y respuesta del modelo NARX. . . . . . . . 80

IX

Page 15: Sistema de Identificación de un modelo hidráulico no ...

6.3. Comparación de la identificación lineal vs la identificación no lineal. . . . 81

X

Page 16: Sistema de Identificación de un modelo hidráulico no ...

Nomenclature

ARMAX Autoregressive moving average with exogenous input

ARMA Autoregressive moving average

AR Autoregressive

BJ Box-Jenkins

ECM Error cuadrático medio

ELS Extended least squares

ERR Error Reduction Ratio

ESR Error señal-ruido

FIR Finite impulse response

FROLS Forward regression Orthogonal least squares

MA Moving average

N-NARX-N Neuronal network of no nlinear autoregressive moving average model withexogenous inputs

NARMAX Nonlinear autoregressive moving average model with exogenous inputs

NARX Nonlinear autoregressive model with exogenous inputs

OLS Orthogonal least squares

SERR Sum of Error Reduction Ratio

1

Page 17: Sistema de Identificación de un modelo hidráulico no ...

Capıtulo 1Introducción

La dinámica de los sistemas es uno de los campos de estudio más amplio partiendo delos sistemas naturales con tendencia de un comportamiento no lineal surge la necesidadde obtener un modelo matemático que pueda describir el comportamiento del sistema yasea usado para la predicción de los datos o para el control de algún proceso, sin embargolos sistemas no lineales han sido un gran reto debido a su complejidad y la dificultad paraobtener un modelo a partir del modelamiento o matemática aplicada al sistema con basesfísicas o químicas según el caso, por tal motivo surge la teoría de identificación de sistemasno lineales entre sus mejores expositores el NARMAX que ha sido ampliamente usado enmuchos procesos complejos.

Un ejemplo de lo anterior es el desarrollado por (Wong Y. & Ho,H,f) [2] donde se obtieneun pronóstico de control compensatorio para mejorar la precisión en el mecanizado de laspiezas de trabajo , para dicha tarea es necesario obtener un modelo NARMAX de la plan-ta en cuestión , los resultados obtenidos reflejan que el modelo NARMAX junto con unared neuronal pueden pronosticar los errores de mecanizado con precisión, otro ejemplointroducido por (Triantos, G., & Shenton, A.) [3] es el control de un tren motriz, cuya na-turaleza es estocástica debido a variables como el flujo de aire, efectos ambientales, tiempode encendido de la chispa entre otros donde introducen un modelo NARMAX que logramodelar el comportamiento del sistema teniendo en cuenta las perturbaciones ya mencio-nadas. Este modelo tiene la particularidad de que se ha creado a partir de un enfoque en suselección de estructuras de modelos no lineales basado en pruebas estadísticas.

Para el enfoque del proyecto se busca un modelado de un sistema hidráulico dinámico deun tanque cónico no linea, un trabajo similar relacionado con la hidráulica es introduci-do por (Gainluca, Z., Ioan, D.,& Landau.) [4] cuyo objetivo es aplicar control no lineala un motor Diesel industrial, por tal motivo se considera una representación polinomialNARMAX, evaluando los algoritmos para la selección de estructura y estimación de pará-metros, donde se obtiene un modelo NARMAX parcial no lineal con una implementacióneficiente de un algoritmo de control no lineal, o el trabajo para una identificación de una

2

Page 18: Sistema de Identificación de un modelo hidráulico no ...

1.1 Descripción del Problema

bomba de bombeo hidráulico introducido por (Magdi Mahmoud) [5] donde estudian di-ferentes modelos de sistemas ARMAX. Box Jenkins y NARMAX, el ultimo otorga unacaptura de la dinámica del sistema donde se garantiza un buen equilibrio entre un rangode condiciones de operación.

Por lo tanto, el modelo NARMAX es el método principal para lograr una excelente aproxi-mación del comportamiento de un sistema no lineal, el método NARMAX también reflejael comportamiento de la relación con el ruido en el sistema, en la identificación de siste-mas el ruido no es un agente que afecte a los términos del sistema lo cual es consideradouna imprecisión puesto que los términos que se relacionan con el ruido pueden aportar aldesarrollo de la respuesta del sistema, por tal motivo NARMAX es una metodología querompe esquemas convencionales partiendo del algoritmo de mínimos cuadrados para traerconsigo la mejor aproximación de un sistema no lineal.

Una de las mayores ventajas es que el modelo puede encontrar errores en el modelado deun sistema es decir términos constituyentes a la dinámica del sistema que se han omitidoen la descripción del sistema mediante leyes físicas o químicas, logrando así una retro-alimentación para obtener el mejor modelo matemático que satisfaga las condiciones deoperación del sistema y pueda predecir el comportamiento inherente del sistema estudia-do.

1.1. Descripción del Problema

Debido a los problemas iniciales de la teoría de control en la que se busca la estabilidady la capacidad de predicción se formula distintas herramientas matemáticas enfocándoseen los modelos lineales, la teoría de control clásica se basa en dichos sistemas lineales.Conforme diferentes sistemas a lo largo del tiempo se fueron desarrollando resultaba im-preciso poder trabajar con sus modelos lineales ya que no predecían de forma competenteel comportamiento del sistema, fue entonces cuando la técnica de linealización de sistemasfue obsoleta y se necesitó entonces desarrollar nuevas técnicas para trabajar con modelosno lineales que representan la mayoría de los comportamientos de los sistemas hoy en día.Sin embargo, llegar a estos modelos no lineales analíticamente es casi imposible debido ala complejidad que presentan por lo tanto se han desarrollado técnicas de identificación desistemas que permiten, dadas las mediciones de la entrada y salida del sistema determinarel comportamiento.

Actualmente la técnica de linealización es usada para desarrollar controladores y estabili-zar una planta sin embargo esto solo se permite en un punto de operación del sistema, unavez el sistema no se encuentre en dicho punto es imposible predecir el comportamiento deeste, la teoría de identificación de sistemas no lineales soluciona dicho problema.

Finalmente se puede observar cómo en los modelos hidráulicos no lineales específicamentelas bombas no son controladas con la precisión que se necesitan por lo tanto es necesarioaplicar dicha identificación de sistemas no lineales para predecir su comportamiento yestimar de mejor manera su posible respuesta dada una entrada preseleccionada.

3

Page 19: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 1. Introducción

1.2. Sinopsis del Documento (Thesis outline)El documento de trabajo detalla la identificación de un sistema hidráulico de tanque có-mico no lineal usando la metodología NARMAX para predecir el comportamiento delsistema y obtener un modelo matemático. En el capítulo dos se elabora el modelamientomatemático de la planta con su respectiva simulación para obtener los datos de entrada ysalida necesarios en la identificación no lineal. Mientras que en el capítulo tres se desa-rrolla la teoría lineal y no lineal seleccionado una estructura para el modelo matemático.Consecuentemente en el cápitulo cuatro se estudian los algoritmos que estimaran los pará-metros del modelo, introduciendo algoritmos para la identificación lineal y no lineal de laestructura ya seleccionada. En el cápitulo cinco se muestra la calibración de cada algorit-mo y la implementación del NARMAX al sistema hidráulico de tanque cómico no linealcon sus respectivos resultados. En el capítulo seis se observa la diferencia entre la iden-tificación lineal y la identificación no lineal. Por último, en el capítulo siete se concluyesobre los resultados obtenidos conforme los objetivos propuestos; desde la calibración delos algoritmos, su implementación hasta la comparación ya descrita.

4

Page 20: Sistema de Identificación de un modelo hidráulico no ...

Capıtulo 2Diseño del sistema piloto cónico.

El modelo matemático es una herramienta practica en las diferentes ramas de la ciencia,específicamente en el estudio de la dinámica de sistemas, requeridos por la industria. Losmodelos permiten predecir el comportamiento de un sistema (químico, térmico, hidráulico,neumático, mecánico y eléctrico) y sentar las bases para controlar los sistemas. Esta últimatarea es la más requerida, ya que se necesita siempre llevar los sistemas a un punto óptimode operación para elaboración de productos dentro de la industria.

Debido a lo anterior es importante obtener el modelo matemático del sistema, esto pue-de surgir a partir de dos metodologías; el modelamiento matemático y la identificaciónde sistemas. El primero es la descripción matemática mediante ecuaciones diferencialesderivadas a partir de descripciones matemáticas, comportamientos físicos o químicos. Elsegundo parte de algoritmos que usan principalmente los datos de salida y entrada de lossistemas.

En este capítulo se describiría el primer método para obtener el modelo matemático de unsistema hidráulico cónico con el fin de obtener datos de entrada y salida para desarrollarel segundo método. Debe tenerse en cuenta que la particularidad del sistema que se trataráen cuestión es el comportamiento no lineal.

2.1. Modelamiento del sistema cónico hidráulico.Para modelar un sistema hidráulico cualquiera que este sea se debe partir de tres princi-pios elementales tales como la conservación del flujo, la ley de Pascal o la ecuación deBernoulli debido a que son estas tres leyes físicas las que describen la mayoría de los com-portamientos hidráulicos. El líquido en el sistema es agua; elegida para poder facilitar loscálculos próximos relacionados con su densidad.

5

Page 21: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 2. Diseño del sistema piloto cónico.

Figura 2.1 Sistema de tanque cónico. [6]

En la figura 2.1 se observa el sistema donde se encuentra el caudal de entrada Fo y caudalde salida F . Cuando un líquido atraviesa una sección transversal, orificio, tubería o unaválvula; encuentra una resistencia al paso del flujo qm, que a su vez está asociada a unadiferencia de presión en una relación no lineal p = f(qm), como se ilustra en la figura 2.2.La pendiente de la curva se define como la resistencia hidráulica R [7].

Figura 2.2 Función de presión y flujo en una válvula.[7]

Es notable que en la ecuación 2.1 se refleja un cambio en el potencial contra el cambio delflujo. Sin embargo, este cambio no es funcional para determinar la altura en el tanque, sedebe analizar el cambio de altura con respecto al flujo.

R =dp

dqm(2.1)

6

Page 22: Sistema de Identificación de un modelo hidráulico no ...

2.2 Numero de Reynolds.

2.2. Numero de Reynolds.Se define como la relación adimensional de la fuerza de inercia con respecto a la fuerzaviscosa en un fluido recordando que las principales fuerzas que afectan a un fluido sondebidas a la gravedad, flotación, inercia del fluido, viscosidad entre otras. La importanciadel número de Reynolds es clasificar los tipos de flujo que pueden presentarse con relacióna su viscosidad, así pues, un número de Reynolds grande implica el predominio de lafuerza de inercia mientras que un número de Reynolds pequeño indica el predominio de laviscosidad.[8]

nR =phovD

u(2.2)

Donde

nR es el número de Reynolds.

v es la velocidad característica del fluido (m/s).

pho es la densidad del fluido (kg/m³).

D es el diámetro de la tubería (m).

u es la viscosidad dinámica del fluido (Pa*s).

Para comprender de mejor forma lo anterior se define el flujo laminar y el flujo turbulento.El flujo que es dominado por la fuerza de viscosidad se llama flujo laminar y su caracterís-tica principal es movimiento de flujo suave, según líneas paralelas. Sin embargo, cuandoal flujo lo dominan las fuerzas de inercia se conoce como flujo turbulento caracterizadopor un movimiento irregular y en forma de remolino. Se deduce que para un número deReynolds entre 2000 o nR < 2000 , el flujo es siempre laminar y para un flujo entre4000 o nR > 4000 el flujo es usualmente turbulento. Observe como en la figura 2.3 (a)el flujo laminar sigue corrientes lineales mientras que su contraparte en la 2.3 (b) el flujoturbulento dichas corrientes se mueven en todas las direcciones.

Figura 2.3 (a)Flujo laminar en un tubo, (b) Flujo turbulento en un tubo.[8]

7

Page 23: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 2. Diseño del sistema piloto cónico.

Según [9], el flujo puede relacionarse con la altura según la ecuación 2.3, esta relación esproporcional a la raíz cuadrada de H, donde el valor de la resistencia R no es constante.Debe tenerse en cuenta que esta relación solo aplica si se está considerando un flujo tur-bulento que atraviesa la válvula o la sección transversal, en caso contrario es una relaciónlineal donde depende una característica propia de la válvula. El coeficienteKv es una cons-tante que varié dependiendo de la válvula; se pueden obtener varios de estos coeficientesexperimentalmente.

Q = KV

√H (2.3)

En donde Q es el flujo de salida en (m³/s).

H es la altura en el tanque en m y k es una constante.

Representado en variables de la figura 2.1, la ecuación obtenida es la ecuación 2.4.

F (t) = Kv

√h(t)) (2.4)

2.3. Relación del Angulo y la altura en el tanque.Incorporando otro elemento para el modelado del tanque, se debe obtener la altura enfunción de cantidades más fáciles de medir para diseñar de forma correcta la planta, estarelación se obtiene a partir de la figura 2.4. Es importante lograr una variación del niveldel agua h con respecto a la geometría, por lo tanto se llegan a las ecuaciones 2.5 y 2.6teniendo en cuenta el ángulo α.

Figura 2.4 Tanque cónico. (a) Vista en tercera dimensión. (b)Vista de corte[7]

Considerando triángulos semejantes se puede llegar a la relación entre lados en la ecuación2.5.

r

Rmax=

h

Hmax(2.5)

8

Page 24: Sistema de Identificación de un modelo hidráulico no ...

2.4 Ecuación diferencial del nivel del tanque.

Por lo tanto despejando r se obtiene la ecuación 2.6

r = hRmax

Hmax(2.6)

2.4. Ecuación diferencial del nivel del tanque.Asumiendo un delta de tiempo dt pequeño, h(t) puede ser considerado constante, por lotanto, se sabe que el flujo total debe ser el flujo de entrada menos el flujo de salida yaque representa la ley de conservación de masa. Es decir, debido a que no se considerarozamiento ni pérdidas de agua en el tanque; la cantidad de flujo de entrada es la mismaque la cantidad de flujo de salida para lograr obtener un balance de flujo. Finalmente, laecuación que lo describe es la 2.7 que relaciona la variación del caudal conforme la restaentre el caudal de entrada del sistema y el caudal de salida del sistema congruente con laley de conservación de masa.

dQ(t) = (F0 − F (t))d(t) (2.7)

Reemplazando la ecuación 2.4 en la 2.7 se obtiene la ecuación 2.8.

dQ(t) = (F0 −Kv

√h)d(t) (2.8)

El volumen del cono se calcula con la ecuación 2.9. Entonces de la figura 2.1 se puede cal-cular el volumen total del cono restando el volumen del cono del Radio máximo menos elvolumen del cono de r, recordando que r corresponde a la ecuación 2.6. Por consiguiente,la ecuación 2.10 describe el volumen total del cono.

V =πr2h

3(2.9)

La ecuación 2.10 se obtiene a partir de la resta entre el volumen del radio máximo Rmax yel volumen de radio de altura h debido a que se está analizando la variación de h.

V =πR2

maxHmax

3− πr2h

3(2.10)

Reemplazando 2.6 en 2.10 se deduce la ecuación 2.12

V =πR2

maxHmax

3− πR2

maxh3

3H2max

(2.11)

V (t) =1

3πR2

max(Hmax −1

H2max

h(t)3) (2.12)

9

Page 25: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 2. Diseño del sistema piloto cónico.

Finalmente asumiendo un dV (t) lo bastante pequeño se puede llegar a la igualdad en laecuación 2.13.

dV (t) = πr2dh = π(Rmaxh(t)

Hmax)2dh (2.13)

Reemplazando la ecuación 2.8 en la ecuación 2.13, se asume que el incremento del volu-men constituido por la altura h y el radio r implica un aumento en la variación del caudaldel tanque cónico obteniendo la ecuación 2.15.

dV (t) = dQ(t) (2.14)

dQ(t) = (F0 −Kv

√h)d(t) = dV (t) = πr2dh = π(

Rmaxh(t)

Hmax)2dh (2.15)

En conclusión, organizando la ecuación 2.15 se llega a la ecuación diferencial 2.16 quedescribe el comportamiento del sistema.

dh

dt=H2

max(F0 −Kv

√h(t))

πR2maxh(t)2

(2.16)

Las anteriores ecuaciones son tomadas de [6], con el respectivo modelo en Simulink. Paracomprender mejor la ecuación 2.16 se cambia a términos de entrada u y salida y en laecuación 2.17.

dy

dt=H2

max(u(t)−Kv

√y(t))

πR2maxy(t)2

(2.17)

2.5. Simulación del modeloMatlab ofrece una herramienta de simulacion llamada Simulink que permite emular ecua-ciones diferenciales, comportamiento de sistemas, analisis de señales entre otras funcio-nes, esta herramienta resulta bastante util ya que mediante el uso de bloques denominadoscomo integradores, multiplicadores, sumadores, etc ; permite modelar la ecuacion diferen-cial obteniendo una solución en terminos de la variable de salida con respecto a la variablede entrada.

Lo anterior supone un beneficio ya que se puede solucionar la ecuación 2.17 representandoel comportamiento de la altura conforme a la variación de la entrada, por lo tanto, elmodelo elaborado en Simulink ofrece datos tanto de entrada (según se seleccione) comode la salida, necesarios para poder alimentar a los algoritmos de identificación. Dado quelos algoritmos solo precisan de los datos de la entrada y la salida para entregar un modelodel sistema.

10

Page 26: Sistema de Identificación de un modelo hidráulico no ...

2.5 Simulación del modelo

Este modelo que se muestra en la figura 2.5 obedece a ciertos criterios definidos por[6] para que el modelo tenga sentido fisico y corresponda a un comportamiento razo-nable.

Parámetro ValorRmax 1.524 mHmax 3.048 mKv 1h(0) 0.610 mF0 0,060m3/s

Tabla 2.1: Parámetros del sistema de tanque cónico.

El modelo refleja ciertos comportamientos, conforme los parámetros definidos en la ta-bla 2.1. Por la teoría de sistemas, existen dos tipos de comportamientos de una ecuacióndiferencial que se conocen como estado estático y estado dinámico. Las siguientes carac-terísticas se obtienen con el modelo en estado estático hsteady .

Cuando el Hmax incrementa o decrementa hsteady no es afectado.

Cuando Fo incrementa o decrementa hsteady incrementa/decrementa.

Cuando Kv incrementa o decrementa hsteady decrementa/incrementa.

Cuando el Rmax incrementa o decrementa hsteady no es afectado.

Figura 2.5 Simulación del tanque cónico. [6]

El anterior modelo presenta una respuesta en la figura 2.6, que corresponde al comporta-miento de la altura (salida) del sistema cuando la entrada es una constante, examinando

11

Page 27: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 2. Diseño del sistema piloto cónico.

que en estado estable alcanza una respuesta de 4 ft o 1.2192 m.

Se observa como en esta figura no se presenta ningún comportamiento sobre amortiguadoni amortiguado en la respuesta. Sin embargo, en procesos de identificación, la entradadebe ser una que alimente todas las frecuencias del sistema. Observe que la respuesta secomporta de manera lineal, es decir, tiende a una estabilización tardía a una referencia enel flujo de entrada, a pesar de ello en posteriores capítulos se analiza como la dinámicacambia conforme se altere la entrada. Resulta peculiar que para una entrada constantela figura 2.6 representa un comportamiento estable, aunque se cambie esta referencia elsistema tenderá a llegar al punto de entrada inicial.

Figura 2.6 Comportamiento de la altura en el tanque. [6]

Generalmente este es un comportamiento poco usual, aun en las plantas de primer orden,ya que se necesita de un controlador para que la respuesta alcance un valor deseado por elusuario; note también que el sistema tiene problemas en 0 ya que la ecuación diferencialtiene una fracción y tiene problemas de continuidad debido a que los números negativosno se contemplan en la raíz, tenga en cuenta que este sistema es una aproximación físicareal, por lo tanto, trabajar con números imaginarios carece de sentido.

A continuación, en el capítulo 3 se desarrollará toda la teoría basada en las estructurasde los modelos matemáticos con el objetivo de conocer todas las posibles variantes, yseleccionar aquella estructura que mejor se adecúe a la ecuación polinómica del modelomatemático desarrollado en la ecuación 2.17 para finalmente obtener su parametrizacióncorrespondiente con la evaluación de la respuesta del modelo NARMAX.

12

Page 28: Sistema de Identificación de un modelo hidráulico no ...

Capıtulo 3Identificación NARMAX

En las últimas décadas, el proceso de identificación de un sistema de cualquier natura-leza resulta realmente importante, ya que permite obtener un modelo matemático cuyasfunciones permiten predecir el comportamientos a futuro del sistema, o en su defecto, lo-grar desarrollar modelos de control basados en los modelos matemáticos obtenidos por elproceso de identificación; en consecuencia, los ingenieros [10] tienen principal interés enlas técnicas de identificación, debido a les permiten obtener el modelo matemático de surespectivo proceso, obteniendo la mejor solución para un problema en específico.

La predicción de datos permite a la industria obtener posibles errores de falla, obtener elmáximo o mínimo local del modelo matemático, mejorar la comprensión de su funciona-miento entre otras aplicaciones. Mientras que su contraparte, la teoría de control, permiteque los sistemas funcionen en condiciones deseadas y puntos de equilibrio que puedenregular un proceso llegando a su máxima eficiencia en el menor tiempo posible. De modoque la identificación de sistemas es la teoría y el arte de construir modelos matemáticosde sistemas dinámicos basados en las entradas y salidas del sistema. Estos modelos sonusados en campos como la bioingeniería, mecánica, eléctrica, construcción, economía,meteorología, procesos químicos, procesos hidráulicos, procesos neumáticos entre otrasaplicaciones. El beneficio de una excelente identificación; principalmente de los compo-nentes inherentes del sistema, como sus propios términos lineales o no lineales, permitenque el modelo se asemeje al comportamiento real del sistema. Debe entenderse que pa-ra cualquiera de estas técnicas de identificación se precisan de solo las mediciones deentrada y salidas del sistema; aunque en la experiencia se ha notado que conocer sobreel modelamiento matemático del sistema permite nutrir los algoritmos de identificación(generalmente en los diccionarios de estos algoritmos).

El inconveniente principal de la identificación de sistemas es lograr un modelo que repre-sente la dinámica no lineal de los sistemas de orden a menudo superior al grado 2, debido aque existen herramientas matemáticas como la transformada de Laplace, transformada deFourier, entre otras, para los sistemas lineales, los sistemas no lineales no cumplen con las

13

Page 29: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

condiciones para usar estas herramientas matemáticas; ofreciendo una desventaja puestoque se conoce poco sobre la dinámica de sistemas no lineales. La identificación NARMAXsoluciona dicho inconveniente en vista de que para cualquiera de los datos de entrada y sa-lida de sistema, esta identificación logra capturar los componentes no lineales del sistema,las técnicas de identificación son por lo general para sistemas lineales y sus aproximacio-nes son excelentes al comportamiento lineal; sin embargo, para los sistemas no linealesestas aproximaciones obtienen un error suficientemente grande que supone un sesgo en lapredicción y comportamiento del modelo conforme a su comportamiento real.

Otro principal inconveniente que representan las técnicas de identificación convencionaleses la alteración del comportamiento del sistema conforme al ruido. Muchas de las técnicasde identificación carecen de robustez para la identificación correcta del ruido, el beneficiode usar la metodología NARMAX identifica los componentes del sistema que se relacio-nan con el ruido. Esto supone una gran ventaja ya que este sistema para cualquier parde datos de entrada y salida con ruido, la metodología NARMAX logra obtener los com-ponentes asociados al ruido (sea este de cualquier naturaleza); finalmente la metodologíaNARMAX captura todos los componentes del sistema siempre y cuando el diccionario delalgoritmo este suficientemente completo.

3.1. Metodología de la identificación de sistemas.Por lo general la identificación de sistemas sigue un proceso secuencial que garantizauna producción de un modelo matemático simple tal que represente el comportamientodel sistema que se desea identificar; debido a lo anterior, el objetivo que se persigue esencontrar el modelo más simple con la función de capturar el comportamiento del sistemacon relación al ruido. Los datos medidos de entrada y salida en un sistema real siempretendrán asociados un ruido de diferente naturaleza que afecta directamente a la prediccióny el control del sistema que se desea identificar. La importancia de seguir un procesosecuencial es que podemos identificar la mejor estructura del modelo y obtener las mejoresvalidaciones para obtener el mejor modelo matemático que representa el sistema.

En la primera etapa del proceso se define un objetivo. El objetivo claramente definido esobtener de que naturaleza es el sistema, el comportamiento referente al tiempo (invarianteen el tiempo o variante en el tiempo), el comportamiento de su naturaleza lineal o no lineal,el orden del sistema entre otros aspectos. Se debe determinar cuales son las salidas y lasentradas del sistema de estudio, diseñando experimentos para poder obtener las medicionescorrectas de las anteriores variables. La segunda etapa, es la toma de datos; en esta etapael principal objetivo es tomar datos con la mejor calibración y menor tolerancia permitidapara que el dispositivo que mida los datos de entrada y salida del sistema posea el menorerror de medición posible, ya que pueden afectar de gran manera el objetivo principal dela identificación de sistemas.

En la tercera etapa se contempla el análisis y tratamiento de datos. El objetivo principal deesta etapa es analizar el comportamiento de los datos, es decir, que los datos obtenidos seancoherentes con la naturaleza del sistema, identificar su comportamiento invariante en eltiempo, identificar el posible orden que pueda manejar el sistema entre otras características

14

Page 30: Sistema de Identificación de un modelo hidráulico no ...

3.2 Identificación Lineal

preparando los datos con filtros u otros atenuadores de ruido, para obtener la medición másexacta de la correspondiente salida y entrada del sistema. La cuarta etapa es la selección delmodelo, esta etapa consiste en seleccionar el mejor modelo (se desconocen los parámetrosdel modelo) que pueda identificar el comportamiento del sistema por lo tanto se debeseleccionar si la aproximación lineal es suficiente al comportamiento del sistema o de locontrario si se necesita un comportamiento no lineal, en otras palabras, en esta etapa sedebe seleccionar el cuerpo o la estructura del modelo.

En la quinta etapa se calculan los parámetros asociados a la estructura del modelo, por lotanto, es necesario calcular una base que sea combinación lineal de los datos de entraday salida del sistema en términos más simplistas los parámetros son constantes que acom-pañan a los términos del sistema, surge la necesidad de ajustar y obtener estos parámetrospara que el modelo cumpla con su función.

La última etapa es la validación del modelo; una vez obtenido el modelo, este debe pro-porcionar datos de salida y entrada; estos datos son los estimados mientras que los datoscon los que se alimenta el sistema son los datos medidos. El primer método busca aplicarpruebas de correlación entre la salida y en la entrada del modelo comprobando si su corre-lación es suficiente para garantizar una dependencia de la salida con respecto a la entrada.El segundo método se basa en calcular el error entre la salida estimada (datos obtenidosdel modelo) y la salida medida del sistema. Por lo general es criterio suficiente que el errorentre la salida del sistema y la salida del modelo sea cercano a cero. En caso contrariose debe restructurar la segunda etapa y continuar con el proceso hasta que alguno de losanteriores criterios se cumpla. Una mejor forma de ver el proceso es la figura 3.1.

Figura 3.1 Proceso de identificación de un sistema.[11]

3.2. Identificación LinealLos sistemas lineales son aquellos que satisfacen el principio de superposición, es decir, siuna entrada consiste en la suma ponderada de varias señales, entonces la salida es simple-mente la superposición de la suma ponderada de las respuestas del sistema a cada una deestas señales. Matemáticamente sea y1(t) la respuesta del sistema continuo a una entrada

15

Page 31: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

x1(t), y sea y2(t) la salida correspondiente a la entrada x2(t) [12]. Entonces el sistema eslineal si:

La respuesta a x1(t) + x2(t) es y1(t) + y2(t).

La respuesta ax1(t) es ay1(t), donde a es una constante compleja cualquiera.

Los modelos lineales son los más frecuentemente usados para la representación de unsistema, en otras palabras, los componentes inherentes del sistema son de naturaleza linealo también cuyo comportamiento inherente se caracteriza por una aproximación lineal a unpunto operativo del sistema. Existen dos tipos de clasificaciones para los métodos linealeslos paramétricos y los no paramétricos.

3.2.1. Métodos no paramétricosLos métodos no paramétricos no emplean de forma explícita un vector finito de paráme-tros en la búsqueda de una mejor descripción del sistema [13]. Se desarrollan modelosbasados típicamente en la respuesta del impulso del sistema, generalmente son métodosde correlación y transformadas de Fourier. Algunas de sus principales variantes para laidentificación de los sistemas son:

Análisis espectral.

Análisis por correlación.

Secuencias Pseudoaleatorias.

Secuencias binarias pseudoaleatorias.

3.2.2. Métodos paramétricosLos métodos paramétricos son aquellos que parten de la teoría clásica de la regresión,con el objetivo de identificar los parámetros que relacionan la entrada, la salida y el rui-do asociado al comportamiento del sistema, a partir de técnicas de regresión estadística.Los métodos paramétricos son los comúnmente usados para la identificación de sistemaslineales; principalmente se han desarrollado métodos basados en mínimos cuadrados. Losmétodos más comunes son:

Modelo FIR.

Modelo AR.

Modelo MA.

Modelo ARMA.

Modelo ARX.

Modelo ARMAX.

Modelo Box-Jenkins.

16

Page 32: Sistema de Identificación de un modelo hidráulico no ...

3.2 Identificación Lineal

Los modelos de identificación paramétricos se desarrollan en tiempo discreto debido a quela naturaleza de los datos obtenidos en la práctica (generalmente por sensores o medidoresde las variables físicas de un sistema), son muestreados a partir de un periodo de muestreo,por lo tanto, el sistema no se debe modelar a partir de un tiempo continuo sino en un tiempodiscreto.

3.2.3. Media móvil autorregresiva con modelo de entrada exóge-na

Acorde a (Billings) [14] existe un caso general de donde los demás modelos se puedenobtener logrando variaciones en la ecuación. Note que la variable compleja (z−1) estádirectamente relacionada con la transformada Z que transforma las funciones del dominiodel tiempo continuo a funciones del dominio de tiempo discreto, mientras que el retraso sedefine como la propiedad de desplazamiento de la transformación Z de una función. Portal motivo sé está identificando una función discreta que representará al conjunto de datosde la entrada del sistema relacionada con el conjunto de datos de la salida.

A(z−1)y(k) =B(z−1)

F (z−1)u(k) +

C(z−1)

D(z−1)ξ(k) (3.1)

Donde:

A(z−1) = 1 + a1z−1 + · · ·+ anaz

−na

B(z−1) = 1 + b1z−1 + · · ·+ bnbz

−nb

C(z−1) = 1 + c1z−1 + · · ·+ cncz

−nc

D(z−1) = 1 + d1z−1 + · · ·+ dndz

−nd

F (z−1) = 1 + f1z−1 + · · ·+ fnfz

−nf

La señal de entrada es u(k) mientras que la señal de salida es y(k), los órdenes de cadapolinomio relevante son; na, nb, nc, nd y nf .ξ(k) es una secuencia de ruido que se su-pone que está distribuida de forma independiente e idéntica con media cero y varianzafinita.

Los polinomios B(z−1) y F (z−1) representan la función de la parte determinista del sis-tema y los polinomios C(z−1) y D(z−1) representan la parte estocástica del sistema. Lafigura 3.2 representa la ecuación 3.1 en diagrama de bloques donde se observa como laentrada del sistema u, la entrada de ruido e y la salida del sistema y interactúan entresí.

17

Page 33: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

Figura 3.2 Diagrama de bloques de la media móvil autorregresivo con modelo de entradaexógena donde z−1 = q. [15]

3.2.4. Modelo FIREn la ecuación 3.1 si se estableA(z−1) = 1, F (z−1) = 1, C(z−1) = 0, se convierte en laecuación 3.2 correspondiente al modelo de respuesta finita al impulso, el modelo es el másbásico entre la familia de los sistemas de identificación lineales debido a que no asocia elerror a su estructura inherente o a uno de los términos del modelo. La figura 3.3 representala ecuación 3.2 en diagrama de bloques donde se observa como la entrada u interactúa conuna gananciaB sistema, mientras que el ruido e entra directamente al sumador obteniendouna salida y.

y(k) = b1u(k − 1) + b2u(k − 2) + · · ·+ bnbu(k − nb) (3.2)

Figura 3.3 Estructura del modelo FIR. [16]

3.2.5. Modelo ARComo se puede observar el modelo AR se establece con los criterios B(z−1) = 0,C(z−1) = D(z−1) = 1, en la ecuación 3.1; este modelo simplista tiene una sola va-riable que se expresa en función de los valores de las anteriores de la variable, este modeloes aplicable a casos donde el ruido afecta en menor medida al sistema lineal. La ecuación3.3 representa el modelo AR.

y(k) + a1y(k − 1) + a2y(k − 2) + · · ·+ anay(k − na) = ξ(k) (3.3)

En el modelo de auto regresión se pronostica la variable de intereses usando una combina-ción lineal de valores pasados de la variable, el termino auto regresión indica que se trata

18

Page 34: Sistema de Identificación de un modelo hidráulico no ...

3.2 Identificación Lineal

de una regresión de la variable contra sí misma. El ruido por lo general es ruido blanco.Estos modelos son flexibles lo que permite manejar una serie de patrones temporalmentediferentes [17].

3.2.6. Modelo MA

Como en los anteriores casos estableciendo A(z−1) = 1, B(z−1) = 0, D(z−1) = 1 enla ecuación 3.1, se obtiene el modelo de media móvil (Moving Average) en la ecuación3.4, esta estructura tiene la particularidad de usar los errores de pronóstico pasados en unmodo similar a la regresión, debido a que este modelo usa netamente la señal de ruido. Lafigura 3.4 representa la ecuación 3.4 en diagrama de bloques donde se observa como lasalida depende únicamente de la señal de ruido.

y(k) = ξ(k) + c1ξ(k − 1) · · ·+cncξ(k − nc) (3.4)

Figura 3.4 Estructura del modelo AR.[15]

Sin embargo, no es netamente una regresión habitual ya que se usan los valores de ξ(k).Nótese que los pasados de la salida no están en la ecuación por lo tanto no genera unaregresión con respecto a la salida [17].

3.2.7. Modelo ARMA

Configurando en la ecuación 3.1 B(z−1) = 0, D(z−1) = 1, se obtiene el modelo ARMA(autoregressive moving average) en la ecuación 3.5. Según [14] el modelo ARMA es unmodelo de análisis de series de tiempo y fue propuesto por el estadístico estadounidenseG. E. P. Box y el estadístico británico G. M. Jenkins.

y(k) + a1y(k− 1) + · · ·+ anay(k− na) = ξ(k) + c1ξ(k− 1) · · ·+cncξ(k− nc) (3.5)

19

Page 35: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

Figura 3.5 Curva de predicción y curva original. [18]

Este modelo es la unión de los modelos AR Y MA ofreciendo la ventaja de obtener lainformación de los pasados de la variable de salida con los cambios que se puedan generarcon respecto a la variable de error ξ. Un ejemplo de la ventaja de este modelo es obtenidoa partir de la predicción del comportamiento del viento referente a la predicción de energíaeólica a ultracorto plazo para estudiar la transición de la energía eólica al sistema de ener-gía (Wang Cong y Zhang Jianyong); los resultados obtenidos se muestran en la figura 3.5de donde se puede observar que la predicción del comportamiento del sistema referente almodelo obtenido de (Wang Cong y Zhang Jianyong) es excelente mostrando las ventajasde los modelos lineales para su uso en la predicción de datos [18].

3.2.8. Modelo ARXEstableciendo en la ecuación 3.1 los parámetros C(z−1) = D(z−1) = F (z−1) = 1 seobtiene el modelo ARX (autoregressive with exogenous input) en la ecuación 3.6. SegúnAR hace referencia a autorregresiva lo cual indica que la variable de salida estará relacio-nada con sus términos pasados de la misma variable y X hace referencia a una entradaextra también conocida como variable exógena.

y(k)+a1y(k−1)+ · · ·+anay(k−na) = b1u(k−1)+ · · ·+ bnbu(k−nb)+ξ(k) (3.6)

Este modelo ofrece la ventaja de que al contrario de sus predecesores considera una entradaque afecta al sistema, en adición la forma del predictor define una regresión lineal. El ruidogeneralmente es una sucesión aleatoria normalmente distribuida de media cero [13]. Lafigura 3.6 representa la ecuación 3.6 del modelo ARX en diagrama de bloques mostrandola relación de la entrada u con ganancia de B/A, el ruido e con ganancia 1/A generandola salida y.

20

Page 36: Sistema de Identificación de un modelo hidráulico no ...

3.2 Identificación Lineal

Figura 3.6 Estructura del modelo ARX. [13]

Acorde a [15] el modelo ARX es el más eficiente en los métodos de estimación polinomialdebido a que es el resultado de resolver ecuaciones de regresión lineal en forma analítica ypor lo general la solución es única. El inconveniente del modelo es que las perturbacionesson parte de la dinámica del sistema, por consiguiente, cuando la entrada de ruido no esruido blanco el acoplamiento entre la dinámica determinista y estocástica puede sesgar laestimación del modelo ARX obteniendo un error de predicción se recomienda generar unorden del modelo mayor para poder minimizar este error.

3.2.9. Modelo ARMAXUno de los modelos más utilizados y generalmente que representan una gran aproxima-ción a los datos reales de un sistema es el modelo ARMAX (autoregressive moving ave-rage with exogenous input) se puede obtener de la ecuación 3.1 configurando D(z−1) =F (z−1) = 1.

y(k) + a1y(k − 1) + · · ·+ anay(k − na) = b1u(k − 1) + · · ·+ bnbu(k − nb)+ ξ(k) + c1ξ(k − 1) + · · ·+ cncξ(k − nc) (3.7)

A(z−1)y(k) = ξ(k) representa la auto regresión.

y(k) = C(z−1)ξ(k) representa la media móvil de ruido blanco.

B(z−1)u(k) representa la entrada externa o entrada exógena.

Figura 3.7 Estructura del modelo ARMAX. [15]

21

Page 37: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

La figura 3.7 representa la ecuación 3.7 del modelo ARXMAX en diagrama de bloquesmostrando la relación de la entrada u con ganancia de B, el ruido e con ganancia C gene-rando la salida y con ganancia 1/A. El modelo ARMAX surge como solución a la proble-mática de la perturbación que se presenta en el modelo ARX, agregando mayor flexibilidadal modelado con la combinación de términos del ruido también conocido como media enmovimiento la perturbación y comportamiento del ruido se refleja en su modelamiento.Según [13] este modelo se ha convertido en una herramienta de control y predicción parala descripción de sistemas como para el diseño del control. Finalmente se deduce que estaestructura se recomienda cuando el sistema sufre perturbaciones como por ejemplo unaráfaga de viento que afecta a una aeronave.

3.2.10. Modelo Box–Jenkins

Finalmente, el último de los modelos más usados es el modelo Box-Jenkins se obtieneconfigurando A(z−1) = 1 en la ecuación 3.1 para tener la ecuación 3.8 . Este modelotiene propiedades de perturbación modeladas por separado conforme a la dinámica delsistema. El modelo BJ es útil cuando tiene perturbaciones que entran tarde en el procesocomo por ejemplo el ruido de medición de salida [15].

y(k) =B(z−1)

F (z−1)u(k) +

C(z−1)

D(z−1)ξ(k) (3.8)

Se utilizan comúnmente debido a que describen por separado la parte determinista y es-tocástica de un sistema, ofreciendo la ventaja de estar en función de transferencia que seutiliza generalmente para la teoría de control.

Figura 3.8 Estructura del modelo Box–Jenkins. [13]

La figura 3.8 representa la ecuación 3.8 del modelo Box-Jenkins en diagrama de bloquesmostrando la relación de la entrada u con ganancia de B/F , el ruido e con ganancia C/Dgenerando la salida y.

22

Page 38: Sistema de Identificación de un modelo hidráulico no ...

3.3 Identificación no lineal

3.3. Identificación no linealLos sistemas no lineales son aquellos que no cumplen con el teorema de superposición.A menudo son los que más se presentan en la naturaleza tal como un péndulo simple, uncircuito con diodo en el túnel, un oscilador de resistencia negativa entre otros. La figura 3.9muestra en diagrama de bloques de los modelos no lineales, adicionalmente, la ecuación3.9 es la función de caso general que describe el modelo de un sistema no lineal donde laentrada es cero.

Figura 3.9 Estructura de un sistema no lineal. [19]

x = f(x) (3.9)

En la mayoría de los casos para trabajar con los sistemas no lineales se aplica una lineali-zación en series de Taylor, que permite capturar la información del sistema en un punto deequilibrio; sin embargo, cuando el sistema cambia el valor de su punto de equilibrio (debi-do a su dinámica interna o perturbaciones externas); el comportamiento que ha entregadoel modelo linealizado sesga completamente su información referente al comportamientoreal del sistema. Para comprender lo anterior se define un punto de equilibrio como:

Un punto x− x∗ en el espacio de estado es un punto de equilibrio (PE) de la ecuación 3.9si tiene la propiedad de que cuando el estado inicial del sistema es x∗, el estado permaneceen x∗ en todo tiempo futuro.

Los PE de 3.9 son las raíces de la ecuación 3.10.

f(x) = 0 (3.10)

Un PE puede ser aislado, es decir no tiene otros PE en la vecindad, o puede existir uncontinuo PE.

Según (Maria Seron) [19] la linealización solo predice el comportamiento local, no sir-ve para estudiar el comportamiento lejano al punto de operación o PE. Esto genera quela información de la dinámica de un sistema no lineal se pierda debido a que no se estáconsiderando la totalidad del sistema si no un punto de operación. Otro inconveniente que

23

Page 39: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

generan los sistemas no lineales es la dificultad para poder modelar con leyes físicas debidoa su alta complejidad, estos sistemas contienen demasiados términos que afectan directa-mente su comportamiento ocasionando que si se llegase a omitir alguno de los términosel modelado (obtenido por leyes físicas) genera un comportamiento que no se asemejaal comportamiento del sistema no lineal real. Existen varias maneras para solucionar lasanteriores problemáticas surgen nuevos métodos tales como los modelos NARMAX. Enla identificación no lineal al igual que su contraparte se definen dos tipos de métodos deidentificación, los métodos paramétricos no lineales y los métodos paramétricos no linea-les.

3.3.1. Series de VolterraSe establece que para un sistema causal lineal la salida y(k) puede relacionarse con laentrada u(k) a través de una combinación lineal de M señales de entrada (señales dememoriaM ) relacionando u(k−m) conm = 1, 2, 3,··· ,M como la ecuación 3.11.

y(k) = h0 + h1u(k − 1) + h1(2)u(k − 2) + · · ·

+ h1(M)u(k −M) = h0 +

M∑m=1

h1(m)u(k −m) (3.11)

Donde h1(m) con m = 1, 2, 3,··· ,M es una secuencia de ponderación del sistema o fun-ción de respuesta al impulso unitario también conocida como el primer orden de Ker-nel.

La ecuación 3.11 se refiere al primer orden, pero (Billings) [14] establece un caso generalextendiendo a un caso de orden superior, en otras palabras, un sistema causal no lineal quese refleja en la ecuación 3.12.

y(k) = h0 +

M∑m1=1

h1(m1)u(k −m1)+

M∑m1=0

M∑m2=0

h2(m1,m2)u(m1)u(m2) + · · · = h0 +

L∑l=1

yl(k) (3.12)

Donde:

l es el orden del Volterra Kernel o núcleo.

hl(m1,··· ,ml) es el orden no lineal de la respuesta al impulso.

Las series de Volterra son desarrollos en serie que consisten en términos lineales bilinealesy trilineales que por lo general dependiendo de la aplicación pueden ser incluidos o no.Las series de Volterra son la primera aproximación a los sistemas no lineales definiendo

24

Page 40: Sistema de Identificación de un modelo hidráulico no ...

3.3 Identificación no lineal

el retraso m como el número de términos pasados de la variable con la que se relacio-na.[10]

Otra definición otorgada por (Montoro)[20] estable que la serie de Volterra es una formade representar sistemas no lineales que generaliza el concepto de respuesta impulsiva desistemas lineales. La idea principal parte de los sistemas lineales, por teoría de sistemas sesabe que la respuesta de una salida es la convolución de la entrada y la respuesta impulsivadel sistema lineal, de igual modo la salida de los sistemas no lineales se puede obtenercomo la suma de convoluciones de unas funciones multivariables (Kernels o núcleos quehacen el papel de respuesta impulsiva) con una señal obtenida como la potencia de ordenl de la señal de entrada. Las aplicaciones de este modelo son generales pero el mejor casoque establece (Billings) [14] es la representación en series de Volterra finita de un sistemainvariante en el tiempo causal y no lineal con memoria de desvanecimiento, también sepuede usar el modelo de la serie de Volterra para análisis en dominio de la frecuenciano lineal basado en el concepto de respuesta de frecuencias generalizadas. La figura 3.10muestra la estructura general de las series de Volterra donde se representa la salida a partirde la relación de los Kernels con la entrada del sistema.

Figura 3.10 Estructura de la serie de Volterra. [21]

Se establece que los Kernels tienen una propiedad de simetría lo que facilita su cálculo,recordando que cada uno de los l términos caracteriza un grado de no linealidad obtenidoa partir de una integral de convolución (operación lineal). (Montoro) [20] establece que lano linealidad queda condensada en la señal que se convoluciona con el Kernel correspon-diente es decir que se debe considerar como una señal multidimensional de orden l a partirde la entrada.

La problemática de las series de Volterra es la dificultad que está en encontrar los Ker-nels correspondientes a la expansión, se pueden obtener a partir de métodos analíticos ométodos de identificación, pero resulta un trabajo complejo que requiere de herramientasmatemáticas, análisis espectral, entre otros generando una gran dificultad.

3.3.2. Modelos NARMAXEl modelo NARMAX (Nonlinear autoregressive moving average model with exogenousinputs) fue introducido por primera vez por I.J. Leontaritis y Stephen Billings en donde

25

Page 41: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

se usa el concepto de la clásica identificación ARMAX con el particular interés de quelos términos del modelo se consideran en su forma no lineal, en otras palabras, se agregantérminos no lineales a la estructura del modelo de tal forma que permita reducir el error delmodelo con respecto al comportamiento del sistema no lineal. La ecuación 3.13 describeel caso general de los modelos NARMAX.

y(k) = F [y(k − 1), y(k − 2),··· , y(k − ny),

u(k − d), u(k − d− 1)···, u(k − d− nu),

e(k − 1), e(k − 2),··· , e(k − ne)] + e(k)

(3.13)

Donde:

u(k) es la secuencia de entrada y nu es el máximo retraso de la entrada .

y(k) Es la secuencia de salida y nu es el máximo retraso de la salida.

e(k) Es la secuencia de ruido y ne es el máximo retraso del ruido.

d es un tiempo de retraso típicamente d = 1.

No existe un modelo no lineal que pueda representar todos los tipos de sistemas no li-neales debido a la complejidad de la estructura interna del sistema o del comportamientodel sistema; aunque existen varias metodologías como el uso de redes neuronales, algo-ritmos genéticos, linealización entre otras. La metodología NARMAX es una excelenteaproximación al modelo no lineal puesto que tiene en cuenta la relación de los pasadosde la entrada y la salida con una combinación de comportamientos (cuadráticos, cúbi-cos, fracciones) con el ruido y con su propia entrada o salida del sistema; es decir que lacombinación de elementos que se encuentran en un diccionario logra abarcar los posiblestérminos que puedan afectar al comportamiento del sistema; en el capítulo 4 se explica larelación ya descrita.

Una gran ventaja de los modelos NARMAX según (Billings) [14] indica que los términosde ruido se incluyen para poder reducir efectos del modelo (leyes físicas) o perturbacionesno medidas; contrario a los anteriores casos como es el BJ ,ARMAX o ARX donde elruido no juega un papel importante dentro del modelo en el caso de los modelos NAR-MAX la relación estrechamente con el ruido genera una disminución en los errores delmodelamiento del sistema (la intención de describir el comportamiento del sistema conleyes físicas), también tiene en cuenta las perturbaciones ya que se vio anteriormente quemuchos de los modelos lineales son sensibles a dichas perturbaciones. Otra ventaja delmodelo NARMAX es la búsqueda del modelo más parsimonioso posible; la parsimoniase refiere a encontrar el modelo donde se encuentren los menores términos del sistema, unejemplo puede ser que un determinado sistema tenga 35 términos; el desarrollo del modeloNARMAX permitirá identificar los términos más importantes y reducir a un caso de 10términos obteniendo el modelo más parsimonioso posible.

26

Page 42: Sistema de Identificación de un modelo hidráulico no ...

3.3 Identificación no lineal

3.3.3. Polinomio NARMAX

La teoría de NARMAX ha sido desarrollada por Stephen Billings perfeccionando esta me-todología de identificación no lineal; el modelo más utilizado es la representación NAR-MAX de forma polinómica que se representa en la ecuación 3.14, definiendo x(k) enla ecuación 3.15. Finalmente, la estructura que define el modelo NARMAX es la figura3.11.

y(k) = Θ0 +

n∑ii=1

Θi1xi1(k) +

n∑i1=1

n∑i2=i1

Θi1i2xi1(k)xi2(k) + · · ·

+

n∑i1

· · ·n∑

il=il−1

Θi1i2···ilxi1(k)xi2(k) · · · xil(k) + e(k)

(3.14)

Donde:

l es el grado de la no linealidad polinómica.

Θi1i2···im son parámetros del modelo.

n = ny +nu +ne es la suma total de los retrasos de las señales de la entrada, saliday ruido.

.

xm(k) =

y(k −m) 1 ≤ m ≤ nyu(k − (m− ny)) ny + 1 ≤ m ≤ ny + nu

e(k − (m− ny − nu)) ny + nu + 1 ≤ m ≤ ny(3.15)

La ventaja principal es que los polinomios en forma de potencia son funciones suaves ycontinuas en todo punto. Lo anterior se comprueba del teorema de Weiertrass (contempo-ráneo a las series de Volterra) para que cualquier función continua definida en un espaciocerrado puede aproximarse uniformemente utilizando un polinomio en forma de potencia.Los beneficios según (Pagano,Filho,Plucenio)[22] del uso de la representación polinomialNARMAX es que ofrece una representación global tal que permite representar la dinámicaglobal del sistema, y no solo la dinámica alrededor de un determinado PE. Otra caracterís-tica es que permite cuantificar la complejidad del modelo acorde al grado de no linealidadel número de términos y el retardo máximo utilizado en la salida, entrada o ruido delsistema.

27

Page 43: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

Figura 3.11 Estructura del polinomio NARMAX. [23]

El principal inconveniente de la estructura polinómica NARMAX es cuando se usan paradescribir comportamientos severamente no lineales, es decir cuando el conjunto de datospresenta no linealidades que no se pueden expresar mediante los polinomios; para estoscasos se recomienda usar el modelo racional Narmax o funciones Wavelet.

3.3.4. Modelo NARXEs una estructura que se deriva del modelo polinómico NARMAX, el objetivo de estemodelo es analizar solo los términos no lineales que intervienen en la respuesta del sistemasin tener en consideración el ruido o los términos relacionados con el ruido. Es un modelode estructura que en ocasiones basta para modelar un sistema que no se ve afectado enmayor medida por el ruido. La ecuación que mejor representa este comportamiento es laecuación 3.16 que se deriva de la ecuación 3.13. Como no se consideran términos del ruidoxm(k) de la ecuación 3.15 queda definido en la ecuación 3.17.

y(k) = F [y(k − 1), y(k − 2),··· , y(k − ny),

u(k − d), u(k − d− 1)···, u(k − d− nu)] + e(k)(3.16)

xm(k) =

{y(k −m) 1 ≤ m ≤ nyu(k − (m− ny)) ny + 1 ≤ m ≤ ny + nu

(3.17)

Conforme la definición en la ecuación 3.18 (Billings) [14] establece que el principal ob-jetivo de los métodos NARMAX es encontrar un mapeo no lineal F (.) definido en la

28

Page 44: Sistema de Identificación de un modelo hidráulico no ...

3.3 Identificación no lineal

ecuación 3.19. Se estable un error de predicción en la ecuación 3.20 tiene el objetivo deser le menor posible ya que busca que la diferencia entre la respuesta del sistema y la res-puesta del modelo sea cercana a cero; en el caso ideal las dos señales deben ser idénticastal que el comportamiento del modelo sea el mismo que el comportamiento del sistema,en la práctica existen algunas diferencias que son parte de la naturaleza del ruido por sunaturaleza estocástica.

y[k] = [y(k − 1), y(k − 2),··· , y(k − ny)]

u[k] = [u(k − 1), u(k − 2),··· , u(k − ny)]

ξ[k] = [ξ(k − 1), ξ(k − 2),··· , ξ(k − ny)](3.18)

y(k) = F (y[k−1], u[k−1], ξ[k−1]) + ξ(k) (3.19)

ξ(k) = y(k)− y(k|k − 1) (3.20)

y(k|k − 1) = F (y[k−1], u[k−1], ξ[k−1]) (3.21)

Donde:

y(k|k − 1) es referido como la predicción de un paso adelante.

El principal inconveniente de los métodos NARMAX es el diccionario o el número de tér-minos que se deben considerar, es decir existe un número de términos M que pueden o nointervenir en la respuesta del sistema, la problemática radica en que este número puede sermayor conforme más términos se consideren. Como existen infinitos términos debido a lascombinaciones entre ellos, combinaciones con sus pasados, combinaciones con términoselevados al cuadrado o cubo, existen muchas variantes que se deben considerar, en otraspalabras; si el diccionario no está lo suficientemente enriquecido pueda existir que un tér-mino no considerado afecte a la respuesta del sistema, generando a su vez que el modelonunca logre llegar a la respuesta deseada puesto que necesita del término no considerado.(Billings) [14] establece que la ecuación 3.22 determina el total de los términos poten-ciales para NARMAX y la ecuación 3.23 determina el total de los términos potencialespara NARX. En los resultados obtenidos solo pocos términos son requeridos, la estructuraNARX puede ser observada en la figura 3.12.

M =(n+ l)!

n!l!(3.22)

Donde:

l es el grado de la no linealidad polinómica.

29

Page 45: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

n = ny +nu +ne es la suma total de los retrasos de las señales de la entrada, saliday ruido.

M =(n+ l)!

n!l!(3.23)

Donde:

l es el grado de la no linealidad polinómica.

n = ny + nu es la suma total de los retrasos de las señales de la entrada, salida yruido.

Figura 3.12 Estructura del polinomio NARX [23]

3.3.5. NARMAX Racional

El modelo racional consta de dos modelos polinomiales NARMAX unidos en una fracción,esta forma de estructurar al modelo le permite representar comportamientos singularesque no pueden ser representados por los modelos polinomiales, en otras palabras estasestructuras permiten identificar no linealidades de otro tipo, logrando identificar términosracionales que afecten directamente al comportamiento del sistema; lo anterior supone unagran ventaja ya que junto a los modelos Wavelet las no linealidades más severas pueden serrepresentadas por los modelos NARMAX racionales. La ecuación que define los modelosracionales NARMAX es la 3.24.

30

Page 46: Sistema de Identificación de un modelo hidráulico no ...

3.3 Identificación no lineal

y(k) =

B[y(k − 1),··· , y(k − ny), u(k − 1),

···, u(k − nu)], e(k − 1),··· , e(k − ne)] + e(k)

A[y(k − 1),··· , y(k − ny), u(k − 1),

···, u(k − nu), e(k − 1),··· , e(k − ne)] + e(k)

(3.24)

Donde:

u(k) es la secuencia de entrada y nu es el máximo retraso de la entrada .

y(k) Es la secuencia de salida y nu es el máximo retraso de la salida.

e(k) Es la secuencia de ruido y ne es el máximo retraso del ruido.

Acorde a (Billings) [14] el modelo racional tiene muchas más variantes tales como elmodelo integral descrito en la ecuación 3.25, el modelo recursivo descrito en la ecuación3.26 y el modelo salida afinada que se describe en la ecuación 3.27.

y(k) =

B[y(k − 1),··· , y(k − ny), u(k − 1),

···, u(k − nu), e(k − 1),··· , e(k − ne)A[u(k − 1),··· , u(k − nu)], e(k − 1),··· , e(k − ne)]

+ e(k) (3.25)

y(k) =

B[y(k),··· , y(k − ny), u(k − 1),

···, u(k − nu), e(k − 1),··· , e(k − ne)A[u(k − 1),··· , u(k − nu)], e(k − 1),··· , e(k − ne)]

+ e(k) (3.26)

y(k) =

∑mi=1 y(k − 1)Bi[u(k − 1),

···, u(k − nu), e(k − 1),··· , e(k − ne)]A[u(k − 1),··· , u(k − nu), e(k − 1),··· , e(k − ne)]

+

Bi[u(k − 1),··· , u(k − nu), e(k − 1),··· , e(k − ne)]

A[u(k − 1),··· , u(k − nu)], e(k − 1),··· , e(k − ne)]+ e(k)

(3.27)

Una de las mejores características de los modelos polinomiales NARMAX y del modeloNARMAX racional (que engloba todas las posibles combinaciones es decir es el casogeneral de los modelos NARMAX) es la importancia del conocimiento a priori del sistema.Por lo tanto, si se conoce que el comportamiento del sistema tiene términos o funciones quelo afecten de manera significativa como por ejemplo el caso en que se sepa a priori queel modelo cumple con un comportamiento sinusoidal, se puede alimentar el diccionariocon este término sinusoidal y el modelo NARMAX entregara el parámetro que relacionaeste término. Finalmente, de lo anterior se evidencia que, si se alimenta el diccionariocon nuevos términos que se conocen a priori del comportamiento del sistema, el modeloNARMAX mejorara la aproximación debido a que ahora considera términos importantesdel sistema.

31

Page 47: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

3.3.6. Redes Neuronales ArtificialesLas redes neuronales se definen como un modelo matemático compuesto por un gran nú-mero de elementos procesales organizados en niveles con el objetivo de procesar infor-mación por medio de un estado dinámico como respuesta a entradas externas. Aunqueexisten muchas definiciones de una red neuronal, básicamente se trata de estructuras co-nocidas como neuronas que componen capas de la red neuronal, las neuronas al formaruna interconexión en las capas responden a estímulos de entrada tal que el procesamientode información de las capas otorgue una salida esperada, dependiendo del algoritmo que seuse la red neuronal se ira adaptando conforme la salida sea similar a una salida esperada,esto lo logra variando los pesos internos de las neuronas [24]. La figura 3.13 muestra laestructura interna de una neurona compuesta a partir por las entradas x(k) que son altera-das directamente por los pesos Wnk produciendo una salida Un que se relaciona a partirde una función no lineal con la salida esperada.

Figura 3.13 Estructura de una neurona.[25]

Generalmente las redes neuronales son calibradas con un conjunto de entrenamiento deentradas y salidas conocidas una vez la red neuronal se ha entrenado; se agregan entradasque la red neuronal no ha conocido y se espera que la respuesta de la red neuronal seacoherente conforme a su entrenamiento.

Las principales ventajas que otorga una red neuronal son [24]:

Aprendizaje adaptativo. Tiene la capacidad de realizar tareas que se basan en unentrenamiento.

Autoorganización. La red neuronal por lo general crea conexiones entre neuronasque le permite cumplir su función; sin embargo, son tantas las conexiones que escasi imposible determinar cuáles son las conexiones específicas que determinan lasalida esperada.

Operación en tiempo real. Los cálculos de la red neuronal pueden ser realizados enparalelo lo que otorga una ventaja de disminución del tiempo de cómputo permi-tiendo que las redes neuronales respondan más rápido a los estímulos.

32

Page 48: Sistema de Identificación de un modelo hidráulico no ...

3.3 Identificación no lineal

La neurona como principal elemento de la red neuronal tiene los siguientes componentes[25]:

1. Conjunto de conexiones, pesos o sinapsis que determinan el comportamiento de laneurona.

2. Un sumador que se encarga de sumar todas las entradas multiplicadas por las res-pectivas sinapsis.

3. Una función de activación no lineal para limitar la amplitud de la salida de la neu-rona.

4. Un umbral exterior que determina el umbral por encima del cual la neurona se activa.

Figura 3.14 Estructura de una red neuronal.[26]

Las redes neuronales se organizan generalmente por capas; una red neuronal típica es laque se muestra en la figura 3.14. En la identificación de sistemas dinámicos no linealesel objetivo es construir redes dinámicamente impulsadas que puedan usarse a cabo pararealizar tareas de simulación y predicción del sistema. Por lo general las redes más usadaspara encontrar el modelo del sistema se llaman R-NARX-N (Neuronal network of no nli-near autoregressive moving average model with exogenous inputs) descrita en la ecuación3.28. La estructura que define la red neuronal se muestra en la figura 3.15.

33

Page 49: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 3. Identificación NARMAX

Figura 3.15 Estructura de una R-NARX-R.[14]

y(k) = F [x(k)] = w0 +

m∑i=1

wiφi(x(k)) + e(k) (3.28)

Donde:

xj(k)(j = 1, 2, ,··· , n) se definen como en la ecuación 2 3.15.

e(k) es el error del modelo.

φi(.)(i = 1, 2,··· ,m) son usualmente funciones de activación predefinidas.

x(k) = [x1(k), x2(k),··· , xn(k)]T (3.29)

Con relación al objetivo de la identificación no lineal en el capítulo 4 se estudiara todos losmétodos de parametrización para obtener los parámetros asociados a la estructura NAR-MAX, en otras palabras se desarrollaran algoritmos capaces de representar la estructuradel modelo junto con sus respectivos parámetros.

34

Page 50: Sistema de Identificación de un modelo hidráulico no ...

Capıtulo 4Estimación de parámetros delmodelo NARMAX.

Los parámetros juegan uno de los papeles más importantes en la estructura del modelo,una vez seleccionada la estructura del modelo se debe seleccionar el tipo de algoritmo queidentificara los parámetros del modelo, los parámetros son los coeficientes no variables queacompañan al término del modelo, la identificación correcta de los parámetros permite quela respuesta del modelo se ajuste notablemente a la respuesta del sistema. En consecuencia,este capítulo constara de la identificación de parámetros para sistemas no lineales partiendodel modelo polinómico NARMAX debido a sus grandes beneficios y el conocimientoa priori de que el sistema que se estudió en el capítulo 3 no posee un comportamientoseveramente no lineal, pero la ecuación diferencial es una ecuación diferencial de primerorden no lineal.

La identificación de parámetros parte principalmente del algoritmo de métodos de míni-mos cuadrados y se extiende en diferentes variantes, en adición de nuevas metodologíasque buscan obtener mejores resultados al algoritmo de métodos de mínimos cuadradostradicional, el método se remonta a principios del siglo XIX desarrollado por Carl Friede-rich Gauss en un trabajo brillante logra calcular la órbita de Ceres a partir de un númeroreducido de observaciones, el método original de Gauss requiere solo un mínimo de 3 ob-servaciones y todavía es el utilizado en la actualidad para el cálculo de las orbitas [27]. Elmétodo de mínimos cuadrados parte de la combinación lineal de parámetros con vectores,lo datos tienen asociados unos vectores canónicos ortonormales que obedecen a un basede vectores ortonormales, el principal objetivo del algoritmo es encontrar la combinaciónideal idónea que describe el comportamiento de los datos. EL método de mínimos cuadra-dos es ampliamente usado en la gama de la ingeniería, física y matemáticas enfocándoseen la primera para identificar comportamiento de variable físicas que se relacionan a lossistemas, el gran beneficio es que este método otorga un cálculo del error de predicción enla identificación de parámetros ajustando su comportamiento para obtener el mejor des-

35

Page 51: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 4. Estimación de parámetros del modelo NARMAX.

criptor del sistema. Finalmente se deben describir las variantes del método de mínimoscuadrados con las particularidades para la identificación de sistemas no lineal, los algorit-mos permiten obtener de mejor manera una clasificación de la importancia de los términosen la respuesta del sistema y el cálculo de los parámetros del modelo.

4.1. Mínimos cuadrados ortogonales OLSEl método de mínimos cuadrados ortogonales es una variante de los mínimos cuadradoscomunes con la adición del método de Gram-Schmidt; acorde a (Billings) [14] la idea bá-sica del método es definir e introducir un modelo auxiliar cuyos términos son ortogonalessobre el conjunto de datos de estimación con el fin de que cada coeficiente del modelo indi-vidual se pueda estimar secuencial e independientemente de los otros términos del modeloen presencia de ruido de medición correlacionado.

La principal ventaja de este algoritmo es la de proporcionar estimaciones imparciales decada coeficiente midiendo la contribución de cada termino que hace en la variación dela salida del sistema, OLS (orthogonal least squares) implementa el método de seleccióndirecta del modelo de subconjunto y también es capaz de estimar los estimadores de pa-rámetros; transformando el conjunto de regresores en vectores de base ortogonal [28]. Laecuación 4.1 define la representación paramétrica general de la respuesta con el regre-sor.

y(k) =

M∑i=1

θipi(k) + e(k) (4.1)

Donde:

y(k)(k = 1, 2, 3···, N) es la secuencia de salida donde N es el número de datosmedidos.

pi(k) = pi(x(k))(i = 1, 2, 3···,M) son los regresores formados por algunas combi-naciones de variables de modelo predeterminadas elegidas de la ecuación 4.2 dondeMes el número de términos considerados.

θi(i = 1, 2, 3···,M) son los parámetros del modelo.

e(k) es la señal de error del sistema.

x(k) = [x1(k), x2(k),··· , xn(k)]T (4.2)

4.1.1. Ortogonalización de Gram-SchmidtEl procedimiento de Gram-Schmidt es un algoritmo que busca obtener una base ortogo-nal a partir de otra que no lo es, este algoritmo permite construir generalmente una baseortonormal a un conjunto de vectores procedentes de una base original que no son orto-normales en el mismo espacio vectorial. Acorde a lo anterior se define V como un espacio

36

Page 52: Sistema de Identificación de un modelo hidráulico no ...

4.1 Mínimos cuadrados ortogonales OLS

vectorial con producto interno, tal que todo subespacio W con una base tiene al menoruna base ortogonal y una base ortonormal. Si B = v1, v2,··· , vk es cualquier base de Ventonces β = u1,··· , uk es una base ortogonal en donde la ecuación 4.3 define el procesode gran-Schmidt.[29]

u1 = v1

u2 = v2 −〈v2, u1〉〈u1, u1〉

u1

u3 = v3 −〈v3, u1〉〈u1, u1〉

u1 −〈v3, u2〉〈u2, u2〉

u2

uk = vk −〈vk, u1〉〈u1, u1〉

u1 −〈vk, u2〉〈u2, u2〉

u2 − · · · −〈v2, uk−1〉〈uk−1, uk−1〉

uk−1

(4.3)

4.1.2. Factorización QRAplicando el método de Gram-Schmidt se deduce la factorización QR, tal que si A es unamatriz n+ n con columnas linealmente independientes, entonces A puede ser factorizadade la forma A = QR, donde Q es una matriz m×n que forma una base ortonormal ϕ(A)y R es una matriz nxn triangular superior e invertible con componentes positivas en sudiagonal principal.

Sean a1, a2,··· , an las columnas deA y sean q1, q2,··· , qn los vectores obtenidos al ortonor-malizarlas según el proceso de Gram-Schmidt. DefiniendoQ en la ecuación 4.4, cada ai escombinación lineal de q1, q2,··· , qn deben existir escalares rij tal que satisfaga la ecuación4.6.[30]

Q = [q1, q2, · · · , qn] (4.4)

ai = r1iq1 + · · ·+ rniqn = Q

r1i...rni

(i = 1,··· , n) (4.5)

A = [a1, · · · , an] =

Qr11...

0

. . . Q

r1n...rnm

= QR (4.6)

4.1.3. Definición del OLSConsecuentemente (Billings) [14], el principal objetivo del algoritmo OLS es transformarel modelo de la ecuación 4.1 en un modelo similar cuyos regresores o términos sean or-togonales entre sí, obteniendo el modelo en la ecuación 4.7 que refleja el comportamiento

37

Page 53: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 4. Estimación de parámetros del modelo NARMAX.

de los parámetros con el regresor inicial. La principal importancia es obtener los paráme-tros que son combinación lineal y formar parte de una base que genera los datos de salidaconforme la varianza de los datos de entrada.

y(k) =

M∑i=1

giwi(k) + e(k) (4.7)

Donde:

wi(k)(i = 1, 2,··· ) ,M son ortogonales sobre le conjunto de datos de estimación deN muestras y M es la cantidad de términos considerados; cumpliendo la condiciónen la ecuación 4.8 y 4.9.

N∑k=1

wi(k)wj(k) =

{di, i = j0, i 6= j

(4.8)

di =

N∑k=1

w2i (k) 6= 0 (4.9)

Suponiendo que los términos del modelo pi(k)(i =, 1, 2···,M) son linealmente indepen-dientes sobre el conjunto de datos de estimación de N muestras se aplicara el método deGram-Schmidt y la factorización QR para poder obtener las ecuaciones 4.10 y 4.11. Parael cálculo de los gi de la ecuación 4.7 y los cálculos de los parámetros θi se usaran lasecuaciones 4.12 y 4.13.

w1(k) = p1(k)

w2(k) = p2(k)− a1,2w1(k)

w3(k) = p3(k)− a1,3w1(k)− a2,3w2(k)

...

wm(k) = pm(k)−m−1∑r=1

ar,mwr, (m = 2, 3,··· ,M)

(4.10)

ar,m =

∑Nk=1 pm(k)wr(k)∑N

k=1 w2r(k)

, (1 ≤ r ≤ m− 1) (4.11)

gi =

∑Nk=1 y(k)wi(k)∑N

k=1 w2i (k)

, (i = 1, 2,··· ,M) (4.12)

38

Page 54: Sistema de Identificación de un modelo hidráulico no ...

4.1 Mínimos cuadrados ortogonales OLS

θM = gM

θM−1 = gM−1 − aM−1,MθM

θM−2 = gM−2 − aM−2,M−1θM−1 − aM−2,MθM

...

θm = gm −M∑

j=m+1

am,jθj , (m = M − 1,M,··· , 1)

(4.13)

4.1.4. Error Reduction RatioEl pilar fundamental de los algoritmos de identificación es el error reduction ratio (ERR)introducido por (Billings) [14], el gran valor de la tasa de reducción de error es la capacidadpara clasificar la importancia de cada termino a la respuesta, es decir que se puede clasificaren porcentaje la cantidad de aporte del término a la respuesta de la salida del sistema. Estopermite clasificar los términos del sistema con sus correspondientes parámetros desde eltérmino que ofrece mayor aporte a la respuesta hasta el menor termino. Se parte de lasuposición de que el ruido e(k) en el modelo de la ecuación 4.7 no está correlacionadacon las salidas pasadas del sistema, en consecuencia la ecuación que define la energía ovarianza de salida se expresa en la ecuación 4.14.

1

NY TY =

1

N

M∑i=1

g2iwTi wi +

1

NeT e (4.14)

Se establece que la variación de la salida consta de dos partes de la ecuación4.14, 1

N

∑Mi=1 g

2iw

Ti wi la primera parte es la salida deseada, esta salida debe se explica

por la importancia de los regresor y consecuentemente 1N e

T e la segunda parte es lavarianza de inexplicable relacionada con el ruido.

Por lo tanto, asumiendo que la respuesta no se ve afectada por el ruido, se puede decir quela primera parte es el incremento de la varianza de salida deseada explicada por el vectorortogonalizado wi y el i th ERRi definido en la ecuación 4.15. La importancia del ERRes la capacidad de transformar una ecuación no parsimoniosa de, por ejemplo, un modelode 35 términos a un modelo parsimonioso de 5 términos, donde los últimos tienen elmayor de valor de ERR. Concluyendo se puede acortar los algoritmos de identificación nolineal NARMAX considerando los términos de mayor importancia al sistema.Note que elsímbolo 〈·〉 representa el producto interno entre dos vectores, debido a que las ecuaciones4.7 a la 4.13 se pueden expresar en forma matricial y calcular matricialmente, lo que seránecesario en los demás algoritmos del capítulo 4.

ERRi =g2i 〈wi, wi〉〈y, y〉

∗ 100 % =

⟨y, w2

i

⟩〈y, y〉 〈wi, wi〉

∗ 100 %, (i = 1, 2,··· ,M) (4.15)

39

Page 55: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 4. Estimación de parámetros del modelo NARMAX.

Otro fundamental concepto que surge a partir del ERR es el error señal ruido (ESR) quetiene la principal ventaja de determinar si los términos que se usen en el algoritmo son lossuficientes o no se está considerando un término importante en el algoritmo. Esto últimopermite alimentar al diccionario de forma significativa, también permite medir la relaciónde señal ruido que existe en varios casos de la teoría de comunicación, representando asíque tan corruptos de ruido están los datos, entre más baja la señal de ruido ofrece mayoresbeneficios. El ESR se define en las ecuaciones 4.16, 4.17 y 4.18.

1 =

∑Mi=1 g

2iw

Ti wi

yT y+eT e

yT y(4.16)

1 =

M∑i=1

ERRi + ESR (4.17)

ESR = 1−M∑i=1

ERRi (4.18)

4.1.5. Algoritmo OLS

La ejecución del algoritmo parte de las ecuaciones vistas anteriormente específicamentede la ecuación 4.7 a la ecuación 4.13, para el método de OLS se debe definir el regresorque se establece en la ecuación 4.19 con el objetivo de que se transformara a un modelo al-ternativo donde se puede medir el ERR y el ESR, este modelo alternativo permite calcularlos parámetros conforme se halla hecho la ortogonalización de Gran-Schimdt.

P =

p1(1) · · · p2(1) · · · pM (1)p1(2) · · · p2(2) · · · pM (2)

......

...p1(N) · · · p2(N) · · · pM (N)

(4.19)

Principalmente el algoritmo es una función en Matlab que consta de cuatro entradas y dossalidas, la entrada P es una matriz de N X M que corresponde al regresor de la ecuación,M cantidad de términos candidatos, y es la salida del sistema real, y N cantidad de datos.Las dos salidas del algoritmo corresponden a los parámetros θ y el ERR correspondientepara cada término y parámetro. El algoritmo requiere de muchos ciclos for debido a quelas ecuaciones de las que parten las sumas empiezan en diferentes intervalos o tienendiferentes valores iniciales, se necesita de la función triu por defecto de Matlab para podercrear una matriz triangular superior de uno.

40

Page 56: Sistema de Identificación de un modelo hidráulico no ...

4.1 Mínimos cuadrados ortogonales OLS

Algorithm 1 Orthogonal Least Squares algorithm1: function [θ, ERR] =(AlgoritmoOLS(P ,M ,N ,y))2: . Initial values of arrays.3: W ← N xM matrix filled with 04: aux← N x 1matrix filled with 05: aux2← N x 1matrix filled with 06: aux3← N xM matrix filled with 07: final← N xM matrix filled with 08: primera←M x 1matrix filled with 19: a = triu(primera)← Top triangular matrix filled with 1

10: . Initialize vector W11: for k ← 1 to N do12: W (k, 1)← P (k, 1)

13: end14: r ← 1← counter15: for m← 2 to M do16: for r ← 1 to m− 1 do17: . Calculation of the values of a 4.1118: for k ← 1 to N do19: aux(k, 1)← P (k,m) ∗W (k, r)20: aux2(k, 1)←W (k, r) ∗W (k, r)

21: end22: . Calculation of the values of a*wr 4.1123: a(r,m)← sum(aux)/sum(aux2)24: for k ← 1 to N do25: aux3(r, k)← a(r,m) ∗W (k, r)

26: end27: final← sum(aux3)

28: end29: . Calculation of the values of wr 4.1030: for k ← 1 to N do31: W (k,m)← P (k,m)− final(1, k)32: end33: . Reset Values34: aux← zeros(N, 1)35: aux2← zeros(N, 1)

36: end37: . Calculation of the values of g 4.1238: aux4← N x 1matrix filled with 039: aux5← N x 1matrix filled with 040: g ←M x 1matrix filled with 141:42: for i← 1 to M do43: for k ← 1 to N do44: aux4← y(k) ∗W (k, i)45: aux5←W (k, i) ∗W (k, i)

46: end47: g(i, 1)← sum(aux4)/sum(aux5)

48: end49: . Algorithm for calculating θ values 4.1350:51: [θ]← Calcularcong(g, a,M,N)

41

Page 57: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 4. Estimación de parámetros del modelo NARMAX.

Algorithm 2 Orthogonal Least Squares algorithm (continued)52: ERR← 1 x M matrix filled with 053:54: for i← 1 to M do55: ERR(1, i)← (g(i, 1)2) ∗ (dot(W (:, i),W (:, i))/dot(y, y))

56: end57: ESR← 1− sum(ERR)58:59: end Function

El algoritmo 3 se usara en los siguientes métodos de parametrización para los sistemasno lineales, ya que tiene la particularidad de entregar los θ es decir los parámetros delmodelo, este algoritmo en particular recibe de entrada la Matrix g que corresponde a los gde la ecuación 4.7, la matriz triangular a que se forma conforme la ecuación 4.12, M es lacantidad de términos candidatos y N cantidad de datos. La salida son los parámetros tethaque se necesitan en el algoritmo 1.

Algorithm 3 Calculate θ values with matrix a and vector g1: function [θ] =(Calcularcong(Matrizg,MatrizA,M,N))2: θ ← 1 x M matrix filled with 03: Matrizg ←Matrixg′

4: θ(1,M)←Matrizg(1,M)← Reduce matrix5: aux4← 1 x M matrix filled with 06: . Calculation of the values of θ 4.137: for i← 1 to M − 1 do8: m←M − 19: j ← 0

10: for l← 1 to M −m do11: j ← m+ l12: aux(1, j ←MatrizA(m, j) ∗ θ(j)13: end14: θ(1,m)←Matrizg(1,m)− sum(aux)15: aux4← zeros(1,M)

16: end17: end Function

4.2. Minimos cuadrados ortogonales con regresion haciaadelante FROLS

El anterior método, aunque es efectivo no logra capturar el comportamiento relacionadocon el sistema ya que no considera la relación con el ruido. Se sabe que el modelo esalimentado con datos de entrenamiento y datos de prueba, los datos de entrenamiento soncon los que trabaja el algoritmo de identificación y los datos prueba es para medir el com-portamiento del modelo obtenido por el algoritmo. El anterior algoritmo captura el com-portamiento netamente de los datos de entrenamiento y no el comportamiento de prueba,concluyendo que el modelo esta sesgado del comportamiento real de la planta.

La solución planteada por (Billings)[14] es el algoritmo forward regression OLS (FROLS)

42

Page 58: Sistema de Identificación de un modelo hidráulico no ...

4.2 Minimos cuadrados ortogonales con regresion hacia adelante FROLS

cuyo objetivo es lograr obtener todos los parámetros del modelo relacionados con el ruido.Se parte de un modelo NARX que es el caso básico y luego se formulara el algoritmo com-pleto para la identificación de sistemas no lineales NARMAX. (Billings) [14] demuestraque si se llegase a cambiar la posición de un pi(k) en la ecuación 4.19 puede afectar el or-den de los términos de acuerdo con el criterio ERR. Se sabe que por lo general el términoen la primera posición tendrá un mayor valor de ERR sin embargo al cambiar este terminode lugar puede que disminuya su valor de ERR. El algoritmo FROLS busca satisfacer laimportancia de la organización donde ordena correctamente los cálculos obtenidos por elOLS obteniendo los mejores coeficientes.

Se define el diccionario D como el conjunto de los términos independientes de la entrada,salida, y ruido además de todas las posibles combinaciones entre los pasados de la entrada,salida y ruido con posibles diferentes órdenes de cada una de las anteriores. La ecuación4.20 define los anteriores criterios. La importancia del diccionario es que se va a medirtodos los posibles términos que afecten al comportamiento del sistema, si un término noesté incluido en el diccionario no será considerado por el algoritmo y será ignorado por talmotivo la importancia del diccionario recae en la efectividad del algoritmo FROLS parapoder identificar los términos no lineales del sistema.

pm(k) = y(k −my,1) · · · y(k −my,my)u(t−mu,1) · · ·u(t−mu,mu)

e(t−me,1) · · · e(t−me,me)(4.20)

Donde p1(·) ≡ 1 y se definen los términos en la ecuación 4.21.

1 ≤ my,1 ≤ my,2 ≤ · · · ≤ my,my ≤ ny1 ≤ mu,1 ≤ mu,2 ≤ · · · ≤ mu,mu ≤ nu1 ≤ me,1 ≤ me,2 ≤ · · · ≤ me,me ≤ ne

(4.21)

Otra forma de observar la representación en la ecuación 4.20 es transformando la ecuación4.22 en la ecuación matricial donde se observan los términos y sus representaciones, debetenerse en cuenta que es un posible ejemplo de cómo debe formarse la matriz P .

1 0 0 0 0 0 · · ·1 y(1) 0 u(1) 0 e(1) · · ·1 y(2) y(1) u(2) u(1) e(2) · · ·1 y(3) y(2) u(3) u(2) e(3) · · ·

1... y(3)

... u(3)...

...

1...

......

......

...1 y(N − 1) y(N − 2) u(N − 1) u(N − 2) . . . Mterminos(N)

(4.22)

Para calcular el número de las combinaciones de los términos que más contribuyentes alcomportamiento del sistema por lo general se deduce de la ecuación 4.23.

43

Page 59: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 4. Estimación de parámetros del modelo NARMAX.

M =

(n+ ll

)=

(n+ l)!

n!l!(4.23)

Donde:

n = ny + nu + ne para el modelo NARMAX.

n = ny+u para el modelo NARX.

l es el grado del polinomio a considerar.

ny es el máximo retraso de salida.

nu es el máximo retraso de entrada.

ne es el máximo retraso de ruido.

Para obtener las combinaciones más importantes se puede hacer uso de las propiedades dela combinatoria que se describe en la ecuación 4.24, se puede obtener de forma recursivalas combinaciones de términos más importantes que se deben considerar en el modelo.Note que si se conoce un término a priori desde el modelamiento es posible agregar alregresor para ser evaluado en el algoritmo.

(n+ 1

k

)=

(n

k − 1

)+

(n

k

)(4.24)

4.2.1. Algoritmo FROLSLa parte esencial del FROLS es la organización correcta de la matriz del regresor en con-secuencia se buscará una optimización basado en el OLS, pero en esta ocasión otorgándolemás importancia al ERR dado que será este el que definirá el curso del algoritmo. Inicial-mente se deben definir los vectores de la entrada y el regresor P en la ecuación 4.25 y 4.26considerando que N son el número total de datos y M es el número total de candidatos.(Billings) [14] establece un diccionario en la ecuación 4.27 que se define como la ecuación4.22. La problemática es encontrar un diccionario Dm0 de menor dimensiones al conjuntoD inicial donde se encuentren las columnas asociadas a los mejores términos que descri-ben el sistema, nótese que cada termino está representado por una columna definida en eldiccionario P en la ecuación 4.22.

y = [y(1), y(2),··· , y(N)]T (4.25)

pm = [pm(1), pm(2),··· , pM ](m = 1, 2,··· ,M) (4.26)

D = [p1, p2,··· , pm](m = 1, 2,··· ,M) (4.27)

DMo = [α1, α2,··· , αMo ] (4.28)

44

Page 60: Sistema de Identificación de un modelo hidráulico no ...

4.2 Minimos cuadrados ortogonales con regresion hacia adelante FROLS

El objetivo principal es encontrar las columnas αMo de más importancia que tienen aso-ciadas un término contribuyente al comportamiento del sistema. Note que el tamaño encolumnas del diccionario final DMo

es menor al tamaño en columnas del diccionario ini-cial D. El primer paso del algoritmo es calcular los valores iniciales que darán rumbopara determinar los mejores términos y parámetros del algoritmo, es fundamental enten-der que el diccionario inicial D a medida de las consecutivas iteraciones ira disminuyendosu tamaño conforme el ESR vaya disminuyendo menor a una tolerancia establecida. Lasecuaciones 4.29-4.49 son similares al algoritmo OLS, pero se inicializa con la ecuación4.26.

pm = qm(m = 1, 2,··· ,M) (4.29)

σ = yT y (4.30)

g(1)m =yT qmqTmqm

(4.31)

ERR(1)[m] = (g(1)m )2(qTmqm)/σ (4.32)

Como el ERR, a medida que pasen las iteraciones hasta el número total de candidatos,posiblemente será un vector de dimensiones 1XM , se debe obtener la posición y el valordel máximo ERR, esto quiere decir que se selecciona el mayor ERR de los candidatosiniciales.

l1 = arg maxERR(1)[m](1 ≤ m ≤M) (4.33)

A continuación se define la primera columna del diccionario DM0en la ecuación

4.34

α1 = pl1 (4.34)

q1 = pl1 (4.35)

g1 = gl1 (4.36)

err[1] = ERR(1)[l1] (4.37)

a1,1 = 1 (4.38)

45

Page 61: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 4. Estimación de parámetros del modelo NARMAX.

Subsecuentemente acorde al número de iteraciones totales del algoritmo S se deben de-finir las ecuaciones 4.39-4.49, considerando que al final el ESR será quien determine laterminación del algoritmo cuando sea menor a la tolerancia definida por el usuario.

m 6= l1,m 6= l2,··· ,m 6= ls−1 (4.39)

La notación deD−Dm−1 significa que el diccionario inicial debe disminuírsele el tamañoextrayendo la mejor columna obtenida en el algoritmo.

q(s)m = pm −s−1∑r=1

pTmqrqTr qr

, pj ε D −Dm−1(m = 1, 2,··· ,M) (4.40)

g(s)m =yT q

(s)m

(q(s)m )T q

(s)m

(m = 1, 2,··· ,M) (4.41)

ERR(s)[m] = (g(s)m )2[(q(s)m )T q(s)m ]/σ(m = 1, 2,··· ,M) (4.42)

qs = q(s)ls

(4.43)

gs = g(s)ls

(4.44)

ar,s = (qTr pls)/(qTr qr)(r = 1, 2,··· , s− 1) (4.45)

as,s = 1 (4.46)

err[s] = ERR(s)[ls] (4.47)

Finalmente, determinando la condición de parada del algoritmo en la ecuación 4.48, se de-be establecer anteriormente una tolerancia ρ. Calculando la matriz a como en la ecuacion4.49 y el vector g se debe hacer uso del algoritmo 3 para el cálculo de los parámetros θlogrando obtener todos los componentes de la ecuación 4.1.

ESR = 1−M0∑s=1

err(s) ≤ ρ (4.48)

46

Page 62: Sistema de Identificación de un modelo hidráulico no ...

4.2 Minimos cuadrados ortogonales con regresion hacia adelante FROLS

A =

1 a1,2 · · · a1,M0

0 1 · · · a2,M0

......

. . . · · ·0 · · · 1 aM0−1,M0

0 0 · · · 1

(4.49)

4.2.2. Mínimos cuadrados extendidosLos mínimos cuadrados extendidos (ELS) es el procedimiento para lograr una respuestadeseada a los sistemas lineales con la gran ventaja de reducir el error aproximado cambian-do los parámetros del modelo, en consecuencia, el algoritmo tiene la finalidad de buscaruna mejora considerable en la respuesta del modelo, debido a que entre más iteracionestranscurren el error se disminuye al ir cambiando los parámetros. Su fácil implementaciónhace del ELS uno de los algoritmos más prácticos dentro de toda la teoría de sistemasde identificación. Se parte de las ecuaciones 4.50 a la ecuación 4.53 para formular estealgoritmo.

y = [y(p), y(p+ 1),··· , y(N)]T (4.50)

ξ = [ξ(p), ξ(p+ 1),··· , ξ(N)]T (4.51)

θ = [a1, a2,··· ana, b1, b1,··· , bnb] (4.52)

X =

−y(p− 1) · · · −y(p− na) −u(p− 1) · · · −u(p− nb)−y(p) · · · −y(p+ 1− na) −u(p) · · · −u(p+ 1− nb)−y(p+ 1) · · · −y(p+ 2− na) −u(p+ 1) · · · −u(p+ 2− nb)· · · · · · · · · · · · · · · · · ·

−y(N − 2) · · · −y(N − 1− na) −u(N − 2) · · · −u(N − 1− nb)−y(N − 1) · · · −y(N − na) −u(N − 1) · · · −u(N − nb)

(4.53)

Donde:

y es la salida del modelo.

X es el regresor del modelo.

ξ es el ruido del modelo.

Para calcular el parámetro θ que corresponden a los parámetros del modelo es necesariousar las ecuaciones 4.54 y 4.55 mediante el uso de inversa de la matriz es fácil obtener losresultados.

47

Page 63: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 4. Estimación de parámetros del modelo NARMAX.

y = Xθ + ξ (4.54)

θ = (X−1X)−1XT y (4.55)

Finalmente, podemos calcular la nueva respuesta del modelo logrando una resta entre larespuesta del sistema y la del modelo, una vez con esto se calcula un error asociado,si el error no es menor que la tolerancia se recalculan los parámetros obteniendo unanueva respuesta del modelo y repitiendo el proceso anterior hasta que el error cumpla contolerancia establecida.

Se establece el número de generación en s = 0.

ε(s) = y(k)− y(k|k − 1) = y(k)−Xθ (4.56)

Se cambia el regresor o también en la práctica ha funcionado ortogonalizar con el métodode factorización QR recalcular el regresor, se vuelven a calcular los parámetros obteniendouna nueva respuesta del sistema. Con la ecuación 4.55 se vuelve a calcular los θ, parafinalmente calcular de forma iterativa el nuevo error de predicción.

x(k) = [−y(k − 1),··· ,−y(k − na), u(k − 1),··· , u(k − nb)] (4.57)

ε(s) = y(k)− y(k|k − 1) = y(k)− φθ(s) (4.58)

Finalmente se definen dos tolerancias δ1 y δ2 cuando algunos de los valores obtenidosen la ecuación 4.59 y 4.60 sean menores a las tolerancias el algoritmo se detiene, de locontrario seguirá iterando desde la ecuación 4.56.

n∑m=1

∣∣∣θ(s)m − θs−1m

∣∣∣∣∣∣θ(s)m

∣∣∣ ≤ δ1 (4.59)

N∑k=p

∣∣∣ε(s)(k)− ε(s−1)(k)∣∣∣2 ≤ δ2 (4.60)

4.2.3. Suma de la tasa de reduccion de erroresLa suma de las razones de reducción de errores (SERR) está asociada directamente alobtener los errores ERR de diferentes regresores, tal que cambiando los parámetros deretraso ny, nu en diferentes combinaciones se obtenga para cada par ny, nu un error aso-ciado; esto permite clasificar el rendimiento de los máximos retrasos y máximas salidasconsideradas, la función esta acotada entre 0 ≤ SERR(p, q) ≥ 1 [14].

48

Page 64: Sistema de Identificación de un modelo hidráulico no ...

4.2 Minimos cuadrados ortogonales con regresion hacia adelante FROLS

SERR(p, q) =

m∑i=1

ERR[p,q]i (4.61)

Donde:

q es el máximo retraso de entrada.

p el máximo retraso de salida.

Se tiene en cuenta que para una p fija el SERR(p,q) es una función no decreciente conrespecto al índice q el mejor retraso máximo de entrada (orden del modelo de entrada)es posible conocer el valor de q1 cuando la gráfica se vuelva plana. De manera similar elmejor retraso máximo (orden del modelo de salida) se puede determinar inspeccionandoel grafico en un punto p1 donde la gráfica también se vuelve plana.

4.2.4. Algoritmo NARMAXCon el fin de identificar correctamente los sistemas, se requieren algoritmos complejosque poseen en su mayoría mucho tiempo de cómputo, el algoritmo NARMAX es uno delos algoritmos que requieren poco tiempo (según se requiera) ya que puede clasificar lostérminos más importantes y evitarse el cálculo de parámetros para términos innecesarios,se vuelve complejo el algoritmo cuando se consideren una cantidad de términos enormetal que el cálculo inicial del ERR sea una matriz excesiva por lo tanto se recomiendan unacantidad de datos de entrada y salida de 500, 300 o 200 datos que se pueden usar para elconjunto de estimación y 200 para los datos de prueba.

(Billings)[14] formula el algoritmo general para un modelo NARMAX partiendo de laadición de la consideración de los términos involucrados por el ruido correlacionado o nocon la entrada y la salida. El algoritmo NARMAX es uno de los más potentes algoritmosya que tiene múltiples ventajas desde considerar los términos que afectan con el ruido,otorgar la importancia de cada uno de los términos, determinar los máximos retrasos desalida y de entrada, entre otras ventajas que se consideran. EL algoritmo NARMAX puedeser usado en las estructuras tanto polinómicas como racionales y es uno de los algoritmosmás frecuentemente usados en el campo de la ingeniería debido a su versatilidad, funcio-nalidad y excelente predicción de datos conforme el comportamiento del sistema tiene uncomportamiento no lineal. Para comprender este complejo algoritmo debemos entendertres modelos que se describen en las ecuaciones 4.62 y 4.63.

y(k) = f [p](y(k − 1),··· , y(k − ny), u(k − 1),··· , u(k − nu))

+f [pn](y(k − 1),··· , y(k − ny), u(k − 1),···

, u(k − nu), e(k − 1),··· , e(k − ne))+f [n](e(k − 1),··· , e(k − ne)) + e(k)

(4.62)

y(k) = f [p](x(k)) + f [pn](x(k), e(k)) + f [n](e(k)) + e(k) (4.63)

49

Page 65: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 4. Estimación de parámetros del modelo NARMAX.

El primero f [p] es el submodelo del sistema este modelo simplemente es un modelo NARXque no considera el ruido asociado, es decir solo considera la entrada, la salida, los pasadosde la entrada y los pasados de la salida como se relacionan entre sí. El segundo submodelof [pn] es el relacionado netamente con el ruido, por lo tanto, se observan los términos e(k)con sus respectivos pasados sin considerar la entrada ni la salida. El tercer submodelof [pn] es el que relaciona la entrada y la salida con el ruido en otras palabras en este seencuentran las mayores combinaciones ya que relaciona los pasados de la entrada saliday ruido con todos los términos que se necesiten observar. El algoritmo a continuaciónconsiste en identificar cada submodelo para poder formar el modelo NARMAX completoque reflejará exactamente el comportamiento no lineal de la planta. A continuación, sedividirá el algoritmo en pasos necesarios.

1. Se debe pre procesar los datos una vez se han obtenido los datos de entrada u(k) ylos datos de salida y(k) del sistema. Determinar qué cantidad de datos se usarán parael conjunto de entrenamiento y para el conjunto de prueba.

2. Para cualquier par de datos de ny y nu aplique el algoritmo OLS para graficar elSERR, con el SERR determine los mejores retrasos de entrada y salida.

3. Seleccione las variables significativas de entrada y salida rezagadas candidatas. Im-plica la determinación del orden del modelo.

4. Establezca e(k) en 0 y con los datos suministrados forme una regresor P inicial con-siderando solo las relaciones entre los términos de la entrada y salida sin considerarel ruido.

5. Identifique los parámetros del modelo con el algoritmo FROLS estableciendo unatolerancia según se requiera ρ1. La ecuación 4.64 determinan el submodelo del pro-ceso f [p]. El modelo obtenido en este paso esta descrito en la ecuación 4.65.

ESR = 1−Mp∑i=1

ERRi ≤ ρ1 (4.64)

y(k) =

Mp∑i=1

gm(k)wm(k) + e(k) (4.65)

Donde:

Mp corresponde a la cantidad de términos obtenidos en el FROLS.

6. Identificar el submodelo relacionado con el ruido f [pn] + f [n]. Con el modelo obte-nido se calcula el residuo inicial conforme la ecuación 4.66.

ε(0) = y(k)− y(k) = y(k)−Mp∑i=1

gmwn(k) (4.66)

7. Formule de nuevo el regresor inicial pero esta vez considerando el ruido ε(k) el pro-ceso tiene que cumplir con la ecuación 4.67. Recuerde que debe relacionar ahora los

50

Page 66: Sistema de Identificación de un modelo hidráulico no ...

4.2 Minimos cuadrados ortogonales con regresion hacia adelante FROLS

términos de la salida, la entrada el ruido y sus pasados estableciendo una toleranciaρ2 y aplicando de nuevo el algoritmo FROLS.

ESR = 1−M0+Mn∑

i=1

ERRi ≤ ρ2 (4.67)

Donde:

M0 corresponde a la cantidad de términos de la primera aplicación del FROLSen el algoritmo.

Mn corresponde a la cantidad de términos obtenidos en el FROLS relaciona-dos con el ruido.

8. Una los parámetros y términos obtenidos de forma Mp y Mn obteniendo el modelocompleto que se describe en la ecuación 4.68 y la ecuación 4.69.

f(x(k), ε(0)(k))) = f [p](x(k)) + f [pn](x(k), ε(0)(k)) + f [n](ε(0)(k)) (4.68)

f(x(k), ε(0)(k))) =

Mp+Mn∑i=1

θ(0)i zi(k) (4.69)

Donde:

zi(k) son los términos del modelo completo.

θi son los parámetros del modelo.

9. Siendo s = s + 1 se deben restimar los valores de los parámetros con el algorit-mo ELS y calculando los residuos de ε(s)(k) recursivamente en la ecuación 4.70.El algoritmo finaliza cuando el valor otorgado por la ecuación 4.71 es menor a latolerancia δ predefinida. En caso contrario cambie las tolerancias o el regresor re-gresando al paso 4.

ε(s)(k) = y(k)−Mp+Mn∑

i=1

θ(s−1)i zi(k) (4.70)

N∑k=1

∣∣∣ε(s)(k)− ε(s−1)(k)∣∣∣ ≤ δ (4.71)

10. Finalmente se valida el modelo ya sea con pruebas de correlación cruzada o con elcálculo del error cuadrático medio (ECM).

51

Page 67: Sistema de Identificación de un modelo hidráulico no ...

Capıtulo 5Implementación y Resultados

Según la metodología vista acerca de la identificación de sistemas se debe otorgar un mo-delo dinámico del sistema con base en la correcta selección de la estructura del modelo,la estimación de parámetros y la validación del modelo según un criterio en específico.A continuación, se desarrollarán todos los algoritmos estudiados y sus correspondientesresultados. Se parte de algunas funciones expuestas por (Billings) [14] para calibrar losalgoritmos tal que se asegure que no existan errores cometidos en el uso de los algoritmos.Exponiendo los resultados obtenidos por la dinámica de la planta para predecir su com-portamiento, una vez estimado los modelos se usará el ECM para medir la diferencia desu respuesta con la respuesta del sistema.

Note que se debe buscar un diccionario que capture la dinámica del sistema existiendo in-formación a priori antes de la identificación de sistema ya que en el cápitulo 2 se ha logradoobtener los términos del sistema, pero es necesario calcular sus parámetros. Finalmente,la idea es obtener un modelo parsimonioso que logre capturar el comportamiento del sis-tema, en adición de lograr clasificar la importancia de cada termino y su contribución a larespuesta del sistema acorde al criterio ERR.

5.1. Implementación del algoritmo OLS

El algoritmo OLS cumple un papel importante dentro de la identificación de sistemasno lineales, debido a que el algoritmo NARMAX es aquel que determina junto con elSERR los retrasos de salida, entrada y ruido del sistema, definiendo el orden del sistema.Para poder calibrar el algoritmo se parte de la tabla 5.1 referente a datos obtenidos porcuatro términos considerados; dicho de otra forma, un regresor P similar al obtenido en laecuación 4.22.

52

Page 68: Sistema de Identificación de un modelo hidráulico no ...

5.2 Implementación del algoritmo FROLS

x1 x2 x3 x4 y

9 -5 5 -1.53 9.081 -1 8 -0.39 7.872 -5 6 -3.26 3.018 -2 0 0.36 5.980 0 9 0.13 9.05

Tabla 5.1: Regresor de ejemplo.[14]

El resultado del algoritmo OLS se refleja en la tabla 5.2. Tal y como se observa, los pa-rámetros son iguales a los parámetros definidos por (Billings) [14] aunque existe una va-riación en el ERR obtenido, sin embargo aunque el valor es díferente representa la mismainformación logrando clasificar lós términos x3 y x1 como unos de los más importantesdentro del comportamiento del sistema mientras que los términos x2 y x4 no contribuyende manera significativa al sistema. Debido a que los parámetros del OLS son exactamenteiguales a los obtenidos por Billings se deduce que el algoritmo OLS está perfectamentecalibrado. En este algoritmo podemos ver la importancia del ERR que clasifica todos lostérminos del sistema, dicha clasificación cumple con un papel fundamental en el desarrollodel algoritmo FROLS.

Términos ParametrosOLS ParametrosBillings ERROLS %x3 0.9873 0.987342 50.60x1 0.8569 0.856853 47.03x2 0.5363 0.536339 2.35x4 0.5997 0.597685 0.0005

Tabla 5.2: Parámetros obtenidos por el algoritmo OLS.

Finalmente, el algoritmo OLS es una aproximación lineal al comportamiento del siste-ma que lograra obtener junto con el SERR la obtención del máximo retraso y salida delcomportamiento del sistema, note que el algoritmo OLS entrega el ERR correspondientea cada par combinación del SERR.

5.2. Implementación del algoritmo FROLSPara la implementación del algoritmo FROLS se siguieron los siguientes pasos fundamen-tales para calcular el algoritmo. El desarrollo del FROLS se programa mediante MATLAB,donde el objetivo principal es obtener los términos que afectan la respuesta del sistema consus correspondientes parámetros.

Se establece el orden de grado 3 para formular las posibles combinaciones.

Según la ecuación 5.1 se establece las combinaciones lineales más importantes, estose logra a través del comando nchoosek de Matlab.

53

Page 69: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

Se logro armar un diccionario que contenga todas las no linealidades en la ecuación1.

Se genera una secuencia de ruido aleatorio gaussiano con medida estándar 0.1 ymedia 0.

La secuencia de la entrada se establece entre [-1,1] como se observa en la figura 5.1.

El diccionario que se establece parte de la combinación de los pasados de las entradas y sa-lidas con sus respectivos ordenes en este caso se consideraron 35 términos candidatos, sinembargo, para aumentar la precisión se pueden obtener más términos candidatos conformeel ERR lo requiera, en otras palabras, un ERR inicial del 93 % indica que existen términoscandidatos no considerados mientras que un ERR inicial superior al 97 % indica que lamayoría de los términos candidatos se han considerado. Sin embargo, esta aproximaciónno indica cual es el termino faltante solo que existe algún termino que debe incluirse en eldiccionario para aproximar el modelo a la respuesta del sistema.

y(k) = −0,605y(k−1)−0,163y2(k−2)+0,588u(k−1)−0,240u(k−2)+ξ(k) (5.1)

Figura 5.1 Señal de entrada distribuida entre [-1,1].

El modelo descrito en la ecuación 5.1 proporcionado por (Billings) [14] corresponde a laclase NARX por consiguiente no posee una relación de los términos con el ruido, pero seagregó una secuencia de ruido acorde a la ecuación 4.1. La figura 5.1 muestra la secuenciade entrada usada mientras que la figura 5.2 está asociada a la secuencia de ruido para laalimentación del sistema.

54

Page 70: Sistema de Identificación de un modelo hidráulico no ...

5.2 Implementación del algoritmo FROLS

Figura 5.2 Señal de ruido aleatorio gaussiano con medida estándar 0.1 y media 0.

Finalmente, para obtener los términos de la ecuación se usa la teoría del algoritmo FROLS,la importancia de organizar correctamente el diccionario es un paso fundamental debido aque cambios en este pueden afectar el desarrollo del algoritmo, también se evidencia que eltiempo de cómputo es de 0.611360 segundos catalogándolo como un algoritmo eficiente.La ventaja del algoritmo FROLS es la capacidad para clasificar términos y cambiar suregresor conforme se vayan aumentando las iteraciones.

Los resultados obtenidos se muestran en la tabla 5.3 donde se comparan coeficientes obte-nidos con los ya mencionados, en adición se grafican la respuesta medida en la figura 5.3que corresponde a la respuesta del sistema, en este caso la respuesta de la ecuación 5.1 yla respuesta aproximada que corresponde a la salida del modelo obtenido por el algoritmoFROLS. Note principalmente que el ruido es gaussiano. Por lo general en la práctica el rui-do no se comporta de esta forma por lo que es necesario obtener los principales términosque relacionan al ruido con la entrada y salida del sistema, de otra forma el ruido pue-de comportarse como ruido blanco, rosa, rojo entre otros que tendrán como consecuenciasesgar la respuesta del modelo.

Términos ParametrosSistema ParametrosModelo ERRFROLS %y(k − 1) -0.605 -0.5998 57.0615u(k − 1) 0.588 0.6083 34.5095u(k − 2) -0.240 -0.2473 3.7098y2(k − 1) -0.163 -0.1611 2.0193

Tabla 5.3: Parámetros obtenidos por el algoritmo FROLS.

55

Page 71: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

Figura 5.3 Respuesta del sistema vs respuesta del modelo.

Tal y como se observa, las dos señales entre si son semejantes por lo que se determina queel algoritmo FROLS esta calibrado y es funcional para la siguiente tarea en el algoritmoNARMAX. Uno de los mayores beneficios es la capacidad de reducir cantidad de términosa unos cuantos que poseen la mayor contribución a la respuesta de salida debido al ERR,sin embargo es de interés analizar el SERR ligado al comportamiento de la ecuación ya quetrae consigo la reducción del algoritmo FROLS, debido a que indica los retrasos máximosde entrada y salida del sistema. Las figuras 5.4 y 5.5 muestran una superficie obtenidaa partir de las combinaciones entre los retrasos de salida y de entrada, note que se haevaluado el ERR para cada diccionario que se forma variando los retrasos, es decir seevalúan varios diccionarios como, por ejemplo, un diccionario que tenga orden de retraso 1en la salida y orden de retraso 1 en la entrada o también un diccionario que contenga ordende retraso 2 en la entrada y orden de retraso 1 en la salida, entre otras variantes.

Figura 5.4 SERR del modelo NARX en la ecuación 5.1.

56

Page 72: Sistema de Identificación de un modelo hidráulico no ...

5.2 Implementación del algoritmo FROLS

Figura 5.5 SERR del modelo NARX perspectiva lateral.

Las figuras 5.6 y 5.7 muestran como varía la estabilización del SERR conforme se aumentael número de retraso tanto en la salida como en la entrada, el punto especifico es donde sealcanza el mayor SERR posible seleccionando así la pareja de retraso máximo de entraday salida necesaria para futuros algoritmos. En la figura 5.5 el orden 4 en la entrada y elorden 4 en la salida son un punto que otorga un SERR de 0.985, se escoge este ordendebido a sus mínimas iteraciones comparadas con un punto ubicado con 6 de retraso desalida y 5 retrasos de entrada con un SERR de 1, es necesario calcular el SERR para cadasistema. Note que se debe seleccionar los retrasos de entrada y salida tal que el algoritmologre un SERR bueno pero que conlleve pocas iteraciones del algoritmo ya que a medidaque aumenta el orden de los retrasos aumenta la cantidad de términos a considerar.

Figura 5.6 Variación del SERR conforme el incremento del retraso de entrada del modeloNARX.

57

Page 73: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

Figura 5.7 Variación del SERR conforme el incremento del retraso de salida del modeloNARX.

5.3. Implementación del algoritmo NARMAXUna vez ensayado el algoritmo FROLS, se necesita testear el algoritmo NARMAX, este esuno de los algoritmos más difíciles debido a que se tiene en cuenta le relación con el ruido.La idea principal es identificar todos los términos relacionados con el ruido adyacente ala estructura del modelo, para poder calibrar este algoritmo es necesario usar la ecuación5.2 que describe un sistema donde interviene el ruido se deben en cuenta las siguientesconsideraciones que se hicieron para el desarrollo del algoritmo NARMAX.

y(k) = 0,5y(k − 1) + u(k − 2) + 0,1u2(k − 1)

+0,5e(k − 1) + 0,1u(k − 1)e(k − 2) + ξ(k)(5.2)

Se logró armar un diccionario que contenga todas las no linealidades en la ecuación5.2.

Se generó una secuencia de ruido aleatorio gaussiano con medida estándar 0.1 ymedia 0.

La secuencia de la entrada se estableció entre [-1,1] como se observa en la figura5.8.

El orden de los retrasos está determinado por el ser, los retrasos se establecieron enne = ny = nu = 2 el grado es 3 orden.

Se generó una secuencia de ruido aplicando en primer lugar el algoritmo FROLS.

El diccionario relacionado con el ruido llegó hasta orden 2 donde se ha logradoincluir los términos relacionados con el ruido. Se empleó el algoritmo ELS parareducir la estimación de parámetros, considerando que a medida de cada iteración

58

Page 74: Sistema de Identificación de un modelo hidráulico no ...

5.3 Implementación del algoritmo NARMAX

del algoritmo ELS se forma otra vez el diccionario relacionado con el ruido debidoa que la secuencia de ruido cambia.

Los parámetros obtenidos son idénticos a los relacionados con el ruido, se deduce de losdatos obtenidos que a medida que el ERR es considerablemente más pequeño inferioral 2 % del total, la dificultad aumenta para el cálculo de los parámetros. Otro factor quese descubre son las pocas iteraciones que tiene el algoritmo ELS dentro del algoritmoNARMAX para llegar a un resultado concreto, así mismo el algoritmo NARMAX requierede pocas iteraciones por lo tanto el tiempo de cómputo es de 12.75 segundos.

Las tolerancias para el submodelo F [p] se establecen en 0.04 mientras que las toleranciaspara el submodelo F [pn] + F [p] son de 0.0006, es lógico debido a que el submodelo F [p]

debe capturar solo los elementos que no dependen del ruido para poder en iteracionesfuturas entregar una secuencia de ruido que usara submodelo F [pn] + F [p] para calcularlos términos y parámetros que dependan del ruido. Note que en la práctica no se conocela secuencia de ruido ni se sabe si el ruido puede ser gaussiano, ruido blanco o de otraíndole.

La tabla 5.4 muestra los elementos seleccionados; tal y como se observa el termino u(k−2)es el que contribuye a la señal con 70.38 % mientras que el termino y(k − 1) aporta el26.17 %, en consecuencia, los términos relacionados con el ruido no aportan de manerasignificativa el sistema por consiguiente se puede deduce que el sistema no es afectado engran medida por el ruido. Lo anterior es una gran ventaja que ofrece el algoritmo ya quecon el porcentaje del ERR podemos observar el aporte del ruido a la respuesta del sistema,algo que no se lograría con los anteriores algoritmos, siendo el NARMAX el algoritmomás completo para la descripción de modelos no lineales descritos por polinomios.

Términos ParametrosSistema ParametrosModelo ERRFROLS %u(k − 2) 1 1.0108 70.3801y(k − 1) 0.5 0.5125 26.1701e(k − 1) 0.5 0.5353 0.6780u2(k − 1) 0.1 0.1131 0.2538

u2(k − 1)e(k − 2) 0.1 0.4581 0.1107Tabla 5.4: Parámetros obtenidos por el algoritmo NARMAX.

El principal inconveniente es formar el diccionario en virtud de que se tienen las combina-ciones más importantes, pero no existe una forma de encontrar las mejores combinaciones,por lo tanto, es deber del usuario observar cuales términos deben incluirse en el dicciona-rio, esto último representa una cantidad de esfuerzo debido a que existen muchas variantesy formas de combinaciones, es posible generar un algoritmo genético que obtenga los tér-minos relevantes y necesarios para el diccionario. En este caso se conocía a priori quetérminos son los más importantes, pero en la práctica esto es algo inusual a la hora de losdatos en sensores, datos estadísticos, entre otros. Note en la figura 5.8 que la señal de en-trada esta distribuida entre un rango de operación de [-1,1], mientras que la señal de ruidoen la figura 5.9 es una señal aleatoria gaussiana con medida estándar 0.1 y media 0.

59

Page 75: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

Figura 5.8 Señal de entrada distribuida entre [-1,1] para NARMAX.

Figura 5.9 Señal de ruido aleatorio gaussiano con medida estándar 0.1 y media 0.

La respuesta obtenida es la figura 5.10 que denota la respuesta medida correspondiente alos datos obtenidos a partir de la ecuación 5.2 y la respuesta aproximada relacionada conla respuesta del modelo, observarse como la respuesta medida es semejante a la respuestaaproximada indicando que el algoritmo cumple con la función de aproximar los paráme-tros y organizar los términos acorde al ERR, diferente al caso del FROLS es que en estealgoritmo se ha logrado identificar los términos e(k−1) y u2(k−1)e(k−2) correctamen-te. Debido a la anterior se asume que el algoritmo se encuentra calibrado. Es importantetener en cuenta que se deben calibrar los algoritmos antes de aplicarlos directamente a laplanta por si llegase a suceder un error asumirlo en la planta y no los algoritmos.

60

Page 76: Sistema de Identificación de un modelo hidráulico no ...

5.3 Implementación del algoritmo NARMAX

Figura 5.10 Respuesta del sistema vs respuesta del modelo NARMAX.

La importancia de relacionar los términos de ruido es analizar a profundidad la respuestadel sistema, este algoritmo tiene la mayor ventaja de evitar errores en el modelado mate-mático, ya que al describir términos no considerados por el modelado matemático organizade mejor forma acorde al ERR los posibles términos omitidos en la matemática aplicadaal sistema.

La figura 5.11 muestra el correspondiente SERR asociado al máximo número de retrasode la entrada y la salida, la figura 5.13 muestra el SERR asociado a la variación del retrasode la entrada dejando un punto de retraso de salida fijo, y de manera inversa la figura 5.14denota el SERR asociado a la variación del retraso de la salida dejando un punto de retrasode entrada fijo.

Figura 5.11 SERR del modelo NARMAX en la ecuación 5.2.

61

Page 77: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

Figura 5.12 SERR del modelo NARMAX perspectiva de estabilización de entrada.

Figura 5.13 Variación del SERR conforme el incremento del retraso de entrada del modeloNARMAX.

1 2 3 4 5 6 7 8 9

Retraso de entrada

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

SE

RR

ERR según el retraso de entrada

Se observa que la figura 5.11 y 5.4 son semejantes, pero la velocidad de estabilizacióndel SERR es mayor en el algoritmo NARMAX a la obtenida para un algoritmo NARXdebido a que se necesitan menos iteraciones para alcanzar un valor del SERR superiora 0.93 contrario al algoritmo NARX que necesita de más iteraciones. Denotando que elpunto fijo de retraso de salida y entrada puede tomarse como nu = ny = 2, el orden sepuede determinar incluyéndolo en el algoritmo.

62

Page 78: Sistema de Identificación de un modelo hidráulico no ...

5.4 Implementación del algoritmo NARMAX a la planta

Figura 5.14 Variación del SERR conforme el incremento del retraso de salida del modeloNARMAX.

1 2 3 4 5 6 7 8

Retraso de salida

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

SE

RR

ERR según el retraso de salida

5.4. Implementación del algoritmo NARMAX a la plan-ta

Para el sistema de planta se necesitan elaborar algunos ajustes a la entrada, debido a que senecesita una entrada que excite a diferentes frecuencias el sistema para lograr una capturacompleta del comportamiento del sistema. Esta entrada es conocida como PSRB (Pseu-dorandom binary sequence) definida como una señal periódica determinística que tienepropiedades similares al ruido blanco, esta señal conmuta entre valor de 1 a 0 pero laduración del cambio de estado, o mantenerse en estado 1 o 0 es aleatoria generalmentesiguiendo ruido blanco. Esta señal es ampliamente utilizada debido a la capacidad para laexcitación del sistema a diferentes frecuencias, lo que permite observar el comportamientodel sistema conforme la variabilidad de la frecuencia de la señal de entrada. La ecuaciónque define esta señal es la 5.3 [31].

u(n) = rem(a1u(n− 1) + · · ·+ aku(n− k), 2) (5.3)

rem(x, 2) es el resto de la división de x por 2.

La señal u(n) solo puede asumir los valores entre 0 y 1.

El vector [u(n− 1), · · · , u(n− k)] puede asumir solo 2k valores diferentes.

El periodo máximo que puede obtenerse es M = 2k − 1.

Para construir esta señal se necesita en Simulink utilizar integradores como se observa enla figura 5.15, esta figura debe incorporarse al modelo por lo tanto, la figura 5.16 muestracomo el modelo en Simulink queda desarrollado para que el sistema se excite a la señalPSRB, note que la señal debe adquirir un sumador ya que se necesita que la señal oscile

63

Page 79: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

entre [2,3] ya que entre [1,0] genera inconvenientes a la planta debido a que las condi-ciones iniciales se establecen en f(0) = 2. La figura 5.17 muestra la entrada PRBS alsistema.

Figura 5.15 Modelo de bloques para la señal PSRB.

Figura 5.16 Simulación final de la planta.

Figura 5.17 Señal de entrada PSRB distribuida entre [2,3] para la planta NARMAX.

0 20 40 60 80 100 120 140 160 180 200

Tiempo (s)

2

2.1

2.2

2.3

2.4

2.5

2.6

2.7

2.8

2.9

3

Valo

r de la e

ntr

ada

Señal de entrada

64

Page 80: Sistema de Identificación de un modelo hidráulico no ...

5.4 Implementación del algoritmo NARMAX a la planta

La figura 5.17 muestra finalmente la señal de entrada PSRB observe que la señal oscila en-tre valores superiores a las condiciones iniciales, en adición de que la señal posee múltiplesfrecuencias que excitaran a la planta. Una vez calibrados todos los algoritmos necesariosse requiere calcular en primera instancia y tal como se describe en capítulo 3 el SERRdebido a que otorga los correspondientes retrasos de entrada y salida necesarios para elalgoritmo FROLS, la figura 5.18 y la figura 5.19 muestran el comportamiento del SERRobtenido desde diferentes perspectivas, un caso peculiar observado es que a medida queaumentan las iteraciones en los retrasos, el SERR decrementa deduciendo que al añadirmás términos de los necesarios al diccionario, el SERR pierde su eficacia.

Figura 5.18 Vista lateral SERR de la planta con NARMAX.

Por consiguiente, es necesario obtener los mejores candidatos del sistema, debido a queincrementar el diccionario añadiendo más términos no garantiza que la respuesta mejore,deben ser los términos tales que contribuyan a la respuesta del sistema, por lo tanto, tér-minos menores al 2 % son despreciables para capturar el comportamiento del sistema, ano ser que se desee efectuar un control no lineal cuyos términos no lineales son de sumaimportancia.

Sin embargo, observando las figuras 5.20 y 5.21 podemos observar cómo se estabiliza elSERR en un valor cercano al 1 %, por lo tanto se toma un punto de retraso de entrada iguala 2 y retraso de salida igual a 2 (nu = ny = 2), como en el caso anterior de la implementa-ción del algoritmo NARMAX seleccionar retrasos superiores solo aumentarían el tiempode cómputo debido a que son más los términos candidatos que se deben evaluar note queel regresor tiene el tamaño de filas acorde al número de datos muestreados, se estableceque el tamaño de datos puede ser superior a 200 para poder identificar correctamente losparámetros.

65

Page 81: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

Figura 5.19 Vista frontal SERR de la planta con NARMAX.

La principal ventaja del SERR consta que no se necesitan calcular todas las combinacio-nes de diccionarios posibles de forma tradicional, sino que al contrario se logra evaluar losmejores retrasos. Para el grado definido se parte de la ecuación 2.17 donde se puede obser-var que el mayor grado es 2, en adición al diccionario se agregaron los términos elevadosa -1.5 debido a que es información a priori que puede adicionarse al diccionario y medirsu contribución a la respuesta del sistema.

y2(k − 1), u2(k − 1),u(k − 1)

y2(k − 1),

u(k − 2)

y2(k − 2), y(−1,5)(k − 1), y(−1,5)(k − 2)

(5.4)

Figura 5.20 Variación del SERR conforme el incremento del retraso de entrada de laplanta con NARMAX.

1 2 3 4 5 6 7 8 9

Retraso de entrada

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

SE

RR

ERR según el retraso de entrada

66

Page 82: Sistema de Identificación de un modelo hidráulico no ...

5.4 Implementación del algoritmo NARMAX a la planta

Figura 5.21 Variación del SERR conforme el incremento del retraso de entrada de laplanta con NARMAX

1 2 3 4 5 6 7 8

Retraso de salida

0.95

0.955

0.96

0.965

0.97

0.975

0.98

0.985

0.99

0.995

1

SE

RR

ERR según el retraso de salida

Con los algoritmos calibrados se aplicó el algoritmo NARMAX a la planta, la tabla 5.5refleja los parámetros y términos obtenidos. Resulta interesante observar que el terminoy(−1,5)(k − 1), se agregó al diccionario a priori y gracias al conocimiento de la planta,sin embargo, como refleja el SERR el principal termino que gobierna la contribución a larespuesta del sistema es el termino y(k − 1), es decir que el pasado de la salida obtieneun porcentaje de 99,998 %. Resulta peculiar que los otros términos no posean mayor ERRsuperior al 2 %, es decir que la planta netamente se puede comportar de manera lineal y secaptura la mayor parte de la información al linealizarla sin embargo para control no linealse ha descrito que el termino contribuye en menor medida a la respuesta del sistema formaparte de la ecuación 5.5 que describe el sistema.

Note que la figura 5.22 representa la señal de ruido. De antemano, la señal de ruido no esconocida debido a que no se puede medir el ruido sin embargo, el algoritmo NARMAXofrece una gran ventaja ya que necesita calcular una señal de ruido para el algoritmo ELS,esta señal de ruido es la que se obtiene una vez aplicado el ELS dentro de NARMAX,significa que el algoritmo NARMAX puede entregar la señal de ruido conforme la aproxi-mación del SERR sea más precisa superior al 95 %.

y(k) = 1,0655y(k − 1) + 0,0354u(k − 1)− 0,0792y(k − 4)

−0,0556y(−1,5)(k − 1) + e(k)(5.5)

67

Page 83: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

Términos ParametrosModelo ERRFROLS %y(k − 1) 1.0655 99.9988u(k − 1) 0.0354 0.0010y(k − 4) -0.0792 3.0349e− 05

u(k − 2)y2(k − 1)e(k − 4) -2.0617e+10 2.367e− 05

y(−1,5)(k − 1) -0.0556 1.6634e− 05

Tabla 5.5: Parámetros obtenidos por el algoritmo NARMAX para la planta.

Figura 5.22 Señal del ruido obtenida por NARMAX.

0 20 40 60 80 100 120 140 160 180 200

Tiempo (s)

-0.05

0

0.05

0.1

0.15

0.2

Valo

r del ru

ido

Señal de ruido

Figura 5.23 Señal de salida del modelo NARMAX calculada con el regresor final.

0 50 100 150

Tiempo (s)

3

3.5

4

4.5

5

5.5

6

Valo

r de la s

alid

as

Respuesta con datos de entrenamiento

Repsuesta medida

Respuesta aproximada

Finalmente se puede observar como la figura 5.23 refleja la respuesta aproximada (modelo)contra la respuesta medida (planta), esta respuesta se ha calculado a través del diccionario

68

Page 84: Sistema de Identificación de un modelo hidráulico no ...

5.4 Implementación del algoritmo NARMAX a la planta

que entrega NARMAX y los parámetros calculados según la ecuación 4.7. Resulta unadiferencia enorme con la respuesta obtenida en la figura 5.24 donde se observa la respues-ta aproximada (modelo) y respuesta medida (planta), en cuyo caso existe una diferenciaya que son señales semejantes, pero no iguales, esto se debe a que se calcula solo con laecuación 5.5 que es la ecuación que representa el sistema, es decir que en la practica lafigura 5.24 es la que realmente está mostrando el comportamiento del sistema aunque lafigura 5.23 demuestre que es más semejante. Finalmente se calcula el error cuadrático me-dio correspondiente a ECM=0.0429, indicando que es un modelo idóneo para representarla dinámica del sistema. La grafica que muestra como el error es convergente se muestraen la figura 5.25, note que tiende a cero es decir que a medida que transcurre el tiempo enel sistema las respuestas de la salida y del modelo son más semejantes.

Figura 5.24 Señal de salida del modelo NARMAX calculada con los parámetros.

0 200 400 600 800 1000 1200 1400 1600

Tiempo (s)

2

2.5

3

3.5

4

4.5

5

5.5

6

6.5

Valo

r de la s

alid

as

Respuesta medida

Respuesta aproximada

Figura 5.25 Señal de error entre la respuesta medida de los datos de la planta y la respuestaaproximada de los datos del modelo.

0 200 400 600 800 1000 1200 1400 1600

Tiempo (s)

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Valo

r del err

or

Señal del error

69

Page 85: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

5.5. Análisis de la dinámica no lineal del sistema.

El interés particular radica en obtener una planta que logre capturar las dinámicas no linea-les del sistema, debido a que se parte del sistema de la figura 2.5, es necesario analizar elrendimiento del algoritmo añadiendo perturbaciones en la entrada y salida del modelo, loanterior con el fin de obtener un comportamiento grafico congruente con un típico compor-tamiento no lineal de un sistema. La figura 5.26 muestra el diagrama de planta completo,añadiendo un ruido escalado por 100 en la entrada u de la planta, adicionalmente en lasalida se añade un ruido gaussiano escalado por 10; mientras que la figura 5.30 muestrael comportamiento de la planta conforme a la adición de perturbaciones en la entrada ysalida del sistema.

Las condiciones anteriores se forman en virtud del supuesto; de que en una planta físicaexiste ruido en la salida del sensor que no es posible modelar o aproximar, al igual queperturbaciones en la entrada del sistema como por ejemplo en los actuadores. Por tal moti-vo se destinan 3 casos de estudio para determinar el comportamiento no lineal de la plantaconforme a las variaciones en la entrada y salidas del sistema. Se propone tres estados parainiciar el análisis:

Caudal elevado.

Caudal estable.

Caudal bajo.

Figura 5.26 Simulación del sistema cónico no lineal con adición de ruido y salida delsistema.

70

Page 86: Sistema de Identificación de un modelo hidráulico no ...

5.5 Análisis de la dinámica no lineal del sistema.

Figura 5.27 Respuesta no lineal de la salida del sistema con adición de ruido en la entraday salida.

0 500 1000 1500 2000 2500 3000

Tiempo (s)

2

3

4

5

6

7

8

9

10

11

Valo

r de la s

alid

as

Respuesta medida

5.5.1. Caudal elevado.Realizando una nueva simulación considerando los términos más importantes del sistema,la figura 5.28 muestra la entrada con adición del ruido mientras que en la figura 5.29 seobserva la variación del ruido que se logra obtener a partir de la resta entre la salida mediday la salida estimada, sin embargo la figura 5.30 muestra el comportamiento de la planta yla simulación obtenida con el fin de determinar el comportamiento de la ecuación 5.6 quese obtiene aplicando el algoritmo NARMAX completo con los datos de entrada y salida yamencionados. La tabla 5.6 muestra el correspondiente término obtenido por el algoritmoNARMAX con su correspondiente ERR.

y(k) = 1,0001 ∗ y(k − 1)− 0,0992 ∗ u(k − 1) ∗ ξ(k − 1) (5.6)

Parámetro Término ERR%y(k − 1) 1.0001 99.9663

u(k − 1) ∗ ξ(k − 1) -0.0992 0.0115Tabla 5.6: Términos y parámetros con su correspondiente ERR del caudal elevado.

La simulación parte del supuesto de que la altura máxima es de 10 ft; el comportamientoque se refleja es que tiene un abruptos picos de subida donde alcanza una altura superior alos 12 ft, esto indica que a un caudal elevado el agua tendera sobrepasar la capacidad delcono generando un rebosamiento de agua, lo anterior tiene lógica ya que si la cantidad deflujo de salida es inferior a la cantidad de flujo de entrada el sistema tendera a llenarse has-ta rebosar la capacidad del tanque cónico. Note como existe un error de predicción entre

71

Page 87: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

la respuesta medida y la respuesta aproximada obteniendo un error cuadrático medio de1.32 %; la razón de este error tan elevado es la capacidad del algoritmo para lograr reac-cionar ante perturbaciones externas y ruidos en la salida, aunque se lograron identificartérminos que afecten al sistema; el modelamiento del ruido sigue siendo un factor estocás-tico clave que afecta en un mínimo porcentaje el error de predicción del modelo.

Figura 5.28 Entrada al sistema para el caudal elevado.

0 500 1000 1500 2000 2500

Tiempo (s)

2

2.5

3

3.5

4

4.5

5

5.5

6

6.5

Valo

r de la e

ntr

ada

Señal de entrada

Figura 5.29 Ruido del sistema para el caudal elevado.

0 500 1000 1500 2000 2500

Tiempo (s)

-0.5

0

0.5

1

1.5

2

2.5

Valo

r del ru

ido

Señal de ruido

72

Page 88: Sistema de Identificación de un modelo hidráulico no ...

5.5 Análisis de la dinámica no lineal del sistema.

Figura 5.30 Respuesta no lineal de la salida del sistema y la salida aproximada por elmodelo para el caudal elevado.

0 500 1000 1500 2000 2500

Tiempo (s)

0

2

4

6

8

10

12

Valo

r de la s

alid

as

Respuesta medida

Respuesta aproximada

5.5.2. Caudal estable.Para el caudal estable se logra obtener un comportamiento similar al caudal elevado sinembargo con una connotación diferente, debido a que la salida del sistema oscila en unvalor cercano a los 8 ft. La figura 5.31 muestra el comportamiento de la entrada con adiciónde un ruido gaussiano con una escala de 100, el objetivo es reducir el caudal de entrada a4 ft3/s reflejando un caudal medio suponiendo un comportamiento estable en una plantareal.

y(k) = 1,0000 ∗ y(k − 1)− 0,1238 ∗ u(k − 1) ∗ ξ(k − 1) (5.7)

Parámetro Término ERR%y(k − 1) 1.0000 99.9488

u(k − 1) ∗ ξ(k − 1) -0.1238 0.0180Tabla 5.7: Términos y parámetros con su correspondiente ERR del caudal estable.

Note como el ruido de la figura 5.34 tiende a oscilar en un valor cercano a cero, sin em-bargo, la respuesta del sistema y la respuesta del modelo están ilustradas en la figura 5.35alcanza una altura determinada de 8 ft es decir el 80 % de su capacidad, en otras palabras,el caudal de entrada estabiliza la salida en un 80 por ciento de la altura total del tanquepor lo tanto se observa un comportamiento estable, el modelo NARMAX que determina lasalida del sistema está determinado a partir de la ecuación 5.7. El error cuadrático medio

73

Page 89: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

obtenido es de 0.1293 %, este error es el más bajo obtenido en todo el estudio realizadopara el modelamiento de la planta hidráulica de tanque cónico.

Mientras que a su vez la tabla 5.7 muestra el correspondiente ERR de cada uno de lostérminos del modelo; observe como se ha modelado el comportamiento del ruido refle-jando la ventaja del método NARMAX que incluye todos los términos tanto de salida,entrada y ruido. Generando una gran ventaja para poder obtener el modelo completo de laplanta.

Figura 5.31 Entrada al sistema para el caudal estable.

0 500 1000 1500 2000 2500

Tiempo (s)

2

2.5

3

3.5

4

4.5

Valo

r de la e

ntr

ada

Señal de entrada

Figura 5.32 Ruido del sistema para el caudal estable.

0 500 1000 1500 2000 2500

Tiempo (s)

-0.5

0

0.5

1

1.5

2

2.5

Valo

r del ru

ido

Señal de ruido

74

Page 90: Sistema de Identificación de un modelo hidráulico no ...

5.5 Análisis de la dinámica no lineal del sistema.

Figura 5.33 Respuesta no lineal de la salida del sistema y la salida aproximada por elmodelo para el caudal estable.

0 500 1000 1500 2000 2500

Tiempo (s)

2

3

4

5

6

7

8

9

Valo

r de la s

alid

as

Respuesta medida

Respuesta aproximada

5.5.3. Caudal bajo.

Congruente con el comportamiento de los anteriores caudal el caudal bajo se identifica apartir del algoritmo NARMAX completo con adición del ruido; note como la figura 5.34muestra la entrada que en este caso corresponde a 3 ft3/s, este es un caudal de entradabajo ya que las condiciones iniciales se establecieron en 2 en vez de 0 (recuerde que laecuación 2.16 tiene discontinuidades en una altura 0). La ecuación 5.8 muestra el modeloidentificado con su correspondiente ERR que se muestra en la tabla 5.8. El error cuadrá-tico medio entre las dos señales es de 0.7722 % logrando una excelente aproximación alcomportamiento del modelo.

y(k) = 0,999812 ∗ y(k − 1)− 0,1650 ∗ u(k − 1) ∗ ξ(k − 1) (5.8)

Parámetro Término ERR%y(k − 1) 0.999812 99.9251

u(k − 1) ∗ ξ(k − 1) -0.1650 0.0749Tabla 5.8: Términos y parámetros con su correspondiente ERR del caudal estable.

75

Page 91: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

Figura 5.34 Entrada al sistema para el caudal bajo.

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000

Tiempo (s)

2

2.2

2.4

2.6

2.8

3

3.2

Valo

r de la e

ntr

ada

Señal de entrada

La figura 5.35 muestra la oscilación del ruido cercano a 0 como en los anteriores casosmientras que la figura 5.36 muestra la respuesta de salida del sistema y la salida aproxi-mada del modelo, note que para un caudal bajo tiende a la altura a llegar a 5 ft es deciral 50 % de la altura del tanque, lo anterior es lógico ya que se necesita de un volumen losuficientemente grande para generar un flujo turbulento en la salida de la válvula.

Figura 5.35 Ruido del sistema para el caudal bajo.

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000

Tiempo (s)

-0.5

0

0.5

1

1.5

2

2.5

Valo

r del ru

ido

Señal de ruido

76

Page 92: Sistema de Identificación de un modelo hidráulico no ...

5.5 Análisis de la dinámica no lineal del sistema.

Figura 5.36 Respuesta no lineal de la salida del sistema y la salida aproximada por elmodelo para el caudal bajo.

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000

Tiempo (s)

2

2.5

3

3.5

4

4.5

5

5.5

6

Valo

r de la s

alid

as

Respuesta medida

Respuesta aproximada

5.5.4. Modelo final.Note finalmente como los tres modelos anteriores son similares en sus parámetros e igualesen sus términos con lo que se concluye que el modelo final es representado por la tabla 5.9,obtenida a partir de un promedio entre los parámetros ya que su diferencia no es superior auna unidad, la gran ventaja del NARMAX por lo tanto se ve reflejada en su capacidad paraintroducir un modelo que no refleja el comportamiento de un conjunto de datos, que es elerror principal que suelen cometer los modelos dinámicos de sistemas sino que se ajusta alcomportamiento real de la planta, es decir si se cambiaran los datos de prueba el modeloidentificado por NARMAX está en la capacidad de predecir el comportamiento con losnuevos datos de prueba del modelo. La ecuación 5.9 representa el modelo final obtenidopor la identificación no lineal NARMAX.

y(k) = 1,0000 ∗ y(k − 1)− 0,1293 ∗ u(k − 1) ∗ ξ(k − 1) (5.9)

Parámetro Término %y(k − 1) 1.0000

u(k − 1) ∗ ξ(k − 1) -0.1293Tabla 5.9: Términos y parámetros finales del modelo NARMAX

Debido a lo anterior resulta NARMAX una de las técnicas más empleadas para la identifi-cación del sistema, sin embargo esta planta tiene la particularidad de que un solo termino

77

Page 93: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 5. Implementación y Resultados

obtiene más del 99,95 % del ERR, esto es poco usual como se vio en anteriores ejem-plos, a medida que el ERR es inferior al 2 % el modelo empieza a tener problemas paraobtener el parámetro correspondiente por lo que resulta necesario ejecutar varias pruebaspara obtener correctos coeficientes que permitan suministrar una información adecuada almodelo.

78

Page 94: Sistema de Identificación de un modelo hidráulico no ...

Capıtulo 6Comparación con la identificaciónlineal

A continuación, se busca conocer la interpretación lineal de la planta del sistema cónicode tanque visto en el cápitulo 2, con el objetivo de comparar resultados obtenidos paradeterminar qué modelo puede aproximarse a la respuesta del sistema estudiado. Por lotanto, en este breve capitulo se identificará la planta mediante el uso de la herramientaident de MATLAB del paquete system identification toolbox comparando los resultadosobtenidos mediante el criterio ECM, note que el principal interés es observar las respuestasdel modelo lineal entregado por el toolbox, el modelo no lineal obtenido por NARMAX yla respuesta real del sistema obtenida en el cápitulo 2.

6.1. Implementación de la identificación lineal.System Identification Toolbox es una herramienta proporcionada por Matlab con el objeti-vo de identificar sistemas dinámicos a partir de datos de entrada y salida medidos, en estaherramienta se puede crear y utilizar modelos dinámicos tanto en el dominio del tiempocomo de la frecuencia, está altamente calificado para identificar sistemas lineales entre-gando la función de transferencia de la planta que se necesite estudiar. La herramientaofrece una interfaz simple para interactuar con el programa como se muestra en la figura6.1. Puede ingresar datos tanto en el dominio del tiempo como en el dominio de la fre-cuencia, en la herramienta podemos seleccionar el tipo de modelo que se desea y observarsu respectiva respuesta que debe ser semejante a la respuesta del sistema.

Se establece una identificación lineal, asignando en la figura 6.1 los parámetros de entradatales como el vector de entrada u y salida y correspondiente a los datos entregados por lasimulación de la figura 5.16. La ecuación 6.1 denota la función de transferencia corres-pondiente a la respuesta de la planta. Mientras que la figura 6.2 muestra las respuestas de

79

Page 95: Sistema de Identificación de un modelo hidráulico no ...

Capítulo 6. Comparación con la identificación lineal

la planta, la respuesta de la función de transferencia y la respuesta de un modelo NARXidentificado por la herramienta.

Figura 6.1 System identification Toolbox.

Figura 6.2 Respuesta del modelo lineal y respuesta del modelo NARX.

G(s) =0,0264s+ 0,001754

s2 + 0,09452 + 0,0007022(6.1)

Como en el caso anterior de la identificación NARMAX la figura 6.2 es poco fiable debidoa que está formado por el regresor según la ecuación 4.7. Por tal motivo se define en Matlabuna función de transferencia acorde a la ecuación 6.1 obteniendo la confiable respuesta enla figura 6.3 note que también se graficó la salida del modelo NARMAX y la respuesta delsistema para observar su similitud. La grafica que tiene más similitud a la respuesta del

80

Page 96: Sistema de Identificación de un modelo hidráulico no ...

6.1 Implementación de la identificación lineal.

sistema a simple vista es la representada por la respuesta no lineal del sistema es decir porla identificación NARMAX, sin embargo, se debe seguir el criterio del ECM, como se havisto antes el ECM obtenido por el modelo NARMAX es de 0.0429 mientras que el ECMdel modelo lineal identificado por la herramienta de Matlab es de 0.5424. Finalmente sededuce que el menor ECM obtenido es por la identificación NARMAX logrando de estaforma obtener el modelo parsimonioso para el sistema de tanque cónico no lineal de ordende retraso en la entrada igual a 2, retraso en la salida igual a 2 y grado 3 definido en laecuación 5.5.

Figura 6.3 Comparación de la identificación lineal vs la identificación no lineal.

0 200 400 600 800 1000 1200 1400 1600

Tiempo (s)

0

1

2

3

4

5

6

7

Valo

r de la s

alid

as

Respuesta del modelo no lineal

Respuesta de la identificación de Matlab

81

Page 97: Sistema de Identificación de un modelo hidráulico no ...

Capıtulo 7Conclusiones y Trabajo Futuro

Según el estudio del modelamiento matemático no lineal obtenido analíticamente con surespectiva simulación del modelo de tanques hidráulicos visto en el capítulo 2 se lograincorporar al diccionario (regresor) del algoritmo NARMAX; términos no lineales comoposibles candidatos para el aporte de la respuesta del sistema. En otras palabras, se lograadquirir conocimiento a priori del sistema para alimentar el diccionario en el algoritmoNARMAX.

Acorde a la estructura polinómica NARMAX seleccionada y a través del criterio SERRsuperior al 95 % de su valor se consiguen los retrasos de entrada, salida, ruido y grado dela ecuación; necesarios para la inicialización del algoritmo NARMAX visto en el capítulo3. Consecuentemente acorde al criterio de optimización del algoritmo ERR el algoritmologra obtener los términos más relevantes con sus respectivos parámetros que permiten daruna respuesta coherente y semejante a la respuesta del sistema de tanque cónico no linealsegún el capítulo 4.

El modelo dinámico obtenido en ecuaciones de diferencias otorgado por NARMAX esel modelo más simple y parsimonioso posible teniendo en cuenta que de 611 términoscandidatos se redujo a 4 términos candidatos. La tabla 5.5 refleja en orden los términosde mayor aporte con su respectivo ERR obteniendo que el pasado de la salida aporta lamayor parte para la respuesta del sistema de tanque cónico no lineal. En adición se lograobtener una señal de ruido a partir del algoritmo ELS, al contrario que NARX el modelopresenta términos relacionados con el ruido de poca importancia, sin embargo, en términosde control no lineal es fundamental obtener los términos más importantes.

Para la calibración de cada algoritmo (OLS, FROLS, ELS y NARMAX) se deriva de losmodelos planteados por (Billings) [14] obteniendo los parámetros y el ERR correspon-diente para cada ecuación. Es importante aclarar que el parámetro ERR y SERR acorde alo visto en el capítulo 5 son los criterios más importantes dentro de la teoría del NARMAXya que logran calcular el aporte de cada termino a la respuesta del sistema.

82

Page 98: Sistema de Identificación de un modelo hidráulico no ...

Finalmente, para su validación se estima la diferencia entre la salida del sistema de tanquecónico no lineal contra la salida del modelo obtenido por el algoritmo NARMAX otor-gando un ECM igual a 0,0429. Con el fin de observar la diferencia de la identificación nolineal con la lineal, mediante la herramienta del toolbox de Matlab se adquiere una fun-ción de transferencia, comparando su respuesta se obtiene un ECM de 0.5424 reflejandoque el mejor modelo para la descripción del sistema es el NARMAX ya que posee unaclasificación directa de los términos que afectan la dinámica del sistema y en adición unECM menor. Se estudia el comportamiento de la planta referente a diferentes entradas co-mo caudal elevado, estable y bajo con adición de ruido tanto en la entrada como la salidaobteniendo un modelo NARMAX general con un ECM inferior al 1 %.

Para trabajos futuros se recomienda elaborar una red neuronal RNARXR o un modeloNARMAX con Wavelet para determinar si el sistema es severamente no lineal o no, sedebe buscar un algoritmo que logre clasificar el diccionario con tal de que los términosa considerar no sean infinitos sino una reducción considerable de la cantidad de términosque afectan a la respuesta del sistema, aunque el ERR es un parámetro que cumple conesta función si son demasiados términos a considerar el algoritmo aumenta su tiempo decómputo por lo tanto una estrategia en el desarrollo del diccionario reduciría notablementeel esfuerzo del algoritmo NARMAX.

83

Page 99: Sistema de Identificación de un modelo hidráulico no ...

Bibliografía

[1] Andrés Escobar Díaz y Rodrigo Peña Ospina José Jairo Soriano. “Identificacióncon modelosdiscretos para sistemas lineales.Modelo matemático y aplicaciones”.En: Dialnet (2003).

[2] Y.K Wongb Eric H.KFung. “Modelling and prediction of machining errors usingARMAX and NARMAX structures.” En: Science Direct (2003).

[3] A.T.Shenton G.Triantos. “NARMAX Structure Selection for Powertrain Control”.En: Science Direct (2004).

[4] A.T.Shenton G.Triantos. “A methodology for identification of NARMAX model-sapplied to diesel engines.” En: Hal (2009).

[5] Magdi S.Mahmoud. “A Comparison of Identification Methods of a Hydraulic Pum-ping System”. En: Science Direct (2012).

[6] Duc Chung Tran. Conical Tank System. [Accessed: 2020]. 2020. URL: https://www.mathworks.com/matlabcentral/fileexchange/46305-conical - tank - system - zip ? s _ tid = mwa _ osa _ a & fbclid =IwAR0JXju1_4iSJ7SjmYi90SfEWoyJZHN4pXLYZtRVWzt8YPdDGj0JjOS0_DU.

[7] Bei Lu Ramin S. Esfandiari. Modeling and Analysis of Dynamic Systems. CRCPress Taylor & Francis Group, 2014.

[8] Katsuhiko Ogatha. Dinamica de sistemas. Prentice Hall, 1987.

[9] Oskar Leonardo Martin Peña. “MODELADO Y SIMULACIÓNDE UN SISTEMAHIDRÁULICO”. Bogota D.C, 2010, pág. 12.

[10] Santiago Garrido. “Identificación, Estimación y Control deSistemas No-linealesmediante RGO”. Leganés, 1999, págs. XXI, 1-10.

[11] Cesar de Prada. Identificación de sistemas. [Accessed: 2020]. URL: http://www.isa.cie.uva.es/~prada/IDENT.pdf.

[12] S. Hamid NAWAB Alan V.Oppenheim Alan V.WILLSKY. Señales y sistemas.Prentice Hall, 1997.

84

Page 100: Sistema de Identificación de un modelo hidráulico no ...

[13] Cristian Kunusch. “Identificación de sistemas dinámicos.” La Plata, 2003, pág. 9.

[14] Stephen A Billings. Nonlinear system identification NARMAX METHODS IN THETIME, FREQUENCY, AND SPATIO-TEMPORAL DOMAINS. Wiley, 2013.

[15] Engineer Ambitiously. Selecting a Model Structure in the System Identifi-cation Process. [Accessed: 2020]. URL: https : / / www . ni . com / es -co / support / documentation / supplemental / 06 / selecting -a - model - structure - in - the - system - identification -process.html.

[16] Freddy Maquilón Falconí Vicente Macas Espinosa. IDENTIFICACIÓN Y DISE-ÑO DEL CONTROLADOR PARA UN SISTEMA DE CONTROL DE FLUJO Y VO-LUMEN EN UNA BOMBA DE COMBUSTIBLE. [Accessed: 2020]. Escuela su-perior politécnica del litoral. URL: https://slideplayer.es/slide/1642519/.

[17] Rob J Hyndman & George Athanasopoulos. Forecasting: Principles and Practic.

[18] Wang Cong. Zhang Jianyong. “Application of ARMA Model in Ultra-short TermPrediction of Wind Power.” En: Research Gate (2016), págs. 1-3.

[19] Maria Marta Seron. Sistemas No Lineales,Notas de clase. Universidad Nacional delRosario, 1996, págs. 3-4.

[20] Gabriel Montoro López. “CONTRIBUCION AL ESTUDIO Y DESARROLLO DETECNICAS DE CONTROL APLICADAS A LA LINEALIZACION DE SISTE-MAS”. Tesis de mtría. UNIVERSITAT POLITECNICA DE CATALUNYA, 1996.Cap. II.

[21] SÜLEYMAN UZUN & DEVRIM AKGÜN. “An Accelerated Method for Determi-ning theWeights of Quadratic Image Filters.” En: IEE ACCESS (2018).

[22] V. Plucenio Pagano D. J. Dallagnol Filho. “IDENTIFICATION OF POLINOMIALNARMAX MODELS FORAN OIL WELL OPERATING BY CONTINUOUSGAS-LIFT.” En: Science Direct (2006).

[23] Cristián Ramirez & Millaray Curilem Gonzalo Acuña. “Comparing NARX andNARMAX models using ANN and SVM for cash demand forecasting for ATM”.En: IEE XPLORE (2012).

[24] Damián Jorge Matich. Redes Neuronales: Conceptos Básicos y Aplicaciones. Uni-versidad Tecnológica Nacional – Facultad Regional Rosario, 1996, pág. 8.

[25] José D.Martin Antonio J.Serrano Emilio Soria. Redes neuronales artificiales. Open-CourseWare, 2009-2010, pág. 16.

[26] Claudio Amorim. Red Neuronal en Python con Numpy. [Accessed: 2020]. URL:https : / / artfromcode . wordpress . com / 2017 / 04 / 18 / red -neuronal-en-python-con-numpy-parte-1/.

[27] Sergio A. Cruces Álvarez. El Método deMínimos Cuadrados. [Accessed: 2020].URL: https://personal.us.es/sergio/PDocente/lectura.pdf.

[28] ROBIAH AHMAD & HISHAMUDDIN JAMALUDDIN. “ORTHOGONALLEAST SQUARE ALGORITHM AND ITSAPPLICATION FOR MODELLINGSUSPENSION SYSTEM”. En: Jurnal Teknologi (2006).

85

Page 101: Sistema de Identificación de un modelo hidráulico no ...

[29] CCIR/ITES Departamento de Matemáaticas. Proyecciones Ortogonales y Procesode Gram-Schmid. [Accessed: 2020]. URL: http://cb.mty.itesm.mx/ma1010/materiales/ma1010-22.pdf.

[30] CCIR/ITES Departamento de Matemáticas. FactorizaciónQR. [Accessed: 2020].URL: http://cb.mty.itesm.mx/ma1010/materiales/ma1010-23.pdf.

[31] Dr. Juan Carlos Gómez. Identificacidentificacióón de n de SISSIStemastemas. [Ac-cessed: 2020]. Universidad del Rosario. URL: https://www.fceia.unr.edu.ar/isis/input_design_bw.pdf.

86

Page 102: Sistema de Identificación de un modelo hidráulico no ...

ApéndiceA. Código

A.1. Algoritmo NARMAX en MATLAB1 %% Forward Regression OLS Algorithm2 %Billings’s Book Nonlinear Systems Identification3 %4 tic5 clear;6 clc7 close all8 load(’datosdeprueba’)9 %% Discrete Dynamical System with additive noise

10 %% Preparar datos iniciales.11 steps = 200;12 NY=4;13 NU=4;14 NE=4;15 i=NY;16 j=NU;17 f=NE;18 guardaru=u.Data;19 SaveU=(u.Data(1:end))’;20 SaveY=(y.Data(1:end-1))’;21 u=(u.Data(1:end))’;22 y=(y.Data(2:end))’;23

24 Datos_de_entrada=u;25 Datos_de_salida=y;26 l=3;%% Grado27 regre=[];28 u=Datos_de_entrada;%% Inicializar los vectores de entrada para

todo ny y nu29 y=Datos_de_salida;%% Inicializar los vectores de entrada para todo

ny y nu30

31 %% Preparar el regresor inicial.32 c1=0;%% Contador133 regre1=[];34 Dletray=[];35 for(i2=i:-1:1)36 c1=c1+1;37 regre1=[regre1 ,y(i2:end-c1)’];%% Armar el regresor inicial de la

salida38 Dletray=[Dletray;sym((strcat(’_’,num2str(c1))))];%% Armar el

87

Page 103: Sistema de Identificación de un modelo hidráulico no ...

regresor en letra39 end40 c2=0;%% Contador241 regre2=[];42 Dletrau=[];43 for(j2=j:-1:1)44 c2=c2+1;45 regre2=[regre2 ,u(j2:end-c2)’];%% Armar el regresor inicial de la

salida46 Dletrau=[Dletrau;sym((strcat(’_’,num2str(c2+100))))];47 end48 %% Ajustar el mismo tama o de regresores49 while(length(regre1)>length(regre2))50 regre1(end,:)=[];51 end52 while(length(regre1)<length(regre2))53 regre2(end,:)=[];54 end55 regre=[regre1,regre2];56 Dletra=[Dletray;Dletrau];57

58 %% A adir potencias al regresor inicial.59 if(i==1&&j==1)%%[1 1]60 regre=[regre,regre(:,1).^2,regre(:,i+1).^2];61 SaveC=[regre(:,1).^2,regre(:,i+1).^2];62 Dletra=[Dletra;sym(’_1c2’);sym(’_101c2’)];63 SaveD=[sym(’_1c2’);sym(’_101c2’)];64 add=1;65 elseif(i==1&&j>1)%% [1 2]66 regre=[regre,regre(:,1).^2,regre(:,i+1).^2,regre(:,i+2).^2];67 SaveC=[regre(:,1).^2,regre(:,i+1).^2,regre(:,i+2).^2];68 Dletra=[Dletra;sym(’_1c2’);sym(’_101c2’);sym(’_102c2’)];69 SaveD=[sym(’_101c2’);sym(’_102c2’)];70 add=2;71 elseif(i>=2&&j==1)%%[2 1]72 regre=[regre,regre(:,1).^2,regre(:,2).^2,regre(:,i+1).^2];73 SaveC=[regre(:,1).^2,regre(:,2).^2,regre(:,i+1).^2];74 Dletra=[Dletra;sym(’_1c2’);sym(’_2c2’);sym(’_101c2’)];75 SaveD=[sym(’_1c2’);sym(’_2c2’);sym(’_101c2’)];76 add=3;77 elseif(i>=2&&j>=2)%%[2 2]78 regre=[regre,regre(:,1).^2,regre(:,2).^2,regre(:,i+1).^2,regre(:,i

+2).^2];79 SaveC=[regre(:,1).^2,regre(:,2).^2,regre(:,i+1).^2,regre(:,i+2)

.^2];80 Dletra=[Dletra;sym(’_1c2’);sym(’_2c2’);sym(’_101c2’);sym(’_102c2’)

];81 SaveD=[sym(’_1c2’);sym(’_2c2’);sym(’_101c2’);sym(’_102c2’)];82 add=4;83 %% Agregar terminos no lineales conocidos

88

Page 104: Sistema de Identificación de un modelo hidráulico no ...

84 %% Eliminar indeterminacion.85 MK=size(regre,2);86 regre=[regre,(regre(:,i+1)./(regre(:,1).^2)),(regre(:,i+2)./(regre

(:,2).^2))];87 regre(1,MK+1)=0;88 regre(1,MK+2)=0;89 regre(2,MK+2)=0;90 MK1=size(SaveC,2);91 SaveC=[SaveC,(regre(:,i+1)./(regre(:,1).^2)),(regre(:,i+2)./(regre

(:,2).^2))];92 SaveC(1,MK1+1)=0;93 SaveC(1,MK1+2)=0;94 SaveC(2,MK1+2)=0;95 Dletra=[Dletra;sym(’_101s_1c2’);sym(’_102s_2c2’)];96 SaveD=[SaveD;sym(’_101s_1c2’);sym(’_102s_2c2’)];97 %% Agregar otro termino no lineal98 MK2=size(regre,2);99 regre=[regre,(regre(:,1).^(-1.5)),(regre(:,2).^(-1.5))];

100 regre(1,MK2+1)=0;101 regre(1,MK2+2)=0;102 regre(2,MK2+2)=0;103 MK3=size(SaveC,2);104 SaveC=[SaveC,(regre(:,1).^(-1.5)),(regre(:,2).^(-1.5))];105 SaveC(1,MK3+1)=0;106 SaveC(1,MK3+2)=0;107 SaveC(2,MK3+2)=0;108 Dletra=[Dletra;sym(’_1c15’);sym(’_2c15’)];109 SaveD=[SaveD;sym(’_1c15’);sym(’_2c15’)];110 end111 %% Preparar el regresor total.112 n=i+j+l;113 [vector2]=HallarCombinatorias2(n,l,[]);114 regcomfinal=[];115 regcomletrafinal=[];116 regcom=[];117 %% Primera Linea118 for(g=3:size(vector2,1)) %% Hacer nchoosek con las combinaciones

obtenidas119 regcom=[prod(nchoosek(regre(1,1:vector2(g,1)),vector2(g,2))’,1)];120 regcomletra=[prod(nchoosek(Dletra(1:vector2(g,1)),vector2(g,2)),2)

];121 regcomletrafinal=[regcomletrafinal;regcomletra];122 regcomfinal=[regcomfinal regcom ];123 end124 %% ii lineas.125 row=size(regre,1);126 regcomfinalcomplete=[regcomfinal];127 for h = 2:row128 regcom2=[];129 regcomfinal2=[];

89

Page 105: Sistema de Identificación de un modelo hidráulico no ...

130 for(g=3:size(vector2,1)) %% Hacer nchoosek con las combinacionesobtenidas

131 regcom2=[prod(nchoosek(regre(h,1:vector2(g,1)),vector2(g,2))’,1)];132 regcomfinal2=[regcomfinal2 regcom2];133 end134 regcomfinalcomplete=[regcomfinalcomplete;regcomfinal2];135 end136 %% Agregar el regresor inicial y columna de 1137 rgfinal=[ones(1,length(regre))’,regre,regcomfinalcomplete];138 DComplete=[sym(’one’);Dletra;regcomletrafinal];139 %% Calcular el ERR de cada regresor140 %% Ajustar el y141 u=Datos_de_entrada’;142 y=Datos_de_salida’;143 while(length(y)>length(rgfinal))144 y(1,:)=[];145 end146 %% Ajustar el u147 while(length(u)>length(rgfinal))148 u(1,:)=[];149 end150 %% Guardar el regresor151 Savergfinal=rgfinal(:,(i*l+j*l+2):end);152 SaveDComplete=DComplete((i*l+j*l+2):end,:);153 % [tetha,ERR]=AlgoritmoOLS(rgfinal,size(rgfinal,2),size(rgfinal,1)

,y’);%%[P,M,N,y]154 %% Implementar el algoritmo FROLS-Hallar f[p]155 % [rgfinal]=Ortogonalizarmatriz(rgfinal,size(rgfinal,1),size(

rgfinal,2));156 [tetha,err,ESR,Dfinal,W,~]=FROLSAlgorithm(y,u,rgfinal,DComplete

,0.001);157 %% Inicializar el step 1158 y1=tetha.*W;%% Calcular la y medida159 y1=sum(y1,2);160 e=(y-y1)’;161 %% Agregar al modelo el ruido.162 regre3=[];163 DletraE=[];164 newvectore=[];165 %% Preparar el regresor e inicial del ruido166 c3=0;%% Contador1167 for(f2=1:1:f)168 Agregar0=zeros(f2);169 Agregar0=Agregar0(1,1:f2);170 newvectore=[Agregar0’;e(1:end-f2)’];171 regre3=[regre3 ,newvectore];%% Armar el regresor inicial de la

salida172 DletraE=[DletraE;sym((strcat(’_e’,num2str(f2))))];%% Armar el

regresor en letra173 end

90

Page 106: Sistema de Identificación de un modelo hidráulico no ...

174

175 %% Unir el regre con el regre 3176 regre=[regre1,regre2,regre3,SaveC];177 Dletra=[Dletray;Dletrau;DletraE;SaveD];178 %% Realizar de nuevo la combinacion de regresores179 %% Preparar el regresor total.180 n=i+j+f+l;181 [vector2]=HallarCombinatorias2(n,l,[]);182 regcomfinal=[];183 regcomletrafinal=[];184 regcom=[];185 %% Primera Linea186 for(g=3:size(vector2,1)) %% Hacer nchoosek con las

combinaciones obtenidas187 regcom=[prod(nchoosek(regre(1,1:vector2(g,1)),vector2(g,2))

’,1)];188 regcomletra=[prod(nchoosek(Dletra(1:vector2(g,1)),vector2(g,2)

),2)];189 regcomletrafinal=[ regcomletrafinal;regcomletra];190 regcomfinal=[regcomfinal regcom ];191 end192 %% ii lineas.193 row=size(regre,1);194 regcomfinalcomplete=[regcomfinal];195 for h = 2:row196 regcom2=[];197 regcomfinal2=[];198 for(g=3:size(vector2,1)) %% Hacer nchoosek con las

combinaciones obtenidas199 regcom2=[prod(nchoosek(regre(h,1:vector2(g,1)),vector2(g,2))

’,1)];200 regcomfinal2=[regcomfinal2 regcom2];201 end202 regcomfinalcomplete=[regcomfinalcomplete;regcomfinal2];203 end204 %% Agregar el regresor inicial y columna de 1205 rgfinal=[ones(1,length(regre))’,regre,Savergfinal,

regcomfinalcomplete];206 % [rgfinal]=Ortogonalizarmatriz(rgfinal,size(rgfinal,1),size(

rgfinal,2));207 DComplete=[sym(’one’);Dletra;SaveDComplete;regcomletrafinal];208 %% Calcular el nuevo F[pn]+F[p]209 % [rgfinal]=Ortogonalizarmatriz(rgfinal,size(rgfinal,1),size(

rgfinal,2));210 [tetha1,err1,ESR1,Dfinal1,W1,Posicionsalida]=FROLSAlgorithm(y,

u,rgfinal,DComplete,0.0000000000001);211 %% Diciconariooriginal D Complete.212 %% Unir F[p]+F[pn]+F[n]213 %% Calcular el error nuevamente214 W1=[rgfinal(:,2),rgfinal(:,6),rgfinal(:,5),rgfinal(:,20)];

91

Page 107: Sistema de Identificación de un modelo hidráulico no ...

215 tetha1=[tetha1(1:3) tetha1(6)];216 Dfinal1=[Dfinal1(1:3);Dfinal1(6)];217 %%218 yfinal=tetha1.*W1;%% Calcular la y medida219 yfinal=sum(yfinal,2);220 efinal=(y-yfinal)’;221 Tol1=sum(abs((efinal-e)’).^2)222 Tol2=0.5;223 Gamma=0.001;224 Gamma2=0.001;225 Dfinal1226 Gdelruido=0;227 %% Implementar el agoritmo ELS228 while(Tol1>=Gamma||Tol2>=Gamma )229 Gdelruido=Gdelruido+1;230 SaveError=efinal;231 % [W1]=Ortogonalizarmatriz(W1,size(W1,1),size(W1,2));232 [~,W2]=qr(W1);233 tetha2=(inv(W1’*W1)*W1’*y)’;234 sumtetha=[];235 for(c=1:1:length(tetha2))236 sumtetha(c)=abs(tetha2(c)-tetha1(c))/abs(tetha2(c));237 end238 Tol2=(sum(sumtetha));239 yfinal=tetha1.*W2;%% Calcular la y medida240 yfinal=sum(yfinal,2);241 efinal=(y-yfinal)’;242 Tol1=sum(abs((efinal-SaveError)’).^2)243 tetha1=tetha2;244 end245 tetha1246 yfinal=tetha1.*W1;247 yfinal=sum(yfinal,2);248 plot(y(1:150),’r’)249 hold on250 grid on251 plot(yfinal(1:150),’xb’)252 legend(’Repsuesta medida’,’Respuesta aproximada’)253 title(’Respuesta con datos de entrenamiento’)254 xlabel(’Tiempo (s)’)255 ylabel(’Valor de la salidas’)256 %% Probar datos de entrenamiento257 yp=[2,2,2,2];258 for k =5:length(SaveU)259 % yp(k)=1.0916*yp(k-1)+0.0409*SaveU(k-1)+-0.1070*yp(k-4);%%

Sin no260 % % linealidad261 yp(k)=1.0655*yp(k-1)+0.0354*SaveU(k-1)+-0.0792*yp(k-4)

-0.0556*(yp(k-1)^-1.5);%% Con no linealidad262 end

92

Page 108: Sistema de Identificación de un modelo hidráulico no ...

263 toc264 figure265 plot(SaveY,’r’)266 hold on267 plot(yp,’k’)268 grid on269 legend(’Respuesta medida’,’Respuesta aproximada’)270 xlabel(’Tiempo (s)’)271 ylabel(’Valor de la salidas’)272

273 figure274 hold on275 grid on276 plot(u(1:200),’r’)277 legend(’Se al de entrada’)278 xlabel(’Tiempo (s)’)279 ylabel(’Valor de la entrada’)280

281 figure282 hold on283 grid on284 plot(e(1:200),’k’)285 legend(’Se al de ruido’)286 xlabel(’Tiempo (s)’)287 ylabel(’Valor del ruido’)288

289 figure290 hold on291 grid on292 plot(SaveY,’r’)293 plot(yp,’k’)294 plot(Guardar1,’b’)295

296 legend(’Respuesta del s i s t e m a ’,’Respuesta del modelo no lineal’,’Respuesta de la identificaci n de Matlab’)

297 xlabel(’Tiempo (s)’)298 ylabel(’Valor de la salidas’)299

300 errorfinal=immse(SaveY,yp)301 errorentreident=immse(SaveY,Guardar1’)302

303 figure304 A=zeros(length(SaveY-yp));305 plot(SaveY-yp,’g’)306 hold on307 grid on308 plot(A(1:length(SaveY-yp)),’b’)309 legend(’Se al del error’)310 xlabel(’Tiempo (s)’)311 ylabel(’Valor del error’)

93

Page 109: Sistema de Identificación de un modelo hidráulico no ...

312 toc

94