Error status 3: ACADOS_MINSTEP. Any configuration to alleviate it?

Hi :wave:

I am using python to generate C code for a contouring controller using HPIPM, and then use that C code in a C++ environment. However, sometimes I get this error:


which translates to ACADOS_MINSTEP error, if I am not mistaken.

Now, the question I have is: I am using SQP_RTI, why does it say that there are multiple iterations? I thought only one iteration was used. Also, is there any option that I can modify in the nlp solver to alleviate the occurrence of this error? Or is it inherently linked to the complexity of the cost function I am working with?



Hi Angel,

In RTI, a single QP is solved within every solver call.
However, the QP solver itself (here HPIPM) is also an iterative method.
Error status 3 in HPIPM corresponds to “NaN in solution detected”.

I am not really sure why this happens and don’t know your problem formulation.
Maybe regularizing the Hessian can help.


Hi again,

Thanks a lot! this solution does in fact solve my problem! The cost function is the one in this paper ([2108.13205] Model Predictive Contouring Control for Near-Time-Optimal Quadrotor Flight), Eq. (16).

For me to understand better, is the levenberg_marquardt term the lambda in this paper Eq. (12)? Is there any way to choose a good value?

Thanks again!



sorry for the late reply.

It is implemented here:

It works like in the paper you linked, but the factor is then multiplied with the time step length for the intermediate stages.