agentes inteligentes e sistemas multi-agente (ud 8) comunicação ist- 2004/2005

Post on 05-Jan-2016

19 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Agentes Inteligentes e Sistemas Multi-agente (UD 8) Comunicação IST- 2004/2005. Problema 3: Comunicação entre Agentes. Que tipo de comunicação entre agentes é a mais adequada à estrutura escolhida?  - PowerPoint PPT Presentation

TRANSCRIPT

Agentes Inteligentes e Sistemas Multi-Agentes Inteligentes e Sistemas Multi-agenteagente

(UD 8) Comunicação(UD 8) ComunicaçãoIST- 2004/2005IST- 2004/2005

Problema 3: Comunicação entre Problema 3: Comunicação entre AgentesAgentes

• Que tipo de comunicação entre agentes é a mais adequada à estrutura escolhida? 

• Que linguagens de comunicação existem e podem ser usadas para a comunicação entre agentes numa sociedade de agentes? 

• Que conceitos (ontologias) são necessários ser partilhados para que os elementos da sociedade consigam interpretar as mensagens recebidas? 

Comunicação entre AgentesComunicação entre Agentes

"uma troca intencional de informação originada pela produção de símbolos e a sua percepção derivada de um sistema convencional de sinais"

Comunicação entre AgentesComunicação entre Agentes

Baseada em Speech Acts- tratamento da comunicação como acção.

Originalmente proposta por Austin (1962) que notou que certas classes de expressões de fala – speech acts (actos de fala)- têm caracteristicas de acção – mudam o estado do mundo de forma semelhante às acções – por exemplo: declarar guerra.

Austin identificou um conjunto de verbos performativos

(performative verbs) que correspondem a diversos tipos de speech acts. Exemplos: “request”, “inform”, “promisse”, etc.

Comunicação entre AgentesComunicação entre Agentes

Austin identificou 3 aspectos de um acto de fala:• Locutionary act- o acto de construção da frase

- Dizer “Por favor faz um chá”

• Illocutionary act – a acção executada quando é dito algo- “Ele pediu-me para fazer um chá”

• Perlocution- o efeito do acto- “Ele pos-me a fazer um chá”

Identificou as condições necessárias para a que as performatives tenham sucesso – felicity conditions:

• (1) Tem de haver um procedimento para a performativa que explicitamente especifica as circunstancias e agentes/pessoas, (2) o que tem de ser executado completamente e correctamente, (3) o acto tem de ser sincero, e os seus requisitos satisfeitos, etc.

Comunicação entre Agentes: SEARLEComunicação entre Agentes: SEARLE

Trabalhou sobre o trabalho de Austin e apresentou a sua teoria no livro Speech Acts.

Propriedades necessárias para que a comunicação entre um “speaker” e “hearer”:(1) Condições de I/O normais- o hearer consegue ouvir o

acto do speaker (por exemplo um request).

(2) Condições preparatórias- condições que têm que ser verdade no mundo para o speaker escolher um dado speech act. Por exemplo o hearer pode efectuar a acção e o speaker tem de acreditar que ele o consegue efectuar.

(3) Condições de sinceridade- o speaker é sincero na sua informação ou pedido.

Tipos de Actos de FalaTipos de Actos de Fala

1. Representativos- dá o comprometimento de S de que uma dada proposição é verdade (ex. Informing)

2. Directivos – pedido de S para que H faça algo (ex. Request)

3. Comissivos – comprometimento de S a uma dada acção (ex. Promisse)

4. Expressivo- expressão de um estado psicológico (ex. Agradecimento)

5. Declaration- execução de mudanças no estado de coisas (ex. Declaração de guerra)

Linguagens de Comunicação entre Linguagens de Comunicação entre AgentesAgentes

ARPA financiou o programa KSE (Knowledge Sharing Effort-KSE). O KSE foi organizado em quatro grupos de trabalho:

