rofunc.learning.RofuncRL.agents.base_agent#
1. Module Contents#
1.1. Classes#
Base class of Rofunc RL Agents. |
1.2. API#
- class rofunc.learning.RofuncRL.agents.base_agent.BaseAgent(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)#
Base class of Rofunc RL Agents.
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
- rofunc_logger = None#
Checkpoint
- checkpoint_best_modules = None#
Logging
- tracking_data = None#
Set up
- abstract act(states: torch.Tensor)#
- track_data(tag: str, value: float) None#
- store_transition(states: torch.Tensor, actions: torch.Tensor, next_states: torch.Tensor, rewards: torch.Tensor, terminated: torch.Tensor, truncated: torch.Tensor, infos: torch.Tensor)#
Record the transition. (Only rewards, truncated and terminated are used in this base class)
- abstract update_net()#
Update the agent model parameters.
- save_ckpt(path: str)#
Save the agent model parameters to a checkpoint. :param path: :return:
- load_ckpt(path: str)#
Load the agent model parameters from a checkpoint. :param path: :return:
- multi_gpu_transfer(*args)#
Transfer the tensor data obtained from sim_device to rl_device.
- Parameters:
args – Tensor data in different device to be transferred