You are on page 1of 67

Universidad de Pamplona

Pamplona - Norte de Santander - Colombia


Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Aprendizaje de RNA, Control Neuronal y Sistemas ANFIS

Asignacin especial: Caso 4

ASIGNACION: CONTROL INTELIGENTE

INTEGRANTES:

JEISSON HARVEY MARTINEZ FLOREZ

cd.: 1093277423

MICHAEL STEVEN MOLINA DAZA

cd.: 1093.792.338

ISAAC NAHANIEL SILVA URBINA

cd.: 1140417450

MARIO ANDRES RODRIGUEZ PINEDA

cd.: 1090.504.412

UNIVERSIDAD DE PAMPLONA

FACULTAD DE INGENIERIAS Y ARQUITECTURA

INGENIERIA MECATRONICA

CAMPUS VILLA DEL ROSARIO

2017

Formando lderes para la construccin de un 1


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Aprendizaje de RNA, Control Neuronal y Sistemas ANFIS

Asignacin especial: Caso 4

INTEGRANTES:

Jeisson Harvey Martnez Flrez

Cd.: 1093277423

Michael Steven Molina Daza

Cd.: 1093.792.338

Isaac Nahaniel Silva Urbina

Cd.: 1140417450

Mario Andrs Rodriguez Pineda

Cd.: 1090.504.412

PRESENTADO AL DOCENTE:

MsC. OSCAR DUQUE

UNIVERSIDAD DE PAMPLONA

INGENIERIA MECATRONICA

CAMPUS VILLA DEL ROSARIO

2017

Formando lderes para la construccin de un 2


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Tabla de contenido
INTRODUCCIN ....................................................................................................................... 7
OBJETIVOS ............................................................................................................................... 8
CAPITULO 1 ............................................................................................................................. 9
CAPITULO 2 ........................................................................................................................... 14
CAPITULO 3 ........................................................................................................................... 36
3.3.2 Nmero de pocas ........................................................................................... 46
3.3.3 Nmero de error permitido .............................................................................. 47
CAPITULO 4 ........................................................................................................................... 49
CAPITULO 5 ........................................................................................................................... 63
CONCLUSIONES ..................................................................................................................... 65
BIBLIOGRAFIA ................................................................................................................... 67

Formando lderes para la construccin de un 3


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

LISTA DE FIGURAS

Figura 1. Interfaz de la toolbox nntool .................................................................................. 10


Figura 2. Ingreso de la data de Entrada - nntool toolbox ...................................................... 11
Figura 3. Ingreso de la data de Salida - nntool toolbox ......................................................... 11
Figura 4. Configuracin de la RNA ......................................................................................... 12
Figura 5. Esquema arquitectura RNA - con nntool ................................................................ 12
Figura 6. Desempeo del aprendizaje de la RNA................................................................... 13
Figura 7. Entrenamiento de la RNA creada ........................................................................... 13
Figura 8. Datos de entrada y salida ingresados ..................................................................... 14
Figura 9. RNA obtenida del cdigo de entrenamiento 1 ....................................................... 16
Figura 10. Simulacin de la RNA entrenada .......................................................................... 16
Figura 11. Salida de la RNA .................................................................................................... 17
Figura 12. Comparacin de la salida RNA con la salida real .................................................. 17
Figura 13. RNA obtenida del cdigo de entrenamiento 1 ..................................................... 19
Figura 14. Simulacin de la RNA entrenada con cdigo 1 vs con cdigo 2 ............................ 19
Figura 15. Salida de la RNA con cdigo matlab 2................................................................... 20
Figura 16. Comparacin: Salida RNA entrenada por cdigo 2 (azul) vs salida data real
(violeta) ................................................................................................................................. 20
Figura 17. Comparacin: RNA con cdigo 1 (azul) vs RNA con cdigo 2 (roja) ...................... 21
Figura 18. Datos de entrada y salida ingresados de la data 2 ................................................ 21
Figura 19. RNA obtenida del cdigo de entrenamiento 1 de la data 2 .................................. 23
Figura 20. Simulacin de la RNA entrenada .......................................................................... 23
Figura 21. Salida de la RNA de la data 2 ................................................................................ 24
Figura 22. Comparacin de la salida RNA con la salida real de la data 2 ............................... 24
Figura 23. RNA obtenida del cdigo de entrenamiento 2 de la data 2 .................................. 26
Figura 24. Simulacin de la RNA entrenada con cdigo 1 vs con cdigo 2 de la data 2 ........ 26
Figura 25. Salida de la RNA con cdigo matlab 2 de la data 2 ............................................... 27
Figura 26. Comparacin: Salida RNA entrenada por cdigo 2(azul) vs salida data real (violeta)
de la data 2............................................................................................................................ 27
Figura 27. Comparacin: RNA con cdigo 1 (azul) vs RNA con cdigo 2 (roja) ...................... 28

Formando lderes para la construccin de un 4


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 28. Diagrama de Bloques SUNDARESON .................................................................... 29


