Wrapper 列表

Gymnasium 提供了許多常用的 wrappers,如下列表所示。更多資訊可以在關於 wrapper 類型的頁面中找到。

名稱

描述

AtariPreprocessing

實作 Atari 環境的常用預處理技術(不包含幀堆疊)。

Autoreset

當達到 terminated 或 truncated 狀態時,包裝的環境會自動重置。

ClipAction

將傳遞給 stepaction 裁剪到環境的 action_space 範圍內。

ClipReward

將環境的獎勵裁剪在上限和下限之間。

DelayObservation

為環境返回的 observation 增加延遲。

DtypeObservation

將 observation 陣列的 dtype 修改為指定的 dtype。

FilterObservation

透過一組鍵或索引來過濾 Dict 或 Tuple observation spaces。

FlattenObservation

展平環境的 observation space 以及來自 resetstep 函數的每個 observation。

FrameStackObservation

以滾動方式堆疊來自最後 N 個時間步的 observations。

GrayscaleObservation

resetstep 計算的影像 observation 從 RGB 轉換為灰階。

HumanRendering

允許對支援 “rgb_array” rendering 的環境進行類似人類的 rendering。

JaxToNumpy

包裝基於 Jax 的環境,使其可以與 NumPy 陣列互動。

JaxToTorch

包裝基於 Jax 的環境,使其可以與 PyTorch Tensors 互動。

MaxAndSkipObservation

跳過第 N 幀(observation)並返回最後兩個 observations 之間的最大值。

NormalizeObservation

將 observations 正規化,使其以平均值為中心並具有單位變異數。

NormalizeReward

正規化即時獎勵,使其指數移動平均值具有固定的變異數。

NumpyToTorch

包裝基於 NumPy 的環境,使其可以與 PyTorch Tensors 互動。

OrderEnforcing

如果在 reset 之前呼叫 steprender,將產生錯誤。

PassiveEnvChecker

一個被動環境檢查器 wrapper,它包圍 stepresetrender 函數,以檢查它們是否遵循 gymnasium 的 API。

RecordEpisodeStatistics

此 wrapper 將追蹤累積獎勵和 episode 長度。

RecordVideo

使用環境的 render 函數錄製環境 episodes 的影片。

RenderCollection

收集環境的 rendered 幀,例如 render 返回 list[RenderedFrame]

AddRenderObservation

將 rendered observations 包含在環境的 observations 中。

RescaleAction

將環境的 Box action space 仿射(線性)重新縮放到 [min_action, max_action] 的範圍內。

RescaleObservation

將環境的 Box observation space 仿射(線性)重新縮放到 [min_obs, max_obs] 的範圍內。

ReshapeObservation

將基於陣列的 observations 重新塑造成指定的形狀。

ResizeObservation

使用 OpenCV 將影像 observations 調整大小為指定的形狀。

StickyAction

增加一個機率,使 action 在同一個 step 函數中重複。

TimeAwareObservation

使用 episode 內經過的時間步數來擴充 observation。

TimeLimit

透過在超過最大時間步數時截斷環境來限制環境的步數。

TransformAction

在將修改後的值傳遞給環境 step 函數之前,將函數應用於 action

TransformObservation

將函數應用於從環境的 resetstep 接收到的 observation,然後將其傳遞回使用者。

TransformReward

將函數應用於從環境的 step 接收到的 reward

僅限 Vector 的 Wrappers

名稱

描述

DictInfoToList

將向量化環境的 infos 從 dict 轉換為 List[dict]

VectorizeTransformAction

為向量環境向量化單 agent 轉換 action wrapper。

VectorizeTransformObservation

為向量環境向量化單 agent 轉換 observation wrapper。

VectorizeTransformReward

為向量環境向量化單 agent 轉換 reward wrapper。