Abschlussarbeiten

Themengebiete

Bachelor-, Diplom- und Masterarbeiten werden in den Themengebieten

  • Sicherheit im Internet
  • Paralleles Programmieren und
  • Fehlertoleranz

vergeben.

Vergabe eines Themas

Wegen der großen Zahl von derzeit betreuten und bereits für die nähere Zukunft vergebenen Abschlussarbeiten in Verbindung mit den sehr begrenzten personellen Ressourcen des Lehrgebietes und dem Zwang, die Forschungen des Lehrgebiets vorwiegend auf Drittmitteleinwerbung auszurichten, kann auf absehbare Zeit nur eine begrenzte Zahl von Abschlussarbeiten betreut werden, insbesondere die Möglichkeit für Abschlussarbeiten bei Arbeitgebern sind stark beschränkt. Wir bedauern diesen Schritt sehr.

Die Themen für Wintersemester 2019/20 sind bereits vergeben.
Allerdings konnten die folgenden Themen nicht vermittelt werden und sind somit zum nächstmöglichen Beginn zu vergeben

1) Empfehlungen für Pendler auf Basis von Verkehrsinformationen

Im Rahmen des Projekts STREAM wird eine App entwickelt, mit der Pendler angeben können, in welchem Zeitraum sie an ihrem Ziel ankommen müssen, und welchen Weg sie nehmen. Diese Pendler erhalten eine Empfehlung, zu welcher Uhrzeit sie am besten losfahren, um ihre Fahrzeit zu minimieren. Ausgehend von aus der Vergangenheit erlernten Verkehrsflüssen und dem am Morgen beginnenden Verkehrsfluss existiert eine Vorhersage des weiteren Verkehrsflusses. In der Abschlussarbeit soll anhand zunächst einer Straßenkreuzung und dann einer Kombination von Straßenkreuzungen ein System zur Errechnung der Empfehlungen implementiert werden. Schon eine Einzelempfehlung ist nicht trivial, denn die Fahrzeit hängt nicht nur vom aktuellen Durchsatz an dieser Kreuzung, sondern auch von der Länge der Fahrzeugschlange vor der Kreuzung ab. Gibt man mehrere Empfehlungen ab, so muss dafür gesorgt sein, dass Staus vermieden und nicht nur verlagert werden.

2) Statische Behandlung von mehreren Hardware-Fehlern in Multi-Variant-Programmen

Unter Multi-Variant-Programmen verstehen wir Programme, die sich als Sequenz von Tasks schreiben lassen, wobei jede Task in mehreren Varianten (für evtl. unterschiedliche Plattformen wie Single-Core, Multi-Core, GPU, FPGA) vorliegt, mit unterschiedlichem Zeit- und Energieaufwand. Keller und Kessler (ARCS2019) untersuchen für solche Programme, wie man vor Ablauf einen Schedule generieren kann, so dass im Fehlerfall ohne Aufwand, d.h. schnell, ein alternativer Schedule für den restlichen Ablauf gefunden werden kann. Hierfür werden auch eine triviale und eine effizente Implementierung des Schedulers vorgestellt. Für die effiziente Implementierung ist eine bereits bekannte Alternative zu implementieren, und alle 3 Implementierungen auf den Fall mehrerer Fehler zu erweitern und vergleichend zu evaluieren.

3) Statische Behandlung von Hardware-Fehlern in Multi-Variant-Programmen mit beliebigen Abhängigkeiten

Unter Multi-Variant-Programmen verstehen wir Programme, die sich als Sequenz von Tasks schreiben lassen, wobei jede Task in mehreren Varianten (für evtl. unterschiedliche Plattformen wie Single-Core, Multi-Core, GPU, FPGA) vorliegt, mit unterschiedlichem Zeit- und Energieaufwand. Allgemeiner kann man sich statt einer Sequenz auch einen Taskgraphen vorstellen. Keller und Kessler (ARCS2019) untersuchen für Multi-Variant-Programme (als Sequenz), wie man vor Ablauf einen Schedule generieren kann, so dass im Fehlerfall ohne Aufwand, d.h. schnell, ein alternativer Schedule für den restlichen Ablauf gefunden werden kann. Hierfür werden auch eine triviale und eine effizente Implementierung des Schedulers vorgestellt. Diese Herangehensweise soll auf den Fall von Taskgraphen erweitert werden. Hierfür sind ein triviales und ein effizientes Verfahren zu implementieren und beide Implementierungen vergleichend zu evaluieren.

4) Heuristiken für Profit Maximizing beim Betrieb von HPC Clustern auf Basis von Queuing Priorities

Beim Betrieb eines HPC Clusters erhält der Betreiber Einnahmen, wenn er Kunden-Tasks ausführt (hat dabei aber auch Betriebskosten), oder er muss eine Konventionalstrafe zahlen, wenn er aus Überlast Tasks nicht fristgerecht ausführt. Für den Fall eines quasi-Batch-Betriebs, bei dem eine Mehrzahl parallelisierbarer Tasks mit gemeinsamer Deadline verplant werden sollen, sollen Verfahren zur Auswahl der auszuführenden Tasks (Litzinger et al. PDP 2020), die den Gewinn maximieren, mit Heuristiken verglichen werden, die aus dem Bereich der Warteschlangentheorie (Multi-Queues, mehrere Server) stammen. Die Heuristiken sind anhand vorhandener Benchmark-Datensätze zu vergleichen.

5) Optimierung zweier sukzessiver MPI_Gather-Operationen mit ungleich verteilten Nachrichten-Längen

Träff (IEEE TPDS 2019) hat eine Konstruktion für den Kommunikationsbaum einer Gather-Operation vorgestellt, die vorteilhaft ist, wenn die Nachrichten der verschiedenen Prozesse und damit die Zeiten zur Kommunikation dieser Nachrichten unterschiedlich lang sind.
Diese Konstruktion kann dahingehend erweitert werden, dass die MPI-Prozesse die Gather-Operation zu verschiedenen Zeiten erreichen.
In der Abschlussarbeit soll dies implementiert und dahingehend ausgewertet werden, dass zwei aufeinander folgende Gather-Operationen
im Zusammenhang optimiert werden (im Vergleich zu separater Optimierung). Bei einer Masterarbeit soll weiterhin untersucht werden, ob und wie die beiden Gather-Operationen innerhalb einer Optimierung optimiert werden können.

Bei Interesse senden Sie bitte eine E-Mail an Herrn Prof. Dr. Jörg Keller.

Weitere Themen können auslastungsbedingt erst im April 2020 auf dieser Webseite bekanntgegeben werden. Bzgl. Abschlussarbeits-Themen im Bereich IT-Sicherheit können Sie zwischenzeitlich Herrn PD Dr. Mario Kubek kontaktieren.

23.01.2020