<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"><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>
</ul>
</li>
<liclass="toctree-l1 has-children"><aclass="reference internal"href="../../../tutorials/training_agents/">Training Agents</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</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>
<li><p><strong>env_fns</strong>– Functions that create the environments.</p></li>
<li><p><strong>shared_memory</strong>– If <codeclass="docutils literal notranslate"><spanclass="pre">True</span></code>, then the observations from the worker processes are communicated back through
shared variables. This can improve the efficiency if the observations are large (e.g. images).</p></li>
<li><p><strong>copy</strong>– If <codeclass="docutils literal notranslate"><spanclass="pre">True</span></code>, then the <aclass="reference internal"href="#gymnasium.vector.AsyncVectorEnv.reset"title="gymnasium.vector.AsyncVectorEnv.reset"><codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">AsyncVectorEnv.reset()</span></code></a> and <aclass="reference internal"href="#gymnasium.vector.AsyncVectorEnv.step"title="gymnasium.vector.AsyncVectorEnv.step"><codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">AsyncVectorEnv.step()</span></code></a> methods
return a copy of the observations.</p></li>
<li><p><strong>context</strong>– Context for <cite>multiprocessing</cite>. If <codeclass="docutils literal notranslate"><spanclass="pre">None</span></code>, then the default context is used.</p></li>
<li><p><strong>daemon</strong>– If <codeclass="docutils literal notranslate"><spanclass="pre">True</span></code>, then subprocesses have <codeclass="docutils literal notranslate"><spanclass="pre">daemon</span></code> flag turned on; that is, they will quit if
the head process quits. However, <codeclass="docutils literal notranslate"><spanclass="pre">daemon=True</span></code> prevents subprocesses to spawn children,
so for some environments you may want to have it set to <codeclass="docutils literal notranslate"><spanclass="pre">False</span></code>.</p></li>
<li><p><strong>worker</strong>– If set, then use that worker in a subprocess instead of a default one.
Can be useful to override some inner vector env logic, for instance, how resets on termination or truncation are handled.</p></li>
<li><p><strong>observation_mode</strong>– Defines how environment observation spaces should be batched. ‘same’ defines that there should be <codeclass="docutils literal notranslate"><spanclass="pre">n</span></code> copies of identical spaces.
‘different’ defines that there can be multiple observation spaces with different parameters though requires the same shape and dtype,
warning, may raise unexpected errors. Passing a <codeclass="docutils literal notranslate"><spanclass="pre">Tuple[Space,</span><spanclass="pre">Space]</span></code> object allows defining a custom <codeclass="docutils literal notranslate"><spanclass="pre">single_observation_space</span></code> and
<codeclass="docutils literal notranslate"><spanclass="pre">observation_space</span></code>, warning, may raise unexpected errors.</p></li>
</ul>
</dd>
</dl>
<divclass="admonition warning">
<pclass="admonition-title">Warning</p>
<p>worker is an advanced mode option. It provides a high degree of flexibility and a high chance
to shoot yourself in the foot; thus, if you are writing your own worker, it is recommended to start
from the code for <codeclass="docutils literal notranslate"><spanclass="pre">_worker</span></code> (or <codeclass="docutils literal notranslate"><spanclass="pre">_async_worker</span></code>) method, and add changes.</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/async_vector_env/#AsyncVectorEnv.reset"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.AsyncVectorEnv.reset"title="Link to this definition">¶</a></dt>
<dd><p>Resets all sub-environments in parallel and return a batch of concatenated observations and info.</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/async_vector_env/#AsyncVectorEnv.step"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.AsyncVectorEnv.step"title="Link to this definition">¶</a></dt>
<dd><p>Take an action for each parallel environment.</p>
<ddclass="field-odd"><p><strong>actions</strong>– element of <codeclass="xref py py-attr docutils literal notranslate"><spanclass="pre">action_space</span></code> batch of actions.</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="headerlink"href="#gymnasium.vector.AsyncVectorEnv.close"title="Link to this definition">¶</a></dt>
<dd><p>Close all parallel environments and release resources.</p>
<p>It also closes all the existing image viewers, then calls <codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">close_extras()</span></code> and set
<codeclass="xref py py-attr docutils literal notranslate"><spanclass="pre">closed</span></code> as <codeclass="docutils literal notranslate"><spanclass="pre">True</span></code>.</p>
<divclass="admonition warning">
<pclass="admonition-title">Warning</p>
<p>This function itself does not close the environments, it should be handled
in <codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">close_extras()</span></code>. This is generic for both synchronous and asynchronous
vectorized environments.</p>
</div>
<divclass="admonition note">
<pclass="admonition-title">Note</p>
<p>This will be automatically called when garbage collected or program exited.</p>
<spanclass="sig-name descname"><spanclass="pre">call</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">name</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">str</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Any</span></span></em>, <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><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">tuple</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">Any</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">...</span></span><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../../../_modules/gymnasium/vector/async_vector_env/#AsyncVectorEnv.call"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.AsyncVectorEnv.call"title="Link to this definition">¶</a></dt>
<dd><p>Call a method from each parallel environment with args and kwargs.</p>
<spanclass="sig-name descname"><spanclass="pre">get_attr</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">name</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">str</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">Any</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">...</span></span><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../../../_modules/gymnasium/vector/async_vector_env/#AsyncVectorEnv.get_attr"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.AsyncVectorEnv.get_attr"title="Link to this definition">¶</a></dt>
<dd><p>Get a property from each parallel environment.</p>
<spanclass="sig-name descname"><spanclass="pre">set_attr</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">name</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">str</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">values</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">list</span><spanclass="p"><spanclass="pre">[</span></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">tuple</span><spanclass="p"><spanclass="pre">[</span></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">object</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../../../_modules/gymnasium/vector/async_vector_env/#AsyncVectorEnv.set_attr"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#gymnasium.vector.AsyncVectorEnv.set_attr"title="Link to this definition">¶</a></dt>
<dd><p>Sets an attribute of the sub-environments.</p>
<li><p><strong>name</strong>– Name of the property to be set in each individual environment.</p></li>
<li><p><strong>values</strong>– Values of the property to be set to. If <codeclass="docutils literal notranslate"><spanclass="pre">values</span></code> is a list or
tuple, then it corresponds to the values for each individual
environment, otherwise a single value is set for all environments.</p></li>
<li><p><strong>ValueError</strong>– Values must be a list or tuple with length equal to the number of environments.</p></li>
<li><p><strong>AlreadyPendingCallError</strong>– Calling <aclass="reference internal"href="#gymnasium.vector.AsyncVectorEnv.set_attr"title="gymnasium.vector.AsyncVectorEnv.set_attr"><codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">set_attr()</span></code></a> while waiting for a pending call to complete.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</dd></dl>
<sectionid="additional-methods">
<h2>Additional Methods<aclass="headerlink"href="#additional-methods"title="Link to this heading">¶</a></h2>
<emclass="property"><spanclass="pre">property</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">AsyncVectorEnv.</span></span><spanclass="sig-name descname"><spanclass="pre">np_random</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="pre">tuple</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">Generator</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="p"><spanclass="pre">...</span></span><spanclass="p"><spanclass="pre">]</span></span></em><aclass="headerlink"href="#gymnasium.vector.AsyncVectorEnv.np_random"title="Link to this definition">¶</a></dt>
<dd><p>Returns the tuple of the numpy random number generators for the wrapped envs.</p>
<emclass="property"><spanclass="pre">property</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">AsyncVectorEnv.</span></span><spanclass="sig-name descname"><spanclass="pre">np_random_seed</span></span><emclass="property"><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></em><aclass="headerlink"href="#gymnasium.vector.AsyncVectorEnv.np_random_seed"title="Link to this definition">¶</a></dt>
<dd><p>Returns a tuple of np_random seeds for all the wrapped envs.</p>