510 likes | 645 Views
Aprendizagem por Reforço (RL) Relacional e RL Multi-Agente. Hugo Pimentel de Santana (hps@cin.ufpe.br). Tópicos. Revisão (?) Q-Learning RL Multi-Agente Visão Geral dos Problemas RL em SMAs Cooperativos e Competitivos Problemas e abordagens atuais R L Relacional Motivação Visão Geral
E N D
Aprendizagem por Reforço (RL) Relacional e RL Multi-Agente Hugo Pimentel de Santana (hps@cin.ufpe.br)
Tópicos • Revisão (?) Q-Learning • RL 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
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 R • Agente 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 ?
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
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’])
Tópicos • Revisão (?) Q-Learning • RL 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
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
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
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
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)
RL SMA Competitivo • [Veloso et al] • Hexcer • Hexagonal Soccer • Min-Max Q-Learning • Escolha da melhor ação por min-max
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
RL – SMA Competitivo • Prioritized 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 Bellman • Melhor desempenho dos 4 métodos no Hexcer • P. Sweeping com Observação do oponente melhor ainda
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
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
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 sistema • Ex. Robocup • Ações • <aGoleiro, aZagueiro1, aZagueiro2, … > • Recompensa • #GolsPro - #GolsContra
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
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)
RL – SMA Cooperativo • Exemplo: • Gray-Box x Black-Box na Patrulha
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
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
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
Abordagem DistribuídaEngenharia das Recompensas • Adequar a função de recompensa • Otimização da função de recompensa resulta em otimização coletiva • Problemas • 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
Modelos de Recompensa • Selfish Utility (SU) • Cada agente recebe como recompensa uma medida da sua performance • Team Game Utility (TG) • 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
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
Comparação de Modelos de Recompensa • TG apresenta baixa taxa de aprendizagem • Problema da atribuição de crédito • SU apresentou baixa performance • WLU apresenta melhores resultados • Aprende mais rapidamente
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
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
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
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
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 ?
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
Coordinated RL - Conclusões • Abordagem cooperativa mais eficiente • Permite aproximação da optimalidade global • Problemas: • 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
Tópicos • Revisão (?) Q-Learning • RL 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
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
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
RMDP - Exemplo • Freecraft • http://www.nongnu.org/stratagus/ • Classes: • Operários, Soldados, Recursos, Vilas... • “complex, scalable world for MDP solvers and reinforcement learning”
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}
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}
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
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)
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
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
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:
RMDP - Generalização • Função valor baseada nas classes • Mesma função valor, utilizada por cada objeto com parâmetros diferentes
RMDP - Generalização • Exemplo Freecraft • Treinamento feito 2x2 • Generalização para domínios 3x3, 4x4 e 5x5
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
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
LQ-Learning - Resultados • Em [Kerstin et al] • Aprendeu-se automaticamente a estratégia unstack-stack • Referência na comunidade de planning
Referências • Lecture slides do livro Machine Learning, do Tom Mitchell • http://www-2.cs.cmu.edu/~tom/mlbook-chapter-slides.html • Reinforcement Learning: An introduction, de Sutton & Barto disponível online • http://envy.cs.umass.edu/~rich/book/the-book.html • Veloso, M. Uther, W. (1997) Adversarial Reinforcement Learning • http://citeseer.nj.nec.com/uther97adversarial.html