Online-Algorithmen (BA-INF 119)

Termine

Art Wann Wo Beginn LP Dozent
V4
Dienstag 8:30 - 10:00
Donnerstag 8:30 - 10:00
AVZ III / HS 1
AVZ III / HS 1
5. April 2012 5 Röglin
Ü2
Dienstag 10:15 - 11:45
Donnerstag 10:15 - 11:45
AVZ III / A6c
AVZ III / A6c
10. April 2012 3 Brunsch, Liss, Röglin

Inhalt

Bei der Lösung von Optimierungsproblemen sind wir in den einführenden Vorlesungen stets davon ausgegangen, dass die konkrete Eingabe dem Algorithmus von Anfang an komplett bekannt ist. In manchen Anwendungen ist das aber nicht der Fall und die Eingabe wird erst Schritt für Schritt aufgedeckt. Probleme mit dieser Eigenschaft nennt man Online-Probleme. Die Speicherverwaltung eines Rechners muss beispielsweise bei dem Ausführen eines Programms, ohne dessen zukünftiges Verhalten zu kennen, entscheiden, welche Seiten im CPU-Cache gehalten und welche in den Hauptspeicher ausgelagert werden. Auch im Wirtschaftsleben sind Online-Probleme keine Seltenheit. Autofahrer stehen beispielsweise oft vor der Entscheidung, wann sie eine Tankstelle anfahren, ohne die Entwicklung der Spritpreise in den nächsten Tagen zu kennen.

Man könnte meinen, dass man bei solchen Online-Problemen algorithmisch wenig ausrichten kann. Weiß man nicht, auf welche Seiten ein Programm als nächstes zugreifen wird, so kann man scheinbar keine sinnvolle Entscheidung treffen, welche Seiten in den Hauptspeicher ausgelagert werden sollten. Tatsächlich ist dies aber nicht der Fall und man kann durch geschicktes Verhalten bei Online-Problemen besser abschneiden als bei beliebigem Verhalten. Wir werden uns in der Vorlesung mit dem Entwurf und der Analyse von solchen Online-Algorithmen beschäftigen.

Datum Inhalt Literatur
5. April
1 Einleitung
2 Paging
2.1 Deterministische Algorithmen
2.1.1 Markierungsalgorithmen
Skript
10. April
2.1.1 Markierungsalgorithmen (Fortsetzung)
2.1.2 Untere Schranken
2.1.3 Optimaler Offline-Algorithmus
Skript
12. April
2.1.3 Optimaler Offline-Algorithmus (Fortsetzung)
2.1.4 Zusammenfassung der Ergebnisse
2.2 Randomisierte Algorithmen
2.2.1 Verschiedene Gegenspieler
Skript
17. April
2.2.2 Potentialfunktionen
2.2.3 Analyse von RANDOM
Skript
19. April
2.2.3 Analyse von RANDOM (Fortsetzung)
2.2.4 Analyse von MARK
Skript
24. April
2.2.4 Analyse von MARK (Fortsetzung)
2.2.5 Untere Schranke für randomisierte Online-Algorithmen
Skript
26. April
3 Das k-Server-Problem
3.1 Einführende Bemerkungen
3.1.1 Der Greedy-Algorithmus
3.1.2 Die k-Server-Vermutung
3.1.3 Optimale Offline-Algorithmen
Skript
3. Mai
3.2 Untere Schranke für deterministische Algorithmen
3.3 Das k-Server-Problem auf Linien und Bäumen
3.3.1 Analyse des DC-Algorithmus auf der Linie
Skript
8. Mai
3.3.1 Analyse des DC-Algorithmus auf der Linie (Fortsetzung)
3.3.2 Analyse des DC-Algorithmus auf Bäumen
Skript
10. Mai
3.3.2 Analyse des DC-Algorithmus auf Bäumen (Fortsetzung)
3.3.3 Anwendungen des DC-Algorithmus
Skript
15. Mai
3.4 Das 2-Server-Problem im euklidischen Raum
Skript
24. Mai
4 Approximation von Metriken
4.1 Approximation durch Baummetriken
4.1.1 Von hierarchischen Partitionen zu Baummetriken
4.1.2 Randomisierte Einbettung
Skript
5. Juni
4.1.2 Randomisierte Einbettung (Fortsetzung)
4.1.3 Der FRT-Algorithmus
Skript
12. Juni
4.2 Anwendung auf das k-Server-Problem
5 Online-Probleme beim Handel
5.1 Online-Suche und One-Way-Trading
5.1.1 Zusammenhang der beiden Problemvarianten
Skript
14. Juni
5.1.2 Algorithmen für Online-Suche
5.1.3 Optimaler Online-Algorithmus für One-Way-Trading
Skript
19. Juni
5.1.3 Optimaler Online-Algorithmus für One-Way-Trading (Fortsetzung)
5.2 Economical Caching
Skript
21. Juni
5.2.1 Ein Reservationspreisalgorithmus
Skript
26. Juni
5.2.2 Untere Schranken
Skript
28. Juni
5.2.3 Algorithmen mit fester Lagerfunktion
5.2.4 Ein optimaler Online-Algorithmus
Skript
3. Juli
6 Scheduling
6.1 Identische Maschinen
Skript
5. Juli
6.2 Maschinen mit Geschwindigkeiten
Skript
10. Juli
Wiederholung
Skript

Übungen

Die Kriterien für den Übungsschein sind regelmäßige aktive Teilnahme an den Übungen und das Erreichen von insgesamt mindestens 50% der zu erreichenden Punkte bei den Übungsaufgaben. Eine Abgabe der Übungsaufgaben in Gruppen bis zu drei Studierenden ist möglich.

Prüfungen

Es wird nach der Vorlesungszeit mündliche Prüfungen geben. Die möglichen Termine sind der 16. Juli und der 23. Juli. Bitte wenden Sie sich per E-Mail an das Sekretariat der Abteilung I, um einen Termin auszumachen.

Literatur

Die Inhalte der Vorlesung finden sich in diesem Skript, das während des Semesters kontinuierlich erweitert wird.

Weitere empfohlene Literatur: