2. Contenido: Introducción ¿Por qué sistemas multiagente para simulación? Ejemplo Simulación de sistemas sociales RoboCup Microsoft Robotics Studio Conclusiones
3. Introducción Uno de los campos en los que los sistemas basados en agentes pueden aportar mucho es en la simulación. Muchas veces experimentar con la realizad puede ser costoso, peligroso o incluso imposible. Un agente puede tener un conjunto de comportamientos pequeño pero cuando muchos agentes actúan conjuntamente la apariencia es de un sistema complejo que evoluciona con el tiempo.
4. Ejemplo Simulamos una colonia de hormigas, donde cada agente se corresponde con una hormiga. Existen distintas cantidades de comida y las hormigas se preguntan unas a otras por ella. Las hormigas pueden mentir , equivocarse o no hacerlo. Esto afecta a la confianza que tienen las unas en las otras. ¿Os imagináis los resultados?
5. Ejemplo Los resultados son: Si existe poca comida los agentes compiten, mienten y por lo tanto existe mucha desconfianza. Si existe mucha comida no hay necesidad de mentir, las hormigas dejan de mentir, la confianza aumenta y la comunicación aumenta entre las hormigas. Esto es un ejemplo muy simple pero podemos imaginar el modelado de sistemas mas complejos. Por ejemplo saber que decir o no en una campaña política.
6. Simulación de sistemas sociales La teoría de agentes software facilita el modelado de los aspectos organizativos y de comportamiento de los individuos de una sociedad. Un agente puede representar un individuo en una sociedad, que percibe y reacciona ante los eventos de su entorno de acuerdo a su estado mental, y que interacciona con otros individuos.
7. Simulación de sistemas sociales Existen varios problemas para la simulación de sistemas sociales: Los sistemas sociales son altamente complejos. Difíciles de modelar e incluso entender. Los sociólogos no tienen suficientes conocimientos informáticos para modelar por ellos mismos el sistema. La solución es proporcionar a los sociólogos una herramienta para modelar sistemas mediante agentes software. Por ejemplo, el INGENIAS DevelopmentKit.
8. RoboCup RoboCup es una iniciativa de educación para promover los avances en inteligencia artificial. La primera se celebró en 1997. Objetivo: En el año 2050 se pueda desarrollar un equipo de robots humanoides completamente autónomos, que puedan ganar, de acuerdo con las reglas oficiales de la FIFA, contra el ganador de la copa mundial de fútbol. ¿Posible o imposible?
9. RoboCup La RoboCup ya no es solo un competición de fútbol. Tenemos: RoboCup Soccer. La primera RoboCup que a su vez tiene muchas ligas. RoboCup Rescue. Su propósito es evaluar estrategias de rescate que den soporte en situaciones de emergencia en una catástrofe simulada. RoboCup@Home. Donde se intenta promover el desarrollo de robots que ayuden a las personas en la vida diaria. RoboCupJunior. Iniciativa educacional para estudiantes jóvenes.
10. RoboCup ¿Dónde está la simulación en la RoboCup? En RoboCup Soccer existen distintas ligas de simulación. Algunas en 2D y otras en 3D. En RoboCup Rescue. Existe una categoría de simulación donde se compite por encontrar la mejor gestión de una catástrofe.
11. RoboCup Soccer Cada jugador es un agente autónomo que: Procesa la información sensorial. Evalúa su sistema de control. Envía las acciones al simulador. Lo más complicado: El posicionamiento en el campo. La información visual se corresponde con una serie de marcas que limitan el campo, la pelota y los otros jugadores. Los algoritmos de comunicación y coordinación de los distintos agentes, ¿de qué nos vale si todo el equipo corre hacia la pelota?
12. RoboCup Soccer ¿Los jugadores son realmente agentes? Si, los jugadores son reactivos, proactivos y comunicativos. Un jugador posee: Razonamiento. Manejo del conocimiento. Aprendizaje. Un equipo posee: Coordinación grupal. Planificación. Comunicación.
13. Microsoft Robotics Studio Microsoft Robotics Studio es un entorno basado en Windows para el control y la simulación de procesos robóticos. Permite escribir rutinas software que controlan el comportamiento del robot. Se puede utilizar con muchas plataformas robóticas, lo más común es que tan solo se necesite instalar el hardware y sus drivers. Podremos interactuar con el robot mediante lenguajes de la plataforma .NET o mediante interfaces web.
14. Microsoft Robotics Studio Microsoft tiene su propia competición y ha desarrollado su propio entorno de desarrollo Microsoft Robotics Studio, Microsoft ha sido uno de los grandes patrocinadores de la RoboCup. Microsoft Robotics Studio dispone de un simulador 3D que permite simular lo que haría un robot con tu programa. Dispone de dos paquetes adicionales para simular competiciones de sumo y fútbol.
16. Microsoft Robotics Studio ¿Qué tiene que ver con sistemas multiagente para simulación? Intentaremos determinar si en este entorno podemos desarrollar agentes y sistemas multiagente. Un agente tiene que ser: Reactivo. Proactivo. Comunicativo.
17. Microsoft Robotics Studio Reactivo y proactivo: Se pueden programar algoritmos reactivos y proactivos en Microsoft Robotics Studio en diferentes lenguajes como C#, Visual Basic… Por ejemplo podemos programar para que dada una colisión con un sensor de presencia se cambie el sentido de la marcha decidiendo el sentido.
18. Microsoft Robotics Studio Comunicación : En la RoboCup los agentes se comunican con el arbitro, otros jugadores y el entrenador mediante sonidos. Microsoft también nos proporciona el Speech SDK. Mediante el cual podemos hacer que nuestros programas reconozcan órdenes así como que nos respondan hablando, necesitaremos crear una gramática para determinar que mensajes se van a reconocer. El Lego Mindstorm dispone de un sensor de sonido. Es un robot que se puede simular perfectamente con Microsoft Robotics Studio.
19. Microsoft Robotics Studio En este entorno podemos desarrollar programas que cumplan las tres características de agentes. Todo depende de la pericia del desarrollador. Consideramos que se pueden desarrollar agentes, no todos los programas para robots lo serán, pero si algunos. Como es el caso de los que se desarrollan y simulan para la RoboCup.
20. Conclusiones Hacer un sistema para simulación es muy complicado si se tienen en cuenta todos los factores que afectan en realidad. Lo realmente importante es el resultado del sistema completo y no un agente, el poder verlo como algo complejo que evoluciona. La RoboCup aporta motivación e ilusión, a la hora de desarrollar, investigar, estudiar y enseñar.
21. Referencias: RoboCup Rescue: http://www.robocuprescue.org/ Borregos RoboCup: http://robocup.mty.itesm.mx/index.php/pages/robocupProject GSI-RoboCup: http://lab.gsi.dit.upm.es/jresearch/administrator/components/com_jresearch/files/publications/20100117_191903.pdf Wikipedia: http://es.wikipedia.org/wiki/Modelo_basado_en_agente RoboCup: http://www.robocup.org/ Escuela Politécnica Superior Ingeniería Informática http://astreo.ii.uam.es/~alfonso/doctorado_modelos_02/4_agentes_s2.pdf Biblioteca virtual El Dorado: http://biblioteca.coqcyt.gob.mx/bvic/Captura/upload/SIMULACION-DE-SISTEMAS-SOCIALES-ANACON.pdf UNED: http://cabrillo.lsi.uned.es:8080/aepia/Uploads/25/238.pdf Universidad Nacional de Colombia: http://pisis.unalmed.edu.co/cursos/material/3004586/1/Clase%2013%20Introd%20Agentes.pdf Microsoft: http://msdn.microsoft.com/es-es/magazine/cc546547.aspx