FAQ

A few frequently asked questions are answered here.

For further questions, we refer to the acados forum

What is the difference between acados and ACADO?

ACADO was heavily based on code-generation, in acados code-generation is used only for problem function derivatives.

In order to maximize performance acados is using BLASFEO, a basic linear algebra implementation with hand-optimized kernels for different CPU architectures.

What is the difference between acados and CasADi?

Completely different.

CasADi is typically used by acados as a front-end to state nonlinear problem functions needed formulate Optimal Control Problems (OCP) and Moving Horizon Estimation problems (MHE).

acados implements SQP type methods for OCP structured optimization problems. In contrast to this, CasADi has a general NLP formulation (i.e. without OCP structure) and has a larger variety of solvers available (IPOPT, SQP, …). Especially, the availability of IPOPT (an interior point method for NLPs) is great for prototyping, which converges easier compared to an SQP method.

acados implements SQP type solvers tailored to OCP structured NLPs, which aim to solve those problems very fast. The solution time of acados for typical MPC problems is expected to be orders of magnitude faster compared to using IPOPT in CasADi.