Vous êtes sur la page 1sur 3

Interfaz Robot Soccer Simulator v1.

5 y Prolog
Pablo Kogan pkogan@uncoma.edu.ar Noviembre 2005

1.

Introduccin o

El presente trabajo describe el uso de una interfaz, para el desarrollo de un equipo de ftbol u simulado en el lenguaje Prolog. El objetivo por el cual fue desarrollada la interfaz, es mantener una abstraccin en el desarrollo de los equipos de ftbol en Prolog, de forma tal que puedan o u actuar tanto sobre la plataforma simulada y como sobre la plataforma de robots reales.

2.

Plataforma Simurosot

El simulador Robot Soccer v1.5a [3] es utilizado en la Categor Middle League SimuroSot a del Campeonato Mundial de Ftbol de Robots FIRA [1] y en el Campeonato Argentino de u Ftbol de Robots CAFR [2]. Se elige inicialmente esta plataforma simulada por su facilidad de u uso, para independizarse del robot real y por ser la utilizada en la unica competencia que se realiza a nivel nacional. Las estrategias de cada equipo pueden ser desarrolladas en Lingo o una dll en C++.

3.

Mdulo Interfaz C++ o

Para realizar esta interfaz se implemento una dll con la versin 6.0 del ambiente del Visual o Studio C++. El simulador interacta con la dll mediante 3 funciones: u Create: esta funcin se invoca cuando se carga la dll en el simulador. Esta funcin inicializa o o dos socket udp que cumplen con los roles de servidor de v deo y servidor de comandos. Strategy: Esta funcin es invocada por el simulador 60 veces por segundo mientras se o desarrolla el juego. Cuando se est operando el simulador (utilizando los mens) la dll no a u es invocada. Esta funcin env un mensaje por el socket que cumple el rol de servidor o a de v deo con toda la informacin del ambiente. Luego espera recibir un mensaje por el o socket que cumple el rol del servidor de comandos con la informacin de la velocidad en o cada rueda de los jugadores del equipo. Destroy: Invocada al descargar la dll. Se cierran los socket.

4.

Mdulo en Prolog o

El desarrollo de los agentes se realizo en Ciao Prolog. El diseo esta dividido en los siguientes n mdulos: o sim video server.pl: abstrae la interfaz con el servidor de v deo simulado. sim command server.pl: abstrae la interfaz con el servidor de comandos simulado. estrategia.pl: la estrategia depende del equipo que puede ser azul.pl o amarrillo.pl. Es el mdulo principal que implementa cada uno de los roles que conforman la estrategia o del equipo. Se implemento una estrategia simple en la cual el delantero derecho sigue la pelota a todos lados, el arquero sigue la pelota en los l mites del rea chica y el resto de a los jugadores se dirige a una posicin base. o primitivas.pl: implementa la primitiva de movimiento ir a posicin. o

Figura 1: Arquitectura del sistema

5.

Instrucciones de uso

Se describe una instalacin t o pica en una mquina que soporte el simulador y el interprete a Ciao Prolog. 1. Instalar el simulador Robot Soccer Simulator v1.5 [3]. El simulador tiene como requerimientos m nimos (Pentium III 600 Mhz, 256 Mb de memoria, Windows 98 o superior, 10 Mb de disco). 2. Instalar el interprete Ciao Prolog [4]. Se ha experimentado la instalacin del interprete y o el simulador en un AMD Athlon XP 2000 con 512 Mb de memoria, sobre un Windows XP con un buen rendimiento en la interaccin entre el simulador y el interprete. o 3. Copiar el archivo /Stub C++/Release/bluestub10.dll en C:/Strategy/blue. Realizar el paso anlogo para /Stub C++/Release/yellowstub10.dll en C:/Strategy/yellow, si se rea quiere utilizar el equipo amarillo. 4. Compilar y Generar el ejecutable del archivo /Estrategia Prolog/azul.pl. Si se instalo correctamente el ambiente Ciao Prolog, se puede generar el ejecutable con el botn derecho o del mouse y luego en el men seleccionar Make executable. u 2

5. Ejecutar el simulador. Seleccionar la dll del equipo azul en STRATEGIES, C++ en vez de Lingo y escriba bluestub10 en el cuadro de texto que se encuentra debajo de la palabra blue. Luego seleccione Send. 6. Ejecutar el archivo generado en el punto 4. Se recomienda ejecutarlo desde una terminal DOS para ocupe menos recursos. Este debe mostrar el mensaje: Conectado a Video Server en Puerto 6363, Host 127.0.0.1. Conectado a Command Server en Puerto 6364, Host 127.0.0.1. 7. En el Simulador seleccionar Start. Luego deber estar jugando la estrategia simple azul.pl a desarrollada en prolog contra la estrategia Team2 (provista por el simulador) desarrollada en Lingo.

6.

Datos utiles

Se ha experimentado la interfaz en 2 maquinas, una para ejecutar el simulador (windows 98, PII 400 Mhz, 128 Mb de memoria) y otra para ejecutar el interprete (SUSE 9, Athlon XP 2000, 512 Mb de memoria), con buenos resultados. Si se utilizan mquinas diferentes se debe a especicar el nmero de ip de la mquina en donde se ejecuta el simulador, el archivo azul.pl. u a Para recargar las estrategias interfaz es necesario salir del simulador (tecla Esc), y comenzar de nuevo desde el punto 5. En el caso de que ambas estrategias sean desarrolladas en Ciao Prolog, se deben seleccionar ambas dll bluestub10 y yellowstub10, y el orden de ejecucin de las estrategias en prolog debe o ser azul.pl y luego amarillo.pl. Los puertos por defecto de los cada equipo son: servidor de video azul 6363, servidor de comandos azul 6364, servidor de v deo amarillo 6365 y servidor de comandos amarillo 6366.

Referencias
[1] FIRA. http://www.ra.net La FIRA (Federation of International Robot-soccer Association) comienza en 1995 y organiza un campeonato anual desde 1996 en diversos pa ses. La FIRA fue fundada con la meta bsica a de promover el esp ritu de la ciencia y tecnolog en robtica a travs el juego de ftbol con a o e u robots. El evento anual tiene varias categor simuladas y reales. as [2] CAFR . http://www.unimoron.edu.ar/cafr2005 El Campeonato Argentino de Ftbol de Robots se realiza anualmente en diferentes especialiu dades, pero tiene su principal categor en el ftbol simulado sobre la plataforma Simurosot a u de la FIRA. La Universidad de Morn fue la sede de la ultima edicin. o o [3] Robot Soccer Simulator v1.5a. http://www.ra.net/soccer/simurosot/R Soccer v15a 030204.exe [4] Ciao Prolog. http://clip.dia..upm.es/Software/Ciao/

Vous aimerez peut-être aussi