reinforcement-learning - 我们需要gym环境的 "metadata"字段做什么?

标签 reinforcement-learning openai-gym

我注意到基类Env(来自gym)包含一个名为metadata的类字段。该字段似乎用于指定如何渲染环境。例如,在 FrozenLake 环境中,metadata定义为

metadata = {'render.modes': ['human', 'ansi']}

但是,该文件中从未使用过此属性/字段元数据。例如,在同一示例中,render method有一个参数,您可以在其中指定渲染模式(并且 render 方法甚至不检查传递给此参数的值是否在 metadata 类字段中),所以我我不确定为什么我们需要这个元数据字段。

那么,为什么我们需要字段metadata?除了指定环境的渲染“模式”之外,它还用于其他用途吗?如果是,在哪里?

最佳答案

我会尽量做到基本。 我已经进行了一些试验,据我了解,渲染有 2 种模式, humanansi,它们处理控制台上的输出。(附上我的控制台的屏幕截图)。在人类模式下(默认),输出将为 SFFF、FHFH,带有当前观察的颜色标签(人类友好)...等,在 ansi 模式下,您将输出类似字节 不执行编码、解码或换行符转换的对象,例如\nSFFF\n\x1b[41mF\x1b[0mHFH]。

查看下面我的输出: enter image description here

关于reinforcement-learning - 我们需要gym环境的 "metadata"字段做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64680088/

相关文章:

machine-learning - 如何保存经过训练的强化学习代理以避免每次都对其进行训练?

reinforcement-learning - openai spinup 中的 RL PPO Action 空间裁剪

video - 有没有办法在 OpenAI gym 中禁用视频渲染,同时仍在录制?

reinforcement-learning - OpenAI Gym : Understanding `action_space` notation (spaces. 盒子)

TensorFlow:图形优化(GPU 与 CPU 性能)

reinforcement-learning - 在难以接触真实环境的情况下如何应用无模型深度强化学习?

reinforcement-learning - Q-learning:奖励计算的正确状态是什么

python - tflearn 创建多个模型

reinforcement-learning - NameError:未定义名称“base” OpenAI Gym

python - 获取错误 : module 'gym' has no attribute 'make'