Top Banner
19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction 2. Current Status of qpOASES 3. Future Developments Mar 19, 2014 | Slide 2 © ABB Group
11

Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

Aug 13, 2019

Download

Documents

vodat
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

1

qpOASESPast, Present, Future

Hans Joachim Ferreau, ABB Corporate Research, Switzerland

Outline

1. Introduction

2. Current Status of qpOASES

3. Future Developments

Mar 19, 2014 | Slide 2© ABB Group

Page 2: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

2

Outline

1. Introduction

2. Current Status of qpOASES

3. Future Developments

Mar 19, 2014 | Slide 3© ABB Group

Motivation

§ At each sampling instant, the following specially structuredQP problem needs to solved:

Fast QP Solution for Model Predictive Control

Mar 19, 2014 | Slide 4© ABB Group

Page 3: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

3

Linear MPC in a NutshellWhat makes it difficult?

Mar 19, 2014

§ Linear MPC algorithms need to solve QP optimizationproblems in real-time

§ A main advantage of MPC is the ability to handle inequalityconstraints on inputs and outputs

§ The main difficulty in solving QPs are… inequality constraints

(difficult means: solution takes more time)

min +

. . ≤ ≤

| Slide 5© ABB Group

Linear MPC in a NutshellMind the inequalities

Mar 19, 2014

§ unconstrained QP

§ QP with simple constraints

§ QP with general constraints

min +

min +

. . ≤ ≤

min +

. . ≤ ≤

| Slide 6© ABB Group

Page 4: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

4

Linear MPC in a NutshellQP algorithms (to handle inequality constraints)

Mar 19, 2014

§ First-order methods:§ compute step towards solution of unconstrained QP§ project to feasible set (difficult for general constraints)

§ Active-set methods:§ guess which inequalities hold with equality at solution§ solve resulting equality-constrained QP (trivial)§ check if guess was correct, update guess if not

§ Interior-point methods:§ remove inequalities, but penalize constraint violations in

objective function (non-quadratic term, e.g. logarithmic)§ solve resulting (equality-constrained) NLP with Newton’s method

§ Explicit methods and others

| Slide 7© ABB Group

Linear MPC AlgorithmsWhy is there a whole zoo of them?

Mar 19, 2014

§ Tailored to different problem classes

§ Different numerical properties

§ Amount of sorce code

§ Suitability for parallelization

§ Suitability for FPGA implementations

First-order gradient method, primal FGM, dual FGM, GPAD, FiOrdOs

Active-set quadprog (primal), QLD (dual), qpOASES (parametric)

Interior-point primal barrier, CVXGEN (primal-dual), FORCES (primal-dual)

Others Brand’s algorithm, qpDUNES (Newton-type), ADMM,MPT (explicit methods)

| Slide 8© ABB Group

Page 5: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

5

The Online Active Set Strategy

§ Main Idea1:Introduce homotopy path from solution of current QP(x0) tothat of QP(x0

new) and identify corresponding active set

§ Advantages:

§ Reduced number of iterations by exploitingparametric nature of MPC problem

§ Hot-starts with full solution information of previous QP

§ Re-use of matrix factorizations

§ Allows for a real-time variant in case solutionprocedure has to stop prematurely

Main Idea and Advantages

Mar 19, 2014

1 Ferreau, Bock, Diehl. An online active set strategy to overcome the limitations of explicitMPC. International Journal of Robust and Nonlinear Control, 18 (8), pp. 816-830, 2008.

| Slide 9© ABB Group

Outline

1. Introduction

2. Current Status of qpOASES

3. Future Developments

Mar 19, 2014 | Slide 10© ABB Group

Page 6: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

6

qpOASES

§ qpOASES is an object-oriented C++ implementation ofthe online active set strategy with dense linear algebra2

§ Reliable and efficient code for solving small- to medium-scale, dense QPs

§ Self-contained code: no additional software packagesrequired (but BLAS/LAPACK can be linked)

