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