Effiziente Algorithmen
Kapitel 6 Online-Algorithmen
Walter Unger
Lehrstuhl für Informatik 1
08.06.2012 14:01
Einleitung File-Allocation-Problem Paging-Problem
(6:2.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Inhalt I
1 Einleitung Motivation Beispiele Definitionen
2 File-Allocation-Problem Einleitung Obere Schranke Untere Schranke
3 Paging-Problem Einleitung Marking-Algorithmus Nicht-competitive Algorithmen Untere Schranke
Competitive Analyse für Zufallsalgorithmen Randomisierter Marking-Algorithmus Online-Algorithmus mit Vorteil
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.1) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.2) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.4) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.5) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.6) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.7) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.8) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.9) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.10) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.11) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Motivation (6:1.12) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Einleitung
Bisher bekam ein Algorithmus die komplette Eingabe.
Muss aber in der Praxis oft aber nicht möglich sein:
Neuer Kunde für den Handlungsreisenden.
Neuer Prozess auf Rechner.
Neue Frage in einer Prüfung.
Daher unterscheiden wir:
Offline: Der Algorithmus bekommt die komplette Eingabe und löst dann das Problem.
Online:
Der Algorithmus bekommt die Eingabe in Stücken.
Für jedes Stück der Eingabe muss der Algorithmus sofort eine Entscheidung treffen.
Getroffene Entscheidungen können nicht geändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.1) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.2) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.4) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.5) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.6) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.7) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.8) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.9) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4
a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.10) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:3.11) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online-Graphfärbung
a1 a2 a3
a4
b1 b2 b3
b4
c1 c2 c3
c4 a5
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.1) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1
a2 a3 a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.2) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1
a2 a3 a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2
a3 a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.4) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2
a3 a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.5) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3
a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.6) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3
a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.7) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3 a4
a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.8) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3 a4
a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.9) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3 a4 a5
a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.10) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3 a4 a5
a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.11) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3 a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.12) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3 a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.13) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3 a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Beispiele (6:5.14) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beispiel: Online Stabile Menge
a1 a2 a3 a4 a5 a6
b1 b2 b3 b4 b5 b6
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:7.1) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
Seiρ=ρ1, ρ2, ρ3, . . . , ρmeine Eingabesequenz für ein ProblemΠ.
Ein AlgorithmusAist ein Online-Algorithmus, wenn:
Imi-ten Schritt die Eingabe vonρi erfolgt.
Amuss aufρ1...i=ρ1, ρ2, ρ3, . . . , ρi eine Lösung fürΠangeben.
Dabei darf die Entscheidung vonAaufρ1...i−1=ρ1, ρ2, ρ3, . . . , ρi−1
nicht verändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:7.2) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
Seiρ=ρ1, ρ2, ρ3, . . . , ρmeine Eingabesequenz für ein ProblemΠ.
Ein AlgorithmusAist ein Online-Algorithmus, wenn:
Imi-ten Schritt die Eingabe vonρi erfolgt.
Amuss aufρ1...i=ρ1, ρ2, ρ3, . . . , ρi eine Lösung fürΠangeben.
Dabei darf die Entscheidung vonAaufρ1...i−1=ρ1, ρ2, ρ3, . . . , ρi−1
nicht verändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:7.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
Seiρ=ρ1, ρ2, ρ3, . . . , ρmeine Eingabesequenz für ein ProblemΠ.
Ein AlgorithmusAist ein Online-Algorithmus, wenn:
Imi-ten Schritt die Eingabe vonρi erfolgt.
Amuss aufρ1...i=ρ1, ρ2, ρ3, . . . , ρi eine Lösung fürΠangeben.
Dabei darf die Entscheidung vonAaufρ1...i−1=ρ1, ρ2, ρ3, . . . , ρi−1
nicht verändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:7.4) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
Seiρ=ρ1, ρ2, ρ3, . . . , ρmeine Eingabesequenz für ein ProblemΠ.
Ein AlgorithmusAist ein Online-Algorithmus, wenn:
Imi-ten Schritt die Eingabe vonρi erfolgt.
Amuss aufρ1...i=ρ1, ρ2, ρ3, . . . , ρi eine Lösung fürΠangeben.
Dabei darf die Entscheidung vonAaufρ1...i−1=ρ1, ρ2, ρ3, . . . , ρi−1
nicht verändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:7.5) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
Seiρ=ρ1, ρ2, ρ3, . . . , ρmeine Eingabesequenz für ein ProblemΠ.
Ein AlgorithmusAist ein Online-Algorithmus, wenn:
Imi-ten Schritt die Eingabe vonρi erfolgt.
Amuss aufρ1...i=ρ1, ρ2, ρ3, . . . , ρi eine Lösung fürΠangeben.
Dabei darf die Entscheidung vonAaufρ1...i−1=ρ1, ρ2, ρ3, . . . , ρi−1
nicht verändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:7.6) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
Seiρ=ρ1, ρ2, ρ3, . . . , ρmeine Eingabesequenz für ein ProblemΠ.
Ein AlgorithmusAist ein Online-Algorithmus, wenn:
Imi-ten Schritt die Eingabe vonρi erfolgt.
Amuss aufρ1...i=ρ1, ρ2, ρ3, . . . , ρi eine Lösung fürΠangeben.
Dabei darf die Entscheidung vonAaufρ1...i−1=ρ1, ρ2, ρ3, . . . , ρi−1
nicht verändert werden.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:8.1) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
SeiAein Online-Algorithmus undCA(ρ)die Kosten der vonA berechneten Strategie auf Eingabesequenzρ.
SeienC∗(ρ)die Kosten für eine optimale Strategie.
Dann istAc-competitive, falls es eine Konstanteagibt, so dass für jede Eingabesequenzρgilt:
CA6c·C∗(ρ) +a.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:8.2) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
SeiAein Online-Algorithmus undCA(ρ)die Kosten der vonA berechneten Strategie auf Eingabesequenzρ.
SeienC∗(ρ)die Kosten für eine optimale Strategie.
Dann istAc-competitive, falls es eine Konstanteagibt, so dass für jede Eingabesequenzρgilt:
CA6c·C∗(ρ) +a.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:8.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
SeiAein Online-Algorithmus undCA(ρ)die Kosten der vonA berechneten Strategie auf Eingabesequenzρ.
SeienC∗(ρ)die Kosten für eine optimale Strategie.
Dann istAc-competitive, falls es eine Konstanteagibt, so dass für jede Eingabesequenzρgilt:
CA6c·C∗(ρ) +a.
Einleitung File-Allocation-Problem Paging-Problem
Definitionen (6:8.4) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Definition
Definition
SeiAein Online-Algorithmus undCA(ρ)die Kosten der vonA berechneten Strategie auf Eingabesequenzρ.
SeienC∗(ρ)die Kosten für eine optimale Strategie.
Dann istAc-competitive, falls es eine Konstanteagibt, so dass für jede Eingabesequenzρgilt:
CA6c·C∗(ρ) +a.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:9.1) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Problembeschreibung
Betrachte Datei in einem Netzwerk.
Viele Nutzer wollen diese lesen.
Viele Nutzer können diese lesen.
Zur Verbesserung der Zugriffsgeschwindigkeit könnten mehrere Kopien im Netz gehalten werden.
Die Migration der Datei erzeugt Kosten.
Damit haben wir das File-Allocation-Problem (FAP).
Ziel: Entwicklung eines guten Online-Algorithmus das File-Allocation-Problem.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:9.2) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Problembeschreibung
Betrachte Datei in einem Netzwerk.
Viele Nutzer wollen diese lesen.
Viele Nutzer können diese lesen.
Zur Verbesserung der Zugriffsgeschwindigkeit könnten mehrere Kopien im Netz gehalten werden.
Die Migration der Datei erzeugt Kosten.
Damit haben wir das File-Allocation-Problem (FAP).
Ziel: Entwicklung eines guten Online-Algorithmus das File-Allocation-Problem.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:9.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Problembeschreibung
Betrachte Datei in einem Netzwerk.
Viele Nutzer wollen diese lesen.
Viele Nutzer können diese lesen.
Zur Verbesserung der Zugriffsgeschwindigkeit könnten mehrere Kopien im Netz gehalten werden.
Die Migration der Datei erzeugt Kosten.
Damit haben wir das File-Allocation-Problem (FAP).
Ziel: Entwicklung eines guten Online-Algorithmus das File-Allocation-Problem.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:9.4) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Problembeschreibung
Betrachte Datei in einem Netzwerk.
Viele Nutzer wollen diese lesen.
Viele Nutzer können diese lesen.
Zur Verbesserung der Zugriffsgeschwindigkeit könnten mehrere Kopien im Netz gehalten werden.
Die Migration der Datei erzeugt Kosten.
Damit haben wir das File-Allocation-Problem (FAP).
Ziel: Entwicklung eines guten Online-Algorithmus das File-Allocation-Problem.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:9.5) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Problembeschreibung
Betrachte Datei in einem Netzwerk.
Viele Nutzer wollen diese lesen.
Viele Nutzer können diese lesen.
Zur Verbesserung der Zugriffsgeschwindigkeit könnten mehrere Kopien im Netz gehalten werden.
Die Migration der Datei erzeugt Kosten.
Damit haben wir das File-Allocation-Problem (FAP).
Ziel: Entwicklung eines guten Online-Algorithmus das File-Allocation-Problem.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:9.6) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Problembeschreibung
Betrachte Datei in einem Netzwerk.
Viele Nutzer wollen diese lesen.
Viele Nutzer können diese lesen.
Zur Verbesserung der Zugriffsgeschwindigkeit könnten mehrere Kopien im Netz gehalten werden.
Die Migration der Datei erzeugt Kosten.
Damit haben wir das File-Allocation-Problem (FAP).
Ziel: Entwicklung eines guten Online-Algorithmus das File-Allocation-Problem.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:9.7) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Problembeschreibung
Betrachte Datei in einem Netzwerk.
Viele Nutzer wollen diese lesen.
Viele Nutzer können diese lesen.
Zur Verbesserung der Zugriffsgeschwindigkeit könnten mehrere Kopien im Netz gehalten werden.
Die Migration der Datei erzeugt Kosten.
Damit haben wir das File-Allocation-Problem (FAP).
Ziel: Entwicklung eines guten Online-Algorithmus das File-Allocation-Problem.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:9.8) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Problembeschreibung
Betrachte Datei in einem Netzwerk.
Viele Nutzer wollen diese lesen.
Viele Nutzer können diese lesen.
Zur Verbesserung der Zugriffsgeschwindigkeit könnten mehrere Kopien im Netz gehalten werden.
Die Migration der Datei erzeugt Kosten.
Damit haben wir das File-Allocation-Problem (FAP).
Ziel: Entwicklung eines guten Online-Algorithmus das File-Allocation-Problem.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.1) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.2) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.4) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.5) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.6) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.7) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.8) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:10.9) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation
Wir betrachten System aus zwei Rechnerna,b (Knoten).
a b
Damit sind die folgenden Konfigurationen möglich:
[a]: die Datei ist nur auf Knotena.
a b
[b]: die Datei ist nur auf Knotenb.
a b
[a,b]: die Datei ist auf beiden Knoten.
a b
Die Eingabesequenzρ=ρ1, ρ2, ρ3, . . . , ρmbesteht aus Anfragen:
ρi =r(v): Knotenv ∈ {a,b}will Datei lesen oder ρi =w(v): Knotenv∈ {a,b}will Datei schreiben.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:12.1) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation (Kosten)
Die Kosten entstehen an zwei Stellen (Möglichkeiten):
Servicekosten von 1 durch Anfragen der folgenden Art:
Fallsρi=r(v)in der Konfiguration[x]mitx 6=v.
r(a): a b
Fallsρi=w(v)in der Konfiguration[a,b]oder[x]fallsx 6=v. w(a): a b
w(a): a b
Migrationskosten vonDdurch eine Anpassung nach der Anfrage:
Falls der Algorithmus aus der Konfiguration[x]in die Konfiguration [a,b]geht.
a b =⇒ a b
In diesem Fall muss die ganze Datei übertragen werden, daher KostenD.
Hier nehmen wir an:D=1.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:12.2) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation (Kosten)
Die Kosten entstehen an zwei Stellen (Möglichkeiten):
Servicekosten von 1 durch Anfragen der folgenden Art:
Fallsρi=r(v)in der Konfiguration[x]mitx 6=v.
r(a): a b
Fallsρi=w(v)in der Konfiguration[a,b]oder[x]fallsx 6=v. w(a): a b
w(a): a b
Migrationskosten vonDdurch eine Anpassung nach der Anfrage:
Falls der Algorithmus aus der Konfiguration[x]in die Konfiguration [a,b]geht.
a b =⇒ a b
In diesem Fall muss die ganze Datei übertragen werden, daher KostenD.
Hier nehmen wir an:D=1.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:12.3) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation (Kosten)
Die Kosten entstehen an zwei Stellen (Möglichkeiten):
Servicekosten von 1 durch Anfragen der folgenden Art:
Fallsρi=r(v)in der Konfiguration[x]mitx 6=v.
r(a): a b
Fallsρi=w(v)in der Konfiguration[a,b]oder[x]fallsx 6=v. w(a): a b
w(a): a b
Migrationskosten vonDdurch eine Anpassung nach der Anfrage:
Falls der Algorithmus aus der Konfiguration[x]in die Konfiguration [a,b]geht.
a b =⇒ a b
In diesem Fall muss die ganze Datei übertragen werden, daher KostenD.
Hier nehmen wir an:D=1.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:12.4) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation (Kosten)
Die Kosten entstehen an zwei Stellen (Möglichkeiten):
Servicekosten von 1 durch Anfragen der folgenden Art:
Fallsρi=r(v)in der Konfiguration[x]mitx 6=v.
r(a): a b
Fallsρi=w(v)in der Konfiguration[a,b]oder[x]fallsx 6=v. w(a): a b
w(a): a b
Migrationskosten vonDdurch eine Anpassung nach der Anfrage:
Falls der Algorithmus aus der Konfiguration[x]in die Konfiguration [a,b]geht.
a b =⇒ a b
In diesem Fall muss die ganze Datei übertragen werden, daher KostenD.
Hier nehmen wir an:D=1.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:12.5) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation (Kosten)
Die Kosten entstehen an zwei Stellen (Möglichkeiten):
Servicekosten von 1 durch Anfragen der folgenden Art:
Fallsρi=r(v)in der Konfiguration[x]mitx 6=v.
r(a): a b
Fallsρi=w(v)in der Konfiguration[a,b]oder[x]fallsx 6=v. w(a): a b
w(a): a b
Migrationskosten vonDdurch eine Anpassung nach der Anfrage:
Falls der Algorithmus aus der Konfiguration[x]in die Konfiguration [a,b]geht.
a b =⇒ a b
In diesem Fall muss die ganze Datei übertragen werden, daher KostenD.
Hier nehmen wir an:D=1.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:12.6) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation (Kosten)
Die Kosten entstehen an zwei Stellen (Möglichkeiten):
Servicekosten von 1 durch Anfragen der folgenden Art:
Fallsρi=r(v)in der Konfiguration[x]mitx 6=v.
r(a): a b
Fallsρi=w(v)in der Konfiguration[a,b]oder[x]fallsx 6=v. w(a): a b
w(a): a b
Migrationskosten vonDdurch eine Anpassung nach der Anfrage:
Falls der Algorithmus aus der Konfiguration[x]in die Konfiguration [a,b]geht.
a b =⇒ a b
In diesem Fall muss die ganze Datei übertragen werden, daher KostenD.
Hier nehmen wir an:D=1.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:12.7) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation (Kosten)
Die Kosten entstehen an zwei Stellen (Möglichkeiten):
Servicekosten von 1 durch Anfragen der folgenden Art:
Fallsρi=r(v)in der Konfiguration[x]mitx 6=v.
r(a): a b
Fallsρi=w(v)in der Konfiguration[a,b]oder[x]fallsx 6=v. w(a): a b
w(a): a b
Migrationskosten vonDdurch eine Anpassung nach der Anfrage:
Falls der Algorithmus aus der Konfiguration[x]in die Konfiguration [a,b]geht.
a b =⇒ a b
In diesem Fall muss die ganze Datei übertragen werden, daher KostenD.
Hier nehmen wir an:D=1.
Einleitung File-Allocation-Problem Paging-Problem
Einleitung (6:12.8) <> Walter Unger 8.6.2012 14:03 SS2012 Z
Beschreibung der Situation (Kosten)
Die Kosten entstehen an zwei Stellen (Möglichkeiten):
Servicekosten von 1 durch Anfragen der folgenden Art:
Fallsρi=r(v)in der Konfiguration[x]mitx 6=v.
r(a): a b
Fallsρi=w(v)in der Konfiguration[a,b]oder[x]fallsx 6=v. w(a): a b
w(a): a b
Migrationskosten vonDdurch eine Anpassung nach der Anfrage:
Falls der Algorithmus aus der Konfiguration[x]in die Konfiguration [a,b]geht.
a b =⇒ a b
In diesem Fall muss die ganze Datei übertragen werden, daher KostenD.
Hier nehmen wir an:D=1.