Student Projects

From Sccswiki
Revision as of 15:50, 16 September 2012 by Pflueged (talk | contribs)
Jump to navigation Jump to search
At our chair we are constantly looking for motivated students. Just have a look at our research topics below and don't hesitate to drop by and discuss how you can get involved.

(English text follows below)

Studentische Arbeiten? Hier?? Wo sonst?

Diese Seite wendet sich an alle, die sich vorstellen können, am Lehrstuhl SCCS eine

studentische Arbeit jeglicher Art
(Bachelor-/Master-/Diplomarbeit, PSE, SEP, Studienarbeit, IDP, Forschungsprojekt unter Anleitung, ...)
in nahezu jedem Studiengang
(Informatik, Mathematik, CSE)

zu beginnen oder als studentische Hilfskraft zu arbeiten.

Da uns individuelle Präferenzen und das konkrete Interesse für Themen wichtiger sind als der formale Rahmen, schreiben wir im Regelfall keine konkreten Arbeiten aus, sondern stellen im Folgenden Themen vor, in denen wir Euch Arbeiten anbieten können.

Falls Ihr Euch für eines davon interessiert: einfach per Mail anfragen (Fragen kostet nix und verpflichtet zu nix!).

(Das SCCS Kolloquium ist eine weitere gute Gelegenheit, etwas über Themen zu lernen, die bei uns bearbeitet werden; Gäste sind immer willkommen!)

Beispiele für vergangene studentische Projekte findet Ihr unter der Rubrik Publications unter den Rubriken Master and Bachelor Thesis sowie Student Theses/SEP/IDP

Student Projects? Here?? Of course!!!

This page is intended for all students who would like to do

any kind of student project
(Bachelor/Master/Diploma thesis, semester project, guided research, ...)
in (almost) any kind of program
(Informatics, Mathematics, CSE)

or work as a student research assistant at our chair.

As we consider individual preferences and interests for specific topics more important than formal frameworks, we usually do not announce specific projects, but provide a list of topics, instead, where you could work on.

Hence, if you're interested in one of the topics listed below, just contact us by email!

(The SCCS Colloquium is a further opportunity to inform yourself about current topics for projects at our chair; guests are always welcome!)

For examples of previous student projects, see our page on Publications, in particular Master and Bachelor Thesis and Student Theses/SEP/IDP

Computational Fluid Dynamics (CFD)

StudentProjects fsi.jpg

StudentProjects driftRatchet.jpg

The simulation of various flow phenomena and the development of software for this purpose are among the core subjects of our group. We offer topics for projects (such as PSE) and theses (BA/MA/Diploma) from various application areas such as turbulence, particle transport, effects on a microscale (Brownian motion etc.), and fluid-structure interaction.

To achieve efficient and accurate codes, we apply mathematical methods (finite element method, multigrid, numerical time integration schemes, Lattice Boltzmann method, etc.) as well as computer science techniques (parallelisation, cache- and runtime-optimisation, high performance computing, grid computing, etc.). The focus of a project or a thesis can be chosen to be either in one or both of these two fields.

Further information on possible projects: Concrete project topics in Computational Fluid Dynamics (CFD)

Beside the listed topics for diploma and master theses, individual topics and suggestions are appreciated and welcome as well! Just contact one of our team so that we can discuss your ideas!


Programming of Supercomputers: from Algorithms to Applications

For various systems, ranging from multicore machines to supercomputers (comprising tens of thousands of processors), parallelization and hardware awareness are THE WAY to achieve outstanding performance. Load balancing, minimization of the inter-process communication, or software tuning are just some of the issues playing a decisive role in the development of efficient application software for high performance computers.

Students will typically adapt existing algorithms of practical interest to the requirements of concrete systems, such as shared-memory computers or clusters. The applications in focus are mainly from the field of computational science and engineering (yet not restricted to it!), such as flows and fluid - structure interaction, molecular dynamics or traffic simulation.


  • Interest in the development of parallel programs for simulations, intended to be run on supercomputers
  • Interest in numerical algorithms of practical value in computational applications
  • MPI or thread programming basic skills

Some keywords: HPC, load balancing, optimization, MPI, OpenMP

Contact persons:

Efficient (Hardware-aware, Parallel, ...) Implementation of Matrix Operations

