-
Notifications
You must be signed in to change notification settings - Fork 74
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve computation time of HQP solver #2
Comments
In the last commit 8788221 I added two improved versions of eiquadprog, neither of which allocates dynamic memory during resolution (verified using Eigen function |
Thiese are the results I got solving random QP on HRP-2's computer (but in a non-real-time thread). More or less we gained 15% of the computation time. The real-time solver is only slightly faster than the "fast" solver. The size of the problems has been chosen to match the size of the QP we typically have to solve in our inverse-dynamics balance controller.
|
FYI: I also tried to warm start the algorithm (see macro |
I've just discovered a new open-source QP solver, which is supposed to be faster than eiquadprog, so we may give it a try by integrating it inside TSID. Anybody feels like doing it? |
Since this issue has been inactive for a while now I think we can close it. |
Currently the only QP solver implemented is eiquadprog, which is already rather efficient, but there's room for improvement. In particular, the current version of the solver allocates dynamic memory at each call to the solver, so it should be easy to decrease computation time by pre-allocating all the necessary memory in an initialization phase.
The text was updated successfully, but these errors were encountered: