Kommunikationsprobleme - Lehrstuhl Informatik 1

Werbung
Kommunikationsprobleme
Walter Unger
Lehrstuhl für Informatik 1
29. Januar 2008
Fehler Toleranz
Einleitung
Motivation
Situation
Grundlagen
Kantenfehler
Knotenfehler
aktive Kantenfehler
aktive Knotenfehler
Fehlerwahrscheinlichkeit
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
Permanente Knoten Fehler
Übertragungsfehler
Fehlerwahrscheinlichkeit
Übertragungfehler
Permanente Fehler
Byzantinische Fehler
LuF
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Motivation
5:1
Motivation
I
Die Welt ist nicht perfekt.
I
Es gibt Fehler, Leitungen gehen kaputt oder sind nicht
zuverlässig.
Ziele:
I
I
I
Ziele widersprechen sich.
I
Je robuster der Algorithmus, desto langsamer ist er.
Neues Ziel:
I
LuF
Walter Unger
Der Kommunikations-Algorithmus sollte robust sein.
Der Kommunikations-Algorithmus sollte immer noch effizient
sein.
I
I
Z
Fehlerwahrscheinlichkeit
Ein effizienter Kommunikations-Algorithmus, der bei
“gewissen” Fehlern noch arbeitet.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Situation
5:2
Mögliche Schranken an Fehler
I
Es sollte eine Schranke für die Anzahl der Fehler geben.
I
I
I
I
Z
Fehlerwahrscheinlichkeit
höchsten k Kanten/Knoten gehen kaputt.
Ziel: k-toleranten Algorithmus.
Unabhängigkeit und Gleichverteilung der Fehler.
Kanten/Knoten geht mit Wahrscheinlichkeit ε kaputt.
I
I
I
Ziel: fast sicherer Algorithmus,
d.h. mit Wahrscheinlichkeit 1 − δ (1 − 1/n oder 1 − 1/nc )
arbeitet dieser noch.
Der Zeitverlust ist höchstens ein Faktor von c.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Situation
5:3
Mögliche Klassen von Fehlern
I
Knoten können fehlerhaft sein.
I
Kanten können fehlerhaft sein.
I
Komponenten können dauerhaft kaputt sein.
I
Komponenten können zeitweise ausfallen.
I
Komponenten können “passiv” defekt sein (Crash).
I
Komponenten können “aktiv” defekt sein (Byzantinisch).
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Situation
5:4
Mögliche Formen von Algorithmen
I
LuF
Walter Unger
nicht adaptiv
I
I
I
I
I
Z
Fehlerwahrscheinlichkeit
Auch “oblivious” (vergesslich,selbstvergessen) genannt.
Algorithmus reagiert nicht auf die Fehler.
Die Aktivierung der fehlerfreien Kanten hängt nicht von den
Fehlern ab.
Algorithmus heißt hier: “Broadcasting Schema”.
adaptiv
I
I
I
Knoten erkennen, ob einen Nachricht ankommt.
Knoten nutzen diese Information im Weiteren aus.
Der Aktivierung der fehlerfreien Kanten hängt von den Fehlern
ab.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Kantenfehler
Z
Fehlerwahrscheinlichkeit
5:5
Definitionen
k-kantentolerant
Algorithmus heißt k-kantentolerant, falls er mit bis zu k passiv
defekten Kanten noch arbeitet.
k-facher Kantenzusammenhang
G = (V , E ) heißt k-fach kantenzusammenhängend falls es
zwischen jedem Knotenpaar k kantendisjunkte Wege gibt.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Kantenfehler
5:6
k-tolerant, nur Kantenfehler
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma:
Sei G = (V , E ) Netzwerk mit fehlerfreien Knoten und die Kanten
können nur passiv defekt sein, dann ist ein k-kantentolerantes
Broadcast genau dann mögliche, falls G (k + 1)-fach
kantenzusammenhängend ist.
I
Zeige ⇐=
I
I
I
I
I
G sei (k + 1)-fach kantenzusammenhängend.
Zu jedem Knoten gibt es P1 , P2 , . . . , Pk+1 kantendisjunkten
Pfad von der Quelle.
Algorithmus sende auf allen diesen Pfaden.
Bei k Fehlern bleibt immer ein Pfad aktiv.
Zeige =⇒
I
I
I
Seien a, b Knoten die nur mit höchstens k kantendisjunkten
Pfaden verbunden sind.
Damit können k Fehler a und b separieren.
Broadcast ist dann nicht mehr möglich.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Knotenfehler
Z
Fehlerwahrscheinlichkeit
5:7
Definitionen (c&p)
LuF
Walter Unger
k-tolerant
Algorithmus heißt k-tolerant, falls er mit bis zu k passiv defekten
Kanten und Knoten noch arbeitet.
k-facher Knotenzusammenhang
G = (V , E ) heißt k-fach knotenzusammenhängend falls es
zwischen jedem Knotenpaar k knotendisjunkte Wege gibt.
Einleitung
Grundlagen
Knotenfehler
Maximal k Knoten/Kanten Fehler
5:8
k-tolerant (c&p)
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma:
Sei G = (V , E ) Netzwerk mit passiv defekten Knoten und Knoten,
dann ist ein k-tolerantes Broadcast genau dann mögliche, falls G
(k + 1)-fach knotenzusammenhängend ist.
I
Zeige ⇐=
I
I
I
I
I
G sei (k + 1)-fach knotenzusammenhängend.
Zu jedem Knoten v gibt es P1 , P2 , . . . , Pk+1 knotendisjunkten
Pfade von der Quelle.
Algorithmus sende auf allen diesen Pfaden.
Bei k Fehlern bleibt immer ein Pfad aktiv.
Zeige =⇒
I
I
I
Seien a, b Knoten die nur mit höchstens k knotendisjunkten
Pfaden verbunden sind.
Damit können k Fehler a und b separieren.
Broadcast ist dann nicht mehr möglich.
Einleitung
Grundlagen
aktive Kantenfehler
Definitionen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
5:9
voll-k-kantentolerant
Algorithmus heißt voll-k-kantentolerant, falls er mit bis zu k
aktiven defekten Kanten noch arbeitet.
voll-k-tolerant
Algorithmus heißt voll-k-tolerant, falls er mit bis zu k aktiven
defekten Kanten und Knoten noch arbeitet.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
aktive Kantenfehler
5:10
voll-k-tolerant, nur Kantenfehler
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma:
Sei G = (V , E ) Netzwerk mit fehlerfreien Knoten und die Kanten
können nur aktiv defekt sein, dann ist ein voll-k-kantentolerantes
Broadcast genau dann mögliche, falls G (2 · k + 1)-fach
kantenzusammenhängend ist.
I
Zeige ⇐=
I
I
I
I
I
I
I
G sei (2 · k + 1)-fach kantenzusammenhängend.
Zu jedem Knotenpaar gibt es P1 , P2 , . . . , P2·k+1
kantendisjunkten Pfade.
Algorithmus sende auf allen diesen Pfaden.
Sei ni die Nachricht, die über Pi empfangen wird.
Bei k Fehlern können bis zu k Nachrichten verändert sein.
Es bleiben k + 1 unverfälschte Nachrichten.
v kann die korrekte Nachricht durch Mehrheitsentscheid
erkennen.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
aktive Knotenfehler
5:11
voll-k-tolerant, nur Kantenfehler
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma:
Sei G = (V , E ) Netzwerk mit fehlerfreien Knoten und die Kanten
können nur aktiv defekt sein, dann ist ein voll-k-kantentolerantes
Broadcast genau dann mögliche, falls G (2 · k + 1)-fach
kantenzusammenhängend ist.
I
I
Gezeigt: ⇐=
Zeige =⇒
I
I
I
I
I
Seien a, b Knoten die nur mit höchstens 2 · k kantendisjunkten
Pfade verbunden sind.
Damit können die Nachrichten auf k Pfaden verändert werden.
Damit empfängt b k Originalnachrichten und k falsche
Nachrichten.
b kann die Nachrichten nicht unterscheiden.
Broadcast ist dann nicht mehr möglich.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
aktive Knotenfehler
5:12
voll-k-tolerant (c&p)
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma:
Sei G = (V , E ) Netzwerk mit aktiv defekten Knoten und Kanten, dann ist ein
voll-k-tolerantes Broadcast genau dann mögliche, falls G (2 · k + 1)-fach
knotenzusammenhängend ist.
I Zeige ⇐=
I
I
I
I
I
I
I
G sei (2 · k + 1)-fach knotenzusammenhängend.
Zu jedem Knotenpaar gibt es P1 , P2 , . . . , P2·k+1
knotendisjunkten Pfade.
Algorithmus sende auf allen diesen Pfaden.
Sei ni die Nachricht, die über Pi empfangen wird.
Bei k Fehlern können bis zu k Nachrichten verändert sein.
Es bleiben k + 1 unverfälschte Nachrichten.
v kann die korrekte Nachricht erkennen.
I Zeige =⇒
I
I
Seien a, b Knoten die nur mit höchstens 2 · k knotendisjunkten
Pfade verbunden sind.
Damit können die Nachrichten auf k Pfaden verändert werden.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Fehlerwahrscheinlichkeit
Idee (Fehlerwahrscheinlichkeit)
5:13
LuF
Walter Unger
I
Sei P Pfad mit n Knoten.
I
Sei x Wahrscheinlichkeit, dass Knoten ausfällt
I
Sei y Wahrscheinlichkeit, dass Kante ausfällt
I
Dann ist die Wahrscheinlichkeit, dass Pfad der Länge n nicht
ausfällt:
(1 − x)n · (1 − y )n−1
I
Die Wahrscheinlichkeit, dass disjunkte Pfade ausfallen ist
unabhängig.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Fehlerwahrscheinlichkeit
5:14
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma:
Sei G = (V , E ) und es gebe nur passive Fehler.
Knoten u und v sind k-fach knotenzusammenhängend.
Jeder dieser Pfade ist fehlerfrei mit Wahrscheinlichkeit α.
Damit ist die Sendewahrscheinlichkeit von u nach v
1 − (1 − α)k .
I
I
I
Seien P1 , P2 , . . . , Pk die knotendisjunkten Pfade.
Sei Ei das Ereignis “Pfad Pi ist defekt”.
Da die Ei sind unabhängig sind, gilt:
Prob(
k
\
i=1
I
Ei ) =
k
Y
Prob(Ei ) 6 (1 − α)k
i=1
Damit ist die Übertragungswahrscheinlichkeit: 1 − (1 − α)k
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Fehlerwahrscheinlichkeit
5:15
Erinnerung
LuF
Walter Unger
Lemma (Chernoff):
I
Sei B Bernulli Folge der Länge m.
I
Sei q Wahrscheinlichkeit das ein Element in B erfolgreich ist.
I
Sei X Zufallsvariable, die die Anzahl der erfolgreichen
Ereignisse in B beinhaltet.
I
Sei 0 < ε < 1, dann gilt:
2 ·m·q/2
Prob(X 6 (1 − ε) · m · q) 6 e −ε
I
Für alle 0 6 k 6 m gilt:
Prob(X > k) 6
m
· qk
k
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Fehlerwahrscheinlichkeit
5:16
Aktive Fehler
LuF
Walter Unger
Lemma:
I
Sei G = (V , E ) Netzwerk (n = |V |) mit aktiven Fehlern.
I
Sei d > 0 konstant.
I
Dann gibt es eine Konstante c > 0 mit:
I
falls die fehlerfreien Knoten u, v mit dc log ne
knotendisjunkten Pfaden verbunden sind und
I
jeder dieser Pfade arbeitet fehlerfrei mit Wahrscheinlichkeit
α > 1/2, dann
I
kann von u nach v mindestens mit Wahrscheinlichkeit
1 − n−d gesendet werden.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Fehlerwahrscheinlichkeit
Aktive Fehler (Beweis)
Z
Fehlerwahrscheinlichkeit
5:17
LuF
Walter Unger
Lemma:
Sei G = (V , E ) Netzwerk (n = |V |) mit aktiven Fehlern. Sei d > 0
konstant. Dann gibt es eine Konstante c > 0 mit: falls die
fehlerfreien Knoten u, v mit dc log ne knotendisjunkte Pfaden
verbunden sind und jeder dieser Pfade arbeitet fehlerfrei mit
Wahrscheinlichkeit α > 1/2, dann kann von u nach v mindestens
mit Wahrscheinlichkeit 1 − n−d gesendet werden.
Beweis:
I Setze: ε = 2·α−1 .
2·α
I Wegen α > 1/2 gilt: 0 < ε < 1.
I Damit gilt: (1 − ε) · α = 1/2.
I Setze: c = 2 2·d
.
ε ·α log e
I
I
Damit gilt: d = c · ε2 α · (log e)/2.
2
Damit gilt: e −ε ·(c log n)·α/2 = n−d .
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Fehlerwahrscheinlichkeit
Aktive Fehler (Beweis)
Z
Fehlerwahrscheinlichkeit
5:18
LuF
Walter Unger
Lemma:
Sei G = (V , E ) Netzwerk (n = |V |) mit aktiven Fehlern. Sei d > 0 konstant.
Dann gibt es eine Konstante c > 0 mit: falls die fehlerfreien Knoten u, v mit
dc log ne knotendisjunkte Pfaden verbunden sind und jeder dieser Pfade
arbeitet fehlerfrei mit Wahrscheinlichkeit α > 1/2, dann kann von u nach v
mindestens mit Wahrscheinlichkeit 1 − n−d gesendet werden.
Beweis:
I Setze m = dc · log ne und seinen P1 , P2 , . . . , Pm
(1 − ε) · α = 1/2
c = 2 2·d
ε ·α log e
knotendisjunkte Pfade von u nach v .
d = c · ε2 α · (log e)/2
2
I Sei Ei Ereignis, dass Pi ohne Fehler ist.
e −ε ·(c log n)·α/2 = n−d
2
Prob(X 6 (1 − ε) · m · q) 6 e −ε ·m·q/2
I Die Ei sind unabhängig.
I Sei E das Ereignis, dass höchstens die Hälfte der Pfade
fehlerfrei ist.
I Sei X Zufallsvariable, die die Anzahl der fehlerfreien Pfade
angibt.
I Damit gilt: P(E ) = Prob(X 6 m/2)
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Fehlerwahrscheinlichkeit
5:19
Aktive Fehler (Beweis)
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma:
Sei G = (V , E ) Netzwerk (n = |V |) mit aktiven Fehlern. Sei d > 0 konstant.
Dann gibt es eine Konstante c > 0 mit: falls die fehlerfreien Knoten u, v mit
dc log ne knotendisjunkte Pfaden verbunden sind und jeder dieser Pfade
arbeitet fehlerfrei mit Wahrscheinlichkeit α > 1/2, dann kann von u nach v
mindestens mit Wahrscheinlichkeit 1 − n−d gesendet werden.
Beweis:
P(E ) =
=
6
6
=
Prob(X 6 m/2)
(1 − ε) · α = 1/2
c = 2 2·d
ε ·α log e
Prob(X 6 (1 − ε) · m · α)
d = c · ε2 α · (log e)/2
2 m·α/2
−ε
2
e
e −ε ·(c log n)·α/2 = n−d
2
2 ·(c log n)·α/2
Prob(X 6 (1 − ε) · m · q) 6 e −ε ·m·q/2
−ε
e
n−d
Damit kann v die Nachricht bestimmen, wenn dies Ereignis nicht
eintritt.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Kanten Fehler
5:20
Untere Schranke
LuF
Walter Unger
Lemma
Die Laufzeit eines k-kantentoleranten Broadcastalgorithmus ist
mindestens dlog ne + k für n − 2 6 k 6 0
Beweis:
I
Sei A ein k-kantentoleranten Broadcastalgorithmus.
I
Sei v die Quelle und e1 , e2 , . . . , ek Kanten die in den ersten k
Runden aktiv sind.
I
Seien alle diese Kanten defekt.
I
Damit benötigt A dann noch dlog ne Runden.
I
Also insgesamt dlog ne + k Runden.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Kanten Fehler
Obere Schranke (Idee)
5:21
I
Notwendig ist optimales Broadcast Schema.
I
Notwendig sind viele parallele Sendeoperationen (grosse
Matchings)
I
Mische beide Verfahren.
Vorgehen:
I
1.
2.
3.
4.
5.
Bestimme grosse Matchings für Broadcast
Teile Graph auf.
Mische beide Verfahren
Betrachte erstes Schema
Betrachte zweites Schema
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Kanten Fehler
Jeder gegen Jeden
5:22
Definition (Round-Robin)
I
Sei Cm = (V , E ) Clique aus m Knoten.
I
Seien E1 , E2 , . . . , Ek Matchings.
I
Diese bilden ein Round-Robin Turnier, falls
∀e ∈ E : |{Ei | e ∈ Ei ∧ 1 6 i 6 k}| = 1.
I
Schreibweise: R(i, t) = |{{vi , x} ∈ Et | x ∈ V }|.
I
Schreibweise: R(m) minimale Anzahl von Runden für ein
Round-Robin auf m Knoten.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
Jeder gegen Jeden
Lemma
Es gilt:
I
R(m) = m − 1 falls m gerade.
I
R(m) = m falls m ungerade.
Beweis:
I Zeige R(m) > m − 1
I
I
I
Knotengrad ist: m − 1
Die Ei sind Matchings.
Damit sind es m − 1 Matchings.
Z
Fehlerwahrscheinlichkeit
5:23
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
5:24
Jeder gegen Jeden
Lemma
Es gilt:
I
R(m) = m − 1 falls m gerade.
I
R(m) = m falls m ungerade.
Beweis:
I
I
Gezeigt R(m) > m − 1.
Zeige R(m) > m falls m ungerade.
I
I
I
I
I
Z
Fehlerwahrscheinlichkeit
Die Ei sind Matchings, der Knotengrad ist: m − 1
In jedem Ei ist ein Knoten nicht gematcht.
Sei v1 der Knoten der in E1 nicht gematcht wird.
Damit sind für v1 noch m − 1 Matchings notwendig.
Damit sind es m Matchings.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
5:25
Jeder gegen Jeden
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma
Es gilt:
I
R(m) = m − 1 falls m gerade.
I
R(m) = m falls m ungerade.
Beweis:
I
Gezeigt: R(m) > m − 1.
I
Gezeigt: R(m) > m falls m ungerade.
Zeige: R(m) 6 m − 1 falls m gerade.
I
I
I
I
Zeichne Knoten a1 , a2 , . . . , am−1 ,als reguläres (m − 1)-Eck.
Zeichne am als Spitze einer Pyramide auf a1 , a2 , . . . , am−1 .
Wähle perfektes Matching:
I
I
I
Eine Kante des (m − 1)-Ecks.
Alle dazu parallelen Diagonalen durch das (m − 1)-Eck.
Eine Kante vom einzig verbleibenden freien Knoten zur Spitze.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
Jeder gegen Jeden
Z
Fehlerwahrscheinlichkeit
5:26
Lemma
Es gilt:
I
R(m) = m − 1 falls m gerade.
I
R(m) = m falls m ungerade.
Beweis:
I
Gezeigt: R(m) = m − 1.
I
Gezeigt: R(m) > m falls m ungerade.
Zeige: R(m) 6 m falls m ungerade.
I
I
I
Schränke Schema auf Cm+1 auf Cm ein.
Bemerkung: Cm kann mit bm/2c Kreisen ungerader Länge
überdeckt werden.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
5:27
Grundlage der Algorithmen
I
Teile Knotenmenge disjunkt in C1 , C2 , . . . , Cm auf.
I
Bestimme Round-Robin auf {1, 2, . . . , m}.
I
Übertrage diese auf die Mengen C1 , C2 , . . . , Cm :
I
I
I
I
I
Walter Unger
Wähle maximales Matching zwischen Ci und Cj .
Jeder Knoten aus Ci verbindet sich mit genau einem Knoten
aus Cj .
Schreibweisen für
I
LuF
Sei i 6 m und t 6 R(m).
Falls RR(i, t) = 0 dann sind Knoten aus Ci inaktiv zum
Zeitpunkt t.
Falls RR(i, t) = j und o.E.d.A. |Ci | 6 |Cj | dann
I
I
Z
Fehlerwahrscheinlichkeit
obiges Verfahren: RRM(C1 , C2 , . . . , Cm ).
optimales Broadcast von v0 auf Cs : BCT (v0 , Cs ).
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Kanten Fehler
Verfahren 1 (Einfaches Schema)
5:28
I
Sei s = bn/(k + 1)c und r = n mod (k + 1).
I
Einschränkung hier: s > r .
I
Bestimme Cluster C1 , C2 , . . . , Ck+1 der Größe s.
I
Cluster Ck+2 bestehe aus verbleibenden Knoten.
I
Sei K Anzahl der Cluster, d.h. K = k + 1 falls r = 0 und
K = k + 2 sonst.
I
Sei Cj = {v1,j , v2,j , v3,j , . . .}
I
Sei v1,1 Startknoten.
Schema:
I
1. Zeitpunkt t (1 6 t 6 k) v1,1 sendet an v1,1+t .
2. Jeder Cluster Cj mache: BST (v1,j , Cj ).
3. Führe aus: RRM(C1 , C2 , . . . , CK ).
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
Z
Fehlerwahrscheinlichkeit
5:29
Korrektheit 1
LuF
Walter Unger
Lemma
Das einfache Schema ist k-kantentolerant.
Beweis:
I
Sei va,j in Cj mit |Cj | = s und va,j 6= v1,1 .
I
Zeige es gibt k + 1 kantendisjunkte Wege von v1,1 nach va,j .
Für p ∈ {1, 2, . . . , k + 1} besteht der p-te Pfad aus:
I
I
I
I
I
Kante von v1,1 nach v1,p (falls p 6= 1).
Weg gegeben durch BCT (vi,p , Cp ) von vi,p nach va,p .
Kante von va,p nach va,j in RRM(C1 , C2 , . . . , CK ) (falls p 6= j).
Betrachte va,k+2 (falls r 6= 0).
I
I
I
I
Für alle 1 6 p 6 k + 1:
Kante von v1,1 nach v1,p (falls p 6= 1).
Weg gegeben durch BCT (vi,p , Cp ) von vi,p nach va,p .
Kante von va,p nach va,k+2 in RRM(C1 , C2 , . . . , CK ).
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
5:30
Laufzeit 1
Lemma
Das einfache Schema braucht dlog ne + 2 · k + 2 Schritte.
Beweis:
1. Zeitpunkt t (1 6 t 6 k) v1,1 sendet an v1,1+t .
Laufzeit: k Schritte
2. Jeder Cluster Cj mache: BST (v1,j , Cj ).
Laufzeit: dlog se 6 dlog ne Schritte
3. Führe aus: RRM(C1 , C2 , . . . , CK ).
Laufzeit: k + 2 Schritte
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
5:31
Verfahren 2 (Allgemeines Schema)
I
I
I
I
I
I
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Sei v0 ∈ V der Startknoten.
Sei s = b(n − 1)/(k + 1)c und r = (n − 1) mod (k + 1).
Bestimme Cluster C1 , C2 , . . . , Ck+1 der Größe s in V \ {v0 }.
Cluster Ck+2 bestehe aus verbleibenden Knoten.
Sei Cj = {v1,j , v2,j , v3,j , . . .}
Schema:
1. Zeitpunkt t (1 6 t 6 k + 1) v0 sendet an v1,t .
2. Jeder Cluster Cj (1 6 j 6 k + 1) mache:
I
I
BST (v1,j , Cj ) sobald v1,j informiert wird.
D.h. Ci ist aktiv von Zeitpunkt i + 1 bis i + 1 + dlog se.
3. Jeder Cluster Cj (1 6 j 6 k + 1) mache direkt nach dem BST :
I
I
I
Knoten v1,i informiert: v1,k+2 , v2,k+2 , v3,k+2 , . . ..
bis alle Knoten aus Ck+2 informiert oder
bis zum Zeitpunkt k + 2 + dlog se.
4. Führe parallel aus:
I
I
RRM(C1 , C2 , . . . , Ck+1 ).
RRM({v1,k+2 }, {v2,k+2 }, . . . , {vr ,k+2 }).
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Kanten Fehler
Laufzeit 2
5:32
Lemma
Das allgemeine Schema braucht maximal 2 · k + 3 + dlog se Schritte.
1. Zeitpunkt t (1 6 t 6 k + 1) v0 sendet an v1,t .
2. Jeder Cluster Cj (1 6 j 6 k + 1) mache:
I
I
BST (v1,j , Cj ) sobald v1,j informiert wird.
D.h. Ci ist aktiv von Zeitpunkt i + 1 bis i + 1 + dlog se.
3. Jeder Cluster Cj (1 6 j 6 k + 1) mache direkt nach dem
BST :
I
I
I
Knoten v1,i informiert: v1,k+2 , v2,k+2 , v3,k+2 , . . ..
bis alle Knoten aus Ck+2 informiert oder
bis zum Zeitpunkt k + 2 + dlog se.
4. Führe parallel aus:
I
I
RRM(C1 , C2 , . . . , CK ).
Aktiv von k + 3 + dlog se bis 2 · k + 3 + dlog se.
RRM({v1,k2 }, {v2,k2 }, . . . , {vr ,k2 }).
Aktiv von k + 3 + dlog se bis maximal 2 · k + 3 + dlog se.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
Korrektheit 2
Z
Fehlerwahrscheinlichkeit
5:33
LuF
Walter Unger
Lemma
Das allgemeine Schema ist k-kantentolerant.
Beweis:
I
Sei va,j in Cj mit |Cj | = s und va,j .
I
Zeige es gibt k + 1 kantendisjunkte Wege von v0 nach va,j .
Für p ∈ {1, 2, . . . , k + 1} besteht der p-te Pfad aus:
I
I
I
I
Kante von v0 nach v1,p .
Weg gegeben durch BCT (vi,p , Cp ) von vi,p nach va,p .
Kante von va,p nach va,j in RRM(C1 , C2 , . . . , CK ) (falls p 6= j).
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Kanten Fehler
5:34
Korrektheit 2
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma
Das allgemeine Schema ist k-kantentolerant.
I
Betrachte vj,k+2 (falls r 6= 0).
I
I
I
I
I
I
vj,k+2 empfängt Nachricht von v1,1 , v1,2 , . . . , v1,k+2−j
vj,k+2 empfängt Nachricht auf k + 2 − j knotendisjunkten
Pfaden.
v1,k+2 über v1,1 , v1,2 , . . . , v1,k+1 auf k + 1 knotendisjunkten
Pfaden.
v2,k+2 über v1,1 , v1,2 , . . . , v1,k auf k knotendisjunkten Pfaden.
über die v1,k+1 und v1,k+2 sind es dann für v2,k+2 auch k + 1
Pfade.
vj,k+2 empfängt Nachricht von
I
I
I
I
I
v1,1 , v1,2 , . . . , v1,k+2−j und
v1,k+3−j und v1,k+3−j und
v1,k+4−j und v1,k+4−j und bis zu
v1,k+1 und v1,k+1
vj,k+2 empfängt Nachricht auf k + 1 knotendisjunkten Pfaden.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Knoten Fehler
5:35
Idee
I
Nur Knoten gehen kaputt.
I
Algorithmen sind adaptiv.
Zwei Formen von adaptiven Algorithmen:
I
I
I
I
Wake up
Ohne Einschränkungen.
Basisschritt: call(u, p, u 0 )
I
I
I
I
u sendet p an u 0 .
p beinhaltet Nachricht m und
Kontrollinformationen.
Zwei Fälle:
I
I
u 0 empfängt p und u eine 1.
u 0 ist defekt und u empfängt eine 0.
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Knoten Fehler
Idee (Wake Up)
I
Versuche optimales Broadcast
I
Knoten v bekommt Nachricht m und
I
Liste der noch von v zu informierenden Knoten.
I
Knoten v teilt Liste auf und
I
sendet diese Teile an jeweils einen anderen.
5:36
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Knoten Fehler
Algorithmus (Wake Up)
Funktion Broadcast(u,s)
1. D = {u + 1, u + 2, . . . , u + s}
2. while D 6= ∅ do
2.1 for i in 1, 2, . . . , s do
Broadcast(u,d(s − i)/2e,ui )
2.2 until ui fehlerfrei, d.h. u empfängt 1
3. D = {u + i + d(s − i)/2e, . . . , u + s}
Initial Broadcast(1, n − 1).
Z
Fehlerwahrscheinlichkeit
5:37
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Knoten Fehler
Korrektheit (Wake Up)
Lemma
Der Algorithmus Broadcast arbeitet korrekt.
Beweis: Er “simuliert” ein normales Broadcast.
1. D = {u + 1, u + 2, . . . , u + s}
2. while D 6= ∅ do
2.1 for i in 1, 2, . . . , s do
Broadcast(u,d(s − i)/2e,ui )
2.2 until ui fehlerfrei
3. D = {u + i + d(s − i)/2e, . . . , u + s}
Z
Fehlerwahrscheinlichkeit
5:38
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Knoten Fehler
5:39
Korrektheit (Wake Up)
Theorem
Der Algorithmus Broadcast ist k-tolerant und hat Laufzeit
k + dlog(n − k)e.
Beweis:
I
Sei T (n, k) Laufzeit für n Knoten und k Fehlerknoten.
I
Falls k = n − 1 folgt: T (n, k) = n − 1.
Sei nun k < n − 1 und Knoten 1 hat r kaputte Nachbarn.
I
I
I
I
r + 1 + T (d(n − r )/2e, min(k − r , d(n − r )/2e − 1))
T
(n, k) =
max06r 6k (r + 1 + T (d(n − r )/2e,

min(k − r , d(n − r )/2e − 1)))
falls k < n − 1


