快捷方式

AdditiveGaussianWrapper

class torchrl.modules.AdditiveGaussianWrapper(*args, **kwargs)[source]

加性高斯策略包装器。

参数:

policy (TensorDictModule) – 一个策略。

关键字参数:
  • sigma_init (标量, 可选) – 初始 epsilon 值。默认值:1.0

  • sigma_end (标量, 可选) – 最终 epsilon 值。默认值:0.1

  • annealing_num_steps (int, 可选) – sigma 达到 sigma_end 值所需的步数。

  • mean (float, 可选) – 每个输出元素的正态分布的均值。

  • std (float, 可选) – 每个输出元素的正态分布的标准差。

  • action_key (NestedKey, 可选) – 如果策略模块有多个输出键,则其输出规范将为 Composite 类型。需要知道在哪里可以找到动作规范。默认值为“action”。

  • spec (TensorSpec, 可选) – 如果提供,则采样的动作将在探索后投影到有效的动作空间中。如果未提供,探索包装器将尝试从策略中恢复它。

  • safe (boolean, 可选) – 如果为 False,则 TensorSpec 可以为 None。如果设置为 False 但传递了 spec,则仍会发生投影。默认值为 True。

注意

一旦环境被包装在 AdditiveGaussianWrapper 中,至关重要的是在训练循环中加入对 step() 的调用,以更新探索因子。由于不容易捕捉到这种遗漏,如果省略了它,将不会引发警告或异常!

forward(tensordict: TensorDictBase) TensorDictBase[source]

定义每次调用时执行的计算。

应由所有子类重写。

注意

尽管 forward 传递的配方需要在此函数中定义,但之后应调用 Module 实例而不是此函数,因为前者负责运行注册的钩子,而后者会静默地忽略它们。

step(frames: int = 1) None[source]

sigma 衰减的一个步长。

在 self.annealing_num_steps 之后,此函数不执行任何操作。

参数:

frames (int) – 自上次步长以来的帧数。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得问题解答

查看资源