Você está na página 1de 47

Aprendizagem por Reforo

Motivao
! Como um agente aprende a escolher aes apenas
interagindo com o ambiente?
n Muitas vezes, impraticvel o uso de aprendizagem
supervisionada
w Como obter exemplos do comportamento correto e
representativo para qualquer situao?
w E se o agente for atuar em um ambiente desconhecido?
n Exemplos:
w Criana adquirindo coordenao motora
w Rob interagindo com um ambiente para atingir objetivo(s)

2
Exemplo de aprendizado por reforo
Setas
Start S2 indicam a
fora entre
dois estados

S4 S3

S8 S7

S5 Goal
A primeira ao
Start S2 leva para S2

Prximo estado
escolhido
S4 S3 aleatriamente
de um dos
possveis
estados,
S8 S7 ponderado pela
fora da
associao

S5 Goal Associao =
largura da linha
Supunha que a
Start S2 escolha leve a
S3

S4 S3

S8 S7

S5 Goal
Em S3, as
Start S2 possveis
escolhas so S2,
S4, or S7.

S4 S3 S7 escolhido
(aleatriamente)

S8 S7

S5 Goal
Por sorteio, S3
Start S2 o prximo
escolhido

S4 S3

S8 S7

S5 Goal
A prxima S4
Start S2

S4 S3

S8 S7

S5 Goal
E ento S5
Start S2 escolhido
aleatriamente

S4 S3

S8 S7

S5 Goal
E finalmente
Start S2 atingimos a
meta

S4 S3

S8 S7

S5 Goal
Quando a meta
Start S2 atingida,
reforce a
conexo entre
ele e o estado
S4 S3 que levou a ele

Na prxima vez
que S5 for
S8 S7 alcanado,
parte da fora
de associao
ser passada
S5 Goal para S4...
Comece o
Start S2 percurso
novamente

S4 S3

S8 S7

S5 Goal
Suponha que
Start S2 aps alguns
movimentos,
cheguemos
novamente em
S4 S3 S5

S8 S7

S5 Goal
S5 tem grande
chance de atingir
Start S2 a meta pela rota
com mais fora

Em aprendizado
S4 S3 por reforo, a
fora
passada de volta
para o estado
S8 S7 anterior

Esse processo
leva a criar um
S5 Goal caminho entre o
incio e a meta
Essa a
Start S2 situao aps
vrios
reinicios

S4 S3

S8 S7

S5 Goal
O que aprendizagem por
reforo (tradicional)?
! Problema de aprendizagem (no uma
tcnica)
n Um agente, em um ambiente
n A cada instante de tempo t:
w o agente est em um estado s
w executa uma ao a
w vai para um estado s
w recebe uma recompensa r
n Problema da aprendizagem por reforo:
w Como escolher uma poltica de aes que maximize o
total de recompensas recebidas pelo agente

16
O problema da aprendizagem
por reforo
Agente autmato otimizador adaptativo

Estado Interno (modelo do mundo)

Percepes Reforo (+/-) Ao

Ambiente

17
Algumas aplicaes
! [Tesauro, 1995] Modelagem do jogo de
gamo como um problema de aprendizagem
por reforo:
n Vitria: +100
n Derrota: 100
n Zero para os demais estados do jogo (delayed
reward)
n Aps 1 milho de partidas contra ele mesmo, joga
to bem quanto o melhor jogador humano

18
Algumas aplicaes
! Time Brainstormers da Robocup (entre os 3
melhores nos 3 ltimos anos)
n Objetivo: Time cujo conhecimento obtido 100%
por tcnicas de aprendizagem por reforo
n RL em situaes especficas
w 2 atacantes contra 2 defensores
w habilidades bsicas

! Inmeras aplicaes em problemas de


otimizao, de controle, jogos e outros...

