当在 Python 中使用来自 OpenAI-gym 的 MountainCar-v0 环境时, done 的值将在 200 个时间步后为真。这是为什么?由于未达到目标状态,因此不应完成该剧集。
import gym
env = gym.make('MountainCar-v0')
env.reset()
for _ in range(300):
env.render()
res = env.step(env.action_space.sample())
print(_)
print(res[2])
我想运行 step 方法直到汽车到达标志,然后中断 for 循环。这可能吗?类似这样的东西:
n_episodes = 10
done = False
for i in range(n_episodes):
env.reset()
while done == False:
env.render()
state, reward, done, _ = env.step(env.action_space.sample())
最佳答案
即使您不使用 env.monitor,当前最新版本的健身房也会在 200 步内强制停止环境。
为避免这种情况,请使用
env = gym.make("MountainCar-v0").env
关于python - 为什么 episode 在 200 个时间步之后完成(Gym 环境 MountainCar)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42787924/