我正在与RL代理一起工作,并试图复制这个纸的发现,其中他们基于Gym制作了一个定制的parkour环境,但是当我试图呈现这个环境时,我遇到了这样的情况。
import numpy as np
import time
import gym
import TeachMyAgent.environments
env = gym.make('parametric-continuous-parkour-v0', agent_body_type='fish', movable_creepers=True)
env.set_environment(input_vector=np.zeros(3), water_level = 0.1)
env.reset()
while True:
_, _, d, _ = env.step(env.action_space.sample())
env.render(mode='human')
time.sleep(0.1)
c:\users\manu dwivedi\teachmyagent\TeachMyAgent\environments\envs\parametric_continuous_parkour.py in render(self, mode, draw_lidars)
462
463 def render(self, mode='human', draw_lidars=True):
--> 464 from gym.envs.classic_control import rendering
465 if self.viewer is None:
466 self.viewer = rendering.Viewer(RENDERING_VIEWER_W, RENDERING_VIEWER_H)
ImportError: cannot import name 'rendering' from 'gym.envs.classic_control' (C:\ProgramData\Anaconda3\envs\teachagent\lib\site-packages\gym\envs\classic_control\__init__.py)
[1]: https://github.com/flowersteam/TeachMyAgent
我认为这可能是这个自定义环境的一个问题,以及作者是如何决定呈现它的,但是,当我尝试
from gym.envs.classic_control import rendering
我遇到了同样的错误,github用户这里建议在调用gym.make()
呈现时添加rendor_mode='human'
可以解决这个问题,但这似乎只适用于他们的具体情况。
发布于 2022-04-25 15:05:10
我(在一位同学的帮助下)通过将gym
包降级到0.21.0来工作。为此执行命令pip install gym==0.21.0
。
“更新”,来自发行版
基于https://github.com/openai/gym/issues/2779
这应该是裸子植物的一个问题,有一个开放的PR:wsgdrfz/裸子网#1,如果您想使用最后一个版本的健身房,您可以尝试使用该PR的分支(https://github.com/CedricHermansBIT/gymgrid2);您可以使用pip install gymgrid2
安装它。
https://stackoverflow.com/questions/71973392
复制相似问题