n−1
falls k = n − 1
Zeige per Induktion T (n, k) 6 k + dlog(n − k)e.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Knoten Fehler
Z
Fehlerwahrscheinlichkeit
5:40
Induktion
LuF
Walter Unger
Zeige: T (n, k) 6 k + dlog(n − k)e
I 1. Fall: k − r 6 d(n − r )/2e − 1
I
I
I
I
I
I
I
r + 1 + T (d(n − r )/2e, min(k − r , d(n − r )/2e − 1))
6 r + 1 + k − r + dlog((dn − r )/2e − k + r )e
= k + 1dlog((dn − r )/2e − k + r )e
Wird maximal für r = k
6 k + 1dlog((dn − k)/2e)e
6 kdlog(n − k)e
2. Fall: k − r > d(n − r )/2e − 1
I
I
I
I
r + 1 + T (d(n − r )/2e, d(n − r )/2e − 1)
= r + 1 + d(n − r )/2e − 1
<r +1+k −r
<k +1

T (n, k) =
max06r 6k (r + 1 + T (d(n − r )/2e, min(k − r , d(n − r )/2e − 1)))
n−1
falls k < n − 1
falls k = n − 1
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Knoten Fehler
5:41
Korrektheit (Wake Up)
Theorem
Der Algorithmus Broadcast ist k-tolerant und hat Laufzeit
k + dlog(n − k)e. Die Laufzeit ist optimal.
Beweis: Einfache Übung.
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Knoten Fehler
Uneingeschränktes Verfahren
Z
Fehlerwahrscheinlichkeit
5:42
LuF
Walter Unger
Theorem
Sie k/n durch Konstante beschränkt, dann gibt es einen adaptiven
k-toleranten Algorithmus für Broadcast mit Laufzeit O(log n).
I
I
Algorithmus hat 2 Teile:
Vorschau
I
I
I
I
Ohne die Nachricht empfangen zu haben, suche kaputte
Nachbarn
Bestimme Liste der aktiven Nachbarn.
Suche bis die Nachricht empfangen wird.
Broadcast
I
I
Nutze Informationen aus Vorschau.
Vermeide das Senden an kaputte Knoten
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Übertragungsfehler
Modell
5:43
LuF
Walter Unger
I
Fehler treten nach längerer Laufzeit öfters auf.
I
Übertragung fällt aus, Kante kann danach ggf. wieder senden.
I
Parameter α mit 0 < α < 1.
I
In den Schritten 1 bis i gibt es insgesamt höchstens i · α
fehlerhafte Kanten.
I
Betrachte hier nur Schemata.
I
Ein Schema ist α-sicher wenn es noch mit obiger
Fehlerschranke arbeitet.
I
B(G , α, s) bezeichne Laufzeit für α-sicheres Schema auf G
von s.
I
B(G , α) bezeichne Laufzeit für α-sicheres Schema auf G .
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Übertragungsfehler
Auf der Linie
5:44
LuF
Walter Unger
Lemma
Sei α < 1/2, dann ist 2-systolischer Gossip Algorithums auf Ln mit
t = bn/(1 − 2 · α)c Schritten α-sicheres Broadcastschema. Also:
B(Ln , α) = O(n).
Beweis:
I
Sei hier Ln Linie mit n Kanten.
I
Eine Nachricht wird durch fehlerhafte Übertragung 2 Schritte
aufgehalten.
I
Sei T die Laufzeit für die das Schema α-sicher ist.
I
Anzahl Fehler damit höchstens bαT c.
I
Damit: n + 2 · bαT c > T .
I
und T 6 n/(1 − 2 · α).
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Übertragungsfehler
5:45
Auf der Linie
LuF
Walter Unger
Theorem
Für α > 1/2 gilt: B(Ln , α) = Ω(1/(1 − α)n ).
Beweis: siehe Literatur.
Theorem
Für α > 1/2 gilt: B(Ln , α) = Θ(1/(1 − α)n ).
Beweis:
I Setze:
I
I
t0 = 0, t1 = 1
tk = bα · (t1 + . . . + tk )c + 1 (minimal) für k > 1.
1. Für j := 1 bis n mache
1.1 Falls j ungerade
I
In Schritten tj−1 + 1 bis tj sind alle “ungeraden” Kanten aktiv
1.2 Falls j gerade
I
In Schritten tj−1 + 1 bis tj sind alle “geraden” Kanten aktiv
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Übertragungsfehler
5:46
Laufzeit und Korrektheit auf der Linie
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
1. Für j := 1 bis n mache
1.1 Falls j ungerade: In Schritten tj−1 + 1 bis tj sind alle
“ungeraden” Kanten aktiv
1.2 Falls j gerade: In Schritten tj−1 + 1 bis tj sind alle “geraden”
Kanten aktiv
I
α-Sicherheit
I
I
I
I
I
t0 = 0, t1 = 1, tk = bα · (t1 + . . . + tk )c + 1
Sei Quelle Knoten v0
Nach t1 Schritten ist v1 informiert.
Sei nach t1 + . . . + tk Schritten vk informiert.
In Schritten t1 + . . . + tk + 1 bis t1 + . . . + tk+1 wird dann
vk+1 informiert.
Laufzeit
I
I
I
tk = bα · (t1 + . . . + tk )c + 1 6 bα · (t1 + . . . + tk−1 )c + α · tk + 1
tk 6 tk−1 + α · tk + 1
tn = O((1/(1 − α))n )
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Übertragungsfehler
5:47
Auf dem Stern
Theorem
Für 0 < α < 1 gilt: B(Sn , α) = Ω(1/(1 − α)n ).
Beweis: siehe Literatur.
Theorem
Für 0 < α < 1 gilt: B(Sn , α) = O(1/(1 − α)n ).
Idee:
1. Für j := 1 bis n mache
I
In Schritten tj−1 + 1 bis tj sendet v0 an vi .
Danach analoges Vorgehen.
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Übertragungsfehler
Auf Kreis
Z
Fehlerwahrscheinlichkeit
5:48
LuF
Walter Unger
Theorem
Für 0 < α < 1 gilt: B(Cn , α) = O(n).
I
Algorithmus: Systolischer Gossipalgorithums.
Betrachte hier nur Kreise gerader Länge.
Nach erstem Schritt sind v0 und vn informiert.
Phase bestehe aus zwei Schritten (erste Phase 2,3).
In einer Phase: f Fehler und x Knoten werden informiert.
Dann gilt: x + f > 2.
Maximale Fehleranzahl in k Phasen: α · (2 · k + 1).
Nach k Phasen sind 2 · k − α · (2 · k + 1) Knoten informiert.
Ziel: 2 · k − α · (2 · k + 1) > n − 2.
Beachte T = 2 · k + 1.
Laufzeit in k: k = d (n−1)/(1−α)−1
e
2
I
Laufzeit: 2 · d (n−1)/(1−α)−1
e+1
2
I
I
I
I
I
I
I
I
I
I
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Übertragungsfehler
5:49
Auf dem Würfel
LuF
Walter Unger
Theorem
Auf dem Hypercube mit r Dimensionen gibt es ein
k-kantentolerantes Schema mit Laufzeit r + k.
Theorem
Für 0 < α < 1 gilt: B(HQr , α) = bα/(1 − α)(r − 1)c + r .
Idee: Durchlaufe zyklisch alle Dimensionen, d.h zum Zeitpunkt t
sind alle Kanten der Dimension t mod r aktiv.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Übertragungsfehler
Auf der Clique
Z
Fehlerwahrscheinlichkeit
5:50
Theorem
Für 0 < α < 1 gilt: B(Kn , α) = 1/(1 − α) log n + O(log log n).
Idee: übertrage Verfahren vom Hypercube.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Übertragungfehler
1. Modell
Z
Fehlerwahrscheinlichkeit
5:51
I
Knoten sind fehlerfrei.
I
Übertragungen sind fehlerhaft mit Wahrscheinlichkeit p.
I
Die Fehler sind unabhängig.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Übertragungfehler
5:52
Linie
Lemma
I
Übertragungsfehler mit Wahrscheinlichkeit p.
I
Sei c > 0 konstante ganze Zahl und q = 1 − p.
I
Sei E das Ereignis, dass 2 · c · n Runden des 2-systolischen
Gossip Algorithums A auf Ln kein Broadcast machen.
I
Sei d = (q · c − 1)/(2 · q · c)
Dann gilt: Prob(E ) 6 2−d·n
I
I
I
I
I
Zwei Schritte von A bilden eine Phase.
In jeder Phase ist jede kritische Kante einmal aktiv.
Sei F das Ereignis, dass eine Bernullifolge c · n positive
Ereignisse hat, mit Einzelwahrscheinlichkeit q.
−
(q·c−1)2
·m·q/2
(2·q·c)2
Prob(E ) 6 Prob(F ) 6 e
= e −dm
Setze dabei ein: m = c · n und (1 − ε) · q · c = 1.
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Übertragungfehler
Linie
Z
Fehlerwahrscheinlichkeit
5:53
Lemma
I
Übertragungsfehler mit Wahrscheinlichkeit p. Sei c > 0
konstante ganze Zahl und q = 1 − p.
I
Sei E das Ereignis, dass 2 · c · n Runden des 2-systolischen
Gossip Algorithums A auf Ln kein Broadcast machen.
I
Sei d = (q · c − 1)/(2 · q · c)
Dann gilt: Prob(E ) 6 2−d·n
I
Setze c > 4/q
I
Dann gilt: d > 1
I
Damit folgt: Prob(E ) 6 e −n 6 1/n
I
Dann ist A fast sicherer Algorithmus.
LuF
Walter Unger
Einleitung
Grundlagen
Übertragungfehler
Folgerungen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
5:54
LuF
Walter Unger
Folgerung 1
Mit Θ(n) platzierten Fehlern kann ein linearzeit Algorithmus mit
Θ(n2 ) Übertragungen auf der Linie nicht mehr arbeiten.
Folgerung 2
Mit Θ(n2 ) zufällig platzierten Fehlern kann ein linearzeit
Algorithmus mit Θ(n2 ) Übertragungen auf der Linie noch arbeiten.
Theorem
I
Sei G Netzwerk mit beschränktem Grad und Durchmesser D.
I
Es gebe nur Übertragungsfehler mit Wahrscheinlichkeit p.
I
Dann gibt es einen fast sicheren Algorithmus mit Laufzeit
O(D).
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Fehler
2. Modell
I
Knoten sind fehlerhaft mit Wahrscheinlichkeit p.
I
Kanten sind fehlerhaft mit Wahrscheinlichkeit q.
I
Die Fehler sind unabhängig.
I
r1 = (1 − p) · (1 − q)
I
r2 = (1 − p)2 · (1 − q)
I
c = max(d−8/logr2 e, d24/(r1 · log ee)
I
n > 2c
I
Definiere Netzwerk G (n, c).
I
d = cblog nc, mit o.E.d.A. d teilt n.
I
s = bn/dc, mit o.E.d.A. s = 2h+1 − 1.
5:55
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Fehler
Z
Fehlerwahrscheinlichkeit
5:56
Graph G (n, c)
LuF
Walter Unger
I
Mengen S1 , S2 , . . . , Ss der Größe d.
I
Nummeriere Konten in Si von 0 bis d − 1.
I
vi,j sei j-te Knoten in Si .
I
Quelle sein v1,0 .
I
Ordne die Si zu einem Binärbaum T mit h + 1 Schichten.
I
Nachbarn von Si sind S2·i und S2·i+1 (1 6 i 6 bs/2c).
I
Falls Si und Sj verbunden in T ,
I
dann sind alle Knotenpaare in Si × Sj in G (n, c) verbunden.
Das sind alle Kanten in G (n, c) und es gilt
I
I
I
I
|Si | = O(log n)
Maximaler Grad von G (n, c) ist O(log n)
h < log n
r1 = (1 − p) · (1 − q)
r2 = (1 − p)2 · (1 − q)
c = max(d−8/logr2 e, d24/(r1 · log ee)
n > 2c
d = cblog nc, d teilt n
h+1
s = bn/dc, s = 2
−1
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Fehler
5:57
Algorithmen
Algorithmus MultiCall(Si , Sj , k):
1. Für alle 0 6 r < d mache parallel
I
vi,r sendet zu vj,r +k
Baumartiges Broadcast:
I
Für Runden 1,2,3 mache
I
Z
Fehlerwahrscheinlichkeit
Für Schritte s = 0 bis d − 1 mache
1. Für jedes Si , das kein Blatt in T ist und i gerade:
MultiCall(Si , S2·i )
MultiCall(Si , S2·i+1 )
2. Für jedes Si , das kein Blatt in T ist und i ungerade:
MultiCall(Si , S2·i )
MultiCall(Si , S2·i+1 )
LuF
Walter Unger
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Fehler
Z
Fehlerwahrscheinlichkeit
5:58
Aussagen
LuF
Walter Unger
Lemma
Sei n ausreichend gross und E1 das Ereignis, das nach Schritt 1 in
jedem Si die Nachricht mindestens einmal bekannt ist. Dann gilt:
Prob(E1 ) 6 1/n2 .
Lemma
Sei E2 das Ereignis, das für jedes Knotenpaar Si es einen
fehlerfreien Weg der Länge 2 gibt. Dann gilt:
Prob(E2 ) 6 1/n.
Theorem
Das obige Schema ist fast sicher und hat Laufzeit O(log n).
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Fehler
5:59
Beweis 1
LuF
Walter Unger
Lemma
Sei E1 das Ereignis, das nach Schritt 1 in jedem Si die Nachricht mindestens
einmal bekannt ist. Dann gilt: Prob(E1 ) 6 1/n2 .
r1 = (1 − p) · (1 − q)
r2 = (1 − p)2 · (1 − q)
c = max(d−8/logr2 e, d24/(r1 · log ee)
n > 2c
d = cblog nc, d teilt n
h+1
s = bn/dc, s = 2
−1
I
Sei B = (S1 = Si0 , Si1 , Si2 , . . . , Sih Weg im Baum.
I
Sei P Ereignis, das ein Si in B nicht informiert wird.
Damit entspricht Prob(P):
I
I
I
I
I
Bernullifolge der Länge d
Höchstens h Erfolge
mit Einzelwahrscheinlichkeit r1
beachte h < log n.
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Fehler
5:60
Beweis 1
LuF
Walter Unger
Lemma
Sei E1 das Ereignis, das nach Schritt 1 in jedem Si die Nachricht mindestens
einmal bekannt ist. Dann gilt: Prob(E1 ) 6 1/n2 .
I
Bernullifolge Länge d, h Erfolge, Einzelwahrscheinlichkeit r1
I
Setze ε = (r1 · c − 1)/(r1 · c)
I
Wegen c > 1/r1 gilt 0 < ε < 1 und (1 − ε) · r − 1 · d = blog nc.
I
Chernoff: Prob(p) 6 e −ε
I
Höchstens n Wege in T :
I
Prob(E1 ) 6 n · Prob(P) 6 n · e −ε
2 ·r ·cblog nc/2
1
2 ·r ·c·log n/4
1
2
I
I
I
e/4
= n · n−ε ·r1 ·c·log
1−(r1 ·c−2+ r 1·c log e/4
1
=n
6 n1−R1 ·c·log e/8
r1 = (1 − p) · (1 − q)
r2 = (1 − p)2 · (1 − q)
c = max(d−8/logr2 e, d24/(r1 · log ee)
n > 2c
d = cblog nc, d teilt n
h+1
s = bn/dc, s = 2
−1
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Permanente Fehler
5:61
Beweis 1
Z
Fehlerwahrscheinlichkeit
LuF
Walter Unger
Lemma
Sei E1 das Ereignis, das nach Schritt 1 in jedem Si die Nachricht mindestens
einmal bekannt ist. Dann gilt: Prob(E1 ) 6 1/n2 .
I
Prob(E1 ) 6 n · Prob(P) 6 n1−R1 ·c·log e/8
I
Wegen C > d24/(r1 · log ee > d4/r1 e gilt:
I
r1 · c − 2 +
I
1
r1 · c
>
r1 · c
2
Wegen r1 · c · log e/8 > 3 folgt:
Prob(E1 ) 6 1/n2
r1 = (1 − p) · (1 − q)
r2 = (1 − p)2 · (1 − q)
c = max(d−8/logr2 e, d24/(r1 · log ee)
n > 2c
d = cblog nc, d teilt n
h+1
s = bn/dc, s = 2
−1
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Fehler
5:62
Beweis 2
LuF
Walter Unger
Lemma
Sei n ausreichend gross und E2 das Ereignis, das für jedes Knotenpaar Si es
einen fehlerfreien Weg der Länge 2 gibt. Dann gilt: Prob(E2 ) 6 1/n.
I
|Si | = n/d und u, v ∈ Si .
I
Sei n/d > 2, d.h. es gibt 2 Knoten in T .
I
Damit gibt es d knotendisjunkte Pfade von u nach v .
I
Fehlerwahrscheinlichkeit auf so einem Pfad ist r2 .
I
Fehlerwahrscheinlichkeit, dass d Pfade ausfallen: r2d .
I
Damit: Prob(E2 ):
I
I
I
I
6 n2 · r2d (Höchstens n2 Paare)
c·log n/2
6 n2 · r2
2
6 n · nc·log r2 /2 (n > 2, c · r2 6 −8)
6 1/n2
r1 = (1 − p) · (1 − q)
r2 = (1 − p)2 · (1 − q)
c = max(d−8/logr2 e, d24/(r1 · log ee)
n > 2c
d = cblog nc, d teilt n
h+1
s = bn/dc, s = 2
−1
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Permanente Fehler
5:63
Beweis 3
LuF
Walter Unger
Theorem
Das obige Schema ist fast sicher und hat Laufzeit O(log n).
I
Sei E das Ereignis: Schema arbeitet richtig.
I
E1 ∩ E2 ⊂ E
E ⊂ E1 ∩ E2
I
I
I
I
E1 eingetreten: In jedem Si ist ein Knoten informiert nach
Runde 1.
E2 eingetreten: In den nächsten beiden Runden sind alle
Knoten aus Si informiert.
prob(E ) 6 Prob(E1 ) + Prob(E2 ) 6 2n2 6 1/n.
r1 = (1 − p) · (1 − q)
r2 = (1 − p)2 · (1 − q)
c = max(d−8/logr2 e, d24/(r1 · log ee)
n > 2c
d = cblog nc, d teilt n
h+1
s = bn/dc, s = 2
−1
Einleitung
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
Byzantinische Fehler
5:64
Aussage
Theorem
Falls eine Kante mit Wahrscheinlichkeit q < 1/2 byzantinisch
ausfällt, dann gibt ein Schema das fast sicher und hat Laufzeit
O(log n).
Beweis: analog und komplizierter,
schenken wir uns zu
Weihnachten.
LuF
Walter Unger
Einleitung
Literatur
Literatur
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
5:65
J. Hromkovič, et al.:
Dissemination of Information in Communication Networks :
Broadcasting, Gossiping, Leader Election, and Fault-Tolerance.
EATCS Series, Springer 2005.
LuF
Walter Unger
Einleitung
Fragen
Fragen
Grundlagen
Maximal k Knoten/Kanten Fehler
Z
Fehlerwahrscheinlichkeit
5:65
LuF
Walter Unger
Herunterladen