【问题标题】:Setting up openai gym开设openai健身房
【发布时间】:2019-02-05 23:26:35
【问题描述】:

我的任务是建立一个 openai 玩具健身房,这只能由具有记忆力的代理解决。我得到了一个有两扇门的例子,在时间 t = 0 时,我显示为 1 或 -1。在 t = 1 时,我可以移动到正确的门并打开它。

有谁知道我将如何开始?我想证明 a2c 或 ppo 可以使用 lstm 策略解决这个问题。如何设置环境等?

【问题讨论】:

    标签: neural-network lstm rnn openai-gym


    【解决方案1】:

    要创建一个gym格式的新环境,它应该具有gym.core文件中提到的5个功能。

    https://github.com/openai/gym/blob/e689f93a425d97489e590bba0a7d4518de0dcc03/gym/core.py#L11-L35

    分步说明-

    1. 为您的环境定义观察空间和行动空间,最好使用gym.spaces 模块。

    2. 写下执行代理动作的步骤函数并返回一个 4 元组,其中包含 - 来自环境的下一组观察值、奖励、 done - 一个布尔值,指示剧集是否结束,如果需要,还可以提供一些额外信息。

    3. 为环境编写一个重置函数,将情节重新初始化为随机开始状态,并返回一个类似于 step 的 4 元组。

    这些功能足以在您的环境中运行 RL 代理。 如果需要,您可以跳过渲染、种子和关闭功能。

    对于您定义的任务,您可以使用 Discrete(2) 对观察和动作空间进行建模。 0 代表第一扇门,1 代表第二扇门。

    1. 重置将返回观察哪个门有奖励。
    2. 然后代理会选择门 - 0 或 1。
    3. 然后通过调用 step(action) 执行环境步骤,这将返回代理的奖励和完成标志为真 - 表示情节结束。

    坦率地说,你描述的问题对于任何强化学习算法来说似乎都太简单了,但我假设你已经提供了这个例子。 记住更长的视野通常更难。

    您可以阅读他们的文档和玩具环境来了解如何创建一个。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-10-16
      • 2018-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多