Andreas Kalender Institut für Informatik FU Berlin 17.05.2006 Seminar über Algorithmen...

Preview:

Citation preview

Andreas KalenderInstitut für Informatik FU Berlin17.05.2006

Seminar über AlgorithmenDurchschnittsverzögerung

Andreas Kalender, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 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, kalender@inf.fu-berlin.de 40

Vielen Dank!

Recommended