comunicación entre agentes

Post on 13-Aug-2015

114 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Comunicación entre agentes

Sistemas multiagente (SMA) Sistema formado por un conjunto de

agentes autónomos.

Los agentes tienen información incompleta, no hay un controlador central y es asíncrono.

La clave de los SMA son las interacciones entre agentes.

Puede haber cooperación y coordinación entre agentes.

Problemática en MAS Descomposición del problema � Comunicación entre agentes Coherencia en las actuaciones� Representación del conocimiento de otros � agentes � Coordinación de acciones Gestionar el uso de recursos� Evitar comportamientos globales no �

deseados Diseño de MAS: metodología y desarrollo�

Práctica: 3 Programar la interacción entre agentes

mensajeros para que haya negociación en la evasión entre dos agentes.

Hola, ¿Cómo te llamas?

Comunicación entre Agentes

Canal de comunicació

n

Mecanismo para el intercambio de mensajes

Normas

Utilizar un lenguaje y estar de acuerdo en el significado de los símbolos (semántica)

HABLANTE

OYENTE

Niveles en la comunicación Inferior: método de interconexión

�Medio: formato (sintaxis) de la información

Superior: significado (semántica) de la información

Comunicación entre Agentes Los agentes emplean un lenguaje de

comunicación (ACL – Agent Communication Language) para comunicar información y conocimiento

Las tareas distribuidas solo son posibles si los agentes tienen la capacidad de comunicación para establecer estrategias de cooperación

Métodos de comunicación

Comunicación con el entorno

Pizarra compartida

Inferencias

Paso de mensajes

Conocimientos

Comunicación con el entorno

Se presenta normalmente en agentes reactivos

La cooperación no usa comunicación directa.

La comunicación se realiza a través del entorno.

Robots distribuidos

Sistemas de pizarra Pizarra: zona de trabajo

común que permite a los agentes compartir todo tipo de información.

Un sistema multiagente puede tener varias pizarras con distintos agentes en cada una.

No hay comunicación directa entre agentes.

Sistemas de inferenciasInteracción sin comunicación, inferencia de acciones de otros agentes

Ejemplo: utilización de la teoría de juegos con matrizes de ganancia.

Actualización de una restricción o de una Dependencia.

Sistemas de mensajes Los mensajes son transmitidos

directamente entre dos agentes (emisor-receptor) a través de un protocolo de comunicación.

No se utiliza memoria pero son muy flexibles.

Comunicación en el nivel de conocimientoLos agentes se comunican para: Mostrar a otros agentes su estado

mental. Intentar modificar el estado mental de

otros agentes.

Actos de habla Quien habla no declara solamente

sentencias ciertas o falsas

Quien habla realiza actos de habla: peticiones, sugerencias, promesas, amenzas, etc.

Cada declaración es un acto de habla

Tipos de actos de habla Actos asertivos: dan información sobre el mundo Estoy de acuerdo 2 y 2 son 4 - Estamos en clase Actos directivos: para solicitar algo al destinatario Siéntate, ¿Cuántos pesos equivalen a un dolar? Actos de promesa: comprometen al locutor a realizar

ciertas acciones en el futuro Mañana vuelvo a las 8 - Te enviaré las fotos Actos expresivos: dan indicaciones del estado mental

del locutor Soy feliz Gracias - Siento lo de tu perro Actos declarativos: el mero hecho de la declaración es

la realización de un acto Estás contratado - Empezamos la clase

Componentes de los actos de habla

Locución: modo de producción de frases utilizando una gramática y un léxico

• afirmación, pregunta, petición, promesa, orden

Ilocución: acto realizado por el locutor sobre el destinatario mediante la declaración

•Ejemplos: convencer, inspirar, persuadir, atemorizar

Perlocución: efectos que pueden tener los actos ilocutorios en el estado del destinatario y en sus acciones, creencias y juicios

Ejemplos

locución: declaración física con contexto y referencia: quién habla y quién escucha, qué puerta, etc.

Ilocución: acto de llevar intenciones: el que habla quiere que el que escucha cierre la puerta

Perlocución: acciones que ocurren como resultado de la ilocución: el que escucha cierra la puerta

Cierra la puerta

Éxitos de casos de habla Un acto de habla puede fallar en su

enunciación, porque no llegue el mensaje o llegue corrompido o el destinatario no lo entiende

En su interpretación, por el destinatario

En su consecución final, por ejemplo porque el destinatario no sea capaz de llevar a cabo la acción solicitada

Mecanismos de transporte Los mensajes deben poder ser:

Planificables o servidos por eventos Síncronos o asíncronos� Direciones físicas o por rol� Unicast / multicast / broadcast�

Implementaciones� CORBA RMI� DCOM�

Lenguajes de comunicación de agentes Debe tener semántica bien definida Semántica formal

Implementaciones: KQML� FIPA ACL� Basada en XML�

Protocolos de comunicación Representan los patrones que modelan

las posibles comunicaciones

Los participantes en la conversación �deben concer el protocolo

Definido formalmente�

Implemetaciones� FIPA ACL

Lenguajes de comunicación de agentes

Ontologías Es un vocabulario común en el que se han

acordado significados para describir un dominio.

Problemática: � Diferentes términos para un mismo concepto El mismo término para diferentes conceptos Diferentes sistemas de clases�

Implementaciones:�� OIL Ontolingua� KIF� RDF / Esquemas XML / DTD�

Web semántica

KSE

Compartir conocimiento entre agentes requiere la capacidad de comunicarse

FIPA

Arquitectura de FIPA Los agentes se comunican intercambiando

mensajes que representan actos de habla

Codificados en un lenguaje de comunicación de agentes

Servicios de soporte a los agentes: Servicios de directorio Servicios de transporte de mensajes

Servicio de directorios Soporta un conjunto de entradas formadas por

varias tuplas cada una con dos pares clave-valor:

• Nombre de agente: único globalmente • Localizador: Uno o más descriptores de transporte que describen el tipo de transporte y la dirección de transporte específica para comunicarse con el agente Los agentes registran entradas de directorio

para que otros agentes puedan buscarlas con el propósito de encontrarles para poder interactuar.

Ejemplo de entrada de directorio:

Mensajes de los agentes Estructura de los mensajes • Los mensajes son tuplas clave-valor • Escritos en un lenguaje de comunicación de agentes (p.ej. FIPA ACL) • El contenido expresado con un lenguaje de contenidos (KIF, SL, ...) • El lenguaje de contenidos puede hacer referencia a una ontología • Incluyen los nombres de emisor y receptor • Un mensaje puede contener recursivamente otros mensajes

Transporte de los mensajes • El mensaje de transporte consta de un campo de carga útil (payload) y un sobre (envelope) • El mensaje se transporta en la carga útil de un mensaje de transporte

FIPA-ACL Basado en actos del habla

La semántica se basa en aptitudes mentales (creencias, intenciones, etc.)

Ejemplo de mensaje ACL

FIPA-ACL

FIPA-ACL Las conversaciones entre agentes suelen seguir unos

ciertos patrones, secuencia tipicas de mensajes: protocolos de conversación.

Un agente informa del protocolo que quiere usar mediante el parámetro :protocol

Protocolos básicos definidos por FIPA: • FIPA-request • FIPA-query • FIPA-request-when • FIPA-contract-net • FIPA-iteraterated-contract-net • FIPA-auction-english • FIPA-auction-ducth

Protocolo FIPA-request

FIPA-ACL

La plataforma JADE

Envio de mensajes en JADE

Ontologías en JADE

KQML Es un lenguaje de comunicación y

protocolo, orientado a mensajes, para el intercambio de información

KQML es independiente de protocolos de transporte (TCP/IP, HTTP, ...) sintaxis de contexto ontologías protocolos de alto nivel (contract net,

subasta, ...)

KQML Asume un modelo de agentes:

entidades de alto nivel con capacidades cognitivas (representación simbólica, base de conocimientos, ...)

tienen una descripción de nivel intencional: su estado es un conjunto de componentes mentales como creencias, capacidades, elecciones, compromisos, etc.

• los agentes residen en el nivel del conocimiento Los mensajes KQML comunican una actitud sobre el

contenido que llevan (aserto, solicitud, pregunta) Las primitivas del lenguaje se llaman performativas Cada mensaje KQML representa un acto de habla

KQML

Mensajes KQML

Respuesta

KQML

Semántica de las performativas

Agentes facilitadores

Plataformas para KQML

¡Fin!

top related