下面描绘的经典“代理-环境循环”是强化学习的简化表示,Gymnasium实现了这一循环。
此循环是使用以下体育馆代码实现的
import gymnasium as gym env = gym.make("LunarLander-v2", render_mode="human") observation, info = env.reset() for _ in range(1000): action = env.action_space.sample() # agent policy that uses the observation and info observation, reward, terminated, truncated, info = env.step(action) if terminated or truncated: observation, info = env.reset() env.close()
首先,使用make
创建一个环境,还可以使用额外的关键字"render_mode"
来指定环境应该如何可视化。有关不同渲染模式的默认含义,请参阅render
。在此示例中,我们使用"LunarLander"
环境,代理控制一艘需要安全着陆的太空飞船。
初始化环境后,我们使用 reset
方法重置环境,以获取环境的第一个观测。要使用特定的随机种子或选项(请参阅环境文档以获取可能的值)初始化环境,请在 reset
方法中使用 seed
或 options
参数。