Operations on matrices, such as matrix multiplication or solving systems of linear equations (in matrix notation), are fundamental operations that are required in many application scenarios. The respective algorithms might not be too complicated at first sight, however it is a major challenge to implement them on modern hardware - be it multi- or many-core processors or massively parallel supercomputers - in a way as to fully exploit the available performance.

In this field, we explore approaches that distribute matrices recursively into blocks, using special data structures and memory layouts that are based on so-called space-filling curves.

Prerequisites: Lecture "Algorithmen des Wissenschaftlichen Rechnens" (useful, but not strictly required); a certain desire to exploit given hardware up to the last bit of performance is also definitely helpful.

Further information:

  • TifaMMy isn't the fastest Matrix Multiplication, yet!

Ansprechpartner: Michael Bader, Alexander Heinecke

Tsunami Simulation - Wave Propagation on Fully Adaptive Grids

Output wireframe clusters small.gif Tohoku surface 46min.jpg Tohoku momentum 46min.jpg <br\> The propagation of oceanic waves, such as Tsunamis generated by earth quakes, can be modeled by 2D fluid equations (so-called shallow water equations). To numerically solve these models, we use a discretization on adaptive triangular grids. Adaptivity, i.e. refinement of the grid in critical regions (esp. along the propagating wave front) but also coarsening in less interesting areas, is critical to achieve the desired accuracy in acceptable time.

Such adaptive grids require memory-efficient data structures to store them, but also efficient algorithms and implementations working on these data structures. Our approach is based on the 2D Sierpinski space-filling curves, which allows an inherently local (and therefore cache-efficient) algorithm based on stack and stream data structures.

Further aspects are efficient implementation of the discretized equations - including parallelization, higher order accurate discretization, modeling of boundary and initial conditions (via coupling with a code to simulate dynamic rupture processes), visualization, etc.


  • A certain interest in the simulation of physical phenomena.

Contact: Michael Bader, Alexander Breuer, Kaveh Rahnema, Martin Schreiber

Further Information: Tsunami Simulation

Videos: Videos

Sparse grid methods to efficiently solve high-dimensional problems

en_us_small.jpg Multi-dimensional applications create vast amounts of data - for spatially discretized simulations this can be observed already in two or three dimensional settings, but just consider problems in data mining, computational fincance, or engineering where dozens or hundreds of dimensions have to be dealt with.

Sparse grid methods, scaling moderately in the number of dimensions compared to classical discretizations, allow one to tackle much higher-dimensional problems than it was feasible before.

Sparse grids are required in all different kinds of applications and disciplines which deal with multiple dimensions: In engineering and plasma-physics, one has to optimize, to approximate, and to integrate; in AI applications such as classification and regression, the underlying dependencies have to be learned and reconstructed, crash-tests have to be understood and astro-physical problems have to be solved; in financial mathematics, prices of options have to be determined; simulation results have to be efficiently stored and visualized; … - the application scenarios are as diverse as our daily life.

Deu small.jpg Mehrdimensionale Anwendungen erzeugen gewaltige Datenmengen - schon bei zwei oder drei Dimensionen, wie etwa bei räumlich aufgelösten Simulationen, aber erst recht, wenn etwa bei Problemen des Data Minings, der Finanzmathematik oder der Ingenieurwissenschaften einige dutzend oder auch hundert Dimensionen auftreten.

Dünngitterverfahren, deren Aufwand wesentlich moderater mit Zahl der Dimensionen steigt als bei klassischen Diskretisierungen, bieten hier ein großes Einsparpotential und treiben so die Grenze der handhabbaren Probleme signifikant voran.

Dünngitterverfahren werden in den verschiedensten Anwendungsgebieten, die mit mehreren Dimensionen arbeiten, benötigt: Nicht nur in Ingenieur- und physikalischen Anwendungen muss optimiert, approximiert und integriert werden, auch in KI-Anwendungen wie der Klassifikation oder Regression müssen beispielsweise zugrunde liegende Zusammenhänge rekonstruiert und gelernt werden, Ergebnise von Crashtests müssen verstanden und astrophysikalische Probleme gelöst werden. In finanzmathematischen Aufgabenstellungen muss integriert werden, bei Simulationsaufgaben müssen Kennfelder effizient abgelegt und Simulationsergebnise effizient visualisiert werden, ... - die Einsatzmöglichkeiten sind vielfältig.

