我想在OpenAI环境中进行一些修改。如果我们使用Cartpole示例,那么我们可以编辑类init函数中的内容,但是在使用Box2D的环境中,它看起来不是那么简单吗?
例如,考虑BipedalWalker环境。
在这种情况下,我将如何编辑SPEED_HIP
或SPEED_KNEE
变量之类的内容?
谢谢
答案 0 :(得分:4)
是的,您可以在健身房中修改或创建新的环境。最简单(但不推荐)的方法是直接在本地健身房安装中修改常量,但这当然不是很好。
一种更好的方法是下载Bipedal Walker环境文件(from here)并将其保存到文件(例如my_bipedal_walker.py
)
然后,您修改my_bipedal_walker.py
文件中的常量,然后将其导入代码中(假设您将文件放在可导入的路径中,或与其他代码文件位于同一文件夹中):< / p>
import gym
from my_bipedal_walker import BipedalWalker
env = BipedalWalker()
然后,您将env
变量作为环境的实例,并为物理计算定义了常量,可以将其与任何RL算法一起使用。
一种更好的方法是在OpenAI Gym注册表中提供自定义环境,您可以按照here
的说明进行操作答案 1 :(得分:0)
您可以编辑Bipedal Walker环境,就像可以修改Cartpole环境一样。
您需要做的就是修改constants for SPEED_HIP
and SPEED_KNEE
。
如果要更改在代理程序的移动中使用这些常量的方式,则可能还需要调整step
方法。
更改代码后,实例化环境时,新实例将使用您所做的修改。