Department of Computer Science
Chair of Algorithm Engineering (Ls11)
Home Contact Deutsch English
menu-en
Algorithm Engineering

Algorithm Engineering

(Spezialvorlesung 042157)

Wintersemester 2005/06

Prof.Dr. Petra Mutzel

Termin:   
Montag12:15 - 14:00HG I / HS 2
Dienstag14:15 - 16:00HG I / HS 2
Beginn:17.10.2005

Siehe auch: Übungen zu Algorithm Engineering


Zugangsvoraussetzungen

Vordiplom

Kommentar

Algorithm Engineering beinhaltet das Design von Algorithmen, ihre theoretische Analyse sowie ihre experimentelle Analyse am Rechner. Dabei liegt der Schwerpunkt auf der praktischen Seite.

Die klassische Algorithmik beschränkte sich lange Zeit auf die Theorie. Viele Publikationen beschreiben die Algorithmen und Datenstrukturen unter "idealen Voraussetzungen", die jedoch in der Praxis häufig nicht gegeben sind. Auch wurden zunehmend hochkomplexe Datenstrukturen verwendet, die allgemein als "praktisch nicht implementierbar" galten. Mit der zunehmenden Anwendung der theoretischen Ergebnisse in der Praxis merkte man, dass eine große Lücke zwischen Theorie und Praxis existiert. Das Gebiet des Algorithm Engineering soll dem entgegenwirken, indem es Algorithmen für die Praxis entwirft und analysiert, evaluiert und darauf aufbauend verbessert.

Nach einer Einführung werden spezielle ausgewählte Themen behandelt. An dem Beispiel "Dynamische Kürzeste Wege" wird ein typischer Algorithm Engineering Kreislauf dargestellt. Einen wichtigen Themenaspekt bilden die Externspeicheralgorithmen inkl. cache-effizienter Algorithmen, denn die realen Rechenmaschinen entfernen sich zunehmend vom idealisierten Neumann-Modell. Hierzu betrachten wir einige grundlegende Datenstrukturen sowie einfache Algorithmen für grundlegende Probleme wie z.B. Sortieren. Weitere Themen beinhalten Algorithmen für NP-schwierige kombinatorische Optimierungsprobleme aus dem Netzwerk-Design, der Bioinformatik und dem Graphenlayout. Ein Kapitel widmet sich auch dem Design von experimentellen Analysen von Algorithmen.

Literatur

Es gibt noch kein Buch zu diesem Thema. Zu den jeweiligen Themengebieten wird die Literatur in der Vorlesung bekannt gegeben.

Skriptausschnitte zu einigen Vorlesungen:

Folien und Vorlesungsmitschriften

Die Folien zur Vorlesung gibt es jeweils in zwei Versionen: mit 1 Folie pro Seite (zum Anschauen) und mit 6 Folien pro Seite (zum Ausdrucken).

Einführung in AE (17.10.): [1 Folie/Blatt] [6 Folien/Blatt]
2-Schichten Kreuzungsminimierung (18.10.): [1 Folie/Blatt] [6 Folien/Blatt]
Das Linear Ordering Problem (24.10.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Das Rucksackproblem (25.10.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Das Traveling Salesman Problem (31.10.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Kürzeste Wege (14.11.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Fraktionale Optimierung (15.11./21.11.05): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Kürzeste Wege (Fortsetzung) (21.11.): [1 Folie/Blatt] [6 Folien/Blatt]
Dynamische kürzeste Wege (22.11.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Dynamische kürzeste Wege (Fortsetzung) (28.11.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Dynamisches SSSP (Ramalingam,Reps) (29.11.): [1 Folie/Blatt] [6 Folien/Blatt] Mitschrift [pdf] [ppt]
Dynamisches APSP (5.12.): [1 Folie/Blatt] [6 Folien/Blatt]
Einführung in Externspeicher Algorithmen (5.12.): [1 Folie/Blatt] [6 Folien/Blatt]
Externes Sortieren (6.12.): [1 Folie/Blatt] [6 Folien/Blatt]
Externe Array-Heaps (12.12.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Cache-Optimale Algorithmen (13.12.): [1 Folie/Blatt] [6 Folien/Blatt]
3-Zusammenhangskomponenten (2./3.01.): [1 Folie/Blatt] [6 Folien/Blatt]
Non-Planar Core Reduction (9./10.01.): [1 Folie/Blatt] [6 Folien/Blatt]
Suffix Arrays (16.01.): [1 Folie/Blatt] [6 Folien/Blatt]
Suffix Arrays (17.01.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Sequenzen Alignierung (23.01.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Multiple Sequenzen Alignierung (24.01.): [1 Folie/Blatt] [6 Folien/Blatt]
Maximum Weight Trace (30.01.): [1 Folie/Blatt] [6 Folien/Blatt] [Mitschrift]
Kreuzungszählen (31.01.): [1 Folie/Blatt] [6 Folien/Blatt]
Fibonacci Heaps (06./07.02.): [1 Folie/Blatt] [6 Folien/Blatt]
Letzte Vorlesung (07.02.): [1 Folie/Blatt] [6 Folien/Blatt]
Imprint
<webmaster  ls11.cs.tu-dortmund.de>
The university does not accept liability for the contents of linked external internet sites