Академический Документы
Профессиональный Документы
Культура Документы
Linkdist
Distancia
Manhattan
2) Topologia de la vecindad. O el tipo de relacin
de vecindad, la cual es fundamental para
observar como afectara la neurona ganadora a
sus vecinas, en otras palabras, es la geometra de
tomar este vecindario. Las principales
topologas son la cuadrada y hexagonal como se
observan en Fig. 6, obviando la aleatoria.
Fig. 6. Topologa de la vecindad
3) Radio de vecindad. Es la amplitud del alcance
de las neuronas vecinas, el cual se modifica de
acuerdo al nmero de iteraciones, manteniendo
una relacin inversamente proporcional, en otras
palabras, el radio disminuye a medida que las
iteraciones aumentan.
4) Nmero de iteraciones. Es el nmero de veces
que el algoritmo de entrenamiento se va a
ejecutar.
Una vez diseada la red neuronal se procede a realizar el
entrenamiento mediante el ToolBox de RNA de Matlab
2010b con los datos obtenidos en la etapa de exploracin,
presentndolos a la red como entradas para que de esta
forma encuentre similitudes entre los datos de entrada, a
travs de un proceso de aprendizaje que permite la
variacin de los pesos sinpticos que determinan el
comportamiento del robot mvil en la trayectoria tipo
N
Out
N
Out
N
Out
N
Out
N
In
N
In
N
In
laberinto, sin necesidad de patrones predefinidos por el
programador, lo cual define el aprendizaje no
supervisado.
E. Resolucin de trayectorias tipo laberinto
Para la resolucin de trayectorias tipo laberinto, se
implemento en la FPGA Spartan-6 la RNA tipo SOM
descrita. Para ello, fue necesario desarrollar en VHDL
una memoria RAM, capaz de almacenar el vector de
pesos sinpticos recibidos del entrenamiento. De esta
forma se tiene entrenada la RNA en la FPGA, con el fin
de determinar la distancia entre el dato de entrada y el
vector de pesos. Para determinar esta distancia se utilizo
la distancia Manhattan (ver Tabla I).Una vez obtenida
esta distancia se procede a determinar cul es la distancia
mnima entre el dato de entrada y las neuronas
comparando la sumatoria de los pesos de cada neurona,
para as obtener la neurona ganadora, como se aprecia en
Fig. 7.
Fig. 7. Esquema de la RNA tipo SOM implementada en
la FPGA.
El bloque denominado SOM, internamente contiene la
memoria RAM y el algoritmo capaz de determinar la
distancia Manhattan, generando la sumatoria de los pesos
de cada neurona para su posterior proceso de
comparacin. Se puede apreciar en Fig. 8, la simulacin
en ISE 13.4 de Xilinx de la respuesta de la RNA a
diferentes patrones de entrada, que son datos de tres bits,
este comportamiento se logra al recibir los pesos
sinpticos mostrados en la Tabla II.
Fig. 8. Comportamiento de RNA en la FPGA
Adems se observa como la seal winner (identificada
en la figura con color rojo), cambia su estado de acuerdo
a las variaciones en la seal input (color azul). La seal
winner representa cul de las cuatro neuronas de la red
neuronal SOM es la ganadora, siendo la variacin de esta
seal entre 0 y 3.
TABLA II. -Pesos Sinpticos enviados a la FPGA.
Neurona 1 0 100 0
Neurona 2 0 35 71
Neurona 3 100 100 18
Neurona 4 100 0 50
Para lograr que el robot mvil pueda realizar la
trayectoria es necesario traducir las seales de la RNA a
seales que permitan el movimiento de los motores, esto
es posible mediante el bloque AEM.
En caso de no obtener los resultados esperados es
necesario volver a la etapa de entrenamiento hasta que
perfeccione su aprendizaje. Para ello, es necesario hacer
la concatenacin de los nuevos datos con los ya
obtenidos en el recorrido anterior.
3. Anlisis de Resultados
La Fig. 9, se observa el entorno tipo laberinto utilizado
para el entrenamiento del robot mvil. Para ello se realizo
la etapa de exploracin con el propsito de recolectar
informacin del entorno.
Fig. 9. Entorno tipo laberinto No.1.
Una vez recolectada la informacin del entorno, se
realiza el procesamiento de esta informacin en la
Interfaz Grafica de Usuario ZiggyLab Inteface (ver Fig.
10), para poder representar grficamente la trayectoria
que efecto el robot en la etapa de exploracin,
consecuentemente se entrena la RNA con dicha
informacin, obteniendo los pesos sinpticos que sern
transmitidos al robot mvil. Asimismo, se selecciona
automticamente el bloque AEM que se utilizara durante
la etapa de aprendizaje.
Fig. 10. Resultados obtenidos de la etapa de Exploracin,
entorno No.1
Obtenidos estos resultados y transmitida la informacin
necesaria al robot mvil, se inicia nuevamente el
recorrido con el robot entrenado, con el fin de observar
grficamente en 2D o 3D la trayectoria seguida por el
robot mvil y determinar los avances en su aprendizaje.
En Fig. 11, se puede apreciar como el robot realizo un
trayecto menor comparndolo con la etapa de
exploracin y realizndolo en menor tiempo.
Adicionalmente se obtiene una evidencia del 99% debido
a que el mvil llega al final de la trayectoria propuesta.
Fig. 11. Resultados obtenidos con el primer
entrenamiento, entorno No.1
Se realizaron pruebas modificando el entorno de Fig. 8,
identificndolo como entorno No.2, obteniendo en la
etapa de exploracin diferentes resultados a los obtenidos
en el entorno anterior (ver Fig. 12), resaltando la
variacin en los pesos, las neuronas ganadoras para cada
estado de los sensores y la configuracin del bloque
AEM.
Fig.12. Resultados obtenidos de la etapa de Exploracin,
entorno No.2.
Con los datos obtenidos en la exploracin del entorno
No.2, el robot mvil realiza el recorrido que se aprecia en
Fig. 13, obteniendo el mismo trayecto que realizo en la
etapa de exploracin, las mismas neuronas ganadoras,
aunque una leve variacin en los pesos sinpticos.
Fig. 13. Resultados obtenidos con el primer
entrenamiento, entorno No.2
Se observo que si se entrena la RNA con los resultados
obtenidos con el primer entrenamiento, se obtiene una
leve variacin en los pesos sinpticos y el robot mvil
realiza el mismo recorrido, igualmente sucede si se sigue
entrenando con los datos obtenidos del siguiente
entrenamiento.
En Fig. 14 y Fig. 15, se observa el robot mvil
desenvolvindose en el entorno No.1 y No.2
respectivamente, luego de realizar el proceso de
aprendizaje (exploracin y entrenamiento).
Fig. 14. Robot mvil, luego del proceso de aprendizaje en
el entorno No. 1.
Fig. 15. Robot mvil, luego del proceso de aprendizaje en
el entorno No. 2.
4. Conclusiones
Se obtiene un robot mvil con las siguientes
caractersticas: unas dimensiones de 20 cm x 20 cm x 8
cm con un peso de 500gr, con una geometra circular la
cual es una de las ms recomendadas para trayectorias
tipo laberinto, tres (3) sensores de proximidad
GP2Y0D810ZOF, un sensor de deteccin de lnea QTR-
8A, dos motorreductores de 300 rpm, una rueda libre, un
sistema de alimentacin basado en bateras recargables
tipo ion-litio de 12v a 2 A y un sistema de control
implementado en una FPGA Spartan 6.
El sistema de control est basado en un Mapa Auto-
organizativo de Kohonen (SOM) con aprendizaje no
supervisado, el cual al ser entrenado mediante Matlab
permite obtener los pesos sinpticos que determinan el
comportamiento del robot para la resolucin de una
trayectoria tipo laberinto.
Igualmente, se puede ver que el comportamiento del
robot mvil al resolver la trayectoria tipo laberinto, tiene
variaciones notables dependiendo del entrenamiento
realizado, es decir, de los pesos sinpticos utilizados que
van cambiando a medida que el robot aprende.
Demostrando la evolucin de su aprendizaje en cada uno
de los entrenamientos realizados por el robot mvil y su
capacidad en la toma de decisiones.
Finalmente, la interfaz grfica ZiggyLab Interface facilita
un control y monitoreo de los procesos que requiere el
robot mvil para su adecuado desempeo en la resolucin
de trayectorias tipo laberinto. Estos procesos son:
recoleccin de datos, entrenamiento de la red SOM y un
control de movimientos del robot mvil.
Referencias
[1] P. Atapuma, J. Bernal, N. Moheisen, Diseo y
construccin de un robot limpiavidrios, Trabajo de
grado Ingeniera Electrnica. Bogot: Universidad
INCCA de Colombia. Facultad de Ingeniera,
Administracin y Ciencias Bsicas, p. 15, 2010.
[2] H. Guerrero, J. Delgado, Evolucin de chip ADN
emulado con algoritmo gentico en FPGA para
control de navegacin de un robot mvil,
Unillanos, Vol. 12, pp 117-129, 2008.
[3] Y. Basma, M. Basil, A. Fakhraldeen,
Reconfigurable Self-Organizing Neural Network
Design and it's FPGA Implementation, Al-
Rafidain Engineering, Vol. 17, June 2009.
[4] M. Muoz, G. Rodrguez, J. Garcia, Sistema de
desarrollo de redes neuronales sobre FPGA, 2001.
[5] C. Guzman, J. Neira, J. Villamizar, V. Castro,
Diseo E Implementacin De Una Red Neuronal
En Un Dspic Para El Control De Trayectoria De
Un Robot Detector De Obstculos, Revista
Tecnologas de Avanzada, Vol. 2, 2008.
[6] T. Kohonen, The Self-Organizing Map,
Proceedings of the IEEE,
Vol. 17, pp 1464- 1480, June 2009.