Studierende sollen durch dieses Modul folgende Kompetenzen erwerben:
Sie verstehen die Ursachen und Gründe, die zu einer wachsenden Kluft zwischen klassischer Algorithmentheorie und angewandter Praxis geführt haben.
Sie können unterschiedliche Modellierungen für algorithmische Problemstellungen vergleichen und in Bezug auf ihre Eignung zur effizienten Lösung beurteilen. Sie können für neue Problemstellungen eigene Modellierungen entwickeln.
Sie sind mit allen Aspekten der Planung, Durchführung und Auswertung von algorithmischen Experimenten vertraut und können experimentelle Untersuchungen selbstständig durchführen.
Sie können verschiedene Algorithmen qualitativ und quantitativ miteinander vergleichen und deren Leistungsfähigkeit mit Hilfe der Auswertung experimenteller Daten beurteilen.
Sie sind in der Lage, fortgeschrittenen Methoden zur Analyse von Algorithmen (u.a. amortisierte, geglättete und kompetitive Analyse) anzuwenden.
Modulinhalte
Algorithm Engineering ist ein relativ neues Teilgebiet der Algorithmik, das das zentrale Anliegen verfolgt, die bestehende Kluft zwischen klassischer Algorithmentheorie und angewandter
Praxis zu überwinden. Zu den Ursachen der Kluft gehören eine steigende Komplexität der Probleme, riesige Datenmengen und moderne Hardwarearchitekturen, auf die das Rechenmodell einer Registermaschine nicht mehr passt. Ausgehend von konkreten Anwendungen werden im Algorithm Engineering alle Aspekte gleichberechtigt nebeneinander betrachtet, die im Laufe eines typischen Lösungsprozesses auftreten: angemessene Modellierung, Algorithmenentwurf und Analyse, robuste und effiziente Implementation sowie Experimente sowie die zyklische Wiederholung dieser Stationen. Behandelt werden in diesem Modul unter anderem
der Entwicklungszyklus im Algorithm Engineering,
Design und Analyse von Algorithmen für komplexe Anwendungen,
realistische Rechnermodelle und Modelle mit externem Speicher,
die Planung, Durchführung und Auswertung von Experimenten,
das Design von Algorithmenbibliotheken und
konkrete Fallstudien (z. B. aus kombinatorischer Optimierung und algorithmischer Geometrie).
Lehrveranstaltungsformen
Vorlesung (3 SWS)
Kursus
Übung (1 SWS)
Kursus
Unterrichtsprachen
Deutsch, Englisch
Dauer in Semestern
1 Semester Semester
Angebotsrhythmus Modul
jedes Sommersemester
Aufnahmekapazität Modul
unbegrenzt
Prüfungsebene
Credit-Points
5 CP
Modulabschlussnote
LV1: %; LV2: %; LV3: %; LV4: %.
Faktor der Modulnote für die Endnote des Studiengangs
1
Hinweise
Basismodul für die Vertiefungsrichtung "Algorithmen und Theoretische Informatik" und als Vertiefungsmodul für die Vertiefungsrichtungen "Softwaretechnik und Übersetzerbau" und "eHumanities" im Masterstudiengang Informatik ab Version 2013.
Modulveranstaltung
Lehrveranstaltungsform
Veranstaltungstitel
SWS
Workload Präsenz
Workload Vor- / Nachbereitung
Workload selbstgestaltete Arbeit
Workload Prüfung incl. Vorbereitung
Workload Summe
LV 1
Vorlesung
Vorlesung
3
0
LV 2
Kursus
Selbststudium zur Vorlesung
0
LV 3
Übung
Übung
1
0
LV 4
Kursus
Bearbeitung der Übungsaufgaben
0
Workload modulbezogen
150
150
Workload Modul insgesamt
150
Prüfung
Prüfungsvorleistung
Prüfungsform
LV 1
LV 2
LV 3
LV 4
Gesamtmodul
Regelmäßige Teilnahme und aktive Mitarbeit in den Übungen (Darstellung der Problemlösung in den Übungen), erfolgreiche Bearbeitung der Übungsaufgaben, wobei 50 % der erreichbaren Punkte erzielt werden müssen