Sunteți pe pagina 1din 6

AGENTES Y JADE

Introduccin:
Los agentes pueden ser concepto de estudio de varias reas , como lo son inteligencia artificial, sistemas distribuidos, ingeniera de software, redes y sistemas autnomos entre otras, lo cual hace que su definicin este influenciada segn sea el rea en la cual tengamos nuestro inters[JAS200], nosotros creemos que una definicin apropiada de agente es: Los agentes son simplemente un sistema computacional con la capacidad de tomar acciones autnomas en un medio, para as cumplir sus objetivos.[GW2001] Segn la anterior definicin, encontramos que los agentes como tal estn ligados directamente a su medio , y por lo tanto podrn modificar este medio con la finalidad de cumplir su objetivo (igual que las personas); Tambin, los agentes, en ocasiones tendrn la oportunidad de basar sus decisiones segn criterios mas estructurados, como puede ser informacin histrica o experiencias del agente con el medio, pero vale aclarar que esto no es obligatorio (segn la definicin). Los agentes como tal pueden comunicarse con otros agentes, formando sociedades de agentes, que le sirven al mismo para cumplir sus tareas; al igual que lo hacen las personas los agentes pueden delegar tareas a otros agentes o pueden competir por un recurso, y esto hace que nazca un lenguaje o protocolo con el cual los agentes se puedan comunicar fcilmente y sin ambigedades de definiciones en los conceptos que quieren dar a entender de un agente a otro(a diferencia de las personas). El protocolo que se a definido para la comunicacin entre agentes es el KQML que sinifica Knowledge query and manipulation language.La estructura de este protocolo es[GW2001]: (KQML-performative :sender <palabra> :reciver <palabra> (nombre agente que enva el mensaje) (nombre agente que recibe el mensaje)

:language <palabra> (lenguaje en que se comunican(ejemplo prolog)) :ontology <palabra> :content <expresin> (puede ser vaci si el tipo del mensaje lo define)) ejemplo: (Cancelar :sender Hugo

:reciver Alejx :language prolog :ontology mundo-tesis :content (esta vaci ya que el mismo tipo de mensaje define la accin)).

FIPA (Foundation for intelligent Physical Agents):


Es una organizacin que desarrolla estndares para software de agentes para as permitir que diferentes sistemas de agentes interacten, mas claramente se puede ver una definicin de lo que es FIPA en su misin: la promocin de tecnologas y especificaciones de interoperabilidad que permitan el trabajo interno de sistemas de agentes inteligentes dentro del comercio y la industria. En la siguiente figura podemos ver y aclarar lo que propone FIPA con respecto a la construccin de plataformas de agentes:

En la figura diferenciamos cuatro(4) aspectos importantes en los cuales se debe basar cualquier plataforma de agentes, y estos son[FAMS2002]: AMS(Agent Management System): Es un servicio de paginas blancas, que tiene como funciones principales:

Es el encargado de mantener un directorio de agentes y encargarse del ciclo de vida de un agente. Controla y supervisa el uso de la plataforma. DF(Directory Facilitator):Es un servicio de paginas amarillas. MTS(Message Transport System). Existen en la actualidad muchas plataformas de agentes basadas en las especificaciones de FIPA, pero en este articulo nos vamos a detener a ana lizar la plataforma JADE y BESA. JADE(Java Agent DEvelopment Framework): JADE es un framework de agentes que esta basada en FIPA, y como tal debe tener unos aspectos que debe cumplir toda plataforma de agentes que sea FIPA complaint, y estos son el AMS, DF, agentes y la definicin de un protocolo que permita intercambiar mensajes entre agentes, estos mensajes son comnmente llamados los ACL(agent comunication language) que viene siendo una abstraccin del tipo de mensajes que se definieron atrs como KQML. Como tal una plataforma jade tiene un contenedor principal llamado main en donde residen el AMS y el DF, este contenedor main es el primero que debe arrancar en una plataforma jade y posteriormente pueden empezar otros contenedores con sus respectivos agentes , pero siempre teniendo en cuenta que se deben registrar los agentes al contenedor principal (el main).Esto nos da como resultado un sistema de comunicacin P2P hbrido[FBE2003] tal y como se muestra en la figura X siguiente.

