rofunc.learning.RofuncRL.agents.online.sac_agent#

1.  Module Contents#

1.1.  Classes#

SACAgent

Soft Actor-Critic (SAC) agent

1.2.  API#

class rofunc.learning.RofuncRL.agents.online.sac_agent.SACAgent(cfg: omegaconf.DictConfig, observation_space: Optional[Union[int, Tuple[int], gym.Space, gymnasium.Space]], action_space: Optional[Union[int, Tuple[int], gym.Space, gymnasium.Space]], memory: Optional[Union[rofunc.learning.RofuncRL.utils.memory.Memory, Tuple[rofunc.learning.RofuncRL.utils.memory.Memory]]] = None, device: Optional[Union[str, torch.device]] = None, experiment_dir: Optional[str] = None, rofunc_logger: Optional[rofunc.logger.BeautyLogger] = None)#

Bases: rofunc.learning.RofuncRL.agents.base_agent.BaseAgent

Soft Actor-Critic (SAC) agent

“Soft Actor-Critic Algorithms and Applications”. Haarnoja et al. 2018. https://arxiv.org/abs/1812.05905

Rofunc documentation: https://rofunc.readthedocs.io/en/latest/lfd/RofuncRL/SAC.html

Initialization

Parameters:
  • cfg – Configurations

  • observation_space – Observation space

  • action_space – Action space

  • memory – Memory for storing transitions

  • device – Device on which the torch tensor is allocated

  • experiment_dir – Directory for storing experiment data

  • rofunc_logger – Rofunc logger

act(states: torch.Tensor, deterministic: bool = False)#
store_transition(states: torch.Tensor, actions: torch.Tensor, next_states: torch.Tensor, rewards: torch.Tensor, terminated: torch.Tensor, truncated: torch.Tensor, infos: torch.Tensor)#
update_net()#

Update the network :return: