Retornos (Recompensas totais do ambiente) r é a recompensa recebida pelo agente no momento t enquanto executa uma ação(a) para se mover de um estado para outro. Da mesma forma, r é a recompensa recebida pelo agente no momento t ao executar uma ação para se mover de um estado para outro. E, r é a recompensa recebida pelo agente no último passo de tempo ao executar uma ação para se mover para outro estado.
Tarefas Episódicas e Contínuas
Tarefas Episódicas: Estas são as tarefas que têm um estado terminal (estado final). Podemos dizer que elas têm estados finitos. Por exemplo, em jogos de corrida, nós começamos o jogo (start the race) e o jogamos até que o jogo termine (corrida termina!). Isto é chamado um episódio. Assim que reiniciarmos o jogo ele começará de um estado inicial e, portanto, cada episódio é independente.
Continuous Tasks : Estas são as tarefas que não têm fim, ou seja, não têm nenhum estado terminal. Estes tipos de tarefas nunca terminarão. Por exemplo, Aprendendo a codificar!
Agora, é fácil calcular os retornos das tarefas episódicas, pois elas eventualmente terminarão, mas que tal tarefas contínuas, pois elas continuarão para sempre. Os retornos da soma até o infinito! Então, como definimos os retornos das tarefas contínuas?
É aqui que precisamos do Factor de Desconto(ɤ).
Factor de Desconto (ɤ): Determina quanta importância deve ser dada à recompensa imediata e às recompensas futuras. Isto basicamente ajuda-nos a evitar o infinito como recompensa em tarefas contínuas. Tem um valor entre 0 e 1. Um valor de 0 significa que é dada mais importância à recompensa imediata e um valor de 1 significa que é dada mais importância a recompensas futuras. Na prática, um factor de desconto de 0 nunca aprenderá, pois considera apenas a recompensa imediata e um factor de desconto de 1 continuará para recompensas futuras que podem levar ao infinito. Portanto, o valor óptimo para o factor de desconto situa-se entre 0,2 e 0,8.
Então, podemos definir retornos usando o fator de desconto da seguinte forma :(Digamos que esta é a equação 1, pois vamos usar esta equação mais tarde para derivar a Equação de Bellman)
Retorna usando o fator de desconto
Vamos entendê-lo com um exemplo,suponha que você vive em um lugar onde você enfrenta escassez de água, então se alguém vier até você e disser que vai lhe dar 100 litros de água!(assuma por favor!) para as próximas 15 horas em função de algum parâmetro (ɤ). Vamos olhar para duas possibilidades : (Digamos que esta é a equação 1, pois vamos usar esta equação mais tarde para derivar a Equação de Bellman)
Um com factor de desconto (ɤ) 0.8 :
Fator de Desconto (0.8)
Isto significa que devemos esperar até a 15ª hora porque a diminuição não é muito significativa, por isso ainda vale a pena ir até ao fim, o que significa que também estamos interessados em recompensas futuras.Assim, se o fator de desconto é próximo de 1 então nós faremos um esforço para ir até o fim como a recompensa é de importância significativa.
Segundo, com fator de desconto (ɤ) 0.2 :
Fator de Desconto (0.2) Isto significa que estamos mais interessados em recompensas antecipadas, pois as recompensas estão ficando significativamente baixas à hora. Assim, talvez não queiramos esperar até o final (até a 15ª hora), pois não valerá a pena. Assim, se o fator de desconto está próximo de zero, então as recompensas imediatas são mais importantes do que o futuro.
Então, qual o valor do fator de desconto a ser usado ?
Depende da tarefa para a qual queremos treinar um agente. Suponha que, em um jogo de xadrez, o objetivo é derrotar o rei do adversário. Se dermos importância às recompensas imediatas como uma recompensa pela derrota de um peão qualquer jogador adversário, então o agente aprenderá a realizar essas sub-gols, não importando se seus jogadores também forem derrotados. Portanto, nesta tarefa as recompensas futuras são mais importantes. Em alguns, podemos preferir usar recompensas imediatas como o exemplo da água que vimos anteriormente.
Processo de Recompensa Markov
Até agora vimos como a cadeia de Markov definiu a dinâmica de um ambiente usando um conjunto de estados(S) e Matriz de Probabilidade de Transição(P).Mas, sabemos que o Aprendizado de Reforço tem tudo a ver com o objetivo de maximizar a recompensa.Então, vamos adicionar recompensa à nossa cadeia de Markov.Isto nos dá Markov Reward Process.
Markov Reward Process : Como o nome sugere, os MDPs são as cadeias de Markov com julgamento de valores. Basicamente, nós recebemos um valor de cada estado em que nosso agente está.
Matematicamente, definimos Processo de Recompensa de Markov como :
Processo de Recompensa de Markov O que esta equação significa é o valor da recompensa (Rs) que recebemos de um determinado estado S. Isto nos diz a recompensa imediata desse estado em particular em que o nosso agente se encontra. Como veremos na próxima história como maximizamos essas recompensas de cada estado em que o nosso agente se encontra. Em termos simples, maximizando a recompensa cumulativa que recebemos de cada estado.
Definimos MRP como (S,P,R,ɤ),onde :
S é um conjunto de estados,
P é a Matriz de Probabilidade de Transição,
R é a função de Recompensa, vimos anteriormente,
ɤ é o factor de desconto
Processo de Decisão de Markov
Agora, vamos desenvolver a nossa intuição para a Equação de Bellman e Processo de Decisão de Markov.
Função Política e Função de Valor
Função de Valor determina o quão bom é para o agente estar em um determinado estado. É claro, para determinar o quão bom será para o agente estar em um determinado estado, ele deve depender de algumas ações que ele tomará. É aqui que entra a política. Uma política define que ações executar em um determinado estado s.
Uma política é uma função simples, que define uma distribuição de probabilidade sobre Ações (a∈ A) para cada estado (s ∈ S). Se um agente no momento t segue uma política π então π(a|s) é a probabilidade de que o agente com ação (a ) no momento (t). Em Reinforcement Learning a experiência do agente determina a mudança na política. Matematicamente, uma política é definida da seguinte forma :
Função da política Agora, como encontramos um valor de um estado.O valor de estado s, quando o agente está seguindo uma política π que é denotada por vπ(s) é o retorno esperado a partir de s e seguindo uma política π para os próximos estados,até chegarmos ao estado terminal.Podemos formular isto como :(Esta função também é chamada de Função Valor do Estado)
Função do Valor Esta equação nos dá os retornos esperados a partir do(s) estado(s) e indo para os estados sucessores depois, com a política π. Uma coisa a notar é que os retornos que obtemos são estocásticos enquanto que o valor de um estado não é estocástico. É a expectativa de retornos do(s) estado(s) inicial(is) e depois dele(s) para qualquer outro estado. E também note que o valor do estado terminal (se houver algum) é zero. Vejamos um exemplo :
Exemplo Suponha que o nosso estado inicial é a Classe 2, e depois passamos para a Classe 3 e depois para a Classe 2 > Classe 3 > Passar > Dormir.
Nosso retorno esperado é com fator de desconto 0,5:
Calcular o Valor da Classe 2 Nota:É -2 + (-2 * 0.5) + 10 * 0.25 + 0 em vez de -2 * -2 * 0.5 + 10 * 0.25 + 0.Então o valor da Classe 2 é -0.5 .
Função de Valor da Equação de Bellman
Função de Valor da Equação de Bellman ajuda-nos a encontrar políticas e funções de valor óptimas. Sabemos que a nossa política muda com a experiência para que tenhamos uma função de valor diferente de acordo com políticas diferentes.
A Equação de Bellman afirma que a função de valor pode ser decomposta em duas partes:
Prémio imediato, R
Valor descontado dos estados sucessores,
Matematicamente, podemos definir a Equação de Bellman como :
Equação de Bellman para Função de Valor Vamos entender o que esta equação diz com a ajuda de um exemplo :
Suponha, há um robô em algum estado (s) e então ele se move deste estado para algum outro estado (s’). Agora, a questão é o quão bom foi para o robô estar no(s) estado(s). Usando a equação de Bellman, podemos dizer que é a expectativa de recompensa que ele recebeu ao sair do(s) estado(s) mais o valor do(s) estado(s) para o(s) qual(is) ele se moveu.
Vejamos outro exemplo :
Diagrama de retrocesso Queremos saber o valor dos estados s.O valor do(s) estado(s) é a recompensa que recebemos ao sairmos desse estado, mais o valor descontado do estado em que aterrissamos multiplicado pela probabilidade de transição em que nos moveremos para ele.
Cálculo do valor A equação acima pode ser expressa em forma de matriz da seguinte forma :
Equação Linear Bellman Onde v é o valor do estado em que estávamos, que é igual à recompensa imediata mais o valor descontado do estado seguinte multiplicado pela probabilidade de passar para esse estado.
A complexidade do tempo de execução para este cálculo é O(n³). Portanto, esta não é claramente uma solução prática para resolver MRPs maiores (o mesmo para MDPs também). Em Blogs posteriores, vamos olhar para métodos mais eficientes como Programação Dinâmica (Iteração de Valores e Iteração de Políticas), métodos Monte-Claro e TD-Learning.
Vamos falar sobre a Equação de Bellman em muito mais detalhes na próxima história.
O que é o Processo de Decisão de Markov ?
Processo de Decisão de Markov : É o Processo de Recompensa de Markov com uma decisão.Tudo é igual ao MRP, mas agora temos uma agência real que toma decisões ou toma ações.
É um tuple de (S, A, P, R, 𝛾) onde:
S é um conjunto de estados,
A é o conjunto de ações que o agente pode escolher para tomar,
P é a Matriz de Probabilidade de transição,
R é a Recompensa acumulada pelas ações do agente,
𝛾 é o fator de desconto.
P e R terá ligeira mudança nas ações w.r.t da seguinte forma:
Matriz de Probabilidade de Transição,
Matriz de Probabilidade de Transição, w.r.ação
Função de Recompensa
>
Função de Recompensa, u.i.t ação Agora, nossa função de recompensa depende da ação.
Até agora falamos em obter uma recompensa (r) quando nosso agente passa por um conjunto de estados (s) seguindo uma política π.Na verdade, no Processo de Decisão Markov (MDP) a política é o mecanismo para tomar decisões. Assim, agora temos um mecanismo que escolherá tomar uma ação.
Políticas em um MDP depende do estado atual. Elas não dependem do histórico. Essa é a propriedade Markov. Então, o estado atual em que estamos caracteriza o histórico.
Já vimos como é bom para o agente estar em um determinado estado (função valor do estado). Agora, vamos ver como é bom tomar uma determinada ação seguindo uma política π do estado s (função valor-ação).
Função valor-ação do estado ou Q-Função
Esta função especifica o quão bom é para o agente tomar uma ação (a) em um estado (s) com uma política π.
Matematicamente, podemos definir a função valor de estado-ação como :
>
Função valor de estado-ação Basicamente, diz-nos o valor de realizar uma determinada ação(a) em um(s) estado(s) com uma política π.
Vejamos um exemplo do Processo de Decisão de Markov :
Exemplo do MDP Agora, podemos ver que não há mais probabilidades.Na verdade agora o nosso agente tem escolhas a fazer como depois de acordar, podemos escolher assistir netflix ou código e debug. É claro que as ações do agente são definidas w.r.t alguma política π e será obtido a recompensa em conformidade.