Aprendizado por Reforço

Documentos relacionados
Aprendizado por Reforço usando Aproximação

INF 1771 Inteligência Artificial

lnteligência Artificial Introdução ao Processo Decisório de Markov

INF 1771 Inteligência Artificial

Inteligência Artificial. 3º Quadrimestre de 2018

Aprendizado por Reforço

Inteligência Artificial

CEFET/RJ Inteligência Artificial (2017.2) Professor: Eduardo Bezerra Lista de exercícios 03

IA - Planejamento II

Aprendizagem por Reforço

3 Aprendizado por reforço

CEFET/RJ Inteligência Artificial (2018.1) Prof. Eduardo Bezerra Lista de exercícios 04

Aprendizado por Reforço para um Sistema Tutor Inteligente sem Modelo

CES Modelos Probabilísticos em Grafos Introdução a Modelo Decisório de Markov

Busca Competitiva. Inteligência Artificial. Até aqui... Jogos vs. busca. Decisões ótimas em jogos 9/22/2010

lnteligência Artificial Introdução ao Aprendizado por Reforço (Reinforcement Learning)

Controle Ótimo - Aula 6 Exemplos e Exercícios

Inteligência Artificial

Jogos com Oponentes. March 7, 2018

Cadeias de Markov. Ricardo Ehlers Departamento de Matemática Aplicada e Estatística Universidade de São Paulo

Aprendizado por reforço em lote para o problema de tomada de decisão em processos de venda

EXPLORANDO GRAFOS 1. Grafos e Jogos uma introdução

Tópicos Especiais em Redes: Introdução a Teoria dos Jogos com Aplicações a Redes de Computadores

Programa: Ciência da Computação Orientadora: Prof ạ Dr ạ Leliane Nunes de Barros

Inteligência Artificial

CES Modelos Probabilísticos em Grafos Introdução a Modelo Decisório de Markov

Jogos. Geralmente o oponente tentará, na medida do possível, fazer o movimento menos benéfico para o adversário.

Árvores de Decisão. Fabrício Olivetti de França. Universidade Federal do ABC

Jogos com Oponentes. Problemas de busca: não assumem a presença de um oponente

Árvore de Jogos Minimax e Poda Alfa-Beta

Aula - Introdução a Teoria da Probabilidade

a) Defina em Prolog iguais/1, um predicado que recebe um estado do jogo e que verifica que todas as pilhas têm o mesmo número de peças.

Utilização de Aprendizagem por Reforço para Modelagem Autônoma do Aprendiz em um Tutor Inteligente

Jogos com Oponentes. espaço de busca muito grande tempo para cada jogada

Controle Ótimo - Aula 2 (Exemplos 2, 3 e 4)

Jogos com Oponentes. Problemas de busca: não assumem a presença de um oponente

Regressão Linear. Fabrício Olivetti de França. Universidade Federal do ABC

PMR Computação para Mecatrônica


AGENTES E AMBIENTES. BREVE INTRODUÇÃO A AGENTES Prof. Tacla UTFPR/Curitiba

Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall.

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro

Jogos de soma zero com dois jogadores

APLICAÇÃO DO ALGORITMO SARSA NA COLETA DE LIXO - ESTUDO DO PARÂMETRO ALPHA 1

2 Aprendizado de Máquina

Busca em Espaço de Estados a

Inteligência Artificial: 2. Agentes Inteligentes. Capítulo 2 Russell e Norvig

Refinamentos sucessivos

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula VI Busca Competitiva

Algoritmos de Aprendizado. Formas de Aprendizado. Aprendizado Batch x Incremental. Aprendizado Batch x Incremental

CARTAS, EMBARALHAMENTOS E MATEMÁTICA. Krerley Oliveira Universidade Federal de Alagoas

Aprendizado, minimização do arrependimento e equilíbrio (Learning, Regret Minimization, and Equilibria)

Aprendizado de Supervisionado

Redes Neurais Artificiais

Processamento da Informação

CENTRO UNIVERSITÁRIO DA FEI DANILO HERNANI PERICO USO DE HEURÍSTICAS OBTIDAS POR MEIO DE DEMONSTRAÇÕES PARA ACELERAÇÃO DO APRENDIZADO POR REFORÇO

