Nonlinear Optimal Control
One of the basic problem classes which can be solved with ACADO toolkit are standard optimal control problems . These problems typically consist of a dynamic system with differential states and possibly also algebraic states, the objective can usually be written as a sum of a Lagrange and a Mayer term. Moreover, ACADO toolkit tackles several types of constraints, such as control and state bounds, terminal constraints, general nonlinear path constraints, periodic boundary conditions, etc.
Multi-Objective Optimal Control
As an extension, ACADO toolkit offers systematic and advanced tools for solving general optimal control problems with multiple and conflicting objectives . Pareto frontiers (or trade-off surfaces) can automatically and efficiently be generated by several scalarization approaches, which convert the original multi-objective optimal control problem into a series of parametric single objective optimal control problems. The available scalarization approaches involve the classic convex Weighted Sum as well as recent techniques as Normal Boundary Intersection and Normalized Normal Boundary Intersection. Typical algorithmic features include smart re-initialization strategies for computational speed-ups and post-processing tools as Pareto filter algorithms.
State and Parameter Estimation
An important class of optimal control problems, which obtains a special attention within ACADO toolkit, are state and parameter estimation problems. This subclass of optimal control problems can theoretically also be transformed into a standard nonlinear optimal control problem. However, state and parameter estimation problems have often a certain structure, which can be used by the algorithms. In ACADO Toolkit Gauss-Newton algorithms are implemented to deal with the least-squares terms, which typically occur within this class of optimization problems. Moreover, a-posteriori analysis tools are available such as a variance-covariance compuation for the estimated states and parameters.
Model Predictive Control
Another highlight of ACADO Toolkit are its model based feedback control algorithms. The corresponding problems can be divided into two kinds of online dynamic optimization problems: the Model Predictive Control (MPC) problem of finding (approximately) optimal control actions to be fed back to the controlled process , and the Moving Horizon Estimation (MHE) problem of estimating the current process states using measurements of its outputs.
Code Generation for Fast NMPC and MHE
The ACADO Code Generation tool can automatically generate Gauss-Newton real-time iteration algorithms for fast nonlinear MPC and MHE applications [4, 5]. Based on the symbolic syntax of the ACADO Toolkit, it allows the user to export highly efficient and self-contained C code that is tailored to each respective MPC or MHE problem formulations. Computational speed is increased by hard-coding all problem dimensions, avoiding dynamic memory allocations, loop unrolling, symbolic simplifications and the use of a fixed-step integrator. This can lead to significant speed-ups compared to generic implementations.
The first experimental validation of the Code Generation Tool on an overhead crane is described in .
Comparison between condensing based NMPC solver that employs qpOASES QP solver and an NMPC solver based on structure exploiting QP solver FORCES can be found in .
Please consult this page on how to cite the toolkit.