sistemas multi agentes

26
UNIVERSIDAD DE ORIENTE NÚCLEO DE ANZOÁTEGUI ESCUELA DE INGENIERÍA Y CIENCIAS APLICADAS DEPARTAMENTO DE COMPUTACIÓN Y SISTEMAS INTELIGENCIA ARTIFICIAL Sistemas Multi agente Profesor: Bachilleres: Claudio Cortínez Christian Yánez Frank Rondón Wilmer García Barcelona, Febrero de 2015

Upload: want90x

Post on 21-Dec-2015

14 views

Category:

Documents


4 download

DESCRIPTION

Sistemas Multi Agentes

TRANSCRIPT

Page 1: Sistemas Multi Agentes

UNIVERSIDAD DE ORIENTE

NÚCLEO DE ANZOÁTEGUI

ESCUELA DE INGENIERÍA Y CIENCIAS APLICADAS

DEPARTAMENTO DE COMPUTACIÓN Y SISTEMAS

INTELIGENCIA ARTIFICIAL

Sistemas Multiagente

Profesor: Bachilleres:

Claudio Cortínez Christian YánezFrank RondónWilmer García

Barcelona, Febrero de 2015

Page 2: Sistemas Multi Agentes

Sistemas Multiagentes 2

1. Antecedentes

El estudio de los Sistemas Multiagente se inició hace más de veinticinco añosen el campo de la Inteligencia Artificial Distribuida, pero desde los años 80s se haconvertido en la principal área de investigación en ese campo. La evolución de laInteligencia Artificial se ha apoyado en forma especial en la lógica matemática, lacomputación, la teoría de juegos, los avances en electrónica, la filosofía,sociología, ecología, economía, organización y gerencia, la neurociencia y lalingüística

MARVEL - Sistema experto en tiempo real que maneja la información deVoyager y ayuda a diagnosticar fallos (Schwuttke 1992)NAVLAB - Vehículo autónomo que viaja en forma automática de un extremo aotro de EEUU (Pomerlau 1993)DEEP BLUE - Máquina paralela que juega ajedrez y primera en derrotar a uncampeón mundial (IBM 1997)Sistemas Multiagentes en tareas de automatización tales como de control,planificación y gestión de la empresa (Aguilar 2004)Sistemas de control distribuido inteligente basado en agentes SCDIA (Aguilar2005)

2. Bases teoricas

a) Agente Inteligente:

“Un agente inteligente es un sistema informatico, situado en un entorno, quees capaz de realizar acciones flexibles y autonomas para alcanzar sus objetivos”.[Jenn98].

Segun Russell y Norvig (2004) un agente es cualquier cosa capaz de percibirsu medio ambiente con la ayuda de sensores y actuar en ese medio utilizandoactuadores.

Page 3: Sistemas Multi Agentes

Sistemas Multiagentes 3

Para Wood (2000) los sistemas de computacion que deciden qu e hacer por simismo pueden ser vistos como agentes. Y para Botti y Juli an (2000) un SMA estaformado por un conjunto de entidades inteligentes llamadas agentes quecoordinan sus habilidades para resolver problemas individuales o globales.

Segun Wooldridge y Jennings (1995), un agente es un sistema situado en undeterminado entorno, capaz de actuar de forma aut onoma y razonada en dichoentorno.

Para Weiss (1999), los agentes son simplemente un sistema computacionalcon la capacidad de tomar acciones aut onomas en un medio, para as ı cumplirsus objetivos. Segun Nwana (1996), el t ermino agente se refiere a uncomponente de software y/o hardware que es capaz de actuar para poderejecutar tareas en nombre de un usuario.

Maes (1994), describe a los agentes como sistemas computacionales quehabitan en algun ambiente din amico y complejo, pudiendo sentir ese entorno yactuar en consecuencia, tomando en cuenta el conjunto de objetivos ymotivaciones que intenta conseguir a trav es de sus acciones.

Segun Franklin y Graesser (1996), un agente aut onomo es un sistema situadodentro de un medioambiente que percibe y actua sobre el por un tiempo, enpersecuci on de su propia agenda y afectando as ı lo que sensar a en el futuro.

b) Inteligencia Artificial Distribuida

La inteligencia artificial distribuida puede definirse como el estudio, laconstrucción y la aplicación de los denominados sistemas multiagente (MultiagentSystems, MAS).

