Escolar Documentos
Profissional Documentos
Cultura Documentos
Actor-Critic
Ângelo Gregório Lovatto
aglovatto@ime.usp.br
Agenda
Objetivos
! T
#T −1 $%
" "
∇J(θ) = Eτ ∼πθ ∇θ log πθ (at |st ) rt! +1 − V πθ (st )
t=0 t! =t
Reward-to-Go baseline
!T −1 # $
" #
Qπθ (s, a) = Eτ ∼πθ rt+1 #s0 = s, a0 = a
#
#
t=0
!T −1 # $
" #
Qπθ (s, a) = Eτ ∼πθ rt+1 #s0 = s, a0 = a
#
#
t=0
Reward-to-Go
!T −1 #T −1 $%
" "
Eτ ∼πθ ∇θ log πθ (at |st ) rt! +1 − V πθ (st )
t=0 t! =t
!T −1 %
"
= Eτ ∼πθ ∇θ log πθ (at |st ) (Qπθ (st , at ) − V πθ (st ))
t=0
• A diferença entre a função ação-valor e a função valor é conhecida como função vantagem
• Intuitivamente, ela nos diz o valor da ação em relação à média naquele estado
• Ações acima da média são reforçadas. O contrário acontece com as abaixo da média
!"
≈ # ≈
T −1
Ât = t" =t rt" +1 − Vφ(st)
γ = 0.9
!" # $
πθ ,γ T −1 t
V (s) = Eτ ∼πθ t=0 γ rt+1 #s0 = s
#
γ = 0.8
!" # $
T
Qπθ ,γ (s, a) = Eτ ∼πθ −1
γ t
rt+1#s0 = s, a0 = a
#
t=0
γ = 0.7
Aπθ ,γ (s, a) = Qπθ ,γ (s, a) − V πθ ,γ (s)
• Recompensas recebidas muito depois da escolha de uma ação tem peso menor para sua
vantagem
• O valor de uma ação pode ser quebrado em recompensa imediata e valor do próximo estado
• A recompensa somada ao valor do próximo estado é conhecida como o retorno de 1 passo
• Por um passo observamos a recompensa obtida
• Sumarizamos o retorno esperado a partir do próximo passo com a função valor
• O valor de uma ação pode ser quebrado em recompensa imediata e valor do próximo estado
• A recompensa somada ao valor do próximo estado é conhecida como o retorno de 1 passo
• Por um passo observamos a recompensa obtida
• Sumarizamos o retorno esperado a partir do próximo passo com a função valor
• O valor de uma ação pode ser quebrado em recompensa imediata e valor do próximo estado
• A recompensa somada ao valor do próximo estado é conhecida como o retorno de 1 passo
• Por um passo observamos a recompensa obtida
• Sumarizamos o retorno esperado a partir do próximo passo com a função valor
• O valor de uma ação pode ser quebrado em recompensa imediata e valor do próximo estado
• A recompensa somada ao valor do próximo estado é conhecida como o retorno de 1 passo
• Por um passo observamos a recompensa obtida
• Sumarizamos o retorno esperado a partir do próximo passo com a função valor
rt+1 V πθ,γ(st+1)
A πθ,γ(st, at)
(1)
Ât = rt+1 + γVφ(st+1) − Vφ(st)
(2)
Ât = rt+1 + γrt+2 + γ 2Vφ(st+2) − Vφ(st)
(3)
Ât = rt+1 + γrt+2 + γ 2rt+3 + γ 3Vφ(st+3) − Vφ(st)
...
(n)
Ât = rt+1 + · · · + γ n−t−1rn + γ n−tVφ(sn) − Vφ(st)
(1)
Ât = rt+1 + γVφ(st+1) − Vφ(st)
(2)
Ât = rt+1 + γrt+2 + γ 2Vφ(st+2) − Vφ(st)
(3)
Ât = rt+1 + γrt+2 + γ 2rt+3 + γ 3Vφ(st+3) − Vφ(st)
...
(n)
Ât = rt+1 + · · · + γ n−t−1rn + γ n−tVφ(sn) − Vφ(st)
Vantagens Desvantagens
Estimação de Atualização do
vantagens actor/critic
Interação com o
ambiente
• A política πθ( ⋅ | s) recomenda ações para cada estado, portanto é vista como “actor”
• A função Vϕ(s) avalia o retorno esperado sob a política, portanto é vista como “critic”
Extrator de features
“Joint Loss”
(n)
Ât = rt+1+· · ·+γ n−t−1rn+γ n−t Vφ(st+n) − Vφ(st)
! "# $
stop gradient
O objetivo do critic é mesmo de antes: prever os retornos sob a política (com bootstrapping)
1
!K 2
Lcritic(φ) = K t=1 (Vφ (st ) − R̂t)
• Quanto mais cedo truncarmos a trajetória, mais dependente da função valor seremos
• Quanto mais tarde, mais estaremos sujeitos à variância das recompensas
GAE sugere usar uma média exponencial de todos eles
(1)
Ât = δt
(2)
Ât = δt + γδt+1
= (rt+1 + γVφ (st+1 ) − Vφ (st )) + γ(rt+2 + γVφ (st+2 ) − Vφ (st+1 ))
= rt+1 + γrt+2 + γ 2 Vφ (st+2 ) − Vφ (st )
(n)
Ât = δt + γδt+1 + · · · + γ n−t−1δt+n
(1)
Ât = δt
(2)
Ât = δt + γδt+1
(3) 2
Ât = δt + γδt+1 + γ δt+2
(4) 2 3
Ât = δt + γδt+1 + γ δt+2 + γ δt+3
..
.
1
δt
1−λ
..
.
λ
γδt+1
1−λ
..
.
λ2 2
γ δt+2
1−λ
2
! "
1 λ λ
(1 − λ) δt + γδt+1 + γ 2 δt+2 + . . .
1−λ 1−λ 1−λ
2
! "
1 λ λ
(1 − λ) δt + γδt+1 + γ 2 δt+2 + . . .
1−λ 1−λ 1−λ
δt + γλδt+1 + γ 2 λ2 δt+2 + . . .
GAE(γ,λ)
!
∞
Ât = (γλ)t δt
t=0
GAE(γ,λ)
!
∞
Ât = (γλ)t δt
Casos especias do estimador GAE(γ, λ):
t=0
• http://arxiv.org/abs/1506.02438
• https://sudonull.com/post/32170-Intuitive-RL-Reinforcement-Learning-Introduction-to-Advantage-Actor-Critic-A2C
• http://rail.eecs.berkeley.edu/deeprlcourse/static/slides/lec-6.pdf