page1 das-5341: o problema de aprendizagem por reforço prof. eduardo camponogara
TRANSCRIPT
Page1
DAS-5341: O Problema de Aprendizagem por Reforço
Prof. Eduardo Camponogara
Page2
Agenda• A interface agente-ambiente• Objetivos e ganhos• Retornos• Notação unificada• Processos de decisão Markovianos• Funções Valor• Otimalidade e aproximações
Page3
Conteúdo• Aqui apresentaremos o Problema Geral de
Aprendizagem por Reforço– Qualquer método capaz de resolvê-lo é um
método RL– Universo amplo de problemas podem ser
modelados como um problema geral RL
• Assuntos:– Formas matemáticas e resultados teóricos– Elementos-chave da estrutura matemática:
Equações de Bellman
Page4
Aprendizagem por Reforço• O problema RL é
um formalismo do problema de aprendizagem a partir de interações, almejando-se atingir um certo objetivo
Agente
Ambiente
Ação at
Ganho rt+1
Estado st
rt+1
st+1
Page5
A Interface Agente-Ambiente• O objetivo do agente é maximizar o ganho
com o passar do tempo
• A especificação completa de um ambiente define um problema RL
• Interações:– A cada instante t = 0, 1, 2, … o agente
observa o estado st, st S, e seleciona uma ação at, at A(st)
– No instante seguinte, o agente recebe um ganho rt+1 R e se encontra no estado st+1
Page6
Política de Controle (Decisão)• Política de Controle
– t: SxA -> R– t é um mapeamento de estados para
probabilidades de tomar-se ações– t(s, a) é a probabilidade do agente tomar a
ação “a” quando este se encontrar no estado “s”, no instante t
• Métodos – Métodos RL especificam como um agente
modifica sua política de controle t à medida que este acumula experiência a partir das interações com o ambiente
Page7
Formalismo: Geral e Flexível• Formalismo:
– Iterações podem representar intervalos de tempo ou pontos de decisão
– Ações podem ser de baixo-nível (comandos como voltagens para um motor) ou de alto-nível (iniciar um curso de pós-graduação)
– Estados de natureza variável (leitura de sensores ou representação simbólica)
Page8
O Que Constitui o Ambiente?
Page9
O Que Constitui o Ambiente?• Tipicamente, tudo que não pode ser
modificado arbitrariamente pelo agente faz parte do ambiente.
Page10
Exemplo: Bioreator• Problema: aplicar RL para determinar
continuamente a temperatura e a taxa de mistura de um bioreator
– Ações: pontos de temperatura e taxa alvo transferidas para um controlador de baixo-nível
– Estados: leituras de sensores indicando temperatura e composição da mistura
– Ganho: medidas contínuas da taxa de produção do composto desejado
Page11
Exemplo: Robô Reciclador
Obstáculo
Robô
Domínio
Lixo
Page12
Exemplo: Robô Reciclador• Cenário:
– Um robô móvel é encarregado de coletar latas vazias dentro de um domínio
– Ele possui sensores de obstáculos e de latas, um braço mecânico e este utiliza baterias recarregáveis
• As decisões de alto-nível são tomadas por um sistema RL, cujas decisões são:– Procurar por latas vazias– Permanecer estacionado, aguardando que
alguém lhe traga uma lata– Retornar à sua base para recarregar a bateria
Page13
Exemplo: Robô Reciclador• As decisões devem ser tomadas
periodicamente ou quando um evento ocorre• Ações:
1) procurar2) Permanecer no lugar3) retornar à base
• Estado: carga da bateria (alta e baixa)• Ganho:
Zero para todos os movimentos+1 quando recebe/encontra uma lata vazia-R se a energia acaba (R grande)
Page14
Objetivos e Ganhos• O uso de um sinal de ganho é uma das
características mais importantes de RL– Bastante flexível– Amplo espectro de aplicações
• O sinal de ganho é a maneira de se comunicar ao agente o que desejamos que ele faça, não como ele deve executar a tarefa
• Por isso, o ganho faz parte do ambiente
Page15
Retornos• Até este momento fomos imprecisos quanto ao
objetivo da aprendizagem
• Em geral, procuramos maximizar o retorno esperado Rt, sendo Rt definido como uma função sobre a sequência de ganhos. No caso mais simples
Rt = rt + rt+1 + … + rT
onde T é a última iteração
• A função acima faz sentido quando a interação agente-ambiente pode ser quebrada em subsequências chamadas episódios.– Jogada de Xadrez
Page16
Retornos• Cada episódio termina em um estado terminal
– Em tarefas episódicas, distinguimos estados não terminais, S, dos estados terminais, S+
• Quando a interação agente-ambiente não pode ser quebrada naturalmente em episódios, dizemos que a tarefa é contínua.– Assim, T = , podendo fazer Rt =
• Em tarefas contínuas, utiliza-se ganho amortizado
Rt = rt + rt+1 + 2rt+2 + … = krt+k
k = 0
Onde é um parâmetro, 0 1
Page17
Taxa de Amortização • Um ganho recebido k iterações no futuro vale
apenas k-1 vezes o valor que seria recebido
imediatamente
• Se < 1, a soma infinita tem um valor finito desde que a sequência {rt} seja limitada
• Se = 0, o agente é míope, se preocupando apenas com o ganho imediato
Page18
Exemplo: Balanceamento de Haste
vx
Page19
Exemplo: Balanceamento de Haste
• Tarefa episódica– Ganho +1 para episódio bem-sucedido– Ganho –1 para episódio mal-sucedido– O número de iterações seria o número de
passos até falha• Tarefa contínua
– Utiliza-se, alternativamente, o ganho amortizado– Ganho –1 em caso de falha e zero nos demais
casos• Em qualquer abordagem, o retorno é
maximizado ao tentarmos manter a haste na posição vertical
Page20
Notação Unificada: Tarefas Episódicas e Contínuas
• Tarefa episódica– Pode ser quebrada naturalmente em
episódios– Tratamento matemático simplificado
• Cada ação afeta um número finito de ganhos subsequentes
• Tarefa episódica pode ser transformada em tarefa contínua
s0 s1 s2
r1 r2 r3
r4, r5, … = 0
Page21
Propriedade Markov• No formalismo RL, o agente toma suas
decisões como uma função de um sinal do ambiente chamado de estado
• Que informação é requerida do sinal estado e que tipo de informações devemos esperar?
Page22
Propriedade Markov• Que informação é requerida do sinal estado
e que tipo de informações devemos esperar?
– Por estado entendemos toda e qualquer informação disponível ao agente
– Tipicamente, estados podem agregar muitas informações além dos sinais sensoriais
– Em geral não se penaliza um agente por não ter acesso a alguma informação relevante, mas por ter tido conhecimento e depois esquecido
Page23
Propriedade Markov• Idealmente, deseja-se um sinal estado
que sumariza de uma forma compacta todas as observações passadas, de maneira que toda a informação relevante seja mantida
• Um sinal estado que consegue reter toda a informação relevante é dito Markov, ou dito possuir a propriedade Markov
Page24
Exemplos de Estados Markov• Tabuleiro de Xadrez
– O estado do tabuleiro sumariza tudo que é importante sobre a evolução
Page25
Exemplos de Estados Markov• Tabuleiro de Xadrez
– O estado do tabuleiro sumariza tudo que é importante sobre a evolução
• Independência de caminho: não importa como que o estado foi atingido
• Assumiremos que o número de estados e sinais é finito– Isto nos permite trabalhar com somas de
probabilidades em vez de integrais e densidades de probabilidade
Page26
Dinâmica• Considere um ambiente que responde no instante t
+ 1 a uma ação tomada no instante t– Se
Pr{st+1 = s’, rt+1 = r | st, at, rt, st-1, at-1, …, r1, s0, r0} = Pr{st+1 = s’, rt+1 = r | st, at}
– Então o sinal estado é dito possuir a Propriedade Markov
• A política de decisão ótima para um estado Markov é tão boa quanto a melhor política de decisão como uma função do histórico completo
Page27
Exemplo: Pêndulo Invertido• Propriedade
Markov– Posição e
velocidade do carro
– Ângulo e taxa de variação do ângulo do pêndulovx
x
Page28
Processo de Decisão Markoviano (Markov Decision Process, MDP)
• Uma tarefa RL que satisfaz a propriedade Markov é dita Processo de Decisão Markoviano (MDP)
• Se o espaço de estados e ganhos é finito, então um MDP é definido por:
– um conjunto de estados– um conjunto de ações e– a dinâmica de um passo do ambiente
Page29
Processo de Decisão Markoviano (Markov Decision Process, MDP)
• S: conjunto de estados
• A(st), st S: conjunto de ações
• Dinâmica– Ps,s’
a = Pr{ st+1 = s’ | st = s, at = a}: probabilidades de transição
– Rs,s’a = E{rt+1 | st = s, at = a, st+1 = s’}
– {Ps,s’a} e {Rs,s’
a} definem completamente a dinâmica de um MDP
Page30
Exemplo: Robô Reciclador
Obstáculo
Robô
Domínio
Lixo
Page31
Exemplo: Robô Reciclador• As decisões do robô são:
1) Procurar por lata vazia2) Permanecer estacionário e aguardar até
que alguém traga uma lata vazia3) Voltar para à base para recarregar a
bateria• O agente toma decisões com base no nível de
energia da bateria, S = {high, low}• Espaço de ações:
– A(high) = {search, wait}– A(low) = {search, wait, recharge}
Page32
Tabela de Transiçõess s’ a Ps,s’
a Rs,s’a
High High Search Rsearch
High Low Search 1 – Rsearch
Low High Search 1 – Rrecharge
Low Low Search Rsearch
High High Wait 1 Rwait
High Low Wait 0 Rwait
Low High Wait 0 Rwait
Low Low Wait 1 Rwait
Low High Recharge
1 0
Low Low Recharge
0 0
Page33
Grafo de Transições
High Low
wait1, Rwait
, Rsearch 1-, Rsearch
search
, Rsearch
1-,Rrecharge search
1, 0recharge
wait
1, Rwait
Page34
Grafo de Transições• Nó Estado
– Um para cada estado (círculo grande e aberto)
• Nó Ação– Um para cada par estado-ação (círculo
pequeno e sólido)
Page35
Função Valor• Quase todos os algoritmos RL são baseados na
estimação da função valor– Uma função dos estados que estima o quão
“lucrativo” é se encontrar em um dado estado• A noção de lucrativo é definida em termos do
ganho esperado no futuro a partir do estado• Considere uma política , onde (s,a) é a
probabilidade de se tomar a ação “a” no estado “s”– Informalmente V(s), o valor do estado s
sob a política , é o retorno esperado quando iniciamos no estado s e seguimos
Page36
Função Valor• V é a função valor estado para uma política
V(s) = E{ Rt | st = s} = E{ krt+k+1} k = 0
• O valor de tomarmos uma ação a em um estado s sob a política , Q(s, a), é o retorno esperado de tomarmos a ação a em s e seguirmos a política daquele ponto em diante
Q(s,a) = E{ Rt | st = s, at = a}
= E{ krt+k+1 | st = s, at = a} k = 0
Page37
Ponto de Reflexão• Dado um problema RL e uma política , de que
forma poderíamos estimar V?
Page38
Método Monte Carlo• A função valor-estado V e a função valor-
ação Q podem ser estimadas por meio de
experiência
– Se um agente segue uma política e mantém uma média, para cada estado encontrado, do retorno obtido a partir daquele estado, então a média irá convergir para V(s)
• Tais métodos são conhecidos como Monte Carlo, pois consistem em tomarmos a média sobre amostras randômicas
Page39
Equações de Bellman• Uma propriedade fundamental das
funções valor, utilizadas em RL e programação dinâmica:
– Estas funções satisfazem uma relação recursiva particular
Page40
Equações de Bellman• Para qualquer política e qualquer estado s, a
seguinte condição de consistência é assegurada entre o valor de s e o valor dos possíveis estados seguintes:
• V(s) = E{ Rt | st = s}
= E{ krt+k+1 | st = s } k = 0
= E{ rt+1 + krt+k+2 | st = s} k = 0
Page41
Equações de Bellman
• V(s) = (s,a) Ps,s’a[ Rs,s’
a + E{krt+k+2 | st+1 = s’}]
a s’ k = 0
= (s,a) Ps,s’a [ Rs,s’
a + V(s’) ] a s’ A última equação e’ conhecida como Equação de
Bellman
Page42
Exemplo: Mundo Quadriculado (GridWorld)
• Estado: par (x, y) da posição no quadro
• Ações: {norte, sul, leste, oeste}
A B
B’
A’
+10
+5
Page43
Exemplo: Mundo Quadriculado (GridWorld)
• Ganho:– Ações que levam o agente
para fora, deixam o agente na posição, mas este é penalizado com ganho –1
– Ações que movem o agente para fora das posições A e B, levam o agente para as posições A’ e B’, e este recebe um ganho de +10 e +5.
– Demais ações recebem ganho nulo
A B
B’
A’
+10
+5
Page44
Exemplo: Mundo Quadriculado (GridWorld)
• Suponha que a política de decisão () é aleatória, i.e., o agente seleciona as ações com probabilidade uniforme
• Podemos então calcular V para = 0.9
Page45
Exemplo: Mundo Quadriculado (GridWorld)
• V para uniforme e = 0.9
3.3 8.8 4.4 5.3 1.5
1.5 3.0 2.3 1.9 0.5
0.1 0.7 0.7 0.4 -0.4
-1.0 -0.4 -0.4 -0.6 -1.2
-1.9 -1.3 -1.2 -1.4 -2.0
Page46
Função Valor Ótima• Resolver um Problema de Aprendizagem por
Reforço (RL) equivale a encontrar uma política que produz o retorno máximo a longo prazo
• Para MDPs finitos, podemos definir esta noção mais precisamente:
’ significa que domina ’, ou seja, é melhor ou equivalente a ’ se
V(s) V’(s) para todo s S
Page47
Função Valor Ótima• Resultados Conhecidos
– Existe pelo menos uma política * (política ótima) que não é dominada por nenhuma outra política
– Políticas ótimas * compartilham a mesma função valor-estado, sendo esta chamada função valor-estado ótima e denotada por V*
– V* é definida como:V*(s) = Max V(s) para todo s S
Page48
Equação Bellman de Otimalidade
• Observações
– Uma vez que V* é a função valor-estado ótima de uma política *, ela deva satisfazer a condição de consistência da equação de Bellman
– Uma vez que V* é ótima, ela pode ser escrita de forma a não fazer referência a nenhuma política específica
Page49
Equação Bellman de Otimalidade
• Intuitivamente, a Equação Bellman de Otimalidade expressa o fato de que o valor de um estado sob a política ótima deve ser igual ao retorno esperado da melhor ação a partir daquele estado
• V*(s) = Max Q*(s,a) a = Max E*{ Rt | st = s, at = a} a
= Max E{ krt+k+1 | st = s, at = a } a k = 0
= Max E{rt+1 + krt+k+2 | st = s, at = a } a k = 0
Page50
Equação Bellman de Otimalidade
V*(s) = Max E{rt + krt+k+2 | st = s, at = a } a k = 0
= Max Ps,s’a [ Rs,s’
a + V(s’) ] a s’
Page51
Considerações Finais• Para MDPs, a Equação Bellman de
Otimalidade tem uma solução única, independente da política
– A equação Bellman de Otimalidade é na verdade um sistema com N equações (N estados) e N variáveis
– Se a dinâmica do ambiente (Rs,s’a e Ps,s’
a) é conhecida, então podemos em princípio resolver este sistema de equações através de uma variedade de métodos
Page52
Considerações Finais• A partir de V* é fácil obter-se uma política
ótima *
Page53
Considerações Finais• A partir de V* é fácil obter-se uma política
ótima *
– Para cada estado s, existe uma ou conjunto de ações que atingem o valor máximo
– Qualquer política * que designe probabilidade não nula apenas para estas ações é ótima
– Qualquer política gulosa com base em V* é ótima
Page54
Fim• Obrigado pela presença!