c) Sistema Multiagentes

Son sistemas en los que diversos agentes inteligentes interactúan para laconsecución de un conjunto de objetivos o la realización de una serie de tareas.Entonces un sistema en el cual interviene mas de un agente, involucra el conceptode sistemas multiagente, y se define como una asociacion de agentes autonomos,

Page 4: Sistemas Multi Agentes

Sistemas Multiagentes 4

generalmente heterogéneos y potencialmente independientes que trabajan juntospara resolver problemas que van mas allá de sus capacidades individuales.

Este conjunto de agentes esta sometido continuamente a cambios locales.Estos cambios se diseñan mediante reglas de comportamiento, cuyos resultadosestan influenciados por el comportamiento del resto de los agentes.

Segun Botti y Juli an (2000) un SMA esta formado por un conjunto deentidades llamadas agentes que coordinan sus habilidades para resolverproblemas individuales o globales. Un sistema distribuido puede ser visto comoun SMA, en el cual los nodos son sistemas de inteligencia artificial y su conductaproduce un resultado conjuntamente inteligente.

El desarrollo y la investigacion en los SMA estan principalmente orientados ala coordinacion de las actuaciones entre los agentes que los forman, comoconjugar sus conocimientos, objetivos, habilidades y planes para queconjuntamente puedan ayudar a resolver problemas.

Para poder obtener comportamientos coherentes en los sistemas, los agentesindividuales no deben solo ser capaces de compartir su conocimiento sobre losproblemas y soluciones que posean, sino que tambien deben tener en cuenta losprocesos de coordinacion y control global, la consecucion de los objetivosmarcados para el sistema, e incluso la representacion general del mismo, por loque las tareas de coordinacion dentro de un SMA pueden ser complicadas.

3. Arquitectura

La necesidad de desarrollar aplicaciones complejas, compuestas de multitudde subsistemas que interactuen entre sí hace necesaria la utilizacion de SistemasMulti-Agente (SMA), que son sistemas compuestos por un numero mas o menosgrande de agentes que trabajan de forma organizada y coordinada para la gesti´oninteligente de un sistema complejo, integrando los objetivos particulares de cadauno de los subsistemas que lo componen en un objetivo comun.

Los SMA son apropiados en muchos casos: en problemas fısicamente

Page 5: Sistemas Multi Agentes

Sistemas Multiagentes 5

distribuidos, cuando la complejidad de la solucion requiere de experienciaheterogenea o cuando el problema esta definido sobre redes de computadores. Enlos ultimos anos, la creciente complejidad de los problemas hace que cada vezsea m´as necesario el uso de arquitecturas basadas en SMA, y son muchas lasaplicaciones basadas en arquitecturas multiagente que diferentes autores handesarrollado y propuesto en la literatura.

Como ocurre con el uso creciente de toda nueva tecnología, surgen doscuestiones a resolver en la aplicabilidad de SMA: la interoperabilidad, que es lafacilidad de conexion e integracion de SMA, y la apertura, o posibilidad deextension. Por esta razon es importante disponer de estandares de desarrollo, yen el ámbito de los SMA el est´andar adoptado por la mayor´ıa de entornos dedesarrollo en la actualidad es FIPA (Foundation for Intelligent Physical Agents).

FIPA nacio en 1996 como una asociaci´on para el desarrollo de est´andaresrelativos a tecnología de agentes software. Su principal característica, y la quequiza lo ha convertido en el estandar mas extendido, es que unicamente define elcomportamiento externo (interfaz) del sistema, dejando a cargo del equipo dedesarrollo toda decision de diseño.

Algunos de los principales logros alcanzados con FIPA son los siguientes:

Un conjunto de especificaciones est´andares que apoyan la comunicacionentre agentes, y una serie de servicios intermedios clave (middleware).

Una arquitectura abstracta con una vista completa de los estandaresFIPA2000.

Un lenguaje de comunicacion entre agentes (FIPA-ACL), adem´as de unaseleccion de lenguajes de contenido, como FIPA-SL.

Un conjunto de protocolos de interaccion, que abarcan desde un simple pasode mensajes hasta transacciones mas complejas.

Varias herramientas y librerías para el desarrollo de SMA bajo este estandar,siendo JADE una de las mas utilizadas y la elegida para el desarrollo de

Page 6: Sistemas Multi Agentes

Sistemas Multiagentes 6

nuestro sistema.

Especificacion UML extendida, específica para el desarrollo de agentes: AUML.

Caracteristicas De Los Sistemas Multiagentes.

La inteligencia de un SMA puede obtenerse de dos maneras. En primer lugar,

mediante el uso de agentes inteligentes para el sistema. En segundolugar, usando agentes reactivos (estímulo-respuesta o percepcion-accion). Eneste caso, la inteligencia colectiva del sistema es un fenomeno(comportamiento) emergente.

Estos sistemas considerados como un todo, exhiben característicasparticulares, que se presentan a continuacion (Quinteroet al., 2003):

• Organizacion social

La organizacion social define la forma como el grupo de agentes estaconstituidoven un instante dado y esta relacionada con la estructura de loscomponentes funcionales del sistema, sus caracterısticas, sus responsabilidades,sus necesidades y la manera como realizan sus comunicaciones.

Se puede considerar que una sociedad de agentes esta constituida por treselementos: un grupo de agentes, un conjunto de tareas a realizar y un conjunto derecursos.

De acuerdo al tipo de comunicacion, al modo de cooperacion entre agentes ya su tipo, se pueden distinguir tres tipos de organizaciones:

– Estructura centralizada. Existe un agente que controla la interacci on de

los dem as agentes del sistema porque tiene la informaci on o la funcionalidad

para hacerlo.

– Estructura horizontal. Este tipo de configuraci on existe cuando todos los

Page 7: Sistemas Multi Agentes

Sistemas Multiagentes 7

agentes que integran un sistema est an al mismo nivel, es decir, no hay ningunagente que haga las veces de maestro o supervisor, ni tampoco agentes es-

clavos.

– Estructura jer arquica. En esta configuraci on los agentes trabajan en

diferentes niveles de abstracci on de un problema. En un mismo nivel se es-

tablece una configuraci on horizontal, si hay m as de un agente. Para resolver

un problema cada agente divide el problema en subproblemas que el puede

resolver, subproblemas que puede resolver con la cooperaci on de los agentes

que est an al mismo nivel y subproblemas que sabe que los agentes de niveles

inferiores de la jerarqu ıa pueden resolver.

– Estructura “ad hoc”. Esta configuracion puede ser una mezcla de las tres

anteriores. Se caracteriza porque la dinamicidad de la estructura esta regida

por el ajuste mutuo entre los pequeños grupos de agentes en el sistema.

• Cooperacion

En un SMA existen dos tipos de tareas que deben ser realizadas: las tareaslocales y las tareas globales. Las tareas locales son las tareas relacionadas conlos intereses individuales de cada agente y las tareas globales son las tareasrelacionadas con los intereses globales del sistema. Las tareas globales sondescompuestas en subtareas para que cada una de ellas sea abordada por unagente de acuerdo a sus habilidades. Luego se integran los resultados para llegara la solución global.

Para que los agentes puedan cooperar de manera eficiente, cada uno de ellosdebe tener ciertas características:

– Tener un modelo bien definido del entorno, que le permite localizar a los

Page 8: Sistemas Multi Agentes

Sistemas Multiagentes 8

dem as agentes, saber como comunicarse con ellos y que tareas pueden rea-

lizar.

– Poder integrar informacion de otros agentes con la suya, para formar con-

ceptos globales o conocimiento conformado por varios agentes.

– Poder interrumpir un plan que se est e llevando a cabo para ayudar oatender a otros agentes para que puedan cooperar entre sí.

• Coordinacion

La coordinacion entre un grupo de agentes les permite considerar todas lastareas a realizar y tener cuidado de no ejecutar acciones indeseables. Estasacciones pueden ser, que los agentes no generen y comuniquen subsolucionesque lleven al progreso en la soluci on de un problema, que los agentes generen ycomuniquen resultados redundantes, o que surja una distribución inapropiada dela carga de trabajo entre los agentes.

Hay varios modelos de coordinación de acciones entre agentes, de los cualesse destacan dos:

– Coordinacion global. Cuando el SMA determina y planifica globalmente

las acciones de los diferentes agentes.

– Coordinacion individual. Cuando el SMA le da completa autonom ıa a

los agentes para que decidan qu e hacer e intenten resolver localmente los

