微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

OpenAI Gym Pendulum 环境在 XServer 中失败

如何解决OpenAI Gym Pendulum 环境在 XServer 中失败

我发现 OpenAI 健身房 Pendulum-v0 环境在从 XServer 运行时出现故障,在 WSL2 上运行。

这段代码

env = gym.make('Pendulum-v0')
env.reset()
for i in range(10):
    obs = env.step([1])
    env.render()
env.close()

给我这个错误

回溯(最近一次调用最后一次):
文件“test-pendulum.py”,行 27、在 env.render()
文件“/home/ruperty/anaconda3/envs/dev37/lib/python3.7/site-packages/gym/core.py”, 第 240 行,在渲染中 返回 self.env.render(mode,**kwargs)
文件“/home/ruperty/anaconda3/envs/dev37/lib/python3.7/site-packages/gym/envs/classic_control/pendulum.py”, 第 84 行,在渲染中 self.img = render.Image(fname,1.,1.)
文件“/home/ruperty/anaconda3/envs/dev37/lib/python3.7/site-packages/gym/envs/classic_control/rendering.py”, 第 327 行,在 init 中 img = pyglet.image.load(fname)
文件“/home/ruperty/anaconda3/envs/dev37/lib/python3.7/site-packages/pyglet/image/init.py”, 第 190 行,加载中 图像 = 解码器.解码(文件文件名)
文件“/home/ruperty/anaconda3/envs/dev37/lib/python3.7/site-packages/pyglet/image/codecs/pil.py”, 第 78 行,解码 image_data_fn = getattr(image,"tobytes",getattr(image,"tostring"))

AttributeError: 'Image' 对象没有属性 'tostring'

我打开了健身房窗口,但它无法正确渲染并且其中有一个黑色方形区域。

但是,CartPole-v1 环境运行良好。

此外,如果从 Windows 而不是 WSL/Ubuntu/XServer 运行,两种环境都可以正常呈现。

对如何解决有什么建议吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。