RobotLocomotion / drake

Model-based design and verification for robotics.
https://drake.mit.edu
Other
3.32k stars 1.26k forks source link

Compute the kinematics chain for MultibodyPlant #11944

Open hongkai-dai opened 5 years ago

hongkai-dai commented 5 years ago

It would be great if we have a function in MBP, to return all the joints on the kinematics chains from one link to another link. This function is useful for imposing the sparsity structure in Jacobian matrix computation.

hongkai-dai commented 4 months ago

Is it OK if we can support this functionality? We found that the solver performance can benefit greatly from constraint sparsity (see https://github.com/RobotLocomotion/drake/pull/21492#pullrequestreview-2086168608 with a factor of 6 improvement). Very often in inverse kinematics, the constraint only depend on a partial set of the joints.

sherm1 commented 4 months ago

FYI this is easily supported in the new MbP topology code. Let me see if I understand the request:

Is that correct? The MbP topology code already has an API for finding A but doesn't currently return the paths.