conflictos que detecten con otros agentes.

• Negociacion

Para que los mecanismos de cooperación y coordinación sean exitosos en un

sistema de agentes, debe existir un mecanismo adicional, por medio del cual

Page 9: Sistemas Multi Agentes

Sistemas Multiagentes 9

los integrantes de un sistema se puedan poner de acuerdo cuando cada agente

defiende sus propios intereses, llev andolos a una situaci on que los beneficie atodos teniendo en cuenta el punto de vista de cada uno. Este mecanismo esllamado negociacion.

Los procesos de negociaci on tienen como resultado la modificación oconfirmacion de las creencias de cada agente involucrado, en lo relacionado conlos demás agentes y con el mundo en el que se desenvuelve.

La negociacion se puede mirar bajo una perspectiva racional, la cual describela negociacion como un proceso de seis pasos:

– Definir el problema

– Identificar aspectos

– Ponderar criterios

– Generar alternativas

– Evaluar alternativas

– Formular solucion

Para llevar a cabo el proceso de negociacion se toman en cuenta lassiguientes dos reglas:

– Consenso o unanimidad. Una decisi on es tomada cuando todos los miem-

bros de un grupo est an de acuerdo con dicha decisión. Es posible que se

llegue a esto después de negociar varias veces la decisión.

– Mayoría. Una decisi on es tomada cuando la mayor ıa de los miembros deun grupo esta de acuerdo con dicha decisión. La definición de mayoría depende

del sistema y se puede relacionar con el número de votos a favor de una

Page 10: Sistemas Multi Agentes

Sistemas Multiagentes 10

decision.

• Control

El control se relaciona directamente con determinar cúales son las subtareasmas importantes a realizar en un momento dado, determinar qu e contexto debenser usados en la solución de esas actividades, as ı como estimar el tiempo degeneración de dicha solución y evaluar si el tratamiento de un problema ha sidogenerado.

El control puede ser aplicado bajo dos tendencias: control global y control local.

El control global se relaciona con tomar decisiones bas andose en datosobtenidos a partir de la informaci on de todos los agentes del sistema; el controllocal se relaciona con tomar decisiones basándose sólo en datos locales.

4. Modelos De Sistemas Multiagentes

Los modelos de los SMA (sistemas multiagentes) son a su vez, metodologías quepermiten el desempeño óptimo de los agentes en el campo de trabajo o cualquier otraaplicación que se vayan a utilizar. Los modelos de SMA son los siguientes:

BDI: Las arquitecturas BDI se inspiran en un modelo cognitivo del ser humano .Losagentes utilizan un modelo del mundo, una representación de cómo se les muestra elentorno. El agente recibe estímulos a través de sensores ubicados en el mundo. Estosestímulos modifican el modelo del mundo que tiene el agente (representado por unconjunto de creencias). Para guiar sus acciones, el agente tiene deseos .Un deseo es unestado que el agente quiere alcanzar a través de intenciones. Éstas son accionesespeciales que pueden abortarse debido a cambios en el modelo del mundo.

Para especificar el sistema de agentes, se emplean un conjunto de modelos queoperan a dos niveles de abstracción: externo e interno. Primero, desde un punto de vistaexterno, un sistema se modela como una jerarquía de herencia de clases de agentes, dela que los agentes individuales son instancias. Las clases de agente se caracterizan porsu propósito, sus responsabilidades, los servicios que ejecutan, la información acerca delmundo que necesitan y las interacciones externas. Segundo, desde un punto de vista

Page 11: Sistemas Multi Agentes

Sistemas Multiagentes 11

interno, se emplean un conjunto de modelos (modelos internos) que permiten imponeruna estructura sobre el estado de información y motivación de los agentes y lasestructuras de control que determinan su comportamiento (creencias, objetivos y planesen este caso).

Además, sobre la arquitectura que soporte estos modelos se imponen variasrestricciones: que asegure que los eventos se responden en su momento, que lascreencias se mantengan consistentemente, y que la selección de planes y ejecución sedesarrolle de manera que refleje ciertas nociones de racionalidad.

Se trabaja con 2 niveles de abstracción:

Un punto de vista externo:

o El sistema es modelado como una jerarquía de clases de agente, losagentes individuales son instancias.

o Las clases de agentes están caracterizadas por su propósito, susresponsabilidades, los servicios que desarrollan, la información acerca delmundo que requieran y las interacciones externas.

