[Bug Report] Unitree Go2 Training Script Error on Rough Env #2868
Replies: 4 comments
-
Thank you for posting this. Could you please add a title by replacing "Bug title" in this topic after [Bug Report] in the headline? Thanks. |
Beta Was this translation helpful? Give feedback.
-
I fix this bug by modify the actor_critic.py in rsl_rl. I use softplus [ = log(1 + exp(x)) ] to force std>0. def update_distribution(self, observations):
# compute mean
mean = self.actor(observations)
# compute standard deviation
if self.noise_std_type == "scalar":
current_std_val = nn.functional.softplus(self.std)
std = current_std_val.expand_as(mean)
elif self.noise_std_type == "log":
std = torch.exp(self.log_std).expand_as(mean)
else:
raise ValueError(f"Unknown standard deviation type: {self.noise_std_type}. Should be 'scalar' or 'log'")
# create distribution
self.distribution = Normal(mean, std) |
Beta Was this translation helpful? Give feedback.
-
I had the same issue and switched to log mode |
Beta Was this translation helpful? Give feedback.
-
Actually even with using log mode I still get the same error that std becomes negative. Maybe it just becomes too small. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Describe the bug
I'm experiencing some training instabilities when training the default Rough locomotion policy for the Unitree Go2. Instead of Nan values mentioned in #1999. However, this time the error is saying that the values of the std parameter in the sampling should be non-negative.
Steps to reproduce
Run the following bash script from the IsaacLab root folder:
Terminal Logs for Error:
-->
System Info
Describe the characteristic of your environment:
Additional context
Add any other context about the problem here.
Checklist
Acceptance Criteria
Beta Was this translation helpful? Give feedback.
All reactions