ocs2 icon indicating copy to clipboard operation
ocs2 copied to clipboard

Hard inequality constraints for SQP solver

Open adamheins opened this issue 2 years ago • 1 comments

Is your feature request related to a problem? Please describe. I would like to use hard inequality constraints with the SQP solver (based on HPIPM), rather than just soft constraints (via penalty functions). I would expect hard inequality constraints to be supported by SQP, but after trying to add them, and then digging a bit in the ocs2_sqp package code, it doesn't appear that they are currently supported.

Describe the solution you'd like Assuming I'm correct that hard inequality constraints are not currently implemented for the SQP solver (happy to be corrected here!), then my preferred solution is for support for them to be added. I would potentially be interested in working on this myself if others see a need for it, too.

Describe alternatives you've considered Of course, one could just use soft constraints via penalty functions like for DDP-based approaches, but having the alternative of hard inequality constraints is a nice point of comparison for controller behaviour.

adamheins avatar Jan 06 '22 15:01 adamheins

You are correct, hard inequality constraints are currently not there and would be nice to have. It would also not be too hard to do for the SQP solver because HPIPM already supports this on the QP side.

The main challenge would be to come up with a good interface for specifying box constraints / general constraints and the potential to slack them (as HPIPM does for the linear case).

There is nobody working on this from our side, so your contribution would be welcome.

rubengrandia avatar Jan 21 '22 14:01 rubengrandia