Christian Scheideler Institut für Informatik Universität Paderborn

Slides:



Advertisements
Ähnliche Präsentationen
Freie Universität Berlin Institut für Informatik
Advertisements

Randomisierte Algorithmen Präfix Suche und Konsistentes Hashing
Christian Scheideler SS 2009
Christian Scheideler SS 2009
Randomisierte Algorithmen für Verteilungsprobleme
Christian Schindelhauer
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Algorithmen und Komplexität
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung.
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken IX Christian Schindelhauer
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken X Christian Schindelhauer
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Approximationsalgorithmen …liefern in polynomieller.
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Algorithmen und Komplexität
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Algorithmen des Internets 2005 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität 1 Klausuraufgaben.
Minimum Spanning Tree: MST
Christian Scheideler Institut für Informatik Universität Paderborn
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt WS 06/
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt WS 06/
Verteilte Algorithmen und Datenstrukturen Kapitel 4: Caching Christian Scheideler Institut für Informatik Universität Paderborn.
Institut für Theoretische Informatik
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Analyse der Laufzeit von Algorithmen
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken VIII Christian Schindelhauer
Bipartite Graphen Der Satz von König.
HEINZ NIXDORF INSTITUT Universität Paderborn Fakultät für Elektrotechnik, Informatik und Mathematik Algorithmische Probleme in Funknetzwerken XIII Klaus.
Gliederung der Vorlesung
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Algorithmen und Datenstrukturen
 Präsentation transkript:

Christian Scheideler Institut für Informatik Universität Paderborn Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn

Graphentheorie Graph G=(V,E): V: Menge von Knoten E  { {v,w} | v,wV}: Menge von Kanten D C A B

Graphentheorie (v,w): Distanz (Länge des kürzesten Weges) zwischen v und w in G D=maxv,w (v,w): Durchmesser von G D A

Graphentheorie (U): Nachbarmenge von Knotenmenge U (U) = |(U)| / |U| (G) = minU,|U||V|/2 (U): Expansion von G U G(U) D C A

Graphentheorie Netzwerk G=(V,E,c): V: Knotenmenge, E: Kantenmenge c:EIR+: Kantenkapazitäten (beide Richt.) 2 1 2 3 1 4 1

Graphentheorie c(v) = w c(v,w): Kapazität von Knoten v c(U) = vU c(v), c(U,U): Kapazität U  U (G) = minU [ c(U,U) / min{c(U),c(U)} ] Leitfähigkeit von G 2 U U 1 2 1 3 1 4

Netzwerktopologien Idealerweise vollständiges Netzwerk: Problem: skaliert nicht gut! (~n2 Kanten)

Linie Grad 2 (optimal), ABER Durchmesser schlecht (n-1 für n Knoten) Expansion schlecht ( (Linie) = 2/n ) Wie erhält man kleinen Durchmesser?

Binärer Baum n=2k+1-1 Knoten, Grad 3 Durchmesser ist k = log2 n, ABER Expansion schlecht ( (Baum)=2/n )

2-dimensionales Gitter n = k2 Knoten, maximaler Grad 4 Durchmesser ist 2(k-1) < 2 n Expansion ist ~2/ n Nicht schlecht, aber geht es besser?

Hypercube Knoten: (x1,…,xd)  {0,1}d Kanten: i: (x1,…,xd)  (x1,..,1-xi,..,xd) d=1 d=2 d=3 Grad d, Durchmesser d, Expansion 1/ d

Butterfly Knoten: (k,(xd,…,x1))  {0,..,d}  {0,1}d Kanten: (k-1,(xd,…,x1))  (k,(xd,..,xk,..,x1)), (k,(xd,..,1-xk,..,x1)) Grad 4, Durchmesser 2d, Expansion ~1/d 00 01 10 11 1 1 1 2

