Welcome on the ECCE-6 CDROM.

Conference logo

European Congress of Chemical Engineering - 6
Copenhagen 16-21 September 2007

Abstract 3524 - Dynamic Optimization of Modelica Models

Dynamic Optimization of Modelica Models

Systematic methods and tools for managing the complexity

Process Simulation & Optimization - II (T4-9b)

MSc Johan Åkesson
Lund University
Department of Automatic Control
Department of Automatic Control
Box 118
SE-221 00 Lund
Sweden

Keywords: Modelica, Dynamic Optimization, Plate Reactor

High level modeling languages are receiving increased industrial and
academic interest within several domains, such as chemical
engineering, thermo-fluid systems, power systems, and automotive
systems. One such language is Modelica (www.modelica.org). Modelica is
an open language, specifically targeted at multi-domain
modeling and model re-use. Key features of Modelica are object
oriented modeling, declarative equation modeling, a software component
model enabling a-causal connections of sub models, as well as support for
hybrid/discrete behaviour. These features have proven very applicable
to a wide range of large scale modeling problems in various fields.

While there exist very efficient software tools for simulation of
Modelica models, e.g. Dymola (www.dynasim.com), tool support for
static and dynamic optimization is generally weak. Furthermore, specification
of optimization problems is not supported by Modelica. Since Modelica
models represent an increasingly important asset for many companies, it
is of interest to investigate how Modelica models can be used also for
optimization, by utilizing cutting edge numerical algorithms, in order to
increase return of investment.

This paper contributes an overview of a project targeted at
i) defining an extension of Modelica, Optimica, which enables high level
formulation of optimization problems,
ii) developing prototype tools for translating a Modelica model and a
complimentary Optimica description into a representation suited for
numerical algorithms, and
iii) performing case studies demonstrating the potential of the
concept.
The project integrates dynamical modeling and optimization
with computer science and numerical algorithms. One of the main
benefits of the suggested approach is that the high level descriptions
are automatically translated into an intermediate representation by
the compiler front-end. This intermediate representation can then be
further translated to interface with different numerical algorithms.
The user is therefore relieved of the burden of managing the often
cumbersome API:s of numerical algorithms. The flexibility of the
architecture also enables the user to select the algorithm
most suitable for the problem at hand.

A first version of the Optimica extension has recently been
defined. In addition, a prototype compiler supporting a subset of
Modelica has been developed. The compiler enables translation of the
high level Modelica and Optimica descriptions into the language AMPL,
where the continuous dynamical states have been transcribed by means
of a simultaneous optimization approach based on collocation over
finite elements. The resulting optimization problem can then be solved
by an NLP code for large scale problems, such as IPOPT. The tools have
been used e.g. to find optimal start-up trajectories for a plate reactor
(see ``Dynamic optimization of a plate reactor start-up supported by
Modelica-based code generation software'', Staffan Haugwitz and Johan
Åkesson, submitted to DYCOPS 2007).

Presented Tuesday 18, 10:05 to 10:25, in session Process Simulation & Optimization - II (T4-9b).

Conference logo