import tensorflow as tf

                        tf.summary.scalar('ent_coef', self.ent_coef)

                    tf.summary.scalar('learning_rate', tf.reduce_mean(self.learning_rate_ph))

                # Retrieve parameters that must be saved
                self.params = tf_util.get_trainable_vars("model")
                self.target_params = tf_util.get_trainable_vars("target/values_fn/vf")

                # Initialize Variables and target network
                with self.sess.as_default():
                    self.sess.run(tf.global_variables_initializer())
                    self.sess.run(target_init_op)

                self.summary = tf.summary.merge_all()

    def pretrain_sac(self,pretrain_steps):
        print("=====SAC Pretraining=====")
        for step in range(pretrain_steps):
            # Compute current learning_rate
            frac = 1.0 - step / pretrain_steps
            current_lr = self.learning_rate(frac)
            # Update policy and critics (q functions)
            policy_loss, qf1_loss, qf2_loss, value_loss,*entropy =self._train_step(step, writer=None,learning_rate=current_lr,pretrain=True)
            if step % 50==0:
                 print("** Pretraining step: |",step/pretrain_steps," Actor loss: |",policy_loss, "Critic loss|",value_loss," Actor expert loss|",entropy[-1] )
            # Update target network