StudentProjects sparseGrids.jpg

en_us_small.jpg Tasks for student projects and thesis, on the one hand, can deal with the application of sparse grids in new fields of applications, on the other hand, the methodology of this technique is relatively new and challenges with plenty of open questions: How to select the right grid points and ansatz functions? How to handle and efficiently realize the challenging (and sometimes brain-twisting) multi-recursive algorithms and data structure on current and future hardware? There are plenty of interesting tasks waiting for you!

Prerequisites: None. There are so many different tasks. You definitely should not have an aversion to numerics. If you have attended algorithms of scientific computing, even better, though not required at all.

Deu small.jpg Aufgaben für studentische Arbeiten ergeben sich einerseits durch den Einsatz dieser Techniken in neuen Anwendungsfeldern - andererseits ist die Methodik dieser relativ neuen Technik noch alles andere als abschließend geklärt: Neben Fragen der richtigen Auswahl von Gitterpunkten und Ansatzfunktionen gibt es auch beliebig viel zu tun, um die teilweise verzwickt-rekursiven Algorithmen, die sich aus diesen Datenstrukturen ergeben, besser in den Griff zu bekommen und auf aktueller und zukünftiger Hardware effizient umzusetzen.

Vorkenntnisse: Eine gewisse Freude an numerischen Fragestellungen sollte man hier mitbringen; optimal, aber nicht notwendig, wären Kenntnisse aus der Vorlesung Algorithmen des Wissenschaftlichen Rechnens.


Machine Learning and Data Mining: Classification, Clustering and Dimension Reduction

Learning from data plays a key role in data mining, artificial intelligence as well as in engineering and many other fields of science. We consider special techniques based on sparse grids for learning from huge amounts of high dimensional data. Because the complexity of these techniques grows slower with the number of dimensions than the complexity of classical grid-based discretizations, the class of feasible problems is extended considerably. Currently we consider problems from astrophysics, car crash tests, image processing, plasma physics and from many other fields.

Usually, a training data set (observations, measurements) is given. In the case of supervised learning, we already have labels associated to the data points in the training data set. Then the task is to assign reasonable labels to new data points (classification). If there are no labels we speak of unsupervised learning. Without any further information, the data points have to be grouped or divided into clusters (clustering). Another area of application for our sparse grids techniques is dimension reduction. Here we map the training data from a high dimensional manifold to a low dimensional representation without losing the characteristics of the data.

datamining.jpg crash.gif

At our chair a broadly applicable sparse grids library has been developed to tackle data driven problems. That is why new problems can be treated without much preliminary work. This library is commonly used for student projects.

Usually student projects deal with the application of data mining techniques based on sparse grids (classification, clustering and dimension reduction) in various fields of science and engineering (astrophysics, car crash tests, plasma physics, …). But we also offer projects exploring the sparse grids techniques themselves, like adaptivity, basis functions and algorithms.

Contact: Dr. Dirk Pflüger, Benjamin Peherstorfer

High Dimensional Approximation in Plasma Physics

The ever increasing need for energy in the coming decades requires new sources of energy to mitigate the increase of the anthropological greenhouse effect. One promising approach is the use of energy produced by nuclear fusion. To be able to control that reaction, which is basically the same as the one powering the sun, the materials to be fused have to be heated up to extremely high temperatures (~100 Mio. K). At that temperatures the material is in an ionized state of a plasma. Confinement of this high temperature plasma can only be achieved by strong magnetic fields in machines as Tokamaks or Stellarators. But still the confinement times in the currently existing devices is not sufficient to initiate a self-sustained fusion reaction, which would be necessary to use fusion as a source of energy.

The coming large-scale fusion experiment ITER shall be the first tokamak, which is actually producing more energy than is invested to create and confine the fusion plasma. But the successfull confinement of such a hot fusion plasma is complex and requires a lot of numerical simulations to understand the transport processes in the plasma. These simulations require a tremendous amount of computational resources.

In a cooperation with the IPP (Max-Planck-Institute for Plasmaphysics) we are trying to increase the performance of the Plasma Turbulence Code GENE, which is solving the five dimensional gyrokinetic equations. Due to this moderately high dimensionality the sparse grid combination technique can be emplyed to significantly reduce the computational effort through a mitigation of the curse of dimensionality.

