Fixed AttributeError in training_apg.ipynb for newer MJX versions #2971
+44
−30
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #2822
Problem
The notebook
mjx/training_apg.ipynbfails withAttributeError: 'State' object has no attribute 'pos'when using MuJoCo MJX 3.3.5+. The issue occurs because the MJXDataclass no longer exposes.xand.xdattributes directly.Solution
Added a helper function
_extract_x_xd()that extractsTransform(x) andMotion(xd) objects from MJX data using the underlying arrays (data.xpos,data.xquat,data.cvel) that are available in all MJX versions.Testing
mjx_to_brax()method