agentes inteligentes e sistemas multi-agente cooperação entre agentes ist- 2003/2004 ana paiva

60
Agentes Inteligentes e Agentes Inteligentes e Sistemas Multi-agente Sistemas Multi-agente Cooperação entre Agentes Cooperação entre Agentes IST- 2003/2004 IST- 2003/2004 Ana Paiva Ana Paiva

Upload: manoel-da-cunha-bugalho

Post on 07-Apr-2016

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

Agentes Inteligentes e Sistemas Agentes Inteligentes e Sistemas Multi-agenteMulti-agente

Cooperação entre AgentesCooperação entre Agentes

IST- 2003/2004IST- 2003/2004Ana PaivaAna Paiva

Page 2: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Problemas a resolver

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? 

Page 3: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Problemas a resolver

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? 

Page 4: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Sistema multi-agente

Page 5: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Como estudar as cooperação entre agentes?

Noção de “encontro”

Os agentes na sociedade escolhem que acção executar. Como resultado das acções escolhidas, haverá um resultado R No entanto, o resultado final dependerá da combinação das

diversas acções dos diversos agentes O comportamento do ambiente é dado por uma função de

transformação de estado:

τ : Aci x Acj -> R

Page 6: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Cooperação: Utilidades e Perferências

Vamos assumir a situação mais simples em que os agentes têm dois tipos de acção:

C (cooperar) e D (não cooperar)

Os agentes decidem que acção executar baseando-se em utilidades e preferências

Agentes têm interesses próprios ditados pelos seus desejos (levando a utilidades e preferências).

Uma função de utilidade é uma função dos resultados (estados do mundo) em valores reais (que dão os valores de uma dada acção).

Page 7: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Exemplos de Funções de Transformação dos estados

Função de transformação: τ(Aagentei,Aagentej) = ωk (estado do mundo)

1. τ(D,D) = ω1 τ(D,C) = ω2 τ(C,D) = ω3 τ(C,C) = ω4(o ambiente reage às acções de ambos os agentes- ωi- estados

do mundo)

2. τ(D,D) = ω1 τ(D,C) = ω1 τ(C,D) = ω1 τ(C,C) = ω1 (o ambiente não reage às acções de nenhum dos agentes)

3. τ(D,D) = ω1 τ(D,C) = ω2 τ(C,D) = ω1 τ(C,C) = ω2(o ambiente reage às acções do agente j (segundo agente)

sendo controlado por ele)

Page 8: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Cooperação: Acções Racionais

Cada um dos agentes decide o que fazer tendo em conta as suas funções de utilidade.

ui(ω1 ) = 1 ui(ω2 ) = 1 ui(ω3) = 4 ui(ω4 ) = 4 uj(ω1 ) = 1 uj(ω2 ) = 4 uj(ω3) = 1 uj(ω4 ) = 4

Considerando que:

ui(D,D) = 1 ui(D,C) = 1 ui(C,D) = 4 ui(C,C) = 4 uj(D,D) = 1 uj(D,C) = 4 uj(C,D) = 1 uj(C,C) = 4

Ou seja o agente i tem as seguintes preferências:

C,C ≿i C,D ≿i D,C ≿i D,D

Que acção escolher se fossemos o agente i?

Page 9: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Cooperação: Matriz de “payoff”

E se as utilidades fossem?

ui(D,D) = 4 ui(D,C) = 4 ui(C,D) = 1 ui(C,C) = 1 uj(D,D) =4 uj(D,C) = 1 uj(C,D) = 4 uj(C,C) = 1

As preferências do agente são:

D,D ≿i D,C ≿i C,D ≿i C,C

i não coopera

i coopera

j não coopera

4

4

1

4

j coopera 4

1

1

1

Payoff matrix

Page 10: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Estratégias Dominantes

Dominância• Dois conjuntos Ω1 e Ω2. Diz-se que Ω1 domina Ω2 se cada

