我找不到OpenAI Gym环境“ CartPole-v0”和“ CartPole-v1”之间差异的确切描述。
两个环境都有各自的官方网站专用于(见1和2),尽管我只能在Gym github存储库中找到一个没有版本标识的代码(请参阅3 )。我还检查了通过调试器准确加载了哪些文件,尽管它们似乎都加载了相同的上述文件。唯一的区别似乎在于它们在内部分配的max_episode_steps
和reward_threshold
,如下所示可以访问。 CartPole-v0的值为200 / 195.0,而CartPole-v1的值为500 / 475.0。乍看起来,其余的看起来都一样。
import gym
env = gym.make("CartPole-v1")
print(self.env.spec.max_episode_steps)
print(self.env.spec.reward_threshold)
因此,如果有人可以为我描述确切的差异或将我转发到正在这样做的网站,我将不胜感激。非常感谢你!
答案 0 :(得分:1)
您可能已经注意到,在OpenAI Gym中,有时会有相同版本的不同版本。不同版本通常共享主要环境逻辑,但是某些参数配置为不同的值。这些版本使用称为here的功能进行管理。
在CartPole环境中,您可以在the registry中找到两个注册版本。如您在第50到65行中看到的,存在两个CartPole版本,标记为v0和v1,它们的区别是参数max_episode_steps
和reward_threshold
:
register(
id='CartPole-v0',
entry_point='gym.envs.classic_control:CartPoleEnv',
max_episode_steps=200,
reward_threshold=195.0,
)
register(
id='CartPole-v1',
entry_point='gym.envs.classic_control:CartPoleEnv',
max_episode_steps=500,
reward_threshold=475.0,
)
这两个参数都证实了您对CartPole-v0和CartPole-v1之间差异的猜测。
答案 1 :(得分:0)
我发现了一些可能有用的链接
https://github.com/openai/gym/wiki/CartPole-v0
https://github.com/openai/gym/wiki/Table-of-environments
https://gym.openai.com/docs/#environments
https://gym.openai.com/evaluations/eval_GazXePIETsOvUaxmoILNHw/