def __init__(self, seed: int, brain: BrainParameters, trainer_params: Dict[(str, Any)], is_training: bool, load: bool):
    '\n        Policy for Proximal Policy Optimization Networks.\n        :param seed: Random seed.\n        :param brain: Assigned Brain object.\n        :param trainer_params: Defined training parameters.\n        :param is_training: Whether the model should be trained.\n        :param load: Whether a pre-trained model will be loaded or a new one created.\n        '
    super().__init__(seed, brain, trainer_params)
    reward_signal_configs = trainer_params['reward_signals']
    self.inference_dict: Dict[(str, tf.Tensor)] = {}
    self.update_dict: Dict[(str, tf.Tensor)] = {}
    self.stats_name_to_update_name = {'Losses/Value Loss': 'value_loss', 'Losses/Policy Loss': 'policy_loss'}
    self.create_model(brain, trainer_params, reward_signal_configs, is_training, load, seed)
    self.create_reward_signals(reward_signal_configs)
    with self.graph.as_default():
        self.bc_module: Optional[BCModule] = None
        if ('pretraining' in trainer_params):
            BCModule.check_config(trainer_params['pretraining'])
            self.bc_module = BCModule(self, policy_learning_rate=trainer_params['learning_rate'], default_batch_size=trainer_params['batch_size'], default_num_epoch=trainer_params['num_epoch'], **trainer_params['pretraining'])
    if load:
        self._load_graph()
    else:
        self._initialize_graph()
Policy for Proximal Policy Optimization Networks.
:param seed: Random seed.
:param brain: Assigned Brain object.
:param trainer_params: Defined training parameters.
:param is_training: Whether the model should be trained.
:param load: Whether a pre-trained model will be loaded or a new one created.
def __init__(self, seed: int, brain: BrainParameters, trainer_params: Dict[(str, Any)], is_training: bool, load: bool):
    '\n        Policy for Proximal Policy Optimization Networks.\n        :param seed: Random seed.\n        :param brain: Assigned Brain object.\n        :param trainer_params: Defined training parameters.\n        :param is_training: Whether the model should be trained.\n        :param load: Whether a pre-trained model will be loaded or a new one created.\n        '
    super().__init__(seed, brain, trainer_params)
    reward_signal_configs = trainer_params['reward_signals']
    self.inference_dict: Dict[(str, tf.Tensor)] = {}
    self.update_dict: Dict[(str, tf.Tensor)] = {}
    self.stats_name_to_update_name = {'Losses/Value Loss': 'value_loss', 'Losses/Policy Loss': 'policy_loss'}
    self.create_model(brain, trainer_params, reward_signal_configs, is_training, load, seed)
    self.create_reward_signals(reward_signal_configs)
    with self.graph.as_default():
        self.bc_module: Optional[BCModule] = None
        if ('pretraining' in trainer_params):
            BCModule.check_config(trainer_params['pretraining'])
            self.bc_module = BCModule(self, policy_learning_rate=trainer_params['learning_rate'], default_batch_size=trainer_params['batch_size'], default_num_epoch=trainer_params['num_epoch'], **trainer_params['pretraining'])
    if load:
        self._load_graph()
    else:
        self._initialize_graph()