Aprendizado Não-Supervisionado

O valor esperado de uma quantidade aleatória Paulo Cezar Pinto Carvalho IMPA e EMAp/FGV

15 29, , , , , , , , , ,55

Técnicas Inteligência Artificial

Teoria de Jogos Evolucionária

IEC081 Introdução à Ciência dos Computadores Estruturas Condicionais em Linguagem C

Algoritmos de retrocesso

Aprendizado de Máquina

Rafael Izbicki 1 / 38

TÓPICO. Fundamentos da Matemática II INTRODUÇÃO ÀS PROBABILIDADES14. Licenciatura em Ciências USP/ Univesp. Vanderlei S. Bagnato

Jogo do Feche a caixa

UNIVERSIDADE FEDERAL DO ABC. 1 Existência e unicidade de zeros; Métodos da bissecção e falsa posição

Algoritmos de retrocesso

Análise de Algoritmos

7 a Lista de Exercícios Assunto: Funções e passagem por referência com vetor e matriz (Tópico 7)

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

Agentes inteligentes. Capítulo 2 Inteligência Artificial Sistemas de Informação

CEFET/RJ Disciplina: Inteligência Artificial Professor: Eduardo Bezerra Lista de exercícios 02

UNIVERSIDADE CATÓLICA DE PELOTAS ESCOLA DE INFORMÁTICA PROGRAMA DE PÓS-GRADUAÇÃO EM INFORMÁTICA

Estatística e Modelos Probabilísticos - COE241

Fundamentos de Inteligência Artificial [5COP099]

Processamento da Informação

Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers. Jhonny Moreira

Algoritmos e Estrutura de Dados

Agentes Autônomos e Super Mario World

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Otimização por Colônia de Formigas (ACO)

GRAFOS Aula 07 Algoritmos de Caminho Mínimo: Bellman-Ford / Floyd-Warshall Max Pereira

INTRODUÇÃO ÀS PROBABILIDADES15

Problema de Satisfação de Restrições

Problema de Satisfação de Restrições. Problema de Satisfação de Restrições. Grafo de restrições. Exemplo: 4 Rainhas como um PSR

Intuição da sintaxe de L2 (35)

Algoritmos de Aprendizado. Formas de Aprendizado. Aprendizado Batch x Incremental. Aprendizado Batch x Incremental

CONTROLE REGIONAL DE TENSÃO UTILIZANDO LÓGICA FUZZY E APRENDIZADO POR REFORÇO. Alessandro Bulhões Marques

Estrutura comum dos AEs

Aula 03: Análise de algoritmos melhor caso, pior caso e caso médio

Controle Ótimo - Aula 1 (Prova do Algoritmo da PD e Exemplo 1)

Transformando seu BBC micro: bit em jogo. Podemos jogar com o BBC micro:bit?

Aprendizagem de Máquinas

RESOLUÇÃO DE PROBLEMAS POR MEIO DE BUSCA (PARTE 1) *Capítulo 3 (Russel & Norvig)

Jogos Estratégias Mistas

Transcrição:

Aprendizado por Reforço Fabrício Olivetti de França Universidade Federal do ABC

Tópicos 1. Aprendizado por Reforço 2. Q-Learning 3. SARSA 4. Outras ideias 1

Aprendizado por Reforço

Problemas de decisão sequencial Imagine o seguinte ambiente: 3 +1 2 # 1 1 S 1 2 3 4 com S representando onde o agente inicia, # um obstáculo e +1, 1 os estado finais. 2

Problemas de decisão sequencial Dado um conjunto de ações A = {direita, esquerda, cima, baixo}, o objetivo é determinar a sequência de ações que maximiza a recompensa. Assumindo um ambiente totalmente observável e determinístico, uma solução seria: {C, C, R, R, R}. 3

Problemas de decisão sequencial Porém, em muitas situações o modelo é estocástico e o agente pode não obedecer exatamente o comando. Imagine que o agente do exemplo faz a ação com probabilidade 0.8 e, com probabilidades de 0.1 ele move nas direções que formam 90 em relação a direção desejada. 4

