Proyecto de primer semestre de la maestría en ciencias de la computación, CIMAT, A.C., Febrero de 2000.
Asesores : Dr. Johan van Horebeek y Dr. Mariano Rivera - Departamento de Ciencias de la Computación, CIMAT, A.C.
Descargar aqui las diapositivas correspondientes a la presentación de este proyecto.
Este programa consiste en un simulador visual que muestra el movimiento de hormigas dentro de un entorno constituido por un hormiguero (circulo naranja), paredes (color negro) y comida (color rojo). El programa comienza con una pantalla inicial como la que se muestra en la figura 1.
Figura 1: SIMAHO, simulador de movimiento y aprendizaje de hormigas
En la figura 1 se pueden apreciar tres módulos principales:
Pantalla superior: Muestra el desarrollo de la simulación, muestra el estado de las hormigas y de su entorno en cada momento.
Pantalla inferior izquierda: Muestra las opciones del simulador, algunas de estas opciones no pueden ser modificadas una vez iniciada la simulación.
Pantalla inferior derecha: Muestra gráficamente la tendencia que tiene la ultima hormiga que encontró comida.
El entorno de simulación muestra en todo momento el movimiento de las hormigas y su interacción con las paredes y la comida, aquí se puede ver gráficamente como al momento en que alguna hormiga encuentra en su camino una pared, representada con color negro, la hormiga choca con ella y trata de buscar otro camino diferente. Asimismo cuando una hormiga encuentra comida, representada con el color rojo, la hormiga aparentemente desaparece representando la permanencia de la hormiga en la comida, es decir, la hormiga a llegado a su objetivo final “encontrar comida”.
Si se desea detener la simulación pero que esta no termine, es decir, aplicar pausa a la simulación, esto se puede lograr oprimiendo el botón derecho del Mouse dentro del entorno, esta operación mostrará las opciones de cargar mapa, simular y salir, si no se escoge ninguna de las opciones antes mencionadas la simulación continuara su proceso.
Se ha proveído al simulador de varias opciones diferentes para que el usuario modifique los parametros de la simulación a su preferencia. En la figura 2 se muestra la pantalla de opciones.
Figura 2
Dentro de la pantalla de opciones del simulador se pueden realizar las siguientes modificaciones:
El número de hormigas inicial para la simulación, es decir, el número de hormigas con que se comenzará la simulación.
El número de hormigas hijas que se mostrarán al momento en que una hormiga haya encontrado comida.
Posición del hormiguero, se tendrá que especificar las coordenadas en x y en y.
La perdida de vida por cada golpe que haya sufrido una hormiga al encontrarse una pared en su camino.
La perdida de probabilidad dentro de la matriz.
La tendencia que tienen las hormigas a encontrar la comida se muestra gráficamente por medio de un circulo con las direcciones que pueden tomar las hormigas. Un ejemplo de la dirección que pueden tomar las hormigas es la que se muestra en la figura 3:
Figura 3
En el ejemplo de la figura 3 se puede ver que la dirección que pueden tomar las hormigas tienden más a dirigirse hacia el Noroeste y hacia el Noreste, pero difícilmente se dirigirán hacia el sur.
El simulador obtiene através de la pantalla de opciones los valores asignados incialmente a la matriz de transiciones de dirección. Los mapas pueden ser creados en cualquier editor de imágenes siguiendo las siguientes restricciones:
Para las paredes se debe utilizar el color negro,
Para la comida se debe utilizar el color rojo,
El archivo debe ser guardado como BMP.
La matriz de transiciones muestra inicialmente probabilidades de transición aleatorias, pero se puede modificar para indicar alguna tendencia en particular, procurando que la suma de los renglones de la matriz sea uno. La Figura 4 muestra otro ejemplo del simulador, en este caso para un camino dirección Noreste. Se puede apreciar que las hormigas encuentran en su mayoría el camino hacia la comida encontrando la dirección de movimiento mas apropiada para su sobre-vivencia.