Desde el punto de vista interno:o Conjunto de modelos los cuales permiten estructurar el estado de

motivación y de información de los agentes y las estructuras de control quedeterminan sus conductas.

GAIA: GAIA es una metodología para el diseño de sistemas basados en agentescuyo objetivo es obtener un sistema que maximice alguna medida de calidad global (no sellega a detallar cual). GAIA pretende ayudar al analista a ir sistemáticamente desde unosrequisitos iniciales a un diseño que, según los autores, esté lo suficientemente detalladocomo para ser implementado directamente.

Page 12: Sistemas Multi Agentes

Sistemas Multiagentes 12

En GAIA se entiende que el objetivo del análisis es conseguir comprender elsistema y su estructura sin referenciar ningún aspecto de implementación. Esto seconsigue a través de la idea de organización. Una organización en GAIA es una colecciónde roles, los cuales mantienen ciertas relaciones con otros y toman parte en patronesinstitucionalizados de interacción con otros roles. Los roles agrupan cuatro aspectos:responsabilidades del agente, los recursos que se le permite utilizar, las tareas asociadase interacciones.

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

Se centra en la idea de que la construcción de sistemas basados en agente es unproceso de diseño organizacional. Los principales conceptos que aparecen en lametodología se dividen en dos: abstractos y concretos. Las entidades abstractas sonaquellas que son empleadas durante el análisis para la conceptualización del sistema.Las entidades concretas son empleadas en el proceso de diseño.

Message: Message es la metodología más reciente de las estudiadas y por tantotrata de integrar resultados de las anteriores. Propone el análisis y diseño del SMA desdecinco puntos de vista para capturar los diferentes aspectos de un SMA: el deOrganización, que captura la estructura global del sistema; el de Tareas/Objetivos, quedetermina qué hace el SMA y sus agentes constituyentes en términos de los objetivos quepersiguen y las tareas implicadas en el proceso; el de Agente, que contiene unadescripción detallada y extensa de cada agente y rol dentro del SMA; el de Dominio queactúa como repositorio de información (para entidades y relaciones) concernientes aldominio del problema; y el de Interacción, que trata las interacciones a distintos niveles deabstracción.

Estos elementos están presentes en los dos modelos fundamentales que proponeMESSAGE: el modelo de análisis y el modelo de diseño. El modelo de análisis se limita agenerar modelos a partir de los meta-modelos. El modelo de diseño no llegó aconcretarse completamente. Esto significa que las entidades del análisis se deberíantraducir a subsistemas, interfaces, clases, signaturas de operaciones, algoritmos, objetos,diagramas de objetos y otros.

Page 13: Sistemas Multi Agentes

Sistemas Multiagentes 13

Fase de análisis: Su propósito es producir un conjunto de modelos en los queestén de acuerdo el analista y el usuario que incorporan diferentes modelos. Se realizapor refinamientos:

Nivel 1: definir el sistema con respecto su entorno. El sistema es visto como unconjunto de organizaciones que interactúan con recursos, actores u otrasorganizaciones.

Nivel 2: la estructura y conducta de entidades como organización, agentes, tareas,objetivos son definidas

Niveles adicionales pueden ser definidos para analizar aspectos específicos del sistema.

5. Estructura De Un Agente

Un agente está compuesto por los siguientes componentes:

Agente= arquitectura + programa

Page 14: Sistemas Multi Agentes

Sistemas Multiagentes 14

Elementos básicos que se consideran en la elección de los tipos de agente:

Antes de proceder al diseño de un programa de agente es necesario contar conuna idea bastante precisa de las posibles percepciones y acciones que intervendrán, quémetas o medidas de desempeño se supone lleve a cabo el agente, así como del tipo deambiente en que tal agente operará, para tal efecto, denominamos a la matriz PAMA(percepciones, acciones, metas y ambientes).

Tipos de agentes:

Agentes de reflejo simple: Este tipo de agente no contiene internamente estadosy sus procesos o acciones que realiza son respuestas a la entrada de percepciones, aesta conexión entre percepciones y acciones se las denomina reglas de condición-acción.Ejemplo: Si el carro de adelante está frenando entonces empiece a frenar.

Page 15: Sistemas Multi Agentes

Sistemas Multiagentes 15

