快捷方式

td1_advantage_estimate

class torchrl.objectives.value.functional.td1_advantage_estimate(gamma: float, state_value: torch.Tensor, next_state_value: torch.Tensor, reward: torch.Tensor, done: torch.Tensor, terminated: torch.Tensor | None = None, rolling_gamma: bool = None, time_dim: int = - 2)[源]

TD(1) 優勢估計。

引數:
  • gamma (標量) – 指數平均折扣。

  • state_value (Tensor) – 輸入舊狀態 (old_state) 的值函式結果。

  • next_state_value (Tensor) – 輸入新狀態 (new_state) 的值函式結果。

  • reward (Tensor) – 在環境中採取行動的獎勵。

  • done (Tensor) – 表示軌跡結束的布林標誌。

  • terminated (Tensor) – 表示幕 (episode) 結束的布林標誌。如果未提供,預設為 done

  • rolling_gamma (bool, 可選) –

    如果為 True,則假定 gamma 張量中的每個 gamma 都與一個單一事件關聯。

    >>> gamma = [g1, g2, g3, g4]
    >>> value = [v1, v2, v3, v4]
    >>> return = [
    ...   v1 + g1 v2 + g1 g2 v3 + g1 g2 g3 v4,
    ...   v2 + g2 v3 + g2 g3 v4,
    ...   v3 + g3 v4,
    ...   v4,
    ... ]
    

    如果為 False,則假定每個 gamma 都與即將到來的軌跡關聯。

    >>> gamma = [g1, g2, g3, g4]
    >>> value = [v1, v2, v3, v4]
    >>> return = [
    ...   v1 + g1 v2 + g1**2 v3 + g**3 v4,
    ...   v2 + g2 v3 + g2**2 v4,
    ...   v3 + g3 v4,
    ...   v4,
    ... ]
    

    預設為 True

  • time_dim (int) – 時間展開所在的維度。預設為 -2。

所有張量(值、獎勵和完成標誌)必須具有形狀 [*Batch x TimeSteps x *F],其中 *F 是特徵維度。

文件

檢視 PyTorch 的完整開發者文件

檢視文件

教程

獲取針對初學者和高階開發者的深入教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源