Tuesday, May 10, 2016, 11:00
Room 01-012, Georges-Köhler-Allee 102, Freiburg 79110, Germany
ACADO is a popular code-generation tool for solving MPC problems. It offers the user a choice of integrator and QP-solver to be used, as well as a range of other options. However, lack of extensibility and of control over the code are main drawbacks of ACADO.
I present a sketch of a C++ class library which implements a modular and extensible architecture for MPC. The components of this architecture have well-defined interfaces, for which different implementations can be easily substituted without affecting the rest of the system. To ensure maximum run-time performance, static polymorphism is heavily used, which means delegating the "code-generation" to the C++ compiler.