Problemas de decisão sequencial Nessa situação, a solução proposta anteriormente atinge a recompensa +1 com probabilidade 0.8 5 = 0.32768. Note que essa solução tem também a chance de atingir essa recompensa pelo outro lado com probabilidade 0.1 4 0.8 = 0.32776. 5

Problemas de decisão sequencial Dessa forma temos P(s s, a) como sendo a probabilidade de atingir o estado s dado que o agente está no estado s e tentou fazer a ação a. Para sermos capaz de avaliar soluções para esse tipo de problema devemos definir uma função utilitária de recompensa R(s), que pode ser positiva ou negativa, e indica a qualidade de estar no estado s. 6

Problemas de decisão sequencial Para nosso exemplo, vamos assumir R(s) = 0.04 para qualquer estado, exceto os finais em que o valor é igual a recompensa final. A recompensa de uma sequencia de ações é a soma de todas as recompensas obtidas. Ou seja, se o agente leva 10 ações antes de chegar até o estado final +1, a recompensa total será 0.04 10 + 1 = 0.6. 7

Problemas de decisão sequencial A representação de uma solução para esse problema é através de uma função denominada poĺıtica: π : s S a A, tal que π(s) retorna a ação que deve ser executada pelo agente no estado s. 8

Problemas de decisão sequencial Uma poĺıtica ótima π é aquela que maximiza a maior recompensada total esperada. 9

Recompensa A recompensa pode ser aditiva: U([s 0, s 1, s 2,...]) = R(s 0 ) + R(s 1 ) + R(s 2 ) +... ou descontada por um fator γ: U([s 0, s 1, s 2,...]) = R(s 0 ) + γr(s 1 ) + γ 2 R(s 2 ) +..., com o fator de desconto 0 γ 1. Um desconto de 0 só leva em conta o estado final, já um desconto igual a 1 é a recompensa aditiva. 10

Poĺıtica Ótima Dada a recompensa total esperada para uma poĺıtica π: U π (s) = E [ t=0 γt R(s t )], a poĺıtica ótima pode ser encontrada como: π s = s U π (s), ou π = a A s P(s s, a)u(s ). 11

Equação de Bellman Partindo da poĺıtica ótima chegamos na equação de Bellman para o valor de um estado: U(s) = R(s) + γmax a s P(s s, a)u(s ) 12

Equação de Bellman No nosso exemplo, partindo do estado (1, 1) temos: (1, 1) = 0.04 + γmax[ 0.8U(1, 2) + 0.1U(2, 1) + 0.1U(1, 1), 0.9U(1, 1) + 0.1U(1, 2), 0.9U(1, 1) + 0.1U(2, 1), 0.8U(2, 1) + 0.1U(1, 2) + 0.1U(1, 1)] com a sequência cima, esquerda, baixo, direita, o que nos indica que cima é a melhor ação. 13

Algoritmo Value-Iteration Algoritmo que atualiza os valores de U utilizando a própria equação de Bellman até convergência. procedure ValueIteration U, U = 0 δ = 0 while δ < (1 γ)γ do for s S do U (s) = R(s) + γmax a s P(s s, a)u(s ). δ = max(δ, abs(u (s) U(s))) return U 14

Algoritmo Policy-Iteration Nesse algoritmo fazemos o procedimento inverso, iniciamos com uma poĺıtica π, avaliamos e atualizamos. procedure PolicyIteration changed = True while changed do U = eval(π) changed = False for s S do if max a s P(s s, a)u(s ) > s P(s s, π(s))u(s ) then π(s) = a s P(s s, a)u(s ) return π changed = True 15

Aprendizado por Reforço Até esse instante assumimos que o agente tem um modelo completo do ambiente, sabe exatamente o estado atual, o conjunto de ações e as recompensas para cada estado, em muitos casos não temos conhecimento de nenhum desses. Imagine jogar um jogo sem conhecer as regras e, após algumas centenas de jogadas, o seu oponente anuncia: Você perdeu!. 16

