Change search
ReferencesLink to record
Permanent link

Direct link
Large-scale dynamic optimizationusing code generation and parallelcomputing
KTH, School of Engineering Sciences (SCI), Mathematics (Dept.), Numerical Analysis, NA.
2014 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesisAlternative title
Storskalig dynamisk optimering med hjälp av kodgenerering och parallella beräkningar (English)
Abstract [en]

Complex physical models are becoming increasingly used in industry for simulation and optimization. Modeling languages such as Modelica allow creating model libraries of physical components, which in turn can be used to compose system models of, e.g., vehicle systems, power plants and electronic systems. is an open source tool suite for Modelica. It includes a compiler for Modelica and for the language extension Optimica, which is used to formulate dynamic optimization problems based on Modelica models.

Direct collocation methods are used in to transcribe a dynamic optimization problem into a large-scale nonlinear program with sparse structure. This structure can be exploited for parallel solution of the linear Karush Kuhn Tucker KKT system solved in each step of an interior point method. Currently, the non-linear programming solvers available in do not support parallel algorithms for the solution of the structured problem.

The optimization platform in was modified to generate efficient C-code that could be linked with an external non-linear programming solver with parallel computation capability. CasADi, JModelica. org’s third party software, is used to generate C-code from the model equations, after collocation has been applied. Speed up factors over 20 were obtained for the compilation of the generated files, and the problem of non-compilable files was overcome.

A C++ interface was implemented to link the generated files with the parallel framework that solves non-linear problems with an interior point algorithm.A large-scale trajectory optimization problem, such as the start-up optimization of a power cycle model, was used to evaluate the performance of the interface and the parallel algorithm. Speedup of over 2.5 was obtained with 4 processors in a shared memory architecture.

Abstract [sv]

Komplexa fysikaliska modeller anvånds alltmer inom industrin för simulering och optimering. Modelleringsspråk som Modelica möjliggör skapandet av modellbibliotek av fysikaliska komponenter, som i sin tur används för att skapa systemmodeller av t.ex. fordonssystem, kraftverk och elektronik. är ett open-source verktyg för Modelica. Det består av en kompilator för Modelica och dess utökning Optimica, som används för att formulera dynamiska optimeringsproblem baserat påModelica-modeller.

Direkta kollokationsmetoder används i för att transkribera dynamiska optimeringsproblem till storskaliga olinjära program med gles struktur. Denna struktur kan utnyttjas vid parallell lösning av det linjära KKT-systemet som löses i varje iteration i en inre-punkts-metod. De nuvarande lösarna för olinjära program i stödjer inte parallella algoritmer.

Optimeringsplattformen i har modifierats för att generera effektiv C-kod som kan länkas med en extern lösare för olinjära program som utför parallella beräkningar. CasADi,’s tredjepartsmjukvara, används för att generera C-kod från modellekvationerna efter att kollokation har applicerats. Kompileringstiden har minskat med en faktor större än 20 och det tidigare problemet med ej kompilerbara filer har lösts.

Ett C++-gränssnitt implementerades för att länka de genererade filerna med det parallella ramverket. Ett storskaligt trajektorieoptimeringsproblem, såsom uppstartsoptimering av en modell av ett kraftverk, användes för att evaluera prestandan av gränssnittet och den parallella algoritmen. En uppsnabbningsfaktor på2.5 erhölls med 4 processor som delar minne.

Place, publisher, year, edition, pages
TRITA-MAT-E, 2014:50
National Category
Computational Mathematics
URN: urn:nbn:se:kth:diva-150443OAI: diva2:743430
Subject / course
Scientific Computing
Educational program
Master of Science - Computer Simulation for Science and Engineering
Available from: 2014-09-04 Created: 2014-09-04 Last updated: 2014-09-04Bibliographically approved

Open Access in DiVA

fulltext(1592 kB)228 downloads
File information
File name FULLTEXT01.pdfFile size 1592 kBChecksum SHA-512
Type fulltextMimetype application/pdf

By organisation
Numerical Analysis, NA
Computational Mathematics

Search outside of DiVA

GoogleGoogle Scholar
Total: 228 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

Total: 103 hits
ReferencesLink to record
Permanent link

Direct link