Aprendizado Multiagente
Gustavo Danzi de Andrade
[email protected]
Agentes Autônomos
Patrícia Tedesco
Lembrando

Aprendizado


Envolve




Um sistema que aprende melhora seu
comportamento futuro com base na experiência do
passado
Aquisição de conhecimento
Melhoria da performance
Processo conduzido pelo próprio agente
Aplicação


Ambientes complexo, grandes e dinâmicos
O aprendizado pode ser off-line ou on-line
Mestrado em Ciência da Computação
Motivação

Por que SMA?



Muitos problemas do mundo real são melhor
modelados/resolvidos através de um conjunto de
agentes
Mas SMAs estão tipicamente inseridos em
ambientes complexos – grandes, dinâmicos e
imprevisíveis
Por que aprendizado?


A aquisição manual de conhecimento é difícil
(manutenção, adaptação e tratamento de
incerteza)
Mas a inteligência pode não depender apenas de
um único agente
Mestrado em Ciência da Computação
Motivação

Portanto... vamos estudar o melhor
dos mundos!
SMA
Aprendizado
Aprendizado
Multiagente
Mestrado em Ciência da Computação
Roteiro




Alguns Conceitos
Características: aprendizado em SMA
Aprendizagem por reforço
Aprendizado em SMA




Aprendizado e coordenação de atividades
Aprendizado sobre e a partir de outros agentes
Aprendizado e comunicação
Conclusões
Mestrado em Ciência da Computação
Alguns Conceitos

Inteligência em SMA:


Por que pensar a inteligência como propriedade de
um único indivíduo?
Não existe inteligência em:




Um time de futebol?
Um formigueiro?
Na sociedade?
O conceito de inteligência em SMA é muito mais
abrangente...
Mestrado em Ciência da Computação
Alguns Conceitos

Aprendizado em um SMA não é
apenas uma ampliação do
aprendizado em sistemas single agent

Aprendizado em um SMA é mais do
que a soma dos aprendizados isolados
de cada agente!
Mestrado em Ciência da Computação
Roteiro




Alguns Conceitos
Características: aprendizado em SMA
Aprendizagem por reforço
Aprendizado em SMA




Aprendizado e coordenação de atividades
Aprendizado sobre e a partir de outros agentes
Aprendizado e comunicação
Conclusões
Mestrado em Ciência da Computação
Categorias de Aprendizado em SMA

Generalizando, existem duas
categorias de aprendizado em SMA:



Centralizado (ou isolado): o processo de
aprendizado é totalmente executado por um
agente, sem interação com demais agentes.
Descentralizado (ou iterativo): vários agentes
estão engajados em um mesmo processo de
aprendizado. Pode haver ou não troca de
informação
Em um SMA, um agente pode estar
envolvido em vários processos
centralizados/descentralizados
Mestrado em Ciência da Computação
Outras caracterizações

Grau de Descentralização:


Nível da Interação:


Observação por um curto período de tempo, ou
longas negociações
Grau de Envolvimento:


Um único agente seqüencial, ou vários agentes
atuando paralelamente
Algumas atividades só podem ser realizadas por
um dado agente, ou há substitutos
Objetivo:

Agentes têm objetivos complementares ou
conflitantes
Mestrado em Ciência da Computação
Principais correntes de pesquisa



Não existe uma metodologia de
ensino bem-definida para
aprendizado em SMA
Existem tendências, focos em
diferentes áreas, aplicações, ...
Estudaremos algumas delas...
Mestrado em Ciência da Computação
Mas antes...



Existem vários métodos de
aprendizado single-agente que podem
ser aplicados em SMA
Mas aprendizagem por reforço (RL) é
o método mais usado
Lembrando:



Aprendizado Supervisionado: um professor
especifica as ações desejadas
Aprendizado por Reforço: um crítico indica a
utilidade de cada ação
Aprendizado Não-supervisionado: o agente
procura similaridades nas suas ações
Mestrado em Ciência da Computação
Roteiro




Alguns Conceitos
Características: aprendizado em SMA
Aprendizagem por reforço
Aprendizado em SMA




