120 likes | 234 Views
Algorithmische Probleme in Funknetzwerken IX. Christian Schindelhauer schindel@upb.de. Radio Broadcasting. Broadcasting Ein Sender möchte eine Nachricht an alle n Stationen übermitteln Radio Broadcasting Ungerichteter Graph G=(V,E) beschreibt mögliche Verbindungen
E N D
Algorithmische Probleme in FunknetzwerkenIX Christian Schindelhauer schindel@upb.de
Radio Broadcasting • Broadcasting • Ein Sender möchte eine Nachricht an alle n Stationen übermitteln • Radio Broadcasting • Ungerichteter Graph G=(V,E) beschreibt mögliche Verbindungen • Wenn Kante {u,v} existiert, kann u nach v senden und umgekehrt • Wenn keine Kante, dann kein Empfang und keine Störung • Eine Frequenz, Funkstationen sind gleichgetaktet • Senden zwei benachbarte Stationen gleichzeitig, wird kein Signal empfangen (noch nicht einmal ein Störungssignal) • Hauptproblem: • Graph G=(V,E) ist den Teilnehmern unbekannt • Verteilter Algorithmus zur Vermeidung von Konflikten
Radio Broadcasting ohne ID • Theorem Es gibt keinen deterministischen Broadcasting-Algorithmus für das Radio-Broadcasting-Problem (ohne ID) • Beweis: Betrachte folgenden Graphen: • Blauer Knoten sendet (irgendwann)Nachricht an die Nachbarknoten • Sobald sie informiert sind, verhalten sie sichsynchron (weil sie den gleichen Algorithmusabarbeiten) und senden (oder senden nicht)immer gleichzeitig • Roter Knoten erhält keine Nachricht.
Simple-Random (I) • Jede Station führt folgenden Algorithmus aus: • Simple-Random(t) begin ifNachricht m vorhanden then for i ← 1 tot do r ← Ergebnis fairer Münzwurf (0/1 mit jeweils W‘keit 1/2) ifr = 1 then Sende m an alle Nachbarn fi od fi end
Simple-Random (II) • D: Durchmesser des Graphen • Δ: Grad Lemma Ein Nachbarknoten wird in einer Runde mit Wahrscheinlichkeit ≥ Δ2Δ informiert, falls mindestens ein Nachbar informiert ist. Beweis: • Die Wahrscheinlichkeit, dass genau einer von m ≤ Δ informierten Nachbarknoten ungestört sendet, ist: W‘keit, dass m1 Nachbarn nicht senden # Möglich-keiten Sender W‘keit, dass ein Nachbarn sendet
p p p p p 1p 1 1p 1p 1p 1p Ein probabilistisches Verfahren Ein Nachbarknoten wird in einer Runde mit Wahrscheinlichkeit p ≥ Δ2Δ informiert, falls mindestens ein Nachbar informiert ist. • Betrachte bel. Knoten mit Abstand D zur Quelle • Sei (u,u1,u2,..,uD) ein Pfad von der Quelle u zu diesem Knoten • Wir unterschätzen den wirklichen Informationsfluß und betrachten nur den Informationsfluß auf diesen Pfad
Weg p 1p p 1p 1p p Zeit p 1p 1p 1 p p 1p 1p p 1 Der Markov-Prozess der Informationsausbreitung Lemma Für jedes α>1 und β ≥ 0 gilt: Wenn auf einem Pfad der Länge D eine Nachricht mit unabhängiger W‘keit p voranschreitet und mit W‘keit 1p stehen bleibt, dann ist die W‘keit, dass die Information nach spätestens t Schritten mit nicht durchgelaufen ist, höchstens
Laufzeit von Simple-Random Lemma Für geeignetes c>1 gilt: Simple-Random informiert das gesamte Netzwerk mit Wahrscheinlichkeit von mindestens 12nk in Zeit c 2Δ/Δ (D+ log n), wenn alle Stationen bis zum Ende aktiv bleiben. Beweis: • Betrachte Knoten und Pfad der Länge ≤ D • Betrachte Informationsfluss auf den Pfad: p ≥ Δ2Δ • Setze α=2 und β = (k+1) log n • Damit folgt das Lemma
Modellerweiterung • Modell bis jetzt zu restriktiv • Deterministisches Modell: • Jeder der n Spieler kennt seine eindeutige Identifikationsnummer (ID) aus dem Bereich {1,..,n} • Probabilistisches Modell: • Die Anzahl n der Spieler ist bekannt • Der maximale Grad Δ ist bekannt • Aber keine ID vorhanden
Decay (I) • Idee: Randomisierte Ausdünnung der Teilnehmber Decay(k,m) begin j ← 1 repeat j ← j + 1 Sende Nachricht m an alle Nachbarn r ← Ergebnis fairer Münzwurf (0/1 mit jeweils W‘keit 1/2) until r=0 oder j > k end
Decay (II) • d Nachbarknoten informiert • Alle d Nachbarknoten starten gleichzeitig Decay(k,m) • P(k,d): W‘keit, dass Nachricht wird von d Nachbarn in≤ k Runden erhalten Lemma Für d≥2 gilt:
BGI-Broadcast[Bar-Yehuda, Goldreich, Itai 1987] • Alle Informierten haben synchronisierten Rundenzähler • D.h. Time wird mit Nachricht weiter gegeben • Und in jeder Runde inkrementiert BGI-Broadcast(Δ,) begin k ← 2 log Δ t ← 2 log (N/) wait until Nachricht kommt an for i ← 1 to t do wait until (Time mod k) = 0 Decay(k,m) od end