Eu estava lendo as notas da aula de Andrew Ng sobre aprendizado por reforço e estava tentando entender por que a iteração de políticas convergiu para a função de valor ideal e a política ideal .
Lembre-se de que a iteração da política é:
Por que um algoritmo ganancioso leva a uma política ótima e a uma função de valor ideal? (Eu sei que algoritmos gananciosos nem sempre garantem isso ou podem ficar presos nos ótimos locais, então eu só queria ver uma prova de sua otimização do algoritmo).
Além disso, parece-me que a iteração da política é algo análogo à descida em cluster ou gradiente. Para cluster, porque com a configuração atual dos parâmetros, otimizamos. Semelhante à descida do gradiente, porque apenas escolhe algum valor que parece aumentar alguma função. Esses dois métodos nem sempre convergem para o máximo ideal e eu estava tentando entender como esse algoritmo era diferente dos anteriores.
Estes são os meus pensamentos até agora:
Digamos que começamos com alguma política ; depois da primeira etapa, para essa política fixa, temos o seguinte:
Onde V ^ {(1)} é a função de valor para a primeira iteração. Depois da segunda etapa, escolhemos uma nova política para aumentar o valor de . Agora, com a nova política , se fizermos o segundo passo do algoritmo, a seguinte desigualdade será verdadeira:
Como escolhemos na segunda etapa para aumentar a função de valor na etapa anterior (ou seja, para melhorar . Até agora, é claro que a escolha de só pode aumentar V ^ {(1)}, porque é assim que escolhemos No entanto, minha confusão vem na etapa de repetição, porque, uma vez que repetimos e voltamos à etapa 1, na verdade mudamos completamente as coisas porque recalculamos para a nova política . Que dá:
mas NÃO é:
O que parece ser um problema porque foi escolhido para melhorar , e não esse novo . Basicamente, o problema é que garantias para melhorar , fazendo vez de quando a função de valor é . Porém, na etapa de repetição, para , mas não vejo como isso garante que a função value melhore monotonicamente a cada repetição porque foi calculado para melhorar a função value quando as funções de valor permanecem em V π 1, mas a etapa 1 altera para (o que é ruim porque eu apenas a função de valor anterior que tínhamos).
fonte
Respostas:
Acho que a parte que você está perdendo é que está garantida pelo mesmo motivo que podemos solicitar . Essa é essencialmente a definição de uma política como melhor do que outra - que sua função de valor é maior ou igual em todos os estados. Você garantiu isso escolhendo as ações de maximização - nenhum valor de estado pode ser pior do que era antes e, se apenas uma opção de ação foi alterada para escolher uma ação de maximização melhor, você já sabe (mas pode não ter calculado) que o valor para esse estado será maior do que era para . π 2 ≥ π 1 V π 2 ( s ) V π 1 ( s )Vπ2≥ Vπ1 1 π2≥ π1 1 Vπ2( S ) Vπ1 1( S )
Quando optamos por maximizar os resultados para gerar , não sabemos quais os novos para qualquer estado, mas sabemos que .V π 2 ( s ) ∀ s : V π 2 ( s ) ≥ V π 1 ( s )π2 Vπ2( S ) ∀ s : Vπ2( s ) ≥ Vπ1 1( S )
Portanto, é garantido que o retorno ao loop e o cálculo de para a nova política tenham valores iguais ou superiores aos anteriores e, quando se trata de atualizar a política novamente, . π 3 ≥ π 2 ≥ π 1Vπ2 π3≥ π2≥ π1 1
fonte
Primeiro vamos ver por que o algoritmo de iteração de políticas funciona. Tem dois passos.
Etapa de avaliação de políticas:
Aqui, os termos são recompensas imediatas e linhas correspondentes da matriz de transição.rdn, Pdn
Esses termos dependem da políticaΠn
Resolvendo o sistema de equações acima, podemos encontrar os valores devn
Etapa de aprimoramento de políticas:
Suponha que fomos capazes de encontrar uma nova política queΠn + 1
Agora, com base na nova política , podemos encontrar , diga que esta é a equação 2. v n + 1 = r d n + 1 + γ P d n + 1 v n + 1Πn + 1 vn + 1= rdn + 1+ γPdn + 1vn + 1
Vamos mostrar que ;vn + 1≥vn
ou seja, essencialmente para todos os estados, a política recém-escolhida fornece um valor melhor em comparação com a política Π nΠn + 1 Πn
Prova:
A partir da equação 2, temos,
De, , temos1 e 2
Essencialmente, os valores estão aumentando monotonicamente a cada iteração.
É importante entender por que a Política de Interação não ficará paralisada no máximo local.
Uma política nada mais é que um espaço de ação estatal.
Em cada etapa da iteração de política, tentamos encontrar pelo menos uma ação de estado diferente entre e e ver se . Somente se a condição for atendida, calcularemos a solução para o novo sistema de equações lineares. Π nΠn + 1 Πn rdn+ 1+ γPdn+ 1vn≥ rdn+ γPdnvn
Suponha que e são o ideal global e local, respectivamente.Π #Π∗ Π#
Implica,v∗≥ v#
Suponha que o algoritmo esteja travado no ideal local.
Se esse for o caso, a etapa de aprimoramento da política não será interrompida no espaço de ação de estado ideal local , pois existe pelo menos uma ação de estado em que é diferente de e gera um valor mais alto de comparado aΠ ∗ Π # v ∗ v #Π# Π∗ Π# v∗ v#
ou, em outras palavras,
Portanto, a iteração da política não para em um local ideal
fonte