Praktikum Algorithmentechnik (Algorithm Engineering - Routenplanung)
Allgemeines
- Anmeldung: Michael Zündorf
- Plätze: 9 Plätze (keine Plätze mehr frei, es gibt eine Warteliste)
- Studiengang: Master Informatik/Informationswirtschaft. Kann nach rechtzeitiger Rücksprache in den Bachelor Informatik vorgezogen oder eingebracht werden. Weitere nach Rücksprache.
- Modul: Praktikum Algorithmentechnik [M-INFO-102072]
- Credits: 6 ECTS (4 SWS)
Vorläufige Termine
Termin | Datum | Uhrzeit | Raum | ||
---|---|---|---|---|---|
Vorbesprechung | Mittwoch, den 25. Okt. 2023 | 14:00-15:30 | Raum -120 | ||
Abgabe Übungsblatt | Dienstag, den 21. Nov. 2023 | 23:59 | – | ||
Themen & Gruppeneinteilung | Mittwoch, den 22. Nov. 2023 | 14:00-15:30 | Raum -120 | ||
Anfangsvorträge | Mittwoch, den 6. Dez. 2023 | 14:00-15:30 | Raum -120 | ||
Zwischentreffen | 22.-26. Jan. 2024 | – | – | ||
Abgabe Ausarbeitung | Mittwoch, den 6. Mär. 2024 | 23:59 | – | ||
Abschlussvorträge | Mittwoch, den 20. Mär. 2024 | 14:00-15:30 | Raum -120 |
Bei allen Terminen gilt Anwesenheitspflicht. Da die Plätze begrenzt sind, behalten wir uns vor Plätze weiter zu vergeben, solltet ihr unentschuldigt fehlen.
Hintergrund
Optimale Routen in Verkehrsnetzen zu bestimmen ist ein alltägliches Problem. Wurden früher Reiserouten mit Hilfe von Karten am Küchentisch geplant, ist heute die computergestützte Routenplanung in weiten Teilen der Bevölkerung etabliert: Die beste Eisenbahnverbindung ermittelt man im Internet, für Routenplanung in Straßennetzen benutzt man häufig mobile Endgeräte.
Ein gängiger Ansatz das Problem zu lösen ist das Transportnetzwerk auf geeignete Weise als einen Graphen zu modellieren. Eine optimale Verbindung entspricht dann einem kürzesten Weg in diesem Graphen. Zwar löst Dijkstra's Algorithmus dieses Problem beweisbar optimal, jedoch ist aufgrund der hohen Datenmenge (Straßennetzwerke von kontinentaler Größe haben mehrere Millionen Knoten und Kanten) dieser Ansatz selbst auf moderner Server-Hardware zu langsam und daher nicht praktikabel.
Aus diesem Grund ist die Routenplanung ein sehr aktiver und vielfältiger Forschungsbereich in der experimentellen Algorithmik. Neben der grundlegenden Fragestellung nach schnelleren Methoden Routen auf Straßennetwerken zu berechnen, sind insbesondere auch Aspekte wie All-Pairs Shortest-Path, Alternativrouten, Fahrplanauskunft oder dynamische Techniken, die in Echtzeit mit Staus oder Verspätungen umgehen können, von Interesse.
Dieses Praktikum soll interessierten Studenten die Möglichkeit geben brandaktuelle Techniken aus dem Bereich Routenplanung zu implementieren und experimentell zu evaluieren. Neben der Korrektheit der implementierten Algorithmen liegt dabei ein Schwerpunkt auf der Performance (Zeit und Speicherverbrauch). Das Praktikum ist eine Ergänzung zur Vorlesung Algorithmen für Routenplanung, die jeweils im Sommersemester stattfindet. Eine kurze Einführung der wichtigen Grundlagen zu Beginn gibt aber auch Studenten ohne spezielle Vorkenntnisse die Möglichkeit zur Teilnahme.
Ablauf
In einem ersten Präsenztermin wird zunächst eine theoretische Fundierung des Stoffes vermittelt werden; daneben wird Gelegenheit zur praktischen Einarbeitung in die Thematik und die verwendeten Bibliotheken an Hand einiger Aufwärmaufgaben gegeben sein. Im Anschluss daran werden in Teams von drei (in Ausnahmefällen zwei) Personen und individueller Betreuung durch Lehrstuhlmitarbeiter eine oder mehrere größere Aufgaben bearbeitet werden. Jeweils etwa zu Semesterhalbzeit und -ende wird jede Gruppe in einer Präsentation ihre bisherige Arbeit vorstellen. Abschließend ist eine schriftliche Ausarbeitung der Ergebnisse in LaTeX zu erstellen.
Voraussetzungen
Für die Teilnahme am Praktikum sind Grundkenntnisse aus den Bereichen Algorithmentechnik und Graphentheorie sowie Grundkenntnisse in C++ (oder verwandten Sprachen) empfehlenswert (fehlende Kenntnisse werden durch die Aufwärmübungen aufgearbeitet, dadurch eventuell erhöhter Zeitaufwand wird jedoch nicht in den ECTS berücksichtigt). Ein Besuch der Vorlesung Routenplanung ist nicht erforderlich.