Agentes bien informados de todo lo que pasa: Este tipo de agente guardaestados internos lo que nos sirve sin consideración para ejecutar una acción. Lossensores no nos pueden informar a la vez de todos los estados que maneja nuestroambiente, es por este caso que el agente necesita actualizar algo de información en elestado interno. Esto le permite discernir que entre estados del ambiente que generan lamisma entrada de percepciones pero, sin embargo; para cada uno de los estados senecesitan acciones distintas.

Page 16: Sistemas Multi Agentes

Sistemas Multiagentes 16

Agentes basados en metas: Además de los estados, los agentes necesitan ciertotipo de información sobre sus metas Estas metas van a detallar las situaciones a las quese desea llegar de este modo, el programa de agente puede combinar las metas con lainformación de los resultados (acciones) que emprenda y de esta manera poder elegiraquellas acciones que permitan alcanzar la meta.

Agentes basados en utilidad: Las metas por sí solas me garantizan la obtenciónde una conducta de alta calidad. En mi programa de agente se podría tener un conjuntode metas pero la obtención de éstas no me garantizan distinciones entre estados felices einfelices, mediante una medida de desempeño se podría establecer una comparaciónentre los diversos estados del mundo (ambientes) para poder encontrar el estado defelicidad para el agente. Este estado ofrecerá una mayor utilidad al agente.

Page 17: Sistemas Multi Agentes

Sistemas Multiagentes 17

6. Clasificación De Los Agentes

Se distinguen tres arquitecturas diferentes que se clasifican según el modelo derazonamiento que utilizan.

Deliveradas. Reactivas. Hibridas.

Arquitecturas deliberativas: Una arquitectura deliberativa es aquella en la que elcomportamiento y conocimiento de los agentes están explícitamente representadosmediante un modelo simbólico. El modelo simbólico consta generalmente de un conjuntode símbolos físicos, es decir un conjunto físicamente realizable de entidades y estructuras.Además de esto en la arquitectura deliberativa las decisiones de los agentes son hechasmediante razonamiento lógico o seudo lógico.

Para construir una arquitectura deliberativa se deben solucionar los siguientes dosproblemas.

Trasladar el mundo real a una acertada y suficiente descripción simbólica. La forma en la que se representará simbólicamente la información de las entidades

y procesos complejos del mundo real, y la manera de conseguir que los agentesrazonen con esta información.

Un ejemplo de agentes que se pueden desarrollar con la arquitectura deliberativa,son los agentes intencionales en los cuales se define una planificación teniendo en cuentasus creencias y deseos. La arquitectura BDI es una de las arquitecturas más utilizada ennuestros días, en ella se definen los deseos, creencia e intenciones de los agentes.

Arquitecturas reactivas: Una arquitectura reactiva es aquella que no incluyealguna clase central de modelo simbólico del mundo y no usa un razonamiento simbólicocomplejo. Las acciones que toman sus entidades se basan en una asignación de lecturadel medio ambiente con una operación a efectuar. Esta clase de arquitectura también esllamada alternativa, ya que surgió como una opción a las arquitecturas deliberativas que

Page 18: Sistemas Multi Agentes

Sistemas Multiagentes 18

presentan problemas que en ocasiones no se pueden solucionar y además se aleja de larepresentación del conocimiento mediante un modelo simbólico.

Arquitecturas Híbridas: Los investigadores sugieren que ninguna de las dosarquitecturas vistas anteriormente es del todo apropiada para la construcción de agentes,por eso se plantean soluciones de arquitecturas híbridas en la cual se integran los dosmétodos (deliberativa y reactiva).

Una propuesta de tal arquitectura es la construcción en base a dos subsistemas:uno deliberativo en el cual los planes desarrollados y las decisiones hechas seanplanteadas por un conjunto de símbolos y uno reactivo el cual tenga la capacidad dereaccionar ante eventos del entorno sin emplear razonamiento complejo. Esta clase demetodología se puede desarrollar en capas en la que una o más capas pueden teneracceso a los datos suministrados por el entorno y una o más capas pueden efectuaracciones en el entorno. A continuación se presentan dos clases en la que esta propuestade arquitectura híbrida se puede desarrollar.

Horizontal: Todas las capas tienen acceso a los datos del entorno y a realizaracciones en el entorno.