resultado de Ω1 é preferido por i sobre cada resultado de Ω2.• Ω = {ω1, ω2, ω3, ω4}• ω1 ≿i ω2 ≿i ω3 ≿i ω4 • Ω1 = {ω1, ω2}• Ω2 = {ω3, ω4}

Page 11: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Nash Equilibrium

Duas estratégias s1 e s2 estão em equilíbrio de Nash se:

• Se o agente i segue s1, o agente j não pode fazer melhor do que seguir a estratégia s2

• Se o agente j segue a estratégia s2 o agente i não pode fazer melhor do que seguir a estratégia s1.

Esta forma de equilibrio é importante na medida que garante que os agentes se agrupam em torno de um conjunto de estratégias, e nenhum dos agentes deve querer afastar-se do ponto de equilibrio.

No entanto:• Nem todos os cenários de interação entre agentes tem um

equilibrio• Algumas interações levam a mais do que um ponto de

equilibrio.

Page 12: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Exemplo: O Dilema do Prisioneiro (ou…O Dilema dos alunos do Tagus Park)

Duas pessoas foram acusadas de cometer um crime e estão mantidas presas separadas sem poderem comunicar entre si. É dito a ambos que:1. Se um deles confessa o crime e o outro não, o

que confessou é libertado, e o outro é preso por 3 anos.

2. Se ambos confessam o crime, então cada um deles é preso por 2 anos.

3. Se nenhum confessar eles só ficam presos por 1 ano.

Page 13: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

O Dilema do Prisioneiro (2) Defects: confessar e Cooperate: não confessarUtilidades:Libertado: 5Um ano de prisão: 3Dois anos de prisão: 2Três anos de prisão: 0

ui(D,D) = 2 ui(D,C) = 5 ui(C,D) = 0 ui(C,C) = 3 uj(D,D) =2 uj(D,C) = 0 uj(C,D) = 5 uj(C,C) = 3

D,C ≻i C,C ≻i D,D ≻i C,DC,D ≻j C,C ≻j D,D ≻j D,C

Page 14: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

O Dilema do Prisioneiro (3)

i defects i cooperates

j defects 2

2

0

5

j cooperates 5

0

3

3

O que deve o prisioneiro fazer?

Page 15: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Pensar como um prisioneiro

1. Suponhamos que coopero. Se j também cooperar, temos um ganho de 3. Se o j não cooperar então eu tenho um ganho de 0. Ou seja, o melhor valor que eu tenho garantido é 0.

2. Suponhamos que eu não coopero. Se o j cooperar, então eu tenho um ganho de 5. Se j nao cooperar, tenho um ganho de 2. Ou seja, o melhor valor que eu tenho garantido é 2.

O Dilema do Prisioneiro (4)

Page 16: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

O Torneio de Axelrod

Axelrod é um cientista político interessado em cooperação em sociedades.

Em 1980 organizou um torneio, tendo convidado investigadores a fazer agentes que joguem o Dilema do prisioneiro.

• Cada agente pode jogar C ou D;• Cada agente joga com outro 5 vezes, com 200 voltas;• O agente que ganha o torneio é aquele que tiver melhor

resultado no total.

Os agentes variaram entre 5 linhas de código a 152.

Page 17: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

O Torneio de Axelrod (2)

Estratégias usadas- ALL-D Allways Defect.

- RANDOM- selecção de C e D aleatoriamente - TIT-FOR-TAT (1) na primeira volta- coopera (2) na segunda volta faz o que o oponente fez na volta anterior - TESTER- Na primeira volta testa o oponente para ver se este nao

coopera. Se o oponente alguma vez nao copera, joga o TIT-FOR-TAT - JOSS- O mesmo que TIT-FOR-TAT mas 10% das vezes nao coopera.

Page 18: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

O Torneio de Axelrod: Resultados

O ganhador foi TIT-FOR-TAT... Mas contra ALL-D, TIT-FOR-TAT perde.

Page 19: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Resolução de Problemas distribuída

Como é que um grupo de agentes chega a acordo e consegue resolver um problema ou executar uma tarefa de forma cooperativa?

Coordenação das tarefas:- Cooperação- Negociação

Page 20: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Coordenação

“Acto de trabalhar em grupo de forma harmoniosa no sentido de atingir um acordo ou objectivo comum.”

Necessidade de coordenar agentes: • Existem dependências nas acções dos agentes

• Existe necessidade que o conjunto de agente respeite restrições globais

• Nenhum agente individualmente tem recursos, informação ou capacidade suficiente para executar a tarefa ou resolver o problema completo

Page 21: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Coordenação: Depêndencia dos Agentes

Aspecto importante:

Relações de dependência:1. Independência- não há dependência2. Unilateral- um agente depende de outro mas não viceversa3. Mutual- ambos os agentes dependêm um do outro em relação ao

mesmo objectivo4. Dependência reciproca- um agente depende do outro para atingir um

dado objectivo, e o segundo depende do primeiro para atingir um outro objectivo.

Page 22: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Formas de Coordenação

Coordenação

Cooperação Competição

Planeamento Negociação

Planeamento Distribuído

PlaneamentoCentralizado

Ana Ramalho
Cooperação:Coordenação entre agentes não antagónicosNegociação:Coordenação entre agentes competitivos ou egoístasTipicamente, coordenação implica que cada agente Mantenha modelo dos restantes Desenvolva um modelo das acções futuras O que implica -> Sociabilidade
Page 23: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Competição: Coordenação de Agentes Competitivos

Self-interested

Negociação• Permitir a modificação dos planos locais de agentes

autónomos• Identificar situações onde são possíveis interacções entre

agentes.• Efectuar alocação de tarefas e recursos, resolução de

conflitos…

Page 24: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Resolução de Conflitos

Conflitos:• Competição por recursos escassos• Tempo escasso• Problemas de comunicação

Formas de resolver:• Competição• Colaboração (ganha-ganha)• Compromisso• Acomodação

Page 25: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Negociação

Constituintes• Protocolos de negociação - regras que governam as

interacções entre agentes• Objectos de negociação - conjunto de atributos sobre os

quais se pretende chegar a acordo, p.ex. preço • Modelos da tomada de decisão do agente -

ferramentas de tomada de decisão de modo a actuar segundo o protocolo, tendo em vista atingir os objectivos propostos.

Tipos de negociação• Distribuída (competitiva) – ganhar-perder• Integrativa (cooperativa) – ganhar-ganhar• Mista

Page 26: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Esquema Genérico -Negociação Electrónica

Início – cada agente tem uma porção de espaço, no qual tenta fazer acordos.

• Cada agente tem uma forma de avaliar os pontos no seu espaço

A3

A1A2

Page 27: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Esquema Genérico -Negociação Electrónica

Negociação prossegue – participantes sugerem pontos específicos, ou regiões, como sendo potencialmente aceitáveis.

A3

A1A2

Ana Ramalho
Os agentes mudam o seu ponto de vista com o ambiente
Page 28: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Esquema Genérico -Negociação Electrónica

Fim – quando os agentes encontram um ponto mútuo aceitável no espaço de acordos ou quando, o protocolo determina que a pesquisa deve ser terminada.

A3

A1A2

Page 29: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Formas de Coordenação

Coordenação

Cooperação Competição

Planeamento Negociação

Planeamento Distribuído

PlaneamentoCentralizado

Ana Ramalho
Cooperação:Coordenação entre agentes não antagónicosNegociação:Coordenação entre agentes competitivos ou egoístasTipicamente, coordenação implica que cada agente Mantenha modelo dos restantes Desenvolva um modelo das acções futuras O que implica -> Sociabilidade
Page 30: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Cooperação

É fundamental, sendo a razão principal para a existência de um ambiente multi-agente. [Nwana]

Capacidade que os agentes têm de “trabalharem em conjunto de forma a concluírem tarefas de interesse comum”.

Tal como os humanos, os agentes têm de combinar os seus esforços de forma a atingir objectivos comuns que não podem ser atingidos individualmente.

O agente deve ser dotado de habilidade social, capacitando-o a interagir com outros agentes, possivelmente humanos, através de alguma linguagem de comunicação.

Page 31: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Métodos de cooperação

Grouping and Multiplication: arranjar os agentes de forma a estar fisicamente juntos de forma a tornarem-se numa unidade fisicamente próxima. Viver como uma comunidade permite: obter comida mais facilmente; permite aumentar o numero de indivíduos da espécie.

Comunicação: Expande as capacidades perceptivas dos individuos e permite coordenação.

Especialização: Especialização é o processo pelo qual os agentes se tornam mais adaptados a determinadas tarefas. Exemplo: os robots especialistas em cores (Drogoul).

Partilha de Tarefas e de recursos: resposta ao problema: quem faz o quê?

Resolução de conflitos através de negociação.

Page 32: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Coordenação de Agentes Cooperativos

Forma como conjuntos de agentes se podem coordenar de forma a realizar trabalho cooperativo de equipa.

São totalmente cooperativos tentando auxiliar-se mutuamente nem que isso provoque alguns custos individuais.

Sem coordenação a comunidade de agentes pode degenerar numa colecção caótica e incoerente de agentes individuais.

Para além da negociação, existem outras metodologias.

Page 33: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Protocolos para negociação

Propriedades de protocolos de negociação:

Sucesso garantido- o protocolo garante que há sucesso na negociação.

Maximização do bem social- o protocolo maximiza o bem social garantindo que o resultado maximiza a soma das utilidades dos participantes na negociação.

Pareto efficiency- O resultado da negociação é Pareto efficient se não há outro resultado possível que coloque pelo menos um agente em melhor situação sem que coloque outro agente em pior situação.

Individual Rationality – um protocolo é fundamentado em racionalidade individual se garantir os interesses dos participantes na negociação.

Estabilidade- um protocolo diz-se estável se der aos agentes um incentivo para agirem em determinada forma que atinge uma estabilidade na cooperação (por exemplo atingir o Equilibrio de Nash).

Page 34: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Protocolo Contract-Net-Coordenação por Partilha de Tarefas

Problema: Contratação de tarefas

Inspirado no mundo dos negócios

Pretende resolver o connection problem (encontrar um agente apropriado para a tarefa em questão)

Page 35: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net - Papéis

Manager – responsável pela monotorização da execução da tarefa e no processamento dos resultados da execução

Contractor – responsável pela actual execução da tarefa

Um agente pode tomar os ambos papéis dinamicamente durante a execução da solução

Page 36: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net – Exemplo (1)

Vamos supor que temos um urso faminto que quer provar uma especialidade do pólo norte, mas como não é um urso polar tem de pedir ajuda na preparação do prato.

Page 37: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net – Exemplo (2)

1 – O Manager anuncia a tarefa a executar aos possíveis Contractors

Page 38: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net – Exemplo (2)

2 – Os agentes contactados fazem uma avaliação ao anúncio e ponderam as suas capacidades para executarem a tarefa em questão e fazem uma proposta ao Manager

???

Page 39: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net – Exemplo (3)

3 – O Manager selecciona o agente mais apropriado à execução, baseado na informação das propostas. A selecção é comunicada.

aceite

rejeitada

Page 40: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net – Exemplo (4)

4 – O Contractor executa a tarefa e entrega os resultados ao Manager

Page 41: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Mensagens necessárias para o contract-net

Request-for-bids(T,X) é a mensagem do Manager para os potenciais contractors pedindo ao contractor para lhe enviar uma proposta para a execução da tarefa T

Propose(T,O) é a resposta positiva de um Contractor relativamente ao pedido para a execução da tarefa T. A proposta contém a especificação da oferta feita O.

Not-interested(T,Y) é uma resposta negativa de um contractor dizendo que não está interessado em executar T.

Award(T,C,X) é a mensagem do Manager (X) para o contractor (C) informado-o que lhe foi oferecida a execução da tarefa T.

Accept(T,X) é a resposta positiva do contractor Y em resposta à oferta do Manager para a execução da tarefa.

Refuse(T,Y) é a resposta negativa do contractor à oferta do Manager para a execução da tarefa.

Page 42: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net – Conteúdo do Anúncio

A mensagem que anuncia a tarefa a realizar tem a seguinte composição:

• Addressee – contém o endereço do(s) destinatário(s)• Eligibility Specification – condições que é necessário um

agente ter para poder, eventualmente, ser o contractor• Task Abstraction – breve descrição da tarefa a realizar• Bid Specification – especifica o que deve conter uma

resposta para que esta possa ser considerada• Expiration Time – prazo para serem dadas as propostas ao

anúncio (no entanto, o manager pode não ser obrigado a esperar todo o tempo e as respostas recebidas depois de expirado o tempo até podem resultar numa selecção subópitma de contractors)

Page 43: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net – Resposta Imediata

Pode acontecer o caso em que o manager não recebe nenhuma proposta, isto pode acontecer essencialmente por dois motivos, primeiro, todos os agentes elegíveis estão ocupados ou têm uma melhor proposta em mãos, segundo, não existem agentes elegíveis.

A solução encontrada para este problema foi criar uma classe de propostas a Immediate Response Bids as quais requerem uma de três respostas possíveis, BUSY, INELIGIBLE, LOW RANKING, ou uma sub-classe destas (ex: respond if eligible, but busy).

Assim o manager pode tomar medidas para resolver o problema como tentar mais tarde ou fazer uma proposta mais aliciante.

Page 44: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Contract-Net - Conclusões

+ Boa solução para o connection problem+ Bastante adequado a problemas de estrutura hierárquica

- Uma tarefa pode não ser atribuída ao agente mais qualificado se este estiver ocupado

- Para um número grande de agentes gera um grande tráfego de mensagens (mas o campo eligibility specification reduz as mensagens de resposta ao anúncio)

Page 45: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

LeilõesUma outra forma de resolver problemas de alocação de tarefas e de venda

de serviços é através de leilões.

Um leilão ocorre entre um leiloeiro e um conjunto de agentes que fazem ofertas (bidders). O objectivo do leilão é o leiloeiro alocar o bem ou serviço a um dos bidders por um determinado valor.

Aspectos dos leilões:

- Existe um bem ou serviço a leiloar.- Se esse bem ou serviço tem um valor conhecido diz-se que esse é o

valor publico (comum) - Cada agente pode atribuir ao bem ou serviço um valor privado.- Por vezes os valores têm também um valor correlacionado que

envolve o valor privado mais aspectos de sociedade como a possibilidade de vender o valor futuramente.

Page 46: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Leilões (2)Variáveis que determinam o carácter dos leilões:

1) Determinação do vencedor: ou quem ganha o bem ou serviço. a) first-price: o agente que fez a oferta mais alta ganha o bem ou

serviço.b) second-price: o agente que fez a oferta mais alta ganha o bem

ou serviço mas paga o valor da segundfa oferta.2) Ofertas conhecidas ou não pelos outros agentes

a) Open cry: as apostas/ofertas são conhecidas por todos (common knowledge)

b) Sealed-bid : as ofertas são seladas3) Procedimento de oferta :

a) one-shot: só existe uma sessão de oferta.b) ascending: o valor começa baixo (reservation price) e vai

subindo com as ofertas até não haver mais nenhuma ofertac) descending: o valor começa alto e vai descendo.

Page 47: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Tipos de Leilões (3)1) Leilão Inglês

First-price, open-cry,ascending.2) Leilão Holandês

Open-cry, descending.3) Leilões First-price sealed-bid

First-price, sealed-bid, one-shot.4) Lelões Vickrey Second-price, sealed-bid, one-shot.

Page 48: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Exemplos de Aplicação: Auction Bots

Auction Bots: Agentes que se movimentam de site em site e participam em leilões de bens online.

Exemplos conhecidos: Kasbah Spanish Fish Market

Page 49: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Kasbah (Chavez & Maes)

Sistema para a Web no qual os utilizadores podem criar agentes que compram e vendem bens em seu nome.

• O utilizador que vende pode especificar 3 parâmetros:- Data desejada para venda do bem- Preço desejado para a venda- Mínimo preço para a venda.

• Os agentes vendedores começam por oferecer um bem a um preço desejado e com o aproximar do deadline de venda o preço começa a ser reduzido até ao preço mínimo.

• Os utilizadores podem especificar a função de decay do preço (linear, quadrática ou cúbica)

• O utilizador confirma sempre a venda tendo direito a veto.

Page 50: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Kasbah (Chavez & Maes) II

Os agentes compradores Também têm um conjunto de parâmetros associados:

• A data de compra do artigo• O preço desejado• E o preço máximo

O utilizador pode especificar a função de crescimento do preço.

Os agentes em Kasbah operam sob um modelo de mercado, com um gestor que pode gerir um conjunto de leilões em paralelo.

Page 51: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Problemas a resolver

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? 

Page 52: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Problemas a resolver

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? 

Page 53: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Linguagens específicas para cooperação

Tal como com o contract-net outros protocolos necessitam de linguagens específicas para a cooperação.

Alguns ambientes (FIPA-OS) já permitem a utilização de performatives especificas para negociação ou incluem já protocolos de negociação.

Exemplo de uma linguagem de colaboração: COOL

Page 54: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

COOL (COOrdination Language) Baseada em KQML Coordenação de agentes é definida por autómatos finitos. COOL tem as seguintes componentes:

• Máquina de estados• Mensagens (performativas)• Regras de conversação• Regras para recuperação de erro• Regras de continuação• Classes de conversação• Conversações actuais

Page 55: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

COOL - performativas

Para além das performativas disponibilizadas por KQML ainda são admitidas:• Propose – usado para propôr um objectivo• Counter-Propose – segue-se a um propose para propôr outro

objectivo, desde que satisfaça o anterior• Accept e Reject – usados para assinalar aceitação ou

rejeição de uma proposta ou contra-proposta• Cancel – cancela uma proposta ou contra-proposta

previamente aceite• Satisfy – anuncia o cumprimento de um objectivo que lhe foi

pedido • Fail – anuncia a impossibilidade em cumprir um objectivo que

aceitou

Page 56: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

COOL –Máquina de Estados

A máquina de estados define os estados em que se pode encontrar a tarefa (ex: ponto de vista do receptor)

1

2 3

45

6 7propose/

/reject

/accept

/counter

counter/

accept/accept

/satisfy

/fail

/reject

Page 57: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

COOL – regras de conversação

As regras de conversação dizem-nos como passamos de um estado para outro da máquina de estados.

(def-conversation-rule r1:current-state 2:received ‘(propose :sender ?initiator :content (produce (?what ?

amount) :conversation ?conv

:such-that ‘(achievable (produce ?what ?amount)):next-state 3:transmit ‘(accept :content (produce(?what ?

amount)):conversation ?conv)

)

Page 58: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Aspectos de Implementação

As ferramentas de construção de agentes já incluem um conjunto de aspectos para a construção de sociedades, nomeadamente:

- Linguagens para comunicação e cooperação- Possibilidade de definir estruturas organizacionais

(definindo “roles” na estrutura)- Protocolos pre-definidos para resolver aspectos de

negociação (contract-net e leilões).

Page 59: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Conclusões

Criar sociedades para resolver problemas parece ser um caminho a seguir.

Há ainda bastantes problemas (ferramentas e teorias) por resolver.

Page 60: Agentes Inteligentes e Sistemas Multi-agente Cooperação entre Agentes IST- 2003/2004 Ana Paiva

A. Paiva

Mais bibliografia

Livro do M. Wooldridge Livro de J. Ferber