Minimizing freejoint forces when using inverse dynamics #2123
Unanswered
jaraujo98
asked this question in
Asking for Help
Replies: 1 comment
-
Did you look at the LQR tutorial? |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I am using MuJoCo to track a humanoid trajectory using inverse dynamics (ID). Given the reference motion, I calculate the velocities and accelerations, and then use inverse dynamics to compute the
qfrc_applied
values at each time step. Visually, it all works great!However, I find that the ground contact forces and the force applied at the root (a freejoint) are a lot larger than what would be reasonable. I looked through the code for inverse dynamics expecting to find some form of optimization problem (such as a boxed QP whose cost I could modify), but instead it seems that the solution has a closed form. (Edit: I just read the documentation section that explains that it is indeed a closed-form solution, and explains how it is derived; however, the rest of my question about how to modify solver parameters to minimize freejoint forces still stands)
I noticed that the reference acceleration is part of the ID pipeline. Are there any parameters I can change (maybe
solimp
andsolref
?) to control the result of inverse dynamics? If not, or if it is not practical, would it be reasonable to implement ID myself using theminimize
package (decision variables would be freejoint force and torque, as well as the ground contact forces, and the objective would be to minimize both the residual of the dynamics equation and the freejoint forces, while allowing for arbitrary ground contact forces)?Thank you!
Beta Was this translation helpful? Give feedback.
All reactions