Aprendizado e coordenação de atividades
Aprendizado sobre e a partir de outros agentes
Aprendizado e comunicação
Conclusões
Mestrado em Ciência da Computação
Aprendizagem por Reforço

“Aprender o que fazer (mapear
situações em ações) de forma a
maximizar um sinal numérico”
[Sutton e Barto, 1998]
Mestrado em Ciência da Computação
Aprendizagem por Reforço
Oponente sem
defesa...
Agente
Ambiente
Percepções (s)
Ações (a)
Reforço (+/-) R(s,a)
Mestrado em Ciência da Computação
Aprendizagem por Reforço



O agente percebe um estado s, e
escolhe uma ação a, que leva a um
novo estado s’
Cada par (s,a) possui um reforço
R(s,a) transmitido ao agente quando
executa a no estado s
O agente pratica uma política (s)  a
Mestrado em Ciência da Computação
Aprendizagem por Reforço


Queremos encontrar a política ótima
*(s)  a, que maximiza a soma
esperada de recompensas futuras
Podemos definir uma função
Q(s,a)  , que indica o retorno
esperado quando, a partir de s, o
agente executa a ação a e segue a
política  a partir de então
Mestrado em Ciência da Computação
Q-Learning

Q-Learning é um algoritmo que
computa iterativamente a função
Q: S x A  
Usa a regra de atualização:
Q(s,a)  Q(s,a) +  [r + V(s’) – Q(s,a)]
onde
V(s’) = maxaQ(s’,a)

Converge para a função Q* ótima

Mestrado em Ciência da Computação
Voltando a Aprendizado em SMA

Estudaremos três tópicos:



Aprendizado e coordenação de atividades
Aprendizado sobre e a partir de outros agentes
Aprendizado e comunicação
Mestrado em Ciência da Computação
Roteiro




Alguns Conceitos
Características: aprendizado em SMA
Aprendizagem por reforço
Aprendizado em SMA




Aprendizado e coordenação de atividades
Aprendizado sobre e a partir de outros agentes
Aprendizado e comunicação
Conclusões
Mestrado em Ciência da Computação
Aprendizado e Coordenação

Problemas de Coordenação:





Interesse coletivo e maximização da performance
global
Abordagens tradicionais tratam a coordenação em
tempo de projeto (off-line), especificando regras
de comportamento, protocolos de negociação, etc.
Mas SMAs são utilizados em ambientes abertos e
dinâmicos, com agentes que têm objetivos e
habilidades variáveis
Logo, torna-se necessário que os agentes se
adaptem a novas demandas e oportunidades
Solução:

Agentes devem aprender como coordenar suas
atividades dinamicamente
Mestrado em Ciência da Computação
Exemplos

Robocup:


Grupo de jogadores cuja medida de performance pode
ser dada por #GolsPro - #GolsContra
Patrulha:


Grupo de robôs, em que cada
um patrulha uma parte do terreno
Medida da performance dada pela ociosidade média do
terreno
Mestrado em Ciência da Computação
Aprendizado e Coordenação

Correntes de estudo:

Aprendizado Isolado: agentes não se comunicam
no processo de aprendizado: parte do princípio de
que a comunicação consome tempo, recursos, é
suscetível a falhas...



Pode ser centralizado ou distribuído
Aprendizado Interativo: agentes cooperam no
aprendizado, coordenando suas atividades
conjuntamente
Ambas utilizam aprendizagem por
reforço
Mestrado em Ciência da Computação
Aprendizado Isolado Centralizado

Características:



RL tradicional, em um único agente (coordenador)
O estado é o estado global
Uma ação, para n agentes, é dada por uma tupla:



<a1, a2,..., an>
A recompensa é a medida de performance global
do sistema
Problemas:



Tamanho do conjunto de ações exponencial no
tamanho de agentes (intratável!)
Acessibilidade total nem sempre é possível
Enfim: só funciona em ambientes pequenos...
Mestrado em Ciência da Computação
Exemplo: Futebol de barrinha

Ambiente:



S = (Pj1, Pj2, Pb, Po1, Po2)



onde Pi é a posição do jogador i
A = (aj1, aj2)


