Noções Básicas de Gymnasium
Gymnasium é um kit de ferramentas de código aberto projetado para desenvolver e avaliar agentes de aprendizado por reforço (RL). Oferece uma coleção de ambientes padrão para testar algoritmos e treinar agentes de forma eficiente.
Principais Características
- API padronizada: garante compatibilidade entre diferentes ambientes;
- Variedade de ambientes: suporta problemas clássicos de controle, jogos Atari e simulações de robótica;
- Integração facilitada: compatível com frameworks de aprendizado profundo como TensorFlow e PyTorch.
Fluxo de Trabalho
Um fluxo de trabalho típico no Gymnasium segue os seguintes passos:
1. Importar a Biblioteca
import gymnasium as gym
Após a descontinuação da biblioteca original gym, agora é recomendado utilizar o gymnasium — um fork do gym bem mantido e ativamente desenvolvido. Apesar da mudança de nome, a biblioteca ainda é comumente importada usando o alias gym para manter compatibilidade retroativa e praticidade.
2. Criar um Ambiente
env = gym.make("CartPole-v1")
A função gym.make() instancia um ambiente utilizando seu identificador único (por exemplo, "CartPole-v1"). Também é possível passar parâmetros de configuração adicionais, dependendo dos requisitos do ambiente.
3. Reinicializar o Ambiente
observation, info = env.reset()
Antes de interagir com o ambiente, é necessário reiniciá-lo para o estado inicial utilizando env.reset(). Isso retorna:
observation: o estado inicial do ambiente;info: dados auxiliares que podem incluir metadados ou configurações específicas do estado.
4. Interagir com o Ambiente
action = env.action_space.sample()
observation, reward, terminated, truncated, info = env.step(action)
Na primeira linha, uma ação aleatória é escolhida do espaço de ações usando env.action_space.sample(). O espaço de ações define o conjunto de todas as ações possíveis que o agente pode executar no ambiente. Além disso, o ambiente fornece o espaço de observação, acessível via env.observation_space, que representa o conjunto de todas as observações (estados) possíveis que o agente pode encontrar.
Na segunda linha, a ação escolhida é passada para env.step(action), que executa a ação e retorna o seguinte:
observation: o novo estado do agente após executar a ação;reward: a recompensa recebida pela ação tomada;terminated: um valor booleano indicando se o episódio foi finalizado (ou seja, a tarefa foi concluída);truncated: um valor booleano indicando se o episódio foi interrompido prematuramente (por tempo ou outras restrições);info: informações diagnósticas adicionais, frequentemente utilizadas para depuração ou registro.
5. Fechar o Ambiente
env.close()
Se o ambiente utilizar recursos externos (por exemplo, janelas de renderização ou simulações), recomenda-se fechá-lo utilizando env.close().
Para saber mais sobre os recursos oferecidos pela biblioteca Gymnasium, acesse their website.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Awesome!
Completion rate improved to 2.7
Noções Básicas de Gymnasium
Deslize para mostrar o menu
Gymnasium é um kit de ferramentas de código aberto projetado para desenvolver e avaliar agentes de aprendizado por reforço (RL). Oferece uma coleção de ambientes padrão para testar algoritmos e treinar agentes de forma eficiente.
Principais Características
- API padronizada: garante compatibilidade entre diferentes ambientes;
- Variedade de ambientes: suporta problemas clássicos de controle, jogos Atari e simulações de robótica;
- Integração facilitada: compatível com frameworks de aprendizado profundo como TensorFlow e PyTorch.
Fluxo de Trabalho
Um fluxo de trabalho típico no Gymnasium segue os seguintes passos:
1. Importar a Biblioteca
import gymnasium as gym
Após a descontinuação da biblioteca original gym, agora é recomendado utilizar o gymnasium — um fork do gym bem mantido e ativamente desenvolvido. Apesar da mudança de nome, a biblioteca ainda é comumente importada usando o alias gym para manter compatibilidade retroativa e praticidade.
2. Criar um Ambiente
env = gym.make("CartPole-v1")
A função gym.make() instancia um ambiente utilizando seu identificador único (por exemplo, "CartPole-v1"). Também é possível passar parâmetros de configuração adicionais, dependendo dos requisitos do ambiente.
3. Reinicializar o Ambiente
observation, info = env.reset()
Antes de interagir com o ambiente, é necessário reiniciá-lo para o estado inicial utilizando env.reset(). Isso retorna:
observation: o estado inicial do ambiente;info: dados auxiliares que podem incluir metadados ou configurações específicas do estado.
4. Interagir com o Ambiente
action = env.action_space.sample()
observation, reward, terminated, truncated, info = env.step(action)
Na primeira linha, uma ação aleatória é escolhida do espaço de ações usando env.action_space.sample(). O espaço de ações define o conjunto de todas as ações possíveis que o agente pode executar no ambiente. Além disso, o ambiente fornece o espaço de observação, acessível via env.observation_space, que representa o conjunto de todas as observações (estados) possíveis que o agente pode encontrar.
Na segunda linha, a ação escolhida é passada para env.step(action), que executa a ação e retorna o seguinte:
observation: o novo estado do agente após executar a ação;reward: a recompensa recebida pela ação tomada;terminated: um valor booleano indicando se o episódio foi finalizado (ou seja, a tarefa foi concluída);truncated: um valor booleano indicando se o episódio foi interrompido prematuramente (por tempo ou outras restrições);info: informações diagnósticas adicionais, frequentemente utilizadas para depuração ou registro.
5. Fechar o Ambiente
env.close()
Se o ambiente utilizar recursos externos (por exemplo, janelas de renderização ou simulações), recomenda-se fechá-lo utilizando env.close().
Para saber mais sobre os recursos oferecidos pela biblioteca Gymnasium, acesse their website.
Obrigado pelo seu feedback!