Besides sparse grids new algorithms in linear algebra are developed to speed up the gyrokinetic computations. An interesting project would also be the explorations of the applicability of GPU computing in the simulations.

If you are interested in High Dimensional Approximation in the field of Plasmaphysics, please contact Christoph Kowitz

Interactive Computational Steering using Model Reduction Techniques

cavity.png HansDaniel.jpg

Projects in this area include:

  • M to N Parallel Data Transfers: Connecting a Parallel Simulation to a Parallel Visualization
  • Exploration of Parametrized Simulations at Interactive Rates
  • Tilled Display High Resolution Visualizations

Contact: Dr. Dirk Pflüger, Gerrit Buse, Daniel Butnaru

Präkonditionierung linearer Gleichungssysteme

Zu einem linearen Gleichungssystem Ax=b mit n x n - Matrix A sucht man einen Präkonditionierer M mit der Eigenschaft, dass sich das äquivalente Gleichungssystem MAx=Mb besser iterativ lösen lässt, insbesondere soll die neue Matrix MA eine kleinere Kondition haben. Schwerpunkt sind Präkonditionerer, die z.B. aus einer Normminimierung entstehen, z.B.

min || AM - I ||

für eine vorgegebene Dünnheitsstruktur von A und M. Dazu sind viele kleine Least-Squares-Probleme Cache-effizient zu lösen. Weiterhin können Präkonditionierer betrachtet werden, die - ähnlich wie ILU oder MILU (unvollständige LU-Zerlegungen) - aus einer unvollständigen Lösung von Dreiecksgleichungssystemen entstehen.

Zu bearbeiten sind hier die Definition und die mathematischen Eigenschaften von M, eine effiziente (parallele) Implementierung, und Anwendungen im Bereich Regularisierung und Glättung z.B. in der Bildverarbeitung oder bei der Lösung von PDEs (z.B. Nuklearreaktoranwendungen).


Vorkenntnisse: Numerisches Programmieren oder Numerik, Lineare Algebra, ev. MPI

Kontakt: Univ.-Prof. Dr. Thomas Huckle, Matous Sedlacek, Jürgen Bräckle

Numerical linear algebra tasks in quantum theory

Graph1D.png GraphMatrix.png

en_us_small.jpg Abstract: For describing quantum systems and quantum states from a mathematical perspective, matrices and vectors are in use. However, the matrix dimesions grow exponentially in the number of particles (e.g. spins) and thus an explicit representation is no longer possible. If we want to simulate a larger number of spins (say 50 or 100) we have to consider data-sparse representation schemes such as tensors which allow for efficient and cheap approximations in order to approximate the eigenvector representing the ground state of the system. To this end it is important to develop efficient methods and software that allow to deal with high-ordered tensors. Computations in tensor representations is a current and interesting topic running at our chair.

Keywords: multi-linear algebra, tensors, structured matrices, Krylov, MPS

Possible Projects:

  • Special linear systems
  • Subroutines for computations with tensors (e.g. contractions)
  • Krylov-methods für linear systems and Eigenvalue problems
  • Exploiting special symmetries (e.g. Persymmetry, multi-level-circulant)
  • Periodic boundary conditions
  • ...

Prerequisites: Numerical Programming or Numerics, Linear Algebra, Analysis, Programming skills (MatLab, MPI)

Contact: Univ.-Prof. Dr. Thomas Huckle, Konrad Waldherr

Deu small.jpgZusammenfassung: Matrizen und Vektoren, die kombinierte Quantenzustände beschreiben, wachsen exponentiell mit der Anzahl der Einzelkomponenten (z.B. Spins). Daher lassen sie sich nicht mehr explizit darstellen. Interpretiert man diese Daten aber als Tensoren, so existieren effiziente und billige Approximationen, z.B. zu einem Eigenvektor eines Systems, der einen Grundzustand beschreibt. Daher ist die Entwicklung mathematischer und numerischer Methoden und effizienter Software zum Arbeiten mit solchen hochdimensionalen Tensoren ein aktuelles und interessantes Thema, dass in der Arbeitsgruppe am Lehrstuhl verfolgt wird.

Schlüsselwörter: Multilineare Algebra, Tensoren, Strukturierte Matrizen, Krylov, MPS

