You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Actually piqp manages inequality constraints of the form $Gx \leq h$.
If real problem requires both lower and upper constraints, say $k \leq \tilde{G}x \leq h$, then $G$ matrix used in the standard formulation doubles, $G = [\tilde{G} ; -\tilde{G}]$, and KKT matrix becomes larger.
Following the trick described in Marcel Jacobse, Christof Buskens - REVISITING DESIGN ASPECTS OF A QP SOLVER FOR WORHP, $\tilde{G}$ matrix can be directly used and better performances could be reached (at least in terms of time spent factoring the KKT matrix).
Do you think this is a possible improvement?
The text was updated successfully, but these errors were encountered:
Thanks for the resource, very interesting read. I think, what they describe in the paper should be possible to implement, but requires a bit of remodeling of the solvers internals. I'm currently working on other optimizations (special KKT solver for OCP type structures with auto-detection, and warm-starting). But afterward, I will revisit this issue and see what I can do. This could be indeed very interesting in the context of SQP as described in the WHORP paper. It would also make the API more similar to IPOPT.
For now, I keep the issue open for future reference :)
Actually piqp manages inequality constraints of the form$Gx \leq h$ .$k \leq \tilde{G}x \leq h$ , then $G$ matrix used in the standard formulation doubles, $G = [\tilde{G} ; -\tilde{G}]$ , and KKT matrix becomes larger.$\tilde{G}$ matrix can be directly used and better performances could be reached (at least in terms of time spent factoring the KKT matrix).
If real problem requires both lower and upper constraints, say
Following the trick described in Marcel Jacobse, Christof Buskens - REVISITING DESIGN ASPECTS OF A QP SOLVER FOR WORHP,
Do you think this is a possible improvement?
The text was updated successfully, but these errors were encountered: