Upload
lucita
View
77
Download
0
Embed Size (px)
DESCRIPTION
Agentes Inteligentes e Sistemas Multi-agente (UD7 e UD10) Interacção, Negociação e Cooperação entre Agentes. Problemas a resolver. Problema dos comportamentos sociais e individuais Como especificar os comportamentos sociais dos agentes? - PowerPoint PPT Presentation
Citation preview
Agentes Inteligentes e Sistemas Agentes Inteligentes e Sistemas Multi-agenteMulti-agente
(UD7 e UD10) Interacção, (UD7 e UD10) Interacção, Negociação e Cooperação entre Negociação e Cooperação entre
AgentesAgentes
Problemas a resolverProblemas 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?
Problemas a resolverProblemas 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?
Sistema multi-agenteSistema multi-agente
Como estudar as cooperação entre Como estudar as cooperação entre agentesagentes?
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
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)
ou 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).
Exemplos de Funções de Exemplos de Funções de Transformação dos estadosTransformaçã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)
Cooperação: Acções RacionaisCooperaçã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?
Cooperação: Matriz de “payoffCooperação: Matriz de “payoff”
E se as utilidades tivessem os seguintes valores?
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”
Estratégias DominantesEstraté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}
““Nash Equilibrium”Nash Equilibrium”
Duas estratégias (acções) 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 equilíbrio é 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.
Exemplo: O Dilema do PrisioneiroExemplo: O Dilema do Prisioneiro
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.
O Dilema do Prisioneiro (2)O Dilema do Prisioneiro (2)Cooperate:”não confessar”Defects: “confessar”
Utilidades: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
O Dilema do Prisioneiro (3)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?
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)O Dilema do Prisioneiro (4)
O Dilema do Cholocate
Dois alunos do IST têm a possibilidade de ganhar chocolates. Para tal, vão ter que se comprometer a “Cooperar” (C) ou não cooperar (D). É dito a ambos que:
1. Se um deles coopera e o outro não, o que não coopera recebe 5 chocolates, e o outro não recebe nada.
2. Se ambos cooperarem, então cada um deles recebe 3 chocolates.
3. Se nenhum cooperar recebem cada um 1 chocolate.
Demo
O Torneio de AxelrodO 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.
O Torneio de Axelrod (2)O Torneio de Axelrod (2)
Algumas das 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.
O Torneio de Axelrod: ResultadosO Torneio de Axelrod: Resultados
O ganhador foi TIT-FOR-TAT... Mas contra ALL-D, TIT-FOR-TAT perde.
Regras de sucesso:• Não ser invejoso• Não ser o primeiro a não cooperar• Responder à cooperação e não cooperação do
adversário• Não ser demasiado inteligente
Mas... e se há dependências entre os agentes?
Depêndencia entre AgentesDepêndencia entre Agentes
Aspecto importante, existe se:
Um dos agentes requer o outro para atingir os seus objectivos
Relações de dependência:1. “Independência”- não há dependência
2. “Unilateral”- um agente depende de outro mas não viceversa
3. “Mútua”- ambos os agentes dependêm um do outro em relação ao mesmo objectivo
4. “Dependência reciproca”- um agente depende do outro para atingir um dado objectivo, e o segundo depende do primeiro para atingir um outro objectivo.
Relações acreditadas: localmente e mutuamente
Como chegar a acordos...
Chegar a acordo: leilões, negociação, Chegar a acordo: leilões, negociação, argumentaçãoargumentação
Agentes necessitam de interagir com outros com quem não partilham objectivos comuns;
Normalmente é possível chegar-se a um acordo com benefício mútuo nos assuntos de interesse comum:
Chegar a acordo é essencial!
- Negociação- Argumentação
Chegar a acordoChegar a acordo
Constituintes para o cenário:
• Protocolos de negociação - regras que governam as interacções (encontro) entre agentes
- Design mechanism
• Estratégia dos agentes - estratégia de modo a actuar segundo o protocolo, tendo em vista atingir os objectivos propostos e maximizar o seu bem estar individual.
Protocolos para Protocolos para negociaçãonegociaçã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 .
Protocolos para negociação (cont)Protocolos para negociação (cont)Propriedades de protocolos de negociação:
Estabilidade- um protocolo diz-se estável se der aos agentes um incentivo para agirem de determinada forma que atinge uma estabilidade na cooperação (por exemplo atingir o Equilibrio de Nash).
Simplicidade- um protocolo diz-se simples se tornar a estratégia apropriada de negociação óbvia – ao usá-lo o agente descobre facilmente (tratabilidade) a estratégia óptima.
Distribuição- um protocolo diz-se distribuído se assegura que não existe um ponto de falha (por exemplo, um só árbitro) minimizando a comunicação entre agentes.
LeilõesLeilões
Uma 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.
Leilões (2)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.
Tipos de Leilões (3)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.
Tipos de Leilões (4)Tipos de Leilões (4)
1) Leilão Inglês
First-price, open-cry,ascending.
Estratégia: fazer licitações sucessivas com pequenos incrementos até atingir o nosso valor e desistir depois.
Se houver incerteza no valor do bem pode ser perigoso oferecer mais do que os restantes agentes (winner’s curse)
2) Leilão Holandês
Open-cry, descending.
Estratégia: Não há estratégia dominante. É susceptível à winner’s curse
Tipos de Leilões (5)Tipos de Leilões (5)
3) Leilões First-price sealed-bid
First-price, sealed-bid, one-shot.
Estratégia: licitar um pouco abaixo do seu valor para o agente (pensar no valor da 2º mais alta licitação). Não há solução geral para o “pouco abaixo”.
4) Lelões Vickrey
Second-price, sealed-bid, one-shot.
Estratégia: faz com que a estratégia dominante seja licitar o valor próprio do agente
Não é usado em leilões com humanos – interessante para a área de Agentes
É susceptível a comportamento anti-social
Tipos de Leilões (6)Tipos de Leilões (6)
Do ponto de vista do leiloeiro:
maximizar o proveito – depende muito dos agentes
Nenhum dos tipos de leilões está imune a “concertação” entre os agentes licitadores
– coligação de agentes que acordam entre si um preço abaixo do valor real do bem – dividir os lucros entre si.
- Só se evita através de um protocolo que assegure que os agentes licitadores não se conhecem
Exemplos de Aplicação: Auction Exemplos de Aplicação: Auction BotsBots
Auction Bots: Agentes que se movimentam de site em site e participam em leilões de bens online.
Exemplos conhecidos: Kasbah
Spanish Fish Market
Exemplo 1: Kasbah (Chavez & Maes)Exemplo 1: 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.
Exemplo 1: Kasbah (Chavez & Maes)Exemplo 1: Kasbah (Chavez & Maes)
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.
Informação a ver