Kommunikationsprobleme - Lehrstuhl Informatik 1

Werbung
Kommunikationsprobleme
Walter Unger
Lehrstuhl für Informatik 1
29. Januar 2008
Broadcast
Einleitung
Grundlagen
Broadcast
Untere Schranke
Erste Resultate
Bäume
Komplexität
Definition und erste Ergebnisse
Komplexität
Broadcast auf Netzwerken
Netzwerke
Erste Resultate
CCC
SE
BF
DB
Untere Schranken
Knotengrad
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:1
Definition (Broadcast):
LuF
Walter Unger
Gegeben sei G = (V , E ) und v ∈ V .
I
v habe Information I (v ) und
I
kein Knoten aus V \ {v } kennt I (v ).
I
Jeder Knoten aus V \ {v } soll die Information I (v ) erhalten.
Definition (Accumulation):
Gegeben sei G = (V , E ) und v ∈ V .
I
Jeder Knoten w ∈ V habe Information I (w ) und
I
kein Knoten aus V \ {w } kennt I (w ).
I
der Knoten v soll die Information ∪w ∈V I (w ) erhalten.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:2
Definition (Accumulation):
LuF
Walter Unger
Gegeben sei G = (V , E ) und v ∈ V .
I
Jeder Knoten w ∈ V habe Information I (w ) und
I
kein Knoten aus V \ {w } kennt I (w ).
I
der Knoten v soll die Information ∪w ∈V I (w ) erhalten.
Definition (Gossip):
Gegeben sei G = (V , E ).
I
Jeder Knoten w ∈ V habe Information I (w ) und
I
kein Knoten aus V \ {w } kennt I (w ).
I
Jeder Knoten v ∈ V soll die Information ∪w ∈V I (w ) erhalten.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
1:3
Kommunikationsarten
I
Telegraphmode: Kommunikation ist gerichtet.
I
Wird auch Einweg Algorithmus genannt.
I
Z
Untere Schranken
Telephonemode: Information wird ausgetauscht.
I
Wird auch Zweiweg Algorithmus genannt.
I
Kommuniziert wird immer zwischen Nachbarn.
I
Kommuniziert wird in Runden.
I
In jeder Runde bilden die aktiven Kanten ein Matching.
I
Jede Runde benötigt eine Zeiteinheit.
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
1:3
Erklärung
Z
Untere Schranken
LuF
Walter Unger
I Beim Broadcastproblem wird also die Information eines Knotens auf alle
anderen verteilt.
I Das Accumulationsproblem ist ein “inverses” Broadcast.
I Beim Gossip wird die Summe aller Informationen in jeden einzelnen
Knoten gesammelt.
I Es wird hier nun immer in einer Kommunikationsrumde mittels eines
Matchings kommuniziert.
I Die Kommunikation auf einer Kante kann in eine Richtung oder in beide
Richtungen gehen.
I Die Größe der Datenmenge wird erst einmal nicht berücksichtigt.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:4
Definitionen
LuF
Walter Unger
I Mit comm(A) wird die Komplexität (Anzahl der Runden) eines
Kommunikationsalgorithmuses bezeichnet.
I r (G ) = min{comm(A) |
A ist Einweg Algorithmus und löst Gossip Problem auf G }
I r2 (G ) = min{comm(A) |
A ist Zweiweg Algorithmus und löst Gossip Problem auf G }
I b(v , G ) = min{comm(A) |
A ist Einweg Algorithmus und löst Broadcast Problem auf G und v }
I b2 (v , G ) = min{comm(A) |
A ist Zweiweg Algorithmus und löst Broadcast Problem auf G und v }
I a(v , G ) = min{comm(A) |
A ist Einweg Algorithmus und löst Accumulations Problem auf G und v }
I a2 (v , G ) = min{comm(A) |
A ist Zweiweg Algorithmus und löst Accumulations Problem auf G und v }
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
1:5
Definitionen
I
b(G ) = max{b(v , G ) | v ∈ V }
I
b2 (G ) = max{b2 (v , G ) | v ∈ V }
I
a(G ) = max{a(v , G ) | v ∈ V }
I
a2 (G ) = max{a2 (v , G ) | v ∈ V }
I
minb(G ) = min{b(v , G ) | v ∈ V }
I
mina(G ) = min{a(v , G ) | v ∈ V }
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Grundlagen
1:6
Erste Erkenntnisse
I
Für jeden Graphen G und v ∈ V gilt:
I
I
I
I
I
I
Z
Untere Schranken
a2 (v , G ) = b2 (v , G )
a(v , G ) = b(v , G )
a(G ) = b(G )
mina(G ) = minb(G )
b(v , G ) = b2 (v , G )
b(G ) = b2 (G )
I
Es gibt Graph G mit: r (G ) = 2 · r2 (G ).
I
Es gilt: minb(G ) 6 b(G ) 6 r2 (G ) 6 r (G ) 6 2 · r2 (G ).
I
Definition eines Wegs:
L(n) = (VL(n) , EL(n) )
VL(n) = {0, 1, 2, · · · , n − 1}
EL(n) = {{i, i + 1} | 0 6 i < n − 1}
I
minb(L(n)) = dn/2e
I
b(L(n)) = n − 1
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Grundlagen
Z
Untere Schranken
1:6
Erklärung
LuF
Walter Unger
Die Aussagen ergeben sich durch folgende Argumente:
I Reverses Broadcast ist Accumulation.
I Betrachte 2-Clique oder Kreis der Länge vier.
I Die Ungleichungen ergeben sich aus den Definitionen.
I Optimales Broadcast auf der Linie startet in der Mitte der Linie.
I Auf der Linie muss die Nachricht von links über alle Kanten nach rechts
laufen.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Grundlagen
1:7
Erste Erkenntnisse II
LuF
Walter Unger
Lemma:
Für jeden Graphen G mit |V | > 2 gilt:
I b(G ) 6 r (G ) 6 2 · minb(G )
I b(G ) 6 r2 (G ) 6 2 · minb(G ) − 1
Beweis: Betrachte folgende Schritte.
I Sei v ∈ V mit b(v , G ) = minb(G ) = mina(G ) = z.
I Sei A = E1 , E2 , · · · Ez der zugehörige Einweg Broadcast Algorithmus.
I Sei B = F1 , F2 , · · · Fz der zugehörige Einweg Accumulations Algorithmus.
I Dann erhält man einen Einweg Gossip Algorithmus durch
F1 , F2 , · · · Fz , E1 , E2 , · · · Ez .
I Beachte: im Zweiweg Modus gilt: Fz = E1 .
I Beachte: Bei L(2 · n) gilt die Gleichheit.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Grundlagen
1:7
Erklärung
Z
Untere Schranken
LuF
Walter Unger
Die Aussagen ergeben sich durch folgende Argumente:
I Broadcast ist eine Teilaufgabe bei Gossip.
I Wenn man alle Nachrichten in einen Knoten sammelt und dann von da
aus Broadcast macht, so erhält man Gossip.
I Im Zweiweg Modus kann man genau eine Runde (die erste Runde vom
Broadcast) sparen, denn das ist die gleich der letzten Runde von der
Accumulation.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Grundlagen
Z
Untere Schranken
1:8
Erste Erkenntnisse III
LuF
Walter Unger
Lemma:
Für jedes gerade n mit n > 8 gibt es Graphen G mit n Knoten und
I
b(G ) = r (G )
Beweis:
x
@
@
x
x
@
x
@
@
@
@
@x
@
@x
x
x
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Grundlagen
1:9
Erste Erkenntnisse IV
diam(G )
rad(v , G )
rad(G )
Z
Untere Schranken
=
=
=
rad(G ) 6 minb(G ).
I
rad(G ) 6 diam(G ) 6 b(G ).
Sei G = (V , E ) und H = (V , F ) mit F ⊂ E , dann gilt:
I
I
I
I
b(G ) 6 b(H).
minb(G ) 6 minb(H).
r (G ) 6 r (H).
r2 (G ) 6 r2 (H).
I
minb(G ) 6 (deg (G ) − 1) · rad(G ) + 1.
I
b(G ) 6 (deg (G ) − 1) · diam(G ) + 1.
I
b(G ) 6 deg (G ) · rad(G ).
I
r (G ) 6 2(deg (G ) − 1) · rad(G ) + 2
I
r2 (G ) 6 2(deg (G ) − 1) · rad(G ) + 1
Walter Unger
max{dist(u, v ) | u, v ∈ V }
max{dist(v , x) | x ∈ V }
min{rad(v , G ) | v ∈ V }
I
I
LuF
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Untere Schranke
Untere Schranke
Z
Untere Schranken
1:10
LuF
Walter Unger
Lemma
Sei G = (V , E ) Graph mit n Knoten, dann gilt:
I
b(G ) > minb(G ) > dlog ne
Beweis:
I
Sei A(t) die Anzahl der informierten Knoten nach t Runden.
I
A(0) = 1
I
A(t + 1) 6 2 · A(t)
I
A(t) 6 2t
I
Am Ende muss gelten 2t > n.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Untere Schranke
Erklärung
Z
Untere Schranken
1:10
LuF
Walter Unger
Diese Art eines Beweises werden wir im Folgenden öfters sehen. D.h. es wird
die Verbreitung (ggf. beschränkt durch Knotengrad oder Anzahl der Knoten in
einem gewissen Abstand) der Nachricht untersucht.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Erste Resultate
1:11
Erste Resultate
Z
Untere Schranken
Lemma
Sei K (n) = ({0, 1, · · · n − 1}, E ) der vollständige Graph mit n
Knoten, dann gilt
I
minb(K (n)) = b(K (n)) = dlog ne
Beweis (K (n)):
for t = 1 to dlog ne do
for all i ∈ {0, 1, · · · , 2t−1 − 1} do in parallel
if i + 2t−1 6 n then
i sendet an i + 2t−1
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Erste Resultate
Z
Untere Schranken
1:12
Hyperwürfel der Dimension d
HQ(d) = (VHQ(d) , EHQ(d) )
VHQ(d) = {0, 1}d
EHQ(d) = {{w 0w 0 , w 1w 0 } | w 0w 0 , w 1w 0 ∈ VHQ(d) }
s
sh h
01101
1101
1111
01111
hhh
hhh
h h
hhh
hhhh
hhh
hhh
hs
s
s
s
hhh
hh
01001
1001
11111
1011
11101
01011
h
h
h
h
h
h
h
h
h
h
h
hh
h
hh
hs
sh
s
s h
shh 01110
shhh
00101
01100
00111
0101
0111
11001
1100
1110
11011
101hh
111hh
h
h
h
h
h
h
h
h
h
h
h
h h
hhh
h
h
h
h
h
h
h
hhsh
h
h
hh
hh
hh
hs
sh
s h
s sh
shhh
s 00011
h
h
h
h
01000
1000
11110
10101
0011
011
1010
10111
11100
00001
0001
001
01
1 h hh
11
01010
h
h
h
h
h
h
h
h
h
h
hh
h
h
h
h
h
h
h
h
h
h
h
hh
hhh
h
hh
h
hs
sh
shhh
s
s h
sh
00100
10001
00110
0100
0110
11000
10011
11010
100hh
110hh
h
h
h
h
h
h
hh
hhhhh
hh
h
hh
hh
sh
s s s 00010
h
10100
0010
010
10110
00000
0000
000
00
0 h hh
10
h
hhhhhhhh
hhhhhh
hhh
h
s
s
10000
10010
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Erste Resultate
1:13
LuF
Walter Unger
Hyperwürfel der Dimension d (Alternative Darstellung)
HQ(d) = (VHQ(d) , EHQ(d) )
VHQ(d) = {0, 1}d
EHQ(d) = {{w 0w 0 , w 1w 0 } | w 0w 0 , w 1w 0 ∈ VHQ(d) }
0000
000
00
0
0001
001
01
1
0010
010
10
0011
011
11
0100
100
0101
101
0110
110
0111
111
1000
1001
1010
1011
1100
1101
1110
1111
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
"
!
"
!
&
%
&
%
&
%
&
%
&
%
&
%
&
%
&
%
&
%
&
%
&
%
&
%
&
%
&
%
Knotenanzahl:
Kantenanzahl:
Knotenzsh.:
2d
d · 2d−1
d
Knotengrad:
Durchmesser:
Kantenzsh.:
d
d
d
Einleitung
Broadcast
Erste Resultate
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:13
Erklärung
LuF
Walter Unger
Die Kanten eines Hyperwürfels werden in verschiedene Dimensionen aufgeteilt.
In jeder Dimension bilden die Kanten ein Matching. Der Vorteil eines
Hyperwürfels ist der kleine Durchmesser, ein Nachteil ist der unbeschränkte
Knotengrad. Weiterhin ist es leicht einen kürzesten Weg einer Nachricht von
einem Knoten A zu einem Knoten B zu bestimmen. Dazu müssen nur die Bits
“gekippt” werden, in denen sich die Knoten A und B unterscheiden.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Erste Resultate
1:14
Erste Resultate
Lemma
Es gilt:
I
minb(K (n)) = b(K (n)) = dlog ne
I
minb(HQ(m)) = b(HQ(m)) = m
Z
Untere Schranken
Beweis (HQ(m)):
for i = 1 to m do
for all a1 , a2 , · · · , ai−1 ∈ {0, 1} do in parallel
a1 a2 · · · ai−1 00 · · · 0 sendet an a1 a2 · · · ai−1 10 · · · 0
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Bäume
1:15
Vollständiger binärer Baum
LuF
Walter Unger
T (d) = (VT (d) , ET (d) )
VT (d) = {w ∈ {01}∗ | |w | 6 d}
ET (d) = {{w , wa} | w , wa ∈ V , a ∈ {0, 1}}
q X
X
XX
X XX
X
Xq11
0
q0 HH
HH
(1):
T (4):
(5): (0):
(2):
(3):
H
HH
H 1q 1
q
q1
10
00
qH
00
10
010H
11HH
HH
H q101
H q011
q111
000
q
0
01
010
q
100
110
q
q
q
000
001
010
011
100
101
110
111
0000q @ q 0010q @ q 0100q @ q 0110q @ q 1000q @ q 1010q @ q 1100q @ q 1110q @ q
0000 0001
0001 0010 0011
0011 0100 0101
0101 0110 0111
0111 1000 1001
1001 1010 1011
1011 1100 1101
1101 1110 1111
1111
q B q B qB qB qB qB qB qB qB qB q B q B q B q B q B q B
00000Bq 00010Bq 00100Bq 00110Bq 01000Bq 01010Bq 01100Bq 01110Bq 10000Bq 10010Bq 10100Bq 10110Bq 11000Bq 11010Bq 11100Bq 11110Bq
00001 00011 00101 00111 01001 01011 01101 01111 10001 10011 10101 10111 11001 11011 11101 11111
Knotenanzahl:
Kantenanzahl:
Knotenzsh.:
2d+1 − 1
2d+1 − 2
1
Knotengrad:
Durchmesser:
Kantenzsh.:
3
2·d
1
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Bäume
Z
Untere Schranken
1:16
Vollständiger k-närer Baum
LuF
Walter Unger
Tk (d) = (VTk (d) , ETk (d) )
VTk (d) = {w ∈ {0, 1, · · · , k − 1}∗ | |w | 6 d}
ETk (d) = {{w , wa} | w , wa ∈ VTk (d) , a ∈ {0, 1, · · · , k − 1}}
(((rhhhhhh
hhh
((((
(
(
h
(
hr
2
rP
P
0(
1rPP
P
P
P
Pr02
Pr12
Pr22
20
r 21r PP
00
r 01r
10
r 11r
r @
r@r r @
r@r r @
r@r r @
r@r r @
r@r r @
r@r r @
r@r r @
r@r r @
r@r
T3 (3):
000 001 002 010 011 012 020 021 022 100 101 102 110 111 112 120 121 122 200 201 202 210 211 212 220 221 222
Knotenanzahl:
Kantenanzahl:
Knotenzsh.:
Pd
ki
Pi=0
d
i
i=0 k − 1
1
Knotengrad:
Durchmesser:
Kantenzsh.:
k +1
2·d
1
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Bäume
1:17
Erste Resultate II
Lemma
Es gilt für k, m > 2: minb(Tk (m)) = k · m.
Beweisidee:
I
b(ε, Tk (m)) = k · m.
I
b(ε, Tk (m)) 6 b(v , Tk (m)).
I
Beachte v hat ε zu informieren
I
und ε dann die verbleibenden Söhne.
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Definition und erste Ergebnisse
Komplexität
Definition:
Das spezielle Broadcast-Problem ist:
I
Gegeben: G = (V , E ), v ∈ V und k ∈ IN.
I
Frage: Gilt b(v , G ) 6 k.
Definition:
Das Broadcast-Problem ist:
I
Gegeben: G = (V , E ) und k ∈ IN.
I
Frage: Gilt b(G ) 6 k.
Z
Untere Schranken
1:18
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Definition und erste Ergebnisse
Komplexität
Theorem:
Das spezielle Broadcast-Problem auf Bäumen ist in P
Beweis: rekursives Vorgehen (einfache Übung).
Theorem:
Das Broadcast-Problem auf Bäumen ist in P
Beweis: einfache Übung.
Z
Untere Schranken
1:19
LuF
Walter Unger
Einleitung
Broadcast
Definition und erste Ergebnisse
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:19
Erklärung
LuF
Walter Unger
Der Algorithmus bestimmt rekursiv die Broadcastzeit von einem Knoten (den
wir dann als Wurzel auffassen) in seinen Unterbaum. Für die Blätter ist diese
Zeit 0. Wenn wir die Broadcastzeit für alle Nachfolger einer Wurzel haben,
sortieren wir diese Zeiten. Danach kann bestimmt werden, in welcher
Reihenfolge und wann wir diese Teilbäume von der Wurzel aus benachrichtigen
können.
Beispiel: 5 Teilbäumne haben Broadcastzeiten 10, 10, 9, 9, 7. Dann werden die
Teilbäume auch in dieser Reihenfolge informiert. Dann ergibt sich eine
Broadcastzeit von max(10 + 1, 10 + 2, 9 + 3, 9 + 4, 7 + 5) = 13 für den
gesamten Baum.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
Komplexität
Theorem:
Das spezielle Broadcast-Problem ist in N PC.
Beweis: einfache Übung (wenn man die Idee kennt).
Z
Untere Schranken
1:20
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:20
Erklärung
LuF
Walter Unger
Wenn eine Nachricht von einem Knoten v zum einem Knoten w noch geschickt
werden muss und die verbleibende Zeit und Weglänge zwischen v und w gleich
sind, dann ist diese Nachricht kritisch. D.h. sie muss ohne Verzögerung immer
in Richtung w geschickt werden. Ist der kürzeste Weg zwischen v und w
eindeutig, so können wir genau sagen, zu welchem Zeitpunkt die Nachricht in
welchem Knoten ist. Wenn nun ein weiter Knoten w 0 existiert mit:
dist(v , w ) = dist(v , w 0 ) + 1 und der kürzeste Weg zu w 0 zweigt von dem Weg
von v nach w ab, dann ist auch die Nachricht auf diesem neuen Weg kritisch.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:21
Idee zum Beweis
Broadcast von a0 in 9 Runden:
a0
a1
b2
b3
b4
b5
b6
b7
b8
b9
a2
a3
a4
a5
a6
a7
a8
a9
Damit muss jeder Knoten ai , bi in Runde i informiert werden.
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:22
Idee zum Beweis (Teil A)
Broadcast von a0 in 9 Runden:
a0
a1
a2
b2
c3
c4
c5
c6
c7
c8
c9
f3
f4
f5
f6
f7
f8
f9
a3
a4
a5
a6
a7
a8
a9
e4
e5
e6
e7
e8
e9
b4
b5
b6
b7
b8
b9
d4
d5
d6
d7
d8
d9
b3
Kann auf beliebig viele “Pfade” erweitert werden.
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Erklärung
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:22
LuF
Walter Unger
Betrachten wir nun die folgende Situation: es gibt eindeutige kürzeste Wege
von v nach w , w 0 , w 00 , die einen gemeinsamen Verzweigungspunkt haben.
Weiter sei dist(v , w ) − 2 = dist(v , w 0 ) = dist(v , w 00 ) und die Nachricht auf
dem Weg von v nach w kritisch. Dann ist einer der beiden anderen Wege (z.B.
v nach w 0 ) kritisch. Der andere Weg (z.B. v nach w 00 ) ist nicht kritisch, d.h.
man könnte die Nachricht einmal verzögern oder im letzten Schritt noch einen
weitern Knoten zusätzlich informieren. Damit haben wir insgesamt eine
“Variable”: d.h. der Weg v nach w 0 ist kritisch oder der andere Weg von v
nach w 00 .
Weiterhin kann man analog diese “Variable” mit vielen Nachrichten bauen, d.h.
entweder ist eine Gruppe W 0 von Nachrichten kritisch oder eine andere Gruppe
W 00 von Nachrichten.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:23
Idee zum Beweis (Teil B)
LuF
Walter Unger
Broadcast von a0 in 9 Runden:
a0
a0
a1
a1
a2
a2
c3
c4
c5
c6
c7
c8
c9 x = false
b3
b4
b5
b6
b7
b8
b9 x = true
a3
a4
a5
a6
a7
a8
a9
c3
c4
c5
c6
c7
c8
c9 x = true
b3
b4
b5
b6
b7
b8
b9 x = false
a3
a4
a5
a6
a7
a8
a9
Damit haben wir eine “Variable”.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:24
3-SAT
LuF
Walter Unger
Definition
Eine Boolesche Formel F ist in Exact-3-KNF:
Vm
F(x1 , x2 , ..., xr ) =
i=1 ci
(Klauseln)
ci
=
(Literale)
lij
=
(li1 ∨ li2 ∨ li3 )
¬xk
xk
oder
für ein k : 1 6 k 6 r
∀16i 6m
∀ 1 6 i 6 m und
∀16j 63
Eine Belegung ist eine Funktion W : {x1 , x2 , ..., xr } 7→ {0, 1}.
Es ist NP-vollständig, festzustellen, ob es für F eine erfüllende Belegung
gibt.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:25
Idee zum Beweis (Teil C)
Broadcast von a0 in 9 Runden:
c3
a0
a1
a2
c4
e5
e6
e7
e8
e9
c5
c6
c7
c8
c9
d5
d6
d7
d8
d9
b3
b4
b5
b6
b7
b8
b9
a3
a4
a5
a6
a7
a8
a9
Damit habe wir eine “Variable” mehrfach.
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Komplexität
Erklärung
Broadcast auf Netzwerken
Z
Untere Schranken
1:25
LuF
Walter Unger
Bisher haben wir die Möglichkeit viele Variablen aufzubauen. Was noch fehlt
sind die Klauseln. Bei 3-SAT ist es so, das jede Klausel von einer Variablen
erfüllt sein muss. Wir können nun hier eine Klausel durch einen Knoten
darstellen, der nur noch über Variablen (d.h. Wege) informiert werden kann, die
nicht kritisch sind (also den Wert “wahr” darstellen). Damit haben wir die Idee
für die Reduktion auf 3-SAT.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:26
Idee zum Beweis (Teil D)
LuF
Walter Unger
Broadcast von a0 in 9 Runden:
z0
z1
z2
z3
z4
z5
y0
y1
y2
y3
y4
y5
x0
x1
x2
x3
x4
x5
z0
z1
z2
z3
z4
z5
y0
y1
y2
y3
y4
y5
x0
x1
x2
x3
x4
x5
Damit haben wir eine “Klausel”.
z6
z7
z8
x = false
y6
y7
y8
y = false
x6
x7
x8
z = false
z6
z7
z8
x = false
y6
y7
y8
y = true
x6
x7
x8
z = false
z9
y9
c0
x9
z9
y9
x9
c0
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
Z
Untere Schranken
1:27
Idee zum Beweis
LuF
Walter Unger
I
Betrachte Boolsche Formel F aus 3 − SAT :
I
Erzeuge für jede der n Variablen aus F einen kritischen Weg
(Teil A).
I
Erzeuge für jeden kritischen Weg eine Alternative (Teil B).
I
Damit sind alle Literale dargestellt.
I
Erzeuge für jedes Literal so viele Pfade wie das Literal in F
auftritt (Teil C).
I
Erzeuge für jede Klausel ein Konstrukt nach Teil D.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
1:28
Beispiel
Z
Untere Schranken
LuF
Walter Unger
F = (x ∨y ∨z)∧(x ∨z)∧(x ∨y )∧(x ∨y ∨z)∧(x ∨y ∨z)∧(x ∨z)∧(x ∨y )
a0
a1
a2
c2
a3 x 0
a4
b3 y 0
b4
c3 z0
c4
a5
b5
c5
a6
b6
c6
a7
b7
c7
a8
b8
c8
a9
b9
c9
a10
b 10
c 10
a11
b 11
c 11
a12
b 12
c 12
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:29
Beispiel
LuF
Walter Unger
F = (x ∨y ∨z)∧(x ∨z)∧(x ∨y )∧(x ∨y ∨z)∧(x ∨y ∨z)∧(x ∨z)∧(x ∨y )
a0
a1
a2
c2
b3 y 0
a3 x 0
a4
c3 z0
c4
b4
a5
c5
b5
a6
d6
b6
k6
a7
d7
c6
q6
h7
b7
k7
o7
c7
q7
u7
a8
a9
d8
h8
b8
k8
o8
c8
q8
u8
d9
h9
b9
k9
o9
c9
q9
u9
a10
d 10
h10
b 10
k 10
o 10
c 10
q 10
u 10
a11
d 11
h11
b 11
k 11
o 11
c 11
q 11
u 11
a12
d 12
h12
b 12
k 12
o 12
c 12
q 12
u 12
x
h6
x
y
o6
y
z
u6
z
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:30
Beispiel
LuF
Walter Unger
F = (x ∨y ∨z)∧(x ∨z)∧(x ∨y )∧(x ∨y ∨z)∧(x ∨y ∨z)∧(x ∨z)∧(x ∨y )
a0
a1
a2
c2
b3 y 0
a3 x 0
a4
c3 z0
c4
b4
a5
c5
b5
a6
d6
b6
k6
a7
d7
h7
c6
q6
b7
k7
o7
c7
q7
a8
d8
g 8 h8
a9
d 9 e9
g 9 h9
i8
b8
k8
m8 o 8 p 8
c8
q8
s8
u8
i9
b9
k 9 l 9 m9 o 9 p 9
c9
q9 r 9 s 9
a10
u9
b 10
q 10 r 10 s 10 t 10 u 10
b 11
k 10 l 10 m10 o 10 p 10
k 11 l 11 m11 o 11 p 11
c 10
a11
d 10 e 10 f 10 g 10 h10 j 10 i 10
d 11 e 11 f 11 g 11 h11 j 11 i 11
c 11
q 11 r 11 s 11 t 11 u 11
a12
d 12 e 12 f 12 g 12 h12 j 12 i 12
b 12
k 12 l 12 m12 o 12 p 12
c 12
q 12 r 12 s 12 t 12 u 12
x
h6
x
y
o6
y
u6
z
u7
z
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Komplexität
1:31
Beispiel
LuF
Walter Unger
F = (x ∨y ∨z)∧(x ∨z)∧(x ∨y )∧(x ∨y ∨z)∧(x ∨y ∨z)∧(x ∨z)∧(x ∨y )
a0
a1
a2
c2
b3 y 0
a3 x 0
a4
c3 z0
c4
b4
a5
c5
b5
a6
d6
b6
ky6
oy6
a7
d7
h7
c6
q6
b7
k7
o7
c7
q7
a8
d8
g 8 h8
a9
d 9 e9
g 9 h9
i8
b8
k8
m8 o 8 p 8
c8
q8
s8
u8
i9
b9
k 9 l 9 m9 o 9 p 9
c9
q9 r 9 s 9
a10
u9
b 10
q 10 r 10 s 10 t 10 u 10
b 11
k 10 l 10 m10 o 10 p 10
k 11 l 11 m11 o 11 p 11
c 10
a11
d 10 e 10 f 10 g 10 h10 j 10 i 10
d 11 e 11 f 11 g 11 h11 j 11 i 11
c 11
q 11 r 11 s 11 t 11 u 11
a12
d 12 e 12 f 12 g 12 h12 j 12 i 12
b 12
k 12 l 12 m12 o 12 p 12
c 12
q 12 r 12 s 12 t 12 u 12
x
h6
x
v1
v2
v3
v4
(x ∨ y ∨ z)
(x ∨ z)
(x ∨ y )
(x ∨ y ∨ z)
v5
(x ∨ y ∨ z)
v6
(x ∨ z)
u6
z
v7
(x ∨ y )
u7
z
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
Z
Untere Schranken
1:32
Komplexität
LuF
Walter Unger
Theorem:
Das spezielle Broadcast-Problem auf Graphen vom Grad 3 ist in
N PC.
I
Gegeben F in KNF mit n Variablen und m Klauseln.
I
Setze k = 4(·dlog ne + dlog me) + 3
Wende obige Konstruktion an:
I
I
I
I
I
I
In 2 · dlog ne Schritten erzeuge n Kopien von I (v ).
In 2 · (dlog ne + dlog me) + 2 Schritten erzeuge eine Nachricht
für jedes Auftreten einer Variable.
Verlängere jeden Weg um die Länge 2 · (dlog ne + dlog me).
Erzeuge Klauseln.
Vermeide dabei Knoten vom Grad 3.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
1:33
Komplexität
Z
Untere Schranken
LuF
Walter Unger
Theorem:
Das spezielle Broadcast-Problem auf planaren Graphen vom Grad 3
ist in N PC.
Beweis: das planare 3-SAT ist in N PC. D.h. der
Abhängigkeitsgraph zwischen Klauseln und Variablen ist planar.
Definition:
Sei F Boolsche Formel in KNF. Seien V die Variablen und C die
Klauseln. Der Abhängigkeitsgraph ist dann:
GF = (V , C , {{v , c} | v ist in c})
Einleitung
Broadcast
Komplexität
Komplexität
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:34
LuF
Walter Unger
Theorem:
Das Broadcast-Problem auf planaren Graphen vom Grad 3 ist in
N PC.
Beweis: Erweitere obige Konstruktion, so dass es einen eindeutigen
“schwersten” Knoten gibt.
Einleitung
Broadcast
Komplexität
Komplexität
Erklärung
Hier sollte noch was hin
Broadcast auf Netzwerken
Z
Untere Schranken
1:34
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
1:35
Beispiel
w 0 w 1 w 2 w 3 w 4 w 5 w 6 w 7 w 8 w 9 w 10w 11w 12w 13w 14w 15w 16w 17w 18w 19w 20w 21w 22w 23w 24
a0
a1
a2
c2
b3 y 0
b4
a3 x 0
a4
a5
c3 z0
c4
c5
b5
a6
d6 x
a7
d7
a8
g 8 h8
g 9 h9
d 9 e9
d 10 e 10 f 10 g 10 h10 j 10
a10
a11
a12
v1
c7
q6 z
q7
b8
k8
m8 o 8 p 8
c8
q8
s8
u8
b9
c9
q9 r 9 s 9
u9
c 10
q 10 r 10 s 10 t 10 u 10
b 11
k 9 l 9 m9 o 9 p 9
k 10 l 10 m10o 10 p 10
k 11 l 11 m11o 11 p 11
c 11
q 11 r 11 s 11 t 11 u 11
b 12
k 12 l 12 m12o 12 p 12
c 12
q 12 r 12 s 12 t 12 u 12
ky6
b7
i8
i9
i 10
b 10
d 11 e 11 f 11 g 11 h11 j 11 i 11
d 12 e 12 f 12 g 12 h12 j 12 i 12
d8
a9
c6
k7
oy6
o7
b6
h6 x
h7
v2
(x ∨ y ∨ z) (x ∨ z)
v3
v4
v5
v6
(x ∨ y ) (x ∨ y ∨ z) (x ∨ y ∨ z) (x ∨ z)
v7
(x ∨ y )
Z
Untere Schranken
u6 z
u7
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
1:36
Komplexität
Z
Untere Schranken
LuF
Walter Unger
Definition:
Das Gossip-Problem ist:
I
Gegeben: G = (V , E ) und k ∈ IN.
I
Frage: Gilt r2 (G ) 6 k.
Theorem:
Dass Gossip-Problem ist in N PC.
Beweis: Erweitere obige Konstruktion, so dass es einen eindeutigen
“schwersten” Knoten gibt.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
1:37
Beispiel
w 0 w 1 w 2 w 3 w 4 w 5 w 6 w 7 w 8 w 9 w 10w 11w 12w 13w 14w 15w 16w 17w 18w 19w 20w 21w 22w 23w 24
a0
a1
a2
c2
b3 y 0
b4
x 0 a3
a4
a5
c5
c6
k7
oy6
o7
c7
q6 z
q7
b8
k8
m8 o 8 p 8
c8
q8
s8
u8
b9
c9
q9 r 9 s 9
u9
c 10
q 10 r 10 s 10 t 10 u 10
b 11
k 9 l 9 m9 o 9 p 9
k 10 l 10 m10o 10 p 10
k 11 l 11 m11o 11 p 11
c 11
q 11 r 11 s 11 t 11 u 11
b 12
k 12 l 12 m12o 12 p 12
c 12
q 12 r 12 s 12 t 12 u 12
b6
ky6
b7
i8
i9
da10 e 10 f 10 g 10 h10 j 10 i 10
da11 e 11 f 11 g 11 h11 j 11 i 11
da12 e 12 f 12 g 12 h12 j 12 i 12
b 10
h6 x
h7
da8
da9 e 9
v1
c3 z0
c4
b5
da6 x
da7
g 8 h8
g 9 h9
v2
(x ∨ y ∨ z) (x ∨ z)
v3
v4
v5
v6
(x ∨ y ) (x ∨ y ∨ z) (x ∨ y ∨ z) (x ∨ z)
v7
(x ∨ y )
Z
Untere Schranken
u6 z
u7
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
1:38
Komplexität
Z
Untere Schranken
LuF
Walter Unger
Definition:
Das 1-Weg Gossip-Problem ist:
I
Gegeben: G = (V , E ) und k ∈ IN.
I
Frage: Gilt r (G ) 6 k.
Theorem:
Dass Gossip-Problem ist in N PC.
Beweis: Erweitere obige Konstruktion, so dass es einen eindeutigen
“schwersten” Knoten gibt.
Und vermeide Nachrichtenblockaden.
Einleitung
Broadcast
Komplexität
Komplexität
Erklärung
Hier sollte noch was hin
Broadcast auf Netzwerken
Z
Untere Schranken
1:38
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Komplexität
1:39
Beispiel
v 16 v 17
w 0 w 1 w 2 w 3 w 4 w 5 w 6 w 7 w 8 w 9 w 10w 11w 12w 13w 14w 15w 16w 17w 18w 19w 20w 21w 22w 23w 24
a0
a1
a2
c2
b3 y 0
b4
x 0 a3
a4
a5
c5
c6
k7
oy6
o7
c7
q6 z
q7
b8
k8
m8 o 8 p 8
c8
q8
b9
k 9 l 9 m9 o 9 p 9
k 10 l 10 m10o 10 p 10
c9
c 10
q9 r 9 s 9
u9
q 10 r 10 s 10 t 10 u 10
c 11
q 11 r 11 s 11 t 11 u 11
c 12
q 12 r 12 s 12 t 12 u 12
b6
ky6
b7
i8
i9
i 10
da11 e 11 f 11 g 11 h11 j 11 i 11
da12 e 12 f 12 g 12 h12 j 12 i 12
b 10
h6 x
h7
g 8 h8
da8
g 9 h9
da9 e 9
da10 e 10 f 10 g 10 h10 j 10
v1
c3 z0
c4
b5
da6 x
da7
v2
(x ∨ y ∨ z) (x ∨ z)
v3
b 11
b 12
v4
k 11 l 11 m11o 11 p 11
k 12 l 12 m12o 12 p 12
v5
v6
(x ∨ y ) (x ∨ y ∨ z) (x ∨ y ∨ z) (x ∨ z)
v7
(x ∨ y )
u6 z
u7
s8
Z
Untere Schranken
u8
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Netzwerke
1:40
Cube-Connected Cycles der Dimension d
CCC (d)
VCCC (d)
c
ECCC
(d)
h
ECCC
(d)
0000
000
00
0
r
0010
010
10
0011
011
11
r
r
2
r r
r
3
r r
r
r
r 0
r
1
0001
001
01
1
=
=
=
=
r
Z
Untere Schranken
LuF
Walter Unger
c
h
(VCCC (d) , ECCC
(d) ∪ ECCC (d) )
{0, 1, · · · , d − 1} × {0, 1}d
{{(i, w ), ((i + 1) mod n, w )} | w ∈ {0, 1}d , 0 6 i < n}
{{(i, w 0w 0 ), (i, w 1w 0 )} | w ∈ {0, 1}i , w 0 ∈ {0, 1}n−i−1 }
r
0100
100
r
0101
101
r
r
r
0110
110
r
0111
111
r
r
r
1000
r
r
1001
r
r
r r
r
r
r r r r r r r r &
&
Knotenanzahl:
Kantenanzahl:
Knotenzsh.:
r r
d · 2d
3 · d · 2d−1
3
1010
r
1011
r
r
r
r
r
1100
r
r
r
r
1110
r
1111
r
r
r
r
r
r
r r r r r r
%
%
Knotengrad:
Durchmesser:
Kantenzsh.:
r
1101
3
2 · d − 2 + bd/2c
3
Einleitung
Broadcast
Komplexität
Netzwerke
Erklärung
Hier sollte noch was hin
Broadcast auf Netzwerken
Z
Untere Schranken
1:40
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Netzwerke
1:41
Butterfly der Dimension d
BF (d)
VBF (d)
c
EBF
(d)
h
EBF
(d)
00
000
0000
0
0
1
2
0
3
0
0
01
1
001
0001
=
=
=
=
10
010
0010
Z
Untere Schranken
LuF
Walter Unger
c
h
(VBF (d) , EBF
(d) ∪ EBF (d) )
{0, 1, · · · , d − 1} × {0, 1}d
{{(i, w ), ((i + 1) mod n, w )} | w ∈ {0, 1}d , 0 6 i < n}
{{(i, w 0w 0 ), ((i + 1) mod n, w 1w 0 )} | |w | = i, |w 0 | = n − i −
11
011
0011
0100
100
0101
101
0110
110
0111
111
1000
1001
1010
1011
1100
1101
1110
1111
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
H
H
@
H
@H
@
@
@
@
@
@
H
H@
@
H
r
r H
r @H
r r @
r @rHr @
rH@rHr @
H H
r r
H
r
H
r
r
H
H
H
H
H
H
H
H
rH
H
HHr
H
HX
HrH
Hr
HrX
H
r
rHHX
r r rH
r
rX
r
r
rHH
XX
X
X
X
r
X
X
X
X
X
X
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
XrXX
XrXXr
X
XrXX
XrXXr
X
X
XX
X
X
X
r r rh
rh
rh
r
r
r
r
rX(
(
((
(
(
((
((
((
(
h
h
h
h
h
((
(
(
(
(
(
(
h
h
h
h
h
h
h
(
(
(
(
(
(
h
h
h
h
h
h
hh
(
(
(
(
(
h
h
h
h
h
h
hh
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
hh
(((
(
(
(
(
(
(
h
h
h
h
h
h
h
hh(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
((
(((
(((
hhhh
hhh
h(
h(
h(
h(
h(
(
(
(
((
h
h
h
h
h
h(
((
hrhhrhhr
hrh
hrh
hrh
h(
h(
h(
hh
hh
hh
hh
hh
h(
r ((
r (
r ((
r ((
r ((
r (
rh(
rh
rh
rh
(
(
(
(
(
(
(
(
h
Knotenanzahl:
Kantenanzahl:
Knotenzsh.:
d · 2d
d · 2d+1
4
Knotengrad:
Durchmesser:
Kantenzsh.:
4
d + bd/2c
4
Einleitung
Broadcast
Komplexität
Netzwerke
Erklärung
Hier sollte noch was hin
Broadcast auf Netzwerken
Z
Untere Schranken
1:41
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Netzwerke
1:42
DeBruijn Netzwerk der Dimension d
I
I
I
I
DeBruijn
DB(d)
VDB(d)
s
EDB(d)
se
EDB(d)
Z
Untere Schranken
LuF
Walter Unger
Netzwerk:
s
se
= (VDB(d) , EDB(d)
∪ EDB(d)
)
d
= {0, 1}
= {(wa, aw ) | a ∈ {0, 1}, wa, aw ∈ VDB(d) }
= {(wa, bw ) | a ∈ {0, 1}, b = 1 − a, wa, bw ∈ VDB(d) }
Knotenanzahl: 2d
Knotengrad: 2 + 2
d+1
Kantenanzahl: 2
Durchmesser: d
Ungerichtetes DeBruijn Netzwerk:
0s
0se
∪ EDB(d)
)
DB 0 (d) = (VDB(d) , EDB(d)
0s
EDB(d) = {{wa, aw } | a ∈ {0, 1}, wa, aw ∈ VDB(d) }
0se
EDB(d)
= {{wa, bw } | a ∈ {0, 1}, b = 1 − a, wa, bw ∈ VDB(d) }
Knotenanzahl:
Kantenanzahl:
2d
2d+1 − 3
Knotengrad:
Durchmesser:
4
d
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Netzwerke
1:43
Beispiel
001
000
011
010
100
101
111
110
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Netzwerke
Erklärung
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:43
LuF
Walter Unger
Das DeBruijn Netwerk besteht also aus Knoten, die über {0, 1} Zeichenketten
der Länge d dargestellt werden. Die Kanten ergeben sich dabei duch eine
Verschiebeoperation: Das linke Zeichen wird entfernt und recht ein neues
Zeichen angefügt.
Damit ist das Bestimmen eines Weges von Knoten w nach w 0 genauso einfach
wie im Hypercube. Man muss die Zeichenketten nur verschieben und dabei
passend die Änderungen rechts einschieben bis man w 0 erreicht. Damit ist der
Durchmesser genau wei beim Hypercube. aber der Knotengrad ist hier nur 4.
Weiter ist zu bemerken, das das DB(d + 1) der Line-Graph von DB(d) ist.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Netzwerke
1:44
Shuffle-Exchange Netzwerk der Dimension d
I
I
I
I
Z
Untere Schranken
LuF
Walter Unger
Shuffle-Exchange Netzwerk:
s
e
SE (d) = (VSE (d) , ESE
(d) ∪ ESE (d) )
d
VSE (d) = {0, 1}
s
ESE
(d) = {(wa, aw ) | a ∈ {0, 1}, wa, aw ∈ VSE (d) }
e
ESE (d) = {(wa, wb) | a ∈ {0, 1}, b = 1 − a, wa, wb ∈ VSE (d) }
Knotenanzahl: 2d
Knotengrad: 2 + 2
d+1
Kantenanzahl: 2
Durchmesser: 2 · d − 1
Ungerichtetes Shuffle-Exchange Netzwerk:
0s
0e
SE 0 (d) = (VSE (d) , ESE
(d) ∪ ESE (d) )
0s
ESE
(d) = {{wa, aw } | a ∈ {0, 1}, wa, aw ∈ VSE (d) }
0e
ESE
(d) = {{wa, wb} | a ∈ {0, 1}, b = 1 − a, wa, wb ∈ VSE (d) }
Knotenanzahl:
Kantenanzahl:
2d
2d+1 /3
Knotengrad:
Durchmesser:
3
2·d −1
Einleitung
Broadcast
Komplexität
Netzwerke
Erklärung
Hier sollte noch was hin
Broadcast auf Netzwerken
Z
Untere Schranken
1:44
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Netzwerke
1:45
Beispiel
010
000
011
001
110
100
101
Z
Untere Schranken
111
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Netzwerke
Einige Eigenschaften
Z
Untere Schranken
1:46
LuF
Walter Unger
Lemma
Für alle k gilt: CCC (k) ist Teilgraph vom BF (k)
Lemma
Für alle k gilt: SE (k) ist Teilgraph vom DB(k)
Lemma
Für alle k gilt: DB(k + 1) ist der Linegraph (Kantengraph) vom
DB(k)
Einleitung
Broadcast
Komplexität
Netzwerke
Erklärung
Hier sollte noch was hin
Broadcast auf Netzwerken
Z
Untere Schranken
1:46
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Erste Resultate
1:47
Erste Resultate
Lemma
Es gilt:
I
b(CCC (k)) 6 5k + O(1)
I
b(BF (k)) 6 4.5k + O(1)
I
b(SE (k)) 6 4k + O(1)
I
b(DB(k)) 6 3k + O(1)
Beweis: Benutze folgende Aussagen:
I
b(G ) 6 (deg (G ) − 1) · diam(G ) + 1.
I
b(G ) 6 deg (G ) · rad(G ).
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
CCC
1:48
CCC
Z
Untere Schranken
LuF
Walter Unger
Theorem:
Es gilt: d5k/2e − 2 6 minb(CCC (k)) = b(CCC (k)) 6 d5k/2e − 1.
Beweis: Folgende Teile werden bewiesen:
I
minb(CCC (k)) > d5k/2e − 2
I
Algorithmus für d5k/2e − 1 wird angegeben.
Einleitung
Broadcast
Komplexität
CCC
Broadcast auf Netzwerken
1:48
Erklärung
Hier sollte noch was hin
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
CCC
1:49
CCC,
Beweis
minb(CCC
(k))
k/2e
−1111
2
1100
1101 1110
1001 >
1010 d5
1011 ·
0101 0110 0111 1000
0000 0001
0010 0011 0100
0
1
2
3
q
q
q
q
q
q
q
q q
q q
q q
q
q
q
q
q
q
q
q
q q q
q
q q q q q q q q q q q
"
q
q
q
q
q
q
q
q
LuF
Walter Unger
q
q q
q q q
q q q q q q
!
q
q
q
q
q
q
q
q
Z
Untere Schranken
I
diam(CCC (k) = b5/2 · kc − 2
I
Damit gilt für gerade k die Behauptung.
I
Sei nun k ungerade.
I
Ursprung der Nachricht sei Knoten (0, 00 · · · 0).
I
Die Knoten (bk/2c, 11 · · · 1) und (bk/2c + 1, 11 · · · 1) sind im
Abstand (b5 · k/2c − 2).
I
Damit wird eine Runde mehr als der Durchmesser gebraucht.
I
Behauptung ergibt sich mit der Knotensymmetrie.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
CCC
1:50
CCC,
Algorithmus
für0111(d5
k/2e
− 1100
1) 1101 1110 1111
1000 ·1001
1010 1011
0000 0001
0010 0011 0100 0101 0110
0
1
2
3
q
q
q
q
q
q
q
q q
q q
q q
q
q
q
q
q
q
q
q
q q q
q
q q q q q q q q q q q
"
q
q
q
q
q
q
q
q
q
q q
q q q
q q q q q q
!
q
q
q
q
q
q
q
q
Z
Untere Schranken
Algorithm BROADCAST-CCCk
(0, 00...0) sends to (0, 10...0);
for i = 1 to k − 1 do begin
for all a0 , . . . , ai−1 ∈ {0, 1} do in parallel
(i − 1, a0 . . . ai−1 00 . . . 0) sends to (i, a0 . . . ai−1 00 . . . 0);
for all a0 , . . . , ai−1 ∈ {0, 1} do in parallel
(i, a0 . . . ai−1 00 . . . 0) sends to (i, a0 . . . ai−1 10 . . . 0);
end;
for all α ∈ {0, 1}k do in parallel
Broadcast auf Kreis Cα (k) von (k − 1, α);
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
CCC
1:51
CCC
LuF
Walter Unger
Theorem:
Es gilt: minb(CCC (k)) = b(CCC (k)) 6 d5 · k/2e − 2.
Beweisidee: Verändere 1.Phase und schicke in beide Richtungen.
0000
0001
0
r
r
1
r
r
2
r
3
r r
r
0010
r
0011
r
r
r
r
r
0100
r
r
r
0101
r
r
0110
r
0111
r
r
r
r
1000
r
r
1001
r
r
r
r
r
r
r r r r r r r r &
&
1010
r
1011
r
r
r
r
r
1100
r
r
r
1101
r
r
1110
r
1111
r
r
r
r
r
r
r r r r r r
%
%
Einleitung
Broadcast
Komplexität
CCC
Broadcast auf Netzwerken
1:51
Erklärung
Hier sollte noch was hin
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
SE
1:52
SE
Theorem:
Es gilt: minb(SE (k)) = b(SE (k)) = 2 · k − 1
Beweis:
I
Durchmesser liefert untere Schranke.
I
Beachte SE (k) ist nicht knotensymmetrisch.
I
Müssen für jeden Knoten v Algorithmus angeben.
I
Algorithmus muss konfliktfrei sein.
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
SE
Broadcast auf Netzwerken
1:52
Erklärung
Hier sollte noch was hin
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
SE
1:53
SE, Beweis
Für jedes w = a1 a2 . . . ak ∈ {0, 1}k , sei
I
w1 = a1 und
I
w (t) = at at+1 . . . ak (für 2 6 t 6 k)
I
w (k + 1) = ε.
I
Startknoten sei: α = a1 a2 . . . ak in SEk .
Z
Untere Schranken
α = a1 a2 . . . ak−1 ak sendet an a1 a2 . . . ak−1 āk (exchange);
for t = 1 to k − 1 do
for all β ∈ {0, 1}t do in parallel
begin
if α(t) 6∈ {β1 }+
then α(t)β sendet an α(t + 1)βat (shuffle);
α(t + 1)βat sendet an α(t + 1)βāt (exchange)
end;
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
SE
α = a1 a2 . . . ak−1 ak sendet an a1 a2 . . . ak−1 āk (exchange);
for t = 1 to k − 1 do
for all β ∈ {0, 1}t do in parallel begin
if α(t) 6∈ {β1 }+
then α(t)β sendet an α(t + 1)βat (shuffle);
1:54
w1
w (t)
=
=
LuF
Walter Unger
a1
at at+1 . . . ak
α(t + 1)βat sendet an α(t + 1)βāt (exchange) end;
Zeige: Es gibt keine Konflikte!
I
Bei den Exchange-Kanten gibt es keinen Konflikt, denn das
letzte Bit bestimmt eindeutig die Sender und Empfänger.
I
Angenommen bei den Shuffle-Kanten gäbe es einen Konflikt.
I
D.h., α(t)β = α(t + 1)γat für ein β, γ ∈ {0, 1}t .
I
Damit gilt: at α(t + 1) = α(t + 1)γ1 ⇒ at = at+1 = · · · =
ak = γ1 ⇒ α(t) ∈ {γ1 }+ .
I
Das ist ein Widerspruch: denn Shuffle-Kanten für
α(t) ∈ {γ1 }+ werden nicht genutzt.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
SE
1:55
SE, Beweis
α = a1 a2 . . . ak−1 ak sendet an a1 a2 . . . ak−1 āk (exchange);
for t = 1 to k − 1 do
for all β ∈ {0, 1}t do in parallel begin
if α(t) 6∈ {β1 }+
then α(t)β sendet an α(t + 1)βat (shuffle);
Z
Untere Schranken
w1
w (t)
=
=
LuF
Walter Unger
a1
at at+1 . . . ak
α(t + 1)βat sendet an α(t + 1)βāt (exchange) end;
Zeige: Es werden all Knoten informiert!
I
I
I
I
I
Zeige per Induktion: Nach 2 · r + 1 Runden sind alle Knoten
α(r + 2)β, β ∈ {0, 1}r +1 informiert.
IA: r = 0 ist klar.
Falls α(r + 1) 6∈ {β1 }+ ,β ∈ {0, 1}r +1 , dann werden diese
Knoten informiert, denn alle α(r + 2)β haben bereits die
Information bekommen.
Falls α(r + 1) ∈ {β1 }+ , β ∈ {0, 1}r +1 , dann gilt
α(r + 2)βar +1 = α(r + 1)β1 βar +1 .
Dieser Knoten ist schon vorher informiert worden.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
BF
1:56
BF
LuF
Walter Unger
Theorem:
Es gilt: b3m/2c 6 minb(BF (m)) = b(BF (m)) = 2 · m
0000
0
1
2
3
0
1000
0100
1100
0010
1010
0110
1110
0001
1001
0101
1101
0011
1011
0111
1111
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
@
@
@
@
@
@
@
@
rH@H
r r @
r @H
r r @
r @rHr @
rH@rHr @
r
H
r
H
r
r
H
H
H
H
H
H
H
H
rH
H
HHr
H
HX
HrH
Hr
HrX
H
r
rHH
r r rH
r
rX
r
r
rHH
XX
X
X
X
X
r
X
X
X
X
X
X
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
XrXX
XrXX
XrXXr
XrXXr
X
XX
X
X
X
X
r rh
rh
rh
rh
r
r
r
r
rX(
(
((
(
(
((
((
((
(
h
h
h
h
h
((
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
h
h
h
h
h
h
(
(
(
(
(
h
h
h
h
h
h
hh
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
hh
(((
(
(
(
(
(
(
h
h
h
h
h
h
h
hh(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
((
(((
(((
hhhh
hhh
h(
h(
h(
h(
h(
(
(
(
((
h
h
h
h
h
h(
((
hrhhrhhr
hrh
hrh
hrh
h(
h(
h(
hh
hh
hh
hh
hh
h(
r ((
r (
r ((
r ((
r ((
r (
rh(
rh
rh
rh
(
(
(
(
(
(
(
(
h
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
BF
Z
Untere Schranken
1:57
BF (Beweisidee)
LuF
Walter Unger
b3m/2c
minb(BF (m)) = b(BF (m)) = 2 · m
0000 1000 0100 1100 0010 1010 0110 1110 0001 1001 0101 1101 0011 1011
0111 6
1111
0
1
2
3
0
q q q q q q q q q q q q q q q q
@
@
@
@
@
@
@
@
q @q q @q q @q q @q q @q q @q q @q q @q
HH
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
qX
q
q
q
q
q
q
q
q
q
q
q
q
q
q
XXX
X
X
X
X
H
q
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
h
hq
hq
X
X
X
X
X
X
X
X
X
X(
X
Xq
qh
qh
qh
qh
qh
qh
q
q
q
q(
q(
qX
qX
((
(
(
(
(
(
(
(
h
h
(
(
(
(
(
(
h
h
h
h
h
(
(
(
(
h
(
h
h
h
h
h
h
hh
((
(
(
(
(
(
(
(
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
hh
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
h
(
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
((
(((
(((
hh
hhh
h(
h
h
h
h
(
(
(
(
(
h
h
h
h
h
h
(
(
((
h
h
h
(
(
(
h
h
h
h
h
q (q(
q((
q((
q (
q(
q(
q(
q(
qh
qh
qh
qh
qh
q hq
(
(
(
(
hh
h
hh
hh
h
h
h
I
I
Durchmesser liefert untere Schranke.
Versende auf zwei Arten:
I
I
Bevorzuge einmal die Kreiskanten (senkrechte Kanten).
Bevorzuge sodann die Kreuzkanten.
I
Teile dazu das Butterfly in zwei isomorphe Teile auf.
I
Benutze auf jedem Teil eine andere Strategie.
I
Verteile zum Schluss auf den Kreisen.
Einleitung
Broadcast
Komplexität
BF
Broadcast auf Netzwerken
1:57
Erklärung
Hier sollte noch was hin
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
BF
1:58
BF (Beweis I)
Z
Untere Schranken
LuF
Walter Unger
b3m/2c
minb(BF (m)) = b(BF (m)) = 2 · m
0000 1000 0100 1100 0010 1010 0110 1110 0001 1001 0101 1101 0011 1011
0111 6
1111
0
1
2
3
0
q q q q q q q q q q q q q q q q
@
@
@
@
@
@
@
@
q @q q @q q @q q @q q @q q @q q @q q @q
HH
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
qX
q
q
q
q
q
q
q
q
q
q
q
q
q
q
XXX
X
X
X
X
H
q
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
h
hq
hq
X
X
X
X
X
X
X
X
X
X(
X
Xq
qh
qh
qh
qh
qh
qh
q
q
q
q(
q(
qX
qX
((
(
(
(
(
(
(
(
h
h
(
(
(
(
(
(
h
h
h
h
h
(
(
(
(
h
(
h
h
h
h
h
h
hh
((
(
(
(
(
(
(
(
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
hh
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
h
(
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
((
(((
(((
hh
hhh
h(
h
h
h
h
(
(
(
(
(
h
h
h
h
h
h
(
(
((
h
h
h
(
(
(
h
h
h
h
h
q (q(
q((
q((
q (
q(
q(
q(
q(
qh
qh
qh
qh
qh
q hq
(
(
(
(
hh
h
hh
hh
h
h
h
I
Aufteilung von BF (m) in F0 und F1 :
I
FO hat Knoten: {(l, α0) | 0 6 l 6 m − 1, α ∈ {0, 1}m−1 }.
I
F1 hat Knoten: {(l, α1) | 0 6 l 6 m − 1, α ∈ {0, 1}m−1 }.
I
F0 und F1 sind isomorph.
I
]0 (w ) bezeichnet die Anzahl der 0’en in w .
I
]1 (w ) bezeichnet die Anzahl der 1’en in w .
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
BF
1:59
BF (Beweis II)
Z
Untere Schranken
LuF
Walter Unger
b3m/2c
minb(BF (m)) = b(BF (m)) = 2 · m
0000 1000 0100 1100 0010 1010 0110 1110 0001 1001 0101 1101 0011 1011
0111 6
1111
0
1
2
3
0
q q q q q q q q q q q q q q q q
@
@
@
@
@
@
@
@
q @q q @q q @q q @q q @q q @q q @q q @q
HH
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
qX
q
q
q
q
q
q
q
q
q
q
q
q
q
q
XXX
X
X
X
X
H
q
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
h
hq
hq
X
X
X
X
X
X
X
X
X
X(
X
Xq
qh
qh
qh
qh
qh
qh
q
q
q
q(
q(
qX
qX
((
(
(
(
(
(
(
(
h
h
(
(
(
(
(
(
h
h
h
h
h
(
(
(
(
h
(
h
h
h
h
h
h
hh
((
(
(
(
(
(
(
(
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
hh
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
h
(
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
((
(((
(((
hh
hhh
h(
h
h
h
h
(
(
(
(
(
h
h
h
h
h
h
(
(
((
h
h
h
(
(
(
h
h
h
h
h
q (q(
q((
q((
q (
q(
q(
q(
q(
qh
qh
qh
qh
qh
q hq
(
(
(
(
hh
h
hh
hh
h
h
h
I
I
I
I
Betrache F0 : Vom Knoten v0 = (0, 00 · · · 00) gibt es einen
eindeutigen Weg der Länge m − 1 zu w0 = (m − 1, α0) für
α ∈ {0, 1}m−1 .
Betrache F1 : Vom Knoten v1 = (m − 1, 00 · · · 01) gibt es
einen eindeutigen Weg der Länge m − 1 zu w1 = (0, α1) für
α ∈ {0, 1}m−1 .
Erster Schritt des Algorithmus: Knoten v0 informiert v1 .
Dann in F0 und F1 zwei verschiedene Strategien.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
BF
1:60
BF (Beweis III)
Z
Untere Schranken
LuF
Walter Unger
b3m/2c
minb(BF (m)) = b(BF (m)) = 2 · m
0000 1000 0100 1100 0010 1010 0110 1110 0001 1001 0101 1101 0011 1011
0111 6
1111
0
1
2
3
0
q q q q q q q q q q q q q q q q
@
@
@
@
@
@
@
@
q @q q @q q @q q @q q @q q @q q @q q @q
HH
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
qX
q
q
q
q
q
q
q
q
q
q
q
q
q
q
XXX
X
X
X
X
H
q
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
h
hq
hq
X
X
X
X
X
X
X
X
X
X(
X
Xq
qh
qh
qh
qh
qh
qh
q
q
q
q(
q(
qX
qX
((
(
(
(
(
(
(
(
h
h
(
(
(
(
(
(
h
h
h
h
h
(
(
(
(
h
(
h
h
h
h
h
h
hh
((
(
(
(
(
(
(
(
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
hh
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
h
(
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
((
(((
(((
hh
hhh
h(
h
h
h
h
(
(
(
(
(
h
h
h
h
h
h
(
(
((
h
h
h
(
(
(
h
h
h
h
h
q (q(
q((
q((
q (
q(
q(
q(
q(
qh
qh
qh
qh
qh
q hq
(
(
(
(
hh
h
hh
hh
h
h
h
I
Ziel: Informiere in b3m/2c Schritten die Knoten
w0 = (m − 1, α0) und w1 = (0, α1) für α ∈ {0, 1}m−1 .
I
Falls ein Knoten w0 = (m − 1, α0) informiert wurde, so
informiert dieser sogleich w1 = (0, α1) (falls notwendig).
I
Falls ein Knoten w1 = (0, α1) informiert wurde, so informiert
dieser sogleich w0 = (m − 1, α0) (falls notwendig).
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
BF
1:61
BF (Beweis IV)
Z
Untere Schranken
LuF
Walter Unger
b3m/2c
minb(BF (m)) = b(BF (m)) = 2 · m
0000 1000 0100 1100 0010 1010 0110 1110 0001 1001 0101 1101 0011 1011
0111 6
1111
0
1
2
3
0
q q q q q q q q q q q q q q q q
@
@
@
@
@
@
@
@
q @q q @q q @q q @q q @q q @q q @q q @q
HH
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
qX
q
q
q
q
q
q
q
q
q
q
q
q
q
q
XXX
X
X
X
X
H
q
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
h
hq
hq
X
X
X
X
X
X
X
X
X
X(
X
Xq
qh
qh
qh
qh
qh
qh
q
q
q
q(
q(
qX
qX
((
(
(
(
(
(
(
(
h
h
(
(
(
(
(
(
h
h
h
h
h
(
(
(
(
h
(
h
h
h
h
h
h
hh
((
(
(
(
(
(
(
(
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
hh
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
(
h
(
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
((
(((
(((
hh
hhh
h(
h
h
h
h
(
(
(
(
(
h
h
h
h
h
h
(
(
((
h
h
h
(
(
(
h
h
h
h
h
q (q(
q((
q((
q (
q(
q(
q(
q(
qh
qh
qh
qh
qh
q hq
(
(
(
(
hh
h
hh
hh
h
h
h
I
I
I
I
In F0 schickt ein informierter Knoten (l, α0) zuerst an
(l + 1, α0) und dann an (l + 1, α(l)0). [α(l) = α1 . . . ᾱl . . . ]
In F1 schickt ein informierter Knoten (l, α1) zuerst an
(l + 1, α(l)1) und dann an (l + 1, α1).
Laufzeit, um von v0 = (0, 00 · · · 00) einen Knoten
w0 = (m − 1, α0) zu informieren:
1 + ]0 (α) + 2]1 (α) = m + ]1 (α).
Laufzeit, um von v1 = (m − 1, 00 · · · 01) einen Knoten
w1 = (0, α1) zu informieren: 1 + 2]0 (α) + ]1 (α) = m + ]0 (α).
Einleitung
Broadcast
Komplexität
BF
Broadcast auf Netzwerken
1:62
BF (Beweis V)
I
Fall 1: m ist ungerade:
I
I
I
Z
Untere Schranken
LuF
Walter Unger
b3m/2c 6 minb(BF (m)) = b(BF (m)) = 2 · m
Fall 1.1: ]1 (α) < (m − 1)/2:
Knoten w0 wird von v0 informiert zum Zeitpunkt
m + ]1 (α) < (3m − 1)/2 = b3m/2c.
Danach sendet w0 zu w1 .
w1 ist informiert zum Zeitpunkt b3m/2c.
Fall 1.2: ]0 (α) < (m − 1)/2:
Knoten w1 wird von v0 informiert zum Zeitpunkt
m + ]0 (α) < (3m − 1)/2 = b3m/2c.
w0 wird von w1 informiert zum Zeitpunkt b3m/2c.
Fall 1.3: ]0 (α) = ]1 (α) = (m − 1)/2:
w0 ist informiert zum Zeitpunkt
m + ]1 (α) = (3m − 1)/2 = b3m/2c.
w1 ist informiert zum Zeitpunkt
m + ]0 (α) = (3m − 1)/2 = b3m/2c.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
BF
1:63
BF (Beweis V)
I
Fall 2: m ist gerade:
I
I
Fall 2.1: ]1 (α) 6 (m − 2)/2:
Knoten w0 wird von v0 informiert zum
m + ]1 (α) 6 3m/2 − 1 < b3m/2c.
Somit ist w1 informiert zum Zeitpunkt
Fall 2.2: ]0 (α) 6 (m − 2)/2:
Knoten w1 wird von v0 informiert zum
m + ]0 (α) 6 3m/2 − 1 < b3m/2c.
Somit ist w0 informiert zum Zeitpunkt
Z
Untere Schranken
LuF
Walter Unger
b3m/2c 6 minb(BF (m)) = b(BF (m)) = 2 · m
Zeitpunkt
b3m/2c.
Zeitpunkt
b3m/2c.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
BF
1:64
BF (Beweis VI)
0000
0
1
2
3
0
1000
0100
1100
0010
1010
0110
1110
0001
1001
0101
Z
Untere Schranken
LuF
Walter Unger
b3m/2c 6 minb(BF (m)) = b(BF (m)) = 2 · m
1101 0011 1011 0111 1111
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
@
@
@
@
@
@
@
@
rH@H
r
r @r
r @H
r
r @r
r @rH r @r
rH@rH r @r
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
Hr Hr
r
r HX
r HX
r r r r rXHrXHrXrrH
rHH
XX
X
X
r
X
X
X
X
X
X
X
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
XrXX
XrXX
XrXXr
XrXXr
X
X
XX
X
X
X
r r rh
rh
rh
r
r
r
r
rX(
(
((
(
(
((
((
((
(
h
h
h
h
h
((
(
(
(
(
(
(
h
h
h
h
h
h
h
(
(
(
(
(
(
h
h
h
h
h
h
hh
(
(
(
(
(
h
h
h
h
h
h
hh
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
hh
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
hh(
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
(
(
(
(
(
(
(
(
h
h
h
h
h
h
h
h
(
(
(
(
(
(
h
h
h
h
h
h
h
h(
(
(
(
(
(
(
(
((
h
h
h
h
h
h
h(
(
(
(
(
((
((
hhhh
hh
h(
h(
h(
h(
h(
h(
(
(
(
((
h
h
h
h
h
h(
h
(
((
(
hrhhrhhr
hrh
hrh
hrh
h(
h(
h(
hh
hh
hh
hh
hh
h(
r ((
r (
r ((
r ((
r (
r (
rh(
rh
rh
rh
(
(
(
(
(
(
(
(
h
I
In der letzten Phase wird nur auf den Kreisen Information
verteilt.
I
Laufzeit dazu: dm/2e Runden
I
Insgesamt: b3m/2c + dm/2e = 2m
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
DB
1:65
DB
LuF
Walter Unger
Theorem:
Es gilt: d 6 minb(DB(m)) = b(DB(m)) = b3/2 · (d + 1)c.
Beweis:
I
Idee (y1 , y2 , . . . , yd ) informiert (y2 , . . . , yd , y1 ) und
(y2 , . . . , yd , y1 ).
I
Reihenfolge wird durch Parität festgelegt.
I
Sei α = ]1 (y1 , y2 , . . . , yd ) mod 2.
I
(y1 , y2 , . . . , yd ) informiert zuerst (y2 , . . . , yd , α) und dann
(y2 , . . . , yd , α).
I
(0011000) informiert zuerst (0110000) und dann (0110001).
Einleitung
Broadcast
DB
Komplexität
Broadcast auf Netzwerken
1:65
Erklärung
Aufbau der Idee:
I Wenn man
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
DB
1:66
DB (Beweis)
I
Z
Untere Schranken
LuF
Walter Unger
Für k ∈ {0, 1} betrachte den Pfad Pk
von (y1 , y2 , . . . , yd ) nach (z1 , z2 , . . . , zd−1 , zd ).
(y1 , . . . , yd ), (y2 , . . . , yd , k), (y3 , . . . , yd , k, z1 ), (y4 , . . . , yd , k, z1 , z2 ), · · ·
· · · , (yd , k, z1 , . . . , zd−2 ), (k, z1 , . . . , zd−1 ), (z1 , . . . , zd−1 , zd ))
I
Sei v0i = (yi , . . . , yd , 0, z1 , . . . , zi−2 ) der i-te Knoten auf P0 .
I
Sei vi1 = (yi , . . . , yd , 1, z1 , . . . , zi−2 ) der i-te Knoten auf P1 .
D.h. wir haben unterschiedliche Laufzeiten (1 oder 2) zum
Senden:
I
I
I
(yi , . . . , yd , 0, z1 , . . . , zi−2 ) −→
(yi+1 , . . . , yd , 0, z1 , . . . , zi−2 , zi−1 )
(yi , . . . , yd , 1, z1 , . . . , zi−2 ) −→
(yi+1 , . . . , yd , 1, z1 , . . . , zi−2 , zi−1 ).
I
Damit ist die Summe der Laufzeiten auf P0 und P1 : 3(d + 1).
I
Damit ist die Laufzeit für Broadcast: b3(d + 1)/2c.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Knotengrad
1:67
Knotengrad
Z
Untere Schranken
LuF
Walter Unger
Theorem:
Sei n > 5 und G = (V , E ) Graph mit n Knoten:
I
Falls ∆(G ) = 3, dann gilt:
b(G ) > minb(G ) > 1.4404 log(n) − 3.
I
Falls ∆(G ) = 4, dann gilt:
b(G ) > minb(G ) > 1.1374 log(n) − 2.
Beweis:
I Sei A ein Broadcast-Algorithmus.
I Sei Broad A (v0 ) die Menge der Knoten, die von A in i Runden
i
von v0 aus informiert werden.
I Sei Rec A (v0 ) = Broad A (v0 ) \ Broad A (v0 ).
i
i
i−1
I
I
Sei Rec0A (v0 ) = {v0 }.
P
Es gilt: |BroadiA (v0 )| = is=0 |RecsA (v0 )|.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
Knotengrad
1:67
Erklärung
LuF
Walter Unger
Betrachten wir hier nur den Fall ∆(G ) = 3. Der Fall ∆(G ) = 4 geht analog.
I Der Startknoten kann durch den beschränkten Knotengrad höchsten
dreimal senden.
I Der Startknoten sendet höchstens zu den Zeitpunkte 1, 2, 3
I Jeder andere Knoten wird zu einem Zeitpunkt t über eine Kante e
informiert.
I Über diese Kante e kann er keinen Knoten neu informieren.
I Daher kann jeder andere Knoten höchsten zweimal senden.
I Wenn ein Knoten v in Runde t von w informiert wurde, dann erhielt w
die Information zum Zeitpunkt t − 1 oder t − 3.
I Damit ist die Anzahl der Knoten die in Runde t > 3 informiert werden,
höchstens so groß wie die Anzahl der Knoten die in Runde t − 1 und
t − 2 informiert wurden.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Knotengrad
1:68
Beweis
I
Sei A(i) = |ReciA (v0 )|.
I
A(0) = 1
I
A(1) = 1
I
A(2) = 2
I
A(3) = 4
I
A(i) = A(i − 1) + A(i − 2) für i > 4.
I
Zeige per Induktion: A(i) 6 1.61804i für i > 0.
Z
Untere Schranken
LuF
Walter Unger
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Knotengrad
1:69
Beweis
I
A(0) = 1 6 1 = 1.618040
I
A(1) = 1 6 1.61804 = 1.618041
I
A(2) = 2 6 2.61805 = 1.618042
I
A(3) = 4 6 4.23612 = 1.618043
Induktionsschritt (i > 4):
I
I
I
I
Z
Untere Schranken
LuF
Walter Unger
A(i) 6 1.61804i für i > 0
Es gelte: A(j) 6 1.61804j für jedes j 6 i − 1.
A(i) = A(i −1)+A(i −2) 6 1.61804i−1 +1.61804i−2 6 1.61804i
Beachte dazu: 1.61804 + 1 6 1.618042 .
I
P
Damit gilt: n 6 |BroadtA (v0 )| = ti=0 |ReciA (v0 )| 6
Pt
Pt
1.61804t+1 −1
i
t
i=0 A(i) 6
i=0 1.61804 = 1.61804−1 6 3 · 1.61804
I
t > 1.4404 · log2 n − 3.
I
Beweis der zweiten Aussage geht analog.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Knotengrad
Weitere Resultate
Z
Untere Schranken
1:70
LuF
Walter Unger
Folgerung:
b(DBk ) > minb(DBk ) > 1.1374 · k − 2
Theorem:
b(BFm ) = minb(BFm ) > 1.7396m für ausreichend große m.
Beweisansatz: Untersuche die Anzahl der Knoten im Abstand k.
Theorem:
b(DBm ) > 1.3042m für ausreichend große m.
Beweisansatz: Untersuche die Anzahl der Knoten im Abstand k.
Einleitung
Broadcast
Komplexität
Broadcast auf Netzwerken
Knotengrad
1:71
Überblick
Graph
Kn
HQk zuweisung
CCCk
SEk
DBk
BFk
|V |
n
2k
k · 2k
2k
2k
k · 2k
Durchmesser
1
k
b5k/2c − 2
2k − 1
k
b3k/2c
Z
Untere Schranken
Untere Schranke
dlog2 ne
k
d5k/2e − 2
2k − 1
1.4404k
1.7609k
LuF
Walter Unger
Obere Schranke
dlog2 ne
k
d5k/2e − 2
2k − 1
3
(k + 1)
2
2k − 1
2k − 1/2 log log k +
Einleitung
Literatur
Literatur
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:72
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
Broadcast
Komplexität
Broadcast auf Netzwerken
Z
Untere Schranken
1:72
LuF
Walter Unger
Herunterladen