Source code for maenvs4vrp.core.env_observation_builder
fromtypingimportOptional,Dict,List
[docs]classObservationBuilder:"""Observations base class. """POSSIBLE_NODES_STATIC_FEATURES:List[str]=[]POSSIBLE_NODES_DYNAMIC_FEATURES:List[str]=[]POSSIBLE_AGENT_FEATURES:List[str]=[]POSSIBLE_OTHER_AGENTS_FEATURES:List[str]=[]POSSIBLE_GLOBAL_FEATURES:List[str]=[]def__init__(self,feature_list:Dict=None):""" Constructor Args: feature_list(Dict): Dictionary containing observation features list to be available to the agent. Defaults to None. """self.env=Noneself.default_feature_list:Dict={}self.possible_nodes_static_features=self.POSSIBLE_NODES_STATIC_FEATURESself.possible_nodes_dynamic_features=self.POSSIBLE_NODES_DYNAMIC_FEATURESself.possible_agent_features=self.POSSIBLE_AGENT_FEATURESself.possible_agents_features=self.POSSIBLE_OTHER_AGENTS_FEATURESself.possible_global_features=self.POSSIBLE_GLOBAL_FEATURESdefset_env(self,env):""" Set environment. Args: env(AECEnv): Environment. Returns: None. """self.env=envdefget_static_feat_dim(self):""" Get nodes static features dimensions. Args: n/a. Returns: int: Nodes static features dimensions. """raiseNotImplementedError()defget_dynamic_feat_dim(self):""" Get nodes dynamic features dimensions. Args: n/a. Returns: int: Nodes dynamic features dimensions. """raiseNotImplementedError()defget_nodes_feat_dim(self):""" Get nodes features dimensions. Args: n/a. Returns: int: Nodes features dimensions. """raiseNotImplementedError()defget_agent_feat_dim(self):""" Get agent features dimensions. Args: n/a. Returns: int: Agent features dimensions. """raiseNotImplementedError()defget_other_agents_feat_dim(self):""" Get other agent features dimensions. Args: n/a. Returns: int: Other agent features dimensions. """raiseNotImplementedError()defget_global_feat_dim(self):""" Get global features dimensions. Args: n/a. Returns: int: Global features dimensions. """raiseNotImplementedError()defcompute_static_features(self):""" Get nodes static features. Args: n/a. Returns: torch.Tensor: Nodes static features. """raiseNotImplementedError()defcompute_dynamic_features(self):""" Get nodes dynamic features. Args: n/a. Returns: torch.Tensor: Nodes dynamic features. """raiseNotImplementedError()defcompute_agent_features(self):""" Get current agent features. Args: n/a. Returns: torch.Tensor: Current agent features. """raiseNotImplementedError()defcompute_agents_features(self):""" Get other agent features. Args: n/a. Returns: torch.Tensor: Other agent features. """raiseNotImplementedError()defcompute_global_features(self):""" Get global features. Args: n/a. Returns: torch.Tensor: Global features. """raiseNotImplementedError()defget_observations(self):""" Compute the environment. Args: n/a. Returns observations(TensorDict): Current environment observations and masks dictionary. """raiseNotImplementedError()