ANALISANDO: "Mão na massa: identificando objetos com MobileNetV2"
Por Ricardo Costa Val do Rosário e ChatGPT 4.0
Q-Learning no Ambiente FrozenLake – Relatório Explicativo
Visão Geral
- Este documento descreve a aplicação do algoritmo de aprendizado por reforço Q-Learning em um ambiente
simulado chamado FrozenLake, fornecido pela biblioteca Gymnasium.
- O objetivo é treinar um agente a atravessar um lago congelado, evitando buracos e alcançando um
objetivo final com sucesso.
Objetivo do Ambiente
FrozenLake-v1:
O agente está em um grid 4x4 com estados congelados (seguros), buracos (termina o jogo), e um objetivo final (meta).
As ações disponíveis são: esquerda, baixo, direita, cima.
Desafio:
O ambiente é "escorregadio" (is\_slippery=True), o que introduz estocasticidade nas ações, dificultando
o controle do agente.
Algoritmo Utilizado: Q-Learning
O Q-Learning é uma técnica de aprendizado por reforço que busca estimar a função Q(s, a), ou seja, o
valor esperado de executar uma ação "a" no estado "s", seguindo a política ótima.
Equação de Atualização:
Q(s, a) = Q(s, a) + \alpha\\[r + \gamma\max(Q(s', a')) - Q(s, a)]
Onde:
\alpha: taxa de aprendizado
\gamma: fator de desconto
r: recompensa recebida ao transitar para s'
max(Q(s', a')): melhor estimativa de recompensa futura
Política Epsilon-Greedy:
- Com probabilidade \epsilon, uma ação aleatória é escolhida (exploração)
- Com probabilidade 1-\epsilon, escolhe-se a melhor ação aprendida (exploração)
Hiperparâmetros Adotados
| Parâmetro | Valor | Descrição |
| ------------------------ | ------ | ---------------------------------------------------- |
| \alpha (learning rate) | 0.8 | O quanto o agente aprende em relação ao que já sabia |
| \gamma (discount factor) | 0.95 | Importância das recompensas futuras |
| \epsilon (inicial) | 1.0 | Alta exploração no início |
| \epsilon\_decay | 0.999 | Redução gradual da exploração |
| \epsilon\_min | 0.01 | Exploração nunca zera completamente |
| Episódios de treino | 20.000 | |
| Episódios de teste | 1.000 | |
Resultados
Após o treinamento, o agente foi testado em 1000 novos episódios sem exploração (escolhendo sempre a melhor ação da Q-table):
> Sucessos: X de 1000 episódios
(Substituir "X" com o resultado real após execução do código)
Diagrama da Lógica de Decisão
graph TD
Start[Início do Episódio] --> Escolher[Escolher Ação (Epsilon-Greedy)]
Escolher --> Executar[Executar Ação no Ambiente]
Executar --> Atualizar[Atualizar Q-Table com Recompensa]
Atualizar --> Checar[Fim do Episódio?]
Checar -- Não --> Escolher
Checar -- Sim --> Fim[Fim do Episódio]
Possíveis Extensões
Salvar e reutilizar a Q-table
Visualizar o comportamento do agente
Comparar com outras abordagens (SARSA, DQN)
Aplicabilidade na Medicina com IA
Este tipo de aprendizado pode ser adaptado para:
Navegação de robôs hospitalares
Otimização de fluxos logísticos
Tomada de decisão em sistemas de suporte inteligente (ex: direcionamento dinâmico de pacientes)
Conclusão
O Q-Learning, mesmo em um ambiente simples como o FrozenLake, demonstra o poder de um agente em aprender comportamento ótimo sem conhecimento prévio do ambiente.
Seu uso em contextos reais, como na assistência à saúde, é uma fronteira promissora da Inteligência Artificial.