Return to search

High performance implementation of MPC schemes for fast systems

In recent years, the number of applications of model predictive control (MPC) is rapidly
increasing due to the better control performance that it provides in comparison to
traditional control methods. However, the main limitation of MPC is the computational
e ort required for the online solution of an optimization problem. This shortcoming
restricts the use of MPC for real-time control of dynamic systems with high sampling
rates. This thesis aims to overcome this limitation by implementing high-performance
MPC solvers for real-time control of fast systems. Hence, one of the objectives of this
work is to take the advantage of the particular mathematical structures that MPC
schemes exhibit and use parallel computing to improve the computational e ciency.
Firstly, this thesis focuses on implementing e cient parallel solvers for linear MPC
(LMPC) problems, which are described by block-structured quadratic programming
(QP) problems. Speci cally, three parallel solvers are implemented: a primal-dual
interior-point method with Schur-complement decomposition, a quasi-Newton method
for solving the dual problem, and the operator splitting method based on the alternating
direction method of multipliers (ADMM). The implementation of all these solvers is
based on C++. The software package Eigen is used to implement the linear algebra
operations. The Open Message Passing Interface (Open MPI) library is used for the
communication between processors. Four case-studies are presented to demonstrate the
potential of the implementation. Hence, the implemented solvers have shown high
performance for tackling large-scale LMPC problems by providing the solutions in
computation times below milliseconds.
Secondly, the thesis addresses the solution of nonlinear MPC (NMPC) problems, which
are described by general optimal control problems (OCPs). More precisely,
implementations are done for the combined multiple-shooting and collocation (CMSC)
method using a parallelization scheme. The CMSC method transforms the OCP into a
nonlinear optimization problem (NLP) and de nes a set of underlying sub-problems for
computing the sensitivities and discretized state values within the NLP solver. These
underlying sub-problems are decoupled on the variables and thus, are solved in parallel.
For the implementation, the software package IPOPT is used to solve the resulting NLP
problems. The parallel solution of the sub-problems is performed based on MPI and
Eigen. The computational performance of the parallel CMSC solver is tested using case
studies for both OCPs and NMPC showing very promising results.
Finally, applications to autonomous navigation for the SUMMIT robot are presented.
Specially, reference tracking and obstacle avoidance problems are addressed using an
NMPC approach. Both simulation and experimental results are presented and compared
to a previous work on the SUMMIT, showing a much better computational e ciency
and control performance. / Tesis

Identiferoai:union.ndltd.org:PUCP/oai:tesis.pucp.edu.pe:20.500.12404/7011
Date22 June 2016
CreatorsCorrea Córdova, Max Leo
ContributorsW. Selassie, Abebe Geletu, Morán Cárdenas, Antonio Manuel
PublisherPontificia Universidad Católica del Perú, PE
Source SetsPontificia Universidad Católica del Perú
LanguageEnglish
Detected LanguageEnglish
Typeinfo:eu-repo/semantics/masterThesis
Formatapplication/pdf
RightsAtribución-NoComercial-SinDerivadas 2.5 Perú, info:eu-repo/semantics/openAccess, http://creativecommons.org/licenses/by-nc-nd/2.5/pe/

Page generated in 0.0019 seconds