0

我有一个关于我自己在 tf 代理中的环境的问题。观察向量包含描述不同类型数据的元素(例如,以秒为单位的时间、以 m/s 为单位的速度、以 m 为单位的距离)。距离从-500到+500的区间,速度在0到+20之间,时间在-10到+10之间。

定义环境时,self._observation_spec需要参数maximumminimum,如 tf-agents 存储库中的环境教程中所述:

class CardGameEnv(py_environment.PyEnvironment):

  def __init__(self):
    self._action_spec = array_spec.BoundedArraySpec(
        shape=(), dtype=np.int32, minimum=0, maximum=1, name='action')
    self._observation_spec = array_spec.BoundedArraySpec(
        shape=(1,), dtype=np.int32, minimum=0, name='observation')
    self._state = 0
    self._episode_ended = False

与代码片段不同的是,我使用浮点数而不是整数。

现在的问题是,我应该minimum如何maximumself._observation_spec. 我应该将所有值标准化为区间 (0,1) 并使用 0 和 1 作为minimum参数maximum吗?或者我应该只使用 asminimummaximum-500 和 +500 (取自距离间隔)并插入我所有的值而不进行归一化,尽管我的速度和时间元素使用更紧密的间隔?

我对这些行动有同样的问题。但我认为行动和观察的答案是相同的。

提前致谢!

4

0 回答 0