Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Noções Básicas de Gymnasium | Teoria Central de RL
Introdução ao Aprendizado por Reforço
course content

Conteúdo do Curso

Introdução ao Aprendizado por Reforço

Introdução ao Aprendizado por Reforço

1. Teoria Central de RL
2. Problema do Bandido de Múltiplos Braços
3. Programação Dinâmica
4. Métodos de Monte Carlo
5. Aprendizado por Diferença Temporal

book
Noções Básicas de Gymnasium

Gymnasium é um kit de ferramentas de código aberto projetado para o desenvolvimento e avaliação de agentes de aprendizado por reforço (RL). Oferece uma coleção de ambientes padronizados para testar algoritmos e treinar agentes de forma eficiente.

Principais Características

  • API padronizada: garante compatibilidade entre diferentes ambientes;
  • Variedade de ambientes: oferece suporte a 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. Importação da Biblioteca

import gymnasium as gym

Após a descontinuação da biblioteca original gym, recomenda-se agora utilizar o gymnasium — um fork do gym bem mantido e em desenvolvimento ativo. Apesar da mudança de nome, a biblioteca ainda é comumente importada com o alias gym para manter compatibilidade retroativa e praticidade.

2. Criação de 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 adicionais de configuração, dependendo dos requisitos do ambiente.

3. Reinicialização do 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. Interação 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 a partir do espaço de ações utilizando 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: valor booleano indicando se o episódio foi finalizado (ou seja, a tarefa foi concluída);
  • truncated: 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. Fechamento do 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().

Note
Estudo Adicional

Para saber mais sobre os recursos oferecidos pela biblioteca Gymnasium, acesse their website.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 7

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

course content

Conteúdo do Curso

Introdução ao Aprendizado por Reforço

Introdução ao Aprendizado por Reforço

1. Teoria Central de RL
2. Problema do Bandido de Múltiplos Braços
3. Programação Dinâmica
4. Métodos de Monte Carlo
5. Aprendizado por Diferença Temporal

book
Noções Básicas de Gymnasium

Gymnasium é um kit de ferramentas de código aberto projetado para o desenvolvimento e avaliação de agentes de aprendizado por reforço (RL). Oferece uma coleção de ambientes padronizados para testar algoritmos e treinar agentes de forma eficiente.

Principais Características

  • API padronizada: garante compatibilidade entre diferentes ambientes;
  • Variedade de ambientes: oferece suporte a 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. Importação da Biblioteca

import gymnasium as gym

Após a descontinuação da biblioteca original gym, recomenda-se agora utilizar o gymnasium — um fork do gym bem mantido e em desenvolvimento ativo. Apesar da mudança de nome, a biblioteca ainda é comumente importada com o alias gym para manter compatibilidade retroativa e praticidade.

2. Criação de 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 adicionais de configuração, dependendo dos requisitos do ambiente.

3. Reinicialização do 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. Interação 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 a partir do espaço de ações utilizando 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: valor booleano indicando se o episódio foi finalizado (ou seja, a tarefa foi concluída);
  • truncated: 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. Fechamento do 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().

Note
Estudo Adicional

Para saber mais sobre os recursos oferecidos pela biblioteca Gymnasium, acesse their website.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 7
some-alt