Agentes inteligentes: Tipos de plataformas

Habíamos visto que dada la complejidad del diseño de agentes, son sistemas abiertos y cooperativos donde cada agente debe jugar su función se requiere de plataformas de desarrollo que faciliten la programación. Y que existían dos tipos de plataformas: las herramientas o armazones y las genéricas.

Plataformas de herramientas o armazones.
El caso más significativo de las armazones de software es Zeus, que presenta un entorno de desarrollo con el que se programa visualmente el SMA. Las posibilidades de programación a través de este entorno son muy variadas. Entre otros hay que suministrar una ontología: reglas de comportamiento, planes de ejecución de tareas y mensajes a enviar a otros agentes.

Debido a esta versatilidad en su configuración, el diseño con ZEUS se hace tan complejo como programar con lenguajes de agentes. Aunque se facilita el desarrollo de aspectos como la coordinación, quedan pendientes decisiones como qué hay que coordinar y para qué. Por ello, la aportación de una metodología en este caso consistiría en proporcionar un ciclo de desarrollo, actividades y elementos conceptuales que ayudasen al descubrimiento incremental de los elementos requeridos por ZEUS. Un ejemplo, aunque limitado, de metodología para ZEUS se tiene de mano de sus propios desarrolladores [Collis y Ndumu 99], donde se aplica la idea de rol para guiar el descubrimiento de funciones del sistema.

Zeus es un conjunto de herramientas para ayudar en la creación de sistemas de
agentes colaborativos (limitados en competencias y recursos, por lo
que deben compartir sus habilidades con otros para realizar un
problema más complejo)

http://www.labs.bt.com/projects/agents/zeus/index.htm

Es un paquete de clases JAVA, que cuenta con
Agent building software:
• Editores que ayudan al usuario a crear los agentes utilizando los “bloques” o componentes software
• Sigue la metodología propia en 6 etapas:
1. Análisis (identificación de agentes)
2. Definición de agentes (atributos).
3. Organización de agentes.
4. Definición de las tareas de los agentes.
5. Coordinación de agentes (protocolos).
6. Generación automática de código (JAVA)
Agent Component Library.
• Bloques de construcción de agentes.
• Proporciona mecanismos de comunicación
1. Lenguaje de comunicación (ACL, KQML)
2. Mecanismos de paso de mensajes (TPC/IP)
• Gestión y uso de Ontologías.
• Librerías de protocolos.
• Otros.

Zeus es a su vez una herramienta y una metodología…

ABLE (Agent Building and Learning Environment) [IBM 02] aunque también permite el prototipado rápido de SMA, no llega al nivel de ZEUS. ABLE es una herramienta de IBM para la construcción de sistemas de agentes inteligentes donde todos sus elementos, incluso los agentes, se construyen por composición de AbleBeans, una extensión de los JavaBeans1. Son de interés un conjunto de AbleBeans especializados que implementan sistemas de aprendizaje estadísticos (mapas autoorganizativos, redes neuronales, mapas de conexión) y control simbólico (razonamiento por encadenamiento hacia delante y lógica de predicados). ABLE incorpora también un entorno visual de desarrollo donde se interconectan AbleBeans. El interés de esta plataforma es que soluciona visualmente la construcción y comunicación de los agentes.

ABLE no llega a detallar cómo se obtiene la funcionalidad de los agentes y cómo deben actuar en cada situación. La aportación de una metodología a ABLE sería más amplia que en el caso de ZEUS. Se trataría de dar medios para detallar aspectos de control del agente teniendo en cuenta los elementos de control que vienen predefinidos en ABLE. Sería útil, por ejemplo, la idea de casos de uso [Jacobson, Booch y Rumbaugh 00] para identificar conjuntos de funciones a proporcionar por el sistema y escenarios para describir cómo se espera que se realice el proceso de aprendizaje de los agentes.
Entorno: plataformas para el diseño, implementación, pruebas y
ejecución de agentes autónomos y sistemas multiagente.
La mayoría implementan la arquitectura abstracta de la especificación
FIPA (www.fipa.org) y proporcionan servicios o facilidades para la
ejecución de MAS…

Herramientas o armazones:
1. Zeus.
2. ABLE

Plataformas genéricas
Las plataformas de desarrollo más extendidas son JADE [Bellifemine, Poggi y Rimassa 01] y Grasshopper [Breugst y Magedanz 98].

JADE es la implementación oficial del estándar FIPA [FIPA 95], y soporta todos los servicios básicos de infraestructura especificados en FIPA (comunicaciones, movilidad, gestión de agentes y localización de agentes), a los que añade algunas utilidades gráficas para facilitar la administración de las plataformas y la depuración de los mensajes intercambiados por agentes en tiempo de ejecución.

Es un paquete desarrollado en Java que cuenta con
Java Agent DEvelopment framework
Soporta la implementación de MAS (FIPA compliant) :
• Librería de paquetes para programar agentes.
• Herramientas para la depuración y la ejecución de agentes.
Plataforma distribuida para la ejecución de agentes (heterogéneos
como Zeus): middle-ware para MAS
• servicios para agentes: directorios, codificación y transporte de mensajes
• herramientas: monitor remoto de agentes, sniffer agent, dummy agent
Completamente desarrollado en JAVA
Libre distribución bajo licencia LPGL
http://sharon.cselt.it/WWW projects/jade/

Grasshopper es la implementación del estándar MASIF [Baümer et al. 00], que soporta la movilidad de agentes en un entorno distribuido utilizando comunicación y servicios CORBA [OMG 00a]. En JADE y Grasshopper existe una arquitectura básica de agente que hay que utilizar para acceder a los servicios de la plataforma correspondiente.
El diseño de agentes con estas plataformas significa atenerse a unos estándares de comunicación y de gestión de agentes. El resto, como la especificación del control del agente, su inteligencia o las relaciones entre las tareas del sistema, se deja al criterio del desarrollador. La aportación de una metodología a desarrollos basados en este tipo de plataformas consistiría en organizar el proceso de generación del SMA y en proporcionar elementos para el diseñador pueda describir estos aspectos teniendo en cuenta las restricciones de la plataforma destino.

Plataformas genéricas:
1. JADE.
2. Grasshopper.

Acerca de Alejandro

Licenciado en Cibernética Matematica. Trabajo el tema de la Inteligencia Artificial desde 1986. He publicado articulos y ensayos sobre la Cibernetica y las tendencias tecnologicas. También he publicados narraciones de ciencia ficción
Esta entrada fue publicada en Agentes Inteligentes. Guarda el enlace permanente.

Una respuesta a Agentes inteligentes: Tipos de plataformas

  1. Pingback: Kqml | TagHall

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s