
|
MUSCOD-II
A Software Package for Numerical Solution of Optimal Control
Problems involving Differential-Algebraic Equations (DAE)
Functionality
The optimization package MUSCOD-II is designed to
efficiently and reliably solve optimal control problems for systems
described by ordinary differential equations (ODE) or by
differential-algebraic equations (DAE) of index one. MUSCOD-II can
treat system models formulated either in the gPROMS modeling language
(PSE Ltd.),
in FORTRAN, or in C, and it has been widely applied to industrial
problems, in particular in the field of chemical engineering. The
software has the capability to solve highly nonlinear problems with
complex equality or inequality constraints on states and controls, as
e.g., final state constraints, periodicity conditions, or path constraints.
Furthermore, a unique multistage formulation allows to optimize integrated
batch processes consisting of several coupled process stages, e.g., a
batch reaction step followed by a batch separation step.
Recent developments include a real-time environment for use in
nonlinear model predictive control (NMPC), a tailored Gauss-Newton
approach for tracking problems, and a parallel code version based on
the portable MPI standard. Currently, MUSCOD-II is being extended to
treat large-scale DAE models even more efficiently, and to solve
problems involving DAE with switching points.
Due to its flexible model interfaces, its robustness and efficiency,
MUSCOD-II is an ideal tool for the modeling, simulation and optimization of
complex processes.
Sketch of the Algorithm
and
Short History of MUSCOD-II
MUSCOD-II is based on the direct multiple shooting method, i.e.,
the optimization horizon is divided into a number of subintervals,
and the differential equations are solved independently on each of
these subintervals by a state-of-the-art ODE or DAE solver. This
approach allows to reformulate the optimal control problem as a
large-scale nonlinear programming (NLP) problem with a favorable
block sparse structure. The NLP problem is solved with a specifically
tailored sequential quadratic programming (SQP) method which fully
exploits the inherent structure. Originally, the direct multiple
shooting method is due to Karl-Josef Plitt and Hans Georg Bock, who
first implemented it in a software package called MUSCOD (MUltiple
Shooting CODe for optimization) for ODE models in 1981. An
important requirement for the success of the method is the
efficient generation of derivatives of the differential equation model
according to the principle of internal numerical differentiation
(IND). The original version of MUSCOD has been sucessfully used in many
applications involving ODE models, e.g., the optimization of robot
movements.
Nearly twenty years later, Daniel Leineweber developed an efficient
approach to treat DAE models with direct multiple shooting, and
implemented the package MUSCOD-II, in collaboration with Andreas
Schäfer and with the help of Jochen Jost, in 1997. The SQP
method was modified to exploit the large share of algebraic variables
that typically arises in DAE models, resulting in a partially reduced
sequential quadratic programming (PRSQP) method. The method needs to
evaluate only derivatives with respect to differential variables and
makes use of a DAE relaxation strategy, thus saving a lot of
computation time compared to a full space SQP method for DAE. Many
features of MUSCOD-II, e.g., the multistage formulation, the exact
penalty line search, the limited memory BFGS updates, an exact Hessian
trust region approach, etc., date back to this time.
Since then, the
functionality of the package has continuously been extended (and is
still being so): a Gauss-Newton approach allows to efficiently treat
least-squares objective functions of pointwise or integral type, and a
real-time optimization scheme enables use for online control (Moritz
Diehl, 2000); a parallelization based on the portable MPI standard has
been realized (Amit Sharma, Moritz Diehl, Andreas Schäfer, 2000);
the software has been coupled with the gPROMS modeling platform, making
efficient use of gPROMS model residuals and derivatives delivered via
the ESO interface (Andreas Schäfer, 2001); furthermore,
an interface for the automatic differentiation tool
ADOL-C
has been established, allowing to use exact derivatives of models written
in C (Ulrich Brandt-Pollmann, 2002).
At the moment, further developments based on MUSCOD-II are being made
in two directions: firstly, a dynamic optimization algorithm which is able
to treat switching behaviour (e.g., tray overflow in a distillation column)
is developed by Ulrich Brandt-Pollmann. Secondly, an efficient algorithm for
large-scale DAE models with fixed initial values, as they arise in the
discretization of partial differential-algebraic equations (PDAE), is
developed by Andreas Schäfer.
Overview of MUSCOD-II Key Algorithmic Features
- simultaneous dynamic optimization strategy for DAE models based on multiple
shooting and partially reduced sequential quadratic programming (PRSQP)
- use of fully adaptive DAE solvers (allows to decouple the integration
accuracy from the discretization used on the optimization level)
- relaxed DAE formulation with damping factor (allows inconsistent
values of state variables at multiple shooting nodes, improves robustness
by forcing solution toward consistency during integration)
- use of sparse linear solvers at the optimization level
as well as within the integrator (allows to exploit sparsity of large
DAE process models)
- direct computation of the reduced linearized constraint set via
directional derivatives (allows to significantly decrease the
computational work for the linearization of large problems having
many algebraic variables)
- complete decoupling of state and sensitivity integrations
on different multiple shooting intervals (allows parallel function and
gradient evaluations)
- combination of the advantages of simultaneous and sequential
strategies (explicit discretization of the dynamic model, but still
relatively small NLP problem)
- solution of general multistage problems with control and
path constraints and multipoint boundary conditions
- large degree of compatibility with existing dynamic process simulators
(only requires a DAE solver which is capable of efficiently generating
directional sensitivities)
Some Collaborators using MUSCOD-II
- BASF, Ludwigshafen
- Bayer Technology
Services, Leverkusen
- Institute for
Systems Theory in Engineering, Univ. of Stuttgart
(Prof. Frank Allgöwer)
-
Institut für Systemdynamik und Regelungstechnik, Stuttgart
(Stefan Schwarzkopf)
- Institute for Energy
Engineering, TU Berlin (Thinh Nguyen-Xuan)
- Dipartimento di Informatica e Sistemistica, Univ. of Pavia, Italy (Dr. Lalo Magni)
-
Rami Tzafriri, Computer Science Department, The Hebrew University, Jerusalem
-
Process Control Laboratory, University of Dortmund
(Prof. S. Engell)
Please contact the head of the workgroup,
Prof. Dr. Dr. h.c. Hans Georg Bock, if you are interested in a
collaboration.
References
- M. Diehl, D. B. Leineweber, A. Schäfer: MUSCOD-II Users' Manual.
IWR-Preprint 2001-25. Universität Heidelberg, 2001.
[PS File (gzipped)]
[PDF File]
- D. B. Leineweber: The theory of MUSCOD in a nutshell. IWR-Preprint
96-19. Universität Heidelberg, 1996.
[Abstract]
[PS File (gzipped)]
[PDF File]
- D. B. Leineweber: Efficient reduced SQP methods for the optimization
of chemical processes described by large sparse DAE models. Fortschritt-Berichte
VDI, Reihe 3, Nr. 613. VDI-Verlag GmbH, Düsseldorf, 1999. [Abstract]
[PS
File (gzipped)] [PDF
File]
- D. B. Leineweber, I. Bauer, H. G. Bock, J. P. Schlöder: An efficient
multiple shooting based reduced SQP strategy for large-scale dynamic process
optimization - part I: theoretical aspects. Comput. Chem. Engng 27,
157-166, 2003. Preprint Version:
[Abstract]
[PS File (gzipped)]
[PDF File]
- D. B. Leineweber, A. Schäfer, H. G. Bock, J. P. Schlöder:
An efficient multiple shooting based reduced SQP strategy for large-scale
dynamic process optimization - part II: software aspects and applications.
Comput. Chem. Engng 27, 167-174, 2003. Preprint Version:
[Abstract]
[PS File (gzipped)]
[PDF File]
- D. B. Leineweber, J. A. Jost: LIBLAC - structured data types and basic
operations for numerical linear algebra in an ANSI C/Fortran 77 environment.
IWR-Preprint 96-56. Universität Heidelberg, 1996.
[Abstract]
[PS
File (gzipped)] [PDF
File]
- M. Diehl:
Real-Time Optimization for Large Scale Nonlinear Processes
. PhD Thesis, University of
Heidelberg, 2001.
- M. Diehl, D. B. Leineweber, A. Schäfer, J. P. Schlöder, H.
G. Bock: Optimization of multiple-fraction batch distillation with recycled
waste cuts. AIChE J. 48, 2869-2874, 2002. Preprint
Version (IWR Preprint 2001-22):
[Abstract]
[PS File (gzipped)]
[PDF File]
- M. Diehl, I. Uslu, S. Schwarzkopf, F. Allgöwer, H.G. Bock, R. Findeisen, E.D. Gilles, A. Kienle, J.P. Schlöder, and E. Stein: Real-Time Optimization for Large Scale Processes: Nonlinear Model Predictive Control of a High Purity Distillation Column
In Groetschel, Krumke, Rambau (eds.): Online Optimization of Large
Scale Systems: State of the Art, Springer, 2001. Preprint version:
[PS File]
[PDF File]
- M.Diehl, R. Findeisen, S. Schwarzkopf, I. Uslu, F. Allgöwer, H. G. Bock,
E. D. Gilles, and J. P. Schlöder:
An efficient algorithm for nonlinear model predictive control of large-scale systems.
Part I: Description of the method. Automatisierungstechnik, 12, 2002.
Part II: Application to a Distillation Column. Automatisierungstechnik, 1, 2003.
slightly different as IWR-Preprint 2002-11:
[PS File (gzipped)]
[PDF File ]
|
|