Barra pequena
Cada time com 2 jogadores
onde aji Є {tocar, chutar, marcarOponente1,
marcarOponente2, atacar}
R = #GolsPro - #GolsPro
Problema:

Mais e no futebol de campo, com 11 jogadores?
Mestrado em Ciência da Computação
Aprendizado Isolado Descentralizado

Características:


Cada agente aprende individualmente (RL)
Ambiente deve possuir:






Pouco acoplamento entre os agentes
O feedback dado em um tempo curto
Muitas possibilidades de comportamento ótimo
Resumindo: o ambiente deve dar “muito” reforço
Os agentes podem alcançar especialização, e não
aprenderem o mesmo comportamento
Problema:

Atribuição de crédito: como dar uma recompensa
pela performance individual de cada agente?
Mestrado em Ciência da Computação
Uma solução: Modelo de Recompensa

Selfish Utility (SU)


Team Game Utility (TG)


Cada agente recebe como recompensa uma
medida da sua performance
Cada agente recebe como recompensa uma
medida da performance global
Wonderful Life Utility (WLU)

Recompensa calculada como:


Recompensa global – Recompensa se o agente não
existisse
Penaliza conflitos por recompensas
Mestrado em Ciência da Computação
Aprendizado Interativo

Características:


Aprendizagem dos agente envolve comunicação e
coordenação explícita
Dois algoritmos:



Action Estimation Algorithm (ACE)
Action Group Estimation Algorithm (AGE)
Cada agente aprende individualmente (RL)
Mestrado em Ciência da Computação
Aprendizado Interativo - ACE

Action Estimation Algorithm (ACE):




Para um dado estado, cada agente divulga, em
broadcast, suas melhores ações e suas relevâncias
Os agentes escolhem a melhor ação nãoconflitante com o contexto de atividades existente
(inicialmente, vazio) e a insere no conjunto
Repete-se esses passos até que todos os agentes
tenham determinado suas ações
O contexto de atividade é então executado
Mestrado em Ciência da Computação
Aprendizado Interativo - AGE

Action Group Estimation Algorithm
(AGE):




Para um dado estado, cada agente divulga, em
broadcast, todas as ações possíveis e suas
relevâncias
Os agentes criam todos os contextos de atividades
não-conflitantes possíveis com as ações existentes
e as novas ações do agente
Repete-se esses passos até que todos os agentes
tenham informado suas ações
Escolhe-se o melhor contexto de atividades e o
executa
Mestrado em Ciência da Computação
Roteiro




Alguns Conceitos
Características: aprendizado em SMA
Aprendizagem por reforço
Aprendizado em SMA




Aprendizado e coordenação de atividades
Aprendizado sobre e a partir de outros agentes
Aprendizado e comunicação
Conclusões
Mestrado em Ciência da Computação
Aprendizado sobre e a partir de outros agentes



Ao contrário da coordenação, agora o
aprendizado objetiva uma melhoria
individual da performance do agente
Estuda como o aprendizado conduzido
por um agente pode ser influenciado
por outros agentes
Adivinhar o comportamento dos
outros agentes:

Preferência, Estratégias, Intenções, ...
Mestrado em Ciência da Computação
Explorando o Oponente

Características:




Utilizado em two player zero-sum games
Procura aprender a estratégia do oponente
observando o seu comportamento
A partir daí, adota uma estratégia mais inteligente
Abordagem com RL tradicional funciona em alguns
casos:



Gamão (trabalho de Tesauro, 1995)
Damas
Mas fracassa em outras


Jogos Estocásticos
Xadrez
Mestrado em Ciência da Computação
Explorando o Oponente

Min-Max Q-Learning:




Inclui as ações possíveis do oponente
Q(s,aagente, aoponente)
Bom contra oponente ótimo; não explora
comportamento estocástico do oponente
Exemplo: em um dado estado s
a1
Ações do
oponente
a1
a2
a3
a2
0
1
4
a3
5
2
3
Mestrado em Ciência da Computação
7
0
1
Ações do
agente
Explorando o Oponente

Opponent Modeling



Utiliza um modelo explícito do oponente
Computa a freqüência de cada ação executada
Calcula a recompensa esperada como uma média
ponderada pelas probabilidades
Mestrado em Ciência da Computação
Aprendizado sobre e a partir de outros agentes

