Comunicación entre agentes
Compartir e intercambiar conocimiento es especialmente importante en los sistemas multiagente (MAS). Un agente suele describirse como una entidad persistente con cierto grado de independencia o autonomía que lleva a cabo un conjunto de operaciones según lo que percibe. Un agente suele contener algún nivel de inteligencia, por lo que debe tener cierto conocimiento sobre sus objetivos y deseos. Todo el sistema multiagente se crea para ser capaz de alcanzar objetivos que son difíciles de lograr para un agente individual o para un sistema monolítico. En los sistemas multiagente, un agente suele cooperar con otros agentes, por lo que debe tener algunas capacidades sociales y comunicativas.
Para poder comunicarse, los agentes deben ser capaces de:
- entregar y recibir mensajes: en este nivel físico, los agentes deben comunicarse sobre capas físicas y de red acordadas para poder entregar y recibir cadenas u objetos que representen mensajes
- analizar los mensajes: en el nivel sintáctico, los agentes deben ser capaces de analizar los mensajes para decodificarlos correctamente en sus partes, como el contenido del mensaje, el lenguaje, el remitente, y también deben ser capaces de analizar el contenido del mensaje
- comprender los mensajes: en el nivel semántico, los símbolos analizados deben ser comprendidos de la misma manera; es decir, la ontología que describe los símbolos debe ser compartida o expresada explícitamente y accesible para poder decodificar la información contenida en el mensaje
En los sistemas multiagente, tanto el primer nivel físico como el segundo nivel sintáctico están bien estandarizados por la Foundation for Intelligent Physical Agents (FIPA), por ejemplo mediante la especificación de gestión de agentes y la especificación del lenguaje de comunicación entre agentes. En cuanto al tercer nivel, la semántica, existen estándares que describen los lenguajes de contenido y que describen el uso de ontologías.