1. Interlingua; - destinava-se a desenvolver uma linguagem comum que permitisse expressar o conteúdo de uma dada base de conhecimentos e facilitar o processo de tradução entre diferentes formalismos. Resultado: KIF (Knowledge Interchange Format) o qual é baseado em lógica de primeira ordem com algumas extensões para o suporte de definições.

2. KRSS (Knowledge Representation Systems Specification), destinava-se a definir as construções básicas em famílias de linguagens de representação de conhecimento

3. SRKB (Shared, Reusable Knowledge Bases) - destinava-se a facilitar a partilha de conhecimento focando mais o trabalho nos conteúdos.

4. External Interfaces- focou o seu trabalho na definição das interacções "runtime" entre diversas bases de conhecimento (ou agentes) e como resultado desse trabalho surgiu a linguagem KQML

Linguagens de Comunicação entre Linguagens de Comunicação entre Agentes (KQML)Agentes (KQML)

Pode-se dividir uma comunicação em KQML por 3 camadas:

1. a camada conteúdo (pode ser codificado em qualquer linguagem de representação);

2. comunicação (contém informação como: identificação do emissor e do receptor, ID da comunicação, etc...)

3. mensagem (é a linguagem KQML em si, codifica a mensagem em si – tipo de performativa que o emissor associa ao conteúdo- com todos os seus parâmetros segundo a sintaxe KQML- linguagem do conteúdo, etc.):

Em termos sintáticos o KQML define uma mensagem da seguinte forma:

Cada mensagem é uma lista de parêntesis; O primeiro elemento é chamado de “performative”; Os restantes elementos são os chamados argumentos que são

representados por pares (“keyword”, valor).

KQML: Exemplos de performativasKQML: Exemplos de performativas

(ask-if :content ligado(aparador-relva) :sender dono-jardim:receiver jardineiro:language PROLOG:ontology jardim)

(ask-if :content (PRICE IBM ?price):receiver stock-server:language PROLOG:ontology NYSE-TICKS)

Argumentos das Performativas em Argumentos das Performativas em KQMLKQML

:sender Quem envia a performativa

:receiver Quem recebe a performativa

:from Quem originou a performativa contida em :content no caso de haver encaminhamento de mensagens

:to O destino final da performativa quando é usado encaminhamento

:in-reply-to A etiqueta esperada de resposta a uma pergunta feita anteriormente

:reply-with A etiqueta esperada para a resposta à mensagem corrente.

:language A linguagem do conteúdo da performativa

:ontology O nome da ontologia necessária para a interpretação do conteúdo da mensagem

:content O conteúdo da mensagem-informação- sobre a qual incide a atitude da performativa.

Performativas em KQMLPerformativas em KQML

achieve S quer q R faça algo verdade ao seu ambiente

advertise S anuncia que é adequado para processar a performativa

ask-about S quer todas as proposições relevantes das KB virtuais de R

ask-all, ask-one

break S quer quebrar um “pipe” estabelecido

broacast S quer enviar a performativa a todas as suas ligações.

… delete (eliminar K da KB), insert, Broker (colecionar respostas), forward, recomend (quem sabe responder a …), recruit, reply, standy, subscribe, etc

Ao todo definiram-se 41 performativas

KQML: Exemplos de performativasKQML: Exemplos de performativas

(evaluate :sender A :receiver B:language KIF:ontology motors:reply-with q1:content (val (torque m1)))

(reply :sender B :receiver A :language KIF:ontology motors:in-reply-to q1:content (= (torque m1) (scalar 12 kgf)))

Exemplo de KQMLExemplo de KQML

Agente A Agente B

tell(X)

ask(X)

Agentes especiais: FacilitadoresAgentes especiais: Facilitadores

Introduzidos pela linguagem KQML

Funções Manter um registo com os nomes dos serviços disponíveis; Re-encaminhar mensagens para os fornecedores desses

serviços; Providenciar emparelhamento entre fornecedores e

consumidores de informação; Servir como mediadores e tradutores.

Comunicação usando um facilitadorComunicação usando um facilitador

Comunicação entre agentesComunicação entre agentes

KQML: ApreciaçãoKQML: Apreciação

