Jade
Para
desarrollar con Agentes Inteligentes, es necesario un ambiente de trabajo, para
java, el mejor es Jade. Jade (Jave Agent Development Environment) es un
ambiente robusto basado en el estandar FIPA para ejecutar systemas de agentes
distribuidos. Fue desarrollado en Italia conjuntamente por el CSELT (Centro
Studi e Laboratori Telecommunicazioni) y el Computer Engineering Group de la
Universidad de Parma. El sitio oficial de JADE es http://jade.cselt.it/ .
Características de JADE Java Agent Development Framework
- Puede ser visto como un
middleware.
- Proporciona los servicios
mas básicos.
- Está basado en
comunicaciones Peer to Peer.
- Modelo de programación
asíncrono.
- Comunicación entre los agentes
en la misma o en diversas plataformas.
- Movilidad, seguridad, y
otras utilidades.
Características de su Arquitectura Distribuida
- Múltiples Servidores
- Múltiples Procesos
- Múltiples “Contenedores de
Agentes”
- Contenedor para Agentes
- Un proceso Java por contenedor
- Transparente a los agentes
- Trabajan por medio de JAVA
RM
SPADE
SPADE (del inglés "Smart Python multi-Agent
Development Environment") es una plataforma libre de sistemas multi-agente
desarrollada en Python y basada en la tecnología de mensajería instantánea XMPP. Algunas de las características más
notables de la plataforma SPADE son: soporte de organizaciones virtuales,
notificación de presencia, compatible con FIPA e independencia del lenguaje y la
plataforma.
SPADE es una plataforma de sistemas multi-agente
desarrollada en 2005 en la Universidad Politécnica de Valencia. La
plataforma nació como una prueba de concepto para probar la tecnología de la
mensajería instantánea como protocolo de transporte para los agentes inteligentes. Desde
ese momento el proyecto ha seguido creciendo y añadiendo nuevas características
aprovechando la flexibilidad del protocolo de mensajería instantánea basado en
XML y la
cantidad de extensiones desarrolladas para el mismo que son aprovechables
dentro del marco de los sistemas multi-agente. La
plataforma SPADE está basada en un conjunto de estándares, siendo los más
destacables FIPA y XMPP/Jabber.
Las principales características de la plataforma
SPADE son:
- Soporte del
estándar FIPA mediante el protocolo de mensajería instantánea XMPP (Agentes AMS y DF incluídos)
- Notificación de
presencia entre agentes.
- Organizaciones
Virtuales basadas en el protocolo de multi-conferencia MUC.
- Comunicación P2P entre agentes.
- Invocación remota
de servicios entre agentes usando el estándar XML-RPC.
- Procesadores de
lenguajes de contenido en SL0 y RDF.
- Modelo de agente BDI basado en Conocimiento, Deseos e Intenciones.
- Modelo de
comportamientos: Cíclicos, Periódicos, Timeout, una ejecución, máquina de
estados finita y basado en eventos.
- Soporte de
comunicación con otras plataformas mediante diversos protocolos de transporte: JADE (via HTTP o XMPP) y SIMBA.
- Publicación y
subscripción de eventos mediante el estándar PubSub.
- Interfaz gráfica
basada en web.
MADKit
MADKit es una
plataforma multiagente para desarrollar y ejecutar aplicaciones basadas en un
paradigma orientado a la organización. Estos paradigmas multiagente utilizan
agentes, grupos y roles como los puntos bases para construir aplicaciones
complejas. MADKit no fuerza ninguna consideración acerca de la estructura
interna de los agentes, de esta manera permite a los desarrolladores
implementar libremente sus propias arquitecturas de agentes.
MADKit es también
una plataforma distribuida que permite el desarrollo de eficientes aplicaciones
distribuidas. Para los programadores, todas las consideraciones acerca de
componentes distribuidos básicos tales como “sockets” y “ports”, son
totalmente transparentes. Una aplicación desarrollada en una manera multiagente
puede ser ejecutada de una manera distribuida sin cambiar ninguna línea de
código. Los mecanismos de distribución de MADKit no utilizan las técnicas
bastante lentas de RMI o CORBA de acceso remoto, de esta manera permite un modo
eficiente de comunicación.
MADKit está construido
alrededor del concepto de micro-kernel y agentificación de servicios.
El kernel de MADKit
es más bien pequeño, pero los agentes ofrecen los servicios importantes que se
pueden necesitar para las aplicaciones. Distribución y pasaje remoto de
mensajes, monitoreo y observación de agentes, edición, etcétera, son todas
realizadas por agentes. MadKit provee un conjunto de “contenedores”, esto es
entornos de ejecución para correr aplicaciones, con el objetivo de que MadKit
trabaje en diferentes situaciones: como un entorno de desarrollo, pero también
como una herramienta embebida para aplicaciones.
RoboCup Soccer League Simulation
Sin
la necesidad
de mantener ningún hardware robot, el enfoque de la liga de simulación de RoboCup consta de inteligencia
artificial y la estrategia de equipo.
Liga Simulación 2D
En la liga de
simulación 2D, dos equipos de
once programas de software autónomas
(denominados agentes) cada juego de
fútbol en un estadio virtual bidimensional fútbol representado por un servidor central, llamado SoccerServer. Este servidor sabe todo sobre el juego, es decir, la posición actual
de todos los jugadores y el balón, la física de las y así sucesivamente. Luego, el juego se basa en la comunicación entre el servidor y cada agente. Por un lado cada jugador recibe la entrada relativa y ruidoso de sus sensores
virtuales (visual, acústica y física)
y puede por otro lado realizar algunos comandos básicos (como corriendo, girando o
patadas) con el fin de influir en su entorno.
El gran desafío en la Liga de simulación es llegar a la conclusión de todos los estados posibles del mundo (derivadas de la entrada del sensor mediante el cálculo de
una vista sobre el mundo como absoluto y libre de ruido como sea posible) a la
mejor acción posible para ejecutar.
Como un juego se
divide en 6000 ciclos de esta tarea ha de realizarse en la ranura de tiempo de
100 ms (la longitud de cada ciclo). Más información y el software SoccerServer
pueden acceder a través http://sserver.wiki.sourceforge.net
Liga de simulación 3D
El concurso de simulación en 3D aumenta el realismo del entorno simulado utilizado en las ligas de simulación de otros añadiendo una dimensión
extra y la física más complejas.
En sus comienzos, el modelo de robot
sólo disponible era un agente esférica. En
2006, un modelo simple de la
Fujitsu-2 HOAP robot
se puso a disposición, siendo la primera
vez que los modelos humanoides
fueron utilizados en la liga de
simulación. Esto cambió el
objetivo del concurso de simulación en
3D del diseño de los
comportamientos estratégicos de jugar
en el fútbol para
el control de nivel bajo de robots humanoides
y la creación de conductas básicas
como caminar, patadas, giros y de pie,
entre otros.
En 2008, la introducción de un modelo de
robot Nao a la
simulación dio otra perspectiva
a la liga. El verdadero robot Nao de Aldebaran Robotics ha sido el robot oficial de la
Liga Estándar Plataforma desde el
año 2008, y utilizando el mismo modelo para los concursos de simulación representa una gran oportunidad para los
investigadores que deseen poner a
prueba sus algoritmos e ideas
antes de probarlos en los robots reales. El interés por
el concurso de simulación en 3D está
creciendo rápidamente y la investigación está lentamente volviendo a la concepción y ejecución de alto nivel multi-agente comportamientos basados en
sólidas arquitecturas de bajo nivel de comportamiento de los equipos de robots humanoides realistas. Más información y el software SimSpark
servidor puede acceder a través http://simspark.sourceforge.net/wiki/index.php/Main_Page