Está en la página 1de 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> (nombre agente que enva el mensaje)

:reciver <palabra> (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] Gerhard Weiss, Multagent System, 2001.

[JAS200] 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.

También podría gustarte