19
Patrulha multi-agente
! Dado um mapa, um grupo
de agentes deve visitar
continuamente locais
especficos deste mapa de
maneira a minimizar o
tempo que os ns ficam sem
serem visitados Performance comparisson 5 agents

! Recompensa: ociosidade dos 100

ns visitados
90
80

Average idleness
70
60

! Coordenao emergente 50
40

(mesmo sem comunicao 30


20
10

explcita) 0
Conscientious Heuristic Conscientious LearnerAgent
cognitive agent Coordinator reactive agent

20
Conceitos Bsicos
! Processo de deciso de Markov (MDP)
n Conjunto de estados S
n Conjunto de aes A
n Uma funo de recompensa r(s,a)
n Uma funo de transio de estados (pode ser
estocstica) (s,a)
! Poltica de aes (s) :
w : S A

21
Estados e Aes
! Estado: conjunto de caractersticas indicando
como est o ambiente
n Formado pelas percepes do agente + modelo do
mundo
n Deve prover informao para o agente de quais aes
podem ser executadas
! A representao deste estado deve ser
suficiente para que o agente tome suas
decises (satisfaz a propriedade de Markov)
n A deciso de que ao tomar no pode depender da
seqncia de estados anteriores
n Ex: Um tabuleiro de dama satisfaz esta propriedade,
mas de xadrez no
n O ambiente no precisa ser episdico
22
A funo de recompensa
! Feedback do ambiente sobre o
comportamento do agente
! Indicada por r:(S A) R
n r(s,a) indica a recompensa recebida
quando se est no estado s e se executa a
ao a
n Pode ser determinstica ou estocstica

23
Funo de transio de estados
! : (S A) S
! (s,a) indica em qual estado o agente est,
dado que:
n Estava no estado s
n executou a ao a
! Ambientes no-determinsticos:
n escrita como (s,a,s )
n indica a probabilidade de ir para um estado s
dado que estava em s e executou a

24
Exemplos de MDPs
Problema Estados Aes Recompensas

Agente jogador Configuraes do Mover uma #capturas


de damas tabuleiro determinada #perdas
pea

Agente em jogo Posies/energia Mover-se em (Sangue tirado


de luta dos lutadores, uma sangue perdido)
tempo, se est determinada
sendo atacado direo, lanar
ou no, etc... magia, dar
porrada, etc...
Agente Posio no mapa Ir para algum Ociosidade
patrulhador (atual e lugar vizinho do (tempo sem
passadas), mapa visitas) do lugar
ociosidade da visitado
vizinhana, etc... atualmente

25
Poltica de aes ()
! Funo que modela o comportamento do
agente
n Mapeia estados em aes
! Pode ser vista como um conjunto de regras
do tipo sn am
n Exemplo:
w Se estado s = (inimigo prximo, estou perdendo e
tempo acabando) ento
ao a = (usar magia);
Se estado s =(outro estado) ento
...

26
Funo valor dos estados V(s)
(S R)
! Como saber se um determinado estado
bom ou ruim?
n A funo valor expressa esta noo, em termos
das recompensas e da poltica de aes
n Representa a recompensa a receber em um
estado s, mais as recompensas futuras se seguir
uma poltica de aes
w ex. tornar-se diretor, vale pelo que o cargo permite e
permitir nas prximas promoes (no interessa de
onde veio - chefe de seo)
n V(s0) = r0 + r1 + r2 + r3 + ...
w Problema: se o tempo for infinito, a funo valor do
estado tende a infinito 27
Funo Valor dos estados
n Para garantir convergncia e diferenciar
recompensas distantes do estado atual, usa-se um
fator de desconto
01
n V(st) = rt + rt+1 + 2 rt+2 + 3 rt+3 ...
n V(st) = rt + V(s ), onde:
w rt = r(st, (st))
w s = (st, (st))
n Ex. Se = 90%, ento:
w V(st) = rt + 0.9 rt+1 + 0.81 rt+2 + 0.729 rt+3 ...

28
Funo valor das aes
Q(s,a) : (S A) R

