Vorlesungsbegleitendes Forschungspraktikum
im Wintersemester 2023/24

Prof. Dr. Bernhard Beckert, Dr. Mattias Ulbrich, Dr. Michael Kirsten

Typ: Praktikum
Zielgruppe: Master Informatik
Umfang: 5 Leistungspunkte (3 Praktikum + 2 Schlüsselqualifikation)
Ort: n.V.
Veranstaltungs-Nr.: 2400049

Zur Seite der Vorlesung

Inhalt

In diesem Semester bieten wir neben der Vorlesung ein optionales begleitendes Forschungspraktikum im Umfang von insgesamt fünf Leistpungspunkten (LP) (davon zwei Schlüsselqualifikation (SQ)) an. Hierbei handelt es sich um ein Projektpraktikum, in dem über das ganze Semester an einem Thema gearbeitet wird (und nicht an verschiedenen Aufgabenblättern). Die Bearbeitung aktueller Forschungsthemen erfordert hierbei ein größeres Maß an Eigeninitiative als dies bei im Vorhinein festgelegten Praktika der Fall ist. Die Fortschritte werden dabei regelmäßig mit einem bzw. einer betreuenden Mitarbeitenden der Forschungsgruppe diskutiert.

Zu Beginn der Vorlesung werden Themen vorgestellt, für die sich die Teilnehmer:innen innerhalb der ersten Woche bewerben können (die Plätze sind begrenzt!). Das Forschungspraktikum basiert thematisch auf in der gekoppelten Vorlesung vermittelten Inhalten. Die praktische Forschungsaktivität ist Teil einer (größeren) Forschungsaktivität der Forschungsgruppe und trägt zu deren Erfolg bei.

Beispiele für solche Forschungsaktivitäten sind etwa die Entwicklung eines Prototypen oder die Durchführung einer Evaluation (u.ä.). Am Ende des Semesters werden die Ergebnisse des Forschungspraktikums auf drei bis fünf Seiten dokumentiert, sowie zum letzten Vorlesungstermin im Rahmen eines Kolloquiums in jeweils etwa 10 bis 15 Minuten präsentiert und in einer anschließenden Fragerunde diskutiert.

Qualifikationsziele

  • Einen Forschungsansatz und die eigene Forschungs(teil-)aufgabe verstehen, begründen, bewerten und einordnen können
  • Aus der Aufgabenbeschreibung konkrete Arbeitsschritte entwickeln können
  • In dem Forschungsbereich des Projekts wissenschaftlich arbeiten können
  • Die für das Projekt relevanten inhaltlichen Grundlagen kennen, einsetzen und die Relevanz für die Fragestellung bewerten können
  • Forschungsergebnisse dokumentieren, zusammenfassen und präsentieren, sowie diskutieren können

Methodische Begleitveranstaltungen

Neben der Forschungsarbeit umfasst das Praktikum auch die folgenden mit der Projektarbeit verzahnten methodischen Veranstaltungen im Rahmen von zwei Leistungspunkten (LP), die im Rahmen des Forschungspraktikums als Schlüsselqualifikationsleistungen zu besuchen sind:

  • Literaturrechereche und Zitieren (2,0 Stunden)
  • Projektmanagementworkshop (7,0 Stunden)
  • Präsentationsworkshop (8,0 Stunden)
  • Erkenntnistheorie (1,5 Stunden)
  • Wissenschaftstheorie (1,5 Stunden)
  • Workshop zum Aufstellen einer Forschungsfrage (3,0 Stunden)
  • Schreiben von Forschungsanträgen (1,5 Stunden)
  • Experimentaldesign (1,5 Stunden)

Die Workshops zu Projektmanagement und Präsentationen finden in Kooperation mit dem House of Competence (HoC) statt. Alle Veranstaltungen sind gezielt auf Forschungsprojekte im Bereich der Informatik ausgerichtet. Die Termine der Veranstaltungen werden zu Vorlesungsbeginn bekanntgegeben.

Themen

