• No results found

Se ha mostrado una plataforma de definición de comportamientos de robots jugadores de fútbol, separada de la plataforma de programación nativa de los robots. Esta permitió generar y probar estrategias de juego rápidamente. El sistema fue utilizado por estudiantes de primeros semestres de carreras de computación sin experiencia en robótica o computación y fueron capaces de mejorar comportamientos existentes, comprendiendo la actuación de los robos en el simulador y generando nuevas estrategias de juego.

La definición de comportamientos en XML resulta sencilla con la ayuda de herramientas disponibles para la manipulación de archivos XML, además proporciona un modelo de definición de estrategias comprensible e independiente de la programación interna del robot, esto acelerará el desarrollo tanto de nuevas estrategias como de acciones, o eventos percibidos por el robot, ya que sólo se necesita actualizar el listado de acciones disponibles y eventos para que un estratega sepa con que nuevas funcionalidades cuenta.

Por otro lado, el modelado de un comportamiento por medio de máquinas de estado jerárquicas facilita la mejora continua y la reutilización de comportamientos, además se tiene la posibilidad de ir encapsulando comportamientos para que las máquinas de estado se mantengan en un nivel bajo de complejidad. La creación de un programa gráfico para mostrar eventos, estados activos, inactivos y transiciones brinda un panorama más claro sobre el funcionamiento del autómata y facilita la evolución de las estrategias de los jugadores.

Con la adición del módulo de comunicación se probó la extensibilidad y flexibilidad del sistema para incorporar nuevas características. Este modulo facilitó la creación de estrategias no sólo a nivel individual sino en conjunto, completando objetivos que han sido complicados en la liga RoboCup entre los que destacan el envío de pases y la posesión del balón.

5.1.

TRABAJO FUTURO

El programa actual brinda una gran ayuda para crear, probar y analizar los comportamientos de los agentes, no obstante, se podría incorporar una herramienta gráfica para definir comportamientos en forma de diagrama que facilitaría aún más la elaboración de las máquinas de estado.

Otra posible mejora es tener la posibilidad de poder dividir un conjunto de comportamientos en varios archivos de XML, ya que las definiciones completas de jugadores pueden ser muy extensas. Al dividirlas en varios archivos sólo se afectaría una parte al realizar un cambio y se podría organizar mejor el código.

Podría implementarse un sistema distribuido de simulación donde cada agente cuente con un equipo de cómputo y se establezca comunicación por medio de red lo cual sería todavía más parecido a lo que ocurre en realidad y podría acelerarse el proceso de simulación.

Aún cuando el simulador cuida muchos detalles sobre las características de los robos AIBO y del ambiente donde se desenvuelven, la liga de RoboCup evoluciona rápidamente, las reglas cambian e inclusive los modelos de robots son actualizados constantemente, por lo que este proyecto de decisión necesariamente deberá mantenerse al día para adecuarse a los nuevo retos que platee el sistema de competencia y a los objetivos de investigación del instituto.

Es tanta la información para cada una de las situaciones en las que el robot se puede encontrar, en un ambiente tan cambiante como lo es el juego de fútbol, que en un futuro se deberán ocupar enfoques de aprendizaje o evolución de comportamientos inclusive de máquinas de estado o autómatas finitos [34], con la finalidad de que los agentes sean capaces de descubrir por si solos las estrategias más adecuadas. No obstante, con el fin de ser competitivos la definición de comportamientos de alto nivel puede seguir siendo razonada por una persona y poco a poco ir incorporando estrategias más inteligentes.

Todavía queda mucho trabajo por hacer definiendo comportamientos, explotando las acciones y eventos que posee el simulador, un ejemplo es el módulo de comunicación, que es uno de los más enriquecedores de este trabajo precisamente porque no brinda una solución definitiva, es más bien un auxiliar en futuras investigaciones sobre negociación, cooperación y aprendizaje distribuido. El hacer pruebas exhaustivas de este módulo esta fuera del alcance de este trabajo pero sin duda será un interesante campo de investigación.

Un reto más por desarrollar es extrapolar este metalenguaje a otros agentes computacionales o robóticos, aun cuando las tareas que los agentes realicen sean muy diferentes al juego de fútbol esto no implica el desarraigo del sistema ya que el lenguaje esta concebido como un modelo genérico de definición de comportamientos.

Puesto que el simulador es muy ilustrativo y didáctico se ha propuesto como un auxiliar para ejemplificar y desarrollar actividades en cursos de sistemas de agentes, esto traería consigo un mayor seguimiento al proyecto, una mayor participación de alumnos y por consiguiente estrategias cada vez más complejas y creativas. A medida que se agreguen nuevas aportaciones el simulador será cada vez más completo y versátil.

Los resultados de simulación son satisfactorios y rápidamente se definieron los principales roles de los jugadores, pero una de las principales premisas de los robots basados en comportamientos es realizar pruebas directamente en robots físicos ya que se pudieron haber pasado por alto algunas características significativas del medio que provoquen alguna disparidad entre los resultados de simulación y la aplicación en el mundo real, por lo que en un futuro debe utilizarse este trabajo en robots genuinos. Una prueba muy significativa será el poner a competir este sistema en la liga de robots cuadrúpedos contra sistemas de decisión similares, o bien utilizarlo como base dentro de la liga de simulación.

Por otro lado con este enfoque se estará limitado a la creatividad humana, si se desea vencer en realidad a una persona como marca el objetivo RoboCup “Para el año 2050, desarrollar un equipo de robots completamente autónomos que puedan vencer al equipo humano campeón de fútbol” [4], se deben dirigir los esfuerzos hacia métodos que realicen funciones de exploración y aprendizaje automático, para que en realidad seamos superados por la creatividad de las

máquinas y no solo por sus características físicas y de velocidad de procesamiento. Con el simulador y posteriormente ocupando robots reales se pueden probar estrategias de aprendizaje y exploración automática de soluciones.

Por último se podrían explorar estrategias de aprendizaje donde la representación del conocimiento siga siendo a través de máquinas de estado jerárquicas, puesto que no se pierde la capacidad de entender que es lo que los robots están ejecutando, de este modo se podría llegar a un aprendizaje muto entre el conocimiento generado por el agente y el conocimiento generado por los seres humanos como es el caso de los sistemas de razonamiento automático, los cuales pueden llegar a deducir teoremas matemáticos o los jugadores complejos de ajedrez capaces de desarrollar técnicas y estrategias difícilmente visibles a primera instancia por una persona.