! Analogamente, ela diz a soma das


recompensas a obter dado que:
n o agente est no estado s
n executou uma ao a

n a partir da, seguiu uma poltica de aes

! Q(s,a) = r(s,a) + V(s ), onde:


n s = (s,a)
w o valor da ao a recompensa da ao mais o
valor do estado para onde o agente vai devido
ao 29
Aprendizagem por reforo
! Tarefa de aprendizagem por reforo:
n Aprender uma poltica de aes * tima,
que maximiza a funo V (V*) ou a
funo Q (Q*)
w * = argmax[V(s)]
! Em outras palavras, de que maneira o
agente deve agir para maximizar as
suas recompensas futuras

30
Exemplo: Labirinto (c/=0.9)
Funo recompensa Funo V*

Funo Q* Uma poltica de aes tima

31
Aprendendo uma poltica tima
! Se o ambiente determinstico ((s,a) = s
conhecida) e r(s,a) conhecida, a programao
dinmica computa uma poltica tima :
n V*(s) =maxa[ r(s,a) + V*( (s,a) ) ]
n *(s) = argmaxa[r(s,a) + V*( (s,a) )]
n Tempo polinomial
n Problema: se no temos conhecimento prvio das
recompensas e transio de estados
! Se o ambiente no-determinstico mas a funo de
probabilidade de transio de estados for conhecida,
tambm possvel computar *
n problema: difcil estimar estas probabilidades

32
Q Learning
! possvel determinar * se eu conheo Q*
n no precisando conhecer (funo de transio
de estados) nem r
n *(s) = argmaxa[Q(s,a)]
w no funo de nem de r

! Ento, vamos aprender a funo Q tima


(valor das aes) sem considerar V
n Q(st,at) = r(st,at) + V*( (st,at) )
= r(st,at) + maxa [Q(st+1,a )]
w o valor do prximo estado o melhor Q nele
w Como atualizar Q ?
33
Q-Learning
! Atualiza-se Q(st) aps observar o estado st+1 e
recompensa recebida

! Q(s1,aright) = r + maxa Q(s2,a )


= 0 + 0.9 max{63,81,100}
= 90
34
Algoritmo Q-Learning para
mundos determinsticos
! Para todo estado s e ao a, inicialize a
tabela Q[s][a] = 0; Usufruir valores
conhecidos ou
! Para sempre, faa: explorar valores
n Observe o estado atual s; no
computados?
n Escolha uma ao a e execute;
n Observe o prximo estado s e recompensa r
n Atualize a tabela Q:
w Q[s][a] = r + maxa (Q[s ][a ])

35
Dilema de explorar ou usufruir
(exploration x exploitation)
! Usufruir
n Escolher a ao que atualmente est com maior
valor Q(s,a)
! Explorar
n Escolher uma ao randmica, para que seu valor
Q(s,a) seja atualizado
! Dilema
n Dado que eu aprendi que Q(s,a) vale 100, vale a
pena tentar executar a ao a se Q(s,a ) por
enquanto vale 20 ?
w Depende do ambiente, da quantidade de aes j
tomadas e da quantidade de aes restantes
36
Mtodos para balancear
exploration e exploitation
! E-Greedy
n A cada iterao, escolhe
uma ao exploratria
(randmica) com
probabilidade E
n Ex. 10-armed bandit (caa
nqueis)
w 10 caa nqueis com
distribuies de prob.
diferentes (desconhecidas)
w e = 10% acha aes
timas mais cedo, mas erra
9% do tempo
w e = 1% obter melhor
performance no futuro!
w e = 0 % fica preso em uma
ao no tima

37
Mtodos para balancear
exploration e exploitation

! Escolha de aes softmax


n A probabilidade de uma ao ser escolhida
varia de acordo com o valor de Q(s,a)
n Pode-se usar o conceito de temperatura de
simulated annealing:
w T = infinito, ao totalmente exploratria
w T = zero, ao totalmente gulosa