Die Themen werden zu Beginn der Vorlesung vorgestellt. Zudem sind wir offen für Themenvorschläge, die im Zusammenhang zur Vorlesung bzw. zur Forschung unserer Forschungsgruppe stehen. Beispiele hierfür sind Forschungsaktivitäten wie etwa die Entwicklung eines Prototypen oder die Durchführung einer Evaluation ausgewählter formaler Methoden (u.ä.). An dieser Stelle werden wir vor Beginn der Vorlesung eine Auswahl geplanter Themen auflisten. Bei Fragen hierzu können Sie sich bereits im Vorfeld bei den genannten Ansprechpersonen melden. Gern gesehen sind auch Initiativanfragen zu Themengebieten unserer Forschungsgruppe.

  • Modellierung und Verifikation eines Smart Contracts für ein Casino-Szenario

    Smart Contracts sind Programme, die bestimmte Funktionalitäten in einem dezentralen Netzwerk zur Verfügung stellen. Da sie oft den Zugang zu Währung oder anderen Ressourcen verwalten, ist es sehr wichtig, schon vor der Veröffentlichung des Programms zu überprüfen, ob es sich immer korrekt verhält. Zu diesem Zweck kann es sinnvoll sein, eine Smart-Contract-Anwendung auf einer abstrakteren Ebene zu modellieren, um dann beispielsweise Safety- und Livenesseigenschaften spezifizieren und beweisen zu können.

    In diesem Projekt soll ein bereits existierender Smart Contract als abstrakte Maschine in einer System-Spezifikationssprache modelliert werden, z.B. Event-B oder Quint. Das Praktikum beinhaltet auch eine Einarbeitung in die relevanten Tools (z.B. Rodin oder den Model-Checker Apalache). Damit soll versucht werden, Safety- und Livenesseigenschaften des entstandenen Modells zu spezifizieren und verifizieren.

    Betreuung: Jonas Schiffl

  • Automatisches Finden von Wahlmanipulationen mittels Bounded Model Checking

    Die strategische Manipulation eines Wahlverfahrens ist die Abgabe einer Stimme, die von der eigenen Präferenz abweicht, mit dem Ziel, das Wahlergebnis stärker (als die "wirklich" präferierte Stimme) hin zur eigenen Präferenz zu beeinflussen. Es gibt ein grundsätzliches Ergebnis, dass jedes nicht-diktatorische Wahlverfahren mit mindestens drei Alternativen für solche Manipulationen anfällig ist. Manche Wahlverfahren lassen sich jedoch einfacher manipulieren als andere. Traditionell wird diese Fragestellung komplexitätstheoretisch untersucht, in neueren Arbeiten aber auch konkret quantifiziert.

    Das Projekt beinhaltet die Einarbeitung in obige Fragestellung, die Formalisierung einer solchen Quantifizierung für einfache Scoring-Wahlverfahren (z. B. relative Mehrheitswahl, Borda, ...) und die Entwicklung und Evaluation einfacher Experimente für den Bounded Model Checker CBMC, um solche Manipulationen für ein Wahlverfahren automatisch zu generieren und bewerten zu können.

    Betreuung: Michael Kirsten

  • Splitting Oracles für die Verifikation Neuronaler Netze

    Die Verifikation neuronaler Netze mit stückweise linearen Aktivierungsfunktionen ist NP-schwer. Zurzeit bauen die meisten Solver auf einer Mischung von Überapproximation und Branch-and-Bound-Techniken für die Eingabevariablen oder den Zustand der Aktivierungsfunktionen auf.

    In diesem Projekt soll untersucht werden, ob sich der Verifikationsprozess beschleunigen lässt, wenn man zuerst ein Netzwerk, das sich ähnlich zum ursprünglichen Netzwerk verhält – aber kleiner (und damit schneller zu verifizieren) ist – verifiziert. Dabei sollen die Splits des Solvers für dieses einfachere Netz aufgezeichnet werden. Die Hoffnung ist, dass diese Splits schon ausreichen, die gewünschte Eigenschaft auch auf dem größeren ursprünglichen Netz zu zeigen.

    Das Projekt beinhaltet die Einarbeitung in das Themengebiet der Verifikation neuronaler Netze, sowie die Benutzung und Erweiterung eines bestehenden Solvers zur Implementierung der Projektidee und die anschließende Evaluation.

    Betreuung: Philipp Kern

Ansprechperson

Bei Fragen rund um das Thema Forschungspraktikum (hier oder bei anderen Vorlesungen) können Sie sich bei Michael Kirsten melden.