Post on 30-Dec-2015
description
Aprendizagem por Reforço (RL) Relacional e RL Multi-Agente
Hugo Pimentel de Santana (hps@cin.ufpe.br)
2
Tópicos
Revisão (?) Q-LearningRL Multi-Agente Visão Geral dos Problemas RL em SMAs Cooperativos e Competitivos
Problemas e abordagens atuais
RL Relacional Motivação Visão Geral Aspectos Práticos
3
Q Learning
Algoritmo de aprendizagem Computa a função Q ótima (valor das ações)
Model-Free Pode ser usado mesmo que não se conheçaP
(função de transição de estados) nem RAgente visa aprender política: *(s) = argmaxa[Q(s,a)]
não é função de P nem de r
Utilizando: Q(st,at) = r(st,at) + V*(P(st,at) )
= r(st,at) + maxa’ [Q(st+1,a’)] Como calcular Q ?
4
Q-Learning
Atualiza-se Q(st) após observar o estado st+1 e recompensa recebida
Q(s1,aright) = r + maxa’Q(s2,a’) = 0 + 0.9 max{63,81,100} = 90
5
Algoritmo Q-Learning para mundos determinísticos
Para todo estado s e ação a, inicialize a tabela Q[s][a] = 0;Para sempre, faça: Observe o estado atual s; Escolha uma ação a e execute; Observe o próximo estado s’ e recompensa
r Atualize a tabela Q:
Q[s][a] = r + maxa’ (Q[s’][a’])
6
Tópicos
Revisão (?) Q-LearningRL Multi-Agente Visão Geral dos Problemas RL em SMAs Cooperativos e Competitivos
Problemas e abordagens atuais
RL Relacional Motivação Visão Geral Aspectos Práticos
7
RL Multi-Agente - Introdução
Teoria de RL tradicional Considera apenas um agente Aprende política que maximiza recompensas futuras
esperadas Provas formais de convergência p/ solução ótima
Ambiente estacionário P(s’,s,a) é uma distribuição qualquer
Sistemas Multi-Agentes Utilidade depende do comportamento coletivo Dinâmica não estacionária
Mais de um agente aprendendo simultaneamente RL em SMAs Cooperativos
Agentes aprendem a cooperar para atingir um objetivo comum RL em SMAs Competitivos
Agentes aprendem a competir em algum ambiente Conflito de recursos ou de metas
8
RL SMA-Competitivo
SMA Competitivo Recursos ou metas conflitantes Exemplo: Robocup
Problemas: Em ambientes competitivos, os outros agentes podem
reagir estrategicamente ao comportamento do agente ambiente não mais estacionário (dinâmica do ambiente
satisfaz uma distribuição P) Soma das recompensas esperadas não é mais uma
medida de utilidade tão boa Treinamento ideal deveria ser feito contra um agente
ótimo Nem sempre se sabe um comportamento ótimo
9
RL – SMA Competitivo
[Tesauro 1995] Modelagem do jogo de gamão como um problema de aprendizagem por reforço: Vitória: +100 Derrota: – 100 Zero para os demais estados do jogo
(delayed reward) Após 1 milhão de partidas contra ele
mesmo, joga tão bem quanto o melhor jogador humano
10
RL SMA Competitivo
RL tradicional Sucesso em algumas aplicações
Gamão Damas
Fracasso em outras Jogos Estocásticos Xadrez
Soluções atuais Min-Max Q-Learning (Littman) Opponent Modelling (Veloso et al) Prioritized Sweeping (Moore et al)
11
RL SMA Competitivo
[Veloso et al] Hexcer
Hexagonal Soccer
Min-Max Q-Learning
Escolha da melhor ação por min-max
12
RL – SMA Competitivo
Opponent Modeling Min-Max Q-Learning é bom contra oponente ótimo
Não explora comportamento estocástico do oponente
Solução computar frequencia de cada ação
Ação com maior recompensa esperada é escolhida
13
RL – SMA CompetitivoPrioritized Sweeping
Constrói modelo do mundo explícito P(s,s’,a) e R(s,a)
A cada passo, atualiza grafo com Novos links Incrementa contador em cada link, se este existe
Resolve o MDP utilizando Eq. de BellmanMelhor desempenho dos 4 métodos no Hexcer
P. Sweeping com Observação do oponente melhor ainda
14
Sistemas Multi-Agentes Cooperativos
Conceitos chave Interesse coletivo Maximização de performance global Necessidade de coordenação
Exemplos Robocup
Grupo de jogadores,cuja medida de performancepode ser dada por#GolsPro - #GolsContra
15
Sistemas Multi-Agentes Cooperativos
Exemplos Grupo de robôs para patrulhar uma área
Cada robô patrulha uma parte do terreno Performance é dada pela ociosidade (tempo que uma área do
terreno passa sem ser visitada) média do terreno performance global depende de como agentes interagem
16
RL SMA-CooperativoAbordagem Centralizada
Processo de decisão centralizado no coordenador
RL tradicional pode ser usado RL em um único agente (coordenador) Uma ação, para n agentes, é dada por:
<a1, a2, ..., an> O estado é o estado global Função de recompensa é a medida de performance
global do sistemaEx. Robocup
Ações <aGoleiro, aZagueiro1, aZagueiro2, … >
Recompensa #GolsPro - #GolsContra
17
Abordagem Centralizada
Problemas: Intratável!
#Ações exponencial no número de agentes Na robocup:
Se cada jogador pode executar 10 ações Coordenador teria 1110 ações possíveis para
escolher (25 bilhões) É preciso acessibilidade total
Não é possível na maioria dos casos práticos
Só é possível em ambientes pequenos
18
RL SMA-CooperativoAbordagem Distribuída
Cada agente aprende individualmente (independent learners)Classificadas de acordo com informação disponível para cada agente: Black-Box systems
O agente só toma conhecimento dos outros agentes pela dinâmica do ambiente
White-Box systems (joint action learners) O agente tem conhecimento total dos outros agentes, e
das ações tomadas por eles Gray-Box systems
O agente pode (ou não) comunicar suas ações (ou intenções de ações)
19
RL – SMA Cooperativo
Exemplo: Gray-Box x Black-Box na Patrulha
GBLA x BBLA (SU rewards)
4,269
4,769
5,269
5,769
6,269
6,769
1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96
GBLA_SU
BBLA_SU
20
Abordagem Distribuída - Problemas
Atribuição de Crédito (credit assignment problem) Como dar uma recompensa pela performance
individual de cada agente? Exemplo:
Um jogador sozinho dribla 2 zagueiros e faz o gol, apesar de nenhum outro atacante aparecer pra ajudar
Trabalhoso de recompensar individualmente
Garantir coordenação Exemplos:
Jogadores brigando entre si pela posse da bola Patrulha: agentes visitando os mesmos nós
simultaneamente
21
Abordagem Distribuída - Problemas
Ambiente não estacionário Agentes aprendem simultaneamente Dinâmica do sistema (P e R) muda
constantemente Como aprender a se comportar em um ambiente
deste tipo? Exemplo:
Agente aprendendo a bater escanteio: A cobrança correta de um escanteio depende do
posicionamento dos outros agentes Outros agentes estão aprendendo, e mudando sua
política de ações
22
Abordagem Distribuída
Algumas alternativas: Engenharia do modelo de recompensa
Adequar a função de recompensa ao propósito global
Otimização da função de recompensa resulta em otimização coletiva
Abordagens hierárquicas MDPs com opções Semi-Markov Decision Processes
Coordenação Explícita Coordinated Reinforcement Learning
23
Abordagem DistribuídaEngenharia das Recompensas
Adequar a função de recompensa Otimização da função de recompensa resulta em
otimização coletivaProblemas
Nem sempre a função de recompensa global pode ser decomposta em funções locais
O conhecimento de tal decomposição pode ser extremamente difícil de se adiquirir
Abordagens atuais Orientadas a um determinado domínio (geralmente
custosas) Exemplo: Se conhece a priori como recompensar o
comportamento de um lateral, causando melhor desempenho global
Abordagens genéricas Wonderful life utility, Selfish Utility, Team Game Utility
24
Modelos de Recompensa
Selfish Utility (SU) Cada agente recebe como recompensa uma
medida da sua performanceTeam Game Utility (TG) Cada agente recebe como recompensa uma
medida da performance globalWonderful Life Utility (WLU) Recompensa calculada como:
Recompensa global – Recompensa se o agente não existisse
Penaliza conflitos por recompensas
25
Modelos de Recompensa: Exemplo
Token Retrieval Problem[Wolpert et al]
8 agentes, inicialmente na mesmaposição
Objetivo: coletar maior soma de valores de tokens em menor tempo
Recompensa SU: Token recuperado pelo agente
Recompensa TG: A quantidade geral de tokens
Recompensa WLU: Mesmo que SU + Penalidade se compete por token com outro agente
26
Comparação de Modelos de Recompensa
TG apresenta baixa taxa de aprendizagem Problema da atribuição de crédito
SU apresentou baixa performanceWLU apresenta melhores resultados Aprende mais rapidamente
27
Abordagem DistribuídaCoordenação Explícita
Coordinated Reinforcement Learning (CRL) Coordenação explícita das ações Aproxima a performance global, localmente
Condição: performance global Q pode ser expressa como soma de
performances locais (de cada agente) Qj
Exemplos: Token Retrieval: Total de tokens = soma dos tokens
retirados por cada agente Em geral, soma das SU = performance global
Complexidade similar a de redes bayesianas Eficiente se há pouca dependência entre agentes
28
CRL – Escolha de Ações Cooperativa
Contexto G agentes Cada agente j (1jG) escolhe ação aj Aj
A = {A1,... AG} Estado do ambiente descrito por X = {X1,..., XG} Utilidade Global Q = jQj
Escolha de política ótima: A princípio, teria que experimentar todas as combinações possíveis
de ações (exponencial) Na prática, apenas alguns agentes influenciam um dado agente j
Definição Escopo[Qj] (A X)
O escopo da função de utilidade do agente j são as variáveis de ações e estados que influenciam este agente
29
CRL – Escolha de Ações Cooperativa
Grafo de Coordenação Arestas entre agentes que se influenciam
Exemplo Q = Q1(a1,a2) + Q2(a2,a4) + Q3(a1,a3) + Q4 (a3,a4)
Se Qj, é conhecido, o algoritmode eliminação de variáveis deredes bayesianas computaas ações ótimas eficientemente
30
CRL – Eliminação de Variáveis
Calculando Q no exemplo anterior: Analisando o agente 4:
Na sequência (3,2,1): Agente 1 escolhe ação que maximiza f2
Na ordem reversa, cada agente escolhe a ação ótima dada a última ação escolhida
31
CRL – Eliminação de Variáveis
Complexidade polinomial no número de variáveis eliminadas Exponencial na largura induzida do grafo de
coordenação
Encontra a solução ótimaÉ distribuído No entanto, necessita comunicação entre
agentes que participam de cada maximização local
Mas como aprender as funções Q ?
32
Coordinated RL – Q-Learning
Q-Learning tradicional, com aproximação de função:
Em Coordinated RL, o valor de V e de Q são computados localmente, utilizando o algoritmo de eliminação de variáveis
33
Coordinated RL - Conclusões
Abordagem cooperativa mais eficientePermite aproximação da optimalidade globalProblemas: Grafo de coordenação é estático
Se for dinâmico: domínios das funções Q locais têm que incluir
informação de todos os agentes Com Q-Learning, só pode ser utilizado com
aproximação de função Não há garantias formais de convergência
34
Tópicos
Revisão (?) Q-LearningRL Multi-Agente Visão Geral dos Problemas RL em SMAs Cooperativos e Competitivos
Problemas e abordagens atuais
RL Relacional Motivação Visão Geral Aspectos Práticos
35
RL Relacional - Motivação
RL tradicional: Não prove generalização do conhecimento
aprendido Não usufrui de particularidades do domínio
para diminuir número de estados
Exemplo: Conhecimento aprendido em um mundo
Wumpus 4x4 é útil em um mundo 8x8? Se descrição do estado contém informação do tipo
brisa_2_2, não é posssível generalizar Descrições do tipo: DistanciaX_Y(Brisa, 3,3), são
mais poderosas em termos de generalização
36
Relational Markov Decision Processes (RMDP) – [Guestrin]
Baseia-se nos RPM (Relational Probability Models)Elementos básicos (templates) Classes Links Mundo Modelo das Transições de Estado Template da Função de Recompensa
37
RMDP - Exemplo
Freecraft http://www.nongnu.org/stratagus/
Classes: Operários, Soldados, Recursos, Vilas...
“complex, scalable world for MDP solvers and reinforcement learning”
38
RMDP - Exemplo
Classes Agrupa objetos similares Possui
variáveis de estados associadas variável única de ação
Exemplo Classse Operario
Estados: Dom[Operario.Tarefa] = {Waiting, Mining,
Building} Dom[Operario.Energia] = {1,2,3}
Ações Dom[Operario.Ação] = {wait, mine, build}
39
RMDP – Exemplo
Links Simboliza relações entre objetos Exemplo:
(Vila.ConstruídaPor) = Operario (Vila.MinhaMadeira) = Recurso
Relacionamentos de n para n podem ser expressos por: (Inimigo.MeuSoldado) =
SetOf{Soldado}
40
RMDP – Exemplo
Mundo Instanciação das classes e suas relações Notação
O[] = Conjunto de objetos do mundo O[][C] = Conjunto de objetos do mundo
pertencentes a classe C Exemplo:
[][Operario] = {Operario1, Operario2} [][Vila] = {Vila1} [][Recurso] = {Ouro1} Vila1.ConstruídaPor = Operario1
41
RMDP - Exemplo
Modelo das Transições de Estado Pc(X’c|Xc,Ac,Xc.L1,Ac.L1,...) Em outras palavras:
A ocorrência de um estado X’, para um objeto C, é função somente de:
Variáveis do estado atual de C Variável da ação atual de C Variáveis dos estados e ações dos objetos que estão
relacionados a C
Exemplo POperario(Building|Operario.Tarefa, Operario.Energia,
Operario.Action, Vila.MinhaMadeira)
42
RMDP - Exemplo
Função de Recompensa Definida no nível das classes
Exemplo Recompensa associada a classe
Enemy RInimigo(Inimigo.Health) =
10, se Inimigo.Health = 0 (está morto) 0 caso contrário
43
RMDP – Função Valor
Localmente: Associada a cada objeto em
Globalmente Decomposta como a soma das funções locais
Passos para resolução Obtém-se um MDP fatorado para o problema
Um MDP fatorado é aquele cuja função de valor global é definida como a soma de funções de valor locais
Cada classe constitui um fator Aplicar Coordinated RL
44
RMDP – Generalização
Função Valor aprendida até agora no nível dos objetos
Eficiente, no entanto não generaliza
No entanto, valores aprendidos para a mesma classe são semelhantes:
45
RMDP - Generalização
Função valor baseada nas classes Mesma função valor, utilizada por cada
objeto com parâmetros diferentes
46
RMDP - Generalização
Exemplo FreecraftTreinamento feito 2x2Generalização para domínios 3x3, 4x4 e 5x5
47
Logical Markov Decision Programs (LOMDP)
Integra: Markov Decision Processes Logic Programming
LQ-Learning Especificação dos Estados
Conjunto de regras Especificação abstrata, instanciada de acordo com
fatos do mundo Instanciações diferentes do mesmo estado em um
LOMDP continuam pertencendo ao mesmo estado! Ações
Conjunto de predicados
48
LQ-Learning - Exemplo
Blocks World!Função Q(S,A):
Algoritmo: Similar ao Q-Learning tradicional Estado atual:
primeiro predicado satisfeito pela KB Ação a ser realizada
Aplica-se na ação abstrata a substituição obtida pela unificação da KB com a descrição do estado
49
LQ-Learning - Resultados
Em [Kerstin et al] Aprendeu-se automaticamente a
estratégia unstack-stack Referência na comunidade de planning
50
Referências
Lecture slides do livro Machine Learning, do Tom Mitchell http://www-2.cs.cmu.edu/~tom/mlbook-chapt
er-slides.html
Reinforcement Learning: An introduction, de Sutton & Barto disponível online http://envy.cs.umass.edu/~rich/book/the-boo
k.html
Veloso, M. Uther, W. (1997) Adversarial Reinforcement Learning http://citeseer.nj.nec.com/
uther97adversarial.html
51
Referências
Pieter Jan 't Hoen, Sander M. Bohte (2003) COllective INtelligence with Sequences of Actions: Coordinating actions in Multi-Agent Systems
http://citeseer.nj.nec.com/580878.html
[Kersting et al] Logical Markov Decision Programs
http://citeseer.nj.nec.com/579932.html
Home Page do Carlos Guestrin http://robotics.stanford.edu/~guestrin/