38
RL em ambiente no
determinstico
! Recompensas sero no determinsticas
n V(s) = E[rt + rt+1 + rt+2 + ...]
n Problema:
w Suponha que a sequncia de recompensas recebidas em
um determinado estado foi:
n 100, 98, 101, 97, 90, 103, 10
w O valor da funo Q vai refletir apenas o ltimo valor !
! Soluo: usar uma taxa de aprendizagem
n Qn(s,a) = (1-)Qn-1(s,a) + [r + maxa Qn-1(s ,a )]
n A atualizao de Q no esquece dos valores anteriores
n Se = 1/[1+#visitas(s,a)], Q converge para Q*
em tempo polinomial
39
Semi-MDP
! Como o agente pode levar em conta o
tempo de suas aes?
n Ex. no jogo de luta: melhor dar vrios
socos fracos ou um soco forte?
w Soco forte provavelmente traria maior
recompensa
w Demoraria mais tempo para ser executado
n No problema da patrulha: como levar em
conta o a distncia entre os ns?

40
Semi-MDP
! O formalismo SMDP engloba este conceito
! Prova-se que a atualizao de Q passa a ser
dada por:
w Q[s][a] = r + t maxa (Q[s][a ])
w Onde t pode ser:
n nmero de unidades de tempo que o agente executou a
ao (caso discreto)
n alguma funo contnua do tempo
n Desta maneira, as recompensas futuras passam a
valer menos se o agente passar muito tempo
executando uma ao

41
Complexidade de Q-Learning
! Escolher uma ao barato no tempo
n No entanto, o tempo de treinamento
cresce com #S
! Em espao: O(#S x #A)
n Problemas
w o nmero de estados possveis cresce
exponencialmente com a quantidade de
caractersticas representadas
w Como tratar estados contnuos?

42
Linhas de pesquisa em RL
atualmente
! Substituir a tabela Q por redes neurais
n Permite generalizao
n Tratar estados contnuos

! Tratar casos em que o estado


parcialmente observvel
n POMDP
! Aprendizagem por reforo hierrquica
! Aprendizagem por reforo multi-agente
43
Aprendizagem por reforo
multi-agente - Cooperao
! Abordagens usando RL tradicional:
n White box agent
w Representao de estado global
w Encontra a ao conjunta (a1, a2, ..., an) que maximiza
uma funo de reforo global (nica)
w Problemas
n Complexidade exponencial no nmero de agentes
n Como aprender as aes de maneira distribuda ?
n Black box agent
w O reforo individual, mas alguma funo do bem
estar global
w O agente no toma conhecimento dos outros agentes
n Outros agentes passam a ser rudo no ambiente
44
Aprendizagem por reforo
multi-agente - Cooperao
! Black box agent
n Problemas
w Atribuio de crdito
n Como atribuir valor a aes individuais de um agente, em
termos do bem estar global?
n Ex: Que reforo dar pra uma ao do jogador do meio de
campo em um jogo de futebol?

! Gray box agent:


n O agente toma suas decises individualmente
n Os agentes comunicam suas intenes

45
Aprendizagem por reforo
multi-agente - Competio
! Min-Max Reinforcement Learning
n RL Tradicional:
w Executa aes com maior recompensa
esperada
n Min-Max RL
w Modela as aes do adversrio
w Executa aes que, dado que um oponente
utiliza uma poltica tima, minimiza minhas
perdas

46
Referncias
! Slides de Hugo Pimentel de Santana
(CIN/UFPE)
! Lecture slides do livro Machine Learning, do
Tom Mitchell
n http://www-2.cs.cmu.edu/~tom/mlbook-chapter-
slides.html
! Livro Reinforcement Learning: An
introduction , de Sutton & Barto disponvel
online
n http://envy.cs.umass.edu/~rich/book/the-
book.html
47

Você também pode gostar