如何为我的自定义openai环境定义observation_space?

时间:2019-06-04 16:53:41

标签: python openai-gym

我目前正在一个自定义的Gym环境中工作,该环境代表一个网络图(带有节点和链接),并且我正在努力确定环境的observation_space变量应该是什么样。我不打算使用环境的图形表示(这意味着render()方法将仅使用终端)。

我在openai gihub页面上寻找答案,并且找到了issue。但是,我仍然不知道我的observation_space变量应该是什么样子。

我的健身环境目前看起来像this

TL; DR:

  • 当前状态实际上是代理程序所在的节点
  • 当前状态是字符
  • 可能的状态列表在构造函数中已明确显示

此外,我计划使用Q学习算法来利用此图:我应该离散化observation_space吗?我计划使用like this one之类的RL算法。

我应该如何代表我的observation_space

谢谢!

1 个答案:

答案 0 :(得分:0)

在Gym环境中,观察空间表示可以通过step()方法返回的所有可能的观察。我查看了您的环境代码,对我来说,您的观察空间似乎是图形的节点列表。在这种情况下,您将不得不扩展Gym.spaces.Space类,因为默认的Gym中没有“列表”空间。