You are on page 1of 3

Tcnicas Modernas en Automtica [ELO 377], Mayo 2013.

Clculo de volumen de caf en mquina dispensadora segn el tamao del vaso con RNA
Germn Sandoval Andrade Rol: 2721037-6
Voluen caf [ ] 100 250 400

Resumen En este documento se resuelve una situacin problema, usando Redes Neuronales en el marco de la Tarea 1 de Tcnicas Modernas en Automtica. El problema trata de una mquina dispensadora de caf con sabor, en la que hay 3 tamaos de vaso disponibles, la maquina consta de sensores de altura que permiten discriminar el tamao del vaso. Mediante el uso de Redes Neuronales se logra que la mquina expenda la cantidad de caf correspondiente a cada vaso. Palabras Clave Redes Neuronales, Backpropagation, entrenamiento, Matlab, nntool.

Altura vaso [cm] 10 15 20

Tabla 1: Volumen asociado a tamao (altura) de cada uno de los vasos para caf disponibles.

I. INTRODUCCIN

dispone de una mquina dispensadora de caf con sabor, que permite discriminar (mediante un sensores de altura) el tamao del vaso para llenarlo con el volumen de caf correspondiente (el volumen de cada vaso segn su altura es conocido), cabe sealar que solo hay 3 tamaos de vasos diferentes. El objetivo es, mediante el uso de Redes Neuronales, lograr que la mquina sea capaz de asignar correctamente el volumen de caf correspondiente a expender en el vaso segn sea su tamao. El procedimiento consiste en asignar valores de las entradas (inputs) posibles dentro de un rango en un vector, y en otro los valores de las salidas deseadas (targets), y con ambos entrenar a la red hasta que sta entregue resultados lo ms aproximados posibles a las salidas deseadas. Para la implementacin se usa Matlab, y su toolbox de redes neuronales nntool, que permite crear, configurar, entrenar, y simular una red neuronal de forma grfica, y evadiendo la programacin clsica por cdigo.
E

Figura 1: Esquema que grafica la situacin descrita, mquina dispensadora de caf.

III. CREACIN DE LA RED NEURONAL EN MATLAB Se usa el toolbox nntool de Matlab el cual permite escoger grficamente el tipo de red, la cantidad de capas, y de neuronas por capas, adems del tipo de entrenamiento y de aprendizaje que se emplear. Una vez invocado el toolbox, hay que proceder a crear la nueva red, se escoge la red Feed-Forward Back Propagation, inicialmente con 6 capas, y 50 neuronas por capa, cabe sealar, que luego de sucesivos entrenamientos y pruebas de ensayo y error, se opt por una red de 5 capas, y con 30 neuronas por capa.

II. DESCRIPCIN DE LA SITUACIN La mquina dispensadora de caf consta de sensores de altura que permiten medir la altura de cada vaso. Esta medida se ocupar como variable de entrada a la red neuronal. Existen 3 tamaos de vasos, y los volmenes de stos son:

Tcnicas Modernas en Automtica [ELO 377], Mayo 2013.

2 dista mucho de la salida deseada, se vuelve a entrenar la red, y Matlab automticamente calcula los errores y modifica los pesos de interconexin, si se hace esto secuencialmente, llegar un momento en que se logre el resultado esperado A continuacin una captura de la interfaz de entrenamiento de la red neuronal, que corresponde al ltimo realizado antes de alcanzar un nivel de error aceptable.

Figura 2: Creacin de la red neuronal, configuracin de datos de entrada y salida, estructura y tipo de entrenamiento.

Figura 3: Estructura de la red neuronal.

Figura 4: Interfaz de entrenamiento de la red neuronal.

