lunes, 22 de noviembre de 2010

SISTEMA MULTIAGENTE



Ciencia y técnica que trata con los sistemas de inteligencia artificial en red. El bloque fundamental de construcción de un sistema multiagente, como es de esperarse, son los agentes; por lo general son vistos como entidades inteligentes, equivalentes a un proceso del sistema operativo, que existen dentro de cierto contexto o ambiente, y que se pueden comunicar a través de un mecanismo de comunicación inter-proceso, usualmente un sistema de red, utilizando protocolos de comunicación.  

Hay que notar que los agentes no son necesariamente inteligentes. Existen como en todo el resto del dominio de la inteligencia artificial, dos enfoques para construir sistemas multiagentes:
  • El enfoque formal o clásico, que consiste en dotar de los agentes de la mayor inteligencia posible utilizando descripciones formales del problema a resolver y de hacer reposar el funcionamiento del sistema en tales capacidades cognitivas. Usualmente la inteligencia es definida utilizando un sistema formal (por ejemplo, sistemas de inferencia lógica) para la descripción, raciocinio, inferencia de nuevo conocimiento y planificación de acciones a realizar en el medio ambiente.
  • El enfoque constructivista, que persigue la idea de brindarle inteligencia al conjunto de todos los agentes, para que a través de mecanismos ingeniosamente elaborados de interacción, el sistema mismo genere comportamiento inteligente que no necesariamente estaba planeado desde un principio o definido dentro de los agentes mismos (que pueden ser realmente simples). Este tipo de conducta es habitualmente llamado comportamiento emergente.
Desarrollo orientado a agentes
Como casi todo enfoque informático para la solución de problemas, los sistemas multiagentes proponen ayudas metodológicas de ingeniería de software, en este caso metodologías de ingeniería del software orientada a agentes (en inglés AOSE, Agent Oriented Software Engineering) y notaciones. Es decir, artefactos de desarrollo que son específicamente concebidos para crear sistemas basados en agentes.

Sistemas Multiagente Adaptativos

Los sistemas multiagente más atractivos desde el punto de vista de los sistemas de información son aquellos que permitan la integración de información y servicios de forma automática o semi-automática, permitiendo [DAML-S] :

Descubrimiento automático de Servicios Web. Los agentes pueden identificar de forma automática los servicios que necesitan para cumplir sus tareas.
Invocación automática de Servicios Web. Dada únicamente la descripción del servicio, el agente puede invocarlo, en contraste con la situación en la que el sistema ha sido pre-programado para invocar tal o cual servicio.
Composición automática e interoperación. A lo anterior se une la selección, composición e interoperación de varios servicios para desarrollar una tarea compleja.
Los objetivos del planteamiento son posibilitar la adaptación dinámica de un proceso de negocio mediante su implementación con sistemas multiagentes, aprovechando como base los estándares de servicios web y lenguajes de coreografía de servicios.

Los sistemas de este tipo, más que reprogramados según los ciclos de desarrollo software habituales, serán reconfigurados mediante agentes interfaz que permitan a los administradores del sistema la adición de nuevos roles, nuevos servicios y nuevas ontologías y mediante la modificación de los objetivos y las normas organizacionales.

Integración de Servicios

Arquitectura


La adición de nuevos servicios plug-and-play es posible si se establecen directorios de servicios y meta-información que indique no sólo cómo se invocan, sino en qué contexto y con qué fin.   El lenguaje WSDL define el primer aspecto, al definir la estructura y formato de las entradas y las salidas, y el URL del servicio.

Las especificaciones de workflows requieren mayor expresividad que la simple descomposición de tareas y/o de los planes que encontramos en la mayor parte de las metodologías. Otras acuden a notaciones formales para complementar el modelo.

En el ámbito de la especificación de workflows, sin embargo, ya existen lenguajes basados en el cálculo Pi (BPEL4WS, BPML, WSFL, XLANG, XPDL, WS-CDL, WSCI) y de representación de redes de Petri (PNML) que podrían utilizarse para la planificación en sistemas multiagente.


Finalmente, para la especificación de la semántica de los servicios, que permita la composición dinámica y la adaptación, el lenguaje DAML-S permite describir servicios web semánticos [DAML-S].

Los agentes pueden evaluar qué alternativas tienen en el caso del fallo de un servicio, o aprender qué proveedor ofrece una respuesta más rápida. El cambio en el modelo de datos debería ser transparente de cara al proceso, siempre y cuando la información no tenga implicaciones en el control del propio proceso o enriquezca el modelo anterior.

La utilización de ontologías, que deben ser convenidas previamente entre demandante y oferente, permiten la interacción en entornos abiertos y, con el tiempo, existirán repositorios públicos de ontologías de propósito general que facilitarán la integración a nivel de datos. La investigación actual en técnicas de mapeo de ontologías es muy importante en este sentido, pues ayudará a la integración de agentes que utilicen ontologías similares, pero no idénticas.

No hay comentarios:

Publicar un comentario