Praktikum Algorithmentechnik (Algorithm Engineering - Routenplanung)

Allgemeines

  • Termin: Mittwochs 3. Block von 11:30 - 13:00 im Poolraum 305
  • Teilnahme: Das Praktikum ist voll.
  • Studiengang: Master Informatik/Informationswirtschaft. Kann nach rechtzeitiger Rücksprache in den Bachelor Informatik vorgezogen werden. Weitere nach Rücksprache.
  • Module: Praktikum Algorithmentechnik [IN4INALGOP], Algorithm Engineering für Routenplanung [IN4INAERP]
  • Credits: 6 ECTS (4 SWS)

Aktuelles

  • Vorbesprechung ist am Montag den 21.10 um 14:00 im Seminarraum 301 des Infobaus.
  • Nähere Informationen folgen in der Vorbesprechung.

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 zwei bis drei 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.

Themen

Folgenden Themen sollen einen Vorgeschmack auf den Inhalt des Praktikums geben. Die konkrete im Team zu bearbeitende Aufgabe wird in der Vorbesprechung festgelegt:

  • Sehr schnelle Distanzanfragen zwischen zwei Punkten in einem Straßennetzwerk. (Hub-Labeling)
  • Schnelle Pfadsuche bei sich ändernden Reisezeiten. (Customizeable Route Planning)
  • Schnelle Berechnung von kürzeste Wege-Bäume für eine schnelle Vorberechnung. (PHAST)
  • Eventuell noch weitere Themen.

Material

Hier findet ihr nützliche Materialien zum Praktikum

Aufgabenblätter:

Folien:

Literatur

Generell lohnt sich der Blick in die Folien der Routenplanungsvorlesung

CRP

  • Daniel Delling, Andrew V. Goldberg, Thomas Pajor, and Renato F. Werneck, Customizable Route Planning. In: Proceedings of the 10th International Symposium on Experimental Algorithms (SEA'11), volume 6630 of Lecture Notes in Computer Science, pages 376-387. Springer, 2011. PDF

Hub Label

  • Ittai Abraham, Daniel Delling, Andrew V. Goldberg, and Renato F. Werneck, A Hub-Based Labeling Algorithm for Shortest Paths on Road Networks, in Proceedings of the 10th International Symposium on Experimental Algorithms (SEA'11), Springer Verlag, May 2011. html
  • Ittai Abraham, Daniel Delling, Andrew V. Goldberg, and Renato F. Werneck, Hierarchical Hub Labelings for Shortest Paths, in Proceedings of the 20th Annual European Symposium on Algorithms (ESA'12), Springer, 2012. html

PHAST