具有负值的 OpenAi-Gym Discrete Space
OpenAi-Gym Discrete Space with negative values
我创建了一个自定义健身房环境,其中的动作可以是 -100 到 +100 之间的任何整数。据我所知,不可能创建一个允许负值的离散 space,我唯一的解决方案是创建一个从 -100 到 +100 的 Box space(注意这是一个连续的 space).
由于大多数强化学习代理都假设 space 的行为是离散的 space 我在 运行 我的代码中遇到了困难(我知道有一些代理,例如 DDPG 运行在连续动作 spaces).
在健身房里可以有一个离散的 space 允许负值吗?
AFAIK,在 OpenAI-Gym 离散环境中,每个可能的操作都有索引,因此您可能不需要负值。但是,您可以将每个动作索引映射到任意值,正值或负值。
例如,在 Cartpole 环境中,您可以对小车施加正向(向右推)或负向(向左推)力。此问题使用离散环境建模,其中 action 0 = negative force
和 action 1 = positive force
。有关详细信息,请查看 Cartpole source code(例如,第 95 行)。
同样,在你的情况下,虽然你的200个行动指数都是积极的,但它们可以代表积极或消极的行动。
我创建了一个自定义健身房环境,其中的动作可以是 -100 到 +100 之间的任何整数。据我所知,不可能创建一个允许负值的离散 space,我唯一的解决方案是创建一个从 -100 到 +100 的 Box space(注意这是一个连续的 space).
由于大多数强化学习代理都假设 space 的行为是离散的 space 我在 运行 我的代码中遇到了困难(我知道有一些代理,例如 DDPG 运行在连续动作 spaces).
在健身房里可以有一个离散的 space 允许负值吗?
AFAIK,在 OpenAI-Gym 离散环境中,每个可能的操作都有索引,因此您可能不需要负值。但是,您可以将每个动作索引映射到任意值,正值或负值。
例如,在 Cartpole 环境中,您可以对小车施加正向(向右推)或负向(向左推)力。此问题使用离散环境建模,其中 action 0 = negative force
和 action 1 = positive force
。有关详细信息,请查看 Cartpole source code(例如,第 95 行)。
同样,在你的情况下,虽然你的200个行动指数都是积极的,但它们可以代表积极或消极的行动。