Aprendizado por Reforço Vamos assumir: Totalmente observável: o agente consegue conhecer o estado atual do ambiente. O agente não sabe em que cada ação resulta. O efeito das ações são probabiĺısticas. 17

Aprendizado por Reforço Podemos tentar: Aprender uma função utilidade de cada estado e usar tal função para selecionar as ações que maximizam o valor total esperado. Aprender uma função Q(s, a) que retorna um valor esperado de executar uma ação no estado atual. Aprender uma função que retorna uma ação dado um estado. Na aula de hoje aprenderemos o segundo. 18

Q-Learning

Q-Learning Aprender Q(s, a) que retorna um valor esperado ao executar uma certa ação a no estado s. Tal função é relacionada a função utilidade de tal forma que U(s) = max a Q(s, a). Não precisamos estimar P(s s, a) e, portanto, Q-Learning é um algoritmo model free. 19

Q-Learning Da mesma forma que o algoritmo Value-Iteration, atualizamos os valores de Q(s, a) por: Q(s, a) = Q(s, a) + α(r(s) + γ max a Q(s, a ) Q(s, a)), com α sendo a taxa de aprendizado. 20

Algoritmo Q-Learning procedure QLearning while s! = final do a = a Q(s, a) r = reward(s, a) Q(s, a) = Q(s, a) + α(r(s) + γ max a Q(s, a ) Q(s, a)) return Q, a 21

SARSA: State-Action-Reward-State-Action Um problema do Q-Learning é que ele não leva em conta as consequências do ato atual, ou seja, ele assume que a ação escolhida para executar terá consequências futuras ótimas. Uma forma de aliviar tal problema é modificando a equação de atualização de Q(s, a) para: Q(s, a) = Q(s, a) + α(r(s) + γq(s, a ) Q(s, a)), ou seja, além do estado e ação atual s, a, também já deve ser conhecidos o estado e ação futura s, a. Basta alterar a linha pertinente no algoritmo anterior. 22

Outras ideias

Q-Learning x Mario O algoritmo de Q-Learning apresenta alguns problemas quando executado no jogo Super Mario World: A recompensa inerente do jogo ocorre em ocasiões muito especificas: quando mata um inimigo, quando o Mario morre, quando coleta moedas, etc. Não existe uma função de recompensa bem formada. Existem muitas combinações possíveis de estado e ações, o algoritmo Q-Learning converge rapidamente para um ótimo local, muitas vezes ruim. Uma ação feita em um estado s pode refletir negativamente apenas alguns estados depois. O algoritmo leva em conta apenas o atual e o imediatamente seguinte. 23

Recompensa A recompensa foi definida como: R = 0.3 log r + 0.5direita 2.0gameOver + 0.1(1 gameover, com r sendo qualquer pontuação que o jogador ganhou ao executar a ação, direita indica se o jogador andou para a direita sem perder o jogo, e gameover é 1 se ele perdeu o jogo e 0 caso contrário. Essa recompensa estimula que o jogador siga em frente e não morra. 24

Exploração vs Explotação Exploração: aprender possíveis valores de Q(s, a) para combinações de estado e ação ainda não observados. Explotação: seguir um caminho mais provável de maximar a recompensa, dado o conhecimento atual. 25

Exploração vs Explotação Com certa probabilidade escolhe entre explorar e explotar. Se escolher explotar, o agente segue a ação que maximiza o valor de Q(s, a). Caso seja escolhido explorar, ou escolhe-se uma ação completamente aleatória, ou uma dentre aquelas que foram pouco exploradas. Além disso, α = α 0 /t com t sendo o número de episódios jogados até então. 26

Efeito colateral Para aliviar o problema de ações com efeito negativos apenas após algumas transições de estado, os valores de Q(s, a) são atualizados ao final de um episódio com: Q(s, a) = Q(s, a) + α(0.1 log ( x) Q(s, a), para todo (s, a) desse episódio e com x sendo o total da distância percorrida pelo Mario. 27

Próxima aula Aprenderemos como usar o conhecimento de Aprendizado Supervisionado para estimar a função U(s) de tal forma que possamos encontrar a poĺıtica ótima com esse valor aproximado. 28