Semântica:

- No início: definida informalmente - 1996: definida a partir da lógica modal a partir

das pré-condições, post-condições e condições de “completion”

Conjunto não mínimo (redundante) de performativas

- implementações escolhem um conj arbitrários de performativas que suportam -> falta de interoperabilidade entre diferentes sistemas

FIPA: uma outra aproximaçãoFIPA: uma outra aproximação

AAAOther Agents

1.2.a

1.2.b

Agent Interaction2.2

1.2.cHardware

Software

A

InformationFusion

InformationProcessing

Environment

x.3

Humans

RequisitosRequisitos Requisito 1-Os agentes devem enviar um “not-understand”quando receberem

uma mensagem que nao reconhecem ou quando recebem uma mensagem que sao incapazes de processar o seu conteudo. Por outro lado, os agentes devem estar preparados para receber e tratar mensagens “not-understand” vindas de outros agentes.

Requisito 2- Um agente ACL compliant pode implementar qualquer subconjunto dos typos de mensagens e protologos pre-definidos. A implementacao dessas mensagens deve ser correcta no que diz respeito ‘a definicao semantica dos actos de discurso.

Requisito 3- Uma agente ACL-compliant que use os actos comunicativos cujos nomes sao definidos pela especificacao FIPA’97 Part 2 devem implementar esses actos correctamente relativamente à sua definição.

Requisito 4- Os agentes podem usar os actos comunicativos, não definidos no documento de especificação, e são responsáveis por garatir que o agente receptor compreende os significado do acto. Os agentes não devem no entanto definir actos que ja’ estao definidos nos standard actos.

Requisito 5- Um agente ACL-compliant deve gerar mensagens correctamente e sintaticamente bem formadas na forma que deseja que a mensagem seja enviada. De forma paralela os agentes devem poder interpretar e traduzir as sequencias de caracteres de uma mensagem bem formada.

Formato de mensagem em FIPA-Formato de mensagem em FIPA-ACLACL

(inform:sender jardineiro:receiver toby:content (come osso):reply-with resp:language j1:ontology jardim)

(mais detalhe sobre FIPA-ACL será dado na unidade respeitante às ferramentas)

20 performativas!

FIPA-ACL: ApreciaçãoFIPA-ACL: Apreciação

Semântica:

- definida a partir da lógica modal a partir de feasability pre-conditions e rational effect

Conjunto reduzido de performativas

- Ultimamente (desde ~2000) a ganhar terreno

Sumário: Problemas Revistos (1/2)Sumário: Problemas Revistos (1/2)

Problema dos comportamentos sociais e individuais• Como especificar os comportamentos sociais dos agentes?• Como é que os comportamentos dos outros e da sociedade

influenciam o comportamento individual?

Problema da estrutura da organização• Como organizar uma sociedade de agentes para que no

global, esta execute a tarefa desejada?• Qual o tipo de estrutura mais adequada para a tarefa em

causa? • Como definir os aspectos do comportamento individual para

que sejam integrados na sociedade levando a um comportamento global desejado?

•  Que tipos de mecanismos há que levem ao surgimento e desaparecimento de sociedades? 

Sumário: Problemas Revistos (2/2)Sumário: Problemas Revistos (2/2)

Problema da comunicação entre agentes• Que tipo de comunicação entre agentes é a mais

adequada à estrutura escolhida? • Que linguagens de comunicação existem e podem

ser usadas para a comunicação entre agentes numa sociedade de agentes? 

• Que conceitos (ontologias) são necessários ser partilhados para que os elementos da sociedade consigam interpretar as mensagens recebidas? 

Cooperação, colaboração e negociação• Que mecanismos de cooperação são necessários

para que os agentes executem cooperativamente uma dada tarefa? 

• Que estruturas de organização são as mais adequadas para determinados tipos de cooperação? 

• Que linguagens existem que podem ser usadas para permitir a cooperação e negociação entre agentes numa sociedade? 

Sumário: Problemas a AbordarSumário: Problemas a Abordar

top related