coin-or / qpOASES

Open-source C++ implementation of the recently proposed online active set strategy
GNU Lesser General Public License v2.1
365 stars 127 forks source link

Is qpOASES_e limited to solving small-scale QP problems? #47

Closed svigerske closed 4 years ago

svigerske commented 4 years ago

Issue created by migration from Trac.

Original creator: ferreau

Original creation time: 2016-04-05 12:20:54

Assignee: ferreau

Version: 3.1.1

In my MPC application, qpOASES_e works just fine up until it has 49 variables and 68 constraints but for larger problems it fails to work. The status code of the initialisation routine says it is infeasible (error code 37) but when running a Matlab implementation with other solvers it works just fine.

Is there a known issue with larger problems in the C version? E.g. with more than 50 variables? Or should I suspect some other problems?

svigerske commented 4 years ago

Comment by ferreau created at 2016-04-05 12:22:38

As qpOASES_e makes use of static memory only, there are maximum QP dimensions hard-coded in the header files. By default, these limits are set to 50 variables and 100 constraints.

If you want to solve larger QP problems, please adjust the variables QPOASES_NVMAX and QPOASES_NCMAX in the file include/qpOASES_e/Constants.h (lines 60/61) and re-compile your code.

svigerske commented 4 years ago

Comment by ferreau created at 2016-04-05 12:22:38

Resolution: fixed