h1

h2

h3

h4

h5
h6
http://join2-wiki.gsi.de/foswiki/pub/Main/Artwork/join2_logo100x88.png

Automatic differentiation of the CapeML high-level language for process engineering = Automatische Differentiation von CapeML-Hochsprachmodellen der Verfahrenstechnik



Verantwortlichkeitsangabevorgelegt von Monika Anna Petera

ImpressumAachen : Publikationsserver der RWTH Aachen University 2011

UmfangXV, 133 S. : graph. Darst.


Aachen, Techn. Hochsch., Diss., 2011

Prüfungsjahr: 2011. - Publikationsjahr: 2012


Genehmigende Fakultät
Fak01

Hauptberichter/Gutachter


Tag der mündlichen Prüfung/Habilitation
2011-07-04

Online
URN: urn:nbn:de:hbz:82-opus-40440
URL: https://publications.rwth-aachen.de/record/52242/files/4044.pdf

Einrichtungen

  1. Lehrstuhl für Informatik 12 (Hochleistungsrechnen) (123010)
  2. Fachgruppe Informatik (120000)

Inhaltliche Beschreibung (Schlagwörter)
Automatische Differentiation (Genormte SW) ; Domänenspezifische Programmiersprache (Genormte SW) ; XSLT (Genormte SW) ; Programmtransformation (Genormte SW) ; Informatik (frei) ; semantische Tranformation (frei) ; Quelltextoptimierung (frei) ; Vorwärtsmodus (frei) ; Rückwärtsmodus (frei) ; automatic differentiation (frei) ; source code transformation (frei) ; code optimization (frei) ; forward mode (frei) ; reverse mode (frei)

Thematische Einordnung (Klassifikation)
DDC: 004

Kurzfassung
Zur Beschreibung dynamischer Phänomene in der Verfahrenstechnik steht eine Reihe von Modellierungswerkzeugen zur Verfügung, die deklarative, gleichungsorientierte Sprachen wie beispielsweise gPROMS oder Modelica verwenden. Diese primär zur Simulation konzipierten, domänenspezifischen Sprachen werden immer häufiger auch zur Lösung von Optimierungsproblemen (optimale Steuerung, Parameterschätzung oder Versuchsplanung) eingesetzt. Solche Anwendungen erfordern typischerweise die Berechnung von ersten und höheren Ableitungen der zugrundeliegenden verfahrenstechnischen Modelle. Diese Ableitungen wurden bisher häufig mittels Differenzenquotienten approximiert. Für ein existierendes dynamisches Optimierungssystem aus der Verfahrenstechnik wird ein spezielles Software-Werkzeug namens ADiCape entwickelt, das exakte Ableitungen zur Lösung eines gegebenen Optimierungsproblems bereitstellt. Beim Entwurf dieses innovativen Werkzeugs wurden Techniken des automatischen Differenzierens (AD) eingesetzt. Diese Techniken erlauben unter der Betrachtung und Ausnutzung von Problemstrukturen die ersten und zweiten Ableitungen effizient zu berechnen. Um die Technologie zur Ableitungsberechnung nicht nur an eine einzige Hochsprache zu binden, werden die Programmtransformationen in eXtensible Style-sheet Language Transformation (XSLT) auf einem sprachneutralen, XML-basierten Zwischenformat namens CapeML ausgeführt. Die Transformationszeiten mit ADiCape und die Laufzeiten der Ableitungsberechnung wurden in dieser Arbeit anhand mehrerer Testbeispiele präsentiert. Das vorgestellte Ergebnis der Optimierung eines industriellen Prozesses beweist die erfolgreiche Integration von ADiCape-generierten Ableitungen in eine Optimierungsumgebung der Verfahrenstechnik.

To perform computer simulations of the modeled phenomena the mathematical description the model needs to be implemented as a computer program, and often the choice of implementation language depends on the simulation environment chosen. This dependency of the programming language and the simulation environment hamper the exchange of model information between modelers who may use different simulation tools. The mathematical models motivating this thesis are specified in equation-based modeling languages. Rather than a procedural code, equation-based concept defines dependencies between model variables which is advantageous for building compound models in process engineering. Therefore, at Process Systems Engineering at RWTH Aachen University, CapeML, an XML based language definition has been proposed to provide an intermediate representation of a mathematical model description which is independent of a simulation environment. CapeML may be generated from a number of equation-based programming languages, thus making it possible to combine smaller model components to build more complex models. Additionally, XML, which is a standardized format, allows for syntax verifications, content validation and source transformations which may not only translate the contents of XML into another representation but even augment the enclosed data with additional information. The main goal of this thesis is to present the suitable and innovative facility to augment CapeML model descriptions with derivative information required for the selected optimization schemes. In the course of this thesis, a source transformation tool called ADiCape has been developed to provide automatically generated CapeML code for derivative computations. These derivatives are determined by means of Automatic Differentiation (AD) techniques. The transformation rules of ADiCape are implemented in eXtensible Style-sheet Language Transformation (XSLT), a template-based transformation language for structured XML-based data. As it turns out, its functional transformation paradigm fits well with an equation-based modeling approach. Customizable transformation in ADiCape allows for generation of first and second order code for calculation of derivatives in a form required by the employed optimization algorithms. During these transformations, the structure of the mathematical model is examined for possible increase in the efficiency of the derivative calculation. For instance, code optimization techniques such as constant folding, constant propagation and loop unrolling are employed to eliminate derivative-irrelevant expressions from the model description. Additionally, the sparsity of the Jacobian matrix is exploited to reduce the computational effort of derivative calculation. Furthermore, only a fraction of the derivative information may be extracted for computation to concentrate the investigations on a particular part of the model. ADiCape is designed to be a part of the dynamic optimization environment DyOS, providing accurate derivative information for the optimization of engineering models. To meet these requirements, ADiCape implements the forward and reverse mode of AD to supply the iterative solvers of DyOS with full Jacobian matrices, Jacobian and Hessian (multi-)vector products and symmetric projections of Hessian matrix. The results of the project investigations show that the automatic differentiation may also be employed in equation-based modeling approach. The preprocessing techniques derived from the code optimization field allow the preparation of the domain-specific code for the complex mathematical transformations. This thesis describes the specification for the transformation tool ADiCape, the implementation solution, as well as the employed methods for code optimization and sparsity exploitation. The impact on the computational time and memory requirement is shown in several test examples. The presented result of an optimization of a industrial process model proves the successful incorporation of ADiCape-generated derivatives of CapeML models in the engineering optimization environment. The performance of the transformation and evaluation of derivatives in the declarative language are also shown to concur with theoretical benchmarks.

Fulltext:
Download fulltext PDF

Dokumenttyp
Dissertation / PhD Thesis

Format
online, print

Sprache
English

Interne Identnummern
RWTH-CONV-114479
Datensatz-ID: 52242

Beteiligte Länder
Germany

 GO


OpenAccess

QR Code for this record

The record appears in these collections:
Document types > Theses > Ph.D. Theses
Faculty of Mathematics, Computer Science and Natural Sciences (Fac.1) > Department of Computer Science
Publication server / Open Access
Public records
Publications database
120000
123010

 Record created 2013-01-28, last modified 2022-04-22


Fulltext:
Download fulltext PDF
Rate this document:

Rate this document:
1
2
3
 
(Not yet reviewed)