:py:mod:`rofunc.learning.RofuncRL.utils.skrl_utils`
===================================================

.. py:module:: rofunc.learning.RofuncRL.utils.skrl_utils

.. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils
   :allowtitles:

Module Contents
---------------

Classes
~~~~~~~

.. list-table::
   :class: autosummary longtable
   :align: left

   * - :py:obj:`Shared <rofunc.learning.RofuncRL.utils.skrl_utils.Shared>`
     -
   * - :py:obj:`StochasticActor <rofunc.learning.RofuncRL.utils.skrl_utils.StochasticActor>`
     -
   * - :py:obj:`DeterministicActor <rofunc.learning.RofuncRL.utils.skrl_utils.DeterministicActor>`
     -
   * - :py:obj:`Critic <rofunc.learning.RofuncRL.utils.skrl_utils.Critic>`
     -
   * - :py:obj:`Policy <rofunc.learning.RofuncRL.utils.skrl_utils.Policy>`
     -
   * - :py:obj:`Value <rofunc.learning.RofuncRL.utils.skrl_utils.Value>`
     -
   * - :py:obj:`PolicyAMP <rofunc.learning.RofuncRL.utils.skrl_utils.PolicyAMP>`
     -
   * - :py:obj:`ValueAMP <rofunc.learning.RofuncRL.utils.skrl_utils.ValueAMP>`
     -
   * - :py:obj:`Discriminator <rofunc.learning.RofuncRL.utils.skrl_utils.Discriminator>`
     -

Functions
~~~~~~~~~

.. list-table::
   :class: autosummary longtable
   :align: left

   * - :py:obj:`set_cfg_ppo <rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_ppo>`
     - .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_ppo
          :summary:
   * - :py:obj:`set_cfg_td3 <rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_td3>`
     - .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_td3
          :summary:
   * - :py:obj:`set_cfg_a2c <rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_a2c>`
     - .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_a2c
          :summary:
   * - :py:obj:`set_cfg_amp <rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_amp>`
     - .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_amp
          :summary:
   * - :py:obj:`set_cfg_sac <rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_sac>`
     - .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_sac
          :summary:
   * - :py:obj:`setup <rofunc.learning.RofuncRL.utils.skrl_utils.setup>`
     - .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.setup
          :summary:
   * - :py:obj:`setup_agent <rofunc.learning.RofuncRL.utils.skrl_utils.setup_agent>`
     - .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.setup_agent
          :summary:

API
~~~

.. py:class:: Shared(observation_space, action_space, device, clip_actions=False, clip_log_std=True, min_log_std=-20, max_log_std=2, reduction='sum')
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Shared

   Bases: :py:obj:`skrl.models.torch.GaussianMixin`, :py:obj:`skrl.models.torch.DeterministicMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: act(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Shared.act

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Shared.compute

.. py:class:: StochasticActor(observation_space, action_space, device, clip_actions=False, clip_log_std=True, min_log_std=-20, max_log_std=2)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.StochasticActor

   Bases: :py:obj:`skrl.models.torch.GaussianMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.StochasticActor.compute

   .. py:method:: suit(states)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.StochasticActor.suit

      .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.StochasticActor.suit

.. py:class:: DeterministicActor(observation_space, action_space, device, clip_actions=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.DeterministicActor

   Bases: :py:obj:`skrl.models.torch.DeterministicMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.DeterministicActor.compute

.. py:class:: Critic(observation_space, action_space, device, clip_actions=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Critic

   Bases: :py:obj:`skrl.models.torch.DeterministicMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Critic.compute

   .. py:method:: suit(states, actions)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Critic.suit

      .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.Critic.suit

.. py:class:: Policy(observation_space, action_space, device, clip_actions=False, clip_log_std=True, min_log_std=-20, max_log_std=2, reduction='sum')
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Policy

   Bases: :py:obj:`skrl.models.torch.GaussianMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Policy.compute

   .. py:method:: suit(states, actions=None)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Policy.suit

      .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.Policy.suit

.. py:class:: Value(observation_space, action_space, device, clip_actions=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Value

   Bases: :py:obj:`skrl.models.torch.DeterministicMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Value.compute

   .. py:method:: suit(states)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Value.suit

      .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.Value.suit

.. py:class:: PolicyAMP(observation_space, action_space, device, clip_actions=False, clip_log_std=True, min_log_std=-20, max_log_std=2)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.PolicyAMP

   Bases: :py:obj:`skrl.models.torch.GaussianMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.PolicyAMP.compute

   .. py:method:: suit(states, actions=None)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.PolicyAMP.suit

      .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.PolicyAMP.suit

.. py:class:: ValueAMP(observation_space, action_space, device, clip_actions=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.ValueAMP

   Bases: :py:obj:`skrl.models.torch.DeterministicMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.ValueAMP.compute

   .. py:method:: suit(states)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.ValueAMP.suit

      .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.ValueAMP.suit

.. py:class:: Discriminator(observation_space, action_space, device, clip_actions=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Discriminator

   Bases: :py:obj:`skrl.models.torch.DeterministicMixin`, :py:obj:`skrl.models.torch.Model`

   .. py:method:: compute(inputs, role)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Discriminator.compute

   .. py:method:: suit(states)
      :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.Discriminator.suit

      .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.Discriminator.suit

.. py:function:: set_cfg_ppo(cfg, env, device, eval_mode=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_ppo

   .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_ppo

.. py:function:: set_cfg_td3(cfg, env, device, eval_mode=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_td3

   .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_td3

.. py:function:: set_cfg_a2c(cfg, env, device, eval_mode=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_a2c

   .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_a2c

.. py:function:: set_cfg_amp(cfg, env, device, eval_mode=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_amp

   .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_amp

.. py:function:: set_cfg_sac(cfg, env, device, eval_mode=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_sac

   .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.set_cfg_sac

.. py:function:: setup(custom_args, eval_mode=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.setup

   .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.setup

.. py:function:: setup_agent(cfg, custom_args, env, eval_mode=False)
   :canonical: rofunc.learning.RofuncRL.utils.skrl_utils.setup_agent

   .. autodoc2-docstring:: rofunc.learning.RofuncRL.utils.skrl_utils.setup_agent