Mögliche Projekte:

  • spezielle lineare Gleichungssysteme
  • Subroutinen für Tensorrechnung (z.B. Kontraktionen)
  • Krylov-Unterraumverfahren für Gleichungssysteme und Eigenwertprobleme
  • Ausnutzen von speziellen Symmetrien(z.B. Persymmetrie, Multi-Level-Zirculant)
  • Periodische Randbedingungen
  • ...

Vorkenntnisse: Numerisches Programmieren oder Numerik, Lineare Algebra, Analysis, Matlab, ev. MPI

Kontakt: Univ.-Prof. Dr. Thomas Huckle, Konrad Waldherr

Untersuchung von Multigridverfahren

Multigridverfahren zur Lösung eines linearen Gleichungssystems verwenden zwei Techniken zur iterativen Lösung: Ein Iterationsverfahren (Glaettung) reduziert den hochfrequenten Fehler; dadurch kann das Problem auf ein gröberes lineares Gleichungssystem A2 reduziert werden, das mit weniger Aufwand gelöst werden kann. Das gegebene physikalische Problem wird dabei durch die Projektion von einem feinen Gitter (feinen Diskretisierung) auf ein grobes Gitter abgebildet:

A2 := PT A P

Zur Analyse solcher Verfahren kann die gegebene Matrix durch eine Funktion (Symbol) dargestellt werden. So wird z.B. die Matrix tridiag(-1,2,-1) dargestellt durch die Funktion

f(x) = -1*exp(ix) + 2 – 1*exp(-ix) = 2 – 2 cos(x) .

Durch diese Technik kann die gesamte Analyse eines Multigridverfahrens auf die Untersuchung kleiner Matrixfunktionen reduziert werden. Ziel dieser Untersuchungen ist es, eine Kombination von Glättungs- und Projektionsoperatoren zu bestimmen, die orthogonal zueinander sind, d.h. ein Glättungsschritt und eine Grobgitterlösung liefern bereits die gesuchte Lösung. Man spricht hierbei davon, dass in diesem Fall das Multigridverfahren, sogar ein direkter Löser ist.

Weiterhin können algebraische Multigridverfahren untersucht werden, die dadurch entstehen, dass einige benachbarte Punkte der gegebenen Diskretisierung zu einem neuen Grobpunkt verschmolzen werden. Man spricht hier von Aggregation Multigrid. Auch bei diesem Ansatz sollen durch Übergang zu der Funktionsdarstellung optimale Multigridverfahren bestimmt werden,.

Auch mittels matrix-abhängiger Projektionen lassen sich Black-Box-Mulrigridverfahren definieren. Hierbei wird durch Betrachtung der Matrix, bzw. der PDE, automatisch eine passende effiziente Projektionsmatrix generiert.

StudentProjects multigrid.jpg

Vorkenntnisse: Numerisches Programmieren oder Numerik, Lineare Algebra

Kontakt: Univ.-Prof. Dr. Thomas Huckle, Dr. Christos Kravvaritis

Regularisierungsmethoden in der Bildverarbeitung

Um gestörte Bilder wieder zu rekonstruieren, sind oft extrem schlecht gestellte Gleichungssysteme zu lösen. Dazu existieren verschiedene Regularisierungstechniken, um das Originalbild möglichst gut wiederherzustellen. Man kann z.B. das Gleichungssystem modifizieren (Tikhonov Regularisierung) oder auch iterative Verfahren verwenden. Im Rahmen des Projekts sollen verschiedene neue Regularisierungsverfahren entwickelt und getestet werden.

hansenpic_blurnoise.png hansenpic_recon_estim_steps_D_1.png

Vorkenntnisse: Numerisches Programmieren oder Numerik, Lineare Algebra

Kontakt: Univ.-Prof. Dr. Thomas Huckle, Matous Sedlacek

Molecular Dynamics Simulation

Molecular Dynamics Simulation deals with the simulation of materials (or mixtures of materials) on a molecular level. Even for a small simulation domains the number of particles in that domain (millions of particles) and therefore the computational effort is immense. What makes it even worse is that the molecules are often not evenly distributed in the simulation domain. Therefore, efficient algorithms and parallelisation strategies are necessary to deal with this computational challenge. The focus of student work in this field is mainly on data structures and parallelisation but can also be in any other field related to molecular dynamics.

