class_docstr: Twin Delayed Deep Deterministic Policy Gradient algorithm trainer
  as described in https://arxiv.org/pdf/1802.09477
class_docstr_tok: ["Twin","Delayed","Deep","Deterministic","Policy","Gradient","algorithm","trainer","as","described","in","https",":","\/\/arxiv.org\/pdf\/1802.09477"]
code: def configure_optimizers(self):
      optimizers = []
  
      optimizers.append(
          self.q_network_optimizer.make_optimizer_scheduler(
              self.q1_network.parameters()
          )
      )
      if self.q2_network:
          optimizers.append(
              self.q_network_optimizer.make_optimizer_scheduler(
                  self.q2_network.parameters()
              )
          )
      optimizers.append(
          self.actor_network_optimizer.make_optimizer_scheduler(
              self.actor_network.parameters()
          )
      )
  
      # soft-update
      target_params = list(self.q1_network_target.parameters())
      source_params = list(self.q1_network.parameters())
      if self.q2_network:
          target_params += list(self.q2_network_target.parameters())
          source_params += list(self.q2_network.parameters())
      target_params += list(self.actor_network_target.parameters())
      source_params += list(self.actor_network.parameters())
      optimizers.append(
          SoftUpdate.make_optimizer_scheduler(
              target_params, source_params, tau=self.tau
          )
      )
  
      return optimizers
  
file_path: ReAgent/reagent/training/td3_trainer.py
imports: import copy
  import logging
  import reagent.core.types
  import torch
  import torch.nn.functional
  from reagent.core.configuration import resolve_defaults
  from reagent.core.dataclasses import field
  from reagent.core.parameters import CONTINUOUS_TRAINING_ACTION_RANGE, RLParameters
  from reagent.optimizer import Optimizer__Union, SoftUpdate
  from reagent.training.reagent_lightning_module import ReAgentLightningModule
  from reagent.training.rl_trainer_pytorch import RLTrainerMixin
label_desc: Use image node_id 2 for calling the TD3Trainer obj's underlying member method code with example usage: obj.configure_optimizers() and returns: optimizers