-
Notifications
You must be signed in to change notification settings - Fork 46
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
Segmentation fault on HUESTIS problem #62
Comments
@stephane-caron Thanks for reporting this issue. |
@Bambade Did you try HUESTIS problem? |
My first hint is that the problem is too significant in memory if you use the back-end dense. Antoine only checked for problems of size <= 1000 if I remember well. @Bambade Could you confirm? |
@stephane-caron thanks for reporting this issue. |
Sure. This archive HUESTIS.zip decompresses to import proxsuite
import scipy.io as spio
m = spio.loadmat("HUESTIS.mat", squeeze_me=True)
P = m["P"].astype(float).tocsc()
q = m["q"].astype(float)
A = m["A"].astype(float).tocsc()
b = m["b"].astype(float)
C = m["C"].astype(float).tocsc()
l = m["l"].astype(float)
u = m["u"].astype(float)
proxsuite.proxqp.sparse.solve(P, q, A, b, C, l, u) |
Super. Very nice. Thanks @stephane-caron for the quick example. |
Hello @stephane-caron , thanks for your example. Good news, after #73, the output for your problem is
|
Solved by #73. |
Just chiming in to report that this issue was affecting some 30 problems in the Maros-Meszaros test set. With all of them gone, the success rate of ProxQP for sparse problems has bumped from 72% to 85% (with default settings). Good job! 🚀 (Diff of the update: qpsolvers/qpbenchmark@89859f8.) |
This is a nice report that you've done @stephane-caron |
While reproducing the Maros-Meszaros test set in qpsolvers_benchmark, I ran into a segmentation fault with ProxQP 0.2.2 on the HUESTIS problem.
Reproduction steps
Clone qpsolvers_benchmark, then un:
$ python run_benchmark.py --problem HUESTIS --solver proxqp
Outcome on my machine:
Details
The
.mat
files are the ones from proxqp_benchmark.They are separated into constraint$l \leq C x \leq u$ and box $lb \leq x \leq ub$ inequalities in $l \leq C x \leq u$ by qpsolvers in
from_mat_file
, then extract equality constraints infrom_double_sided_ineq
. Those will be finally converted back to ProxQP formatproxqp_combine_inequalities
. There may be something wrong in these back-and-forth conversions, but at any rate, it results in a reproducible segfault for ProxQP.I haven't checked whether HUESTIS is solved fine in proxqp_benchmark (can do, just some extra work to get the benchmark working without Mosek or qpOASES installed).
The text was updated successfully, but these errors were encountered: