【问题标题】:How to undo action in OpenAI Gym?如何撤消 OpenAI Gym 中的操作?
【发布时间】:2017-01-02 00:19:12
【问题描述】:

在 OpenAI Gym 中,我想知道在同一状态下不同动作的下一个状态。例如,我想得到 s_1, s_2 我的环境的动态是:

(s, a_1) -> s_1, (s, a_2) -> s_2

我找不到撤消操作或在不更改环境的情况下向我显示下一个状态的方法。我有什么明显的遗漏吗?

如果有帮助,我这样做是为了区分 LQR 的动态和奖励,并使用 InvertedPendulum 环境。

【问题讨论】:

    标签: python reinforcement-learning openai-gym


    【解决方案1】:

    我找到了一个名为 set_state 的方法,它正是这样做的。可以在以下位置找到: https://github.com/openai/gym/blob/12e8b763d5dcda4962cbd17887d545f0eec6808a/gym/envs/mujoco/mujoco_env.py#L86-L92

    【讨论】:

      【解决方案2】:

      尝试克隆环境。

      from copy import deepcopy
      import gym
      
      env1 = gym.make("InvertedPendulum-v1")
      s = env.reset()
      
      env2 = deepcopy(env1)
      
      s_1 = env.step(a_1)
      s_2 = env.step(a_2)
      

      【讨论】:

        猜你喜欢
        • 2022-10-08
        • 2017-11-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-08-24
        • 1970-01-01
        • 2017-10-24
        • 1970-01-01
        相关资源
        最近更新 更多