Figura 29. Salida de la Simulacin con menos datos para entrenar la RNA. .......................... 29
Figura 30.Datas de entrada y salida para la RNA. .................................................................. 30
Figura 31.RNA arrojada por el cdigo 1................................................................................. 30
Figura 32. Diagrama de bloques para ver la RNA .................................................................. 31
Figura 33. Salida de la RNA enseada con respecto a nuestro sistema de nivel ................... 31
Figura 34. Comparando la salida de la RNA enseada vs la data real ................................... 32
Figura 35. RNA enseada por medio del cdigo 2. ................................................................ 33
Figura 36. Salida de la RNA enseada con respecto a nuestro sistema de nivel con el
codigo2.................................................................................................................................. 33
Figura 37.Comparando la salida de la RNA enseada vs la data del proceso con el cdigo 2 34
Figura 38. Comparando la salida cdigo 1 (azul) vs la salida cdigo 2 (rojo) ......................... 34
Figura 39. Forma correcta de ingresar datos a la RNA .......................................................... 35
Figura 40.Forma INCORRECTA de ingresar datos a una RNA ................................................. 35
Figura 41. Lazo de control para obtener las variables de entrada y salida. ........................... 36
Figura 42.Valores del mejor controlador PID calculado para la planta.................................. 36
Figura 43. Salida del controlador clsico a 5 cm. ................................................................... 37
Figura 44. Cdigo RNA_MEI .................................................................................................. 37
Figura 45. RNA creada con 2000 epocas ............................................................................... 38
Figura 46. Simulamos la RNA por medio de diagrama de bloques ........................................ 38
Figura 47.Salida de la RNA a un Set-point de 5 cm. ............................................................... 39
Figura 48. Salida controlador Clsico Vs Salida RNA.............................................................. 39
Figura 49. Error de clonacin de la RNA ................................................................................ 40
Figura 50. Respuestas del clsico y la RNA a un Set-point de 7 cm. ...................................... 40
Figura 51.Respuestas del clsico y la RNA a un Set-point de 3 cm. ....................................... 41
Figura 52. Cadena de Set-Points para tomar data con controlador FUZZY............................ 42
Figura 53. Forma en que se guardan las variables de entrada de la RNA. ............................. 43
Figura 54.Tratamiento de Data Entradas RNA .................................................................... 44
Figura 55.Datos de ERROR ingresados a la RNA .................................................................... 44
Figura 56. Datos del DELTA DE ERROR ingresados a la RNA .................................................. 45
Figura 57. Datos de la SUMATORIA DEL ERROR ingresados a la RNA .................................... 45
Figura 58. Rangos del controlador RNA ................................................................................. 46
Figura 59. Etapa de enseanza de la RNA ............................................................................. 47
Figura 60. Simulacin de la RNA ............................................................................................ 47

Formando lderes para la construccin de un 5


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 61. Lazo de control en SIMULINK ............................................................................... 48


Figura 62. Respuesta de la RNA a dos set-points diferentes. ................................................ 48
Figura 63. Carga de data y validacin .................................................................................... 51
Figura 64. Estructura ............................................................................................................. 51
Figura 65. Guardando e importando controlador ................................................................. 52
Figura 66. Comprobando su aprendizaje a travs de otra data ............................................. 52
Figura 67. Resultados de la prctica del sistema ANFIS ......................................................... 53
Figura 68. Procesamiento y separacin de datos .................................................................. 54
Figura 69. Carga y evaluacin de la data real con la aprendida por el sistema ANFIS ........... 55
Figura 70. Montaje para la simulacin .................................................................................. 56
Figura 71. Grfica comparativa del ANFIS con la respuesta del sistema ............................... 57
Figura 72. Controlador ANFIS ................................................................................................ 57
Figura 73. Data de la planta procesada por ANFIS ................................................................ 58
Figura 74. Diagrama en bloque PID Vs ANFIS ........................................................................ 59
Figura 75. Diagrama en bloque del sistema de deteccin de fallas ....................................... 60
Figura 76. Deteccin 0 Sin fallas en el sistema ...................................................................... 61
Figura 77. Deteccin de falla 2 .............................................................................................. 61
Figura 78. Deteccin de falla 1 .............................................................................................. 62
Figura 79. Creando funcin Fitness ....................................................................................... 63
Figura 80. Tolboox OPTIMTOOL ............................................................................................ 63

Formando lderes para la construccin de un 6


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

INTRODUCCIN

La identificacin y control de un sistema son herramientas vitales para las industrias en


especial las automatizadas, al tratarse de un conjunto de reglas o procesos a seguir que tienen
como finalidad comprender el fenmeno del proceso y optimizar su rendimiento. Para
garantizar el control de distintos procesos para aquellos que requieran gran margen de
precisin se ha llevado a la investigacin y evolucin de estos controladores, llegando a aplicar
tcnicas de inteligencia artificial como Fuzzy y Redes Neuronales.

En base a las identificaciones y controladores realizados con anterioridad en esta ocasin


repasaremos los controladores realizados, y vamos a seleccionar el mejor entre el controlador
clsico seleccionado y el controlador fuzzy para realizar el controlador RNA y cual arquitectura
implementar. Se explicar detalladamente los requerimientos de diseos, mrgenes de
respuesta y mtodos para la realizacin de este tipo de controladores, donde a su vez se
implementar y se escoger el mejor en base a comparaciones en las simulaciones, criterios
cuantitativos y cualitativos.

Un controlador neuronal realiza una forma de control adaptativo en la cual el controlador es


una red no lineal de neuronas dispuestas en varias capas, y los parmetros adaptables son los
pesos de las interconexiones entre las neuronas. Estos tipos de controladores posee
caractersticas fundamentales como la capacidad de procesamiento colectivo, adaptacin e
inmunidad al ruido y da lugar a un control ms eficiente cuando se presentan incertezas,
complejidad y no lineales.

El controlador RNA no necesita conocer de manera directa el comportamiento de cada uno


de los componentes del sistema para emularlo. Lo nico que necesita son datos para
aprender el comportamiento que se le desea ensear.

Formando lderes para la construccin de un 7


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

OBJETIVOS

Familiarizarse con la toolbox de matlab para redes neuronales llamada nntool en


cuanto al ingreso de la data, configuracin de la red neuronal, aprendizaje y
validacin de la misma.

Aprender a clonar el comportamiento dinmico de la planta o proceso industrial, a


travs del entrenamiento de la RNA con patrones de entrada lo suficientemente ricos
y diferenciables.

Comprender el procedimiento para disear un controlador neuronal a travs de


retrasos o con mltiples y diferentes entradas para lograr un rango amplio de
respuesta.

Analizar el significado de un sistema ANFIS y su utilidad para sistemas clasificadores


y representaciones o clonaciones de la planta o proceso industrial, diferencindolos
de las redes neuronales puras.

Formando lderes para la construccin de un 8


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

CAPITULO 1
Aprendizaje de NNTOOL

