Upload
heine-zaiser
View
103
Download
0
Embed Size (px)
Citation preview
Andreas KalenderInstitut für Informatik FU Berlin17.05.2006
Seminar über AlgorithmenDurchschnittsverzögerung
Andreas Kalender, [email protected] 2
Übersicht
• Einführung
• Definitionen
• Pigou's Beispiel und Braess Paradoxon
• Wie schlecht ist ein Nash-Fluss?
• Existens eines Nash-Flusses
• Verzögerung eines Nash-Flusses mit weiteren Einschränkungen
Andreas Kalender, [email protected] 3
Einführung
• Routing findet in allen Netzen Anwendung
• Wichtig ist ein hoher Durchsatz • an Verkehr (in Straßennetzen)• an Daten (in Datennetzen)• ...
• Durchschnittsverzögerung als Qualitätsmerkmal• Verzögerung für jedes Element im Netz• Geringe Verzögerung = hoher Durchsatz
Andreas Kalender, [email protected] 4
• Modellierung eines Netzwerks durch
• Einen gerichteten Graphen G = (V, E) mit • einer endlichen Menge V von Knoten• einer endlichen Menge E von Kanten
• Jeder Kante wird eine Funktion zugewiesen• dabei ist eine stetige, monoton wachsende Funktion• gibt die Verzögerung der Kante e an
• Jeder Knoten kann als Startpunkt dienen• Jeder über die Kanten erreichbare Knoten kann als Ziel
dienen
Das verwendete Modell
l e x e∈E
l e x
v ∈ V
l e x
Andreas Kalender, [email protected] 5
Fluss durch ein Netzwerk
• Ein Pfad ist ein nicht zyklischer Weg zwischen einem Start – und einem Endknoten
• Ein Pfad sei ein Pfad von nach
• Sei die Menge aller Pfade• Sei
• Ein Fluss ist eine Funktion• dabei bildet der Fluss einen Pfad auf die Anzahl seiner
Benutzer ab
si−t i si t i
Pi si−t iP = ∪iPi
f P f P :P∈P ℝ
Andreas Kalender, [email protected] 6
Verzögerung eines Pfades
• Der Fluss über eine Kante ist gegeben durch
• Die Verzögerung eines Pfades ist gegeben durch
• da monoton wachsend, ist die Verzögerung konstant
oder lastabhängig
• Ein Fluss ist ein Nash-Fluss wenn
• Hieraus folgt, dass die Verzögerung in einem Nash-Fluss für alle Pfade gleich ist
f e =∑ P ∈P :e∈Pf P
l P f =∑e∈Pl e f e
l e x
∀ i∀ P ,Q∈P i : f P≥0 ⇒ lP f ≤ lQ f
f
P∈P i
Andreas Kalender, [email protected] 7
• Es existieren k verschiedene Benutzertypen
• Benutzer i möchte von einem Punkt zu seinem Ziel
• Die Anzahl der Benutzer, die einen Pfad benutzen möchten entspricht dem Bedarf
• Gesucht ist ein Fluss , so dass für jeden Pfad ein Fluss existiert mit
• ein solcher Fluss wird als geeignet bezeichnet
• Optimal ist ein solcher Fluss mit minimaler Verzögerung
Spieltheorie
si t i
P i
dem i
f P∈P
f P≥0 ∧ ∀ i : ∑P∈Pi
f P=dem i
Andreas Kalender, [email protected] 8
Pigou's Beispiel
• Kosten des Weges von s nach t• Nash Gleichgewicht = 1• 50-50 Verteilung = 0,75
s t
l e x =1
l e x = x
Andreas Kalender, [email protected] 9
Braess Paradoxon
• Gesucht Optimale Verteilung der Kosten für Weg s-t• Nash Gleichgewicht = Optimum• Kosten = 1,5 (50% s-u-t, 50% s-v-t)
ts
u
v
l e x =1 l e x = x
l e x = x l e x =1
Andreas Kalender, [email protected] 10
Braess Paradoxon
• Einfügen einer neuen Kante (ohne Kosten) führt zu Erhöhung der Kosten• 100% über s-v-u-t mit Kosten 2
ts
u
v
• Einfügen einer neuen Kante (ohne Kosten) führt zu Erhöhung der Kosten
● 100% über s-v-u-t mit Kosten 2
l e x =1 lex =x
l e x =1lex =x
l e x =0
Andreas Kalender, [email protected] 11
Strategien (I)
• Optimales Routing• ist optimal!• schwer zu berechnen• nicht intuitiv
• Tit for Tat (z.B. bei Stichlingen)• dem folgen was Nächster tut• einfache Entscheidung• bei lastabhängigen Verzögerungen schlechteste Möglichkeit
Andreas Kalender, [email protected] 12
Strategien (II)
• Selbstsüchtiges Routing• keine zentrale Logik• jeder sucht für sich den besten Weg• wird von jedem intuitiv verwendet• keine komplizierten Berechnungen notwendig• nicht immer optimal• Doch wie schlecht ist selbstsüchtiges Routing?
Andreas Kalender, [email protected] 13
Durchschnittsverzögerung eines Flusses
• Die Verzögerung in einem Fluss lässt sich als Summe der Verzögerung aller Teilflüsse berechnen
• Definition einer weiteren Verzögerungsfunktion mit
• Dies ist eine konstruierte Funktion, die nur für einen Beweis benötigt wird und sonst keine wichtige Rolle spielt
L=∑P∈Pf P l P f
L
l∧
e
l∧
e={l e f e x≤f el e x xf e
f eD
ela
y
le x
l∧
e x
Flow on E
Andreas Kalender, [email protected] 14
Lemma 1
• Der Pfad mit minimaler Verzögerung in einem Netzwerk ohne Fluss hat die gleiche Verzögerung wie der Pfad im Nash-Fluss
• Der Nash-Fluss verwendet nach Definition immer die Kanten mit geringster Verzögerung• Damit ergibt sich für jede Kante im Nash-Fluss eine
Verzögerung von
• Nach Definition von gilt
• Damit ist gezeigt, dass beide Flüsse die gleiche Verzögerung
haben
Pi
Pi
l∧
le f e
l∧
l∧
e0=l e f e
Andreas Kalender, [email protected] 15
Lemma 2
• Die komplette Verzögerung in einem Nash-Fluss ist gegeben durch • mit der Verzögerung in einem Fluss
• Für jeden Pfad gilt dass entweder oder
• Daraus folgt
∑iL idem i
L i P∈P i
P∈P i f P=0 lP f =Li
∑Pf P lP f =∑i ∑P∈Pi
f P lP f
Andreas Kalender, [email protected] 16
Lemma 2
• Die komplette Verzögerung in einem Nash-Fluss ist gegeben durch • mit der Verzögerung in einem Fluss
• Für jeden Pfad gilt dass entweder oder
• Daraus folgt
∑iL idem i
L i P∈P i
P∈P i f P=0 lP f =Li
∑Pf P lP f =∑i ∑P∈Pi
f P lP f
=∑i∑P∈Pi
f PLi
Andreas Kalender, [email protected] 17
Lemma 2
• Die komplette Verzögerung in einem Nash-Fluss ist gegeben durch • mit der Verzögerung in einem Fluss
• Für jeden Pfad gilt dass entweder oder
• Daraus folgt
∑iL idem i
L i P∈P i
P∈P i f P=0 lP f =Li
∑Pf P lP f =∑i ∑P∈Pi
f P lP f
=∑i∑P∈Pi
f PLi
=∑iLi∑P∈Pi
f p
Andreas Kalender, [email protected] 18
Lemma 2
• Die komplette Verzögerung in einem Nash-Fluss ist gegeben durch • mit der Verzögerung in einem Fluss
• Für jeden Pfad gilt dass entweder oder
• Daraus folgt
∑iL idem i
L i P∈P i
P∈P i f P=0 lP f =Li
∑Pf P lP f =∑i ∑P∈Pi
f P lP f
=∑i∑P∈Pi
f PLi
=∑iLi∑P∈Pi
f p
=∑iLidem i
Andreas Kalender, [email protected] 19
Lemma 3
• Jeder Fluss der einen Bedarf von abdeckt hat eine Gesamtverzögerung von mindestens
• Aus Lemma 1 folgt
• Und mit der Monotonie von folgt somit für jeden Fluss
f∗ ∀ i :2∗dem i 2∑i
L idem i
∀P∈Pi : l∧
P 0≥L i
∑i∑P∈Pi
f P∗ l
∧
P f∗ ≥ ∑i ∑P∈Pi
f P∗L i
l∧
P
Andreas Kalender, [email protected] 20
Lemma 3
• Jeder Fluss der einen Bedarf von abdeckt hat eine Gesamtverzögerung von mindestens
• Aus Lemma 1 folgt
• Und mit der Monotonie von folgt somit für jeden Fluss
f∗ ∀ i :2∗dem i 2∑i
Li dem i
∀P∈Pi : l∧
P 0≥L i
∑i∑P∈Pi
f P∗ l
∧
P f∗ ≥ ∑i ∑P∈Pi
f P∗L i
l∧
P
≥∑iLi∑P∈Pi
f P∗
Andreas Kalender, [email protected] 21
Lemma 3
• Jeder Fluss der einen Bedarf von abdeckt hat eine Gesamtverzögerung von mindestens
• Aus Lemma 1 folgt
• Und mit der Monotonie von folgt somit für jeden Fluss
f∗ ∀ i :2∗dem i 2∑i
Li dem i
∀P∈Pi : l∧
P 0≥L i
∑i∑P∈Pi
f P∗ l
∧
P f∗ ≥ ∑i ∑P∈Pi
f P∗L i
l∧
P
≥∑iLi∑P∈Pi
f P∗
≥∑iL i 2dem i = 2∑i
L idem i
Andreas Kalender, [email protected] 22
Lemma 4
• Die Summe ist gleich der Summe
• Für alle Flüsse die einen Bedarf von erfüllen gilt
∑Pf P lP f ∑e
l e f e f e
∑Pf P lP f =∑P
f P∑e∈Pl e f e
f ∗ 2dem i
∑Pf P
¿ l∧
P f ∗−∑Pf P
¿ lP f∗=∑e
f ∗ e l∧
f ∗e −∑ef ∗e l f ∗e
Andreas Kalender, [email protected] 23
Lemma 4
• Die Summe ist gleich der Summe
• Für alle Flüsse die einen Bedarf von erfüllen gilt
∑Pf P lP f ∑e
l e f e f e
∑Pf P lP f =∑P
f P∑e∈Pl e f e
=∑e∈E ∑P : e∈Pl e f e f P
f ∗ 2dem i
∑Pf P
¿ l∧
P f ∗−∑Pf P
¿ lP f∗=∑e
f ∗ e l∧
f ∗e −∑ef ∗e l f ∗e
Andreas Kalender, [email protected] 24
Lemma 4
• Die Summe ist gleich der Summe
• Für alle Flüsse die einen Bedarf von erfüllen gilt
∑Pf P lP f ∑e
l e f e f e
∑Pf P lP f =∑P
f P∑e∈Pl e f e
=∑e∈E ∑P : e∈Pl e f e f P
∑Pf P lP f
f ∗ 2dem i
∑Pf P
¿ l∧
P f ∗−∑Pf P
¿ lP f∗=∑e
f ∗ e l∧
f ∗e −∑ef ∗e l f ∗e
Andreas Kalender, [email protected] 25
Lemma 4
• Die Summe ist gleich der Summe
• Für alle Flüsse die einen Bedarf von erfüllen gilt
∑Pf P lP f ∑e
l e f e f e
∑Pf P lP f =∑P
f P∑e∈Pl e f e
=∑e∈E ∑P : e∈Pl e f e f P
=∑e∈El e f e ∑P :e∈P
f P
=∑e∈El e f e f e
f ∗ 2dem i
∑Pf P
¿ l∧
P f ∗−∑Pf P
¿ lP f∗=∑e
f ∗ e l∧
f ∗e −∑ef ∗e l f ∗e
Andreas Kalender, [email protected] 26
Lemma 4
• Die Summe ist gleich der Summe
• Für alle Flüsse die einen Bedarf von erfüllen gilt
∑Pf P lP f ∑e
l e f e f e
∑Pf P lP f =∑P
f P∑e∈Pl e f e
=∑e∈E ∑P : e∈Pl e f e f P
=∑e∈El e f e ∑P :e∈P
f P
=∑e∈El e f e f e
f ∗ 2dem i
∑Pf P
¿ l∧
P f ∗−∑Pf P
¿ lP f∗=∑e
f ∗ e l∧
f ∗e −∑ef ∗e l f ∗e
=∑ef ∗e l∧e f ∗ e −l e f ∗ e
Andreas Kalender, [email protected] 27
Lemma 4
• Die Summe ist gleich der Summe
• Für alle Flüsse die einen Bedarf von erfüllen gilt
∑Pf P lP f ∑e
l e f e f e
∑Pf P lP f =∑P
f P∑e∈Pl e f e
=∑e∈E ∑P : e∈Pl e f e f P
=∑e∈El e f e ∑P :e∈P
f P
=∑e∈El e f e f e
f ∗ 2dem i
∑Pf P
¿ l∧
P f ∗−∑Pf P
¿ lP f∗=∑e
f ∗ e l∧
f ∗e −∑ef ∗e l f ∗e
=∑ef ∗e l∧e f ∗ e −l e f ∗ e
≤∑ef e l e f e =∑i
Li dem i
Andreas Kalender, [email protected] 28
Alle Lemma zusammen
• Aus Lemma 3 wissen wir, dass die Verzögerung im Fluss mit dem Bedarf mindestens beträgt
• Aus Lemma 4 wissen wir, dass der Unterschied zwischen den Verzögerungen von einem Fluss mit dem Bedarf von mit der Funktion oder bei maximal liegt
• Und diese entspricht wie wir aus Lemma 2 wissen der Verzögerung des Nash-Flusses
• Somit ist gezeigt, dass jeder Nash-Fluss , der erfüllt optimal ist für jeden Fluss mit Bedarff ∗ 2demi
f dem i
f ∗ 2demi 2∑iLi dem i
2dem i l∧
l ∑iL idem i
f ∗
Andreas Kalender, [email protected] 29
Die Existenz eines Nash-Flusses
• Aus „Potenzialfunktionen für Load Balancing“ [1] bekannt:
• Ein Fluss ist ein Nash-Gleichgewicht, genau dann, wenn er
die Potentialfunktion minimiert
• sei • ist differenzierbar und die Ableitung ist monoton• ist Konvex (Summe konvexer Funktionen)
=∑e∈E ∫0
f el e d
h x =∫0
xl ed
⇒h x ⇒
Andreas Kalender, [email protected] 30
Lineare Verzögerungsfunktionen
• Seien die Verzögerungsfunktionen linear
• Unter dieser Voraussetzung lässt sich zeigen, dass die
Verzögerung im Nash-Fluss maximal 4/3 vom optimalen
Fluss beträgt
• Die Gesamtverzögerung eines Flusses ist gegeben durch
∀e∈E : l ex =ae xbe
L f =∑e∈Eae f e
2be f e
Andreas Kalender, [email protected] 31
Flüsse mit linearen Verzögerungsfunktionen (I)
∀ i∀P1 ,P2∈Pi : f P 10∧
• Die Ableitung einer Verzögerungsfunktion ist gegeben durch
• Ein Fluss ist ein Nash-Fluss, genau dann wenn gilt(a)
• Ein Fluss ist optimal, genau dann wenn gilt (b)
∑e∈P1
ae f ebe≤∑e∈P2
ae f ebe
l
l∗= dd x
x⋅l x
∀ i ∀P 1 ,P 2∈Pi : f P 1
∗ 0∧
⇒ le∗x =2ae xbe
∑e∈P 1
2ae f e∗be≤∑e∈P 2
2ae f e∗be
Andreas Kalender, [email protected] 32
Flüsse mit linearen Verzögerungsfunktionen (II)
• Sei ein Nash-Fluss in einem Graphen mit linearen Verzögerungsfunktionen, so gilt
(c)
• folgt direkt daraus, dass die Funktionen linear sind
(d) Der Fluss ist optimal für den halben Bedarf (bei sonst
gleichen Bedingungen)
• folgt daraus, dass wenn ein Fluss (a) erfüllt, der Fluss
(b) erfüllt
f
l e∗f e /2=l e f e
f /2
f f /2
Andreas Kalender, [email protected] 33
Obere Grenze der Verzögerung
• Das finden eines geeigneten Flusses wird nun in zwei Teile zerlegt• Teil 1 besteht darin, dass man einen optimalen Fluss für den
Graphen G, mit linearen Kostenfunktionen und dem Bedarf findet
• Diese Lösung entspricht nach (d) dem Nash-Fluss für den Bedarf
(und sonst gleichen Bedingungen)
• Teil 2 besteht darin, dass man diesen Fluss so zu erweitern, dass er dem optimalen Fluss für den Bedarf entspricht
• Dabei kann der Fluss über die Kanten geändert werden, die die daraus resultierende Änderung der Verzögerung wird näher betrachtet
dem i
dem i /2
Andreas Kalender, [email protected] 34
Lemma 5
• Sei ein geeigneter Fluss, so gilt L f /2 ≥ 14L f f
L f /2=∑e∈E 12 ae f ebe f e2≥ 14∑e∈E ae f ebe f e
=14⋅L f
Andreas Kalender, [email protected] 35
Lemma 5
• Sei ein geeigneter Fluss, so gilt L f /2 ≥ 14L f f
L f /2=∑e∈E 12 ae f ebe f e2≥ 14∑e∈E ae f ebe f e
≥ 14∑e∈E ae f ebe f e
Andreas Kalender, [email protected] 36
Lemma 6 (I)
• Sei ein optimaler Fluss für einen Bedarf von so ist die Verzögerung nach unten beschränkt durch
• da es sich bei die Funktion konvex ist, kann man
mittels linearer Approximation die minimale Differenz zum
optimalen Fluss berechnen
• somit liegt der Unterschied bei mindestens
• (e)
f ∗
L f ∗ ∑e∈El e∗ f e∗ f e∗
∀0 :
1dem i
le f ef e≥lef e∗f ∗f e−f e
∗ le∗f e
∗
x⋅lex
f e−f e∗ le
∗f e∗
⇒L f ≥L f ∗∑e∈Ef e−f e
∗ le∗f e
∗
Andreas Kalender, [email protected] 37
Lemma 6 (II)
• Sei ein minimaler Fluss über den Pfad so folgtP i
L f ≥L f ∗∑iLi
∗f ∗∑P∈P i
f P−f P∗
L i f∗
=L f ∗∑iL i
∗f ∗
Andreas Kalender, [email protected] 38
Nash-Fluss vs Optimaler Fluss
• Für die Einschränkung dass die Verzögerungsfunktionen linear sind, so liegt der optimale Fluss minimal bei ¾ des Nash-Flusses
• aus (c) ist bekannt, dass der optimale Fluss für • zudem findet Lemma 6 mit Anwendung
L f ∗≥Lf /2∑e∈El e∗f e /2
f e2
≥ 14L f 1
2∑e∈E
l e f e f e=34L f
f
=1
Andreas Kalender, [email protected] 39
Quellen
• [1] „Potentialfunktion für Load Balancing“ - I. Kyrykos http://www.inf.fu-berlin.de/lehre/SS06/SeminarAlgorithmen/3-PotentialFunktionen.pdf
• [2] „How Bad is Selfish Routing?“ - T.Roughgarden, E. Tardos
• [3] „A Review of Non-atomic routing“ - E. Tardos
• [4] „Studies in the Economies of Transportation“ - M. Beckmann
Andreas Kalender, [email protected] 40
Vielen Dank!