虽然我可以设法运行示例和自己的代码,但我对OpenAI gym API背后的真实语义/期望更加好奇,特别是Env.reset()
何时重置预期/需要?每集结束时?或者仅在创建环境后?
我觉得在每一集之前它都有意义,但我无法明确地阅读它!
答案 0 :(得分:2)
通常在整集后使用重置。这可能是在您到达mdp中的终端状态之后,或者在您达到最大时间步长(由您设置)之后。我通常也会在培训开始时重置它。
因此,如果您处于起始状态' A'并且你想要达到状态' Z'你可以按照A' A' - > ' B' - > ' C' ...,然后当您到达终端状态' Z'时,您使用重置开始新的剧集,这会将您带回到A'。
for episode in range(iterations):
state = env.reset() // first state
for time_step in range(1000): //max amount of iterations
action = take_action(state)
observation, reward, done, _ = env.step(action)
if done:
break // takes you to the next episode where the environment is reset