If you run the local evaluation with extrinsic_timesteps less than intrinsic_timesteps, you will see that the intrinsic phase stops exactly after the extrinsic_timesteps.
i.e. when using:
result = real_robots.evaluate(
RandomPolicy,
intrinsic_timesteps=5000,
extrinsic_timesteps=100,
extrinsic_trials=12,
visualize=False,
goals_dataset_path="./goals.npy.npz",
)
intrinsic will stop after 100 timesteps.
This is actually due to set_goals_dataset_path.
The line:
self.goal_idx = 0
should be removed there, otherwise the environment thinks the extrinsic phase is running.
(goal_idx must be -1 while intrinsic phase is running).
Can't do a pull request at the moment, I will leave the issue here meanwhile.
If you run the local evaluation with extrinsic_timesteps less than intrinsic_timesteps, you will see that the intrinsic phase stops exactly after the extrinsic_timesteps.
i.e. when using: result = real_robots.evaluate( RandomPolicy, intrinsic_timesteps=5000, extrinsic_timesteps=100, extrinsic_trials=12, visualize=False, goals_dataset_path="./goals.npy.npz", ) intrinsic will stop after 100 timesteps.
This is actually due to set_goals_dataset_path. The line: self.goal_idx = 0 should be removed there, otherwise the environment thinks the extrinsic phase is running. (goal_idx must be -1 while intrinsic phase is running).
Can't do a pull request at the moment, I will leave the issue here meanwhile.