Closed hongkai-dai closed 1 year ago
Hi @hongkai-dai . Yes, SCS expects there to be an A matrix, although we could remove that it would probably require a fair amount of work. My suggestion would be to handle unconstrained cases directly in the wrapper, since it should be relatively straightforward (assuming the linear system can be solved) and much faster/more accurate than an iterative method like SCS.
Thanks a lot @bodono , I will handle the unconstrained case in a separate routine in our wrapper.
Specifications
Problem description
When I have an un-constrained quadratic problem, my
A
matrix has zero rows. Thenscs_validate
function will throw this error https://github.com/cvxgrp/scs/blob/186b67cbff0272c3cd6a1c37180cc428179e9ab1/src/scs.c#L711-L715I can think of these possible workaround
P * x = -c
, so I don't have to invoke SCS.0 * x = 0
inAx+s = b
.I am writing a wrapper in Drake that can call SCS. Ideally I would like to call SCS for whatever convex optimization problem using the same API, so workaround 1 above isn't an ideal solution. Would you suggest a better solution? Is it OK that SCS can natively support un-constrained QP? Thanks a lot!