Projeto para testar uma implementação para o FrozenLake 8x8

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ório data. Já existe um arquivo q-table neste projeto, mas ele é para a versão do ambiente 4x4. Quando você executar o arquivo test_frozenlake.py usando o comando pytestirá ocorrer um erro de IndexError. 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.

Algoritmo e hiperparâmetros utilizados para o treinamento

Atributo Valor
Algoritmo
alpha
gamma
epsilon
epsilon_dec
epsilon_min
qtd_episodios

Comparação entre abordagens

  • inserir o seu gráfico aqui, se for o caso.