Uso de redes neuronales artificiales para el modelamiento del helicóptero CE150
Texto completo
(2) 2. IEL2-I-06-22. USO DE REDES NEURONALES ARTIFICIALES PARA EL MODELAMIENTO DEL HELICOPTERO CE150. GUSTAVO ALBERTO GARCÍA ARANGO Proyecto de Grado para optar al título de Ingeniero Electrónico. Asesor: Mauricio Duque Escobar Ingeniero Eléctrico, M.E., D.E.A., Dr. de Tercer Ciclo. UNIVERSIDAD DE LOS ANDES FACULTAD DE INGENIERIA DEPARTAMENTO DE INGENIERIA ELECTRICA Y ELECTRONICA BOGOTA, D.C. 2006 - I.
(3) 3. IEL2-I-06-22. AGRADECIMIENTOS. El autor agradece a:. Maur icio Duque Escobar, Ingeniero Eléctrico, M.E., D.E.A., Dr. de Tercer Ciclo, y profesor, por la asesoría brindada durante el desarrollo de este trabajo. Magnus Norgaard, profesor de la Universidad Tecnológica de Dinamarca, y a su grupo de trabajo, por permitir hacer uso de su investigación en Redes Neuronales, de la cual se sacó su máxima utilidad en este trabajo. Fernando Jiménez Vargas, Ingeniero Eléctrico, D.E.A., y profesor, por darme la oportunidad de infundir este trabajo entre sus estudiante de Maestría y Especialización. Cesar Cadena, Ingeniero Electrónico, por su ayuda brindada a lo largo de este proyecto. Laboratorio de Ingenier ía Eléctrica y Electrónica, en cabeza de Luís Ignacio Lopera, Ingeniero Electrónico, y sus asistentes, por permitir me hacer gran parte del desarrollo de este proyecto en sus instalaciones y haciendo uso de sus instrumentos y herramientas.. A mis padres Gustavo y Clara Inés, y mi her mana Maria Clara, por su apoyo incondicional. A mi compañero y amigo Iván David Jaramillo por su constante apoyo durante el Proyecto..
(4) 4. IEL2-I-06-22 TABLA DE CONT ENIDO RESUMEN. 7. INTRODUCCIÓN. 8. OBJETIVOS. 11. 1. ESTUDIO DEL HELICÓPTERO CE150. 12. 1.1. Descripción física de la planta. 12. 1.2. Especificaciones de la tarjeta mf614. 13. 1.3. Estudio experimental del sistema. 14. 2. METODOLOGÍA DE IDENTIFICACIÓN. 18. 2.1. Experimento. 20. 2.2. Selección de Estructura Modelo. 22. 2.3. Estimación del Modelo. 25. 2.4. 2.3.1. Criterio. 26. 2.3.2. ‘Generalización del error’ y el concepto de Regularización. 26. 2.3.3. Entrenamiento. 26. Validación del Modelo. 27. 2.4.1. Evaluación de los Residuos. 27. 2.4.2. Estimación de la ‘Generalización del error’. 28. 2.4.3. Visualización de la Habilidad de Predicción del Modelo. 28. 2.4.4. Aceptación del Modelo. 29. 3. IDENTIFICACIÓN POR MÉTODOS CONVENCIONALES. 30. 4. IDENTIFICACIÓN CON REDES MULTICA PA. 32. 4.1. Obtención del Modelo MLP. 32. 4.2. Validación del Modelo NNARX. 33. 4.3. Recorte de la Red o ‘Prunning’. 36. 5. IDENTIFICACIÓN CON REDES RECURRENTES. 38. 5.1. Obtención del Modelo Recurrente. 39. 5.2. Validación del Modelo NNARMAX1. 39. 5.3. Recorte de la Red o ‘Prunning’. 42. 6. COMPARA CIÓN CON EL MODELO EXISTENTE DEL HELICÓPTERO. 43. 7. CONCLUSIONES. 46. 8. PERSPECTIVAS. 48. 9. BIBLIOGRAFIA. 49.
(5) 5. IEL2-I-06-22 ANEXOS. ANEXO 1 DESCRIPCION MODELOS OBTENIDOS. 50. ANEXO 2 CÓDIGO PA RA OBTENCIÓN DE LA RED MULTICA PA. 54. ANEXO 3 CÓDIGO PA RA OBTENCIÓN DE LA RED RECURRENTE. 57. ANEXO 4 CÓDIGO DEL GUI DISEÑADO. 60. ANEXO 5 CÓDIGO PA RA OBTENCION DE SBPA. 69.
(6) 6. IEL2-I-06-22 LISTA DE FIGURAS Figura 1. Diagrama esquemático del sistema. 13. Figura 2. Configuración tarjeta ‘mf614’. 14. Figura 3. Comunicación con tarjeta ‘mf614’. 15. Figura 4a. Estudio experimental de la planta, entradas escalón. 16. Figura 4b. Estudio experimental de la planta, rango de operación. 16. Figura 5. GUI diseñado para estudio experimental del Helicóptero CE150. 17. Figura 6. Red perceptrón multicapa “fully connected”. 19. Figura 7. Red recurrente “fully connected” realimentada externamente. 20. Figura 8a. Datos de entrenamiento [entradas u1(t) y salidas y1(t)], T=9000. 21. Figura 8b. Datos de validación [entradas u2(t) y salidas y2(t)], T=2300. 21. Figura 9a. Datos de entrenamiento con varianza uno y media cero. 22. Figura 9b. Datos de validación con varianza uno y media cero. 22. Figura 10. Grafica resultado del criterio de Lipschitz. 25. Figura 11a. Pobre desempeño de identificación del modelo A RX. 31. Figura 11b. Acercamiento de figura 11a para observar detalladamente puntos críticos 31 Figura 12. Estructura de la red MLP. 32. Figura 13a. Graficas de error de predicción de la red MLP. 34. Figura 13b. Graficas de error de predicción de la red MLP en puntos críticos. 34. Figura 13c. Graficas de error de predicción de la red MLP sobre datos con ruido. 34. Figura 14. Resultados de las pruebas de correlación realizadas a la red MLP diseñada 35 Figura 15. Errores de validación, de entrenamiento y FPE para cada una de las redes reducidas por ‘prunning’.. 37. Figura 16. Estructura de la red recurrente. 38. Figura 17a. Graficas de error de predicción de la red Recurrente. 40. Figura 17b. Graficas de error de predicción de la red Recurrente en puntos críticos. 40. Figura 17c. Graficas de error de predicción de la red Recurrente sobre datos con ruido 40 Figura 18. Resultados de pruebas de correlación realizadas a la red Recurrente diseñada Figura 19a. Salidas modelo real, modelo MLP y modelo en ecuaciones.. 41 44. Figura 19b. Saturación del modelo en ecuaciones (modelo de la universidad), contrario a lo que sucede con modelo real y modelo MLP. 44. Figura 19c. Comparación detallada con datos diferentes a los de validación. 45. Figura 20. Bloque ‘S-function’ en SIMULINK cuya salida es señal diseñada. 72.
(7) 7. IEL2-I-06-22. RESUMEN. En este trabajo se diseñaron modelos del eje de elevación del helicóptero CE 150 con redes neuronales. Dicha planta es un sistema dinámico, multivariable y no lineal que se encuentra en el laboratorio de la Universidad de los Andes. La identificación del proceso se efectuó con redes neuronales multicapas y con redes neuronales dinámicas o recurrentes, con el fin de establecer comparaciones del comportamiento predictivo entre los dos tipos de modelos neuronales que se obtienen. El NNSYSD Toolbox es una herramienta sobre la cual se basa el estudio, pues se enfoca en el uso de redes neuronales como una estructura de modelo genérico para la identificación de un sistema dinámico no lineal 1.. Palabras clave: Identificación, Modelaje, Redes Neuronales, Redes Recurrentes.. 1. NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000..
(8) 8. IEL2-I-06-22 INT RODUCCIÓN. En el área de control, la identificación de un sistema es necesaria en cuanto establece un modelo sobre el cual se puede diseñar su regulador, además de ser útil en la predicción del comportamiento de la planta, en la optimización de parámetros generales de diseño, y en simulación antes de aplicarle un controlador al sistema real.. Métodos de aproximación de diseño de sistemas de control como el de autosintonizado (Ziegler y Nichols, 1942) se basan en realizar un experimento simple con el sistema para provocar una respuesta particular y basados en el conocimiento de cómo se obtiene esta respuesta particular, se tiene el criterio de cómo se debe realizar el diseño del sistema de control. En muchos casos estas aproximaciones no son adecuados porque simplemente los requerimientos de diseño son muy rigurosos como para poder ser obtenidos por este método. Métodos más avanzados de descripción matemática (expresada en términos de ecuaciones de diferencia o diferenciales) para encontrar modelos de un sistema existen entre los cuales se encuentran una manera deductiva haciendo uso de leyes de al naturaleza, o un experimento practico con el sistema para inferir el modelo a partir de los datos recolectados (identificación). El primer método, en la mayor ía de casos, consume gran parte del tiempo de diseño de un controlador y en algunos casos es imposible encontrar un modelo adecuado. La identificación, por otra parte, es un significativo ahorro de tiempo para la anterior situación. Aunque la identificación de sistemas no siempre produce modelos igualmente exactos, un modelo satisfactorio se logra obtener con un esfuerzo razonable. Durante el paso de los años, se han realizado gran cantidad de aproximaciones exitosas con el uso de estos métodos, pero tradicionalmente se enfocan en modelos y controladores representados por ecuaciones de diferencia y diferenciales de tipo lineal. ( NORGAARD, M., “Neural netw orks for modelling and control of dynamic systems”, Springer, c2000, capítulo 1, pg. 2, 3). Sin embargo, motivados en el hecho que todos los sistemas tienen alguna clase de comportamiento no lineal, recientemente se ha visto la tendencia a un enfoque hacia las diferentes aproximaciones para la identificación de sistemas no lineales. Una de las respuestas para dicha tendencia se encuentra en el uso de las redes neuronales artificiales RNA 2.. 2. SUYKENS, J.,” Artificial neural networks for modelling and control of non-linear systems”, Boston, MA: Kluwer Academic Publishers, c1996..
(9) IEL2-I-06-22. 9. Las RNA son modelos matemáticos diseñados para emular algunas capacidades del cerebro humano y están compuestas por muchos elementos simples llamados nodos, unidades o neuronas (estos imitan parcialmente el comportamiento de la neurona biológica) que están conectados entre sí3. Una neurona es un elemento computacional que toma un número deter minado de entradas, las pesa, las suma y utiliza el resultado como el argumento de una función especifica llamada función de activación. Así, las RNA pueden aproximar arbitrariamente bien cualquier función no lineal compuesta por un conjunto de datos y son por tanto aproximadores universales 4.. Los modelos neuronales están especificados por una topología (diseño estructural de conexiones y nodos) de la red, características de los nodos, y reglas o algoritmos de entrenamiento o aprendizaje. El entrenamiento, utilizando datos de operación de un dado sistema, per mite especificar el conjunto de pesos o conexiones sinápticas de la red, para dar a ésta la capacidad de representar al sistema con el cual se está trabajando5. Así, la red es un modelo aproximado del sistema, que per mite la predicción de sus variables de salida, o en el caso de un sistema dinámico, la inferencia de su comportamiento a lo largo del tiempo. La habilidad de representar sistemas es una de las características más importantes de las redes neuronales y trabajos recientes extienden su utilidad como una herramienta eficiente para el análisis de problemas en diferentes áreas como la biología, la biomecánica, en áreas administrativas, en el análisis de tendencias y patrones y en finanzas, entre otros.. Este trabajo está enmarcado en un estudio de la gran variedad de topologías de RNA existentes, de la capacidad predictiva de las redes a utilizar, y la escogencia de la(s) mas apropiada(s) en el contexto de la planta a estudiar, en este caso el helicóptero CE 150, de la cual finalmente se establece el modelo.. En la investigación se estudia espec íficamente la capacidad predictiva de las redes perceptrón multicapa y de las redes recurrentes dadas las características no lineales, multivariable y dinámica6 de la planta con la que se trabaja. Las redes multicapas son las más conocidas y usadas aunque solo las redes recurrentes poseen de manera inherente 3. SUYKENS, J.,” Artificial neural networks for modelling and control of non-linear systems”, Boston, MA: Kluwer Academic Publishers, c1996. Cybenko G. [1989]. "Continuous Value Neural Networks with Two Hidden Layers are Sufficient", Math Control Signal & Systems, vol.2, pp.303-314. Freeman J, “Neural networks : algorithms, applications, and programming techniques”, Loral Space Information Systems and Adjunct Faculty, School of Natural and Applied Sciences University of Houston at Clear Lake. 6 HUMUSOFT “CE 150 Helicopter model, user’s manual”, 1992. 4 5.
(10) IEL2-I-06-22. 10. a su estructura, la capacidad de representar sistemas dinámicos 7. Sin embargo, las redes recurrentes son más dif íciles de estructurar y de entrenamiento más lento, y por esto han sido tradicionalmente mucho menos utilizadas 8.. En este documento se describe en primer lugar, el sistema que se modela “helicóptero CE 150”. Luego se hace una descripción y evaluación detallada de las redes multicapas y recurrentes estudiadas, así como su uso para la obtención final de los modelos del sistema. Aun cuando una red neuronal constituya un buen identificador, su capacidad para predecir el comportamiento a futuro de la planta no está garantizada por lo que se realizan comparaciones con el modelo que ya existe en la Universidad del helicóptero en SIMULINK. Para concluir, se comparan los resultados de predicción de los modelos neuronales obtenidos.. 7 8. NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000 NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000.
(11) 11. IEL2-I-06-22 OBJETIVOS. Objetivo General. El estudio tiene como objetivo encontrar uno o varios modelo(s) del eje de elevación del helicóptero CE 150 empleando Redes Neuronales Artificiales.. Objetivos Específicos •. Hacer un estudio de las RNA en su aplicación como identificadoras de sistemas dinámicos no lineales. Evaluar sus ventajas y desventajas en este contexto.. •. Diseñar modelos neuronales del helicóptero CE150 con diferentes topologías para hacer exhaustivas comparaciones entre ellas.. •. Deter minar si los modelos obtenidos tienen mejor comportamiento que el modelo en SIMULINK existente.. •. Dejar un proyecto de grado muy bien documentado con la obtención de un modelo de un sistema dinámico por medio de RNA que per mita a futuros estudiantes tener una guía para el procedimiento que se debe seguir para la obtención de modelos de otros sistemas con características dinámicas no lineales..
(12) 12. IEL2-I-06-22 1. EST UDIO DEL HELICÓPT ERO CE150. 1.1 Descripción física de la Planta. El modelo de helicóptero CE150 es un producto diseñado para el estudio teórico y la investigación practica de los principios básicos y avanzados en el área de la ingenier ía de control. Ello incluye modelos dinámicos del sistema, identificación, análisis y el diseño de controladores 9.. El modelo consta de: •. Cuerpo del helicóptero sobre un soporte. •. Unidad de interfase. •. Tarjeta multifuncional I/O mf614.. El cuerpo del helicóptero tiene dos motores DC con imanes per manentes que se encargan del movimiento de las hélices. Tiene dos grados de libertad y ambos ejes del helicóptero son perpendiculares entre sí. Mientras el centro de gravedad es controlado por un servo motor autónomo PWM, los motores DC de las hélices están controlados proporcionalmente por la señal de salida del computador. (Ver figura 1). 9. NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000.
(13) 13. IEL2-I-06-22. Figura 1. Diagrama esquemático del sistema. La planta, que se encuentra ubicada en el laboratorio de ingeniería electrónica de la Universidad de los Andes, es un sistema dinámico multivariable ( MIMO) con dos entradas (ángulo de elevación y ángulo de azimut) y una perturbación (centro de gravedad) que pueden ser modificados, y dos salidas que son la lectura de los ángulos en los que se encuentra el sistema (50º de rotación en elevación y 160º de rotación en azimut) 10. Es un sistema no lineal, y reduciendo el orden del modelo por simplificaciones se pueden obtener modelos de orden cuatro, lo cual es uno de los aspectos más importantes de la investigación en el momento de la escogencia de los parámetros de las redes utilizadas en cuanto métodos convencionales para identificación de sistemas lineales no son adecuados en esta planta.. 1.2 Especificaciones de la Tarjeta mf614. La comunicación entre la planta y el computador se establece mediante una unidad de interfaz y la tarjeta mf61411. La tarjeta multifuncional I/O mf614 tiene 8 canales conversores A/D, 4 conversores D/A de 12 bits, 4 entradas para encoders, 4 contadores, 8 entradas digitales TTL y 8 salidas digitales TTL. Dos de los contadores son utilizados para el control PWM de las hélices del helicóptero y otro mas es utilizado para controlar el centro de gravedad. Las entradas de los encoders y las entradas digitales son utilizadas 10 11. HUMUSOFT “CE 150 Helicopter model, user’s manual”, 1992. HUMUSOFT “CE 150 Helicopter model, user’s manual”, 1992..
(14) 14. IEL2-I-06-22. para las señales de control del sistema. La tarjeta de comunicación fue configurada como se muestra en la figura 2.. Figura 2. Configuración tarjeta ‘mf614’. 1.3 Estudio experimental del sistem a. Un riguroso estudio sobre el comportamiento experimental de la planta fue necesario, en cuanto esta etapa influye de manera directa en la toma de datos que se debe realizar para sacar un modelo que se aproxime lo suficientemente bien al sistema como para ser aceptado. Dos aspectos fundamentales en este proceso son la obtención del tiempo de muestreo del sistema y su rango de operación. Para la comunicación entre el helicóptero y el computador, se realizó un diseño en SIMULINK haciendo uso del RT TOOLBOX de MATLAB (ver figura 3) el cual hace su comunicación con la tarjeta mf614 y esta, a su vez se comunica con la unidad de interfaz. El diseño per mite variar las entradas del helicóptero con cualquier señal especificada por el usuario, y exporta tanto las entradas como las salidas al ‘w rokspace’ de MA TLAB en forma de matrices. Para esta comunicación, todas las señales de entrada y salida son.
(15) 15. IEL2-I-06-22. llevadas al intervalo <-1,+1>, donde “1” es llamado Unidad de Maquina ( MU) y no tiene unidades físicas.. Figura 3. Comunicación con tarjeta ‘mf614’. El tiempo de muestreo y el rango de operación del sistema fueron hallados tras un detallado estudio experimental sobre la planta (ver figuras 4a y 4b) con ayuda de una interfase gráfica que se diseñó para que la comunicación entre el helicópteroCE150 y el usuario fuera más amable. Se observaron múltiples entradas escalón (figura 4a), además de introducir señales SBPA (figura 4b, abajo a la derecha) a lo largo de todo el rango de operación del sistema para entender el comportamiento experimental del eje de elevación de la planta (figura 4b). Con este estudio, el tiempo de muestreo del helicóptero se fijó en 0.02 segundos..
(16) 16. IEL2-I-06-22. Figura 4a. Estudio experimental de la planta, entradas escalón. Figura 4b. Estudio experimental de la planta, rango de operación El diseño del GUI12 fue realizado con el fin de tener una herramienta fácil de utilizar para maniobrar el helicóptero sin un controlador sobre el sistema. Para maniobrarlo, se modifican los valores de las variables elevación y azimut (entre -1 y 1) desde las dos barras deslizantes del GUI. Para ello, fue necesario realizar un código de tipo ‘M-file’ que. 12. Realizado conjuntamente con Fabián Rancel, estudiante Ingeniería Electrónica..
(17) IEL2-I-06-22. 17. se muestra en el anexo 4. El resultado de este diseño es una ventana como la que se muestra en la figura 5 y puede ser utilizada por cualquier persona que tenga acceso a este trabajo ‘uso de redes neuronales artificiales para el modelamiento del helicóptero ce150\ comunicación con helicóptero ce150\ com\ modificadu (matlab figure file)’. Se puede obtener ayuda en el documento ‘Ayuda’ de la mis ma carpeta.. Figura 5. GUI diseñado para estudio experimental del Helicóptero CE150.
(18) 18. IEL2-I-06-22 2. METODOLOGÍA DE IDENTIFICACIÓN. En el transcurso de la investigación se estudió la identificación con redes neuronales de diferentes plantas en varias universidades del mundo en busca de un procedimiento que utilizara sistemas similares a la planta que se utilizó en este trabajo, la cual tiene dos métodos de identificación13: •. Identificación por partes, formulando sumatorias de fuerzas y torques, haciendo uso de las leyes de New ton.. •. Procesando las señales de entrada y salida, considerando el sistema como una caja negra, que es por el que eventualmente se opta para una identificación con RNA.. Para la identificación del helicóptero CE150, se siguió la metodología de identificación propuesta por M. Norgaard, y se utilizo el soporte informático NNSYSID (herramienta adquirida gratuitamente) para uso con MATLAB.. Durante el trabajo realizado se buscaron los métodos de entrenamiento y estructuras de RNA existentes que mejor se ajustaran al modelamiento del sistema, es decir uno que se aproxima en niveles aceptables (validación del modelo) al comportamiento real de la planta. Las redes neuronales básicas más conocidas y más ampliamente usadas son las redes de propagación hacia adelante (también llamadas perceptrones multicapa o MLP). Éstas realizan solo una transformación no- lineal directa de los datos de entrada, para. 13. HUMUSOFT “CE 150 Helicopter model, user’s manual”, 1992..
(19) 19. IEL2-I-06-22. aproximar los datos de salida, lo cual resulta en una estructura de red estática14. Existen también redes que presentan retroalimentaciones (lazos) en su estructura de conexión, que se llaman redes recurrentes y sí presentan un comportamiento dinámico15.. Estos dos tipos de redes, en su uso para identificación de sistemas dinámicos, conducen a dos esquemas diferentes (‘arquitecturas internas’ de RNA) de identificación neuronal: •. La red multicapa: Se logra una emulación del comportamiento dinámico introduciendo como entradas a la red la historia pasada de datos de la planta (entradas y salidas en instantes pasados). El MLP básico es construido al ordenar las neuronas en capas, permitiendo que las entradas de cada neurona sean solamente las salidas de las neuronas de la capa anterior o las entradas externas (Ver figura 6). La fórmula matemática que representa lo que ocurre en una red MLP es la siguiente:. Figura 6. Red perceptrón multicapa (MLP) “fully connected” de 2 capas con 3 entradas (más el ‘bias’), 2 unidades escondidas y dos unidades de salida •. La red recurrente: A diferencia de las MLP, donde existe una relación algebraica entre entradas y salidas, las redes recurrentes evolucionan dinámicamente como el proceso identificado. La recurrencia puede ser implementada de varios modos con estructuras que realimentan nodos interna o externamente (Ver figura 7). Las. 14. SUYKENS, J.,” Artificial neural networks for modelling and control of non-linear systems”, Boston, MA: Kluwer Academic Publishers, c1996. LAMANNA R, URIA M., “Identificación de un reactor de saponificación con Redes Neuronales”, Universidad Simón Bolívar. Dpto. de Procesos y Sistemas. Caracas, Venezuela.. 15.
(20) IEL2-I-06-22. 20. redes realimentadas externamente siguen siendo redes MLP, por lo que la representación matemática de lo que ocurre internamente sigue siendo la misma.. Figura 7. Red recurrente “fully connected” realimentada externamente. 2.1 Experimento. EL propósito del experimento es recolectar un arreglo de datos de la forma. Z N = {[u(t ), y (t )], T = 1,..., N } que describen el comportamiento dinámico del sistema en todo su rango de operación. Para este propósito se construyó en SIMULINK una señal con la capacidad de variar alrededor de todo el rango de operación del sistema (ver figuras 8a y 8b) tanto en amplitud como en frecuencia (imponiendo perturbaciones en forma de escalones de frecuencia aleatoria y de amplitud máxima no mayor a un 30% alrededor de los valores de operación) puesto que un sistema no lineal demanda una señal de este tipo 16. El código para la realización de dicha señal es un ‘M-file’ (Anexo 5) que rige el comportamiento del bloque ‘S-function’ en SIMULINK (ver figura 20), cuya salida es la señal especificada.. 16. SUYKENS, J.,” Artificial neural networks for modelling and control of non-linear systems”, Boston, MA: Kluwer Academic Publishers, c1996 ..
(21) IEL2-I-06-22. 21. Figura 8a. Datos de entrenamiento [entradas u1(t) y salidas y1(t)], T=9000. Figura 8b. Datos de validación [entradas u2(t) y salidas y2(t)], T=2300. Finalmente, se trabajó en el procesamiento de los datos lo cual incluye pruebas de alinealidad, introducción de varianza ‘uno’, y remoción de offset, ruido, perturbaciones y otros efectos indeseados de los datos (ver figura 9a y 9b). Este proceso per mite que el algoritmo de entrenamiento de la red sea numéricamente más robusto y converja más rápidamente. La información sobre la operación de la planta no se procesó en línea, sino que fue acumulada y luego usada por cada red durante su entrenamiento, por lo que se utilizaron solo métodos batch ( métodos que en cada iteración durante el entrenamiento de la red requiere de la totalidad del arreglo de datos ZN)..
(22) 22. IEL2-I-06-22. Figura 9a. Datos de entrenamiento con varianza uno y media cero. Figura 9b. Datos de validación con varianza uno y media cero. 2.2 Selección de Estructura Modelo. La selección de una estructura modelo es la escogencia de un grupo de estructuras candidatas, dentro de las cuales se debe explorar la más apropiada para el modelo de acuerdo a criterios de estabilidad, respuesta impulso, ruido, complejidad y características del sistema. El trabajo realizado en esta etapa consistió en la selección de dicha.
(23) 23. IEL2-I-06-22. estructura modelo, para posterior mente deter minar las entradas de la red y diseñar una ‘arquitectura interna’. Los criterios a establecer en la escogencia de la estructura interna son el número de capas de la red, el número de nodos en cada capa y la función de activación de cada neurona.. En la búsqueda de estructuras modelo se optó por dos de ellas: •. NNARX (MLP) : La estructura ARX neuronal deter mina un modelo no lineal de un sistema dinámico de acuerdo a las siguientes expresiones matemáticas:. Donde. es un vector que contiene los regresores (entradas a la red),. es el. vector que contiene los pesos de las conexiones, y g es la función que está dada por la red interna. •. NNARMAX1 (RECURRENTE): La estructura ARMAX neuronal deter mina un modelo no lineal de un sistema dinámico de acuerdo a las siguientes expresiones matemáticas:. Donde. es el error de predicción.. Aun cuando la estructura NNA RMAX1 es de ‘propagación hacia adelante’, esta asume un carácter recurrente en cuanto los regresores contienen una realimentación de la salida del modelo. NNARMAX1 cuenta con un filtro lineal MA que filtra el error de predicción para evitar modelar el ruido y así evitar problemas de inestabilidad del estimador. Tras la escogencia de las estructuras modelo a utilizar, se buscaron tanto la arquitectura interna de cada red como las entradas que van a ser utilizadas en el modelo diseñado: •. Para la ‘arquitectura interna’ de cada estructura modelo se configuraron redes de 2 capas (1 capa escondida y 1 capa de salida). Para cada una se varió tanto el número de nodos en cada capa como las funciones de activación, entre las cuales se encuentran la función de activación lineal y la función tangente hiperbólica. Este proceso es lento y tedioso, pues no existe un método para determinar esta estructura y es básicamente una metodología de ensayo y error. En la etapa de validación se acepta o se descarta la escogencia de cada arquitectura interna de.
(24) 24. IEL2-I-06-22. acuerdo a criterios de sobre-aproximación o pobre estimación, además de criterios de visualización del comportamiento del modelo con respecto al sistema real. •. Deter minar las entradas de las redes es un proceso que se realizó haciendo uso de la función Lipschitz. Un número de entradas y salidas pasadas (también llamado espacio de retardo o numero de regresores) muy pequeño no modelará bien las dinámicas del sistema. Un número de regresores muy alto también es un problema en cuanto en la teoría de sistemas no lineales representa factores comunes en la función de transferencia. El cociente de Lipschitz debe cumplir con la siguiente expresión:. qij ( z) =. y (t i ) − y(t j ) (u(t i ) − u (t j )) 2 + ... + (u(t N ) − u(t N )) 2. Donde q es el cociente de Lipschitz y ‘z’ es el número total de regresores. El algoritmo general para encontrar el espacio de retardo es el siguiente 17: - Para un deter minado espacio de retardo, se deter mina el cociente para todas las combinaciones de pares entrada-salida. - Se seleccionan los cocientes mas grandes (p=0.01N-0.02N). - Se evalúa el criterio 1. q−n. ⎛ p ⎞p = ⎜⎜ ∏ n q n ( k ) ⎟⎟ ⎝ k =1 ⎠. - Se repiten los cálculos alrededor de un rango de espacios de retardo. - Se grafica el criterio en función del número de regresores, y se opta por el número de entradas a utilizar en el sistema como el ‘codo’ de la curva.. Haciendo uso de la herramienta NNSYSID, se graficó el criterio (ver figura 10) y de esta se determinó que el número de regresores del sistema es siete.. 17. NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000.
(25) 25. IEL2-I-06-22. Figura 10. Grafica resultado del criterio de Lipschitz. 2.3 Estim ación del Modelo. Después de hacer la escogencia de la estructura de la red, a esta se le aplica el conjunto de datos sacados del sistema para escoger el modelo que mejor los representa. A este proceso se le llama también, entrenamiento. Existen múltiples métodos para la realización de esta tarea que consiste en un algoritmo de optimización para determinar los pesos que regirán las conexiones entre nodos dentro de la estructura modelo previamente escogida.. En tér minos matemáticos, tras la obtención de un conjunto de datos. Z N = {[u(t ), y (t )], T = 1,..., N } y un conjunto de modelos candidatos. y (t ) = yˆ (t θ ) + e(t ) el entrenamiento consiste en determinar un mapeo desde el conjunto de datos a un conjunto de posibles pesos correspondientes al modelo candidato. Z N → θˆ para obtener 1 modelo que dé predicciones con la menor inexactitud posible a las salidas reales del sistema 18.. 18. NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000.
(26) 26. IEL2-I-06-22 2.3.1 ‘Criterio’. Para evaluar dicha inexactitud entre salida de predicción y salida del sistema, se utiliza una medida simple especificada en tér minos del error cuadrático medio llamado “función de costo” o “criterio” 19. ∑ [y (t ) − yˆ (t θ )] N. 1 V N (θ , Z ) = 2N N. 2. =. t =1. 1 2N. N. ∑e. 2. (t , θ ). t= 1. 2.3.2 ‘Generalizacion del Error’ y el Concepto de Regularización. El criterio puede ser extendido por un termino llamado ‘regularizacion por decaimiento de los pesos’ o ‘w eight decay’ para hacerle frente a un tipo de error llamado ‘generalización del error’, el cual descompone el error en ‘error de bias’ (porción del error debido a una estructura insuficiente incapaz de predecir la salida) y ‘error de varianza’ (la razón por la cual no se escoge una estructura gigante, por ejemplo 50 neuronas, para reducir el ‘error de bias’ es que el ‘error de varianza’ trabaja inversamente proporcional en este aspecto). La extensión del criterio o regularización reduce el ‘error de varianza’ a expensas de un mayor ‘error de bias’ y está dada por. 2.3.3 Entrenam iento. Durante el entrenamiento o algoritmo de optimización para encontrar los pesos, se busca el conjunto de pesos con el menor valor de “función de costo” o “criterio”. θˆ = arg minV N (θ , ) Z N θ. bajo algún esquema de minimización iterativa 20. θ ( i +1 ) = θ (i ) + f i u i Donde θ (i ) especif ica la iteración actual ‘i’, f i la dirección de búsqueda, y u i la dimensión del escalón.. 19 20. NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000 NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000.
(27) IEL2-I-06-22. 27. Tanto para las redes multicapa como para las redes recurrentes se utilizó el algoritmo de aprendizaje de segundo orden Levenberg-Marquardt ( método estándar para minimización del criterio de error medio cuadrático) 21 dado que proporciona una rápida convergencia y es un método muy robusto, a pesar de ser uno de los más complejos. El problema de optimización del método Levenberg-Marquardt es estudiado en detalle en Marquardt, D (1963).. 2.4 Validación del Modelo. Finalmente, cuando un modelo es estimado, debe ser evaluado para saber si cumple o no las demandas iniciales. La evaluación es realizada bajo comportamientos del modelo con un arreglo de datos de validación, diferentes a los utilizados durante el entrenamiento. En el proceso de validación de cada modelo, las medidas de la magnitud del error de validación no son el principal criterio para preferir un modelo sobre otro cualquiera y por el contrario, es un conjunto de juicios. Dentro de las tareas a realizar se encuentran la evaluación de los residuos (errores de predicción), la estimación del promedio del ‘error de generalización’, y la visualización de la habilidad del modelo para predecir que incluye comparación entre graficas de predicción y graficas de salidas observadas, y predicciones de un paso adelante. 2.4.1 Evaluación de los Residuos. Idealmente, los errores de predicción de la RNA entrenada deben ser impredecibles a partir de combinaciones de entradas y salidas pasas22. Para investigar esto se debe probar que los residuos no están correlacionados con todas las combinaciones de entradas y salidas (lineales y no lineales) pasadas 23. Examinando esto, se asegura que los residuos no contienen información acerca de residuos anteriores y que toda la información se ha extraído de los datos de entrenamiento, asegurando que el modelo aproxima bien el sistema.. 21 22 23. NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000 SUYKENS, J.,” Artificial neural networks for modelling and control of non-linear systems”, Boston, MA: Kluwer Academic Publishers, c1996 . NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000.
(28) 28. IEL2-I-06-22 Para este propósito, se evaluaron (con un intervalo de confianza del 95%) •. la función de auto correlación de los errores de predicción con un ‘espacio de retraso’ de 0 a 25 regresores. •. la función de correlación entre el error de predicción y la entrada con un ‘espacio de retraso’ de 25 regresores pasados y 25 regresores futuros. 2.4.2 Estim ación de la ‘Generalización del Error’. Como se sabe la ‘generalizacion de error’ descompone el error en ‘error de bias’ y ‘error de varianza’, con lo cual se puede establecer cuando el error está dado por ruido o si el error esta dado por una pobre estimación del modelo. La ‘generalizacion de error’ para RNA entrenadas con la extensión del criterio (regular ización) puede ser estimada por el método de ‘error de predicción final de Akaike’ ( FPE) que esta dada por la siguiente expresión:. 2p⎞ ˆ ˆ N ⎛ VˆM = ⎜ 1 + ⎟V (θ , Z ) N ⎠ N ⎝ 2.4.3 Visualización de la Habilidad de Predicción del Modelo. Los errores y pruebas descritos hasta ahora miden la exactitud de la predicción en términos de una cantidad escalar. Sin embargo, las graficas pueden revelar de manera visual si estos criterios están siendo llevados a la realidad del modelo. Haciendo una detallada inspección, se puede deter minar una sobre-aproximación o una pobre estimación del modelo..
(29) IEL2-I-06-22. 29. 2.4.4 Aceptación del Modelo. La anterior metodología se basa en la continua realimentación del proceso, que permite llegar finalmente a la aceptación de un modelo de acuerdo a los requerimientos del diseñador..
(30) 30. IEL2-I-06-22 3. IDENTIFICACIÓN POR M ETODOS CONVENCIONAL ES. Antes de entrar a investigar modelos neuronales muy elaborados y complejos, se trabajó con sistemas de identificación convencionales para probar si un modelo no lineal era capaz de aproximar moderadamente bien el sistema. En esta etapa se trabajó con modelos “autoregresivos” o “serie-paralelo” (ARX), y con modelos “error de salida” (OE). Los resultados obtenidos son considerablemente pobres (ver figuras 11a y 11b), especialmente con magnitudes muy grandes. Se concluye entonces que esto es debido a que el conjunto de datos obtenidos es no lineal, por lo que un modelo lineal no es capaz de predecir su comportamiento.. El mejor resultado en este proceso fue logrado por el siguiente modelo ARX:. Discrete-time IDPOLY model: A(q)y(t) = B(q)u(t) + e(t) A(q) = [1 - 2.519 (+-0.01051) q-1] + [2.163 (+-0.02854) q-2]- [0.3938 (+-0.0365) q-3] – [0.3299 (+-0.03656) q-4] + [0.04408 (+-0.03611) q -5] + [0.09476 (+-0.02717) q-6] – [ 0.04267 (+-0.009603) q-7]. B(q) = [38.66 ( +-2.659) q-1] + [152 (+-3.342) q-2] –[62.51 (+-3.698) q-3] – [70.04 (+-3.749) q4. ] – [13.42 (+-3.798) q-5] – [ 7.556 (+-3.753) q -6] – [34.41 (+-3.245) q-7]. Estimated using ARX Loss function 8.11301 and FPE 8.12272 Sampling interval: 1.
(31) 31. IEL2-I-06-22. Figura 11a. Pobre desempeño de identificación del modelo A RX ( Fit de 39.79%). En negro: salida experimental. En azul: salida estimada.. Figura 11b. Acercamiento de la figura 11a para observar detalladamente puntos críticos.
(32) 32. IEL2-I-06-22 4. IDENTIFICACIÓN CON REDES MULTICAPAS. La red multicapa para modelar el helicóptero CE150 que se diseñó es una red MLP que consiste en una capa de entrada con siete regresores, una capa escondida con siete unidades o neuronas y una capa de salida (ver figura 12), donde, como se sabe, la información se propaga solo en una dirección. Las funciones de activación utilizadas en las neuronas de la ‘capa escondida’ son de tipo tangente hiperbólica, mientras la función de activación de la única neurona existente en la capa de salida es de tipo lineal (lo cual no implica que la red sea lineal). La estructura modelo que mejor se aproximó al sistema a modelar fue la red neuronal ARX ( NNA RX). En este modelo no se tiene problemas de inestabilidad en el estimador (caso relevante en redes recurrentes) puesto que solo existe una relación algebraica entre la predicción y las entradas pasadas de la NNARX.. Figura 12. Estructura de la red MLP (especificada por los pesos de las matr ices w 1 y w2) diseñada para modelar el helicóptero CE150. Pesos positivos están representados por conexiones sólidas, pesos negativos están representados por conexiones punteadas. Las líneas en los nodos representan el ‘bias’.. 4.1 Obtención del Modelo MLP. La red ARX neuronal con la estructura interna descrita fue entrenada por el algoritmo de entrenamiento Levenberg_Marquardt con un valor de lambda de 0.015625. Para hacerle frente al concepto de generalización, se extendió el criterio (función de costo) con el.
(33) IEL2-I-06-22. 33. término de regularización que se fijó en un valor de 10-3. También se utilizó el parámetro de entrenamiento ‘maxiter’ con un valor de 230 iteraciones para evitar la sobreaproximación que se venía presentando en la red. El vector criterio (V N o crit_vec en el modelo) obtuvo un valor final de 0.00098223, y el error de validación (V T o NSSE en el modelo) fue de 1.4367. El código en MATLAB (utilizando el toolbox NNSYSID) con el cual se obtuvo el modelo MLP se encuentra en el anexo2.. El resultado de esta identificación es un modelo en MA TLAB que contiene las matr ices w 1 y w 2 con los pesos correspondientes a la red multicapa diseñada. El modelo puede ser utilizado por medio del toolbox NNSYSID, con un arreglo (vectores fila) de datos de entradas y salidas del Helicóptero CE150. Las matrices y todos los parámetros del modelo neuronal se encuentran en un w orkspace de MATLAB en la carpeta ‘Uso de Redes Neuronales Artificiales para el Modelamiento del Helicóptero CE150/Modelos/Modelo Red Perceptron Multicapa/w orkspace modelo MLP’.. 4.2 Validación del Modelo NNARX. En las figuras 13 a, b y c se visualiza la habilidad para predecir de la red diseñada. Las predicciones que arroja el modelo sobre el conjunto de datos de validación son satisfactorias en cuanto se obtiene una red sin sobre-aproximación o pobre estimación entre la salida experimental y la salida de predicción. La figura 13a es la comparación entre salidas experimentales y la predicción de un-paso adelante del modelo, mientras que las figuras 13b y 13c son dos graficas con aspectos claves a determinar: sobreaproximación y pobre estimación. El modelo, como se ve, no cuenta con ninguna de las dos pues se tiene (figura 13b) un punto crítico sobre el cual se observa una buena estimación para concluir que no hay una pobre estimación y en la figura 13c se ratifica la habilidad de la red para evitar sobre-aproximaciones, pues se nota que los datos experimentales (azul) tienen ruido y el modelo los pasa por alto..
(34) 34. IEL2-I-06-22. Figura 13a. Graficas de error de predicción de la red MLP. Figura 13b. Graficas de error de predicción de la red MLP en puntos críticos. Figura 13c. Graficas de error de predicción de la red MLP sobre datos con ruido.
(35) IEL2-I-06-22. 35. Por otra parte, en la figura 14 se encuentran las pruebas de correlación realizadas al modelo NNARX. De estas se puede concluir que los residuos o errores de predicción no contienen información sobre residuos pasados. La primera prueba (figura 14, arriba) es la prueba de auto-correlación de los errores de predicción de este modelo y demuestra que en su mayoría (nótese que para un espacio de retardo de 2, la prueba ya se encuentra en el intervalo de confianza del 95%), los residuos no dependen de residuos pasados. Es obvio que comience en uno dado que el residuo actual depende enteramente de él mismo. La segunda prueba (figura 14, abajo) es la prueba de correlación entre los residuos y la entrada al modelo. De ella se establece que los residuos son independientes a entradas pasadas y futuras.. Figura 14. Resultados de las pruebas de correlación realizadas a la red MLP diseñada. Finalmente se estimó la ‘generalización del error’ (V M o FPE en el modelo) por el método del ‘error de predicción final de Akaike’ y se obtuvo un valor de 1.5613, lo que representa un error de 0.6%. Este error es representativamente bueno comparado tanto con el modelo lineal como con el resto de redes entrenadas durante el desarrollo de este trabajo..
(36) IEL2-I-06-22. 36. 4.3 Recorte de la Red o ‘Prunning’. Aun cuando los resultados finales son muy buenos, la red inicial contaba con una sobreaproximación del sistema por lo cual fue necesario un proceso mediante el cual se recorta el modelo a 58 nodos (nótese en la figura 12 que la red no es totalmente conectada o “fully connected”).. El recorte de varias de las neuronas o nodos se conoce como pruning y además permite que la red sea finalmente entrenada sin regularización 24. Este procedimiento, que utiliza la estrategia de Optimal Brain Surgeon (OBS), se logra reduciendo una en una el número de neuronas de la red y evaluando para cada caso tanto el error de entrenamiento como el error con datos de validación (ver figura 15). Finalmente, se encuentra el número de neuronas con el cual se obtuvo el menor error y es con dicho número de nodos que se reestructura la red interna. Nótese en la figura 15, que entre 50 y 60 (específicamente en 58) se encuentra el mejor equilibrio entre los errores por lo que la estructura interna de la red diseñada cuenta con 58 nodos.. Esta estrategia es la más importante que se conoce para este procedimiento y es la única que se implementa para modelos de sistemas dinámicos. El método fue inicialmente propuesto por Hassibi y Stork en “Advances in Neural Information Processing Systemas”, pero Hansen y Pedersen en “Controlled Grow th of Cascade Correlation Net” derivaron una modificación del método para que pueda soportar redes entrenadas con la extensión del ‘criterio’ 25.. 24 25. NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000 NORGAARD, M., “Neural networks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000.
(37) IEL2-I-06-22. 37. Figura 15. Errores de validación, de entrenamiento y FPE para cada una de las redes reducidas por ‘prunning’. El parámetro es el número de nodos que se están empleando.
(38) 38. IEL2-I-06-22 5. IDENTIFICACIÓN CON REDES RECURRENT ES. La red recurrente para modelar el helicóptero CE150 que se diseñó es una red que depende de los errores de predicción pasados. Esta red cuenta con siete regresores entre los cuales se encuentran los errores pasados y tiene una estructura interna de diez nodos con funciones de activación tangente hiperbólica en la ‘capa escondida’ y una neurona de tipo lineal en la capa de salida (ver figura 16). Entre las redes recurrentes, la que mejor se aproximó es una red de estructura NNARMAX1, pues se puede aprovechar el filtro lineal MA con el cual cuenta y así evitar problemas de inestabilidad en el predictor. Esta estructura es una modificación de las MLP con realimentación externa, convirtiéndose as í en una red recurrente. También se entrenaron redes con estructuras NNOE y NNSSIF, obteniendo resultados de validación menos acertados que los de la red escogida.. Figura 16. Estructura de la red recurrente especificada por los pesos de las matrices w 1r y w2r diseñada para modelar el helicóptero CE150 (realimentación externa no es mostrada, ver figura 7). Pesos positivos están representados por conexiones sólidas, pesos negativos están representados por conexiones punteadas..
(39) 39. IEL2-I-06-22 5.1 Obtención del Modelo Recurrente. La red ARMAX neuronal con la estructura interna descrita fue entrenada por el algoritmo de entrenamiento Levenberg-Marquardt. El valor de lambda se fijó en 16777216 e igualmente se extendió el criterio (función de costo) con el término de regularización que se estableció en 10-3. Contrario a la red MLP, en este caso no se utilizó el parámetro de entrenamiento ‘maxiter’ dado que la estructura cuenta con el filtro MA para evitar la sobreaproximación que se presentaba en el modelo perceptrón muticapa. El vector criterio (V N, o crit_vec en el modelo) obtuvo un valor final de 0.0012847 y el error de validación (V T , o NSSE en el modelo) fue de 1.9234. El código en MATLAB (utilizando el toolbox NNSYSID) con el cual se obtuvo este modelo recurrente se encuentra en el anexo 3.. El resultado de esta identificación es un modelo en MA TLAB que contiene las matrices w1r y w 2r con los pesos correspondientes a la red recurrente diseñada. El modelo puede ser utilizado por medio del toolbox NNSYSID, con un arreglo (vectores fila) de datos de entradas y salidas del Helicóptero CE150. Las matrices y todos los parámetros de la red se encuentran en un workspace de MATLAB en la carpeta ‘Uso de Redes Neuronales Artificiales. para. el. Modelamiento. del. Helicóptero. CE150/Modelos/Modelo. Red. Recurrente/w orkspace modelo recurrente’. 5.2 Validación del Modelo NNARMAX1. En las figuras 17 a, b y c, se visualiza la habilidad para predecir de la red recurrente diseñada. La grafica 17a es la comparación entre salidas experimentales y la predicción de un-paso adelante del modelo NNA RX1 que muestra como este puede modelar adecuadamente los datos de validación. Es un modelo que no cuenta con sobreaproximaciones o pobre estimación. La red arroja buenos resultados en los puntos críticos de la validación que son picos pronunciados (para probar que hay una buena estimación) y ruido en algunos instantes (para probar que no hay sobre-aproximación). El modelo es especialmente confiable en cuanto es muy preciso al momento de no modelar el ruido (figura 17c)..
(40) 40. IEL2-I-06-22. Figura 17a. Graficas de error de predicción de la red Recurrente. Figura 17b. Graficas de error de predicción de la red Recurrente en puntos críticos. Figura 17c. Graficas de error de predicción de la red Recurrente sobre datos con ruido.
(41) IEL2-I-06-22. 41. En la figura 18 se encuentran las pruebas de correlación realizadas al modelo NNARX1. En la prueba de auto-correlación (figura 18, arriba) se puede ver como estas se encuentran dentro del intervalo de confianza del 95% solo después de 7 regresores (resultado esperado dado que la recurrencia depende de siete errores de predicción pasados), asegurando que toda la información se ha extraído de los datos de entrenamiento y la predicción no se ve afectada por errores de predicción pasados exceptuando los de los regresores. La segunda prueba (figura 18, abajo) es la prueba de correlación entre los residuos y la entrada al modelo. De ella se establece que, al igual que en el modelo MLP, los residuos son independientes a entradas pasadas y futuras.. Figura 18. Resultados de pruebas de correlación realizadas a la red Recurrente diseñada. Por último, se calculó la ‘generalización del error’ de la red realimentada (V M o FPE en el modelo) por el método del ‘error de predicción final de Akaike’ y se obtuvo un valor de 2.0949, lo que representa un error de 0.8%. Este error no es tan bueno como la generalización del error obtenido en la red MLP, aun así, sigue siendo un error aceptable para la validación del modelo NNA RX1..
(42) IEL2-I-06-22. 42. 5.3 Recorte de la Red o ‘Prunning’. Contrario al proceso de recorte que se tuvo que realizar para el modelo MLP, la estructura “conectada completamente” (de la red recurrente diseñada) es la estructura con mejor comportamiento. Esto se atribuye al filtro con el cual cuenta la estructura NNARX1, pues este filtra el error de predicción para evitar modelar el ruido..
(43) 43. IEL2-I-06-22 6. COMPARACION CON MODELO EXIST ENT E DEL HELICOPT ERO. Tras correr simulaciones haciendo uso del modelo del helicóptero CE150 ya existente en la universidad, se establece que los modelos (MLP y recurrente) obtenidos haciendo uso de RNA son de mejor desempeño para predecir el comportamiento del sistema. A pesar de que el comportamiento del modelo ya existente se asemeja a las salidas tomadas experimentalmente, las redes neuronales tienen la capacidad de predecir las salidas de acuerdo al comportamiento experimental del helicóptero y no a partir de una derivación directa del modelo por computación de las sumatorias de fuerzas del sistema. Para este último procedimiento es necesario hacer uso de aproximaciones, de supuestos y de simplificaciones, lo cual hace que el modelo sea insuficiente con respecto a los modelos neuronales.. En la figura 14 se pueden observar. comparaciones en detalle entre las salidas del. modelo en ecuaciones, las estimaciones del modelo MLP, y las salidas reales de la planta, a partir de las mis mas señales de entrada a cada uno de los modelo. De ellas se puede notar claramente que el modelo en ecuaciones muestra una tendencia hacia el comportamiento real del sistema, mas no es una aproximación exacta como sí lo es la salida estimada por el modelo neuronal diseñado en este trabajo. Para este proceso se utilizaron tanto la señal de los procesos de validación como otras señales SBPA con las características descritas en la sección de experimento.. La figura 14a es una comparación en detalle de las salidas reales del helicóptero (rojo), salidas del modelo MLP (azul interlineado) y salidas del modelo existente en la universidad (azul constante), a partir de los datos de validación. De ella se nota como el modelo neuronal aproxima bastante bien el modelo real, mientras que el modelo en ecuaciones solo sigue la tendencia, es decir que sube y baja ‘al compás’ del modelo real sin llegar a tomar los mismos valores de este. Por otro lado, la figura 14b es un claro ejemplo de la diferencia ente la señal que estima el modelo en ecuaciones y los modelos real y neuronal, pues el modelo en ecuaciones ( modelo de la universidad) se satura en el tiempo de muestreo 3580 (750 seg) de los datos de validación, contrario a lo que sucede en el comportamiento experimental del helicóptero y en el modelo MLP diseñado en este trabajo. No solo se trabajó con datos de validación y en la figura 14c se ve el comportamiento predictivo del modelo neuronal y el modelo en ecuaciones a partir de.
(44) 44. IEL2-I-06-22. otros datos de entrada que se encuentran en la carpeta ‘uso de redes neuronales artificiales para el modelamiento del helicóptero ce150\ modelos \ datos (sin organizar) adicionales \ datos \ sobre 0.65 y con escalones con ts=0.02’.. *Para la comparación en una sola grafica de las tres salidas (real, modelo neuronal y modelo en ecuaciones), fue necesaria la nor malización de los datos de ‘salida del modelo real’ y los datos del ‘modelo neuronal’.. Figura 14a. Salidas reales del helicóptero (rojo), salidas del modelo MLP (azul interlineado) y salidas del modelo existente en la universidad (azul constante), con datos de validación.. Figura 14b. Saturación del modelo en ecuaciones (modelo de la universidad), contrario a lo que sucede con modelo real y modelo MLP.
(45) IEL2-I-06-22. 45. Figura 14c. Comparación detallada con datos diferentes a los de validación.
(46) 46. IEL2-I-06-22 7. CONCLUSIONES •. La red perceptrón multicapa diseñada es el mejor modelo del sistema que se obtuvo durante el desarrollo de este trabajo, aun cuando el desempeño de la red recurrente está muy cercano a las estimaciones del modelo MLP. Como se ve en el proceso de validación de cada modelo, las medidas de la magnitud del error de validación no fueron el principal criterio para preferir un modelo neuronal sobre otro cualquiera y por el contrario, fue un conjunto de juicios. Por un lado, las pruebas de correlación del modelo de la red multicapa son menos ajustados al intervalo de confiabilidad del 95% que los del modelo de la red recurrente pero, por otro lado, la estimación del ‘promedio del error de generalización’ y la visualización de la habilidad de cada modelo para estimar la salida arrojó mejores resultados en la red multicapa. Se obtuvo que la red MLP cuenta con un error FPE de 1.56, lo que representa un error de 0.6%, mientras que la red realimentada tiene un error FPE de 2.09, lo que representa un error de 0.8%. Se pudo establecer además, que ambas redes diseñadas tienen la capacidad de evitar sobre-aproximación y de estimar la salida acertadamente en casos de validación críticos. Sin embargo, la red MLP tuvo un ligero mejor comportamiento que la red realimentada.. •. Las redes neuronales son una herramienta eficiente y rápida para el modelamiento de sistemas dinámicos no-lineales. Una vez entrenada, puede ser utilizada por varios investigadores sin necesidad de resolver problemas matemáticos complejos o métodos numéricos sofisticados. Otras ventajas son que no requieren de un modelo teórico ya que son entrenadas con resultados experimentales y que ocupan poco espacio en memoria.. •. La mayor desventaja del uso de redes neuronales para la identificación de sistemas es que no se conoce la topología de las capas escondidas. Lo anterior implica que la búsqueda de la red óptima sea algo tedioso y lento, pues debe hacerse casi siempre por ensayo y error. En el caso de las redes recurrentes este proceso de identificación es aún más lento y más tedioso por la estructura dinámica de estas redes..
(47) IEL2-I-06-22 •. 47. La herramienta NNSYSID es una herramienta avanzada comparada con otras herramientas como los toolbox de ‘Identificación de Sistemas’ y de ‘Redes Neuronales’ de MATLAB. Esta se encuentra a la vanguardia entre las herramientas utilizadas en las Universidades con fines de identificación.. •. Para la comunicación entre el helicóptero CE150 y un computador se realizó un diseño en SIMULINK haciendo uso del RT TOOLBOX de MATLAB, evitando así la comunicación por comandos como se venía haciendo en la Universidad de los Andes..
(48) 48. IEL2-I-06-22 8. PERSPECTIVAS •. Con este trabajo se pudo dejar un aporte en la universidad para que se incentive el uso de las RNA en la obtención de modelos de sistemas dinámicos no-lineales, pues es una opción acertada y ampliamente utilizada en la docencia de muchas universidades dado que es un método que arroja buenos resultados de forma rápida si se cuenta con la herramienta adecuada. Durante el transcurso del trabajo ya se pudo incentivar esta metodología con estudiantes de maestría y un estudiante de especialización. Se espera que las RNA sigan siendo objeto de estudio en la docencia de la universidad y que en dicha labor, este trabajo sea de gran aporte para futuros estudiantes.. •. Para una continuación del trabajo realizado con el helicóptero, se propone el desarrollo de un controlador neuronal. Para tal fin, es recomendable hacer uso del toolkit NNCTRL que es un conjunto de herramientas para el diseño y simulación de sistemas de control basado en RNA. NNCTRL es una expansión de NNSYSD y ambos pueden ser encontrados en la carpeta ‘Uso de redes neuronales artificiales para el modelamiento del helicóptero CE150/Herramientas’.. •. Para una siguiente investigación se propone el desarrollo del modelo de azimut del helicóptero CE150 con RNA. Para ello se debe trabajar con un controlador en línea durante la etapa de experimento dado que el sistema se vuelve inestable cuando se emplean ambos ejes de libertad..
(49) 49. IEL2-I-06-22 9. REFERENCIAS. • M. Nørgaard: “Neural Netw ork Based System Identification Toolbox,” Tech. Report. 00- E891, Department of Automation, Technical University of Denmark, 2000. (Herramienta gratis). • DEMUTH, H. y BEALE, M., 1998, “Neural Netw ork toolbox for using w ith MATLAB, User’s guide”. • HILERA, J. y MARTINEZ, V., “Redes Neuronales Artificiales", 2000. Alfaomega. Madrid. España. • NORGAARD, M., “ Neural netw orks for modelling and control of dynamic systems: a practitioner's handbook”, Springer, c2000. • SUYKENS, J.,” Artificial neural netw orks for modelling and control of non-linear systems”, Boston, MA: Kluw er Academic Publishers, c1996. • HUMUSOFT “ CE 150 Helicopter model, user’s manual”, 1992. • HUMUSOFT “ Real time toolbox, user’s manual”, 1995. • LAMANNA R, URIA M. [2001], “ Identificación de un reactor de saponificación con Redes Neuronales”, Universidad Simón Bolívar. Dpto. de Procesos y Sistemas. Caracas, Venezuela. • CYBENKO G. [1989]. "Continuous Value Neural Netw orks w ith Tw o Hidden Layers are Sufficient", Math Control Signal & Systems, vol.2. • FREEMA N J., “Neural netw orks: algorithms, applications, and programming techniques”, Loral Space Information Systems and Adjunct Faculty, School of Natural and Applied Sciences University of Houston at Clear Lake. • NORGAARD, M., “ Neural netw orks for modelling and control of dynamic systems: Toolbox’s tutorial 1 & 2”. • LAXMIDHAR B, SWAGAT K., “ Identification of Nonlinear Dynamical Systems Using Recurrent Neural Netw orks.” Department of Electrical Engineerin, Indian Institute of Technology. Kanpur, India. • MARQUA RDT, D (1963). “Un algoritmo para estimación por mínimos cuadrados de parámetros no lineales”..
(50) 50. IEL2-I-06-22 ANEXO1. DESCRIPCION MODELOS OBT ENIDOS. Los modelos son archivos .mat y a continuación se hace una breve descripción de todas las variables (de entradas y salidas) que se utilizaron en las funciones de la herramienta NNSYSID para diseñar los modelos. Los valores que se obtuvieron para cada una de estas variables se encuentran en los archivos .mat (w orkspace) de cada modelo. El nombre que se les da a continuación son los mis mos que se le dieron durante el desarrollo del modelo (en algunos casos varían con respecto al tutorial del toolbox), por lo cual son los que se encuentran en los archivos .mat. Los modelos se encuentran en la carpetas ‘USO DE REDES NEURONALES ARTIFICIALES PARA EL MODELAMIENTO DEL HELICOPTERO CE150\Modelos’. •. w1(r): Matriz que contiene los pesos del modelo (pesos entre la capa de entrada y la ‘capa escondida’) una vez se ha realizado el entrenamiento. La dimensión de esta matriz es [(numero de nodos o neuronas en la ‘capa escondida’) * (número de entradas a la red + 1)]. El ‘+1’ es dado a que se debe incluir el peso del ‘bias’. Las funciones de entrenamiento necesitan un valor inicial de estas por lo que se usa ‘[]’ para la inicialización aleator ia de la matriz.. •. w2(r): Matriz que contiene los pesos del modelo (pesos entre la ‘capa escondida’ y la capa de salida) una vez se ha realizado el entrenamiento. La dimensión de esta matriz es [(1) * (numero de nodos o neuronas en la ‘capa escondida’)]. Las funciones de entrenamiento necesitan un valor inicial de estas por lo que se usa ‘[]’ para la inicialización aleator ia.. •. W1(r): Esta matriz es el resultado original (del los pesos entre la capa de entrada y la ‘capa escondida’) del entrenamiento, pero el entrenamiento fue hecho sobre datos “procesados” (ver sección ‘experimento’), por lo que la matriz también se debe “procesar” para que vuelva a tener los valores adecuados para su uso con los datos sin “procesar”.. •. W2(r): Esta matriz es el resultado original (del los pesos entre la ‘capa escondida’ y la capa de salida’) del entrenamiento, pero el entrenamiento fue hecho sobre datos “procesados” (ver sección ‘experimento’), por lo que la matriz también se debe “procesar” para que vuelva a tener los valores adecuados para su uso con los datos sin “procesar”..
(51) IEL2-I-06-22 •. 51. FPE: Valor de ‘generalización del error’ estimado por el método de ‘error de predicción final de Akaike’. •. NN: Arreglo de la forma [na nb nc nk], donde: na = número de ‘salidas pasadas’ utilizadas para determinar la predicción. nb = número de ‘entradas pasadas’ utilizadas para deter minar la predicción. nc = número de ‘residuos pasadas’ utilizadas para determinar la predicción. (Solo para NNARX1). nk = tiempo de retardo (para todos los casos del helicóptero: 1).. •. Chat: Estimación del filtro lineal MA (Solo para NNARX1).. •. NSSE: Valor del error de validación.. •. NSSEvec: (salida de NNPRUNE o proceso de recorte) Vector que contiene los errores de validación después de la eliminación de cada peso.. •. NetDef: Definición de la arquitectura interna de la red. ‘H’ representa un nodo con función de activación de tipo tangente hiperbólica, ‘L’ representa una neurona con función de activación de tipo lineal.. •. OrderIndices: (salida de la función de Lipschitz) Matriz que contiene el criterio para realizar la gráfica de la cual se deduce el orden de los regresores.. •. Ypred: Vector que contiene las predicciones de salida de ‘un paso adelante’ del modelo con el cual se está trabajando.. •. Ysim: Vector que contiene las salidas simuladas del modelo con el cual se está trabajando.. •. critvec: Vector que contiene el valor del ‘criterio’ (error de entrenamiento) después de cada iteración del entrenamiento.. •. deff: El número de pesos en la red si esta fue entrenada con ‘decaimiento de pesos’ (extensión del criterio).. •. fpev: (salida de NNPRUNE o proceso de recorte) Vector que contiene los valores de ‘generalización del error’ estimado por el método de ‘error de predicción final de Akaike’, después de la eliminación de cada peso.. •. index: (salida de NNPRUNE o proceso de recorte) Especifica la ubicación (en la matriz thd) del vector con el parámetro óptimo.. •. iter: Número de iteraciones requeridas durante el entrenamiento de la red.. •. lambda: Valor final de lambda hallado durante el entrenamiento por el método de Levenberg-Marquardt..
(52) 52. IEL2-I-06-22 •. prparms: Vector que especifica parámetros para proceso de recorte o ‘prunning’. Es un arreglo de la forma [iter RePercent], donde - iter: Máximo número de iteraciones después de cada recorte. - RePercent: Recortar 'RePercent' porcentaje de los pesos restantes.. •. thd: Matriz que contiene los vectores con los parámetros después del proceso de recorte. Se lee de derecha a izquierda y en cada columna se pueden ver los pesos de cada una de las conexiones en cada iteración o eliminación de pesos. A medida que se va corriendo los vectores a la izquierda se nota como va calculando el valor de cada peso de entrenamiento con la nueva estructura. (Nótese que el peso que se quita no vuelve a aparecer).. •. trparms: Estructura de datos que contiene los parámetros asociados al algor itmo de entrenamiento. -D: Escalar que contiene el valor del ‘decaimiento de peso’. Para mejor entendimiento, referirse a la sección 2.2.3.2 (‘Generalizacion del error’ y el concepto de Regularización). - maxiter: Especifica el máximo número de iteraciones a realizar durante el entrenamiento. - lambda: Valor inicial del parámetro lambda para el entrenamiento por el método de Levenberg- Marquardt. - skip: No utilice los primeros ‘skip’ datos para el entrenamiento de la red. •. trv: (salida de NNPRUNE o proceso de recorte) Vector que contiene los errores de entrenamiento después de la eliminación de cada peso.. •. yhat: Salida de las predicciones del modelo utilizado.. El arreglo de datos tuvo que ser reorganizado puesto que los datos importados en el procedimiento del experimento son vectores columna. Los datos que se utilizan para el trabajo con los modelos deben ser vectores fila. Si se desea trabajar con los datos adicionales que se tomaron (se encuentran en la carpeta ‘Uso de redes Neuronales Para el modelamiento del Helicóptero CE150/Modelos/Datos (sin organizar) adicionales/datos’) los vectores deben ser transpuestos, y es recomendable cambiar los nombres originales a ‘u1’, ‘u2’, ‘y1’, ‘y2’. En esta mis ma carpeta se puede encontrar los archivos .mdl (SIMULINK) que se utilizaron para realizar cada una de las tomas de datos. •. u1: Arreglo en vector fila de los datos de entrada utilizados para entrenamiento..
(53) IEL2-I-06-22. 53. •. u2: Arreglo en vector fila de los datos de entrada utilizados para validación.. •. y1: Arreglo en vector fila de los datos de salida utilizados para entrenamiento.. •. y2: Arreglo en vector fila de los datos de salida utilizados para validación.. •. u1s: Datos u1 “procesados” con media cero y varianza uno.. •. y1s: Datos y1 “procesados” con media cero y varianza uno. •. u2s: Datos u2 “procesados” con media cero y varianza uno. •. y2s: Datos y2 “procesados” con media cero y varianza uno.
(54) IEL2-I-06-22 ANEXO 2. CÓDIGO PARA OBT ENCIÓN DE LA RED MULTICAPA. Este código es en MATLAB, con conexional toolbox. %Graficar datos de entrenamiento subplot(211), plot(u1) title(‘Input sequence’) subplot(212), plot(y1) title(‘Output sequence’) subplot(111). %Graficar datos de validación subplot(211), plot(u2) title(‘Input sequence’) subplot(212), plot(y2) title(‘Output sequence’) subplot(111). % Procesar datos u1 y u2 con media ‘cero’ y varianza ‘uno’ [u1s,uscales] = dscale(u1); [y1s,yscales] = dscale(y1); u2s = dscale(u2,uscales); y2s = dscale(y2,yscales);. %Graficar datos de entrenamiento “procesados” subplot(211), plot(u1s) title(‘Training input sequence’) subplot(212), plot(y1s) title(‘Training output sequence’) subplot(111). %Graficar datos de validación “procesados” subplot(211), plot(u2s) title(‘Validation input sequence’). 54.
Documento similar
Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en
En cuarto lugar, se establecen unos medios para la actuación de re- fuerzo de la Cohesión (conducción y coordinación de las políticas eco- nómicas nacionales, políticas y acciones
You may wish to take a note of your Organisation ID, which, in addition to the organisation name, can be used to search for an organisation you will need to affiliate with when you
Where possible, the EU IG and more specifically the data fields and associated business rules present in Chapter 2 –Data elements for the electronic submission of information
Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in
This section provides guidance with examples on encoding medicinal product packaging information, together with the relationship between Pack Size, Package Item (container)
D) El equipamiento constitucional para la recepción de las Comisiones Reguladoras: a) La estructura de la administración nacional, b) La su- prema autoridad administrativa
b) El Tribunal Constitucional se encuadra dentro de una organiza- ción jurídico constitucional que asume la supremacía de los dere- chos fundamentales y que reconoce la separación