SARSA

bebê aprendendo a andar

aprendendo com a própria política

SARSA é um algoritmo on-policy que aprende avaliando a política que está executando. Seu nome vem da sequência (S, A, R, S’, A’) usada nas atualizações. Primeiramente, o agente escolhe ação A’ para próximo estado usando a política atual. Além disso, atualiza Q(s,a) usando a recompensa e o valor da próxima ação. Por exemplo, aprende a política que está sendo seguida, incluindo exploração.

atualização passo a passo

O algoritmo atualiza após cada transição usando a próxima ação real. Primeiramente, observa (s, a, r, s’, a’) onde a’ é ação escolhida com política. Além disso, atualiza Q(s,a) = Q(s,a) + α [r + γ Q(s’,a’) – Q(s,a)]. Por exemplo, em um jogo, atualiza valores com base na próxima ação que realmente tomará. O valor Q(s’,a’) usa a ação que será executada.

exploração e comportamento

SARSA aprende a política que inclui exploração, não apenas a política ótima. Primeiramente, se usa ε-greedy, SARSA aprende valores considerando ações exploratórias. Além disso, converge para política ótima no limite quando exploração desaparece. Por exemplo, é mais conservador que Q-learning em ambientes com risco. É preferido quando segurança durante treinamento é importante.

aplicações e características

SARSA é robusto e estável em problemas onde exploração pode ser perigosa. Primeiramente, evita comportamentos muito otimistas durante o aprendizado. Além disso, converge sob condições mais brandas que Q-learning. Por exemplo, usado em robótica onde ações ruins podem ser prejudiciais. Para iniciantes, mostra como aprender avaliando a própria política. É um algoritmo fundamental para aprendizado on-policy.

Temporal Difference

bebê aprendendo a andar
1.4.2 – Metodos Baseados em Valor
1.4.2.3 – Temporal Difference – TD
1.4.2.3.1 – SARSA – On-policy
1.4.2.3.2 – Q-Learning – Off-policy
1.4.2.3.3 – Double Q-Learning
LEGENDA
Principal
Ramo
Metodo
Problemas
Modelo
Arquitetura

o melhor de dois mundos

Temporal Difference (TD) combina ideias de Monte Carlo e programação dinâmica. Diferente de Monte Carlo, não espera o fim do episódio para atualizar. Primeiramente, atualiza estimativas baseadas em outras estimativas (bootstrapping). Além disso, aprende a partir de experiência sem precisar de modelo do ambiente. Por exemplo, TD(0) atualiza após cada passo usando recompensa e valor do próximo estado. É um dos métodos mais fundamentais do aprendizado por reforço.

aprendendo passo a passo

O algoritmo TD atualiza V(s) após cada transição usando erro de predição. Primeiramente, observa (s, a, r, s’) e calcula erro δ = r + γ V(s’) – V(s). Além disso, atualiza V(s) = V(s) + αδ. Por exemplo, em um labirinto, ajusta valores gradualmente a cada movimento. O erro δ representa surpresa na predição da recompensa.

td(λ) e elegibilidade de traços

TD(λ) generaliza TD(0) e Monte Carlo através do parâmetro λ. Primeiramente, λ=0 corresponde a TD(0), λ=1 corresponde a Monte Carlo. Além disso, usa traços de elegibilidade para distribuir atualizações entre estados visitados. Por exemplo, estados anteriores recebem crédito proporcional à sua distância. Permite ajustar o trade-off entre viés e variância.

vantagens e convergência

TD é mais eficiente que Monte Carlo em termos de variância e atualização incremental. Primeiramente, converge em ambientes estocásticos com menos amostras que Monte Carlo. Além disso, não requer modelo do ambiente como programação dinâmica. Por exemplo, usado em Q-learning e algoritmos modernos. É a base para métodos de aprendizado por reforço online. Para iniciantes, mostra aprendizado contínuo sem esperar pelo fim. É um conceito central em algoritmos de reforço modernos.