Metodologías Para El Desarrollo De Sistemas Multi-agente
Enviado por piojapotter • 8 de Abril de 2012 • 6.126 Palabras (25 Páginas) • 527 Visitas
Inteligencia Artificial, Revista Iberoamericana de Inteligencia Artificial. No.18 (2003), pp. 51-63.
ISSN: 1137-3601. © AEPIA (http://www.aepia.dsic.upv.es/).
Metodologías para el desarrollo de sistemas multi-agente
Jorge J. Gómez Sanz
Departamento de Sistemas Informáticos y Programación
Facultad de Informática, Universidad Complutense,
Avda. Complutense s/n
Madrid, 28001
jjgomez@sip.ucm.es
Resumen
Apoyándose en los resultados de la investigación en agentes y Sistemas Multi-Agente, surge una línea de
trabajo cuyo propósito es consolidar la experiencia adquirida en forma de metodologías. Estas metodologías
proporcionan medios para construir Sistemas Multi-Agente de forma disciplinada y repetible. En este trabajo
se presenta un resumen de lo que proponen las metodologías actuales. Ante la imposibilidad de revisar todas y
cada una de las existentes, se ha optado por seleccionar un conjunto significativo cercano a las prácticas de
ingeniería del software. La selección atiende a la presencia de un proceso de desarrollo, el combinar diferentes
vistas para describir el sistema, e incorporar elementos asociados al área de los agentes. Como resultado, se
tienen siete metodologías relevantes. A lo largo del artículo, se estudian las aportaciones de estas metodologías
cara a un desarrollo.
Palabras clave: metodologías, agentes, sistemas multi-agente, ingeniería del software
1 Introducción
En la última década ha cobrado fuerza la hipótesis
de que si los programas que componen los sistemas
distribuidos fueran inteligentes, si pudiesen
reorganizar sus funciones para corregir o tolerar los
fallos y si su coordinación pudiese estructurarse en
términos intuitivos, el diseño y el mantenimiento de
dichos sistemas sería más fácil de elaborar, más
adaptable y más fiable.
En la construcción de estos programas se está
aplicando una tecnología íntimamente relacionada
con la inteligencia artificial. Se trata de los agentes
que, de momento, se entenderán como programas
autónomos e inteligentes. Bajo el punto de vista de
esta tecnología, los sistemas distribuidos pasan a ser
Sistemas Multi-Agente (SMA). Los SMA se
desarrollan sobre middleware1 y proporcionan un
nuevo nivel de abstracción más intuitivo. El diseño
de SMA, generalmente, se aborda pensando en los
agentes como entes con motivación. En lugar de
modelar un sistema con componentes que ejecutan
métodos, el desarrollador tiene que pensar en los
objetivos que los comp onentes deben alcanzar y en
las tareas necesarias para que lo consigan. Al
desarrollar los componentes así, se espera que el
proceso sea más intuitivo ya que esta forma de
modelar y de razonar se halla más cerca del
pensamiento humano que los paradigmas de
programación tradicionales [Bratman 87].
La construcción de SMA integra tecnologías de
distintas áreas de conocimiento: técnicas de
ingeniería del software para estructurar el proceso
de desarrollo; técnicas de inteligencia artificial para
dotar a los programas de capacidad para tratar
situaciones imprevistas y tomar decisiones, y
programación concurrente y distribuida para tratar
la coordinación de tareas ejecutadas en diferentes
máquinas bajo diferentes políticas de planificación.
Debido a esta combinación de tecnologías, el
desarrollo de SMA se complica.
Existen plataformas de desarrollo que dan
soluciones parciales al modelado de
comportamiento y a la coordinación de agentes. El
rango de estas soluciones va desde proporcionar
servicios básicos (gestión de agentes, librerías de
algoritmos, localización de agentes o movilidad),
como JADE [Bellifemine et al. 01], Grasshopper
[Baümer et al. 00] o ABLE [IBM 03], hasta
1 Se denomina middleware a software cuyo cometido
es unir o mediar entre varios programas
aislados
entornos de desarrollo donde se parametrizan
armazones (framework) software, como ZEUS
[Nwana et al. 99] o AgenTool [Wood et al. 00].
Aunque facilitan el proceso, las plataformas de
desarrollo quedan incompletas sin un proceso de
desarrollo de software especializado para agentes
que haga similar la creación de SMA a la
...