设置openai健身房

问题描述 投票:2回答:1

我被赋予了设立openai玩具健身房的任务,只能由有记忆的经纪人来解决。我已经得到了一个有两扇门的例子,在时间t = 0时,我显示为1或-1。在t = 1时,我可以移动到正确的门并打开它。

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

neural-network lstm rnn openai-gym
1个回答
0
投票

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

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

把它放在台阶上 -

  1. 为您的环境定义观察空间和行动空间,最好使用gym.spaces模块。
  2. 记下执行代理人动作的步骤函数,并返回一个包含4元组的元组 - 来自环境的下一组观察,奖励,完成 - 表示剧集是否结束的布尔值,以及一些额外信息(如果需要)。
  3. 为环境写一个重置函数,将剧集重新初始化为随机开始状态,并返回类似于步骤的4元组。

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

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

  1. 重置将返回它观察哪个门有奖励。
  2. 然后代理人会选择任一门 - 0或1。
  3. 然后通过调用步骤(动作)执行环境步骤,该步骤将代理的奖励和完成标志返回为真 - 表示该剧集已结束。

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

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

© www.soinside.com 2019 - 2024. All rights reserved.