<liclass="toctree-l1 current has-children"><aclass="reference internal"href="../">Vectorize</a><inputchecked=""class="toctree-checkbox"id="toctree-checkbox-3"name="toctree-checkbox-3"role="switch"type="checkbox"/><labelfor="toctree-checkbox-3"><divclass="visually-hidden">Toggle navigation of Vectorize</div><iclass="icon"><svg><usehref="#svg-arrow-right"></use></svg></i></label><ulclass="current">
<liclass="toctree-l2 current current-page"><aclass="current reference internal"href="#">Wrappers</a></li>
<liclass="toctree-l2"><aclass="reference internal"href="../../../environments/classic_control/mountain_car_continuous/">Mountain Car Continuous</a></li>
<liclass="toctree-l1 has-children"><aclass="reference internal"href="../../../environments/toy_text/">Toy Text</a><inputclass="toctree-checkbox"id="toctree-checkbox-6"name="toctree-checkbox-6"role="switch"type="checkbox"/><labelfor="toctree-checkbox-6"><divclass="visually-hidden">Toggle navigation of Toy Text</div><iclass="icon"><svg><usehref="#svg-arrow-right"></use></svg></i></label><ul>
<liclass="toctree-l2"><aclass="reference internal"href="../../../tutorials/gymnasium_basics/environment_creation/">Make your own custom environment</a></li>
<liclass="toctree-l2"><aclass="reference internal"href="../../../tutorials/gymnasium_basics/vector_envs_tutorial/">Training A2C with Vector Envs and Domain Randomization</a></li>
<liclass="toctree-l1 has-children"><aclass="reference internal"href="../../../tutorials/training_agents/">Training Agents links in the Gymnasium Documentation</a><inputclass="toctree-checkbox"id="toctree-checkbox-9"name="toctree-checkbox-9"role="switch"type="checkbox"/><labelfor="toctree-checkbox-9"><divclass="visually-hidden">Toggle navigation of Training Agents links in the Gymnasium Documentation</div><iclass="icon"><svg><usehref="#svg-arrow-right"></use></svg></i></label><ul>
<liclass="toctree-l2"><aclass="reference internal"href="../../../tutorials/training_agents/reinforce_invpend_gym_v26/">Training using REINFORCE for Mujoco</a></li>
<liclass="toctree-l2"><aclass="reference internal"href="../../../tutorials/training_agents/blackjack_tutorial/">Solving Blackjack with Q-Learning</a></li>
<liclass="toctree-l1"><aclass="reference external"href="https://github.com/Farama-Foundation/Gymnasium/blob/main/docs/README.md">Contribute to the Docs</a></li>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">VectorWrapper</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorWrapper"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorWrapper"title="Link to this definition">¶</a></dt>
<dd><p>Wraps the vectorized environment to allow a modular transformation.</p>
<p>This class is the base class for all wrappers for vectorized environments. The subclass
could override some methods to change the behavior of the original vectorized environment
without touching the original code.</p>
<divclass="admonition note">
<pclass="admonition-title">Note</p>
<p>Don’t forget to call <codeclass="docutils literal notranslate"><spanclass="pre">super().__init__(env)</span></code> if the subclass overrides <codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">__init__()</span></code>.</p>
<spanclass="sig-name descname"><spanclass="pre">step</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">actions</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">ActType</span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">tuple</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">ObsType</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">ArrayType</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">ArrayType</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">ArrayType</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">dict</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">str</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">Any</span><spanclass="p"><spanclass="pre">]</span></span><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorWrapper.step"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorWrapper.step"title="Link to this definition">¶</a></dt>
<dd><p>Step through all environments using the actions returning the batched data.</p>
<spanclass="sig-name descname"><spanclass="pre">reset</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">seed</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">int</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">list</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">int</span><spanclass="p"><spanclass="pre">]</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">None</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">options</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">dict</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">str</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">Any</span><spanclass="p"><spanclass="pre">]</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">None</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">tuple</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">ObsType</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">dict</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">str</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">Any</span><spanclass="p"><spanclass="pre">]</span></span><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorWrapper.reset"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorWrapper.reset"title="Link to this definition">¶</a></dt>
<dd><p>Reset all environment using seed and options.</p>
<spanclass="sig-name descname"><spanclass="pre">render</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">tuple</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">RenderFrame</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">...</span></span><spanclass="p"><spanclass="pre">]</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">None</span></span></span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorWrapper.render"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorWrapper.render"title="Link to this definition">¶</a></dt>
<dd><p>Returns the render mode from the base vector environment.</p>
<spanclass="sig-name descname"><spanclass="pre">close</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Any</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorWrapper.close"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorWrapper.close"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">VectorObservationWrapper</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorObservationWrapper"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorObservationWrapper"title="Link to this definition">¶</a></dt>
<dd><p>Wraps the vectorized environment to allow a modular transformation of the observation.</p>
<p>Equivalent to <aclass="reference internal"href="../../wrappers/observation_wrappers/#gymnasium.ObservationWrapper"title="gymnasium.ObservationWrapper"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">gymnasium.ObservationWrapper</span></code></a> for vectorized environments.</p>
<spanclass="sig-name descname"><spanclass="pre">observations</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">observations</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">ObsType</span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">ObsType</span></span></span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorObservationWrapper.observations"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorObservationWrapper.observations"title="Link to this definition">¶</a></dt>
<dd><p>Defines the vector observation transformation.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">VectorActionWrapper</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorActionWrapper"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorActionWrapper"title="Link to this definition">¶</a></dt>
<dd><p>Wraps the vectorized environment to allow a modular transformation of the actions.</p>
<p>Equivalent of <aclass="reference internal"href="../../wrappers/action_wrappers/#gymnasium.ActionWrapper"title="gymnasium.ActionWrapper"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">gymnasium.ActionWrapper</span></code></a> for vectorized environments.</p>
<spanclass="sig-name descname"><spanclass="pre">actions</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">actions</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">ActType</span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">ActType</span></span></span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorActionWrapper.actions"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorActionWrapper.actions"title="Link to this definition">¶</a></dt>
<dd><p>Transform the actions before sending them to the environment.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">VectorRewardWrapper</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorRewardWrapper"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorRewardWrapper"title="Link to this definition">¶</a></dt>
<dd><p>Wraps the vectorized environment to allow a modular transformation of the reward.</p>
<p>Equivalent of <aclass="reference internal"href="../../wrappers/reward_wrappers/#gymnasium.RewardWrapper"title="gymnasium.RewardWrapper"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">gymnasium.RewardWrapper</span></code></a> for vectorized environments.</p>
<spanclass="sig-name descname"><spanclass="pre">rewards</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">rewards</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">ArrayType</span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">ArrayType</span></span></span><aclass="reference internal"href="../../../_modules/gymnasium/vector/vector_env/#VectorRewardWrapper.rewards"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.VectorRewardWrapper.rewards"title="Link to this definition">¶</a></dt>
<dd><p>Transform the reward before returning it.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">DictInfoToList</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/dict_info_to_list/#DictInfoToList"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.DictInfoToList"title="Link to this definition">¶</a></dt>
<dd><p>Converts infos of vectorized environments from <codeclass="docutils literal notranslate"><spanclass="pre">dict</span></code> to <codeclass="docutils literal notranslate"><spanclass="pre">List[dict]</span></code>.</p>
<p>This wrapper converts the info format of a
vector environment from a dictionary to a list of dictionaries.
This wrapper is intended to be used around vectorized
environments. If using other wrappers that perform
operation on info like <cite>RecordEpisodeStatistics</cite> this
<dt>Another example for vector environments:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">numpy</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">np</span>
<ddclass="field-odd"><p><strong>env</strong> (<aclass="reference internal"href="../../env/#gymnasium.Env"title="gymnasium.Env"><em>Env</em></a>) – The environment to apply the wrapper</p>
<dt>Example - The normal observation:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">gymnasium</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">gym</span>
<dt>Example - Applying a custom lambda observation wrapper that duplicates the observation from the environment</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">numpy</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">np</span>
<dt>Example - Adding a transform that applies a ReLU to the action:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">gymnasium</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">gym</span>
<dt>An example such that applies a ReLU to the reward:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">gymnasium</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">gym</span>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">RecordEpisodeStatistics</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">buffer_length</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">int</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">100</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">stats_key</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">str</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">'episode'</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/common/#RecordEpisodeStatistics"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.RecordEpisodeStatistics"title="Link to this definition">¶</a></dt>
<dd><p>This wrapper will keep track of cumulative rewards and episode lengths.</p>
<p>At the end of any episode within the vectorized env, the statistics of the episode
will be added to <codeclass="docutils literal notranslate"><spanclass="pre">info</span></code> using the key <codeclass="docutils literal notranslate"><spanclass="pre">episode</span></code>, and the <codeclass="docutils literal notranslate"><spanclass="pre">_episode</span></code> key
is used to indicate the environment index which has a terminated or truncated episode.</p>
<spanclass="gp">... </span><spanclass="s2">"r"</span><spanclass="p">:</span><spanclass="s2">"<array of cumulative reward for each done sub-environment>"</span><spanclass="p">,</span>
<spanclass="gp">... </span><spanclass="s2">"l"</span><spanclass="p">:</span><spanclass="s2">"<array of episode length for each done sub-environment>"</span><spanclass="p">,</span>
<spanclass="gp">... </span><spanclass="s2">"t"</span><spanclass="p">:</span><spanclass="s2">"<array of elapsed time since beginning of episode for each done sub-environment>"</span>
<li><p><strong>return_queue</strong>– The cumulative rewards of the last <codeclass="docutils literal notranslate"><spanclass="pre">deque_size</span></code>-many episodes</p></li>
<li><p><strong>length_queue</strong>– The lengths of the last <codeclass="docutils literal notranslate"><spanclass="pre">deque_size</span></code>-many episodes</p></li>
<li><p><strong>env</strong> (<aclass="reference internal"href="../../env/#gymnasium.Env"title="gymnasium.Env"><em>Env</em></a>) – The environment to apply the wrapper</p></li>
<li><p><strong>buffer_length</strong>– The size of the buffers <codeclass="xref py py-attr docutils literal notranslate"><spanclass="pre">return_queue</span></code>, <codeclass="xref py py-attr docutils literal notranslate"><spanclass="pre">length_queue</span></code> and <codeclass="xref py py-attr docutils literal notranslate"><spanclass="pre">time_queue</span></code></p></li>
<li><p><strong>stats_key</strong>– The info key to save the data</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</section>
<sectionid="implemented-observation-wrappers">
<h2>Implemented Observation wrappers<aclass="headerlink"href="#implemented-observation-wrappers"title="Link to this heading">¶</a></h2>
<dd><p>Transforms an observation via a function provided to the wrapper.</p>
<p>This function allows the manual specification of the vector-observation function as well as the single-observation function.
This is desirable when, for example, it is possible to process vector observations in parallel or via other more optimized methods.
Otherwise, the <codeclass="docutils literal notranslate"><spanclass="pre">VectorizeTransformObservation</span></code> should be used instead, where only <codeclass="docutils literal notranslate"><spanclass="pre">single_func</span></code> needs to be defined.</p>
<li><p><strong>env</strong>– The vector environment to wrap</p></li>
<li><p><strong>func</strong>– A function that will transform the vector observation. If this transformed observation is outside the observation space of <codeclass="docutils literal notranslate"><spanclass="pre">env.observation_space</span></code> then provide an <codeclass="docutils literal notranslate"><spanclass="pre">observation_space</span></code>.</p></li>
<li><p><strong>observation_space</strong>– The observation spaces of the wrapper. If None, then it is computed from <codeclass="docutils literal notranslate"><spanclass="pre">single_observation_space</span></code>. If <codeclass="docutils literal notranslate"><spanclass="pre">single_observation_space</span></code> is not provided either, then it is assumed to be the same as <codeclass="docutils literal notranslate"><spanclass="pre">env.observation_space</span></code>.</p></li>
<li><p><strong>single_observation_space</strong>– The observation space of the non-vectorized environment. If None, then it is assumed the same as <codeclass="docutils literal notranslate"><spanclass="pre">env.single_observation_space</span></code>.</p></li>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">FilterObservation</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">filter_keys</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../../spaces/composite/#gymnasium.spaces.Sequence"title="gymnasium.spaces.Sequence"><spanclass="pre">Sequence</span></a><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">str</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">int</span><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_observation/#FilterObservation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.FilterObservation"title="Link to this definition">¶</a></dt>
<dd><p>Vector wrapper for filtering dict or tuple observation spaces.</p>
<dt>Example - Create a vectorized environment with a Dict space to demonstrate how to filter keys:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">numpy</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">np</span>
<li><p><strong>env</strong>– The vector environment to wrap</p></li>
<li><p><strong>filter_keys</strong>– The subspaces to be included, use a list of strings or integers for <codeclass="docutils literal notranslate"><spanclass="pre">Dict</span></code> and <codeclass="docutils literal notranslate"><spanclass="pre">Tuple</span></code> spaces respectivesly</p></li>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">FlattenObservation</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_observation/#FlattenObservation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.FlattenObservation"title="Link to this definition">¶</a></dt>
<dd><p>Observation wrapper that flattens the observation.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">GrayscaleObservation</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">keep_dim</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">bool</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">False</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_observation/#GrayscaleObservation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.GrayscaleObservation"title="Link to this definition">¶</a></dt>
<dd><p>Observation wrapper that converts an RGB image to grayscale.</p>
<li><p><strong>env</strong>– The vector environment to wrap</p></li>
<li><p><strong>keep_dim</strong>– If to keep the channel in the observation, if <codeclass="docutils literal notranslate"><spanclass="pre">True</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">obs.shape</span><spanclass="pre">==</span><spanclass="pre">3</span></code> else <codeclass="docutils literal notranslate"><spanclass="pre">obs.shape</span><spanclass="pre">==</span><spanclass="pre">2</span></code></p></li>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">ResizeObservation</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">shape</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">tuple</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">int</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">...</span></span><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_observation/#ResizeObservation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.ResizeObservation"title="Link to this definition">¶</a></dt>
<dd><p>Resizes image observations using OpenCV to shape.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">ReshapeObservation</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">shape</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">int</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">tuple</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">int</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">...</span></span><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_observation/#ReshapeObservation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.ReshapeObservation"title="Link to this definition">¶</a></dt>
<dd><p>Reshapes array based observations to shapes.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">RescaleObservation</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">min_obs</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">np.floating</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">np.integer</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">np.ndarray</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">max_obs</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">np.floating</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">np.integer</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">np.ndarray</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_observation/#RescaleObservation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.RescaleObservation"title="Link to this definition">¶</a></dt>
<dd><p>Linearly rescales observation to between a minimum and maximum value.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">DtypeObservation</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">dtype</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Any</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_observation/#DtypeObservation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.DtypeObservation"title="Link to this definition">¶</a></dt>
<dd><p>Observation wrapper for transforming the dtype of an observation.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">NormalizeObservation</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">epsilon</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">float</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">1e-8</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/stateful_observation/#NormalizeObservation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.NormalizeObservation"title="Link to this definition">¶</a></dt>
<dd><p>This wrapper will normalize observations s.t. each coordinate is centered with unit variance.</p>
<p>The property <cite>_update_running_mean</cite> allows to freeze/continue the running mean calculation of the observation
statistics. If <cite>True</cite> (default), the <cite>RunningMeanStd</cite> will get updated every step and reset call.
If <cite>False</cite>, the calculated statistics are used but not updated anymore; this may be used during evaluation.</p>
<divclass="admonition note">
<pclass="admonition-title">Note</p>
<p>The normalization depends on past trajectories and observations will not be normalized correctly if the wrapper was
newly instantiated or the policy was changed recently.</p>
<dt>Example without the normalize reward wrapper:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">gymnasium</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">gym</span>
<dt>Example with the normalize reward wrapper:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">gymnasium</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">gym</span>
<li><p><strong>env</strong> (<aclass="reference internal"href="../../env/#gymnasium.Env"title="gymnasium.Env"><em>Env</em></a>) – The environment to apply the wrapper</p></li>
<li><p><strong>epsilon</strong>– A stability parameter that is used when scaling the observations.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</section>
<sectionid="implemented-action-wrappers">
<h2>Implemented Action wrappers<aclass="headerlink"href="#implemented-action-wrappers"title="Link to this heading">¶</a></h2>
<dd><p>Transforms an action via a function provided to the wrapper.</p>
<p>The function <codeclass="xref py py-attr docutils literal notranslate"><spanclass="pre">func</span></code> will be applied to all vector actions.
If the observations from <codeclass="xref py py-attr docutils literal notranslate"><spanclass="pre">func</span></code> are outside the bounds of the <codeclass="docutils literal notranslate"><spanclass="pre">env</span></code>’s action space,
provide an <codeclass="xref py py-attr docutils literal notranslate"><spanclass="pre">action_space</span></code> which specifies the action space for the vectorized environment.</p>
<li><p><strong>env</strong>– The vector environment to wrap</p></li>
<li><p><strong>func</strong>– A function that will transform an action. If this transformed action is outside the action space of <codeclass="docutils literal notranslate"><spanclass="pre">env.action_space</span></code> then provide an <codeclass="docutils literal notranslate"><spanclass="pre">action_space</span></code>.</p></li>
<li><p><strong>action_space</strong>– The action spaces of the wrapper. If None, then it is computed from <codeclass="docutils literal notranslate"><spanclass="pre">single_action_space</span></code>. If <codeclass="docutils literal notranslate"><spanclass="pre">single_action_space</span></code> is not provided either, then it is assumed to be the same as <codeclass="docutils literal notranslate"><spanclass="pre">env.action_space</span></code>.</p></li>
<li><p><strong>single_action_space</strong>– The action space of the non-vectorized environment. If None, then it is assumed the same as <codeclass="docutils literal notranslate"><spanclass="pre">env.single_action_space</span></code>.</p></li>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">ClipAction</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_action/#ClipAction"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.ClipAction"title="Link to this definition">¶</a></dt>
<dd><p>Clip the continuous action within the valid <codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">Box</span></code> observation space bound.</p>
<dt>Example - Passing an out-of-bounds action to the environment to be clipped.</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">numpy</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">np</span>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">RescaleAction</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">min_action</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">float</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">int</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">np.ndarray</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">max_action</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">float</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">int</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">np.ndarray</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_action/#RescaleAction"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.RescaleAction"title="Link to this definition">¶</a></dt>
<dd><p>Affinely rescales the continuous action space of the environment to the range [min_action, max_action].</p>
<li><p><strong>env</strong> (<aclass="reference internal"href="../../env/#gymnasium.Env"title="gymnasium.Env"><em>Env</em></a>) – The vector environment to wrap</p></li>
<li><p><strong>min_action</strong> (<em>float</em><em>, </em><em>int</em><em> or </em><em>np.ndarray</em>) – The min values for each action. This may be a numpy array or a scalar.</p></li>
<li><p><strong>max_action</strong> (<em>float</em><em>, </em><em>int</em><em> or </em><em>np.ndarray</em>) – The max values for each action. This may be a numpy array or a scalar.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</section>
<sectionid="implemented-reward-wrappers">
<h2>Implemented Reward wrappers<aclass="headerlink"href="#implemented-reward-wrappers"title="Link to this heading">¶</a></h2>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">TransformReward</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">func</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Callable</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">ArrayType</span><spanclass="p"><spanclass="pre">]</span></span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">ArrayType</span><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_reward/#TransformReward"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.TransformReward"title="Link to this definition">¶</a></dt>
<dd><p>A reward wrapper that allows a custom function to modify the step reward.</p>
<li><p><strong>env</strong> (<aclass="reference internal"href="../../env/#gymnasium.Env"title="gymnasium.Env"><em>Env</em></a>) – The vector environment to wrap</p></li>
<li><p><strong>func</strong>– (Callable): The function to apply to reward</p></li>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">ClipReward</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">min_reward</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">float</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">np.ndarray</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">None</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">max_reward</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">float</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">np.ndarray</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">None</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/vectorize_reward/#ClipReward"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.ClipReward"title="Link to this definition">¶</a></dt>
<dd><p>A wrapper that clips the rewards for an environment between an upper and lower bound.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">NormalizeReward</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">gamma</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">float</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">0.99</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">epsilon</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">float</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">1e-8</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/stateful_reward/#NormalizeReward"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.NormalizeReward"title="Link to this definition">¶</a></dt>
<dt>Example without the normalize reward wrapper:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">gymnasium</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">gym</span>
<dt>Example with the normalize reward wrapper:</dt><dd><divclass="doctest highlight-default notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>></span><spanclass="kn">import</span><spanclass="w"></span><spanclass="nn">gymnasium</span><spanclass="w"></span><spanclass="k">as</span><spanclass="w"></span><spanclass="nn">gym</span>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">JaxToNumpy</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.vector_env.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/jax_to_numpy/#JaxToNumpy"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.JaxToNumpy"title="Link to this definition">¶</a></dt>
<dd><p>Wraps a jax vector environment so that it can be interacted with through numpy arrays.</p>
<pclass="rubric">Notes</p>
<p>A vectorized version of <codeclass="docutils literal notranslate"><spanclass="pre">gymnasium.wrappers.JaxToNumpy</span></code></p>
<p>Actions must be provided as numpy arrays and observations, rewards, terminations and truncations will be returned as numpy arrays.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">JaxToTorch</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">device</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Device</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">None</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/jax_to_torch/#JaxToTorch"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.JaxToTorch"title="Link to this definition">¶</a></dt>
<dd><p>Wraps a Jax-based vector environment so that it can be interacted with through PyTorch Tensors.</p>
<p>Actions must be provided as PyTorch Tensors and observations, rewards, terminations and truncations will be returned as PyTorch Tensors.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">gymnasium.wrappers.vector.</span></span><spanclass="sig-name descname"><spanclass="pre">NumpyToTorch</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">env</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="../#gymnasium.vector.VectorEnv"title="gymnasium.vector.VectorEnv"><spanclass="pre">VectorEnv</span></a></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">device</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Device</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">None</span></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/wrappers/vector/numpy_to_torch/#NumpyToTorch"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.wrappers.vector.NumpyToTorch"title="Link to this definition">¶</a></dt>
<dd><p>Wraps a numpy-based environment so that it can be interacted with through PyTorch Tensors.</p>