Para entrenar a la red es mejor entregarle la mayor cantidad de valores de entrada, y las salidas deseadas asociadas a cada uno de estos. Si es que se pusiera algn objeto o vaso inferior a los 10 de altura la mquina no expender caf, por lo que se le otorga el valor 0 en el vector de salidas deseadas. A los 3 volmenes de caf a expender (asociados a los 3 tamaos de vasos) se les otorga los valores 1, 2 y 3, respectivamente. Luego hay que ingresarle el vector de entrada (input), y el de salidas deseadas (target) con los que la red ser entrenada: : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 : 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 3 IV. ENTRENAMIENTO DE LA RED NEURONAL El entrenamiento a utilizar es un entrenamiento supervisado, en el que se asigna un vector de salidas deseadas a un vector de entrada, luego, la red calcula la salida, si esta

Luego del primer entrenamiento realizado a la red, se grafica su mnimo error cuadrtico, antes de esto, es necesario aclarar algunos conceptos: Entrenamiento: Estas muestras son presentadas a la red durante el entrenamiento, y la red se ajusta de acuerdo a ese error. Validacin: Estas muestras son utilizadas para medir la generalizacin de la red, y para detener el entrenamiento cuando la generalizacin deja de mejorar. Comprobacin: Estas muestras no tienen efecto en el entrenamiento, pero proveen una medicin independiente del rendimiento de la red, durante y despus del entrenamiento.

Tcnicas Modernas en Automtica [ELO 377], Mayo 2013.

3 tener un vaso puesto en la mquina, pero al que la mquina debiera depositarle el volumen de caf correspondiente al vaso de 20 .
Altura Valor de esperado salida Valor de salida obtenido

0 10 15 20 25

0 1 2 3 3

0,0066312 0,99576 1,9988 2,9499 2,9773

Tabla 2: Valores de salidas deseadas y salidas obtenidas para valores de entrada de prueba.

La tabla 2 se basa ntegramente en los resultados de la simulacin:


Figura 5: Mnimo error cuadrtico, despus del primer entrenamiento a la red.

Luego de sucesivos entrenamientos, se logra un valor bastante aceptable de mnimo error cuadrtico.

Figura 7: Resultados de simulacin para valores de entrada de prueba.

VI. CONCLUSION Se obtuvo resultados bastante aproximados a los valores esperados en las salidas, lo que sugiere que las redes neuronales son una solucin factible y eficiente para este tipo de situaciones problema, eso s, supeditados a la calidad y precisin de los sensores asociados. Se concluye adems que influye mucho en el entrenamiento de una red neuronal, la cantidad de datos que se le ingresan como entradas y salidas deseadas asociadas a stas, mientras ms cantidad y exactitud de datos se le ingresa a la red durante su entrenamiento, responder de mejor manera al simularla, adems es fundamental la cantidad de veces que se repite secuencialmente la red, para que automticamente vaya ajustando los pesos de interconexin hasta alcanzar un nivel aceptable (lo ms bajo posible, dependiendo de la aplicacin) de error en la salida. Finalmente se concluye que las redes neuronales son una herramienta bastante poderosa para poder realizar variadas tareas bastante complejas, considerando, que con unas pocas capas y no muchas neuronas es posible realizar tareas bastante especficas, y eso hace vislumbrar, lo que se podra realizar con stas, si se emplean arquitecturas ms complejas, y con un nmero considerablemente ms grande de neuronas. REFERENCES
[1] [2] [3] TechSource Systems Sdn Bhd 52, Statistics & Data Analysis using Neural Network, www.techsource.com. Neural Network Toolbox Users guide. Apuntes sobre Redes Neuronales, curso Tcnicas Modernas en Automtica [ELO 377].

Figura 6: Mnimo error cuadrtico, despus del ltimo entrenamiento a la red.

V. RESULTADOS Con la red ya entrenada lo suficiente como para tener un nivel de error aceptable en la salida se procede a similar la red con los siguientes valores de entrada: : 0 10 15 20 25 Que representan 4 situaciones de inters, el cero representa cuando no hay nada dentro del espacio para el vaso, el 10, 15 y 20, representan los 3 tamaos para los vasos (que debieran arrojar como salida en la red 3 valores (1, 2 y 3) correspondientes a 3 volmenes (95, 245, y 295 )), y finalmente 25, que representa la altura mxima que podra