scieee Open visual document viewer

Estudio y desarrollo de modelos neuronales de complejos sistemas multivariables.

Alonso Medina, Aimar

Abstract

El objetivo del presente proyecto es el estudio y desarrollo de modelos neuronales de complejos sistemas multivariables. Tras el modelado se obtendrán los modelos neuronales de dos sistemas no-lineales objetivo, uno monovariable, y otro multivariable. Además, se obtendrá un código que permita optimizar el desarrollo de más modelos, para su aplicación en estrategias de control dependiente de modelos dinámicos. Para esto, se han escogido redes neuronales de estructura NARX, y el desarrollo se ha realizado en el entorno de MATLAB.

Full text

MÁSTER UNIVERSITARIO EN INGENIERÍA INDUSTRIAL TRABAJO FIN DE MÁSTER ESTUDIO Y DESARROLLO DE MODELOS NEURONALES DE COMPLEJOS SISTEMAS MULTIVARIABLES ESTUDIO Y DESARROLLO DE MODELOS NEURONALES DE COMPLEJOS SISTEMAS MULTIVARIABLES Es udian e: ALONSO MEDINA, AIMAR Di ec o /a: IRIGOYEN GORDO, ELOY Depa amen o: Ingenie ía de Sis emas y Au omá ica Cu so académico: 2021-2022 Bilbao, 12 de sep iemb e de 2022 Resumen Labu pena Abs ac El obje i o del p esen e p oyec o es el es udio y desa ollo de modelos neu onalesdecomplejossis emasmul i a iables.T aselmodelado seob end án los modelos neu onales de dos sis emas no-lineales obje i o, uno mono a iable, y o o mul i a iable. Además, se ob end á un código que pe mi a op imiza el desa ollo de más modelos, pa a su aplicación en es a egias de con ol dependien e de modelos dinámicos. Pa a es o, se han escogido edes neu onales de es uc u a NARX, y el desa ollo se ha ealizado en el en o no de MATLAB. Palab as Cla e: iden i icación, ed neu onal, sis emas no-lineales, modelo NARX, MIMO. P oiek u honen helbu ua aldagai ani zeko sis ema konplexuen e edu neu onalak az e zea e a ga a zea da. Modelake a en os ean, bi sis ema ez- lineal lo uko di a, ba a aldagai baka ekoa, e a bes ea, aldagai ani zekoa. Ho- ez gain, e edu gehiago en ga apena op imiza zea ahalbide uko duen kodea lo uko da, e edu dinamikoe an oina i zen di en kon ol-es a egie an e a- bil zeko. Hone a ako, NARX es uk u a du en sa e neu onalak auke a u di a, e a ga apena MATLAB ingu unean egin da. Gako-hi zak: iden i ikazioa, sa e neu onala, sis ema ez-linealak, NARX e e- dua, MIMO. The objec i e o his p ojec is he s udy and de elopmen o neu al models o complex mul i a iable sys ems. A e he modelling, he neu al models o wo a ge nonlinea sys emswillbeob ained,oneSISOmodel,andoneMIMOmodel. Mo eo e , a code o s eamlining u u e de elopmen o u he models, o hei applica ion in dynamic model based con ol s a egies. Fo his, neu al ne wo ks wi h he NARX s uc u e ha e been chosen, and he de elopmen has been conduc ed on he MATLAB en i omen . Keywo ds: iden i ica ion, neu al ne wo k, nonlinea sys ems, NARX model, MIMO. 1 Índice Resumen Labu pena Abs ac 1 Lis a de igu as 4 Lis a de ablas 6 Lis a de ac ónimos 7 1. In oducción 8 2. Con ex o 9 3. Obje i os y alcance 11 4. Es ado del a e 14 4.1. Redes neu onales (RNA) . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4.2. Iden i icación y modelización de sis emas median e RNA . . . . . . 19 4.3. NNARX en iden i icación de sis emas . . . . . . . . . . . . . . . . . . 25 5. Análisis de iesgos 28 6. Desa ollo de la solución 30 6.1. Me odología y desa ollo . . . . . . . . . . . . . . . . . . . . . . . . . . 30 6.1.1. P epa ación de los da os de en enamien o . . . . . . . . . . 31 6.1.2. Diseñodela ed........................... 33 6.1.3. C eación y en enamien o de la ed . . . . . . . . . . . . . . . 34 6.1.4. Validación de la ed . . . . . . . . . . . . . . . . . . . . . . . . . 37 2 6.1.5. In eg ación del desa ollo: ba ido de pa áme os . . . . . . 43 6.2. Sis emas obje i o a modeliza . . . . . . . . . . . . . . . . . . . . . . 46 6.2.1. Sis ema SISO no-lineal . . . . . . . . . . . . . . . . . . . . . . 47 6.2.2. Sis ema MIMO no-lineal . . . . . . . . . . . . . . . . . . . . . . 48 7. Análisis de los esul ados 50 7.1. Sis ema SISO no-lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 7.2. Sis ema MIMO no-lineal . . . . . . . . . . . . . . . . . . . . . . . . . . 55 8. Plan de p oyec o y plani icación 61 8.1. Desc ipciónde a eas............................ 61 8.2. Hi os...................................... 65 8.3. Diag amadeGan ............................. 66 9. Desc ipción del p esupues o 68 10.Conclusiones y abajos u u os 70 Anexo I: Código y p og amas uen e 74 Anexo II: Bo ado de publicación con eniendo pa e del abajo ea- lizado 88 3 Lis a de igu as 1. Esquema de un con ol median e ealimen ación nega i a . . . . . 9 2. Esquema de una neu ona a i icial . . . . . . . . . . . . . . . . . . . . 15 3. Redes neu onales según sus conexiones . . . . . . . . . . . . . . . . 15 4. Funciones de ac i ación sigmoidales . . . . . . . . . . . . . . . . . . 16 5. Compa ación en e un en enamien o co ec o y una si uación de sob eajus e.................................. 19 6. Esquema de un pe cep ón mul icapa (MLP) . . . . . . . . . . . . . . 20 7. Redneu onalNNFIR............................. 22 8. Redneu onalNNOE............................. 23 9. Redneu onalNNARX............................ 24 10. Es uc u a del iMO-NMPC [3] . . . . . . . . . . . . . . . . . . . . . . . 26 11. Ma iz p obabilidad-impac o de los iesgos del p oyec o . . . . . . . 29 12. Compa ación en e camino alea o io ycamino alea o io sa u ado 32 13. Visualización de una ed neu onal NARX en MATLAB . . . . . . . . . 33 14. Ven ana de en enamien o de ed . . . . . . . . . . . . . . . . . . . . 36 15. Red neu onal NARX en lazo ce ado en MATLAB . . . . . . . . . . . 42 16. Visualización de la es uc u a de da os ne Da a ............ 44 17. En adas y salidas de los sis emas en égimen es aciona io . . . . . 47 18. Da os de en ada y salida de en enamien o pa a el sis ema SISO no-lineal.................................... 50 19. Da os de en ada y salida de alidación pa a el sis ema SISO no-lineal 51 20. MSE y MaAE en lazo abie o de con igu aciones de edes pa a el sis emaSISO................................. 51 4 21. MSE en lazo ce ado de con igu aciones de edes pa a el sis ema SISO ...................................... 52 22. Respues adelmodeloneu onalpa aelsis emaSISOob enidapa a alidación en lazo abie o . . . . . . . . . . . . . . . . . . . . . . . . . 54 23. Respues adelmodeloneu onalpa aelsis emaSISOob enidapa a alidación en lazo ce ado . . . . . . . . . . . . . . . . . . . . . . . . . 54 24. Da os de en ada y salida de en enamien o pa a el sis ema MIMO no-lineal.................................... 55 25. Da os de en ada y salida de alidación pa a el sis ema MIMO no- lineal...................................... 56 26. MSE y MaAE en lazo abie o de con igu aciones de edes pa a el sis emaMIMO ................................ 57 27. MSE en lazo ce ado de con igu aciones de edes pa a el sis ema MIMO ..................................... 57 28. Respues a del modelo neu onal pa a el sis ema MIMO ob enida pa a alidación en lazo abie o . . . . . . . . . . . . . . . . . . . . . . 60 29. Respues a del modelo neu onal pa a el sis ema MIMO ob enida pa a alidación en lazo ce ado . . . . . . . . . . . . . . . . . . . . . . 60 30. Diag ama de Gan del p oyec o . . . . . . . . . . . . . . . . . . . . . 67 5 Lis a de ablas 1. Plani icación inicial del p oyec o . . . . . . . . . . . . . . . . . . . . . 12 2. Hi os iniciales del p oyec o . . . . . . . . . . . . . . . . . . . . . . . . . 12 3. Tasas ho a ias y p esupues o es imado del p oyec o . . . . . . . . . 13 4. MSE en lazo abie o de p eselección de edes pa a el sis ema SISO 52 5. MaAE en lazo abie o de p eselección de edes pa a el sis ema SISO 53 6. MSE en lazo ce ado de p eselección de edes pa a el sis ema SISO 53 7. MSE en lazo abie o de p eselección de edes pa a el sis ema MIMO 58 8. MaAE en lazo abie o de p eselección de edes pa a el sis ema MIMO 58 9. MSE en lazo ce ado de p eselección de edes pa a el sis ema MIMO 59 10. Hi os inales del p oyec o . . . . . . . . . . . . . . . . . . . . . . . . . 65 11. Plani icación inal del p oyec o . . . . . . . . . . . . . . . . . . . . . . 66 12. Cálculo de las asas ho a ias del p oyec o . . . . . . . . . . . . . . . . 69 13. P esupues o inal del p oyec o . . . . . . . . . . . . . . . . . . . . . . 69 6 Lis a de ac ónimos ARX Au o eg essi e eXogenous (Au o eg esi o eXógeno) FIR Fini e Impulse Response (Respues a Fini a al Impulso) MaAE Maximum Absolu e E o (E o Absolu o Máximo) MIMO Mul iple Inpu Mul iple Ou pu (Múl iples En adas Múl iples Salidas) MLP Mul i-Laye Pe cep on (Pe cep ón Mul iCapa) MPC Model P edic i e Con ol (Con ol P edic i o po Modelo) MSE Mean Squa e E o (E o Cuad á ico Medio) NARX Nonlinea Au o eg essi eeXogenous(No-linealAu o eg esi oeXógeno) OE Ou pu E o (E o de Salida) RNA Redes Neu onales A i iciales SISO Single Inpu Single Ou pu (Una En ada Una Salida) 7 1. In oducción Es e documen o es la memo ia o esul ado del T abajo de Fin de Más e de í ulo «Es udio y desa ollo de modelos neu onales de complejos sis emas mul i- a iables». En la p ime a pa e del mismo se con ex ualiza el abajo ealizado, así como los obje i os y alcance del mismo. Una ez enma cado el p oyec o de o ma gene al, se ealiza un análisis del es ado del a e en el ámbi o es udiado, ob eniendo una isión del es ado ac ual de es e. A con inuación, se de alla el desa ollo de la solución y el abajo ealizado, y se analizan los esul ados ob enidos de es e, siguiendo los pasos ealizados pa a la ealización del p oyec o. Una ez p esen ado el abajo desa ollado, es a memo ia cuen a con una plani icación de los abajos a ealiza y las elaciones en e dichas a eas. En es a sección se incluye además el p esupues o del p oyec o, y se ealiza el seguimien o, an o de es e, como del abajo plani icado. Pa a ce a el documen o, se ealizan unas conclusiones inales, donde se es- udia el abajo ealizado y sus esul ados, jun o al seguimien o de la plani icación empo al y económica del p oyec o, y se comen a sob e el posible abajo u u o a ealiza . 8 El alo de es a suma no sale di ec amen e de la neu ona, sino que se le aplica unaope acióndenominada uncióndeac i ación s(x).Alcomienzodeldesa ollo de neu onas a i iciales y RNA, es a unción e a comúnmen e la unción umb al, una unción bina ia po la que, si la suma ponde ada supe aba un cie o alo umb al, la neu ona p oduce un alo al o (no malmen e 1), y en caso de no supe a es e alo , p oduce un alo bajo (no malmen e 0 o -1). De es a o ma, la salida de una neu ona (y) con men adas (x) se calcula de la siguien e o ma: y=s(b+ m X k=1 wkxk) Figu a 2: Esquema de una neu ona a i icial Las edes neu onales se pueden clasi ica según dis in os c i e ios, siendo uno de los p incipales la clasi icación de las edes según sus conexiones, donde, aun- que hay más ipos, se di iden en dos g andes bloques: las edes p ealimen adas o eed- o wa d y las edes ecu en es (Figu a 3), siendo un desa ollo pos e io . La di e encia en e ambas adica en que en las edes p ealimen adas, las conexiones en e neu onas no o man un ciclo, es deci , la ans e encia de señales o alo es es unidi eccional; mien as que en las edes ecu en es, las conexiones sí o man un ciclo. Red neu onal p ealimen ada Red neu onal ecu en e Figu a 3: Redes neu onales según sus conexiones 15 Aunque las es uc u as de las edes han e olucionado con el iempo pa a a on a di e sosp oblemas,unodelosmayo esa anceseneldesa ollode edes neu onales ha sido el empleo de unciones de ac i ación de i ables y no-lineales, ya que inc emen ó su uncionalidad en eno me medida, especialmen e el de las edes p ealimen adas. La p ime a de ellas, po que pe mi ía aplica en edes p ealimen adas el algo i mo de en enamien o de p opagación hacia a ás (backp opaga ion), pe mi iendo así el en enamien o de edes neu onales de múl iples capas. Po o o lado, ue demos ado [4] que, cuando la unción de ac i ación de las neu onas es no-lineal, las edes neu onales p ealimen adas, incluso de únicamen e dos capas (más la capa de en ada), son capaces de eje ce como ap oximado es uni e sales de unciones [5]; en lo que ha pasado a se conocido como «Teo ema de Ap oximación Uni e sal». Sones asca ac e ís icaslasqueposeenlamayo íade uncionesdeac i ación empleadas en la ac ualidad, especialmen e las unciones de ac i ación sigmoi- dales, como la unción logís ica σ(x) = 1 1 + e−x, o la unción angen e hipe bólica anh(x) = ex−e−x e−x+e−x. Es as unciones se denominan sigmoidales po que la elación en e en adas y salidas de es as unciones ienen o ma de S (Figu a 4), es deci , son monó ona- men e c ecien es y poseen dos asín o as ho izon ales. La di e encia más no able en e ambas es el ango de salidas de la unción: la unción logís ica p oduce alo es en e 0 y 1, y la unción angen e hipe bólica p oduce alo esen e-1y1.Tambiénpuedecomp oba sequela unción angen- e hipe bólica ealiza un cambio más b usco de la salida (Figu a 4), alcanzando sus alo es lími e de ypa a alo es de xmás ce canos a 0 que la unción logís ica. -4 -3 -2 -1 0 1 2 3 4 x -1 -0.5 0 0.5 1 y -4 -3 -2 -1 0 1 2 3 4 x -1 -0.5 0 0.5 1 y Figu a 4: Funciones de ac i ación sigmoidales 16 Pa a se capaz de p oduci los esul ados deseados, odos los pesos y bias de la ed neu onal, denominados pa áme os de la ed, deben ajus a se de o ma p ecisa. A es e p oceso de ajus e de los pa áme os de la ed se le denomina en enamien o oap endizaje, ya que es el p oceso enca gado de que la ed ap enda la elación en e las en adas y salidas de la misma. Exis en es pa adigmas dis in os pa a el en enamien o de edes neu onales, gene ando edes neu onales cuyo obje i o es di e en e: En enamien o no supe isado: En es e caso, pa a el en enamien o, la ed ecibe únicamen e las en adas de la ed, siendo el obje i o de la ed la de in e i pa ones en e las en adas y salidas p edichas, po lo que suelen se empleadas pa a usos de ag upación de da os (da a clus e ing). En enamien o po e ue zo: Pa a el en enamien o, la ed ecibe las en a- das de la ed, y una unción decos e a minimiza (o unción de e ue zo o e- compensa a maximiza ). De es a o ma, aunque no se dan las salidas, la ed es capaz de conoce si las salidas p edichas son co ec as o no, y adap a se a ello. Ac ualmen e es e es un campo de in e és pa a di e sas aplicaciones, en e ellas, en sis emas de con ol, pa a el desa ollo de con olado es [6]. En enamien o supe isado: A di e encia de los pa adigmas an e io es, en es e caso, pa a el en enamien o se emplean an o las en adas, como las salidas exac as deseadas de la ed. De es a o ma, el obje i o del en enamien o es que la ed p oduzca unas salidas lo más ce canas a las deseadas. Las a eas en enadas de es a o ma son, en e o as, la clasi icación de da os, y la ap oximación de unciones. Es den o de es a úl ima ca ego ía donde se si úa el abajo ealizado, ya que el obje i o del mismo es el desa ollo de modelos de sis emas, que en úl ima ins ancia, se pueden in e p e a como unciones que, con una se ie de en adas, p oducen una se ie de salidas. El algo i mo más ampliamen e empleado pa a ealiza el en enamien o supe isado de edes neu onales p ealimen adas es la p opagación hacia a ás (backp opaga ion), mencionado an e io men e. Es e algo i mo compu a el g adien e de la unción de cos e, como po ejem- plo, el e o en e la salida p edicha po la ed (ˆy) y la salida eal deseada (y); es- pec o a los pa áme os de la ed. Con es os g adien es, el algo i mo busca encon a el mínimo de la unción de cos e, y po an o, consegui que la salida p edicha de la ed se asemeje más a la deseada. Es de es e p oceso de donde coge el nomb e el algo i mo, ya que p opaga los e o es (de salida) hacia a ás (hacia los pa áme os de ed). 17 Sin emba go, una de las limi aciones de es e algo i mo de en enamien o es que no asegu a que al inal del mismo, los alo es con e jan al mínimo global de la unción, sino únicamen e a un mínimo local. Aunque es o puede no se un im- pedimen o en ocasiones, es común ealiza a ios en enamien os, inicializando los pa áme os de la ed a dis in os alo es, explo ando así la hipe supe icie del e o , con el obje i o de encon a el mínimo global, o un mínimo local lo más ce cano posible. Den o de es e algo i mo de en enamien o, exis en dis in as a iaciones, siendo muy u ilizado el algo i mo de Le enbe g-Ma qua d pa a el en enamien- o [7]. Es e algo i mo modi ica el algo i mo o iginal, empleando de i adas de se- gundo o den, consiguiendo que el e o con e ja más ápidamen e, educiendo el núme o de i e aciones necesa ias pa a ealiza el en enamien o. Como úl imo pun o del desa ollo de una ed neu onal, se encuen a la alidación. El obje i o de la alidación es comp oba que la ed neu onal haga, en e ec o,la a eapa alaquehasidodiseñada.Es oesdebidoaque,aunquedu an e el en enamien o se minimice el e o come ido, cabe eco da que es e e o es el come ido espec o a los da os de en enamien o empleados. Pa ase uncional,la edneu onaldebeposee lacapacidaddegene alización, es deci , debe se capaz de ealiza la a ea diseñada pa a cualquie en ada, po supues o, pa a el ango pa a el que ha sido en enada; pe o en ocasiones pa a alo es ue a de es e ango, lo que se denomina que la ed posea capacidad de ex apolación. Un p oblema que puede ocu i du an e el en enamien o es el sob eajus e (o e i ing) de la ed. En es a si uación, la ed neu onal ap ende demasiado bien los da os de en enamien o, y pie de la capacidad de gene alización. Es pa a comp oba es o, uno de los mé odos más empleados es emplea la ed pa a un conjun o dis in o de da os, llamado conjun o de da os de alidación, ycalcula algunamedidadee o en elos alo esp oducidospo la ed,ylasalida eal de es a. Muchas eces es e p oceso se ealiza a la pa del en enamien o, donde as cada i e ación del en enamien o, se ealiza la alidación de la ed. Du an e un en enamien o co ec o, el e o come ido en la alidación se debe educi en cada i e ación. Si as alguna i e ación es e e o aumen a, puede se un signo de sob eajus e (Figu a 5), siendo posible ejecu a dis in as acciones. Una de las acciones más comunes es deja un núme o de i e aciones de ma gen, espe a si el e o uel e a disminui , y si no lo hace, oma los pa áme os de ed de la i e ación con meno e o de alidación. 18 I e aciones E o En enamien o co ec o En enamien o Validación I e aciones E o Sob eajus e ( o e i ing) En enamien o Validación Figu a 5: Compa ación en e un en enamien o co ec o y una si uación de sob eajus e 4.2. Iden i icación y modelización de sis emas median e RNA Talycomosehaexplicadoenlasecciónan e io ,las edesneu onalesa i icia- les se pueden usa en mul i ud de aplicaciones, como a eas de clasi icación, en casoscomop ocesamien odeimágeneso econocimien ode oz;p ocesamien- o del lenguaje na u al (na u al language p ocessing), con olado es en sis emas de con ol [6], in e encia es adís ica, búsqueda de pa ones y, el uso ealizado en es e abajo, como modelos de sis emas. Así, la a ea desa ollada en a den o del ámbi o de la ap oximación de unciones, uno de los usos más ex endidos de las RNA; más conc e amen e den o del modelado de se ies empo ales ime-se ies modelling. Comosehamencionadoan e io men e,las edesneu onalesp ealimen adas ( eed- o wa d) son capaces de eje ce como ap oximado es uni e sales de un- ciones, si cumplen es condiciones: La ed neu onal posee al menos dos capas, más la capa de en ada, que no se suele con a pa a el cómpu o del núme o de capas de la ed. Las neu onas de las capas in e medias emplean una unción de ac i ación no lineal, como las unciones sigmoidales. Lacapadesalidaeslineal,esdeci ,lasneu onasdelacapadesalidaemplean unciones de ac i ación lineales, como (x) = x. 19 Po es a azón, pa a la ealización de es e abajo se han es udiado modelos neu onales de sis emas median e el empleo de edes neu onales p ealimen adas que cumplen es as condiciones. Den o de las edes neu onales p ealimen adas, la más común es el pe cep- ón mul icapa (mul i-laye pe cep on, MLP),compues aspo múl iples capasde neu onas,es ando odaslascapas o almen econec adas,esdeci ,cadaneu ona de una capa conec a con odas las neu onas de la capa siguien e. Las capas de los pe cep ones mul icapa se di iden en es secciones (Figu a 6): la capa de en ada, enca gada de ecibi y p ocesa las señales de en ada; las capas ocul as, enca gadas de p ocesa las da os median e una o más capas de neu onas; y la capa de salida, que p oduce el esul ado de salida de la ed. ··· ··· ··· ··· ··· ··· Capas ocul asCapa de en ada Capa de salida Figu a 6: Esquema de un pe cep ón mul icapa (MLP) Los pe cep ones mul icapa pueden clasi ica se según su núme o de capas ocul as. Los MLP con más de una capa ocul a se denominan edes neu onales p o undas (deep neu al ne wo k), mien as que las edes con una única capa ocul a, en con as e, se las denomina edes neu onales no-p o undas (shallow neu al ne wo k). Debido a que el Teo ema de Ap oximación Uni e sal asegu a que los MLP con una única capa ocul a (ya que equie e dos capas, una capa ocul a y la de salida), es deci , MLP no-p o undos, son capaces de ealiza el abajo deseado, son es as edes las que se han empleado. 20 La mayo es icción de los MLP son su poca capacidad de ex apolación, po lo que los esul ados ob enidos de da os ue a del ango de da os empleado en el en enamien o pueden ene bas an e e o . Es po es e mo i o que es impo an e es udia bien el ango de alo es en el que a a abaja el sis ema a modela , y en ena la ed con en adas que ep esen en bien es e ango de alo es, especialmen e hacia los lími es. Es o, unido a la limi ación en la con e gencia del algo i mo de en enamien o de p opagación hacia a ás, que puede hace que los pa áme os de la ed con e jan a un mínimo local, al y como se ha explicado an e io men e; hace que se deba p es a a ención al diseño del en enamien o y de los da os da os empleados en él, ya que ambas limi aciones son eludibles has a cie o pun o, con un diseño adecuado. Una ez es ablecida la elección de la amilia de edes neu onales a emplea , en es e caso, pe cep ones mul icapa no-p o undos, se debe elegi cual se á el conjun odeen adasdela edempleado,alquesedenomina ec o de eg esión, ya que las a iables empleadas como en adas se denominan eg eso es. Exis en dis in as es uc u as de edes neu onales según el ec o de eg esión empleado. Las a iables que se pueden emplea como eg eso es son: En adas ex e nas o exógenas ac uales y pasadas a la ed (u) Salidas pasadas eales (medidas) del sis ema (y) Salidas pasadas calculadas po la ed (salidas p edichas) (ˆy) E o de salida pasado calculado (ey=y−ˆy) Cabe des aca que las dos úl imas dependen de la salida de la p opia ed, po loquesiseempleancomo eg eso es,la ede ec i amen e unciona íacomouna ed ecu en e, ya que exis i ía un ciclo en las conexiones; aunque es ic amen e hablando, la ed segui ía siendo p ealimen ada, debido a que en e la capa de en ada y salida no hay ciclos, es e exis e ue a de la ed. La p ime a y más simple de las es uc u as MLP es la es uc u a NNFIR (Neu al Ne wo k Fini e Impulse Response, ed neu onal de espues a ini a al impulso), empleada como p edic o FIR no-lineal, po lo que posee el mismo ec o de eg esiónquees osmodelos.LosmodelosFIRse ep esen anmedian e la siguien e ecuación, donde q−1 ep esen a un e a do uni a io: y(k) = B(q)u(k) + e(k) = b0u(k) + b1u(k−1) + · · · +bnu(k−n) + e(k) 21 De es a o ma, el p edic o , en es e caso la ed neu onal (Figu a 7), sigue la ecuación ˆy(k|θ) = B(q)u(k),dondeθse e ie ealospa áme osdela edneu onal, ya que la salida depende de ella; y po an o, según la ecuación el ec o de eg esión ϕF IR(k)es: ϕF IR(k) = [u(k), u(k−1), u(k−2), . . . , u(k−n)]T Red neu onal Figu a 7: Red neu onal NNFIR De es a o ma, las en adas de la ed son únicamen e las en adas exógenas del sis ema u. Es e p edic o , y po an o, es a es uc u a de ed neu onal, aunque es siemp e es able, p esen a un p oblema, ya que muchos sis emas dinámicos, incluidos los abajados en es e p oyec o, necesi an in o mación de los es ados pasados de la salida, y po an o, no es capaz de modela con p ecisión el sis ema deseado, incluso in oduciendo un núme o ele ado de mues as de la en ada u. Es opuedepa ece con adeci alTeo emadeAp oximaciónUni e sal,yaque se cumplen odas las condicionesy, sin emba go, es e modelo no es iable pa a el abajo a ealiza . En es e caso, el de alle adica en que es e eo ema asegu a que se puede ap oxima cualquie unción, pe o no especi ica el núme o de neu onas necesa io. Pa a es e caso, debido a la p oblemá ica con los sis emas dinámicos, es e núme o de neu onas end ía que se muy ele ado, y po an o, la ed se ía compu acionalmen e in iable pa a el abajo ealizado, ya que se desea emplea es os modelos en sis emas de con ol en iempo eal. Unasoluciónaes a p oblemá icapasa po in oduci lasp ediccionespasadas de la ed como en adas, c eando así la es uc u a NNOE (Neu al Ne wo k Ou pu E o , ed neu onal de e o de salida). Los modelos OE se ep esen an median e una ecuación simila a la de los modelos FIR: y(k) = B(q) F(q)u(k) + e(k) F(q) = 1 + 1q−1+ 1q−1+ 2q−2+· · · + nyq−ny 22 Así, en es os modelos, el p edic o sigue la ecuación ˆy(k|θ) = B(q) F(q)u(k). Ope ando, puede comp oba se ácilmen e que, e ec i amen e, la salida p edicha depende de sus p edicciones an e io es ˆy(k), siendo así su ec o de eg esión ϕOE(k): ϕOE(k) = [u(k), u(k−1), u(k−2), . . . , u(k−n),ˆy(k−1), . . . , ˆy(k−ny)]T Red neu onal Figu a 8: Red neu onal NNOE Sin emba go, al y como se ha co- men ado an e io men e, y se obse a en la Figu a 8, es as edes neu onales in oducen una ealimen ación de la salida, con i iéndolas en edes ecu- en es. La g an des en aja de es os mode- los es que, debido a la ealimen ación, es más di ícil educi el e o du an e el en enamien o, debido a un cálcu- lo más complejo de los g adien es de e o es. Adicionalmen e, la es abilidad de es e p edic o depende de F(q), que depende de los pa áme os de la ed, po lo que debe se moni o izada du- an e el en enamien o pa a e i a que el p edic o se ines abilice [8]. Unaes uc u aquee i alosp oblemasdelosdosan e io esesladenominada es uc u a NNARX (Neu al Ne wo k Au oReg essi e eXogenous, ed neu onal au o eg esi a exógena). Es a es o a modi icación sob e los modelos FIR, pe o a di e encia de los modelos OE, donde se emplean las salidas p edichas ˆy, se emplean las salidas ealesmedidas del sis emay. De es a o ma, losmodelosARX se ep esen an median e la siguien e ecuación: A(q)y(k) = B(q)u(k) + e(k) Median e es a modi icación, el p edic o e i a emplea sus p opias salidas, e i ando c ea ningún ipo de ealimen ación. De es a o ma, la ecuación del p edic o es la siguien e: ˆy(k) = b0u(k) + b1u(k−1) + · · · +bnu(k−n)−a1y(k−1) − · · · − anyy(k−ny) 23 Tal y como se e en la ecuación, se puede ambién deci que el ec o de eg esión ϕARX (k)en es e caso es: ϕARX (k) = [u(k), u(k−1), u(k−2), . . . , u(k−n), y(k−1), . . . , y(k−ny)]T Red neu onal Figu a 9: Red neu onal NNARX Median e es e modelo, es posible ealiza la iden i icación de sis emas dinámicos como los modelados en es- e abajo; a la ez que se e i an los p oblemas de i ados de la ealimen- ación de las p edicciones. Adicional- men e, es os p edic o es son siemp e es ables. Po o o lado, una de las mayo es limi aciones que p esen an los p edic- o es NNARX es de i ada de la necesi- dad de u iliza las salidas eales, es de- ci , se p esen a en la ob ención y me- dición de es os da os. G acias a las en ajas o ecidas po es e ipo de modelos, es posible a on a la iden i icación de los sis emas deseados. Además, en es e abajo se emplean, como se de alla más adelan e, sis emas sin é icos en simulación, po lo que en es os casos, es a p oblemá ica puede ob ia se. De es a o ma, las edes neu onales con es uc u a NNARX poseen múl iples cualidades que hace que se ajus en a las necesidades del p oyec o: Capaces de modela las dinámicas de los sis emas empleados con un núme o de neu onas educido, a di e encia de los p edic o es FIR. Los p edic o es son es ables. El en enamien o es más simple que el de los p edic o es NNOE, debido a que no necesi an de ealimen ación de las salidas p edichas ˆy. Eluden la mayo limi ación debido a su uso en simulación, donde la ob en- ción de las salidas eales no p esen a ningún p oblema. Son odas es as las azones, de o ma combinada, po las que se ha empleado es a es uc u a pa a el desa ollo del abajo. 24 6.1.1. P epa ación de los da os de en enamien o An esdep ocede al en enamien ode la ed,se han ob enidolosda os de las en adas de la ed a emplea an o en el en enamien o, como en la alidación. En el caso que nos ocupa, al a a se de edes neu onales de ipo NARX, es as en adassedi idenendosg upos:lasen adasexógenasu(denominadasinpu s), y salidas eales del sis ema y( a ge s). Pa a la ob ención de es os da os, se deben ob ene las a iables de en ada y salida pa a un de e minado núme o de mues as. En el caso de sis emas eales, es os da os se ob end ían median e mediciones de las a iables de en ada y salida en cues ión. Sin emba go, en el caso que nos ocupa, los sis emas a modela son sis emas simulados, po lo que la ob ención de los da os de salida se ealiza á median e la simulación de los sis emas pa a unas en adas de inidas. Pa a la gene ación de es as en adas, se ha desa ollado una unción a la que se le ha denominado camino alea o io sa u ado (sa u a ed andom walk). Es a unción iene es en adas: amaño del ec o , ango de salidas, y p obabilidad de cambio p. En cuan o al uncionamien o, es simila a un andom walk es ánda : inicializa el p ime elemen o del ec o a un alo alea o io (dis ibución uni o me) den o del ango, y as es a p ime a mues a, pa a cada mues a subsecuen e k, has a ellena el ec o : Toma un nue o alo alea o io con p obabilidad p, que es uno de los pa áme os de en ada de la unción En caso con a io, man iene el mismo alo que la mues a an e io k−1 Sin emba go, la di e encia undamen al que se inco po a en es e caso, es que el ango de alo es alea o ios se aumen a en un po cen aje, a lo que se le denomina ango aumen ado. Sin emba go, los alo es den o de es e nue o ango se sa u an pos e io men e, es deci , en caso de oma alo es ue a del ango o iginal, es os se sus i uyen po el lími e in e io (si el alo es in e io a es e) o el lími e supe io (si el alo es supe io a es e). Enelp og amau ilizadoelinc emen odel angoesdel20 %,encadadi ección, es deci , si el ango o iginal es [−1,1], el ango o al es de 2, po lo que el ango aumen ado es [−1,4,1,4]. Así, al gene a los alo es alea o ios, en caso de que es u ie an en el ango [−1,4,−1), es os se sus i uyen po el lími e in e io −1, y en caso de ob ene alo es en el ango (1,1,4], es os se sus i uyen po el lími e supe io 1. 31 El obje i o de es a modi icación es gene a una mayo can idad de mues as en los ex emos de los angos de en enamien o, donde se busca que la ed neu onal ap enda bien es os alo es, ya que, como se ha dicho, las edes MLP poseen poca capacidad de ex apolación. Median e el mé odo del camino alea o io sa u ado, se ob iene una señal de en ada con los bene icios del camino alea o io, es deci , a iedad de pun os de ope ación y cambios de en adas, con el bene icio adicional de un mejo en enamien o de la ed pa a los pun os en los lími es del ango de ap endizaje. La p obabilidad de que, al gene a un nue o núme o alea o io, es e sea el lími e supe io o in e io (psup, pin ) depende de los inc emen os de ango ealizados (∆ sup,∆ in ): psup =∆ sup 1+∆ sup + ∆ in pin =∆ in 1+∆ sup + ∆ in En el caso empleado, donde ambos inc emen os son del 20% (∆ sup = ∆ in = 0,2),es ap obabilidadesdece cadel15 %(1 7,pa ase másexac os).Com- pa ando la señal ob enida pa a ambos casos, se puede obse a es a endencia a ob ene mues as en los ex emos (Figu a 12, misma semilla de gene ación, 100 mues as, y p obabilidad de cambio p= 0,4). 0 25 50 75 100 -1 -0.5 0 0.5 1Camino alea o io 0 25 50 75 100 -1 -0.5 0 0.5 1Camino alea o io sa u ado 0 25 50 75 100 -1 -0.5 0 0.5 1Valo es o denados Espe ado Real 0 25 50 75 100 -1 -0.5 0 0.5 1Valo es o denados Espe ado Real Figu a 12: Compa ación en e camino alea o io ycamino alea o io sa u ado 32 6.1.2. Diseño de la ed Figu a 13: Visualización de una ed neu onal NARX en MATLAB Una ez ob enidos los da os de en ada, y de aplica el sis ema simulado a es os pa a ob ene losda osdesalida,sepuedep ocede a ealiza el en enamien o de la ed neu onal que se emplea á como modelo del sis ema. Además de es os da os, es necesa io dise- ña la ed. La elección de la es uc u a de la ed es el p ime paso del diseño, en es e ca- so, como se ha comen ado, se han elegido e- des neu onales con la es uc u a NARX en la- zo abie o (Figu a 13). Acon inuación,sedebeconc e a laa qui- ec u a de la ed: se deben selecciona las en- adasdela ed,yelnúme odecapasocul asy neu onasencadacapaocul a,aunqueescon- enien e empeza con una única capa ocul a, po simplicidad, y po el Teo ema de Ap oxi- mación Uni e sal, que asegu a que no es ne- cesa io emplea más de una. Respec o al núme o de en adas y su e- a do, y el núme o de neu onas, se ealiza una p ime a es imación de es as basada en expe- iencia p e ia y conocimien o del sis ema. Ca- be des aca , que es mejo ealiza una es ima- ción po debajo del ideal pa a e i a sob e- pa ame iza la ed neu onal, que aumen a ía el cos e compu acional, y además educi ía la capacidad de gene alización de la ed. Po ejemplo, si sabemos que po la diná- mica del sis ema, y según el iempo de mues- eo y p uebas ealizadas, únicamen e ienen un impac o no able en la salida, la en ada u ac ual y la an e io (u(k)yu(k−1)), los en a- das de la ed no inclui án mues as an e io es de esa misma en ada (u(k−2), u(k−3), . . . ). 33 6.1.3. C eación y en enamien o de la ed T as diseña la ed, es ableciendo la es uc u a y a qui ec u a de la misma, puede da comienzo el en enamien o de la ed neu onal. Pa a ealiza es e p oceso, como se ha comen ado, se han empleado las he amien as de la ”Deep Lea ning Toolbox” de MATLAB. En p ime luga , se ha c eado una ed neu onal NARX median e la unción na xne . En es a unción ambiénsedeben especi ica lasen adas, de iniéndolascomo los e a dosde las dos en adas a emplea (inpu y a ge ), los núme os de neu onas de cada capa ocul a, la ealimen ación de la ed, y el algo i mo de en enamien o a emplea . En el caso que nos ocupa, los dos úl imos pa áme os se án los mismos pa a odos los casos, ya que las edes empleadas han sido edes neu onales NARX en lazo abie o (sin ealimen ación de las salidas), y el algo i mo de en enamien o empleado ha sido el algo i mo de Le enbe g-Ma qua d . Respec o a los e a dos delas en adas yel núme ode neu onas,es os a ia án pa acada aplicación.Aún así, al solo u iliza edes con una única capa ocul a, se debe especi ica un único núme o de neu onas. Así, en un caso donde se desee c ea una ed ne con 8 neu onas en la capa ocul a, y cuyas en adas sean [u(k), u(k−1), y(k−1)], la ins ucción a u iliza se ía: ne = na xne (0:1 ,1 ,8 , ' open ',' ainlm '); Una ez c eada la ed neu onal, pa a en ena la se emplea la uncionalidad ain. Sin emba go, se deben ealiza a ios pasos an es de pode ealiza el en enamien o, ya que el o ma o de los da os ob enidos y el o ma o empleado en las edes neu onales po MATLAB son di e en es. Los da os de en enamien o se ob ienen como ec o es o ma ices, donde cada ila co esponde a una en ada del sis ema y cada columna a un ins an e de iempo o mues a. Po ejemplo, en un sis ema con 2 en adas, si omamos 1000 mues as, los da os end án el o ma o de una ma iz de amaño 2x1000. Sin emba go, MATLAB emplea un o ma o di e en e pa a las edes neu onales que, en ez de una ma iz numé ica, emplea el denominado o ma o celda (cell). En es e o ma o, los da os son una ila de celdas, donde cada celda ialmacena un ec o con odas las en adas de la mues a i. En adición a es a di e encia en e los ipos de a iable de los da os, se añade que MATLAB di ide los da os, di e enciando los denominados es ados iniciales del es o de da os. Es os es ados iniciales son aquellas mues as que, debido a los e a dos de la ed, no pueden u iliza se como ”mues a ac ual”pa a el cálculo. 34 Pa a explica es o, es mejo supone un ejemplo. Suponiendo que la mues a másan iguaqueusanues a edesu(k−3),esosigni icaquepa alas esp ime as mues as(k= 1,2,3), la en adaco espondien eadichamues amásan iguano exis i ía. MATLAB soluciona es o empezando desde los cálculos desde la cua a mues a, y de iniendo las es p ime as mues as como es ados iniciales. Sabiendo cómo ope a MATLAB y que o ma os son los que usa, se puede hace manualmen e, cambiando de ipo los da os y di idiéndolos según MATLAB es ablece. Sin emba go, el p opio en o no ya incluye es as uncionalidades, en las unciones onnda a yp epa e s. La p ime a unción iene es pa áme os, y son sencillos: el p ime o son los da os a ans o ma , el segundo indica si cada mues a (ins an e de iempo) se almacena en una columna (en es e caso es ue), y el úl imo indica si los da os son una celda (en es e caso es alse, po que es una ma iz o un ec o ). Así, es e cambio de ipo de a iable de los da os de en enamien o inVec o y gVec o puede ealiza se median e el siguien e código: inCell = onnda a ( inVec o , ue , alse ); gCell = onnda a ( gVec o , ue , alse ); La segunda unción es más compleja, ya que posee cua o pa áme os de en ada, y o os cua o de salida. Los pa áme os de en ada son, en o den: ed neu onal, en adas (ob enidas de la an e io unción), a ge s no ealimen ados ( acío en es e caso), y a ge s ealimen ados (es os son los a ge s en el caso de las edes NARX). Po sulado,lascua osalidassonlosda osenel o ma oqueMATLAB emplea: da os de en ada (incluye inpu s y a ge s), es ados iniciales de las en adas, es ados iniciales de las capas, y da os de a ge s (pa a las salidas de la ed). [inDa a ,inS a ,layS a , gDa a ] = p epa e s( inCell ,{} , gCell ); Finalmen e, es necesa io modi ica di e sos pa áme os de la ed. Es os pa áme os son los a ios de di isión de mues as di idePa am. Es os indican que acción de las mues as se emplean en el en enamien o ( ainRa io), en la alidación ( alRa io), y en la comp obación ( es Ra io) de la ed. En es e caso, al hace la alidación de o ma independien e al en enamien o, se desea que odos los da os se usen pa a el en enamien o. ne . di idePa am . ainRa io = 1; ne . di idePa am . alRa io = 0; ne . di idePa am . es Ra io = 0; 35 De es a o ma, una ez ealizadas odas es as ope aciones, an o la ed como los da os de en enamien o es án con igu ados y con el o ma o adecuado pa a pode ealiza el en enamien o median e la ins ucción ain: [ne , Rec ] = ain (ne ,inDa a , gDa a ,inS a , layS a ); Figu a 14: Ven ana de en enamien o de ed Además de la ed en enada, es a unción ambién c ea un egis o del en enamien o ( Rec), donde alma- cena di e sos da os sob e los pa áme- os y esul ados del en enamien o. Du an e el en enamien o, se c ea una en ana (Figu a 14) con di e sa in- o mación ele an e. En ella apa ecen los alo es mínimo, ac ual y máximo de di e sas a iables, en e o as: I e ación ac ual (epoch) Rendimien o de la ed (pe o - mance) calculada según el algo- i mo que apa ece en la pa e in- e io , en el caso que nos ocu- pa, e o cuad á ico medio (MSE, Mean Squa ed E o ) G adien e del e o (g adien ) Es os pa áme os de en enamien o (lími es in e io y supe io ), es án alma- cenados den o de la a iable ne , donde son denominados ainPa am y pueden modi ica se de o ma simila a los a ios de di isión de mues as mencionados an e io men e. Además de obse a la e olución de es os da os du an e el en enamien o, desde la pa e supe io de es a en ana ambién se puede gene a un diag ama de la ed, simila al de la Figu a 13, o gene a , desde la pa e in e io , g á icos en iempo eal de la e olución de di e sas a iables de en enamien o como el endimien o. 36 6.1.4. Validación de la ed Una ez inalizado el en enamien o de la ed neu onal, el úl imo paso an es de oma el modelo neu onal como bueno es ealiza la alidación del mismo. Es e paso consis e, como se ha explicado, en comp oba que la ed neu onal ep esen a co ec amen e el sis ema modelizado y es capaz de gene aliza el compo amien o de es e más allá de los da os de en enamien o, cualquie en ada den o del ango de en enamien o. Pa a es o, a di e encia del diseño, c eación y en enamien o de la ed, no se han empleado las unciones p opias de MATLAB, sino que se ha desa ollado de ce o una unción equi alen e que ealice las ope aciones de la ed neu onal. Elobje i ode es o es educi el cos ecompu acional de la ed,yaque las edes de MATLAB ( o ma o ne wo k) almacenan muchísima in o mación sob e la ed, como da os de pa áme os de en enamien o, de allessob e mapeo de en adas, o pa áme os de inicialización de los alo es de la ed, en e o os muchos. Es o esul a muy ú il, pe o muy pesadas a la ho a del cálculo, especialmen e con is as a su implan ación como modelos pa a con ol en iempo eal. 6.1.4.1. Da os de la ed educida y cálculo ma icial de salidas De es a o ma, se ha op ado po una unción que ex ae los pa áme os ele an es pa a el cálculo de las salidas de la ed (pesos y bias de las neu onas, e a dos y mapeo de en adas,…), ob eniendo así una es uc u a ( o ma o s uc ) con esos da os, a la que se ha denominado ed educida. Es es a ed educida la que se ha empleado pa a el cálculo de las salidas de la ed. Además, debido a cómo gua da MATLAB la in o mación de la ed, podemos usa la g an capacidad de MATLAB pa a el cálculo ma icial pa a acele a los cálculos. En p ime luga , las en adas a la ed se di iden en dos ec o es, inpu s y a ge s. Po consis encia con los o ma os que emplea MATLAB, es os ec o es son de amaño p×1pa a el ec o de inpu s, y de amaño q×1pa a el de a ge s. 37 El o ma o empleado puede isualiza se con acilidad con un ejemplo pa a el caso de una ed con 3 en adas exógenas y 2 salidas, donde las en adas de la ed son [u(k), u(k−1), y(k−1), y(k−2)]. En es e ejemplo, los ec o es de en ada se ían: Uin =           u1(k) u2(k) u3(k) u1(k−1) u2(k−1) u3(k−1)           U g =      y1(k−1) y2(k−1) y1(k−2) y2(k−2)      De es a o ma, pes el p oduc o en e el núme o de en adas exógenas (núme o de en adas del sis ema) y el núme o de mues as dis in as de es a en ada (2, ya que usa las mues as kyk−1); y qes el p oduc o en e el núme o de a ge s (igual al núme o de salidas del sis ema) y el núme o de mues as dis in as de es a en ada (mues as k−1yk−2). Es as en adas en an a la ed y pasan po la capa de en ada. El obje i o de es a capa es escala y no maliza las en adas de una o ma lineal (y=mx +n), de o ma que el ango de da os empleado en el en enamien o se mapee al ango [−1,1]. Pa a ealiza es o, se almacenan en la ed educida un pun o de la ec a y la pendien e m. El pun o co esponde al pun o del alo mínimo del ango de en enamien o que, como se ha comen ado, se mapea al -1, po lo que el pun o es (xmin,−1). Como es de espe a , las ans o maciones de las en adas de inpu s y a ge s son di e en es, ya que abajan en angos dis in os. Con ambos da os, se puede escala cualquie pun o de las en adas, y si es án den o del ango de en enamien o (que así debe ía se pa a e i a ex apolacio- nes y mejo a el endimien o de la ed), se mapea á a un alo en el ango [−1,1]:    uin =−1+min ·(Uin −xminin) u g =−1+m g ·(U g −xmin g) Respec o a la capa ocul a, MATLAB gua da los pesos de las neu onas en ma ices, donde cada ila co esponde a cada una de las nneu onas de la capa, y cada columna a un elemen o de la en ada. Como la capa ocul a ecibe dos en adas(inpu s y a ge s),se ienendosma icesdepesos,unapo cadaen ada. La ma iz de pesos de inpu s es de amaño n×p, y la ma iz de pesos de a ge s es de amaño n×q. 38 Po o o lado, los bias de las neu onas se almacenan en un ec o de amaño n×1, donde cada elemen o co esponde a cada una de las neu onas, de o ma simila simila a las ma ices de pesos. De es a o ma, los pa áme os de las neu onas de la capa ocul a se almacenan en es ma ices: Win =         w1in1w1in2· · · w1inp w2in1w2in2· · · w2inp w3in1w3in2· · · w3inp . . .. . ..... . . wnin1wnin2· · · wninp         W g =         w1 g1w1 g2· · · w1 gq w2 g1w2 g2· · · w2 gq w3in1w3in2· · · w3inp . . .. . ..... . . wn g1wn g2· · · wn gq         Bh=         bh1 bh2 bh3 . . . bhn         Así, con es as ma ices y ec o es, se puede ope a pa a ob ene la salida de las neu onas de capa ocul a, eco dando que se aplica la unción de ac i ación de la neu ona, en es e caso, la unción angen e hipe bólica ( anh(x)), denominada en MATLAB angen e sigmoidal ( ansig). De es a o ma, la salida de las neu onas dela capa ocul a (oh) es un ec o de amañon×1, siendocada elemen olasalida de cada neu ona: oh= anh(Win ·uin +W g ·u g +Bh)oh=         oh1 oh2 oh3 . . . ohn         La capa de salida unciona de o ma simila a la capa ocul a, sin emba go, es a capa solo iene una en ada (las salidas de la capa ocul a), po lo que end á una única ma iz de pesos, de amaño o×n, siendo oel núme o de salidas de la ed neu onal; además de su ec o de bias de amaño o×1: Wo=       w11 w12 · · · w1n w21 w22 · · · w2n . . .. . ..... . . wo1wo2· · · won       Bo=       bo1 bo2 . . . bon       39 De o ma simila a la capa ocul a, ope ando es as ma ices y ec o es, se ob iene la salida inal de la ed. En es e caso, la unción de ac i ación es lineal, po lo que la salida de la ed (one ) es: one =Wo·oh+Boone =       o1 o2 . . . oo       Cabe des aca que es a salida (one ) debe desno maliza se, siguiendo el p o- ceso in e so al ealizado pa a la en ada del a ge (ya que usa los mismos pa á- me os). De es a o ma, eniendo los alo es xmin ymco espondien es al a ge , podemos ob ene la salida eal (One ) median e la siguien e ope ación: xminou =xmin g mou =m g One =xminou +one −(−1) mou De es a o ma, en esumen, la ed educida debe con ene las ma ices de pesos y ec o es de bias, an o de la capa ocul a, como de la capa de salida, además de los pa áme os de no malización (xmin, y pendien e m) de las dos en adas. Así, la unción de educción de la ed desa ollada oma una ed de ipo ne wo k, y c ea una ed educida de ipo s uc , con es os da os. Po o o lado, se ha desa ollado la unción que ep oduce las ope aciones de la ed aplicando las ope aciones ma iciales mencionadas, capa a capa: capa de en ada (no malización de en adas), capa ocul a, y capa de salida (cálculo de salida y desno malización). A es a unción se la denomina á, po simplicidad, unción NARX. 40 -2 -1 0 1 2 En ada u -3 -2 -1 0 1 2 3 4 5 Salida y SNL5 -2 -1 0 1 2 En ada u -8 -6 -4 -2 0 2 4 6 8 Salida y SNL1 Figu a 17: En adas y salidas de los sis emas en égimen es aciona io 6.2.1. Sis ema SISO no-lineal El p ime o de los sis emas modelizados es el sis ema SNL5. Como se ha comen ado, se ha comenzado po un sis ema simple, sob e el que se basan el es o. Es esis emaesunsis emaconunaúnicaen adayunaúnicasalida(SISO),no- lineal,quepe mi e ealiza unap ime a ap oximaciónalp oblemaquenosocupa. Dees a o ma,elsis emaamodela eseldadoenlaEcuación6.1.Sinemba go, pa a el caso que nos ocupa, es mejo eesc ibi la de o ma que la salida calculada sea la salida ac ual yk. Aunque es e paso puede esul a edundan e, es mejo esc ibi la así pa a e , in e p e a , y ex ae in o mación de ella con mayo acilidad ya que, en cuan o a los e a dos empleados en MATLAB, la salida de la ed se de ine como la salida de lamues aac ual ( e a do0).Así, laecuaciónque ep esen aelsis emaa modela es: yk=1,5·yk−1·yk−2 1 + y2 k−1+y2 k−2 + 0,7·sin(0,5 (yk−1+yk−2)) ·cos (0,5 (yk−1+yk−2)) + 1,2uk−1 Es a ecuación puede se simpli icada aplicando iden idades igonomé icas, esul ando en la ecuación inal del p ime sis ema modelado: yk=1,5·yk−1·yk−2 1 + y2 k−1+y2 k−2 + 0,35 ·sin(yk−1+yk−2)+1,2uk−1(6.3) 47 De es a o ma, as eesc ibi la, en la Ecuación 6.3 puede obse a se que las únicas en adas que ienen impac o en la salida ykson [uk−1, yk−1, yk−2]. De es a o ma, g acias al conocimien o del sis ema, se conocen los e a dos máximos de las en adas, y pueden es ablece se sus angos de ba ido sin necesidad de es imación. En es e caso, los e a dos de las en adas exógenas (inpu ) se án 0 o 0/1, mien as que los e a dos de a ge se án 1 o 1/2. Po o o lado, debido a que se a a se un sis ema SISO, y no excesi amen e complejo, el núme o de neu onas se es ablece á en el ango de en e 2 y 6. Es a se a a de una es imación basada en la expe iencia p e ia, po lo que en caso de da mal esul ado, puede cambia se. Respec o al núme o de epe iciones de cada ed, se es ablece á en 4, pa a educi el núme o de edes a en ena , ya que no se es ima que se equie a ace ca se en exceso al modelo óp imo, debido a la baja complejidad del sis ema. 6.2.2. Sis ema MIMO no-lineal Pa a el segundo sis ema modelizado, se ha c eado un sis ema MIMO. Es e sis ema es á compues o po los dos sis emas no-lineales no p esen ados, SNL5 y SNL1, de o ma independien e, es deci , sin acoplamien o en e ambos. El obje i o de es e segundo sis ema es, una ez es udiada la iabilidad de los modelos neu onales pa a la modelización del an e io sis ema SISO no-lineal, busca amplia lo a sis emas MIMO, mucho más complejos y ce canos a los sis emas eales. La azón po la que se han elegido es os dos sis emas sin é icos pa a o ma el sis ema MIMO es po sus dis in os compo amien os no-lineales, comen ados an e io men e: en SNL5 los pun os de ope ación siguen una unción con ondu- laciones, mien as que en SNL1, es a elación sigue una unción cúbica, c eando g andes a iaciones en la salida con pequeñas a iaciones en la en ada, si es á alejada del ce o. Así, se desea es udia el compo amien o de la ed in en ando ep esen a simul áneamen e es os dos compo amien os. Po o o lado, se ha decidido no inclui acoplamien o en e ambos sis emas pa a es udia el e ec o de la complejidad in oducida po las múl iples en adas y salidas, an es de a on a o as uen es de complejidad. 48 De es a o ma, el sis ema desa ollado, como en el caso an e io , asignando la salida al ins an e ac ual, y aplicando la iden idad igonóme ica pa a la ecuación co espondien e al sis ema SNL5, se de ine po las siguien es ecuaciones:            y1,k =1,5·y1,k−1·y1,k−2 1 + y2 1,k−1+y2 1,k−2 + 0,35 ·sin(y1,k−1+y1,k−2)+1,2u1,k−1 y2,k =y2,k−1 1 + y2 2,k−1 +u3 2,k−1 (6.4) Obse ando la Ecuación 6.4, puede e se que, al igual que pa a el an e io sis- ema, las únicas en adas que ienen impac o en la salida ykson [uk−1, yk−1, yk−2]. Po an o, g acias al conocimien o del sis ema (ya que se conocen las ecuacio- nes), se pueden de ini de igual mane a los angos de ba ido de las en adas de la ed: los e a dos de inpu se án 0 o 0/1, mien as que los e a dos de a ge se án 1 o 1/2. Sin emba go, al se en es e caso, un sis ema más complejo que el an e io , el núme o de neu onas del ango se á mayo . En es e caso, se es ima que el núme o deneu onases éen e8y20.Además,pa a educi elnúme ode edesaen ena , se es ablece án alo es en sal os de 2 neu onas (8,10,12,14,16,18,20). Finalmen e, debido aque el sis emaes máscomplejo,ypo an o,los en ena- mien os pueden esul a , po alea o iedad, en edes poco op imizadas (lejos del e o mínimo global de en enamien o). Pa a log a con mayo segu idad edes más op imizadas, se ha ele ado el núme o de epe iciones, espec o al caso an- e io , a 10 epe iciones pa a cada combinación de pa áme os. 49 7. Análisis de los esul ados En es e apa ado se analiza án los esul ados ob enidos du an e el abajo ealizado, p esen ando y desc ibiendo el modelo neu onal ob enido pa a cada uno de los sis emas modelados, además de p esen a da os que jus i iquen las elecciones ealizadas. Así, se incluye un apa ado po cada sis ema modelizado, donde se p esen a- án los esul ados ob enidos du an e el en enamien o y alidación de las edes, y al inal de cada uno de ellos, inalmen e se conclui á cuál es el modelo elegido. 7.1. Sis ema SISO no-lineal Pa a ealiza el p oceso de en enamien o de es e sis ema, se ha empleado una en ada de en enamien o, como se ha comen ado en la sección an e io , siguiendo la unción camino alea o io sa u ado. La en ada (Figu a 18) con iene 300 mues as (ins an es de iempo), con una p obabilidad de cambio en cada mues a del 20%. Respec o al ango de alo es, se ha decidido emplea alo es de uen el ango [−2,5,2,5], debido a que ep esen a una di e sidad de pun os de ope ación y zonas con no-linealidades. 0 50 100 150 200 250 300 -2.5 -2 -1 0 1 2 2.5 u En adas de en enamien o 0 50 100 150 200 250 300 -4 -2 0 2 4 y Salidas de en enamien o Figu a 18: Da os de en ada y salida de en enamien o pa a el sis ema SISO no-lineal 50 Respec o a la en ada de alidación, se ha empleado una en ada (Figu a 19) con las mismas ca ac e ís icas que la en ada de en enamien o. 0 50 100 150 200 250 300 -2.5 -2 -1 0 1 2 2.5 u En adas de alidación 0 50 100 150 200 250 300 -4 -2 0 2 4 y Salidas de alidación Figu a 19: Da os de en ada y salida de alidación pa a el sis ema SISO no-lineal Con es os da os de en enamien o y alidación, se ha p ocedido a la c eación, en enamien o y alidación de las edes neu onales median e el ba ido de pa áme os. T as ealiza es e p oceso, y p ocesa la es uc u a de da os pa a ob ene la mejo ed pa a cada combinación de núme o de neu onas y e a dos de inpu y a ge , se ob ienen los siguien es g á icos compa a i os de los es endimien os calculados: e o cuad á ico medio (MSE) y e o absolu o máximo (MaAE) en lazo abie o (Figu a 20), y MSE en lazo ce ado (Figu a 21), como medida de la di e gencia. 0 0.5 2 [0]&[1] MSE SNL5 1 3 Neu onas [0]&[1,2] 1.5 4 Re a dos de inpu y a ge [0,1]&[1] 5 6 [0,1]&[1,2] 0 2 2 [0]&[1] MaAE SNL5 4 3 Neu onas [0]&[1,2] 6 4 Re a dos de inpu y a ge [0,1]&[1] 5 6 [0,1]&[1,2] Figu a 20: MSE y MaAE en lazo abie o de con igu aciones de edes pa a el sis ema SISO 51 02 [0]&[1] 1 MSE Lazo Ce ado SNL5 3 Neu onas [0]&[1,2] 2 4 Re a dos de inpu y a ge [0,1]&[1] 5 6 [0,1]&[1,2] Figu a 21: MSE en lazo ce ado de con igu aciones de edes pa a el sis ema SISO Tal y como se obse a en las Figu as 20 y 21, los pa áme os ba idos que ie- nen mayo impac o en la calidad del modelo neu onal ob enido son los e a dos de en adas, pa icula men e los e a dos de inpu , que educen d ás icamen e el e o en los es casos g a icados. Po o o lado, inse a a la ed un mayo núme o de mues as de a ge ambiénmejo ael endimien o(meno esíndicesde endimien o,yaquese a an de medidas de e o : MSE, MaAE,…), aunque únicamen e en el caso que los e a dosde inpu sean0y 1,es deci ,las en adas exógenasala edsean [uk, uk−1]. Pa a es os casos, inse a yk−2además de yk−1gene a una mejo a adicional del endimien o de los modelos neu onales. Sin emba go, aunque sí se no a una mejo ía al aumen a el núme o de neu onas, el impac o en el endimien o de la ed ampoco es muy ele ado. De hecho, es a mejo a es an pequeña que, debido al aumen o del iempo de compu aciónnecesa iopa aconsegui lo,esmejo elegi edesde amañomedio. Así, las edes que esul an más p ome edo as son las edes con e a dos de inpu 0 y 1, de 4 a 6 neu onas. A con inuación, pa a pode compa a los da os de o ma más exac a, se p esen an las ablas que con ienen los da os exac os pa a es as edes: [inDel]&[ gDel] 4 neu onas 5 neu onas 6 neu onas [0,1]&[1] 0.1751 0.1679 0.1767 [0,1]&[1,2] 0.0416 0.0096 0.0098 Tabla 4: MSE en lazo abie o de p eselección de edes pa a el sis ema SISO 52 [inDel]&[ gDel] 4 neu onas 5 neu onas 6 neu onas [0,1]&[1] 1.5345 1.6432 1.6660 [0,1]&[1,2] 0.6128 0.3032 0.5264 Tabla 5: MaAE en lazo abie o de p eselección de edes pa a el sis ema SISO [inDel]&[ gDel] 4 neu onas 5 neu onas 6 neu onas [0,1]&[1] 0.2224 0.1705 0.1832 [0,1]&[1,2] 0.0500 0.0548 0.0202 Tabla 6: MSE en lazo ce ado de p eselección de edes pa a el sis ema SISO T as obse a con más de alle los da os, se ha decidido desca a las edes con e a do de a ge 1, especialmen e debido a que el e o absolu o máximo que p esen an (Tabla 5) es ele ado. De las edes es an es, sólo al a elegi el núme o de neu onas en la capa ocul a. Así,sehadecididoemplea la edcon5neu onas,yaquemues aun esul ado sob esalien e, mejo incluso que la ed con 6 neu onas excep o en la alidación en lazo ce ado, aunque ambién ob iene muy buenos esul ados. Respec o a la ed con 4 neu onas, su endimien o ambién es muy bueno, y iene un cos e compu acional meno pe o, compa a i amen e, su endimien o en lazo abie o es peo que la ed con 5 neu onas. De es a o ma, el modelo neu onal ob enido pa a ep esen a el p ime sis ema obje i o es una ed neu onal con 5 neu onas, e a dos de inpu 0 y 1, y e a dos de a ge 1 y 2, po lo que sus en adas son [uk, uk−1, yk−1, yk−2]. Rep esen ando la espues a del sis ema du an e la alidación en lazo abie o (Figu a 22) ealizada, se puede comp oba que su espues a es muy buena, siguiendo la salida eal con e o muy educido, excep o en el lími e supe io del ango de alo es, donde se ap ecia un lige o e o , aunque muy educido. Po o o lado, pa a esos mismos alo es (lími e supe io del ango), la alida- ción en lazo ce ado (Figu a 23) p esen a e o es no ables en los casos en los que la en ada se man iene en el lími e supe io du an e a ias mues as. Sin emba - go, ambién se comp ueba que pa a el es o de alo es, la espues a es excelen e, muy ce cana a la salida eal. De hecho, incluso en los momen os que la ed oma como en ada p edicciones an e io es con e o (ya que abaja en lazo ce ado), la espues a sigue siendo buena, po lo que es capaz de echaza es os e o es. Cabe des aca que, aunque no se ha ep esen ado, se ha comp obado que la ed con 4 neu onas no posee es e e o en la alidación en lazo ce ado, aunque p esen a e o es lige amen e mayo es de o ma gene al. De es a o ma, es a ed puede se una al e na i a en casos en los que es e compo amien o en lazo ce ado del modelo seleccionado pueda esul a p oblemá ico. 53 Num Neu onas = 5 | inpu Delay [0,1] - a ge Delay [1,2] 0 50 100 150 200 250 300 -4 -3 -2 -1 0 1 2 3 4 5Validación en lazo abie o SNL5 Ta ge RNA Figu a 22: Respues a del modelo neu onal pa a el sis ema SISO ob enida pa a alidación en lazo abie o Num Neu onas = 5 | inpu Delay [0,1] - a ge Delay [1,2] 0 50 100 150 200 250 300 -4 -3 -2 -1 0 1 2 3 4 5 6Validación en lazo ce ado SNL5 Ta ge RNA Figu a 23: Respues a del modelo neu onal pa a el sis ema SISO ob enida pa a alidación en lazo ce ado 54 7.2. Sis ema MIMO no-lineal De la misma o ma que pa a el sis ema an e io , el conjun o de da os de en enamien o se compone po 300 mues as gene adas siguiendo la unción camino alea o io sa u ado. Sin emba go, al a a se de un sis ema MIMO con dos en adas y dos salidas, se ienen dos en adas y dos salidas de en enamien o. Pa a ambas en adas, la p obabilidad de cambio en cada mues a es del 20%, igual que an es, pe o los cambios son independien es pa a cada en ada, es deci , no ienen po qué cambia ambas en adas simul áneamen e. Respec o a los angos de alo es empleados, la p ime a en ada que, al a a se de un sis ema MIMO desacoplado, pe enece al sis ema SNL5, oma alo es en el mismo ango que en el an e io caso ([−2,5,2,5]). Po o o lado, la segunda en ada, co espondien e al sis ema SNL1, oma a- lo es den o del ango [−1,7,1,7] pa a ep esen a las no-linealidades del sis ema, pe o sin gene a en adas muy alejadas de 0, ya que, como se ha dicho, la salida del sis ema SNL1 es á elacionada con la en ada ele ada al cubo. 0 50 100 150 200 250 300 -2.5 -2 -1 0 1 2 2.5 u1 En ada 1 de en enamien o 0 50 100 150 200 250 300 -1.7 -1.5 -1 0 1 1.5 1.7 u2 En ada 2 de en enamien o 0 50 100 150 200 250 300 -3 -2 -1 0 1 2 3 4 y1 Salida 1 de en enamien o 0 50 100 150 200 250 300 -5 0 5 y2 Salida 2 de en enamien o Figu a 24: Da os de en ada y salida de en enamien o pa a el sis ema MIMO no-lineal 55 A di e encia del conjun o de en enamien o, se han empleado en adas de alidación (Figu a 25) con una p obabilidad de cambio del 10 %, buscando comp oba en la alidación que la ed no haya ap endido la asa de cambio, es deci , que ep esen e el sis ema independien emen e de que se man engan los alo es de las en adas en el iempo. El núme o de mues as y los angos de alo essíquesonigualesalosdeen enamien o,300mues asy angos[−2,5,2,5] y[−1,7,1,7], espec i amen e. 0 50 100 150 200 250 300 -2.5 -2 -1 0 1 2 2.5 u1 En ada 1 de alidación 0 50 100 150 200 250 300 -1.7 -1.5 -1 0 1 1.5 1.7 u2 En ada 2 de alidación 0 50 100 150 200 250 300 -4 -2 0 2 4 y1 Salida 1 de alidación 0 50 100 150 200 250 300 -5 0 5 y2 Salida 2 de alidación Figu a 25: Da os de en ada y salida de alidación pa a el sis ema MIMO no-lineal Una ez gene ados los conjun os de en enamien o y alidación, se ha p o- cedido a ejecu a el p og ama de gene ación de edes neu onales en enadas y alidadas median e ba ido de pa áme os. T asgene a yp ocesa laes uc u adeda os ne Da a,seob ienenlosg á icos de los endimien os calculados: e o cuad á ico medio (MSE) y e o absolu o máximo (MaAE) en lazo abie o (Figu a 26), y MSE en lazo ce ado (Figu a 27). 56 T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas T.3.1.3: Función de calculo ma icial de salidas Desc ipción: Comp ende el o ma o empleado in e na- men e po MATLAB, pa a desa olla un código de educ- ción de edes neu onales y cálculo ma icial pa a disminui el consumo de memo ia y mejo a el endimien o compu- acional de los cálculos, espec i amen e. Du ación: 5 días T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed T.3.1.4: Funciones de alidación de la ed Desc ipción: Desa ollo de las unciones enca gadas de ealiza la alidación en lazo abie o y lazo ce ado de los modelos neu onales. Du ación: 4 días T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados T.3.1.5: Funciones de g a icado de esul ados Desc ipción: C eación de unciones que g a iquen los esul ados ele an es del p oceso ealizado, en un o ma o adecuado. Du ación: 2 días FASE 3.2. Sis ema SISO no-lineal T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema T.3.2.1: Es udio del sis ema Desc ipción: Es udio del sis ema SISO no-lineal: ecua- ción, elaciones de en ada/salida, pun os de ope ación, no-linealidades…. Du ación: 2 días 63 T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales T.3.2.2: Diseño y en enamien o de modelos neu onales Desc ipción:Gene acióndelosmodelosneu onales pa a el sis ema SISO no-lineal median e el código desa ollado. Du ación: 2 días T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales T.3.2.3: Validación de modelos neu onales Desc ipción: Validación en lazo abie o y ce ado de los modelos neu onales pa a el sis ema SISO no-lineal, com- pa ación, y selección del modelo neu onal inal. Du ación: 3 días FASE 3.3. Sis ema MIMO no-lineal T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema T.3.3.1: Es udio del sis ema Desc ipción: Es udio del sis ema MIMO no-lineal: ecua- ciones, elaciones de en ada/salida, pun os de ope ación, no-linealidades…. Du ación: 3 días T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales T.3.3.2: Diseño y en enamien o de modelos neu onales Desc ipción:Gene acióndelosmodelosneu onales pa a el sis ema MIMO no-lineal median e el código desa olla- do. Du ación: 3 días T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales T.3.3.3: Validación de modelos neu onales Desc ipción: Validación en lazo abie o y ce ado de los modelos neu onales pa a el sis ema MIMO no-lineal, com- pa ación, y selección del modelo neu onal inal. Du ación: 4 días 64 FASE 3.4. In eg ación y simpli icación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código T.3.4.1: In eg ación del código Desc ipción: In eg ación de las unciones desa olladas en unciones mayo es que las implemen en de o ma que se op imice el p oceso, pa a lo que se ha empleado el ba ido de pa áme os. Du ación: 5 días T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código T.3.4.2: Simpli icación y modula ización del código Desc ipción: Úl imas modi icaciones al código pa a aci- li a su uso y comp ensión, con el obje i o de ayuda a op- imiza el desa ollo de u u os modelos neu onales. Du ación: 3 días FASE 4. Documen ación T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o T.4.1: Documen ación del p oyec o Desc ipción: Redacción del documen o ecopilando oda la in o - mación del abajo ealizado en el TFM. Du ación: 71 días 8.2. Hi os Hi o Desc ipción Fecha Código de c eación y alidación de modelos neu onales H1 comple ado Semana 10 H2 Modelo neu onal del sis ema SISO no-lineal gene ado Semana 13 H3 Modelo neu onal del sis ema MIMO no-lineal gene ado Semana 15 Código de desa ollo de modelos neu onales in eg ado: H4 p oyec o inalizado Semana 17 Tabla 10: Hi os inales del p oyec o 65 8.3. Diag ama de Gan Ta ea Nomb e de a ea Du ación Comienzo Fin F.1 Fase p elimina 3 días 23/05/2022 25/05/2022 T.1.1 Re isión de la p opues a del TFM 3 días 23/05/2022 25/05/2022 Es udio de es ado del a e y F.2 he amien as 26 días 26/05/2022 30/06/2022 T.2.1 Es ado del a e de RNA 6 días 26/05/2022 02/06/2022 Es ado del a e de iden i icación de T.2.2 sis emas 5 días 03/06/2022 09/06/2022 T.2.3 Ap endizaje de he amien as a u iliza 3 días 10/06/2022 14/06/2022 T.2.4 Familia ización con el en o no de abajo 12 días 15/06/2022 30/06/2022 F.3 Desa ollo del abajo 42 días 01/07/2022 12/09/2022 F.3.1 Desa ollo del código 17 días 01/07/2022 25/07/2022 T.3.1.1 Función de gene ación de en adas 3 días 01/07/2022 05/07/2022 Función de c eación y en enamien o de T.3.1.2 edes 3 días 06/07/2022 08/07/2022 T.3.1.3 Función de cálculo ma icial de salidas 5 días 11/07/2022 15/07/2022 T.3.1.4 Funciones de alidación de la ed 4 días 18/07/2022 21/07/2022 T.3.1.5 Funciones de g a icado de esul ados 2 días 22/07/2022 25/07/2022 H1 Código desa ollado 0 días 25/07/2022 25/07/2022 F.3.2 Sis ema SISO no-lineal 7 días 26/07/2022 17/08/2022 T.3.2.1 Es udio del sis ema 2 días 26/07/2022 27/07/2022 Diseño y en enamien o de modelos T.3.2.2 neu onales 2 días 28/07/2022 29/07/2022 T.3.2.3 Validación de modelos neu onales 3 días 15/08/2022 17/08/2022 H2 Sis ema SISO no-lineal modelado 0 días 17/08/2022 17/08/2022 F.3.3 Sis ema MIMO no-lineal 10 días 18/08/2022 31/08/2022 T.3.3.1 Es udio del sis ema 3 días 18/08/2022 22/08/2022 Diseño y en enamien o de modelos T.3.3.2 neu onales 3 días 23/08/2022 25/08/2022 T.3.3.3 Validación de modelos neu onales 4 días 26/08/2022 31/08/2022 H3 Sis ema MIMO no-lineal modelado 0 días 31/08/2022 31/08/2022 F.3.4 In eg ación y simpli icación del código 8 días 01/09/2022 12/09/2022 T.3.4.1 In eg ación del código 5 días 01/09/2022 07/09/2022 Simpli icación y modula ización del T.3.4.2 código 3 días 08/09/2022 12/09/2022 H4 Código in eg ado 0 días 12/09/2022 12/09/2022 F.4 Documen ación 71 días 23/05/2022 12/09/2022 T.4.1 Documen ación del p oyec o 71 días 23/05/2022 12/09/2022 Tabla 11: Plani icación inal del p oyec o 66 25/07 17/08 31/08 12/09 lun 16 lun 23 lun 30 lun 06 lun 13 lun 20 lun 27 lun 04 lun 11 lun 18 lun 25 lun 01 lun 08 lun 15 lun 22 lun 29 lun 05 lun 12 lun 19 junio 2022 julio 2022 agos o 2022 sep iemb e 2022 Figu a 30: Diag ama de Gan del p oyec o 67 9. Desc ipción del p esupues o En es e apa ado se abo da la ealización del p esupues o inal usado pa a ealiza el p oyec o. Respec o a las di e sas conside aciones an es de ealiza el p esupues o, se ha seguido el mismo c i e io que en el p esupues o p o isional del apa ado «Obje i os y alcance»: Se ha es imado la asa ho a ia del alumno como la de un ingenie o júnio (20 €/h). El alumno abaja odos los días du an e 8 ho as dia ias, du an e oda la du ación del p oyec o, en es e caso, igual a 71 días. El pe iodo de amo ización del ha dwa e (PC) es de 5 años. El pe iodo de amo ización del so wa e (PC) es de 3 años. Po lo demás, no se ha incu ido en gas os ( ungibles), y se es ima que los cos es indi ec os adicionales son del 4 % de los cos es di ec os. Adicionalmen e, se debe añadi un 2% co espondien e al cos e de capi al. De es a o ma, el p esupues o o al del p oyec o esul an e es de 12.681,75 €. En la Tabla 13 se puede obse a el p esupues o con más de alle. Compa ando con el p esupues o inicial ealizado, el p esupues o inal es muy ce canoales imado,aunque cabe des aca que lapa idadeimp e is osp o is a es imp escindible pa a que es o haya sido así. Es o es debido a que odos los cos es, y especialmen e el de ho as in e nas, que es la g an mayo ía de es os, es p opo cional al núme o de ho as abajadas. Al habe se ex endido el p oyec o de los 64 días p e is os a 71, es os gas os hanaumen adoen la mismap opo ción,que esce canaal 10% adicional. Dees a o ma, al coincidi es e po cen aje con el po cen aje ese ado a imp e is os, los p esupues os esul an muy simila es. 68 Cálculo de asas ho a ias Cos e (€) Vida ú il (h) Tasa ho a ia (€/h) PC 2.000 9.000 0,222 MATLAB R2022a 2.100 5.400 0,389 Deep Lea ning Toolbox 1.200 5.400 0,222 Pa allel Compu ing Toolbox 1.050 5.400 0,194 Con ol Sys em Toolbox 1.200 5.400 0,222 Tabla 12: Cálculo de las asas ho a ias del p oyec o HORAS INTERNAS Can idad (h) Tasa ho a ia (€/h) Cos e (€) 11.360,00 € Alumno 568 20,000 11.360,00 AMORTIZACIONES Can idad (h) Tasa ho a ia (€/h) Cos e (€) 594,89 € PC 568 0,222 126,22 MATLAB R2022a 456 0,389 177,33 Deep Lea ning Toolbox 456 0,222 101,33 Pa allel Compu ing Toolbox 456 0,194 88,67 Con ol Sys em Toolbox 456 0,222 101,33 COSTES DIRECTOS 11.954,89 € Cos es indi ec os 4 % 478,20 € SUBTOTAL 12.433,08 € Cos e de capi al 2% 248,66 € TOTAL 12.681,75 € Tabla 13: P esupues o inal del p oyec o 69 10. Conclusiones y abajos u u- os En es e abajo se ha desa ollado los modelos neu onales de dos sis emas no-lineales complejos, p incipalmen e o ien ados a su uso como modelos en es a egias de con ol p edic i o, especialmen e en la es a egia iMO-NMPC; y se ha es udiado su endimien o. Po o o lado, se ha desa ollado un código de en enamien o y alidación de modelos neu onales pa a op imiza el desa ollo de modelos u u os. Pa a es o, se ha in es igado y de allado el ámbi o gene al en que se enma ca el abajo y los a ances en es e, el de las edes neu onales a i iciales. De es a o ma, se ha comp obado que las edes neu onales son una g an opción a la ho a de desa olla modelos de caja neg a de sis emas de di e sos campos, y se han compa ado dis in as es uc u as de RNA, eniendo en cuen a las en ajas e incon enien es de cada una de ellas. Una ez con ex ualizado el abajo, se han explicado y jus i icado las di e sas conside aciones y elecciones hechas du an e el desa ollo del p oyec o pa a en- ma ca el en o no conc e o en el que se ha abajado, especi icando la es uc u a de ed neu onal y el algo i mo de en enamien o empleados, en e o os. De es a o ma, una ez educido el amplio espec o de posibilidades den o de es e campo, se ha desc i o y de allado el abajo ealizado, y el p oceso seguido du an e el desa ollo del abajo. En es e p oceso, se ha p es ado especial a ención a la disminución del cos e compu acional de las edes neu onales, po un doble mo i o: el meno uso de ecu sos du an e su en enamien o y aplicación, y debido al iesgo iden i icado du an e el análisis de iesgos. Po es a azón, se ha desa ollado un código de cálculo ma icial de salidas de la ed neu onal, median e el cual se ha educido el cos e compu acional del desa ollo de los modelos neu onales en es e abajo, educiendo así el iempo empleado pa a ello. 70 Adicionalmen e, es e desa ollo, que no es aba p e is o en la plani icación inicial, no ha causado e asos adicionales, ya que se es ima que el iempo empleado en desa olla es e código se ha aho ado du an e el en enamien o y alidación de los modelos neu onales. Sin emba go, aunque es o no ha supues o e asos adicionales, el p oyec o sí que ha enido un e aso de 7 días debido a imp e is os y la mayo du ación de algunas a eas, lo que ha causado que los cos es di ec os del p oyec o hayan sido mayo es de los calculados. Aún así, es e posible e aso y mayo cos e se había con emplado en el p esupues o inicial, quedando cubie o con la pa ida ese ada a imp e is os. En el ámbi o de los esul ados ob enidos, se ha comp obado el co ec o uncionamien o de es os modelos neu onales en p uebas de alidación, an o en lazo abie o, como en lazo ce ado, ob eniendo buenos esul ados. En es e p oceso ambién se ha enido muy en cuen a la educción del cos e compu acional, o eciendo pa a cada sis ema un modelo al e na i o con menos neu onas, pe o con buen endimien o. En es e espec o, los abajos u u os en la línea de in es igación pasan po la iden i icación de sis emas aún más complejos, una ez es ablecidas las bases pa a un desa ollo más e icien e median e el código desa ollado. Es o pasa po el modelado de sis emas mul i a iables más complejos, con la adición de acoplamien os, o dinámicas aún más complejas. También puede pasa po el desa ollo de modelos de sis emas eales. Po o o lado, as el desa ollo de los modelos neu onales ealizado en es e abajo, queda ealiza la implemen ación de es os en la es a egia de con ol iMO-NMPC, p ime o en simulación, pe o especialmen e en sis emas empo ados de iempo eal, como Speedgoa , donde la memo ia y el pode de cómpu o son ac o es de e minan es. En es e aspec o, el én asis pues o en la educción del cos e compu acional esul a pa icula men e ú il pa a mejo a el endimien o, median e el cálculo ma icial y la búsqueda de edes de amaño educido. Finalmen e,eles udiodelaimplemen acióndelen enamien oon-line puede esul a in e esan e, con el obje i o de añadi una capa de adap abilidad al con ol, con el obje i o de diseña un sis ema de con ol e ec i o y po en e. 71 Bibliog a ía [1] K.Na end ayK.Pa hasa a hy,«Iden i ica ionandcon olo dynamicalsys- ems using neu al ne wo ks,» IEEE T ansac ions on Neu al Ne wo ks, ol. 1, n.o1, págs. 4-27, 1990. DOI: 10.1109/72.80202. [2] M. M. Polyca pou y P. A. Ioannou, «Iden i ica ion and Con ol o Nonli- nea Sys ems Using Neu al Ne wo k Models: Design and S abili y Analy- sis,» ELECTRICAL ENGINEERING—SYSTEMS REP, in . éc., 1991. di ección: h ps://ci esee x.is .psu.edu/ iewdoc/summa y?doi=10.1.1.18.1816. [3] J. J. Vale a Ga cía, V. Gómez Ga ay, E. I igoyen Go do, F. A aza Fano y M. La ea Sukia, «In elligen Mul i-Objec i e Nonlinea Model P edic i- e Con ol (iMO-NMPC): Towa ds he ‘on-line’ op imiza ion o highly com- plex con ol p oblems,» Expe Sys ems wi h Applica ions, ol. 39, n.o7, págs. 6527-6540, 2012, ISSN: 0957-4174. DOI: h ps://doi.o g/10.1016/ j.eswa.2011.12.052. [4] K. Ho nik, M. S inchcombe y H. Whi e, «Mul ilaye eed o wa d ne wo ks a e uni e sal app oxima o s,» Neu al Ne wo ks, ol. 2, n.o5, págs. 359-366, 1989, ISSN: 0893-6080. DOI: h ps://doi.o g/10.1016/0893-6080(89) 90020-8. [5] G. Cybenko, «App oxima ion by supe posi ions o a sigmoidal unc ion,» Ma hema ics o Con ol, Signals and Sys ems, ol. 2, n.o4, págs. 303-314, dic. de 1989, ISSN: 1435-568X. DOI: 10.1007/BF02551274. [6] J. Deng, S. Sie la, J. Sun y V. Vya kin, «Rein o cemen lea ning o indus- ial p ocess con ol: A case s udy in la ness con ol in s eel indus y,» Compu e s in Indus y, ol. 143, pág. 103 748, 2022, ISSN: 0166-3615. DOI: h ps://doi.o g/10.1016/j.compind.2022.103748. [7] M. Hagan y M. Menhaj, «T aining eed o wa d ne wo ks wi h he Ma qua d algo i hm,»IEEE T ansac ions on Neu al Ne wo ks, ol.5,n.o6,págs.989-993, no . de 1994, ISSN: 1941-0093. DOI: 10.1109/72.329697. [8] J. Sjöbe g, H. Hjalma sson y L. Ljung, «Neu al Ne wo ks in Sys em Iden i i- ca ion,» IFAC P oceedings Volumes, ol. 27, n.o8, págs. 359-382, 1994, IFAC SymposiumonSys emIden i ica ion(SYSID’94),Copenhagen,Denma k,4- 6 July, ISSN: 1474-6670. DOI: h ps://doi.o g/10.1016/S1474-6670(17) 47737-8. 72 Código 3: Función de g a icado y gua dado de imágenes 1 unc ion NARX_plo _ne Da a ( ne Da a , alDa a , igSa ePa h) 2 3%% Si no exis e la ca pe a pa a gua da las imágenes , la c ea 4i ~exis ( igSa ePa h ,'di ') 5mkdi ( igSa ePa h ); 6end 7 8%% Inicializa da os y p epa a celdas con nomb es 9% Pa a nomb a edes , e ique as de da os en ejes , í ulos de g á icos ... 10 11 % Tamaño de da os de salida (igno a e ique as ) y núme o de salidas 12 % ( igual al núme o de e o ). 13 sizeDa a = size( ne Da a ) -[2 ,1]; 14 numOu pu s = leng h ( ne Da a {1 ,1}. bes Ne . openVal_mse ); 15 16 % C ea celdas con núme o de neu onas pa a nomb a cada ed y pa a usa 17 % como e ique as de da os en ejes 18 numNeu ons = cell (1 , sizeDa a (1)); 19 o i=1: sizeDa a (1) 20 numNeu ons{i} = num2s (size( ne Da a {i ,1}. bes Ne . ne .IW {1 ,1} ,1)); 21 end 22 23 % C ea celdas con e a dos de en adas pa a nomb a cada ed y pa a 24 % usa como e ique as de da os en ejes 25 inDelays = cell (1 , sizeDa a (2)); 26 gDelays = cell (1 , sizeDa a (2)); 27 numDelays = cell (1 , sizeDa a (2)); 28 o i=1: sizeDa a (2) 29 inpu Delays = ne Da a {1,i }. bes Ne . ne . inpu Weigh s {1 ,1}. delays ; 30 a ge Delays = ne Da a {1,i }. bes Ne . ne . inpu Weigh s {1 ,2}. delays ; 31 inDelays {i} = s ep (num2s ( inpu Delays ),' ',','); 32 gDelays {i} = s ep (num2s ( a ge Delays ),' ',','); 33 numDelays {i} = s ca ("[" , s ep (num2s ( inpu Delays ),' ',','), ... 34 "]&[",s ep (num2s ( a ge Delays ),' ',',') ,"]"); 35 end 36 37 % Nomb es de las salidas , pa a nomb a los g á icos 38 i numOu pu s == 1 39 ou pu Names = " SNL5 "; 40 else 41 ou pu Names = [" SNL5 " ," SNL1 "]; 42 end 43 44 %% Bucle de g á icos de alidación 45 % Inicializa igu a de g á icos de alidación 46 h_ ig = igu e (42); 47 se (h_ ig ,'Colo ' ,[1 1 1],'Posi ion ' ,[216 418 560 420] , ... 48 ' ende e ','pain e s'); 49 pause(0.05); 50 51 % Bucle p incipal de g á icos 52 o i=1: sizeDa a (1) 53 o j=1: sizeDa a (2) 54 o alType =[" open " ," closed "] % Hace un g á ico pa a cada al 55 % Ob ene e a do máximo de la ed y da os de alidación 56 maxDelay = ne Da a {i ,j }. bes Ne . ne . numInpu Delays ; 79 57 i alType == " open " 58 al_ou = ne Da a {i ,j}. bes Ne . openVal_ou ; 59 lineType = 'b.'; 60 else 61 al_ou = ne Da a {i,j}. bes Ne . closedVal_ou ; 62 lineType = ' .'; 63 end 64 65 % E ique as de núme o de neu onas y e a dos ( pa a los 66 % í ulos de los g á icos ), y nomb e del a chi o a gene a 67 agNeu ons = s ca (" N = ", numNeu ons {i }); 68 agDelays = s ca (" inDel [", inDelays {j} ,"] - gDel [", ... 69 gDelays {j } ,"]"); 70 ne Name = s ca (" ne - Num Neu ", numNeu ons {i},"-iD ", ... 71 s ep ( inDelays {j}, ',','') ,"- D", ... 72 s ep ( gDelays {j}, ',',''),'. ig '); 73 74 % Pone í ulo al g á ico 75 sg i le ( s ca ( agNeu ons ," | ", agDelays )); 76 77 % G a ica cada salida en un subplo 78 o g aphOu pu =1: numOu pu s 79 subplo (numOu pu s ,1, g aphOu pu ); 80 hold on; 81 plo ( alDa a . a ge ( g aphOu pu , maxDelay +1: end) ,... 82 'k--','LineWid h ' ,1); 83 plo ( al_ou ( g aphOu pu ,:) , lineType , 'Ma ke Size ' ,10); 84 hold o ; 85 g id; 86 g id mino ; 87 i le( s ca (" Validación ", ou pu Names { g aphOu pu })); 88 legend (" Ta ge " ," RNA "); 89 end % bucle o g aphOu pu 90 91 % Gua da igu a en a chi o y limpia igu a ( pa a e i a 92 % c ea múl iples igu as) 93 sa e ig (h_ ig , igSa ePa h+ ne Name +" - "+ alType ); 94 pause(0.05); 95 cl ; 96 end % bucle o alType 97 end % bucle o j 98 end % bucle o i 99 100 % Ce a igu a 101 close(42); 102 103 %% G a ica e o es en g á icos de ba as 104 % C ea ma ices de e o es 105 ne Da a_ma = cell2ma (ne Da a (1: sizeDa a (1) ,1: sizeDa a (2))); 106 bes Ne _ma = [ ne Da a_ma . bes Ne ]; 107 108 open_mse_ma = eshape ([ bes Ne _ma . openVal_mse ]', ... 109 sizeDa a (1), sizeDa a (2) ,[]); 110 open_maxabse_ma = eshape ([ bes Ne _ma . openVal_maxabse ]', ... 111 sizeDa a (1), sizeDa a (2) ,[]); 112 closed_mse_ma = eshape ([ bes Ne _ma . closedVal_mse ]', ... 113 sizeDa a (1), sizeDa a (2) ,[]); 114 80 115 % Inicializa obje o g á ico y núme o de plo (pa a gene a igu as 116 % dis in as) 117 h_mse_maxabse = gobjec s (1 ,3* numOu pu s ); 118 plo Num = 0; 119 120 % Bucle de g á icos de ba as 121 o e o Type = [" MSE "," MaAE " ," MSE Lazo Ce ado "] 122 % Elegi ma iz de e o MSE , MaAE , o di e gencia , según el g á ico 123 swi ch e o Type 124 case "MSE " 125 plo Ma = open_mse_ma ; 126 case "MaAE" 127 plo Ma = open_maxabse_ma ; 128 case " MSE Lazo Ce ado " 129 plo Ma = closed_mse_ma ; 130 end % swi ch 131 132 % Pa a los e o es de odas las salidas , ealiza g á ico de ba as 133 % y e ique a lo adecuadamen e 134 o i=1: size(plo Ma ,3) % = numOu 135 plo Num = plo Num + 1; 136 h_mse_maxabse ( plo Num ) = igu e (42+ plo Num ); 137 138 ba 3 (plo Ma (: ,: ,i)) 139 iew(52.5,25); 140 i le( s ca ( e o Type ," ", ou pu Names {i })); 141 xlabel (" Re a dos de { i inpu } y { i a ge }"); 142 x icklabels ( numDelays ); 143 ylabel (" Neu onas "); 144 y icklabels ( numNeu ons ); 145 end % bucle o i 146 end % bucle o e o Type 147 148 % Gua da odas las igu as en un único a chi o. ig , y ce a igu as 149 % gene adas 150 sa e ig ( h_mse_maxabse , igSa ePa h +" g aph_pack_e o . ig "); 151 pause(0.05); 152 close(h_mse_maxabse); 153 154 % Mos a mensaje de inalización del p og ama 155 disp(" G á icos ealizados "); 156 end % unc ion 81 Sub unciones Código 4: Gene ación de da os de en ada median e camino alea o io sa u ado 1 unc ion u = gen_sa RandWalk ( ou Size , ou Range , swi chP ob ) 2 3% Calcula amaño del ango y c ea ango expandido (+-20 %) 4 angeTo = ou Range(2)-ou Range(1); 5expRange = [ou Range (1)- angeTo *0.2 , ou Range (2)+ angeTo *0.2]; 6expRangeTo = expRange (2) - expRange (1); 7 8% Inicializa ec o , y ellena la p ime a mues a con un alo den o 9% del ango deseado 10 u = ze os( ou Size ); 11 u(: ,1) = and( ou Size (1) ,1)* angeTo + ou Range (1); 12 13 % Ob ene el es o de mues as den o del ango expandido y sa u a las 14 % pa a que pe enezcan al ango deseado 15 o i=2: ou Size (2) 16 i and <= swi chP ob 17 al = and( ou Size (1) ,1)* expRangeTo + expRange (1); % Gene a 18 al = min(max( al , ou Range (1)) , ou Range (2)); % Sa u a 19 else 20 al = u(:,i -1); 21 end % i 22 u(:,i) = al ; 23 end % bucle o i 24 end % unc ion Código 5: En enamien o de edes NARX 1 unc ion a a gou = NARX_ ainNe ( ainInpu , ainTa ge , numNeu on ,... 2inDelay , gDelay ) 3 4%% Comp oba núme o de pa áme os de salida 5i (na gou < 1) || ( na gou > 2) 6e o (" Núme o in álido de salidas: debe se 1 o 2"); 7end 8 9%% C ea y con igu a ed NARX 10 % C ea la ed NARX 11 ne = na xne (inDelay , gDelay ,numNeu on ,'open ',' ainlm '); 12 13 % Con igu a a ios de en enamien o , alidación y es de la ed , y 14 % deshabili a la en ana de en enamien o 15 ne . di idePa am . ainRa io = 1; 16 ne . di idePa am . alRa io = 0; 17 ne . di idePa am . es Ra io = 0; 18 ne . ainPa am.showWindow = alse; 19 20 %% Fo ma ea los da os de en enamien o pa a pode se usados 21 % Pasa los da os al o ma o empleado pa a abaja con RNA 22 [inNe ,~] = onnda a ( ainInpu , ue , alse ); 23 [ gNe ,~] = onnda a ( ainTa ge , ue , alse ); 24 82 25 % Adecua los da os a los e a dos de la ed 26 [ inShi , iniInS a es , iniLayS a es , gShi ] = p epa e s ( ne , inNe ,{} ,... 27 gNe ); 28 29 %% En ena la ed 30 [ne , ainRec] = ain(ne ,inShi , gShi , iniInS a es ,iniLayS a es ,... 31 'usePa allel ','no ',' showResou ces ','no','useGPU ','no '); 32 33 %% Asigna salidas 34 a a gou {1} = ne ; 35 i na gou >= 2 36 a a gou {2} = ainRec ; 37 end 38 end % unc ion Código 6: Validación en lazo abie o 1 unc ion a a gou = NARX_ al_open (ne , alInpu , alTa ge ) 2 3%% Comp oba núme o de pa áme os de salida 4i (na gou < 1) || ( na gou > 3) 5e o (" Núme o in álido de salidas: debe se en e 1 y 3"); 6end 7 8%% Simpli ica ed 9% Si se in oduce una ed "no mal " se debe " educi ", ya que es el ipo 10 % que emplea la unción NARX_Paso 11 i isa(ne ," ne wo k ") 12 ne = load_NN_da a ( ne ); 13 end 14 15 %% Calcula salida median e ed neu onal 16 ou ValNN = ze os(size( alTa ge )); 17 o k=( ne . maxDelay +1): leng h ( alInpu ) 18 NNin = eshape ( alInpu (:,k-ne .inPa . delay ) ,[] ,1); 19 NN g = eshape ( alTa ge (:,k- ne . gPa . delay ) ,[] ,1); 20 ou ValNN (:,k) = NARX_Paso (ne ,NNin , NN g ); 21 end 22 ou ValNN = ou ValNN(:,ne .maxDelay+1:end); 23 24 %% Ob ene salidas 25 % Calcula el e o absolu o come ido po la ed 26 alTa ge = alTa ge (:, ne . maxDelay +1: end); 27 e_abs = abs( ou ValNN - alTa ge ); 28 29 % Asigna salidas 30 a a gou {1} = ou ValNN ; 31 i na gou >= 2 32 a a gou {2} = mean( e_abs .^2 ,2); 33 i na gou >= 3 34 a a gou {3} = max(e_abs ,[] ,2); 35 end 36 end 37 end % unc ion 83 Código 7: Validación en lazo ce ado 1 unc ion a a gou = NARX_ al_closed (ne , alInpu , alTa ge ) 2 3%% Comp oba núme o de pa áme os de salida 4i (na gou < 1) || ( na gou > 3) 5e o (" Núme o in álido de salidas: debe se en e 1 y 3"); 6end 7 8%% Simpli ica ed 9% Si se in oduce una ed "no mal " se debe " educi ", ya que es el ipo 10 % que emplea la unción NARX_Paso 11 i isa(ne ," ne wo k ") 12 ne = load_NN_da a ( ne ); 13 end 14 15 %% Calcula salida median e ed neu onal 16 ou ValNN = ze os(size( alTa ge )); 17 ou ValNN (: ,1: ne . maxDelay ) = alTa ge (: ,1: ne . maxDelay ); 18 o k=( ne . maxDelay +1): leng h ( alInpu ) 19 NNin = eshape ( alInpu (:,k-ne .inPa . delay ) ,[] ,1); 20 NN g = eshape ( ou ValNN (:,k-ne . gPa . delay ) ,[] ,1); 21 ou ValNN (:,k) = NARX_Paso (ne ,NNin , NN g ); 22 end 23 ou ValNN = ou ValNN(:,ne .maxDelay+1:end); 24 25 %% Ob ene salidas 26 % Calcula el e o absolu o come ido po la ed 27 alTa ge = alTa ge (:, ne . maxDelay +1: end); 28 e_abs = abs( ou ValNN - alTa ge ); 29 30 % Asigna salidas 31 a a gou {1} = ou ValNN ; 32 i na gou >= 2 33 a a gou {2} = mean( e_abs .^2 ,2); 34 i na gou >= 3 35 a a gou {3} = max(e_abs ,[] ,2); 36 end 37 end 38 end % unc ion 84 Código 8: Función de educción de ed: gene ación de ed educida 1 unc ion NN_ educ = load_NN_da a (in ) 2 3% Comp ueba si la en ada es un nomb e de a chi o o una ed neu onal 4i ischa (in ) || iss ing (in ) 5ne = impo da a ( in ); 6elsei isa(in ," ne wo k ") 7ne = in; 8else 9e o (" En ada in álida: debe se un nomb e de a chi o ..." + ... 10 "o una a iable de ipo 'ne wo k '"); 11 end 12 13 % Ex ae la mínima in o mación necesa ia en la salida : 14 % - Re a do máximo de la ed 15 % - Pa áme os de no malización de inpu 16 % - Re a dos de inpu 17 % - Núme o de inpu 18 % - Pa áme os de no malización de a ge 19 % - Re a dos de a ge 20 % - Núme o de a ge 21 % - Ma ices de pesos y bias de la capa ocul a 22 % - Ma ices de pesos y bias de la capa de salida 23 NN_ educ = s uc ('maxDelay ',ne .numInpu Delays ,... 24 'inPa ',s uc ('xmin ',ne .inpu s {1}. p ocessSe ings {1}. xmin ,... 25 'ymin ',ne .inpu s {1}. p ocessSe ings {1}. ymin ,... 26 'gain ',ne .inpu s {1}. p ocessSe ings {1}. gain ,... 27 'delay ',ne .inpu Weigh s {1 ,1}. delays ,... 28 'size ',ne .inpu s {1}. size) ,... 29 ' gPa ',s uc ('xmin ',ne .inpu s {2}. p ocessSe ings {1}. xmin ,... 30 'ymin ',ne .inpu s {2}. p ocessSe ings {1}. ymin ,... 31 'gain ',ne .inpu s {2}. p ocessSe ings {1}. gain ,... 32 'delay ',ne .inpu Weigh s {1 ,2}. delays ,... 33 'size ',ne .inpu s {2}. size) ,... 34 'hidLay ',s uc ('Wx',ne .IW {1 ,1} ,... 35 'Wy ',ne .IW {1 ,2} ,... 36 'b',ne .b{1}) ,... 37 'ou Lay ',s uc ('W',ne .LW {2 ,1} ,... 38 'b',ne .b{2})); 39 end % unc ion 85 Código 9: Función de cálculo ma icial de la salida de la ed 1 unc ion ou = NARX_Paso (ne , inpu , a ge ) 2 3% La unción usa la es uc u a de ed educida.Si se ha pasado la 4% ed como ed no mal , se pasa a es e o ma o . 5i isa(ne ," ne wo k ") 6ne = load_NN_da a ( ne ); 7end 8 9% Re isa que ambas en adas ienen el mismo núme o de mues as 10 % (columnas) 11 i size(inpu ,2) == size( a ge ,2) 12 nSamples = size(inpu ,2); 13 else 14 e o (" Inpu y a ge deben ene el mismo núme o de mues as "); 15 end 16 17 % No maliza en adas 18 xIn = no m_AA ( inpu ,ne .inPa .xmin ,ne . inPa .ymin ,ne .inPa .gain ); 19 yIn = no m_AA ( a ge , ne . gPa .xmin ,ne . gPa .ymin ,ne . gPa .gain ); 20 21 % Pasa en adas po capa ocul a y capa de salida 22 ou Hidden = ansig(ne . hidLay .Wx*xIn +ne .hidLay .Wy*yIn +... 23 epma (ne . hidLay.b ,[1 , nSamples ])); 24 ou No m = ne .ou Lay .W* ou Hidden + epma ( ne . ou Lay .b ,[1 , nSamples ]); 25 26 % Desno maliza la salida 27 ou = deno m_AA (ou No m ,ne . gPa .xmin ,ne . gPa .ymin ,ne . gPa .gain ); 28 end % unc ion 29 30 %% Sub unciones : no malización y desno malización 31 % No maliza en adas . Las p ime as líneas son pa a adap a las 32 % dis in as dimensiones de las ma ices pa a que sean cong uen es en e 33 % ellas ( necesa io cuando se emplea más de una mues a de inpu / a ge ) 34 unc ion inNo m = no m_AA (in ,xmin ,ymin , gain ) 35 nIn = size(in ,1)/ size(gain ,1); 36 xmin = epma (xmin ,[nIn ,1]); 37 gain = epma (gain ,[nIn ,1]); 38 inNo m = ymin +gain .*( in - xmin ); 39 end 40 41 unc ion ou = deno m_AA(ou No m ,xmin ,ymin ,gain) 42 ou = xmin +(ou No m -ymin )./ gain; 43 end 86 Código 10: Sis ema SNL5 1 unc ion y = SNL5_sys ( u_in ) 2 3% Pasa un ec o en e o de en adas po la unción 4u = ze os(1, leng h(u_in )+2); 5u(3: end) = u_in ; 6y = ze os(size(u)); 7 o k=2:( numel (y) -1) 8%y(k+1)= (1.5*y(k)*y(k -1))/(1+ y(k).^2+ y(k -1).^2)+ 9% 0.7* sin (0.5*( y(k )+ y(k -1)))* cos (0.5*( y(k )+ y(k -1)))+1.2* u(k); 10 y(k +1) = (1.5* y(k)* y(k -1))/(1+ y(k ).^2+ y(k -1).^2)+... 11 0.35*sin(y(k )+ y(k -1))+1.2* u(k); 12 end % bucle o k 13 y = y(3: end); 14 end % unc ion Código 11: Sis ema SNL1 1 unc ion y = SNL1_sys(u) 2 3% Pasa un ec o en e o de en adas po la unción 4y = ze os(size(u)); 5y(1) = 0; 6 o k=1:( numel (y) -1) 7y(k+1) = u(k).^3 + y(k )/(1+y(k ).^2); 8end % bucle o k 9end % unc ion Código 12: Ejemplo de sc ip que in eg a odas las unciones desa olladas 1%% In eg ación del desa ollo de modelos neu onales : ejemplo SISO 2clea a s;clc;close all;% Limpia espacio de abajo 3 4%% Inicialización de pa áme os de ba ido y da os de en enamien o 5% Pa áme os de ba ido 6numNeu = 2:6; % Núme o de neu onas a emplea en las edes 7inDel = {0 ,0:1}; % Re a dos de en adas a emplea 8 gDel = {1 ,1:2}; % Re a dos de a ge a emplea 9numRep = 4; % Núme o de edes calculadas pa a cada combinación 10 N = 300; % Núme o de mues as de en ada y alidación 11 12 % En adas y a ge s de en enamien o ( iguales pa a odas las edes ). Su 13 % o ma o debe se que cada imes ep se ep esen a en una columna ( po 14 % an o , cada inpu / a ge se ep esen a como una ila) 15 Da a . inpu = gen_sa RandWalk ([1,N] ,[ -2.5 , 2.5] ,0.2); 16 Da a . a ge = SNL5_sys ( Da a . inpu ); 17 18 % En adas y a ge s de alidación ( iguales pa a odas las edes , pe o 19 % dis in as a las de en enamien o ). Mismo o ma o que el an e io . 20 alDa a .inpu = gen_sa RandWalk ([1 ,N],[-2.5 , 2.5] ,0.2); 21 alDa a . a ge = SNL5_sys ( alDa a . inpu ); 22 23 %% Realiza desa ollo de modelos neu onales 24 ne Da a = NARX_pa amSweep (numNeu ,inDel , gDel , numRep , Da a , alDa a ); 25 ne Da a_p oc = NARX_p ocess_ne Da a ( ne Da a ); 26 NARX_plo _ne Da a ( ne Da a_p oc , alDa a ," TFM_ igu es SISO "); 87 XVII Simposio CEA de Con ol In eligen e 27-29 de junio de 2022, Le´ on Es udio de es uc u as neu onales NARX pa a ep oduci el compo amien o de sis emas con din´ amicas complejas Aima Alonso, Asie Zabaljau egi, Eloy I igoyen, Mikel La ea Uni e sidad de Pa´ıs Vasco /Euskal He iko Unibe si a ea (UPV/EHU) To ci e his a icle: Alonso, A., Zabaljau egi, A, I igoyen, E., La ea, M., 2022. iMO-NMPC s a egy de elopmen : Fi s s eps o implemen a ion on indus ial ha dwa e. XVII Simposio CEA de Con ol In eligen e, 1-5. Resumen Es e abajo p esen a un es udio p elimina donde se alo a ´ a la e iciencia de las edes neu onales a i iciales de opolog´ ıa NARX (Nonlinea Au o eg essi e eXogenous) en la ep oducci´ on del compo amien o de sis emas con din´ amicas complejas. Es- as es uc u as neu onales se dise˜ na ´ an pa a ep oduci an o sis emas mono a iables, como mul i a iables, siguiendo un mismo plan eamien o me odol´ ogico. Los mencionados es udios es ´ an di igidos a p opo ciona dichos modelos neu onales a u u as es a- egias de con ol dependien es de modelos din´ amicos, como es el caso del con ol p edic i o no lineal basado en modelos, el cual cons i uye una l´ ınea de abajo den o del g upo de in es igaci´ on de con ol in elgen e (GICI) de la UPV/EHU. Palab as cla e: Red Neu onal, Sis emas no lineales, Iden i icaci´ on S udy o NARX neu al s uc u es o ep oduce he beha iou o sys ems wi h complex dynamics. Abs ac This wo k p esen s he me hodology used by he In elligen Con ol Resea ch G oup (GICI) a UPV/EHU, o he de elopmen o in elligen con ol s a egies and hei u he implemen a ion in eal ime pla o ms. In his way, i is in ended o p o ide alida- ion o such s a egies no only in simula ion le el bu in al e na i e indus ial ha dwa e. The p esen ed case ha is cu en ly being de eloped is he iMO-NMPC s a egy which in eg a es p edic i e con ol s a egies, e olu iona y algo i hms o op imiza ion and neu al ne wo ks o sys em modelling. The employed me hodology in ol es he simula ion pla o m MATLAB/Simulink ®. Keywo ds: Neu al Ne wo ks, Nonlinea sys ems, S-Func ion, Iden i ica ion 1. In oducci´ on En el mundo eal, los sis emas a con ola son complejos, ya que incluyen no linealidades e in e acci´ on en e las di e en es en adas y salidas de es e. Es o causa que la iden i icaci´ on de las ca ac e ´ ıs icas del sis ema pa a desa olla un modelo sea un p oceso complicado, especialmen e si el modelo se ´ a usado en m´ e odos como Model P edic i e Con ol (MPC), que equie en de una buena ap oximaci´ on de los pa ´ ame os del p oceso. En es e ´ ambi o, se ha ex endido el uso de Redes Neu ona- les A i iciales (RNA) pa a la modelizaci´ on de es os sis emas, ya que se ha comp obado que son ap oximado es uni e sales (Ho nik e al., 1990), (Jaganna han y Lewis, 1996), (Pe usqu´ ıa y Yu, 2021). Es os modelos neu onales son as´ ı implemen ables Co eos elec ´onicos: [email protected] (Aima Alonso), azabaljau eg[email p o ec ed] (Asie Zabaljau egi), eloy.i igoye[email p o ec ed] (Eloy I igoyen), m.la [email protected] (Mikel La ea) en las es a egias de con ol mencionadas, como MPC o su e - si´ on no lineal (NMPC) (Camacho y Bo dons, 2007), ob eniendo buenos esul ados (Bamimo e e al., 2021). En es e abajo, se busca modeliza sis emas no lineales me- dian e RNA, an o con una ´ unica salida y en ada (Single Inpu Single Ou pu , SISO), como con m´ ul iples (Mul iple Inpu Mul- iple Ou pu , MIMO), compa ando la espues a ob enida es- pec o al modelo eal. 2. P esen aci´ on del p oblema Los sis emas empleados en es e abajo son sin ´ e icos, que buscan alo a el endimien o de es e m´ e odo de iden i icaci´ on, debido a que p esen an egiones con g andes no linealidades. Es os sis emas han sido empleados an e io men e en o os a- bajos elacionados con la iden i icaci´ on de modelos no lineales (La ea e al., 2015). Pa a o ece una ep esen aci´ on de las no linealidades de ambos sis emas, se p esen a en la Figu a 1 un