Considere o ambiente FrozenLake 8x8 versão não-determinística. Implemente um agente capaz de chegar ao objetivo final em pelo menos 80% das vezes. Para implementar este agente você pode utilizar o algoritmo Q-Learning ou Sarsa com os hiperparâmetros que você considerar melhor.
Você deve adicionar neste projeto e fazer o commit dos seguintes artefatos:
-
o arquivo
q-table.csv
dentro do diretóriodata
. Já existe um arquivo q-table neste projeto, mas ele é para a versão do ambiente 4x4. Quando você executar o arquivotest_frozenlake.py
usando o comandopytest
irá ocorrer um erro deIndexError
. Você deve substituir este arquivo pelo arquivo gerado pelo seu agente durante o período de treinamento; -
depois de substituir o arquivo
data/q-table.csv
, você poderá executar os testes e verificar se o mesmo é aprovado em todos os testes. São quatro testes: o primeiro executa o ambiente 1000 vezes e verifica se o agente conseguiu chegar ao final em no mínimo 700 vezes. Os outros 3 testes fazem exatamente a mesma coisa: executam o agente no ambiente 1000 vezes e verificam se o agente conseguiu chegar ao final em no mínimo 800 vezes; -
você também deve adicionar a sua implementação no diretório raiz deste projeto, e;
-
alterar este arquivo README.md informando os hiperparâmetros utilizados para o treinamento.
-
(critério para A+) apresentar um gráfico comparando a curva de aprendizagem de diversas abordagens utilizadas durante o treinamento.
Atributo | Valor |
---|---|
Algoritmo | |
alpha | |
gamma | |
epsilon | |
epsilon_dec | |
epsilon_min | |
qtd_episodios |
- inserir o seu gráfico aqui, se for o caso.