Opened 4 years ago
Closed 3 years ago
#48 closed user support (fixed)
Stuck with stepsize is 0 warning
Reported by: | tristanc | Owned by: | ferreau |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | C++ core | Version: | 3.2.0 |
Keywords: | Cc: |
Description
I am trying to solve a quadratic problem but each time I am facing the same warning :
WARNING: Stepsize is 0.000000000000000e+00
and then the following error occurs
ERROR: Premature homotopy termination because QP is infeasible
Any ideas would be very appreciated. thanks
Change History (3)
comment:1 Changed 4 years ago by ferreau
- Status changed from new to assigned
comment:2 Changed 4 years ago by tristanc
Many thanks for the feedbacks, I'll try yours suggestions and let you know if the QP problem will be feasible.
comment:3 Changed 3 years ago by ferreau
- Resolution set to fixed
- Status changed from assigned to closed
Note: See
TracTickets for help on using
tickets.
Getting a "zero stepsize" warning once in a while is typically not an issue at all. It just indicates that certain constraints exhibit some redundancy and qpOASES could not make progress along the homotopy path at the corresponding itertation while determining a suitable working set (of linearly independent active constraints).
If, in addition, QP solution fails with an error saying QP problem is infeasible, please try the following:
1) If possible, try to make sure that the QP problem you are solving is actually feasible.
2) If you are sure the QP problem you are solving is feasible, try relaxing the upper/lower limits on variables (bounds) and constraints just a little bit to make sure your QP is not simply found to be infeasible due to round-off errors.
3) Finally, make sure you construct and pass your constraint matrix A correctly. In particular, qpOASES expects all matrices in row-major format (C style) and passing them in FORTRAN-style often leads to an infeasible, but actually very different QP problem.
If all this does not help, please send your QP data (ideally including a main function/script to solve the QP using qpOASES) to the developers, such that we can have a detailled look at the problem.