Replies: 5 comments
-
Thanks for posting this. It just looks like a bad shape in one your input arrays. To be on the same page, could you share a link to the examples you are drawing from? Also, please share your Isaac Lab and Isaac Sim versions. Thanks. |
Beta Was this translation helpful? Give feedback.
-
Isaac Lab (main: 9be0de5) Also, Please refer to this video: This is quite similar to an issue that i posted here: Hence, my guess is that the physics settings may be an issue here? |
Beta Was this translation helpful? Give feedback.
-
@RandomOakForest hi! any advise on this problem? |
Beta Was this translation helpful? Give feedback.
-
Thanks for following up. I'll move this post to our Discussions section for follow up. In the meantime, this is a dimensionality mismatch due to a likely incorrect handling of joint indices and action spaces between Isaac Lab training and Isaac Sim deployment. Here's a summary and possible next steps: Core IssueThe error
Critical Fixes Needed1. Articulation Alignment # In Isaac Sim deployment code:
self.robot._articulation_view.set_gains(
stiffness_targets,
damping_targets,
joint_indices=active_joint_indices # Must specify which joints to modify
)
2. Action Space Consistency # When applying actions:
action = ArticulationAction(
joint_positions=policy_output,
joint_indices=active_joint_indices # Explicitly specify controlled joints
)
self.robot.apply_action(action) 3. Physics Configuration
Recommended Debugging Steps
print(self.robot._articulation_view._metadata.joint_names)
print(self.robot._articulation_view._metadata.joint_indices)
assert policy_output.shape[0] == len(active_joint_indices)
This approach maintains consistency between training and deployment environments while properly handling joint indexing. The key is explicit specification of target joints in all articulation API calls rather than assuming default ordering231. References Footnotes
|
Beta Was this translation helpful? Give feedback.
-
@RandomOakForest Thanks for the detailed response.
which gives the following: However, with reference to your debugging step to use Using either of the above indices does not work. for
I have loaded the default g1.usd, and used the following code to extract the relevant joint observations:
Please let me know if this is not the right way to do this. I require the arms to be part of articulations for external control. For actions, I have implemented it as such:
This has no problem too. I used self.action.shape[0] == len(self.indices)
At this current stage, there are no errors on shape mismatches thus far. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Question
I have trained a G1 locomotion policy (1), with 13 action output by removing the ActuatorCfg in G1_CFG instead of the default 37 and modified the joints in ActionsCfg of velocity_env_cfg.py. This is to prevent the policy from controlling the arms as I need to control the arms for other purposes.
The training in Isaac Lab went well. Note that the observation size is still 37.
When attempting to deploy policy 1, i used the H1FlatTerrainPolicy in the Humanoid Examples as a template. Damping and Stiffness of all the joints were adjusted according to the env.yaml file. I printed self.robot.dof_names
Sample self.robot.dof_names & self.action:
I get this error message:
The G1 falls immediately upon playing it is observed to still respond to commands.
Sample self.robot.dof_names & self.action:
I assume this should be the order used in IsaacLab? Otherwise, where is the right place to check?
The error from (1) is gone but the outcome is the same.
I then attempted to train another policy (2) by using the g1_minimal.usd from isaac sim assets, and excluding the arms from articulation.
rsl_rl crashes midway during training regarding a torch.normal error requiring std>=0, and skrl fails to train, with NaN values in the rewards. The training doesnt work as the values can go up to inf
env.yaml:
Beta Was this translation helpful? Give feedback.
All reactions