StudentProjects moldyn.jpg

Examples for challenges in this field are:

  • Load-balanced parallelization using space-filling curves and KD-trees
  • Adaptive data structures for finding neighbour particles
  • Improved time stepping schemes


  • Basic programming skills (in the best case C++)



Verkehr spielt heutzutage eine immer größere und wichtigere Rolle. So ist Mobilität ein integraler Bestandteil unseres täglichen Lebens geworden. Zudem müssen Tag für Tag große Mengen an Waren um den ganzen Globus transportiert werden. Damit geht ein wachsendes Verkehrsaufkommen einher. Die Folgen kann jeder in Form von Staus, Umwelt- und Lärmbelastungen erleben.

Verkehrssimulationen sind ein geeignetes Mittel kostengünstig Engpässe und Probleme zu identifizieren und Lösungsstrategien zu entwickeln. Simulationen können dabei auf mikroskopischer Ebene, bei der die einzelnen Verkehrsteilnehmer und deren individuelles Verhalten betrachtet werden, oder auf makroskopischer Ebene durchgeführt werden. Hierbei werden lediglich Flüsse und Durchschnittswerte untersucht.

Themen sind dabei:

  • Mikroskopische Simulationen mittels zellulärer Automaten
  • Makroskopische Simulationen
  • Parallelisierungsstrategien für verschiedene Simulationsmodelle
  • Graphpartitionierungen und Hierarchisierungen für Verkehrsnetze

Anmerkung: Im Augenblick haben wir (personell bedingt) kein laufendes Projekt. Wir bieten aber weiterhin Lehrveranstaltungen an (Seminare, PSEs, ...) - mehr dazu unter Teaching.

Kontakt: Alexander Heinecke

Reduced Basis Methoden

Wir betrachten Partielle Differentialgleichungen welche von verschiedenen Parametern abhängig (z.B. Materialeigenschaften). Üblicherweise wird die Lösung zu einer beliebigen aber zulässigen Parameterkonfiguration in einem sehr allgemein (z.B. Finite Elemente) Raum bestimmt. Oft sind die "effektiven Lösungen" jedoch nicht gleichmäßig über den gesamten Raum verteilt, sondern liegen auf einer niedrig-dimensionalen und glatten Mannigfaltigkeit. Die Reduced Basis Methoden bestimmen daher eine Lösung in einem problem-abhängigen, niedrig-dimensionalen Unterraum, was zu einer erheblichen Effizienzsteigerung führen kann.

Zusätzlich wird das Verfahren in eine Offline und eine Online Phase unterteilt. Zuerst wird in der Offline Phase der problem-abhängige Unterraum bestimmt (d.h. die reduzierte Basis konstruiert), und anschließend in der Online Phase für beliebige (aber zulässige) Parameter die Reduced Basis Lösungen bestimmt.


Bei den Reduced Basis Methoden ist vieles noch nicht abschließend geklärt. Vor allem die Erweiterung auf neue Problemklassen lässt noch viele Fragen offen. Wir betrachten Reduced Basis Methoden in Hinblick auf Dünne Gitter. Wo können hier Dünne Gitter eingesetzt werden? Unter welchen Umständen bzw. für welche Probleme lohnen sich Dünne Gitter?

Voraussetzung sind Grundkenntnisse im Bereich Numerik und Programmiererfahrung. Kenntnisse über Dünne Gitter und Reduced Basis Methoden können sich während der Bearbeitung angeeignet werden.

Kontakt: Benjamin Peherstorfer

Free Surface Lattice Boltzmann on GPUs

lbm_screenshot.jpg lbm_animation.gif

Left handed image: Interactive fluid simulation (based on Lattice Boltzmann method) and visualization (volume tracing, photon mapping). Right handed image: Breaking dam simulation.

Recently the interest in interactive simulations has steadily increased. For fluid mechanics, the Lattice Boltzmann method became quite interesting due to its uniform grid and the strictly adjacent-cells-only communication.

Making use of the newest GPU hardware, several basic implementations have been developed to gain the maximum performance out of GPU architectures. However, for free surface flows (see the image above), several problems have to be solved - e. g. improving the performance of the simulation and improving the speed and accuracy of the visualization.

Contact: Martin Schreiber

Video: [1]