Demo Blog

Programación de SMA (Post #4)

por Estévez , etiquetas: , , ,

Metodologías para el desarrollo de sistemas multiagente (parte#2)

ZEUS
ZEUS consta de una herramienta (ver figura 4) y una metodología, de forma similar a agenTool y MaSE.
Desde su aparición, ZEUS se ha convertido en referencia de cómo debe ser una herramienta para el desarrollo de SMA. Sobre todo, por la forma en que combinan los distintos resultados de investigación en agentes (planificación, ontologías, asignación de responsabilidades, relaciones sociales entre agentes) en un sistema ya ejecutable. De hecho, la aplicación genera incluso programas para arrancar el sistema especificado e incluye herramientas de monitorización como el Visor de Sociedad que muestra los agentes existentes y sus relaciones, la Herramienta de Control para ver o modificar remotamente el estado de los agentes y los Generadores de Informes para obtener estadísticas de funcionamiento e informes de actuación de la sociedad de agentes.


La metodología ZEUS propone un desarrollo en cuatro etapas: el análisis del dominio, el diseño de los agentes, la realización de los agentes y el soporte en tiempo de ejecución. Las etapas soportadas por la herramienta son la de realización de los agentes y la de soporte en tiempo de ejecución. Las etapas anteriores se basan en el uso de roles para analizar el dominio y en su asignación a agentes.

Hay poco que comentar acerca de ZEUS. Hasta la aparición de MaSE, ZEUS era herramienta referencia.

Hoy en día se encuentran muchos más artículos referenciando MaSE que ZEUS. Conceptualmente, ZEUS es superior a MaSE. Si bien la primera está más orientada a la aplicación de tecnología de agentes (planificación, definición de ontologías, secuenciación de tareas), la segunda se orienta más a las prácticas de ingeniería convencional.

GAIA
Es una metodología para el diseño de sistemas basados en agentes cuyo objetivo es obtener un sistema que maximice alguna medida de calidad global (no se llega a detallar cuál). GAIA pretende ayudar al analista a ir sistemáticamente desde unos requisitos iniciales a un diseño que, según los autores, esté lo suficientemente detallado como para ser implementado directamente.

Esta metodología sólo busca especificar cómo una sociedad de agentes colabora para alcanzar los objetivos del sistema, y qué se requiere de cada uno para lograr esto último.

La principal crítica que se puede hacer a GAIA es que se queda a un nivel de abstracción demasiado alto. Según los autores, con ello se consigue desacoplar GAIA de las distintas soluciones de implementación de agentes. Sin embargo, la utilidad de este desacoplamiento queda por demostrar. Dado el nivel de abstracción en que se queda es de esperar que el esfuerzo a invertir para pasar de una especificación GAIA hasta su implementación sea alto.

INGENIAS
INGENIAS define un conjunto de meta-modelos (una descripción de alto nivel de qué elementos tiene un modelo) con los que hay que describir el sistema. Los meta-modelos indican qué hace falta para describir: agentes aislados, organizaciones de agentes, el entorno, interacciones entre agentes o roles, tareas y objetivos. Estos metamodelos se construyen mediante un lenguaje de meta-modelado, el GOPRR (Graph, Object, Property, Relationship, and Role).

En la construcción de estos meta-modelos se integran resultados de investigación en forma de entidades y relaciones entre entidades. La instanciación de estos meta-modelos produce diagramas, los modelos, similares a los que se usa en UML, con la diferencia de que estos diagramas se han creado exclusivamente para definir el sistema multi-agente.

La ejecución de actividades para producir modelos se basa en la herramienta INGENIAS IDE (figura 5), una herramienta para modelado visual. Esta herramienta almacena la especificación del sistema utilizando XML.


Desde la especificación en XML, se plantea el procesarla :

  • Para generar código. Genera código rellenando plantillas de código con información de la especificación.
  • Para generar la documentación. De una forma similar a la generación de código, se parte de plantillas de documentación que se completan utilizando información de los modelos.
El proceso de desarrollo que propone INGENIAS es excesivo cuando se trata de desarrollos reducidos. A diferencia de MAS-CommonKADS que dota de procesos de desarrollo adaptados al tamaño del problema, INGENIAS da la impresión de dedicarse exclusivamente a desarrollos de gran tamaño.

INGENIAS dispone de una cantidad ingente de entidades y relaciones. Su uso mediante la herramienta de soporte INGENIAS IDE, se facilita pero se sigue requiriendo que el desarrollador revise la documentación de la tesis para entender qué hace cada entidad y cuál es el propósito de cada relación.
0 comentarios más...

0 comentarios

Publicar un comentario

Buscando algo?

Usa el cuadro de abajo para buscar:

Si aún así no encuentras lo que buscas por favor déjanos un comentario...