code: def __init__(self, config):
      super(ComaModel, self).__init__()
      self.n_actions = config["n_actions"]
      self.n_agents = config["n_agents"]
      self.state_shape = config["state_shape"]
      self.obs_shape = config["obs_shape"]
  
      actor_input_dim = self._get_actor_input_dim()
      critic_input_dim = self._get_critic_input_dim()
  
      self.actor_model = ActorModel(actor_input_dim, self.n_actions)
      self.critic_model = CriticModel(critic_input_dim, self.n_actions)
  
imports: import torch.nn
  import torch.nn.functional
  import numpy
  import parl
label_desc: Use image node_id 1 to create a new ComaModel object from inherited base classes: parl with example: obj = ComaModel(config)