Agentes conformes con FIPA
La estructura básica del sistema multiagente conforme con FIPA se muestra en la figura siguiente. Un agente es un actor fundamental en una plataforma de agentes. La plataforma de agentes (AP) proporciona la infraestructura física en la que los agentes pueden desplegarse. La AP consiste en la(s) máquina(s), sistema(s) operativo(s), software de soporte para agentes, componentes de gestión de agentes de FIPA y agentes. Los componentes de gestión de agentes de FIPA son los siguientes.
- Agent Management System (AMS) controla el acceso y el uso de la plataforma de agentes y proporciona servicios como el mantenimiento de un directorio de nombres de agentes. Proporciona servicios de páginas blancas a otros agentes. Cada agente debe estar registrado en un AMS.
- Message Transport Service (MTS) soporta el transporte de mensajes FIPA ACL entre agentes en cualquier AP dada y entre agentes en diferentes AP.
- Directory Facilitator (DF) es opcional y proporciona servicios de páginas amarillas a otros agentes. Los agentes pueden registrar sus servicios en el DF o consultar el DF para averiguar qué servicios son ofrecidos por otros agentes, incluida la búsqueda de agentes y de los servicios que ofrecen en redes ad hoc.

Modelo de referencia de gestión de agentes de FIPA
Para la comunicación entre agentes está estandarizado el FIPA Agent Communication Language (ACL), que es similar a KQML (Knowledge Query and Manipulation Language). A continuación se muestra un ejemplo de mensaje en este lenguaje.
(inform
:sender agent1
:receiver hpl-auction-server
:content (price (bid good02) 150)
:in-reply-to round-4
:reply-with bid04
:language sl
:ontology hpl-auction
)
El mensaje ACL contiene varios parámetros. El único parámetro obligatorio es el
performative (acto comunicativo, como inform en el ejemplo
anterior), pero la mayoría de los mensajes ACL también contendrán los parámetros sender,
receiver y content. Como puede verse, el
mensaje ACL es independiente del contenido. El lenguaje habitual utilizado para expresar
contenido es un LISP-like Semantic Language SL basado en KIF. Este lenguaje permite
expresar proposiciones y acciones. También podemos ver que el contenido del
mensaje es independiente de la ontología.
La ontología del contenido puede especificarse
explícitamente en un parámetro del mensaje.
Existen varias implementaciones disponibles de los estándares centrales de FIPA. Probablemente la más conocida sea Java Agent DEvelopment Framework (Jade).