Vertical: Una capa tiene accesos a los datos del entorno y a realizar acciones en elentorno.

En este caso de arquitectura en capas, el correcto comportamiento del agenteviene dado por la interacción entre los diferentes niveles y en el nivel de información decada capa.

7. Frameworks

Si bien sistemas multiagente son a menudo creados desde cero porinvestigadores y desarrolladores, algunos frameworks han surgido aplicandoestándares comunes (tales como las plataformas de sistemas de agentes ylenguajes de comunicación de FIPA). Estos frameworks ahorran tiempo a losdesarrolladores y también ayudan en la estandarización del desarrollo de SMA’s.

Desarrollo orientado a agentes

Como casi todo enfoque informático para la solución de problemas, lossistemas multiagentes proponen ayudas metodológicas de ingeniería de software,

Page 19: Sistemas Multi Agentes

Sistemas Multiagentes 19

en este caso metodologías de ingeniería del software orientada a agentes (eninglés AOSE, Agent Oriented Software Engineering) y notaciones. Es decir,artefactos de desarrollo que son específicamente concebidos para crear sistemasbasados en agentes.

Ejemplos de metodologías y notaciones de ingeniería de software orientadaa agentes, son:

Vocales (Voyelles) de Yves Demazeau es una de las primeras propuestasen el área, y considera la concepción de sistemas multiagentes desdevarios puntos de vista, correspondientes a las vocales: Agente, Entorno,Interacciones, y Organización.

GAIA de Michael Wooldridge y Nick Jennings de la Univ. de Southampton,propone cómo realizar un análisis basado en roles del sistema multi-agente.

MASE de Scott A. Deloach propone agentes como extensiones de objetos yproporciona la herramienta AgentTool para análisis, diseño eimplementación.

AgentUML de James Odell, propone una notación, extendiendo UML, paraespecificar protocolos de comunicación entre agentes.

MADKiT es una herramienta de desarrollo, propuesta por Jacques Ferber,basada en el paradigma Agente-Role-Organización de la metodologíaAalaadin.

ADELFE del grupo IRIT de la Universidad de Toulouse, trata especialmentelos temas de cooperación entre agentes.

INGENIAS del grupo GRASIA de la UCM, extiende la metodologíaMESSAGE y proporciona un conjunto de herramientas para modelar ygenerar código de sistemas multiagente.

Mas-CommonKADS de Carlos Iglesias en la UPM extiende la metodologíaCommonKADS, para sistemas expertos, a agentes, utilizandoestructuración orientada a objetos y lenguajes de especificación deprotocolos como SDL.

SemanticAgent del grupo LIRIS de la Universidad de Lyon. Basada en elSWRL.

NetLogo es una plataforma orientada a los sistemas de multiagente,parmodelar complejidad, desarrollado por el CCL.

Page 20: Sistemas Multi Agentes

Sistemas Multiagentes 20

8. Aplicaciones en el mundo real

Los sistemas multiagente son aplicados en el mundo real a aplicacionesgráficas como juegos de ordenador. Los sistemas de agente se han utilizado enpelículas. También se utilizan para sistemas de defensa coordinados. Otrasaplicaciones incluyen el transporte, la logística, los gráficos, sistemas deinformación geográfica, diagnóstico, así como en muchos otros campos. Es unatecnología ampliamente defendida para su uso en tecnologías de redes y móviles,para lograr el equilibrio de carga automático y dinámico, alta escalabilidad, y redesauto-sanadas.

9. Comunicación entre agentes

Es la intención de intercambiar información a través de la producción ypercepción de signos en un sistema compartido de signos convencionales.

• Comunicación entre agentes– Percepción: Recibir mensajes– Acción: Enviar mensajes

• La comunicación entre agentes permite sincronizar acciones, enviar yrecibir conocimiento, resolver conflictos en la resolución de una tarea, etc.

• La comunicación permite a los agentes coordinar acciones ycomportamientos para dar lugar a sistemas coherentes, capaces de conseguir lasmetas propias de los agentes o globales del sistema.

• Los agentes que cooperan en la realización de tareas tienen uncomportamiento social

– Los agentes intercambian conocimiento: además de datos, un mensajetiene asociado un contenido semántico.

– Los agentes realizan “actos de comunicación”: Un agente influye en elconocimiento y acciones de otros agentes a través de un acto de comunicación.