Sistema P2P hbrido Figura X detenindose un poco en este punto se podra pensar que la plataforma jade tiene un punto de falla en el contenedor principal(el main) ya que si este se cae entonces la plataforma toda se vendra al piso, sin embargo los creadores de Jade previeron esto y hicieron que este main, aunque es un(1) agente, puede estar en varias maquinas al mismo tiempo, tal y como lo muestra la siguiente figura[FBE12003]:

En la plataforma del lado izquierdo solo existe un main pero jade da la opcin que puedan existir mas de un main tal y como vemos en la figura del lado derecho, as si por ejemplo el main-container-1 no prestara mas este servicio por cualquier motivo entonces, la plataforma quedara de la siguiente manera [FBE12003]:

Ventajas de JADE [GRI2003]: Es una plataforma probada y sobre la cual se han desarrollado aplicaciones. Se tiene una extensin de jade para dispositivos mviles llamada LEAP, donde aparentemente la extensin de agentes desarrollados para JADE normal es igual para un agente desarrollado en LEAP.

Se tiene un contenedor principal que es donde reside el AMS , con la flexibilidad de tenerlos en forma de cluster para as dar una plataforma que es tolerable a fallos. La comunicacin entre agentes dentro de una misma plataforma puede ser va RMI o por medio de llamados locales, esta complejidad es resuelta por el contenedor que es el que sabe donde se podra encontrar el agente, esto se hace a travs de tcnicas de cache en donde cada contenedor mantiene una tabla (cache)llamada LADP (Local Agent Descriptor Table), mientras el contenedor principal tiene una tabla global de toda la plataforma, llamada GADP (Global Agent Descriptor Table).

Desventajas de Jade: no tiene desarrollado el mecanismo de guardas, que es el que nos permite darle una mejor seleccin a los mensajes que llegan a un agente, por lo tanto esto es tarea del programador a la hora de implementar cada comportamiento. Como un agente para jade es un solo hilo que tiene su propio control, puede darse el caso que debido a un comportamiento mal programado el agente pierda reactividad ante el entorno.

Besa: La arquitectura besa esta compuesta por tres niveles: nivel de agente, nivel social y nivel del sistema. En el nivel de agente se trata todo lo referente a sus comportamientos y a los eventos a los cuales reacciona el agente. En el nivel social se trata lo referente a la comunicacin que existe entre agentes(a travs de un modelo de programacin de eventos), una interaccin se puede modelar por un evento bien definido, que se puede asociar a una guarda. En el nivel de sistema es donde se define el ciclo de vida de los agentes y la administracin de estos[EG2003]. Ventajas: Es un sistema que maneja muy bien el mecanismo de guardas, lo que permite al programador definir un nivel muy fino de granularidad a la hora de plantear los comportamientos de un agente. Los comportamientos corren sobre su propio hilo lo que hace que estos no bloqueen el funcionamiento total del agente, al contrario de cmo sucede en JADE. Besa deja que el programador solo piense en los comportamientos de su agente llevndolo a un nivel de abstraccin mas alto. Se puede ver como una plataforma P2P ya que la comunicacin entre los agentes es punto a punto y lo mismo pasa con los contenedores de los agentes.

Desventajas: Usa el mecanismo de multicast para la comunicacin entre contenedores, lo cual lo limita a un dominio. Se puede afectar el rendimiento de la red en casos en que los agentes tengan un tiempo de vida muy corto. Esto debido al multicast que es utilizado para

mantener las tablas actualizadas del directorio de paginas blancas que tiene cada contenedor. La poca documentacin que lo soporta. No se a probado con muchos ejemplos como si a sucedido con otras plataformas de agentes.

Referencias:

[GW2001] [JAS200]

Gerhard Weiss, Multagent System, 2001. Juan ngel Sampedro Martnez, Jos David Cirraga Lpez, Francisco Jess Martnez Mimbrera, AgentOS.

[FAMS2002] www.fipa.org, Fipa Agent management Specification , 2002/12/03. [FBE2003] F. Bellifemine, G. Caire, A. Poggi, G. RimassaJade a white paper, Septiembre del 2003. [FBE12003] F. Bellifemine, G. Caire , Tizana Trucco, Jade administrator guide jade 3.1 , 15 de Diciembre del 2003. [GRI2003] Giovanni Rimaza , Runtime Suport for Distributed- multi- Agent systems , Enero del 2003. [EG2003] Enrique Gonzalez, Jamir Antonio Avila y Cesar Bustacara, Besa Arquitectura para la construccin de sistemas Multi- Agentes, 2003.

S-ar putea să vă placă și