code: def __init__(
      self, model, gamma=None, tau=None, actor_lr=None, critic_lr=None
  ):
      # checks
      check_model_method(model, "value", self.__class__.__name__)
      check_model_method(model, "policy", self.__class__.__name__)
      check_model_method(
          model, "get_actor_params", self.__class__.__name__
      )
      check_model_method(
          model, "get_critic_params", self.__class__.__name__
      )
      assert isinstance(gamma, float)
      assert isinstance(tau, float)
      assert isinstance(actor_lr, float)
      assert isinstance(critic_lr, float)
  
      self.gamma = gamma
      self.tau = tau
      self.actor_lr = actor_lr
      self.critic_lr = critic_lr
  
      device = torch.device(
          "cuda" if torch.cuda.is_available() else "cpu"
      )
      self.model = model.to(device)
      self.target_model = deepcopy(self.model)
      self.actor_optimizer = torch.optim.Adam(
          self.model.get_actor_params(), lr=actor_lr
      )
      self.critic_optimizer = torch.optim.Adam(
          self.model.get_critic_params(), lr=critic_lr
      )
  
file_path: PARL/parl/algorithms/torch/ddpg.py
imports: import torch
  import torch.nn.functional
  from copy import deepcopy
  import parl
  from parl.utils.utils import check_model_method
label_desc: Use image node_id 1 to create a new DDPG object from inherited base classes: parl with example: obj = DDPG(model, gamma, tau, actor_lr, critic_lr)