Outras possibilidades de aplicação:


Aprender papéis organizacionais
Aprender em ambientes de mercado (leilão...)
Mestrado em Ciência da Computação
Roteiro




Alguns Conceitos
Características: aprendizado em SMA
Aprendizagem por reforço
Aprendizado em SMA




Aprendizado e coordenação de atividades
Aprendizado sobre e a partir de outros agentes
Aprendizado e comunicação
Conclusões
Mestrado em Ciência da Computação
Aprendizado e Comunicação

Aprender a ser comunicar:


Comunicação como aprendizado:


Nesse caso, o processo de aprendizagem objetiva
a diminuição da carga de comunicação entre os
agentes
Nesse caso, a comunicação é vista como um
método de troca de informações que permite aos
agentes refinarem suas tarefas de aprendizado
Nas duas abordagens:


Deixar claro o que, quando, como e com quem se
comunicar
Definir uma ontologia comum (consenso no
significado dos símbolos)
Mestrado em Ciência da Computação
Aprendendo a se Comunicar

Contract-net


Geralmente é implementado com broadcast:
satura a rede em grandes sistemas
Solução: Addressee Learning


Agentes adquirem e refinam conhecimento sobre
as habilidades de resolução de tarefas de outros
agentes
Implementação: CBR (case-based reasoning):


Cada agente possui uma base da casos, contendo,
para cada caso:
A especificação, os agentes que já resolveram, e
o quanto boa ou ruim foi a solução
Tarefas alocadas diretamente e dinamicamente
Mestrado em Ciência da Computação
Comunicação como Aprendizado

Abordagem 1: baixo-nível
Interações simples, do tipo pergunta e resposta
 Realiza troca de informações que estão faltando
 Resulta em informação compartilhada


Exemplo: Caçada





Caçadores caçam no tabuleiro
Têm visão limitada
Cada um tem uma Q-Table
Trocam informações do tipo onde
estou, o que vejo e o que aprendi
Resultado: os sensores e atuadores dos caçadores são
unidos (centralizados)
Mestrado em Ciência da Computação
Comunicação como Aprendizado

Abordagem 2: alto-nível
Interações complexas, como negociações ou explicação
mútua sobre o objetivo da combinação das informações
 Resulta em entendimento compartilhado e não apenas
em informação compartilhada

A1: proponho X

Exemplo: Blackboard
Em um quadro negro, agentes
propõem, contra-propõem,
aceitam e negam hipóteses
 Uma hipótese proposta por um
agente é uma generalização do
conhecimento desse agente

A2: concordo com X
A3: por que não
usamos Y no lugar
de X?
A1: concordo com Y
A2: concordo com Y
A1: ASSERT(Y)
A2: ASSERT(Y)
A3: ASSERT(Y)
Mestrado em Ciência da Computação
Roteiro




Alguns Conceitos
Características: aprendizado em SMA
Aprendizagem por reforço
Aprendizado em SMA




Aprendizado e coordenação de atividades
Aprendizado sobre e a partir de outros agentes
Aprendizado e comunicação
Conclusões
Mestrado em Ciência da Computação
Conclusões

Aprendizado multiagente é um tema
vasto, em que muitas e diferentes
abordagens existem



Muitas questões ainda em aberto...
O tema herda as complexidades
inerentes de SMA: comunicação,
coordenação, negociação.
O projeto mais complexo da
aprendizagem pode ser compensado
pela qualidade dos resultados
Mestrado em Ciência da Computação
Referências




Sen S., Weiss G., Multiagent systems: A modern
approach to Distributed Artificial Intelligence., Cap.
06, The MIT Press, 1999.
Stone, P., Veloso, M., Multiagent Systems: A Survey
from a Machine Learning Perspective, Carnegie
Mellon University, 1997
Veloso, M. Uther, W. (1997) Adversarial
Reinforcement Learning
http://citeseer.nj.nec.com/uther97adversarial.html
Sutton, R., Barto, A. Reinforcement Learning: An
Introduction. Cambridge, MA, 1998.
Mestrado em Ciência da Computação
Download

Aprendizagem SMA