Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
Make MJVBD V2 the default Newton solver and adapt EmbodiChain's rigid-body/articulation interfaces, state lifecycle, and existing examples. MuJoCo owns articulations; VBD owns free rigid bodies. Cloth and soft bodies are outside this PR's scope.
This remains a draft integration, not a behavior-preserving replacement for existing manipulation control. The main blocker is missing contact reaction from VBD objects back to articulations, not simply unfinished demo tuning.
Control and contact compatibility
use_mujoco_contacts=False.get_qf()also does not expose actual PD actuator output in the existing Newton path. Querying a force would not itself apply it back to the robot.The concise integration issue record documents evidence, boundaries, and remaining issues. Asset-frame mismatches, initial penetration, and robot/table path conflicts also affected comparisons; not every task failure is caused by one-way coupling.
Implementation scope
Dependencies and reproducibility
The pushed DexSim compatibility base is
MJVBDV2commitf7d60c2a2b4ec9f2de7cd9d9abac973f74b0bfb8(MR !1345). It includes compact index mapping, state-ownership fixes, teleport/warmup history synchronization, reset, and same-name asset replacement.Later local results additionally depend on two uncommitted, unpushed DexSim code patches: enabling native MuJoCo contacts in mixed mode and correcting single-convex mesh import coordinates. They are installed locally but are not part of this GitHub PR or the pushed DexSim base. Checking out those two repositories at their published heads is insufficient to reproduce all later results. Dependency version pins are unchanged; no dependency package release is claimed.
The mixed dual-pipeline approach remains an experimental dependency, not a settled architecture. The local CoordinatedPlacement reduction from 20 to 5 substeps is awaiting full validation and is not included in this documentation update.
Validation
What the results establish
Checks
For this documentation update:
black .,python docs/scripts/check_api_docs.py, andgit diff --check. No runtime behavior is changed by this commit; previous physical experiments were not rerun for the prose rewrite.Earlier focused validation included 191 passing checks with 1 skip for configuration/context, 5 replacement tests, and 84 DexSim adapter/runtime/batch tests. The recent tutorial-helper check passed 105 existing tests; that working-tree check also included the local substep override, so it is not a runtime qualification of the committed PR. No new test cases or benchmark files were added at the requester's direction. Full local CI was not reproduced; remote CI determines its current status.
Type of change
Checklist
black ..