10. Lenguaje de comunicación entre agentes

Page 21: Sistemas Multi Agentes

Sistemas Multiagentes 21

KQML (Knowledge Query and Manipulation Language)

Es un lenguaje y protocolo para la comunicación entre los agentes de software ysistemas basados en conocimiento. Fue desarrollado en la década de 1990 esparte DARPA knowledge Sharing Effort , que tenía por objeto el desarrollo detécnicas para la construcción de grandes bases de conocimientos a gran escalaque son compartibles y reutilizables. Si bien originalmente concebido como unainterfaz para sistemas basados en el conocimiento, pronto fue reutilizado comoidioma de comunicación de agentes.

El trabajo en KQML fue dirigido por Tim Finín de la Universidad de Maryland,Baltimore County y Jay Weber de EI Tech y las contribuciones de muchosinvestigadores involucrados.

El formato del mensaje KQML y el protocolo puede utilizarse para interactuar conun sistema inteligente, ya sea por un programa de aplicación, o por otro sistemainteligente. "KQML de performativos" son operaciones que los agentes realizanunos a otros los conocimientos y las tiendas de meta. Interacciones de mayor nivel,tales como redes de contrato y la negociación se construyen utilizando estos."KQML facilitadores de la comunicación" coordinar las interacciones de los agentesde otro tipo para apoyar el intercambio de conocimientos.

Los sistemas de prototipo experimental de apoyo de ingeniería concurrente, eldiseño inteligente, inteligente planificación y programación.

ACL (Lenguaje de Comandos de Auditoria)

Es una aplicación de análisis de datos que brinda una eficiente combinación deacceso a los datos, análisis y elaboración integrada de reportes. ACL lee ycompara los datos permitiendo que los datos queden intactos en su origenlogrando una completa integridad y calidad de datos. ACL le permite visualizar alinstante la información sobre las transacciones fundamentales parasuorganización.ACL es un producto muy poderoso y fácil de usar. Permiteconvertir en minutos los datos en información significativa para proteger y ayudar aalcanzar los objetivos del negocio. También agrega valor a la organización alapoyar el cumplimiento de normas internas y regulaciones externas.

Page 22: Sistemas Multi Agentes

Sistemas Multiagentes 22

TESIS ULA

Sistemas multiagentes para la planificación y manejo de los factoresde producción en automatizaciónTesis realizada por: Rivas, Francklin y Cerrada, MarielaCEMISID, EISULA, Facultad de Ingeniería. ULAMérida, 5101-Venezuela

En este trabajo se propone un marco de referencia para tareas deplanificación y manejo de los factores de producción en automatización.Después, dicho marco es modelado usando agentes, para lo cual se usa lametodología de especificación de agentes MASINA. Dicho modelo basadoen agentes tiene características propias de estos sistemas, tales comoautonomía y capacidades inteligentes en sus componentes, distribución defunciones y emergencia, entre otras.

EMPRESACaracterizador

del sistemaGenerar Plan Ejecutar Plan

PROCESO

Page 23: Sistemas Multi Agentes

Sistemas Multiagentes 23

Diseño de una arquitectura de automatización industrial basada en sistemasmulti-agentes

Realizado por: C. Bravo, J. Aguilar, F. RivasPostgrado en Ingeniería de Control y AutomatizaciónUniversidad de los Andes

Los nuevos paradigmas de la automatización industrial tienden a la distribución dela inteligencia entre los componentes de la cadena productiva y hacia laintegración de los diversos sistemas y aplicaciones existentes en las empresas, enla búsqueda de mejorar los procesos y de disponer de información de tiempo realque permita tomar decisiones acertadas y bien informadas. Este trabajo proponeuna arquitectura de automatización industrial basada en sistemas multiagentes, yhace uso del marco de referencia SCDIA como base para dicha arquitectura.

Page 24: Sistemas Multi Agentes

Sistemas Multiagentes 24

Diagrama funcional del primer nivel de abstracción

Diagrama funcional del segundo nivel de abstracción

Diagrama Funcional del primer nivel de abstracción

Page 25: Sistemas Multi Agentes

Sistemas Multiagentes 25

Diagrama funcional del segundo nivel de abstracción

Page 26: Sistemas Multi Agentes

Sistemas Multiagentes 26

Diagrama funcional del Sistema Multi-Agente