Cube-Connected-Cycles Knoten: (k,(x1,…,xd))  {0,..,d-1}  {0,1}d Kanten: (k,(x1,…,xd))  (k-1,(x1,...,xd)), (k+1,(x1,..,xd)), (k,(x1,..,1-xk+1,..,xd)

De Bruijn Graph Knoten: (x1,…,xd)  {0,1}d Kanten: (x1,…,xd)  (x2,…,xd,0) (x2,…,xd,1) 01 001 011 010 101 00 11 000 111 10 100 110

Durchmesser Theorem 1.11: Jeder Graph mit maximalem Grad d>2 und Größe n muss einen Durch-messer von mindestens (log n)/(log(d-1))-1 haben. Theorem 1.12: Für jedes gerade d>2 gibt es eine Familie von Graphen mit maximalem Grad d und Größe n mit Durchmesser (log n) / (log d -1).

Expansion Theorem: Für jeden Graph G ist die Expansion (G) höchstens 1. Beweis: siehe Definition von (G). Theorem: Es gibt Familien von Graphen mit konstantem Grad mit konstanter Expansion. Beispiel: Gabber-Galil Graph Knotenmenge: (x,y)  {0,…,n-1}2 (x,y)  (x,x+y),(x,x+y+1), (x+y,y), (x+y+1,y)

Leitfähigkeit Theorem 1.13: Für jedes Netzwerk G=(V,E,c) ist die Leitfähigkeit b(G) höchstens 1. Beweis: Betrachte ein beliebiges U⊆V. Sei EU = { {v,w}∈E | v∈U}, wobei {v,w} zweimal in EU vorkommt, falls v,w∈U. Es gilt (U,U)⊆E und c(U) = c(E), also ist c(U,U)≤c(U). Analog ist c(U,U)≤c(U). Aus Definition von folgt dann das Theorem. Theorem: Es gibt Familien von Graphen mit konstantem Grad und konstanter Leitfähigkeit.

Flusszahl (Flow Number) (s,t)-Fluss f:Eℝ+ im Netzwerk G=(V,E,c): Flusserhaltung: für alle vV\{s,t}: u f(u,v) = w f(v,w) Kapazitätseinhaltung: für alle (v,w)E: f(v,w)  c(v,w) Flusswert: |f| = v f(s,v)-u f(u,s) Hier nicht gefordert. 2 von 3 1 von 1 s 1 von 2 t 1 von 1 2 von 2

Flusszahl Mehrfachflussproblem: Netzwerk G=(V,E,c) (bigerichtete Kanten) Paare (s1,t1),…,(sk,tk) Anforderungen d1,…,dk  ℝ+ Eine gültige Lösung S zum Mehrfachflussproblem ist eine Menge von Flüssen f1,…fk für die Paare (s1,t1),…,(sk,tk) mit |fi|=di für alle i. Congestion von S: C(S) = maxe∈E f(e)/c(e), wobei f(e)= ∑i fi(e) der Gesamtfluss über e ist. Standardproblem: finde gültige Lösung S, so dass C(S) minimal ist.

Flusszahl Spezielles Mehrfachflussproblem: Paare: alle (v,w)  V2 Anforderungen: dv,w = c(v)c(w)/c(V) S: Lösung für spezielles Problem Dilation D(S) = Länge des längsten Flussweges Congestion C(S) = maxe∈E f(e)/c(e) (C(S) ist invariant zu Kantenskalierungen) Flusszahl: F = minS max{C(S),D(S)}

Flusszahl Balanciertes Mehrfachflussproblem (BMFP): Für jedes v ist die Summe der Anforderungen aus v und nach v gleich c(v). Beispiel: dv,w = c(v)c(w)/c(V) für alle v∈V. Theorem 1.14: Für jedes Netzwerk mit Flusszahl F und jede BMFP Instanz I gibt es eine Lösung S für I mit max{C(S),D(S)}  2F. Theorem 1.15: Im Schnitt gilt über alle BMFP Instanzen I, dass max{C(S),D(S)}=(F) für die beste Lösung S von I.

Flusszahl Beweis von Theorem 1.14: Sei G=(V,E,c) das gegebene Netzwerk. S: optimale Lösung zum speziellen BMFP für G, das der Flusszahl F zugrunde liegt, d.h. F=max{C(S),D(S)} fv,w: Fluss in S von v nach w Pv,w: Menge an Pfaden in fv,w Betrachte beliebiges BMFP mit Anforderungen di für Paare (si,ti). Betrachte daraus festes Paar (s,t) mit Anforderung ds,t. Konstruiere daraus Tripel (s,v,t) mit Anforderungen ds,v,t = ds,tc(v)/c(V) für alle v, d.h. ∑v ds,v,t = ds,t. Verwende Ps,v∘Pv,t, um jedes Tripel (s,v,t) zu routen. (∘: Konkatenation)

Flusszahl Beweis von Theorem 1.14: Betrachte erste Hälfte des Routings: Flusswert über Ps,v: ∑t ds,tc(v)/c(V) = c(v)/c(V)∑t ds,t = c(s)c(v)/c(V). Das ist der gleiche wie für das spezielle BMFP! Also ist Congestion und Dilation für die erste Hälfte des Routings höchstens F. Dasselbe gilt für die zweite Hälfte des Routings. Damit erhalten wir eine Lösung für das BMFP mit Congestion und Dilation höchstens 2F. v s t

Flusszahl Theorem 1.16 (Shortening Lemma): Angenommen, wir haben ein Netzwerk mit Flusszahl F. Für jedes [0,1] und jeden gültigen Mehrfachfluss f mit Congestion C(f) gibt es einen gültigen Mehrfachfluss f´ mit Congestion maximal (1+)C(f), der Wege der Länge höchstens 2F(1+1/) verwendet. Fazit: immer gute Lösung mit kurzen Wegen!

Flusszahl Beweisskizze von Theorem 1.16:

Beziehung zwischen Parametern Fact 1.17: Für jedes Netzwerk mit Durch-messer D und Flusszahl F gilt, dass FD. Theorem 1.18: Für (fast) jedes Netzwerk der Größe n mit Leitfähigkeit  und Flusszahl F gilt: -1  F  c -1 log n Theorem 1.20: Der d-dimensionale Hypercube, das Butterfly und der de Bruijn Graph haben die Flusszahl F=(d).

Die Spanne Expansion: bestimmt die Robustheit eines Graphen gegenüber worst-case Ausfällen. Problem: wie misst man die Robustheit eines Graphen gegen zufällige Fehler? Beispiel: nn-Gitter hat Expansion 1/n, kann aber eine konstante Fehlerwahrschein-lichkeit aushalten.

Die Spanne Graph G=(V,E) UV kompakt: U und V\U verbunden (U): Nachbarmenge von U P(U)V: Knotenmenge mit kleinstem Spannbaum von (U) Spanne  = maxkompakte U |P(U)|/|(U)|

Die Spanne Theorem 1.22: Betrachte einen beliebigen Graphen mit maximalem Grad d und Spanne . Dann G eine Fehlerwahr-scheinlichkeit bis zu 1/(16e d8 ) aushalten. Konstantdimensionale Gitter: konstantes 

Fragen?