class_docstr: Synchronization optimizer, which updates variables periodically to the value of a corresponding
  set of source variables (specification key: `synchronization`).
  
  Args:
      optimizer (specification): Optimizer configuration
          (<span style="color:#C00000"><b>required</b></span>).
      update_weight (parameter, 0.0 < float <= 1.0): Update weight
          (<span style="color:#C00000"><b>required</b></span>).
      sync_frequency (parameter, int >= 1): Interval between updates which also perform a
          synchronization step (<span style="color:#00C000"><b>default</b></span>: every update).
      name (string): (<span style="color:#0000C0"><b>internal use</b></span>).
      arguments_spec (specification): <span style="color:#0000C0"><b>internal use</b></span>.
code: def initialize(self):
      super().initialize()
  
      if not self.sync_frequency.is_constant(value=1):
          self.next_sync = self.variable(
              name="next-sync",
              spec=TensorSpec(type="int"),
              initializer="zeros",
              is_trainable=False,
              is_saved=True,
          )
  
imports: import tensorflow
  from tensorforce.core import parameter_modules, TensorSpec, tf_function, tf_util
  from tensorforce.core.optimizers import Optimizer
label_desc: Use image node_id 2 for calling the Synchronization obj's underlying member method code with example usage: obj.initialize() without return types