Actividad a realizar: Crear y validar una RNA que emule sus plantas realizadas. Para ello, es
necesario ingresar la data de entrada y de salida de la planta mediante array. Comparar la
respuesta de la RNA con la respuesta real y con la funcin transferencia identificada por
ustedes.

Una vez observados los videos tutoriales asignados para este punto, se procedi a crear y
validar una RNA que emule la planta realizada, para lo cual se recurre la data promedio, donde
exportamos los datos de la entrada (pwm-MANDO) y la salida (cm-nivel).

Tabla 1. Data de Entrada Salida de Planta Real

Formando lderes para la construccin de un 9


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

En matlab: Primero creamos los vectores vacos llamados entrada y salida y se le asigna la
data anteriormente mostrada:

Ya teniendo los vectores llenos de la entrada y la salida del sistema, se procede a iniciar la
toolbox en Matlab llamada NNTOOL:

Figura 1. Interfaz de la toolbox nntool

En la esquina superior izquierda aparece un cuadro llamado INPUT DATA; es en ese cuadro
donde vamos a importar del workspace de Matlab el vector llamado ENTRADA.

Formando lderes para la construccin de un 10


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 2. Ingreso de la data de Entrada - nntool toolbox

Lo mismo pasa en la esquina superior derecha donde aparece un cuadro llamado OUTPUT
DATA y es en ese cuadro es donde vamos a importar del workspace de Matlab el vector
llamado SALIDA.

Figura 3. Ingreso de la data de Salida - nntool toolbox

Al darle importar, queda agregada las datas correspondientes. Ahora para configurar el tipo
de red neuronal que se quiere disear, se ingresa a la pestaa New donde se configura el

Formando lderes para la construccin de un 11


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

nombre, tipo de red= Perceptrn, entrada, salida, funcin de transferencia y funcin de


aprendizaje.

Figura 4. Configuracin de la RNA

Se puede visualizar la arquitectura de la red configurada, en la pestaa View de la ventana de


configuracin:

Figura 5. Esquema arquitectura RNA - con nntool

Formando lderes para la construccin de un 12


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Una vez creada la RNA se procede a realizar su entrenamiento, dando doble click en el nombre
que se encuentra en la parte media de la ventana de la toolbox. Nos abrir la siguiente
ventana. En donde seleccionamos la pestaa Train, seleccionamos la variable de entrada y
salida y le damos en Train Network.

Figura 7. Entrenamiento de la RNA creada

Figura 6. Desempeo del aprendizaje de la RNA

Formando lderes para la construccin de un 13


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

CAPITULO 2

Actividad a realizar: realizar la identificacin de procesos y funciones usando una RNA.


Analice y ejecute el cdigo llamado codigo_entrenamiento_red.m. Dicho cdigo entrenara
la RNA con los datos cargados en data como entrada y de normal como salida. Analice los
parmetros de configuracin de la RNA en dicho cdigo.

>> Data=[];
>> Normal=[];
DATA 1 HOJA 1 DEL EXCEL

Figura 8. Datos de entrada y salida ingresados

Cdigo 1: El cdigo en matlab codigo_entrenamiento_red.m es el siguiente:

%%% entrenamiento para reconocer estados de operacin normal %%%


%data=[];
%normal0=[];
vector0=data;
vector0=data';
entradas=[vector0];
salidas=[normal'];
net=newff(minmax(entradas),[35 1],{'tansig' 'purelin'},'trainlm');
%crea la red neuronal MLP
net.trainParam.epochs = 100;
%100 pocas de entrenamiento

Formando lderes para la construccin de un 14


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

net.trainparam.goal=0.1e-4;
%meta de error de 1 x 10 e -4
net = train(net,entradas,salidas);
net=net';
gensim(net)
entradas=0;
salidas=0;

Despus de realizar el anlisis a este cdigo se puede decir que se identific:

35 capas de neuronas que conforman la red neuronal.


net=newff(minmax(entradas),[35 1],{'tansig' 'purelin'},'trainlm');

Se est realizando 100 pocas de entrenamiento o iteraciones ya que ste cdigo es


recursivo, y entre ms pocas ms exactitud en la clonacin tendr la RNA.
net.trainParam.epochs = 100;

Se pre-dispone un error mnimo al cual debe llegar el aprendizaje de la RNA.


net.trainparam.goal=0.1e-4;

Al correr dicho cdigo se obtiene la RNA ya entrenada y lista para ser simulada y confrontada.

Formando lderes para la construccin de un 15


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 9. RNA obtenida del cdigo de entrenamiento 1

Se extrae el bloque de la RNA entrenada, y se hace la simulacin para la validacin en


simulink:

Figura 10. Simulacin de la RNA entrenada

Formando lderes para la construccin de un 16


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 11. Salida de la RNA

Figura 12. Comparacin de la salida RNA con la salida real

Cdigo 2: El cdigo en matlab codigo_entrenamiento_red2.m es el siguiente:

%%% entrenamiento para reconocer estados de operacin normal %%%%


%data=[];

Formando lderes para la construccin de un 17


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

%normal0=[];
vector0=data;
vector0=data';
entradas=[vector0];
salidas=[normal'];
net=newff(minmax(entradas),[25 1],{'tansig' 'purelin'},'trainlm');
%crea la red neuronal MLP
net.trainParam.epochs = 5000;
%100 epocas de entrenamiento
net.trainparam.goal=0.000001e-4;
%meta de error de 1 x 10 e -4
net = train(net,entradas,salidas);
net=net';
%gensim(net)
entradas=0;
salidas=0;

Despus de realizar el anlisis a este cdigo se puede decir que se identific:


25 capas de neuronas que conforman la red neuronal.
net=newff(minmax(entradas),[25 1],{'tansig' 'purelin'},'trainlm');

Se est realizando 5000 pocas de entrenamiento o iteraciones ya que este cdigo es


recursivo, este aumento en las pocas hace que el entrenamiento y posterior clonacin
del proceso sea mucho ms preciso y se asemeje mucho ms a la data real.
net.trainParam.epochs = 5000

Se pre-dispone un error mnimo al cual debe llegar el aprendizaje de la RNA. En este caso
se programa la RNA para que tenga un error mucho ms pequeo, que genera una
respuesta mucho ms exacta y parecida a la data real.
net.trainparam.goal=0.000001e-4;

Al correr dicho cdigo se obtiene la RNA ya entrenada y lista para ser simulada y confrontada.

Formando lderes para la construccin de un 18


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 13. RNA obtenida del cdigo de entrenamiento 1

Se extrae el bloque de la RNA entrenada, y se hace la simulacin

Figura 14. Simulacin de la RNA entrenada con cdigo 1 vs con cdigo 2

Formando lderes para la construccin de un 19


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 15. Salida de la RNA con cdigo matlab 2

Figura 16. Comparacin: Salida RNA entrenada por cdigo 2 (azul) vs salida data real (violeta)

Formando lderes para la construccin de un 20


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 17. Comparacin: RNA con cdigo 1 (azul) vs RNA con cdigo 2 (roja)

DATA 2 HOJA 2 DEL EXCEL

Figura 18. Datos de entrada y salida ingresados de la data 2

Formando lderes para la construccin de un 21


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Cdigo 1: El cdigo en matlab codigo_entrenamiento_red.m es el siguiente:

%%% entrenamiento para reconocer estados de operacin normal %%%


%data=[];
%normal0=[];
vector0=data;
vector0=data';
entradas=[vector0];
salidas=[normal'];
net=newff(minmax(entradas),[35 1],{'tansig' 'purelin'},'trainlm');
%crea la red neuronal MLP
net.trainParam.epochs = 100;
%100 pocas de entrenamiento
net.trainparam.goal=0.1e-4;
%meta de error de 1 x 10 e -4
net = train(net,entradas,salidas);
net=net';
gensim(net)
entradas=0;
salidas=0;

Despus de realizar el anlisis a este cdigo se puede decir que se identific:

35 capas de neuronas que conforman la red neuronal.


net=newff(minmax(entradas),[35 1],{'tansig' 'purelin'},'trainlm');

Se est realizando 100 pocas de entrenamiento o iteraciones ya que ste cdigo es


recursivo, y entre ms pocas ms exactitud en la clonacin tendr la RNA.
net.trainParam.epochs = 100;

Se pre-dispone un error mnimo al cual debe llegar el aprendizaje de la RNA.


net.trainparam.goal=0.1e-4;

Al correr dicho cdigo se obtiene la RNA ya entrenada y lista para ser simulada y confrontada.

Formando lderes para la construccin de un 22


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 19. RNA obtenida del cdigo de entrenamiento 1 de la data 2

Se extrae el bloque de la RNA entrenada, y se hace la simulacin para la validacin en


simulink:

Figura 20. Simulacin de la RNA entrenada

Formando lderes para la construccin de un 23


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 21. Salida de la RNA de la data 2

Figura 22. Comparacin de la salida RNA con la salida real de la data 2

Formando lderes para la construccin de un 24


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Cdigo 2: El cdigo en matlab codigo_entrenamiento_red2.m es el siguiente:

%%% entrenamiento para reconocer estados de operacin normal %%%%


%data=[];
%normal0=[];
vector0=data;
vector0=data';
entradas=[vector0];
salidas=[normal'];
net=newff(minmax(entradas),[25 1],{'tansig' 'purelin'},'trainlm');
%crea la red neuronal MLP
net.trainParam.epochs = 17600;
%100 epocas de entrenamiento
net.trainparam.goal=0.000001e-4;
%meta de error de 1 x 10 e -4
net = train(net,entradas,salidas);
net=net';
%gensim(net)
entradas=0;
salidas=0;

Despus de realizar el anlisis a este cdigo se puede decir que se identific:


25 capas de neuronas que conforman la red neuronal.
net=newff(minmax(entradas),[25 1],{'tansig' 'purelin'},'trainlm');

Se est realizando 176000 pocas de entrenamiento o iteraciones ya que este cdigo es


recursivo, este aumento en las pocas hace que el entrenamiento y posterior clonacin
del proceso sea mucho ms preciso y se asemeje mucho ms a la data real.
net.trainParam.epochs = 176000

Se pre-dispone un error mnimo al cual debe llegar el aprendizaje de la RNA. En este caso
se programa la RNA para que tenga un error mucho ms pequeo, que genera una
respuesta mucho ms exacta y parecida a la data real.
net.trainparam.goal=0.000001e-4;

Al correr dicho cdigo se obtiene la RNA ya entrenada y lista para ser simulada y confrontada.

Formando lderes para la construccin de un 25


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 23. RNA obtenida del cdigo de entrenamiento 2 de la data 2

Se extrae el bloque de la RNA entrenada, y se hace la simulacin

Figura 24. Simulacin de la RNA entrenada con cdigo 1 vs con cdigo 2 de la data 2

Formando lderes para la construccin de un 26


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 25. Salida de la RNA con cdigo matlab 2 de la data 2

Figura 26. Comparacin: Salida RNA entrenada por cdigo 2(azul) vs salida data real (violeta) de la data 2

Formando lderes para la construccin de un 27


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 27. Comparacin: RNA con cdigo 1 (azul) vs RNA con cdigo 2 (roja)

A la hora de comparar los dos cdigos se llega a la conclusin que el segundo cdigo es ms
preciso y clono mucho mejor el proceso debido a que en el cdigo se esper ms tiempo por
lo tanto se le dejo al algoritmo hacer ms iteraciones para que aprenda ms y se fue ms
riguroso con el error permitido de la neurona, hasta que l tenga un error casi perfecto o casi
que nulo el no detenga el entrenamiento y por esas razones es que el cdigo dos arrojo una
clonacin ms precisa.

DATA 3: DATA PROMEDIO SIMULADA DE LA PLANTA

Codigo1:

Teniendo en cuenta que la data promedio real de nuestra planta contiene muchos datos y a
la de querer entrenar la rna el computador no es capaz de hacerlo, por lo tanto, vamos a
tomar una data promedio, pero de la simulacin donde vamos a reducir el numero de datos
obtenidos en dicha simulacin. Cabe recordar que para la identificacin de nuestra planta el
mejor mtodo dado fue el mtodo de identificacin SUNDARESON.

Ahora se procede a simular la ecuacin que el mtodo nos arrojo con un escaln de entrada
de 130 y se espera a que estabilice y as tomar esa data y poder entrenar nuestra RNA.

Formando lderes para la construccin de un 28


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 28. Diagrama de Bloques SUNDARESON

Figura 29. Salida de la Simulacin con menos datos para entrenar la RNA.

La data obtenida en el workspace se pasa a Excel para poder trabajarla mejor:

Formando lderes para la construccin de un 29


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Ingresamos las dos columnas de datos en Matlab; donde el vector data contiene las entradas
hasta el numero 4001 y el vector normal contiene la salida que nos arrojo el sistema, osea el
nivel.

Figura 30.Datas de entrada y salida para la RNA.

Colocamos a correr el cdigo cdigo_entrenamiento_red el cual contiene 35 capas de


neuronas que conforman la red y se realiza en 100 pocas de entrenamiento o iteraciones. Y
nos arroja la siguiente RNA:

Figura 31.RNA arrojada por el cdigo 1.

Formando lderes para la construccin de un 30


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 32. Diagrama de bloques para ver la RNA

Figura 33. Salida de la RNA enseada con respecto a nuestro sistema de nivel

Formando lderes para la construccin de un 31


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 34. Comparando la salida de la RNA enseada vs la data real

Donde en la figura 34 se puede observar que dicha red neuronal queda bien enseada, pero
le hacen falta iteraciones o pocas, ya que solamente con 100 pocas no se alcanza a apreciar
toda la data del proceso de nivel real. Por lo tanto, se concluye que la red funciona de manera
correcta, pero le hacen falta iteraciones para poder apreciar mejor la data real del proceso de
nivel.

Cdigo 2:

Con los mismos datos que se usaron para entrenar la RNA con el cdigo
cdigo_entrenamiento_red se entrena la segunda RNA con el segundo cdigo llamado:
cdigo_entrenamiento_red2. Dicho codigo contiene 25 capas de neuronas que conforman la
red y se realiza en 4000 pocas de entrenamiento o iteraciones. Y nos arroja la siguiente salida
de la RNA:

Formando lderes para la construccin de un 32


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 35. RNA enseada por medio del cdigo 2.

Figura 36. Salida de la RNA enseada con respecto a nuestro sistema de nivel con el codigo2.

Formando lderes para la construccin de un 33


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 37.Comparando la salida de la RNA enseada vs la data del proceso con el cdigo 2

Figura 38. Comparando la salida cdigo 1 (azul) vs la salida cdigo 2 (rojo)

En la figura 28 se ve notablemente que la RNA con 100 iteraciones (cdigo 1) era muy poco
para que aprendiera toda la data que se le ingreso debido, a que despus de las 100
iteraciones queda en un valor fijo; al contrario del cdigo 2 que tenia 4000 iteraciones donde

Formando lderes para la construccin de un 34


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

claramente se puede observar que si tiene las suficientes capas y si aprende toda la data que
se le ingreso. Esto pasa debido a la cantidad de datos que se le ingresaron y por lo tanto se
necesitaban como mnimo la misma cantidad de iteraciones para la RNA para que aprendiera
todo lo ingresado.

PORQUE NO USAMOS LOS DATOS DE ENTRADA DE SU PLANTA COMO ENTRADA


DE LA RNA?

La red neuronal es un algoritmo recursivo, por lo tanto, ella lo que hace es evaluar las entradas
versus las salidas y bsicamente interpolar los pesos de las capas que se le asignan y generar
dichas salidas. Por lo tanto, lo que en verdad significa un escaln es simplemente un nico
cambio sostenido y la red neuronal tiene una evolucin dinmica hasta llegar a converger y
ella solamente va a graficar el ultimo valor o mejor dicho ella lo que va a recrear es un escaln
igual al que se le ingreso. Lo que pasa es que una RNA lo que aprende son patrones VARIABLES
y por lo tanto a la entrada no se le puede ingresar el valor de escaln, se ingresan son
muestras, donde cada muestra tiene el valor de nivel que va marcando el sensor.

1 0.7956

2 0.9556
Figura 39. Forma correcta de ingresar datos a la RNA

130 0.7956

130 0.9556

Figura 40.Forma INCORRECTA de ingresar datos a una RNA

Una red neuronal funciona cuando sus patrones son diferenciales.

Formando lderes para la construccin de un 35


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

CAPITULO 3

Actividad a realizar:
En la carpeta llamada control neuronal encontrara un modelo de simulink llamado
RNA_PROCESO y un cdigo de entrenamiento llamado RNA_MEI. En RNA_PROCESO
encontrara un ejemplo de un proceso en el cual se ha realizado la clonacin del controlador
y se compara con el resultado de una RNA entrenada previamente usando el cdigo
RNA_MEI.
Analizar el cdigo de entrenamiento, y usando las simulaciones del mejor controlador clsico
desarrollados para sus plantas de caso de estudio y aplicando 4 retrasos cree la data de
entrada y salida para entrenar una RNA para clonarlo. Modifique los datos de configuracin
del Cdigo para lograr mejores clonaciones.

Figura 41. Lazo de control para obtener las variables de entrada y salida.

En la figura 41 se muestra el lazo de control con la funcin de transferencia que nos arroj el
mtodo de sundareson, siendo esta la mas similar a la curva del proceso real. Adems, se
observa el bloque PID el cual tiene los valores del controlador que nos arroj Z&N 1er mtodo.

Figura 42.Valores del mejor controlador PID calculado para la planta.

Formando lderes para la construccin de un 36


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Despus de haber simulado el lazo de control de nuestra planta a un set-point de 5 cm y que


las variables de entrada y salida estn guardadas en el workspace, se procede a correr el
programa RNA_MEI:

Figura 43. Salida del controlador clsico a 5 cm.

Figura 44. Cdigo RNA_MEI

Donde se le dejan 2000 iteraciones o pocas a la RNA para un mejor aprendizaje.

Formando lderes para la construccin de un 37


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 45. RNA creada con 2000 epocas

Figura 46. Simulamos la RNA por medio de diagrama de bloques

Formando lderes para la construccin de un 38


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Ya teniendo la RNA en simulink procedemos a comprobar de que funcione, y que estabilice


en un set-point de 5 cm que fue para la cual la RNA fue diseada:

Figura 47.Salida de la RNA a un Set-point de 5 cm.

Figura 48. Salida controlador Clsico Vs Salida RNA

Formando lderes para la construccin de un 39


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 49. Error de clonacin de la RNA

En la figura 49 se puede observar que el error de clonacin de la RNA es muy bajo queriendo
decir que la red quedo bien enseada y que la similitud con la seal original del controlador
clsico es muy alta.

Realice un anlisis modificando el set point en diferentes valores y establezca si la RNA sigue
controlando y argumente los resultados.

Figura 50. Respuestas del clsico y la RNA a un Set-point de 7 cm.

Formando lderes para la construccin de un 40


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 51.Respuestas del clsico y la RNA a un Set-point de 3 cm.

Modificando los valores del Set-point en diferentes valores se llega a la conclusin que la RNA
no funciona debido a que la red fue entrenada para un solo set-point por lo cual tuvo el
aprendizaje para un solo tipo de comportamiento. Ya que una RNA aprende lo que se le
ensea y a ella se le enseo por medio de unos datos de entrada y salida, que fueron tomados
de un determinado set-point, por este motivo es que la RNA no funciona para distintos set-
points que no sea el set-point en el que la red fue diseada.

Como hara para hacer que la RNA controle no en un punto sino en rango amplio.
Argumente su respuesta.

Para que la RNA controle en un amplio rango de Set-point lo que se hara es hacer una escalera
de set-points en serie donde cada uno entra en un determinado tiempo, pero siempre
teniendo en cuenta que se debe esperar el tiempo necesario para que el proceso converja en
el Set-Point deseado. De esta manera ya se estara enseando a la RNA que debe converger
en distintos valores de Set-points dados. Esto garantiza que para cualquier valor de Set-point
enseado, la RNA ser capaz de generar una salida acorde y que garantice el correcto
funcionamiento del controlador.

Formando lderes para la construccin de un 41


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

CONTROL NEURONAL DE RANGO AMPLIO

Dado que la RNA es un algoritmo recursivo, ella lo que hace es evaluar las entradas versus las
salidas y bsicamente interpolar los pesos de las capas que se le asignan y generar dichas
salidas.

Para que la RNA funcione de una manera correcta fue necesario tomar una data con distintos
valores de set-points, ya que si se tomaba la data que se obtuvo anteriormente de los otros
controladores, la data era con un nico valor de set-point lo que haramos es un cambio
sostenido y no seran patrones variables para que la RNA aprendiera de manera exitosa.

Figura 52. Cadena de Set-Points para tomar data con controlador FUZZY.

Con base a lo anterior para que la RNA aprenda de una manera exitosa se ingresan son
muestras del ERROR, EL DELTA DE ERROR, LA SUMATORIA DEL ERROR Y EL VALOR DE SET-
POINT el cual fue variable, donde la salida debera contener el valor de pwm que es enviado
al elemento final de control del proceso y as poder cumplir con la funcin de controlar.

El objetivo de ingresarle 4 entradas a el controlador RNA es para que tenga varias


caractersticas que son representativos en dicho valor de setpoint, es decir cuando se le
ingresa un valor de set-point el error, el delta de error y la sumatoria del error tienen

Formando lderes para la construccin de un 42


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

comportamientos diferentes que no se tienen cuando se ingresa otro set-point, esto hace que
a la red se le ensee de una mejor manera porque ella va a tener muchos ms valores
caractersticos y as la red podr aprender de una manera correcta.

Figura 53. Forma en que se guardan las variables de entrada de la RNA.

En la figura 13 se puede observar cmo se guardan las variables de entrada de la RNA, las
cuales se envan al workspace de Matlab con nombres Error, Delta_E, Integral_Error y de esa
forma se pudieran guardar en un Excel para su debido tratamiento (Figura 54).

Formando lderes para la construccin de un 43


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 54.Tratamiento de Data Entradas RNA

En total se ingresaron 16.667 datos a cada entrada de la red, sea que en total para que la
red aprendiera de una manera correcta se ingresaron 66.668 datos en total, dndole una
riqueza considerable de conocimiento a la red para que la clonacin del controlador fuera
exitosa.

Figura 55.Datos de ERROR ingresados a la RNA

Formando lderes para la construccin de un 44


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 56. Datos del DELTA DE ERROR ingresados a la RNA

Figura 57. Datos de la SUMATORIA DEL ERROR ingresados a la RNA

Formando lderes para la construccin de un 45


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Seleccin de los rangos de la RNA

Figura 58. Rangos del controlador RNA

Nmero de entradas Capas ocultas Numero de salida

Donde la variable S1 contiene el nmero de entradas de la RNA, la cuales son cuatro


ERROR_DELTAERROR_SUMATORIAERROR_SET-POINT; la variable S2 contiene el nmero de
Capas ocultas o neuronas de la RNA, las cuales se escogieron 20, no fueron ms, debido a el
coste computacional que genera ensearle a la RNA con ms de 20 neuronas y el tiempo que
se demoraba enseando era considerable; la variable s3 contiene el nmero de salidas de la
RNA donde es la seal que va al elemento final de control, quiere decir que es la seal pwm.
Tambin se logran observar las funciones de activacin que se utilizaron para la RNA las cuales
fueron aconsejadas por el docente.

3.3.2 Nmero de pocas

El nmero de pocas usadas para la RNA fueron de 5000; este nmero de pocas debido a la
cantidad de informacin que se tena para entrenarla y tambin se quera tener una

Formando lderes para la construccin de un 46


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

confiabilidad alta de que la RNA aprendiera de una manera correcta. Para esta cantidad de
pocas el aprendizaje de la neurona demoro 40 minutos.

Figura 59. Etapa de enseanza de la RNA

3.3.3 Nmero de error permitido

Se fue muy estricto con el error permitido de la RNA para asi poder tener un mejor
resultado y obtener un buen comportamiento de la misma y a su vez poder superar las
mrgenes de respuesta de hasta el momento el mejor controlador obtenido que fue FUZZY.

Ya enseada la RNA se procede a simular para la respectiva verificacin de funcionamiento.

Figura 60. Simulacin de la RNA

Formando lderes para la construccin de un 47


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 61. Lazo de control en SIMULINK

Figura 62. Respuesta de la RNA a dos set-points diferentes.

Formando lderes para la construccin de un 48


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

CAPITULO 4
Proponga un clasificador de 5 clases usando el siguiente cdigo:

input = [0 1 2 3 4 5 6 7 8 9]; % Input data


output = [1 1 1 1 1 2 2 2 2 2];% data class
trnData = [input' output'];
numMFs = 5;
mfType = 'gbellmf';
epoch_n = 20;
in_fis = genfis1(trnData,numMFs,mfType);
out_fis = anfis(trnData,in_fis,20);
>> evalfis(1,out_fis)
ans = 1.0000
>> evalfis(9,out_fis)
ans = 2.0000

Para el clasificador de 5 clases se tuvo en cuenta lo siguiente:

1 = Nmeros primos del 2 al 11.

2 = Nmeros pares del 12 al 20.

3 = Nmeros Impares del 21 al 29

4 = Nmeros compuestos del 31 al 47

5 = Nmeros mltiplos del 5 del 50 al 70.

El cdigo para el clasificador de 5 clases fue el siguiente:


input = [2 3 5 7 11 12 14 16 18 20 21 23 25 27 29 31 37 41 43 47 50
55 60 65 70]; % Input data
output =[1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5
5 5 5 5];% data class
trnData = [input' output'];
numMFs = 25;
mfType = 'gbellmf';
epoch_n = 30;
in_fis = genfis1(trnData,numMFs,mfType);
out_fis = anfis(trnData,in_fis,20);

Formando lderes para la construccin de un 49


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Para comprobar que el aprendizaje de la clase y el numero este correcto se utiliza la


siguiente lnea de cdigo:
>> evalfis(7,out_fis)

ans =

1.0000

>> evalfis(18,out_fis)

ans =

2.0000

>> evalfis(29,out_fis)

ans =

3.0000

>> evalfis(43,out_fis)

ans =

4.0000

>> evalfis(65,out_fis)

ans =

5.0000

SISTEMA ANFIS

Ensayo del uso de la toolbox anfisedit: en este punto se practic la toolbox de


ANFIS donde a travs de una base de datos dada se pas a un script de Matlab que
procesaba los datos para dejarlos preparados al ingresarlos a la toolbox.

Formando lderes para la construccin de un 50


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 63. Carga de data y validacin

En la figura 52 se ingres la data proveniente del cdigo Script quien lee la data del proceso,
distingue las variables de entrada y salida y las optimiza para su ingreso a la Toolbox.

Figura 64. Estructura

Formando lderes para la construccin de un 51


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 65. Guardando e importando controlador

Figura 66. Comprobando su aprendizaje a travs de otra data

Resultados de la prctica del sistema ANFIS se aprecia el correcto aprendizaje de este al


ingresar una data diferente y ver la reaccin de este(color rojo) que va de forma adecuada
siguiendo el trayecto de la data ingresada.

Formando lderes para la construccin de un 52


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 67. Resultados de la prctica del sistema ANFIS

En la figura 56 se aprecia la respuesta en comparacin del sistema ANFIS vs la data real.

Ejercicio 1: Cree una funcin matemtica (exponencial, logartmica o trigonomtrica de su


preferencia) evalela para crear la data de entrada y salida (500 evaluaciones mnimo). Cree
el cdigo de carga de la data basndose en el cdigo anfis_tankesinterconectados y
usando la Toolbox anfisedit entrene un sistema ANFIS y realice la simulacin para verificar
el entremaniento.

Para este punto se implement la ecuacin: =

Formando lderes para la construccin de un 53


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 68. Procesamiento y separacin de datos

En la figura 57 se procedi a utilizar el mismo mtodo de procesamiento y separacin de


variable del punto anterior para ingresarlo a la toolbox:

Formando lderes para la construccin de un 54


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 69. Carga y evaluacin de la data real con la aprendida por el sistema ANFIS

Se observa como el sistema ANFIS comprendi muy bien la curva de la ecuacin,


observando esta respuesta se procede a simularlo en simulink.

Formando lderes para la construccin de un 55


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 70. Montaje para la simulacin

Formando lderes para la construccin de un 56


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 71. Grfica comparativa del ANFIS con la respuesta del sistema

Figura 72. Controlador ANFIS

Formando lderes para la construccin de un 57


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Ejercicio 2: Del lazo de control clsico de la planta desarrollada para la materia, cree la data
de entrada (error y delta de error, por ejemplo) y de salida para crear un sistema ANFIS que
clone el controlador. Ver ejemplo en carpeta llamada ejerciciopidANFIS. Qu tendra que
hacer para que el sistema ANFIS clone el controlador en rango amplio?

Figura 73. Data de la planta procesada por ANFIS

Se ingres la data de error, delta de erro y la salida en PWM del controlador clsico de nuestra
planta y se ingresaron a la toolbox como se aprecia en la figura 73.

Formando lderes para la construccin de un 58


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 74. Diagrama en bloque PID Vs ANFIS

Se realiz la comparativa entre el controlador clsico y el controlador ANFIS y como se


observa en la grfica 75 la respuesta del controlador ANFIS fue rpida y estable sin embargo
no llega totalmente al valor del set-point. Se concluye que con una mayor cantidad de datos
del proceso como el ingresar adems la variable sumatoria de error y adems agregar ms
pocas se podra realizar un control ms exacto y con un rango ms amplio.

Formando lderes para la construccin de un 59


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 75. Diagrama en bloque del sistema de deteccin de fallas

CLASIFICADORES CON RNA PARA DIAGNSTICO DE FALLAS

Revise la carpeta llamada clasificador de fallas, encontrara un ejemplo de un proceso del se


ha entrenado una RNA sin falla, con falla 1, con falla 2 y a travs de condicione se ha creado
un sistema de deteccin y diagnstico de fallas. Usando lo aprendido en los puntos anteriores
cree el programa de entrenamiento de la RNA y entrene la RNA para el sistema, pero
reemplace la funcin de transferencia por la de su proceso.

Ingresando nuestra red neuronal junto con la funcin de transferencia de nuestra planta y el
controlador PID se obtuvieron los siguientes resultados

Nota: para validar el proceso se muestra de un lateral la grfica de respuesta del sistema del
tipo de falla detectado y se marca en rojo en el diagrama en bloque la respectiva
configuracin realizada.

Formando lderes para la construccin de un 60


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 76. Deteccin 0 Sin fallas en el sistema

Figura 77. Deteccin de falla 2

Formando lderes para la construccin de un 61


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Figura 78. Deteccin de falla 1

Como se pudo observar en las grficas anteriores se ve la seal de alerta de forma satisfactoria
del tipo de falla que ocurri en el sistema. Esto nos indica que el uso de red neuronal para el
diagnostico de fallas y averas puede llegar a ser muy til para esta labor, siempre y cuando
la RNA se desarrolle adecuadamente es decir se le ensee bien el proceso.

Formando lderes para la construccin de un 62


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

CAPITULO 5
ALGORITMOS GENTICOS

Se utilizan dentro del campo de la automatizacin.

Figura 79. Creando funcin Fitness

Figura 80. Tolboox OPTIMTOOL

Formando lderes para la construccin de un 63


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

A la hora de querer crear el algoritmo gentico nos genera un error respecto a que la
funcion esta indefinida para argumentos de entrada tipo doble.

Formando lderes para la construccin de un 64


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

CONCLUSIONES

El desarrollo de esta asignacin tuvo como objetivo general el anlisis, diseo e


implementacin de un controlador RNA donde se analizaron todos los parmetros
referentes a ello. Se tom como base para el desarrollo del controlador las variables
de error, delta de error, sumatoria del error y el anlisis del comportamiento de un
controlador fuzzy el cual se eligi como el mejor entre todos los controladores
realizados con anterioridad. Dichas variables conformaron la entrada del controlador
RNA y asi poder brindarle a la red una riqueza de conocimiento amplio para que ella
pudiera aprender de una manera exitosa.

Comparando la respuesta obtenida al implementar el controlador RNA a la planta con


respecto al simulado, se observ un comportamiento muy similar con un tiempo de
estabilizacin casi idntico, al igual que el error en estado estacionario.

La respuesta ptima del sistema, segn los controladores presentados con


anterioridad, el mejor sera el controlador RNA clonado que se presenta un error
mnimo, alcanzando una respuesta mxima a su punto de referencia. Se sugiere
explorar con el sistema de inferencia neurodifuso ANFIS (Adaptive NeuroFuzzy
Inference Systems), por sus posibilidades de integrar las mejores caractersticas de
los sistemas difusos y redes neuronales. Permitiendo a la tcnica ANFIS el ajuste
automtico de controladores difusos y modelar sistemas para predecir su
comportamiento futuro.

La seleccin del mejor controlador para tener como base para la RNA fue el
controlador fuzzy debido a que sus mrgenes de respuesta fueron mejores en
comparacin con los otros mrgenes de respuesta de los anteriores controladores
sintonizados.

Se observo que el controlador RNA no trabaja en un rango amplio, para solucionar


este problema al momento de querer ensearlo se le ingresan valores del error, delta
error y la sumatoria del error simulados con una serie de escalones y extrados del
controlador seleccionado como base que fue el FUZZY. De esta forma la RNA
aprende el comportamiento a distintos escalones y as se podra trabajar en un rango
amplio.

Basndonos en el cdigo base se determin que el error preestablecido por el mismo


no era el ideal o suficiente para logar una clonacin exitosa de la red ya que la red
alcanzaba este punto de error en muy pocas iteraciones lo cual no permita que
realizara el adecuado aprendizaje completo y por eso se cambi el error a un valor

Formando lderes para la construccin de un 65


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

de 0.00000000000001 para que el aprendizaje fuera mucho ms estricto y por lo tanto


asegurar una mejor clonacin.

A la hora de querer clonar un controlador se debe tener en cuenta que la red a escoger
debe ser de tipo aprendizaje adaptativo que tiene la capacidad de aprender a realizar
tareas basadas en un entrenamiento o en una experiencia inicial. A su vez la red
neuronal debe ser tambin de tipo aprendizaje supervisado para lo cual se disponen
patrones de entrada y de salida que queremos obtener para la entrada de la red y en
funcin de ellos la red modifica los pesos de las sinopsis para ajustar el valor de la
salida

Formando lderes para la construccin de un 66


nuevo pas en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

BIBLIOGRAFIA
http://www.redes-neuronales.com.es/tutorial-redes-neuronales/aprendizaje-
supervisado-en-redes-neuronales.htm
https://es.wikipedia.org/wiki/Red_neuronal_artificial
Clases dictadas por el MsC. OSCAR DUQUE en las instalaciones de la universidad de
pamplona.
Videos tutoriales de la pgina Redes Neuronales- Fcil y desde cero.

Formando lderes para la construccin de un 67


nuevo pas en paz

You might also like