def test_baseline(self): """Test the baseline initialization.""" box_env = GarageEnv(DummyBoxEnv()) deterministic_mlp_baseline = ContinuousMLPBaseline(env_spec=box_env) gaussian_mlp_baseline = GaussianMLPBaseline(env_spec=box_env) self.sess.run(tf.compat.v1.global_variables_initializer()) deterministic_mlp_baseline.get_param_values() gaussian_mlp_baseline.get_param_values() box_env.close()
def test_param_values(self): box_env_spec = GarageEnv(DummyBoxEnv(obs_dim=(2, ))).spec gmb = GaussianMLPBaseline(env_spec=box_env_spec) new_gmb = GaussianMLPBaseline(env_spec=box_env_spec, name='GaussianMLPBaseline2') # Manual change the parameter of GaussianMLPBaseline with tf.compat.v1.variable_scope('GaussianMLPBaseline', reuse=True): bias = tf.compat.v1.get_variable( 'dist_params/mean_network/hidden_0/bias') bias.load(tf.ones_like(bias).eval()) old_param_values = gmb.get_param_values() new_param_values = new_gmb.get_param_values() assert not np.array_equal(old_param_values, new_param_values) new_gmb.set_param_values(old_param_values) new_param_values = new_gmb.get_param_values() assert np.array_equal(old_param_values, new_param_values)
def test_baseline(self): """Test the baseline initialization.""" box_env = TfEnv(DummyBoxEnv()) deterministic_mlp_baseline = DeterministicMLPBaseline(env_spec=box_env) gaussian_mlp_baseline = GaussianMLPBaseline(env_spec=box_env) discrete_env = TfEnv(Resize(DummyDiscrete2DEnv(), width=64, height=64)) gaussian_conv_baseline = GaussianConvBaseline( env_spec=discrete_env, regressor_args=dict( conv_filters=[32, 32], conv_filter_sizes=[1, 1], conv_strides=[1, 1], conv_pads=["VALID", "VALID"], hidden_sizes=(32, 32))) self.sess.run(tf.global_variables_initializer()) deterministic_mlp_baseline.get_param_values(trainable=True) gaussian_mlp_baseline.get_param_values(trainable=True) gaussian_conv_baseline.get_param_values(trainable=True)
def test_param_values(self, obs_dim): box_env = TfEnv(DummyBoxEnv(obs_dim=obs_dim)) with mock.patch(('garage.tf.baselines.' 'gaussian_mlp_baseline.' 'GaussianMLPRegressor'), new=SimpleGaussianMLPRegressor): gmb = GaussianMLPBaseline(env_spec=box_env.spec) new_gmb = GaussianMLPBaseline(env_spec=box_env.spec, name='GaussianMLPBaseline2') # Manual change the parameter of GaussianMLPBaseline with tf.compat.v1.variable_scope('GaussianMLPBaseline', reuse=True): return_var = tf.compat.v1.get_variable( 'SimpleGaussianMLPModel/return_var') return_var.load(1.0) old_param_values = gmb.get_param_values() new_param_values = new_gmb.get_param_values() assert not np.array_equal(old_param_values, new_param_values) new_gmb.set_param_values(old_param_values) new_param_values = new_gmb.get_param_values() assert np.array_equal(old_param_values, new_param_values)