§ Distributed as open-source software under theGNU LGPL (see www.qpOASES.org)

An Online QP Solver

Mar 19, 2014

2 Ferreau, Kirches, Potschka, Bock, Diehl. qpOASES: A parametric active-set algorithm forquadratic programming. Mathematical Programming Computation, 2014 (to appear).

| Slide 11© ABB Group

qpOASES

§ Interfaced to several third-party software packages:

§ Matlab, Octave, Scilab

§ Simulink (dSPACE, xPC Target)

§ YALMIP, ACADO Toolkit, CasADi

§ Python

Interfaces

Mar 19, 2014 | Slide 12© ABB Group

Page 7: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

7

qpOASES

§ MPC of a Diesel engine testbenchat University of Linz, Austria(on dSPACE, 50 ms sampling time)

§ MPC of beam tip vibrations at SlovakUniversity of Technology, Bratislava(on xPC target, 10 ms sampling time)

§ Trajectory planning for a boom craneat University of Stuttgart, Germany(on dSPACE, 100 ms sampling time)

§ Time-optimal control of machine toolsat KU Leuven (on dSPACE/xPC target,4 ms sampling time)

A Few Real-World Applications

Mar 19, 2014 | Slide 13© ABB Group

qpOASES

§ qpOASES has been used within the AdvancedEngine Controller by Hoerbiger Control Systems:

§ MPC of integral gas engines

§ Successful field test at SoCalGas compressorstation, NOX peaks could be reduced significantly

§ qpOASES has been integrated intothe INCA MPC Engine by IPCOS

§ qpOASES is used for whole bodycontrol of humanoid NAO robotorat Aldebaran Robotics

§ Used within LMS Imagine.Lab forvehicle dynamics applications

Selected Industrial Applications

Mar 19, 2014 | Slide 14© ABB Group

Page 8: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

8

Numerical Performance

§ Reliable code: qpOASES solves all 70 small- to medium-scale test problems from the challenging Maros-MészárosQP test set with high accuracy

§ Comparison with other popular QP solvers with defaultsettings (joint work with A. Potschka, U Heidelberg):

Solver Name: Fraction of QPs solved:quadprog 62 %OOQP 70 %CPLEX-IP 73 %CPLEX-Primal 96 %CPLEX-Dual 97 %qpOASES 3.0beta 99 %

Reliability

Mar 19, 2014 | Slide 15© ABB Group

Numerical Performance

§ All 70 problems with less than 1000 QP variables ofchallenging Maros-Mészáros QP test set

Computational Speed

Mar 19, 2014 | Slide 16© ABB Group

Page 9: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

9

Numerical Performance

§ All 43 problems with less than 250 QP variables ofchallenging Maros-Mészáros QP test set

Computational Speed (cont.)

Mar 19, 2014 | Slide 17© ABB Group

Outline

1. Introduction

2. Current Status of qpOASES

3. Future Developments

Mar 19, 2014 | Slide 18© ABB Group

Page 10: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

10

SCDC

DC

qpOASES

2006 2007 2008 2009 2010 2011 2012 2013 2014 2015

Development Timeline

Mar 19, 2014

v0 0.1 1.0 1.21.1

1.3 3.0

SC++

first industrialapplication

first real-worldapplication used in

ACADO CGT

DC++

2.0 3.0beta

contributionsby Wächter

Potschka / Kirchesjoin developer team

public repositoryat COIN-OR

| Slide 19© ABB Group

Summary

§ The open-source software package qpOASES is a matureand reliable QP solver (used in many applications)

§ Efficient due to plenty of structure-exploiting features

§ Easy to use through various third-party interfaces,download from www.qpOASES.org and try yourself

Mar 19, 2014 | Slide 20© ABB Group

Page 11: Hans Joachim Ferreau, ABB Corporate Research, Switzerland ... · 19/3/2014 1 qpOASES Past, Present, Future Hans Joachim Ferreau, ABB Corporate Research, Switzerland Outline 1. Introduction

19/3/2014

11