Algorithmische Probleme in Funknetzwerken

Werbung
Algorithmische Probleme in Funknetzwerken
Vorlesungsskript
Christian Schindelhauer
Klaus Volbert
Fakultät für Elektrotechnik, Informatik und Mathematik
Institut für Informatik
Heinz Nixdorf Institut und Universität Paderborn
Wintersemester 2002/2003
Inhaltsverzeichnis
Abbildungsverzeichnis
IV
Tabellenverzeichnis
V
1 Organisation
1.1 Vorlesungsdaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.1 Webseite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.2 Termine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.3 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.4 Sprechstunde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Inhalte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1 Inhalt der Veranstaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2 Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3 Verwandte und empfehlenswerte Vorlesungen . . . . . . . . . . . . . . . . . . . .
1.2.4 Prüfung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.5 Prüfungsfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1
1
1
1
1
1
1
2
3
4
4
2 Einführung
2.1 Referenzmodell . . . . . . . . . . . . . . . . . .
2.1.1 Das OSI-Schichtenmodell . . . . . . . .
2.1.2 Das Internetreferenzmodell . . . . . . . .
2.1.3 Anwendungsschicht (application layer) .
2.1.4 Transportschicht (transport layer) . . . .
2.1.5 Netzwerkschicht (Network layer) . . . .
2.1.6 Host-to-network . . . . . . . . . . . . .
2.1.7 Tanenbaums Referenzmodell . . . . . . .
2.2 Die physikalische Schicht . . . . . . . . . . . . .
2.3 Mehrfachnutzung des Mediums . . . . . . . . .
2.3.1 Code Division Multiple Access (CDMA)
3 Zellulare Netze
3.1 Voronoi-Diagramme . . . . . . . . . . .
3.2 Frequenzzuweisung . . . . . . . . . . . .
3.2.1 Labelling und Färbungsprobleme
3.2.2 F*D-FAP . . . . . . . . . . . . .
3.2.3 Radio-Labelling . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
11
11
11
13
13
13
13
14
14
14
20
22
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
25
25
37
41
42
44
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4 Radio Broadcasting
47
4.1 Effizientes Probabilistisches Radio Broadcasting . . . . . . . . . . . . . . . . . . . . . . . 51
4.2 Eine untere Schranke für deterministische Broadcasting . . . . . . . . . . . . . . . . . . . 54
I
5 Mobile Ad Hoc Netzwerke
5.1 Experimentelle Untersuchungen . . . . . . . . . . . . . . . . . .
5.1.1 Netzwerkschicht . . . . . . . . . . . . . . . . . . . . . .
5.1.2 Verbindungsschicht . . . . . . . . . . . . . . . . . . . . .
5.2 Mathematische Analysen . . . . . . . . . . . . . . . . . . . . . .
5.2.1 Ressourceneffiziente Basisstrukturen im Rundfunkmodell
5.2.2 Topologieaufbau im Sektorenmodell . . . . . . . . . . . .
.
.
.
.
.
.
57
59
59
61
63
63
68
6 Call-Control in zellularen Netzwerken
6.1 Das Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.1 Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.2 Das Spiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Online-Algorithmen und das Kompetitive Verhältnis . . . . . . . . . . . . . . . . . . . .
6.2.1 Das Leihskiproblem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2.2 Das kompetitive Verhältnis im Belohnungsmodell . . . . . . . . . . . . . . . . . .
6.3 Flatrate ohne Auflegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.1 Der Greedy-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.2 Oblivious Adversary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.3 Klassifizieren und Auswählen . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.4 Lokale Online-Strategien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4 Das allgemeine Resultat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
77
77
77
78
79
79
79
80
80
81
82
83
86
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Abbildungsverzeichnis
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
Vergleich der drei Referenzmodelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sinus-Kurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Approximation einer Rechteckkurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sägezahnkurve und Fouriertransformation (I) . . . . . . . . . . . . . . . . . . . . . . . .
Sägezahnkurve und Fouriertransformation (II) . . . . . . . . . . . . . . . . . . . . . . . .
Frequenzbänder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Amplitudenmodulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Frequenzmodulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phasenmodulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
14
15
16
17
17
19
19
20
3.1
3.2
3.3
3.4
3.5
3.6
3.7
Zellulares Netz mit Basisstation und mobilen Empfängern . . . . . . . . . . . . . . . . .
Bisektor zweier Punkte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Voronoi-Region eines Punktes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Nur wenn alle Punkte von auf einer Geraden liegen, können Voronoi-Geraden auftreten
Konvexe Hülle einer Punktmenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Der Voronoi-Punkt beschränkt die Voronoi-Kante des Bisektors
nach rechts . .
Jeder Punkt (hier und auf der Halbgeraden mit rechten Winkel zur Strecke
, die
diese in schneidet, ist Teilmenge der unbeschränkten Voronoi-Region von . . . . . . .
Der Kreis beinhaltet alle Voronoi-Punkt und beschränkt alle Voronoi-Kanten . . . . . .
Jeder Punkt einer endlichen Teilmenge der Parabel liegt auf der konvexen Hülle . . . . . .
Verweise einer Kante bei der DCEL-Zeigerstruktur . . . . . . . . . . . . . . . . . . . . .
Das Wellenfront verurscacht durch die Sweep-Line . . . . . . . . . . . . . . . . . . . . .
Wellenereignis vom Typ A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Wellenereignis vom Typ B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Datenstruktur für Punkte
Ereigniswarteschlange
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Planarer Graph mit gültiger 3-Färbung . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ein Clique der Größe 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reduktionsgraph für das Färbungsproblem . . . . . . . . . . . . . . . . . . . . . . . . .
Beispiel für eine F*D-FAP-Instanz und Lösung . . . . . . . . . . . . . . . . . . . . . . .
-Färbungsinstanz für
und Lösung . . . . . . . . . . . . . . . . . . . . . . .
Radio-Färbungsinstanz und Lösung . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Äquivalenz von Radio-Labelling und HP(1,2) . . . . . . . . . . . . . . . . . . . . . . . .
Traversierung des minimal spannenden Baums . . . . . . . . . . . . . . . . . . . . . . .
26
26
27
28
28
29
3.8
3.9
3.10
3.11
3.12
3.13
3.14
3.15
3.16
3.17
3.18
3.19
3.20
3.21
3.22
3.23
4.1
4.2
4.3
4.4
4.5
4.6
4.7
Mögliche Netzwerke für Radio-Broadcasting . . . . . . . . . . . . . . . . . . . . . . . .
Ohne IDs kann kein Radio-Broadcasting-Algorithmus diesen Graph informieren . . . . . .
Der Simple-Random-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Der Decay-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Der Broadcast-Algorithmus von Bar-Yehuda, Goldreich und Itai [BYGI87] . . . . . . . .
Die Graphfamilie
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adversary-Strategie gegen einen deterministischen Broadcast-Algorithmus gegeben durch
die Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
III
29
31
31
32
33
34
35
35
36
38
38
39
43
43
44
45
46
48
48
48
51
53
55
56
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
5.11
5.12
5.13
5.14
6.1
6.2
6.3
6.4
6.5
Hidden-Terminal-Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exposed-Terminal-Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asymmetric-Interference-Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Problem des Zusammenhangs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Count-to-Infinity Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Route Discovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MACA: Request-to-Send, Clear-to-Send Schema . . . . . . . . . . . . . . . . . . . . . .
Die beiden ¨ausseren Kanten können zeitgleich zurÜbertragung benutzt werden, d.h. die
erfolderliche Routingzeit ist mindestens um den Faktor 2 kleiner als die Congestion
. . .
Die Definition von GG( ) entspricht der Energie-Optimalität einer Kante:
.
Die Linie im TradeOff zwischen Dilation und Energie . . . . . . . . . . . . . . . . . . . .
Das Gitter im TradeOff zwischen Congestion und Dilation . . . . . . . . . . . . . . . . .
Das Hufeisen im TradeOff zwischen Congestion und Energie . . . . . . . . . . . . . . . .
Die ersten 5 Iterationen der Kochschen Schneeflockenkurve . . . . . . . . . . . . . . . . .
Yao, SparsY und SymmY mit 8 festen Sektoren für 100 zufällig platzierte Knoten . . . . .
Bedienen und Ablehnung von Rufanfoderungen . . . . . . . . . . . . . . . . . . . . . . .
Greedy-Algorithmus A für das Call-Control-Problem . . . . . . . . . . . . . . . . . . . .
Der Sterngraph als schlimmster Fall für den Greedy-Algorithmus für Call-Control . . . .
Classify-and-Randomly-Select (CRS) für das Call-Control-Problem . . . . . . . . . . . .
Block and Randomly Serve (BaRS) — Ein Algorithmus für das Call-Control-Problem für
eine Frequnz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
58
58
58
60
61
62
65
65
67
67
68
69
71
78
80
81
82
84
Tabellenverzeichnis
2.1
Deutsche und Internationale Bezeichnungen der Frequenzbereiche. . . . . . . . . . . . . .
17
5.1
Graph- und Kommunikationseigenschaften der Sektorengraphen . . . . . . . . . . . . . .
73
V
VI
Kapitel 1
Organisation
1.1 Vorlesungsdaten
1.1.1 Webseite
Zu dieser Veranstaltung ist eine Webseite unter der Adresse:
http://www.upb.de/cs/ag-madh/vorl/AlgPFunk/
eingerichtet worden. Hier findet man aktuelle Informationen als auch Skript, Vorlesungsfolien und Übungsblätter.
1.1.2 Termine
Die Vorlesung findet mittwochs, 11:15–12:45 Uhr im Raum F1.110 statt. Die zugehörige einstündige
Übung findet von 10:15–11:00 Uhr im Raum F1.110 statt. Übungszettel werden eine Woche vor dem
Übungstermin auf der Webseite veröffentlicht und können am Montag vor demÜbungstermin in Raum
F1.203 abgegeben werden. Die Bearbeitung ist freiwillig.
1.1.3 Voraussetzungen
Vorausgesetzt wird ein abgeschlossenes Vordiplom im Studiengang Informatik. Kenntnisse aus der Veranstaltung Kommunikation in Parallelen Rechenmodellen sind in dieser Veranstaltung sehr hilfreich, werden
aber nicht vorausgesetzt.
1.1.4 Sprechstunde
Wegen der geringen Nachfrage gibt es keine festen Sprechstundenzeit. Für Fragen steht Christian Schindelhauer in Raum F1.203 zur Verfügung und Klaus Volbert in Raum F1.125. Empfehlenswert ist eine Anmeldung telefonisch unter 05251-606452 oder per EMail ([email protected]/[email protected]).
1.2 Inhalte
1.2.1 Inhalt der Veranstaltung
Im Rahmen dieser Veranstaltung werden algorithmische Problemstellungen vorgestellt und diskutiert, die
im Zusammenhang mit drahtloser Kommunikation entstehen. Die Veranstaltung gliedert sich in die folgenden drei Bereiche.
1
Physikalische Grundlagen und Besonderheit von Funknetzwerken
Funknetzwerke unterscheiden von den Übertragungsmöglichkeiten undÜbertragungsschwierigkeiten stark von Festnetzen. Wir gehen kurz auf eine allgemeine Schichtendarstellung von Funknetzwerke ein und besprechen physikalische Grundlagen wie Frequenzspektren, Modulationstechniken
und Möglichkeiten zur Mehrfachnutzung des elektromagnetischen Mediums.
Kommunikationsprobleme in zellularen Netzwerken
Zellulare Netze teilen ein Gebiet in viele kleine auf und versorgen es mit entsprechend zugeordneten
Frequenzen. Durch eine niedrige Sendeleistung werden die Zellradien absichtlich begrenzt. Hierdurch können die in einer Zelle verwendeten Frequenzen in einer anderen Zelle wieder verwendet
werden. Zellulare Netze erlauben auf diese Weise eine starke Mehrfachnutzung von Frequenzen und
dadurch eine hohe Teilnehmerzahl.
Das Radio Broadcasting-Modell
Beim Radio Broadcasting-Modell wird eine Nachricht möglichst schnell an alle Teilnehmer versandt, deren Positionen nicht bekannt ist. Hierbei steht nur eine Frequenz zur Verfügung und um alle
Teilnehmer zu erreichen, muss aufgrund der beschränkten Sendereichweite unter Umständen die
Nachricht von Teilnehmer zu Teilnehmer weitergereicht werden. Bei dieser Problemstellung spielt
die Auflösung von Interferenzen eine entscheidende Rolle.
Kommunikation in Mobilen Ad-Hoc-Netzwerken (MANET)
MANETs sind ein Alternativentwurf zu zellularen Netzwerken. Ohne dass spezielle Basisstationen
zur Verfügung stehen, sollen die Endteilehmer autonom und verteilt ein Netz aufbauen, das Punktzu-Punkt-Kommunikation zwischen Teilnehmern ermöglicht. Aufgrund der eingeschränkten Sendereichweite und um den Energieverbrauch der Endgeräte zu verringern, müssen Nachrichten hierzu
über mehrere Stationen befördert werden (hops).
Diese Vorlesung konzentriert sich auf Algorithmen und mathematische Modelle. Wir werden nicht
im einzelnen die technischen Besonderheiten und Implementationsdetails von Funknetzwerken vorstellen
(allein schon aus zeitlichen Gründen). Vielmehr werden Grundproblemstellungen im Zusammenhang mit
Funknetzwerken herausgearbeitet und algorithmische Modelle und Lösungen diskutiert.
1.2.2 Literatur
Es gibt eine Reihe von Büchern, die für ein vertieftes Studium hilfreich sind. Hierin werden hauptsächlich
praktische Fragestellungen diskutiert und weniger die algorithmischen Problemstellungen für die wir uns
im Rahmen dieser Veranstaltung interessieren. Letztere sind momentan zumeist nur in Form von Artikeln
erhältlich. Diese und die ergänzenden Lehrbücher werden hier im Skript aufgeführt. Gegen Ende der Vorlesung wird in diesem Abschnitt eine vollständige Liste geeigneter weiterführender Literatur veröffentlicht.
Für den Anfang weisen wir auf folgende Bücher hin.
Computer Networks, Tanenbaum [Tan96].
Tanenbaums Rundumschlag zum Thema Rechnernetzwerke bezieht sich zwar hauptsächlich auf
drahtgebundene Netzwerke, er spart das Thema drahtlose Kommunikation nicht aus und gibt eine
kompakte (und humorvolle) Einführung in das Gebiet.
Wireless Digital Communication, Kamilo Feher [Feh95].
Dieses Buch gibt einen sehr guten Überblick in die physikalische Grundlagen und technische Umsetzung von drahtloser Kommunikation. Die algorithmischen Problem aus der Vorlesung werden hier
(wie auch in Tanenbaum) höchstens erwähnt.
Mobile Communication, Jochen Schiller [Sch00].
Dieses Buch gibt ebenfalls (nur) einen Überblick mit besonderen Augenmerk auf existierende Mobilfunksysteme. Die prinzipielle Wirkungsweise wird recht anschaulich beschrieben. Zu diesem Buch
sind es die passenden Folien on-line verfügbar.
2
Algorithmische Geometrie, Rolf Klein [Kle97].
Klein hat sich selber intensiv mit Voronoi-Diagrammen auseinander gesetzt und beschreibt in diesem Buch, die in der Vorlesung vorgestellten Algorithmen sehr anschaulich. Sofern es VoronoiDiagramme betrifft, orientiert sich diese Vorlesung an diesem Buch.
Algorithmische Geometrie, Rolf Klein [Kle97].
Klein hat sich selber intensiv mit Voronoi-Diagrammen auseinander gesetzt und beschreibt in diesem Buch, die in der Vorlesung vorgestellten Algorithmen sehr anschaulich. Sofern es VoronoiDiagramme betrifft, orientiert sich diese Vorlesung an diesem Buch und dem folgenden.
Computational Geometry, Algorithms and Applications, Mark de Berg, Marc van Kreveld, Mark
Overmars und Otfried Schwarzkopf [MKOS00]
Besonders das Kapitel 7, Voronoi diagrams, eignet sich hervorragend als Studienbegleitende Lektüre
und für ein vertieftes Studium geometrischer Algorithmen.
On the Time-Complexity of Broadcast in Radio Networks: An Exponential Gap Between Determinism
and Randomisation, Reuven Bar-Yehuda, Oded Goldreich und Alon Itai [BYGI87]
Auf diesen Artikel bezieht sich ein Teil des Kapitel Radio Broadcasting. In diesem sehr kompakt
und doch umfassenden Artikel werden die Beweise sehr verständlich und elegant dargestellt. Um den
Vorlesungsstoff noch einmal in etwas veränderter Darstellung nachzulesen und noch tiefere Einblicke
zu erhalten, kann dieser Artikel uneingeschränkt empfohlen werden.
Ad Hoc Networking, Charles E. Perkins [Per01]
Charles Perkins gibt eine umfassende und doch auch kompakte Übersicht über den Stand der angewandten Forschung im Bereich mobiler Ad-Hoc-Netzwerke. Für ein vertieftes Studium der hier
vorgestellten theoretischen Ergebnisse verweisen wir auf [MSVG02, GLSV02].
Competitive Call Control, Grammati E. Pantziou, George P. Pentaris und Paul G. Spirakis [PPS97,
PPS02]
Wir stellen Ergebniss dieses Artikels im letzten Kapitel dieser Vorlesung vor.
1.2.3 Verwandte und empfehlenswerte Vorlesungen
Während der Vorbereitung dieser Veranstaltung standen wir in dauernden Kontakt mit Friedhelm Meyer auf der Heide, Tamás Lukovszki und Rolf Wanka. Vorlesungen mit verwandten oder weiterführenden
Themenstellungen wurden sowohl parallel zur Vorlesung als auch schon zuvor angeboten.
Rolf Wanka, Approximationsalgorithmen
Das Thema der Approximierung von kombinatorisch schwierigen Problemen wird in dieser stetig
verbesserten Vorlesung umfassend abgehandelt. Wir danken Rolf Wanka dafür, dass wir Teile seines
Skripts übernehmen durften und empfehlen das bei Teubner in Kürze erscheinende Buch zu seiner
Vorlesung.
Tamás Lukovszki, Geometriealgorithmen, Sommer 2000
Wir danken Tamás für die Erlaubnis Teile seines Skripts und seiner Folien zum Thema VoronoiDiagrammen im Rahmen dieser Vorlesung zu verwenden.
Tamás Lukovszki, Algorithmen für Netzwerkprobleme, Winter 2002/2003
Diese Veranstaltung läuft parallel und wird verwandte Themenstellungen besprechen.
Webseite: http://wwwhni.upb.de/ tamas/NW WS02/index.html
Friedhelm Meyer auf der Heide, Advanced Course on Communication in Networks, Winter 2002/2003
Diese Veranstaltung findet parallel zu dieser Vorlesung statt.
Webseite: http://www.upb.de/cs/ag-madh/vorl/NetComm02/
3
1.2.4 Prüfung
Wer nach der DPO 4 oder der neuen Lehramtsstudienordnung studiert, kann im Anschluss an dieser Veranstaltung eine benotete, mündliche, ca. 30-minütige Prüfung bei Christian Schindelhauer ablegen. Termine
für diese Prüfung können mit ihm vereinbart werden. Am Ende der Vorlesung wird ein Fragenkatalog
möglicher Prüfungsfragen veröffentlicht.
1.2.5 Prüfungsfragen
Wir stellen den Prüflingen hier eine Liste von Fragen zur Vorbereitung zur Verfügung, die so in der Prüfung
gestellt werden könnten.
1. Vorlesung KW 41/02
1. Nennen und beschreiben Sie kurz die Schichten des ISO/OSI-Schichtenmodells.
2. Welche Schichten kennt das Internet-Schichtenmodell?
3. Welcher Zusammenhang besteht zwischen Wellenlänge und Frequenz einer elektromagnetischen
Welle?
4. Was besagt der Satz von Dirichlet?
5. Was sind Frequenzbereiche?
6. Welche Frequenzbänder sind für Funknetzwerke interessant?
2. Vorlesung KW 42/02
7. Beschreiben Sie Charakteristika des Ausbreitungsverhalten von elektromagnetischen Wellen, die
sich problematisch auf die Kommunikation auswirken können.
8. Welche Auswirkungen entstehen durch die Bewegung von Funkteilnehmern?
9. Welche Modulationstechniken gibt es?
10. Was ist das Signal zu Interferenz/Rauschverhältnis?
11. Wie kann das elektromagnetische Medium mehrfach ausgenutzt werden?
12. Erläutern sie das Code-Division-Multiple-Access-Verfahren!
3. Vorlesung KW 43/02
13. Was versteht man unter dem Best-Station-Problem?
14. Erklären Sie die Begriffe Bisektor, Voronoi-Region und Voronoi-Diagramm.
15. Geben Sie eine formale Definition des Voronoi-Diagramms.
16. Geben Sie eine formale Definition der konvexen Hülle.
17. Woraus besteht die konvexe Hülle einer endlichen Punktmenge?
der sich ausbreitende Kreis. Was kann man aus der Anzahl der
18. Sei ein Punkt der Ebene und
ersten Schnittpunkte mit der Knotenmenge folgern?
19. In welcher Beziehung steht die konvexe Hülle einer Punktmenge mit den unbeschränkten VoronoiRegionen?
20. Was besagt die Eulersche Formel?
4
4. Vorlesung KW 44/02
21. In welchen zahlenmäßigen Verhältnis stehen Voronoi-Kanten und Voronoi-Knoten?
22. Welche Zeitkomplexität hat das Sortierproblem von
Zahlen?
23. Welche Zeitkomplexität hat die Berechnung der konvexen Hülle in der Ebene?
24. Welche Zeitkomplexität hat die Berechnung des Voronoi-Diagramms?
25. Was versteht man unter einer doubly connected edge list?
26. Was ist eine QEDS (quad edge data structure)? Wofür wird sie benötigt?
5. Vorlesung KW 45/02
27. Wie schnell und auf welchem Platz kann das Voronoi-Diagramm berechnet werden?
28. Erklären Sie die Sweepline-Technik.
29. Beschreiben Sie einen Sweepline-Algorithmus zur Berechnung des Voronoi-Diagramms.
30. Warum funktioniert zur Bestimmung des Voronoi-Diagramms nicht ein einfacher Sweepline-Algorithmus?
31. Welche Ereignisse muss der Sweepline-Algorithmus zur Bestimmung des Voronoi-Diagramms verarbeiten?
32. Welche Datenstrukturen benötigen Sie zur effizienten Umsetzung des Sweepline-Algorithmus zur
Bestimmung des Voronoi-Diagramms?
33. Kennen Sie Probleme außer dem Voronoi-Diagramm, die mit einem Sweepline-Algorithmus gelöst
werden können?
6. Vorlesung KW 46/02
34. Wie wird die Frequenzvergabe an Basisstationen modelliert?
35. Was ist ein Ziel der Frequenzvergabe?
36. Welches Problem erhält man, wenn man die Anzahl der vergebenen Frequenzen minimieren möchte?
37. Was versteht man unter einer Knotenfärbung?
38. Welche Bedeutung haben die chromatische und die Clique Zahl?
39. Was wissen Sie über die Berechnung einer Knotenfärbung (allgemein, in planaren Graphen)?
40. Erklären Sie absolute und relative Güte von Approximationsalgorithmen.
41. Sagen Sie etwas zur Approximierbarkeit des Färbungsproblems.
5
7. Vorlesung KW 47/02
42. Welche Grundtypen der Frequenzzuweisungsproblem gibt es?
43. Was ist F*D-FAP?
44. Was versteht man unter T-Färbung?
45. Welche Beziehung besteht zwischen der T-Färbungszahl und der Färbungszahl?
46. Was versteht man unter Radio-Färbung?
47. Schränken sie die Radio-Färbungszahl durch den Grad des Graphen ein.
48. Was weiß man hinsichtlich der Komplexität der T-Färbung und Radio-Färbungsprobleme?
49. Was versteht man unter dem Radio-Labelling-Problem?
50. Welcher Zusammenhang besteht zwischen dem Radio-Labelling-Problem und HP(1,2)?
51. Kann man Radio-Labelling effizient approximieren?
8. Vorlesung KW 48/02
52. Erläutern Sie das Radio Broadcasting Problem.
53. Warum funktioniert deterministische Broadcasting ohne ID im allgemeinen nicht?
54. Welches Zeitverhalten hat Simple-Random als Radio-Broadcasting-Strategie?
mit Wahrscheinlichkeit einen
55. Angenommen eine Information schreitet einen Pfad der Länge
Schritt voran. Wie hoch ist die Wahrscheinlichkeit, dass der Weg nach einer gegebenen Zeit nicht
durchschritten wurde?
56. Wie funktioniert Simple-Random?
9. Vorlesung KW 49/02
57. Wie lange benötigt der Simple-Random-Algorithmus, um alle Knoten zu informieren.
58. Beschreiben sie den Decay-Algorithmus.
59. Analysieren sie die Erfolgswahrscheinlichkeit des Decay-Algorithmus.
10. Vorlesung KW 50/02
60. Beschreiben Sie den BGI-Broadcast-Algorithmus.
61. Auf welchen Eigenschaften des Decay-Algorithmus baut der BGI-Algorithmus auf?
62. Welches Zeitverhalten hat der BGI-Broadcast-Algorithmus?
63. Wieso hilft Probabilismus bei der Lösung des Radio-Broadcasting-Problems Zeit zu sparen?
64. Warum kann man deterministisch mit IDs nicht in sublinearer Zeit das Radio-Broadcasting-Problem
lösen?
6
11. Vorlesung KW 02/03
65. Was ist ein (leistungsvariables) Manet?
66. Nennen und erklären Sie die Interferenzprobleme.
67. Ist der Zusammenhang in einem Manet sichergestellt?
68. Was versteht man unter Multi-Hop-Kommunikation?
69. Warum gibt es neue Protokollanforderungen in Manets?
70. Welche Aufgaben sollte ein Routingprotokoll in Manets erfüllen? Wie würden Sie die Routingaufgabe lösen?
71. Was heisst proaktiv, reaktiv und hybrid? Nennen Sie jeweils ein Routingprotokoll, dass proaktiv,
reaktiv bzw. hybrid arbeitet.
72. Erklären Sie ein Routingprotokoll Ihrer Wahl (z.B. DSR).
73. Was versteht man unter einer Hop-Minimierung?
74. Erklären Sie das Count-to-Infinity Problem.
75. Was wird in der Verbindungsschicht geregelt?
76. Welche Techniken kennen Sie, um die Übertragung zwischen zwei beliebigen Knoten sicherzustellen?
77. Wie arbeitet ein exponentielles BackOff-Protokoll?
78. Wann und wie kann man das Hidden Terminal Problem lösen?
79. Welchen Ansatz in der MAC-Schicht verfolgen probabilistische Protokolle?
12. Vorlesung KW 03/03
80. Erklären Sie in diesem Zusammenhang die Begriffe Wegesystem und Basisnetzwerk.
81. Was versteht man unter Congestion, Dilation und Einheits-/Flussenergie?
82. Was ist der Unterschied zwischen der Routingzeitanalyse in Festnetzen und Manets?
83. Wie modellieren wir eine Interferenz im Rundfunkmodell?
84. Geben Sie eine untere Schranke für die Routingzeit an und erklären Sie sie.
85. Was können Sie zur Energie- und Routingzeitoptimierung sagen?
86. Kennen Sie eine worst-case Konstruktion für die Anzahl der Interferenzen?
87. Was ist die Diversität? Kennen Sie obere/untere Schranken für die Diversität einer Knotenmenge?
88. Erklären Sie die Idee zum Aufbau des hierarchischen Schichtengraph.
89. Können mehr als zwei der Parameter Congestion, Dilation und Energie gleichzeitig optimiert werden?
7
13. Vorlesung KW 04/03
90. Erklären Sie den Unterschied zwischen Rundfunkmodell und Sektorenmodell.
91. Angenommen, ein Sektorengraph mit k Sektoren und nächster-Nachbar-Anbindung ist gegeben, was
können Sie zum Zusammenhang sagen?
92. Was ist ein Spanner/weak-Spanner/Power-Spanner? Erläutern Sie den Zusammenhang zwischen
Spanner, weak Spanner und Power-Spanner.
93. Welche Sektorengraphen kennen Sie? Welche Abhängigkeit besteht zwischen den Sektorengraphen?
94. Charakterisieren Sie die Sektorengraphen anhand ihrer Grapheigenschaften (Spanner, weak Spanner,
Power-Spanner, Interferenzen, Kanten).
95. Wie kann man den Power-Stretchfaktor beim Yao Graphen verbessern? Welchen Wert erhält man
dann?
96. Was ist eine gerichtete Interferenz?
97. Ist es theoretisch sinnvoll, den Yao-Graphen als Funknetzwerk einzusetzen?
98. Was können Sie zu dem inversen Yao-Graphen sagen?
99. Wie und wie schnell berechnen Sie den Yao-Graphen zentral?
100. Wie lang ist der im Beweis zur Weak-Spanner-Eigenschaft von SparsY-Graphen konstruierte Weg?
14. Vorlesung KW 05/03
101. Was können Sie über die Graph- und Kommunikationseigenschaften der in der Vorlesung vorgestellten Sektorengraphen sagen?
102. Wie viele Aktualisierungen sind notwendig, wenn ein Knoten das Netzwerk verlässt oder hinzukommt?
103. Geben Sie einen verteilten, lokalen Algorithmus an, mit dem sich die Sektorengraphen aufbauen
lassen.
104. Erklären Sie ein Routingprotokoll für den Yao-Graphen unter der Annahme, dass Ortsinformationen
vorhanden sind.
105. Helfen Ortsinformationen im SparsY- oder SymmY-Graphen auch weiter?
106. Was können Sie über die Dilation in den Sektorengraphen sagen?
107. Kennen Sie eine Modifikation des Yao-Graphen, die die Dilation verbessert?
15. Vorlesung KW 06/03
108. Erläutern Sie das Call-Control-Problem.
109. Warum kann keine Strategie das Call-Control-Problem optimal lösen.
110. Was ist das Skiverleih-Problem?
111. Wie bestimmt sich das kompetitive Verhältnis eines Online-Algorithmus?
112. Wie gut ist der Greedy-Algorithmus für eine geeignete Variante des Call-Control-Problem?
113. Was ist ein Oblivious Adversary? Wozu benötigt man dieses Modell?
114. Wie effizient ister Classify-and-Randomly-Select-Algorithmus für eine geeignete Variante des CallControl-Problems?
8
16. Vorlesung KW 07/03
115. Beschreiben Sie den Block-and-Randomly-Serve-Algorithmus.
116. Wieviele Requests werden im Durchschnitt durch den Block-and-Randomly-Serve-Algorithmus akzeptiert?
117. Welches kompetitive Verhältnis erreicht der Block-and-Randomly-Serve-Algorithmus?
9
10
Kapitel 2
Einf ührung
1. Vorlesung
Drahtlose Kommunikationsnetzwerke haben sich in der Alltagswelt durchgesetzt. Unter solchen Funknetz18.10.2002
werken verstehen wir Rundfunkempfänger, Fernsehen, Mobilfunknetzwerke, CB-Funk, Satellitenkommunikation und selbst Infrarotfernbedienungen. All diesen Netzwerken ist gemein, dass sie elektromagnetische Wellen zur Übertragung von Informationen benutzen und dass im Gegensatz zu Glasfaserkabel, keine
sonstige Übertragungsinfrastruktur notwendig ist.
Natürlich interessieren wir uns als Informatiker besonders für Kommunikationsnetzwerke für Computer. Auf lange Sicht wird man wohl kaum ein Kommunikationsnetzwerk finden können, in dem nicht
Computer auf der Empfänger und Senderseite zu finden sind.
2.1 Referenzmodell
Referenzmodelle für Kommunikationsnetzwerke kamen mit der Entwicklung von Rechnernetzwerken auf.
Damit sind sie mitunter jünger als einige Funknetzwerke, die wir hier betrachten werden. Trotzdem werden
wir versuchen, die einzelnen Methoden den Schichten zuzuordnen. Für eine kompakte Darstellung und
Vergleich dieser Referenzmodelle empfehlen wir das Buch von Tanenbaum [Tan96].
Die wichtigsten Referenzmodelle sind das ISO OSI (International Standards Organization/Open Systems Interconnection) Referenzmodell und das Internet-Referenzmodell.
2.1.1 Das OSI-Schichtenmodell
Die einzelnen sieben Schichten dieses Modells sind die folgenden (siehe auch [BB99]).
1. Physikalische Schicht (Physical Layer)
In dieser Schicht wird die Übertragung einzelner Informationen (Bits) über den Kommunikationskanal beschrieben. Diese Informationen müssen in Signale (in unserem Fall elektromagnetische Wellen) umgewandelt werden und übertragen werden. Die Abbildung von Information auf Singale nennt
man Modulation, die Rückabbildung Demodulation. Für Funkverbindung beschreibt man hier insbesondere über welche Frequenz, mit welcher Amplitude, etc. die Rohdaten verschickt werden.
2. Verbindungsschicht/Sicherungsschicht (Data Link Control Layer)
Diese Schicht wird unterteilt in eine (untere) Medium-Access-Control-Schicht (MAC Layer) und
eine (obere) Logical-Link-Control-Schicht (LLC Layer).
Im MAC-Layer wird das Problem des Mediumzugriffs (Medium Access) gelöst. Dieses Problem
ist besonders wichtig für Funknetzwerke, in denen das Übertragungsmedium allen Teilnehmern
zur Verfügung steht, aber die gleichzeitige Verwendung unvermeidbar zu Datenverlust führt. Somit
müssen sich im Vorfeld die Sender über die Verteilung des Mediums einigen.
Im LLC-Layer wird ein einfacher Datentransport von einer Station zu einer Nachbarstation hergestellt. Bestätigungsnachrichten werden erzeugt, evtl. verlorene Datensegmente werden wiederholt.
11
Abbildung 2.1: Vergleich der drei Referenzmodelle
Eine weitere Aufgabe dieser Schicht ist die Koordination zwischen Kontrollinformation, wie etwa
Bestätigungen, und Nutzinformation, d.h. die eigentlich zu übertragenden Daten.
3. Netzwerkschicht/Vermittlungsschicht (Network Layer)
Die Hauptaufgabe der Netzwerkschicht ist die Kontrolle des (Teil-) Netzwerks. Hierzu gehört die
Bestimmung von Pfaden zur Versendung von Information (Routing), der Vermeidung und Behebung
von Engpässen (bottleneck) und die Verwaltung von Teilnehmerinformationen, um festzustellen, ob
Teilnehmer im Netzwerk vorhanden sind.
Eine weitere wichtige Aufgabe ist die Flusskontrolle (congestion control). Hierbei muss sichergestellt werden, dass die Teilnehmer nicht mehr Pakete versenden als vom Netzwerk bewältigt werden
kann.
4. Transportschicht (Transport Layer)
Diese Schicht zerlegt Datenströme aus der Sitzungsschicht in Teilpakete und initiiert den Versand mit
der Netzwerkschicht. Es handelt sich hier um eine end-to-end-Schicht, in der evtl. Zwischenstationen nicht berücksichtigt werden. Ist es notwendig, mehrere Verbindungen gleichzeitig zu verschieden Zielen zu unterhalten, so initiiert die Transportschicht mehrere Verbindungen. Der eigentliche
Transport der Datenpakete wird auf die Netzwerkschicht delegiert.
5. Sitzungsschicht (Sesion Layer)
Dieses Schicht überwacht und steuert die Kommunikation zwischen den Endgeräten. Sie betrachtet
die gesamte Kommunikation vom Beginn bis zum Ende einer Sitzung als eine Einheit. Eine Hauptaufgabe ist hierbei die Synchronisation.
Daneben wird der Zugriff von Benutzern auf bestimmte Betriebsmittel oder Dienste überwacht oder
eingeschränkt (z.B. der Zugriff auf interne Dateisysteme etc.).
6. Darstellungsschicht (Presentation Layer)
Diese Schicht befasst sich mit Syntax und Semantik der übertragenen Nachrichten. Hierzu gehört
die Konvertierung von Datenstrukturen, wie z.B. die Umsetzung von ASCII in EBCDIC-Code, oder
die Umwandlung von Zahlendarstellungen.
Daneben gehören kryptographische Funktionen, als auch Datenkompression zu den Aufgaben dieser
Schicht.
12
7. Anwendungsschicht
Hier werden die Dienste angeordnet, die dem Anwender zur Verfügung stehen. Diese reicht von
Datenübertragung, Terminals, EMail bis zu HTTP oder Videokonferenzen.
2.1.2 Das Internetreferenzmodell
Hier wird eine Kurzbeschreibung des Internetschichtenmodells beginnend mit der obersten Schicht wiedergegeben. Der Hauptunterschied zum OSI-Schichtenmodell ist, dass das Internetreferenzmodell mehr
eine historisch gewachsene Struktur beschreibt und weniger ein systematisches Konzept wie das OSISchichtenmodell. Dies beeinträchtigt dieÜbertragbarkeit auf andere Netzwerke.
2.1.3 Anwendungsschicht (application layer)
Durch Anwendungen, wie z.B. EMail, WWW (HTTP), Telnet oder FTP (File Transfer Protocol), werden
Datenströme zwischen zwei Rechnern erzeugt. Verbindungen im Internet sind immer bidirektional. Oft
handelt es sich um Client-Server-Strukturen, wobei die Datenmenge beträchtlich variieren kann. Im Falle
von FTP kann zum Beispiel von Host A nach B nur wenige Bytes in der einen Richtung und dagegen 100
MBytes in der Gegenrichtung transferiert werden. Die gegenläufigen Datenströme sind insbesondere nicht
unabhängig.
Die eigentliche Kommunikation wird delegiert auf die Transportschicht.
2.1.4 Transportschicht (transport layer)
Im Internet existieren zwei ¨außerst unterschiedliche Protokolle:
TCP (Transmission Control Protocol)
TCP erzeugt einen zuverlässigen Datenfluss zwischen zwei Rechnern. Hierfür werden die Datenströme aus der Anwendungsschicht in Pakete angemessener Länge unterteilt. Sowohl diese Pakete,
als auch Bestätigungsnachrichten (Acknowledgment) für erhaltene Pakete, werden dann mittels der
Netzwerkschicht versandt.
UDP (User Datagram Protocol)
UDP ist ein einfacher Dienst, der Päckchen von einem Rechner zu einem anderen Rechner ohne
Erfolgsgarantie verschickt. Im Gegensatz zu TCP muss die Anwendungsschicht die Päckchengröße
vorgeben. Aus diesem Päckchen wird ein Datagramm gebildet und durch die Netzwerkschicht verschickt.
Die Transportschicht ist am Routing nicht beteiligt, Dieses wird durch die Netzwerkschicht erledigt.
Sowohl Anwendungsschicht als auch Transportschicht sind end-to-end-Protokolle.
2.1.5 Netzwerkschicht (Network layer)
Die Netzwerkschicht von TCP/IP ist IP (Internet Protocol) und realisiert einen unzuverlässigen verbindungslosen Datagrammauslieferungsdienst.
Ein Datagramm besteht im Wesentlichen nur aus dem Datenpaket, Sender- und Empfängeradresse. Die
Aufgabe von IP ist, dieses Datagramm unverändert vom Sender zum Empfänger zu befördern. Ist keine
direkte Verbindung zwischen Sender und Zielrechner vorhanden, werden als Zwischenstationen Rechner
benutzt. Diese Rechner werden Router genannt.
Die Weitergabe der Datagramme geschieht ausschließlich durch Weitergabe von Router zu Router,
als hop-to-hop-Protokoll. Jedes Datagramm wird unabhängig behandelt. Deswegen können Datagramme
in veränderter zeitlicher Reihenfolge am Zielrechner eintreffen. Auch die Datagramme tragen keinerlei
Routing-Information.
Der Weg eines Datagramms ergibt sich aus einer Folge von lokalen Entscheidungen der Router.
13
Abbildung 2.2: Sinus-Kurve
2.1.6 Host-to-network
Diese Ebene wird im Internet-Schichtenmodell kaum betrachtet, da von der Idee her, das Internet sich
ausschließlich mit der Verknüpfung lokaler Netzwerke (LAN) beschäftigt. Damit wird vorausgesetzt, dass
die Wirkungsweise lokaler Netzwerke unabhängig beschrieben wird.
2.1.7 Tanenbaums Referenzmodell
In dieser Vorlesung folgen wir dem Referenzmodell von Tanenbaum [Tan96]. Es besteht aus fünf Schichten
und wird kombiniert aus dem OSI und Internet-Referenzmodell.
1. Physikalischer Schicht (OSI)
2. Verbindungsschicht (OSI)
3. Netzwerkschicht (OSI/Internet)
4. Transportschicht (OSI/Internet)
5. Anwendungsschicht (Internet)
Der Grund, dieses Schichtenmodell vorzuziehen, ist dass das Internetmodell die gerade für Funkkommunikation interessanten unteren Schichten nicht ausreichend differenziert. Dagegen unterscheiden sich
ab der Sitzungsschicht drahtlose und drahtgebundene Kommunikation kaum. Wir konzentrieren uns daher
auf die Beschreibung der unteren Schichten und verzichten auf eine Betrachtung der oberen Schichten des
OSI-Modells.
2.2 Die physikalische Schicht
Bewegte elektrisch geladene Teilchen verursachen elektromagnetische Wellen. Die elementare Wellenform
ist die Sinuskurve wie in Abbildung 2.2 in der Amplitudendarstellung dargestellt. Die Parameter einer
Sinusschwingung
sind die folgenden.
Die Frequenz
beschreibt die Anzahl der Oszillationen pro Sekunde gemessen in Hertz (Hz).
Die Wellenlänge beschreibt die Distanz (in Metern) zwischen zwei Wellenmaxima betrachtet man
die Schwingung über den Raum verteilt zu einem bestimmten Zeitpunkt.
beschreibt die Verschiebung der Kurve im Vergleich zu einer
.
Die Phasenverschiebung
normierten Sinussschwingung
14
Abbildung 2.3: Approximation einer Rechteckkurve
Die Periode
beschreibt die zeitliche Dauer der Wiederkehr der Funktion.
Durch Antennen können elektromagnetische Wellen erzeugt und empfangen werden. Die Ausbreitungsgeschwindigkeit von elektromagnetischen Wellen im Vakuum ist gemäß der Einsteinschen Relativitätstheorie konstant und wird als Lichtgeschwindigkeit
bezeichnet. Hieraus ergibt sich
der Zusammenhang
Fouriertransformation
Fast jede stetige periodische Funktion kann in eine Linearkombination von elementaren Sinusschwingungen zerlegt werden. Darüber hinaus können auch einige nicht stetige Funktion dargestellt werden. Solch
ein Zerlegung einer periodischen Funktion wird Fouriertransformation genannt. Voraussetzung ist, dass die
Funktion den Dirichletschen Bedingungen genügt:
1. Die Funktion
2.
ist in
ist periodisch, d.h.
in endlich vielen Intervallen stetig und monoton.
3. Falls f nicht stetig in
.
ist, dann ist
Mit
wird der Grenzwert von kleinen Werten kommend und mit
kommend bezeichnet1.
von größeren Werten
den Dirichletschen Bedin üge
gen
in , so dass
gilt
Theorem 1 (Satz von Dirichlet) Die Funktion
gungen. Dann existieren Fourierkoeffizienten
1 Äquivalent
hierzu ist für alle
&
"! $ # % )' ( '+*, - ' - .0/21 I 43 /21
5 6+I 785:9<;3>=?5:9A@ 5"B478C5:9D=E5:9GFH3>@
I J 85 9 @K; J 8C5 6 @%F L J 85 B @ INM .PO
gibt es ein
, so dass für alle
15
und
gilt
Abbildung 2.4: Sägezahnkurve und Fouriertransformation (I)
Für - Die Fourierkoeffizienten ,
Für
-
können wie folgt berechnet werden:
'
'
*), - - Den Beweis der Richtigkeit dieser Aussagen kann man in Standardwerken der Analysis finden. Natürlich
kann man mit einer linearen Transformation den Satz von Dirichlet auf jede andere Funktion mit einer
anderen Periode als
übertragen.
Beispiel: Rechteckkurve und Sägezahnkurve
In Abbildung 2.3 ist eine Rechteckkurve und die ersten fünf Elemente der Folge der Fouriertransformierten dargestellt. Die Berechnung der Fourierkoeffizienten kann als Übungsaufgabe
gelöst werden.
Die periodische Funktion der Sägezahnkurve ist definiert als
, für
periodisch ergänzt, so dass sie den Dirichletschen Bedingungen genügt.
und
In Abbildung 2.4 ist die Sägezahnkurve schwarz, die
Fouriertransformierte erste
blau und die zweite Fouriertransformierte rot dargestellt. In Abbildung 2.5
Berechnet man nun die Fourierkoeffizienten erhält man
sieht man die Geschwindigkeit der Approximation der Sägezahnkurve durch sechs Entwicklungen der Fouriertransformation.
Frequenzbereiche
Wellen verschiedener Frequenz werden sogenannten Frequenzbänder oder Frequenzbereiche zugeordnet.
Maßgebend ist gemäß Tabelle 2.1 die Wellenlänge.
16
Abbildung 2.5: Sägezahnkurve und Fouriertransformation (II)
Deutsche Bezeichnung
Längstwelle
Langwelle
Mittelwelle
Kurzwelle
Ultrakurzwelle
—
—
—
Abk.
—
LW
MW
KW
UKW
–
–
–
Internationale Bezeichnung
Very Low Frequency
Low Frequency
Medium Frequency
High Frequency
Very High Frequency
Ultra High Frequency
Super High Frequency
Extra High Frequency
Abk.
Wellenlänge
VLF 10km – 100km
LF
1km – 10km
MF 100m – 1km
HF
10m – 100m
VHF
1m – 10m
UHF 10cm – 1m
SHF
1cm – 10cm
EHF 1mm – 1cm
Tabelle 2.1: Deutsche und Internationale Bezeichnungen der Frequenzbereiche.
Abbildung 2.6: Frequenzbänder
17
Frequenzb¨
ander f ¨ur Funknetzwerke
Mit der momentan verfügbaren Technologie kann man in den niedrigen Frequenzbereichen nur einige Bits
pro Sekunde (Baud) übertragen, aber um Größenordnungen mehr mit höheren Frequenzen. Für den Einsatz
in Funknetzwerken eignen sich bis jetzt nur bestimmte Bereiche.
VHF/UHF für Mobilfunk
SHF für Richtfunkstrecken, Satellitenkommunikation
UHF bis SHF: Wireless Local Area Networking (W-LAN), geplant: EHF
Sichtbares Licht für Kommunikation durch Einsatz von Laser
Infrarot Fernsteuerungen für kleine lokale LAN in geschlossenen Räumen
Ausbreitungsverhalten
Im Vakuum breiten sich elektromagnetische Wellen
geradlinig mit Lichgeschwindigkeit aus. Dabei nimmt
die Leistung im Abstand proportional zu ab. Durch Absoprtion in der Luft und anderen Störungen
muss man in der Praxis diese Leistungsabnahme mit und mitunter auch mit Exponenten bis 4 oder 5
modellieren.
Dämpfung in der Luft ist insbesondere für die Frequenzbereiche HV und VHF ein Problem. Daneben
können Störungen auch durch Abschattung geschehen. Hierbei muss das Hindernis relativ zur Wellenlänge
eine gewisse Ausdehnung haben. Das ist der Grund, warum längere Wellen Gebäude durchdringen können,
sehr kurze aber schon durch ein Blatt Papier abgeschattet werden.
Daneben gibt es Reflexion, Streuung an kleinen Hindernissen und Beugung an scharfen Kanten als
Möglichkeiten der Veränderung der Wellenausbreitung. So folgen VLF, LF, MF-Wellen der Erdkrümmung
(bis zu 1000km in VLF) und sind wegen der Wellenlänge in der Lage, Gebäude zu durchdringen. HF,
VHF-Wellen dagegen werden am Boden absorbiert. Trotzdem können diese Wellen jenseits der Sichtlinie
verbreitet werden. Das liegt daran, dass sie von der Ionosphäre in 100-500km Höhe reflektiert werden
können. Ab 100MHz (d.h. VHF und darüber) ist die Wellenausbreitung geradlinig. Diese Wellen sind
kaum in der Lage, Gebäude zu durchdringen. Diese Strahlen können gut fokussiert werden und damit zur
Richtfunkübertragung verwendet werden. Ab 8 GHz muss man mit einer Wellenabsorption durch Regen
2. Vorlesung rechnen.
23.10.2002
Empfangsprobleme ergeben sich häufig durch Mehrwegeausbreitung (Multiple Path Propagation). Das
Signal kommt aufgrund von Reflektion, Streuung und Beugung auf mehreren Wegen beim Empfänger an
und wird durch die endliche Geschwindigkeit des Lichts zeitlich versetzt empfangen. Durch diese zeitliche
Versetzung kann es zu Interferenzen kommen, die eine Abschwächung des Empfangssignals oder eine
Fehlinterpretation des Signals zur Folge haben.
Bewegen sich Empfänger oder Sender ergeben sich weitere Probleme. Zum Einen kann es zu kurzzeitigen Einbrüchen (short term fading) kommen, wenn z.B. der Empfänger in einem Auto sich kurzzeitig
in abgeschattete Bereiche bewegt. Dann ergeben sich möglicherweise andere Übertragungswege oder die
Phasenlage verändert sich, was für phasenmodulierte Kommunikation problematisch ist.. Der Effekt, der
entsteht durch Veränderung der Distanz zwischen Sender und Empfänger wird, wird long term fading genannt.
Digitale Modulationstechniken
Digitale Informationen kann man nicht direkt vom Sender zum Empfänger durch Rechteckkurve übertragen. Das Hauptproblem ist hierbei, dass dadurch sehr viele (theoretisch unendlich viele) Unterschwingungen mit nicht zu vernachlässigbarer Amplitude entstehen und entsprechend viele Frequenzbänder belegen
(Übungsaufgabe). Daher verwendet man Modulationstechniken.
18
A[V]
1
0
0
0
T[s]
Abbildung 2.7: Amplitudenmodulation
A[V]
0
1
0
0
T[s]
Abbildung 2.8: Frequenzmodulation
1. Amplitudenmodulation (amplitude shift keying/ASK)
In Abbildung 2.7 ist diese, einfachste Modulationstechnik dargestellt. Zwar ist die technische Realisierung sehr einfach, aber diese Modulation ist am anfälligsten gegen Störungen. Typischerweise
kann man für Funkverbindungen keine gleich hohe Amplituden garantieren. Somit werden Amplitudenschwankungen möglicherweise als digitale Signale interpretiert.
2. Frequenzmodulation (frequency shift keying/FSK)
Dieses in Abbildung 2.8 dargestellte Modulationsschema wird häufig für drahtloseÜbertragungen
benutzt. Verglichen mit der Amplitudenmodulation ist es wesentlich weniger fehlerempfindlich,
benötigt aber eine große Bandbreite im elektromagnetischen Frequenzspektrum.
3. Phasenmodulation (phase shift keying/PSK)
Hier wird die Phase des Trägersignals verschoben, um die Daten zu repräsentieren. In Abbildung 2.9
ist eine Phasensprung von verwendet worden, um den Übergang von 0 auf 1 oder 1 auf 0 zu
kodieren.
Im Vergleich zu den beiden anderen Modulationstechniken ist hier die Demodulation wesentlich
komplexer.
19
A[V]
0
0
1
0
T[s]
Abbildung 2.9: Phasenmodulation
Empfang von Daten
Wie bereits erwähnt, nimmt die Empfangsleistung mit dem Abstand zum Sender polynomiell ab, d.h.
Empfangsleistung
Sendeleistung Abstandsverlust
ist.
wobei der Abstandsverlust (path loss) proportional zu mit Das Signal zu Interferenz/Rauschverhältnis (SINR) gibt ein Maß für Möglichkeit, Signale zu empfangen (und zu erkennen). Es setzt sich zusmmane aus
: Empfangsleistung vom gewünschten Sender,
: Empfangsleistung von störenden Sender(n),
: Sonstige Störungen (z.B. Rauschen).
Eine notwendige Voraussetzung für den sicheren Empfang von Daten ist, dass das Verhältnis
SINR
einen gewissen Schwellwert überschreitet.
2.3 Mehrfachnutzung des Mediums
Das elektromagnetische Wellenband als Kommunkationsmedium steht allen Teilnehmer zur Verfügung.
Dies ist ein Vorteil wenn ein Sender vielen Empfängern Signale aussendet, wie z.B. im Radio oder Fernsehen. Wenn mehrere Sender unabhängig kommunizieren wollen, erweist sich dies als Problem, wie z.B. in
Mobilfunknetzwerken.
Man kennt folgende Techniken diesen gleichzeitigen Zugriff auf das Medium zu gewährleisten.
Raumaufteilung (Space-Multiplexing)
Hier verwendet man den Abstandsverlust um parallele Kommunikation zu gewährleisten. Dies ist das
Systemprinzip von zellularen Netzwerken. Hier wird die abzudeckende Flächen in Zellen unterteilt,
in deren Zentrum die Basisstation die Versorgung sicherstellt. Die Lage dieser Basisstationen wird
hierbei so gewählt, dass zum einen die Abdeckung der Gesamtfläche maximiert und dieÜberlappung
der Schnittstellen minimiert wird. Dies kann zum Beispiel mit einem Wabenmuster geschehen.
20
Eine andere Art der Raumaufteilung ist die Verwendung gerichteter Antennten. Hierbei wird der
Vollkreis einer Basisstation in Sektoren aufgeteilt (z.B. GSM: drei Sektoren), die unabhhängig voneinander bedient werden können.
Als Raummultiplex kann auch Richtfunk mit Parabolantennen bezeichnet werden. Durch die genaue Ausrichtung dieser Antennen ist eine Störung anderer Kommunkation praktisch ausgeschlossen. Genauso wie Kommunikation durch Modulation von Laserstrahlen eignen sich diese Technologien kaum für mobile Kommunikation.
Ein weiteres Beispiel für Raummultiplexing ist Infrarotkommunikation. Ohne Ausrichtung von Empfänger und Sender wird kaum eine Kommunikation aufrecht zu halten sein. Daher ist die Gefahr
durch Störung anderer Teilnehmer sehr gering (stärker aber die Gefahr durch Störung des Empfangs
durch direkte Sonneneinstrahlung).
Frequenzmultiplex
Teilt man die Bandbreite in Frequenzabschnitte auf, so ist es möglich, dass Sender-/Empfängerpaare
unabhängig über Funk kommunizieren. Hierbei ist zu beachten, dass durch die Art der Signalmodulation die Frequenzabstände bestimmt werden. Außerdem strahlen starke Signale stärker in benachbarte Frequenzräume aus, was bedeutet, dass zum Beispiel in zellularen Netzen, benachbarte Waben
gewissen Frequenzabstände einhalten müssen. Frequenzmultiplex funktioniert auch für analoge Signale/Systeme. Ein weiterer Vorteil ist, dass keine dynamische Koordination notwendig ist.
Ein Nachteil ist, dass ganze Frequenzbandbreiten vergeben werden ohne dass notwendigerweise
diese zur Kommunikation verwendet werden.
Zeitaufteilung (Time-Multiplexing)
Natürlich kann man Interferenzen grundsätzlich vermeiden, wenn evtl. interferierende Sender nicht
gleichzeitig senden. Der Sender belegt den gesamten Frequenzraum dann für einen gewissen Zeitraum. Hierzu kann man für jeden Sender Zeitscheiben definieren, die Sendepausen und Sendezeiten
festlegen. Natürlich ist hierzu eine genaue Synchronisation der Sender notwendig. Daneben wird ein
gewisser Teil der Bandbreite verschenkt, wenn diese Zeiteinteilung nicht dynamisch angepasst wird.
Eine dynamische Anpassung würde eine genaue Koordination notwendig machen.
Zeit und Frequenzmultiplex
In der Praxis arbeitet man mit einer Kombination dieser Verfahren. Zum Beispiel im GSM (global system for mobile communication) belegen Sendungen für gewisse Zeitabschnitt bestimmte Frequenz. Dies gibt einen gewissen Abhörschutz und Schutz gegen Störungen. Außerdem erhält man
eine höhere Benutzerdatenrate durch Verwendung vieler Frequenzbereiche. Hierbei muss durch die
Basisstation eine genaue Koordination gewährleistet sein.
Spreizen der Kanäle und Hopping
Eigentlich wurde die Kanalspreizung eingeführt, um die Signalübertragung von einer (natürlichen
oder technisch bedingten) Störung auf einem Teil des Frequenzbereichs unabhängig zu machen. Der
positive Nebeneffekt ist, dass diese Kanalspreizung eine Mehrfachnutzung des Mediums ermöglicht.
– Direct Sequence Spread Spectrum (DSSS)
Hier wird jedes Datenbit beim Sender in eine Folge von chips aufgeteilt, die durch bitweise
Ausführen einer Xor-Operation mit einer Folge Pseudozufallsbits entstehen. Dieses neu enstandene Signal wird nun auf verschiedene Frequenzen moduliert (durch zweifache Frequenzmodulation). Der Empfänger demoduliert entsprechend und erhält durch Anwenden der gleichen
Pseudozufallsbits auf die Chips (im Idealfall) die gesendete Datenfolge. Dadurch, dass fremde Signale mit einer anderen Folge von Pseudozufallszahlen kodiert sind, erscheinen sie als
Hintergrundrauschen und gehen bei der Demodulation unter.
Dieses Verfahren beruht auf der den Demodulationsbausteinen eigenen Signalerkennung und
ist daher algorithmisch nicht direkt zu erfassen. Im Prinzip ist dieses Verfahren stark verwandt
mit dem (algorithmischen) Codemultiplexing, dass wir gleich noch näher betrachten werden.
21
– Frequency Hopping Spread Spectrum (FHSS)
Hier verändern Sender und Empfänger gemäß eines vereinbarten Pseudozufallsverfahrens zeitlich die Sende- und Empfangsfrequenzen. Man unterscheidet hier zwei Versionen:
Schneller Wechsel (fast hopping)
Hier wird schneller die Frequenz gewechselt, als Datenbits übertragen werden. Dadurch
wird automatisch eine Fehlerkorrigierung möglich.
Langsamer Wechsel (slow hopping):
Hier werden auf einer Frequenz mehrere Nutzdatenbits übertragen, bis die Frequenz dann
(pseudo-) zufällig gewechselt wird. Dieses Verfahren wird zum Beispiel von Bluetooth auf
den 79 dort verfügbaren Frequenzen angewendet.
Code-Multiplexing: Code Division Multiple Access (CDMA):
Jedes Nutzdatenbit wird mittels orthogonaler Codes in einer Folge von chips kodiert und übertragen.
Wir wenden uns gleich ausführlich dieser Methode zu.
2.3.1 Code Division Multiple Access (CDMA)
Wir gehen davon aus, dass Teilnehmer gleichzeitig einer Empfangsstation eine Nachricht senden möchten.
Die Grundannahmen dieses Verfahrens sind, dass alle Sender die Empfangsstation mit gleicher Leistung
erreichen und alle Sender senden synchron arbeiten. Außerdem kann der Empfänger feststellen, wieviele
Sender das Bit 0 und das Bit 1 gesendet haben, z.B. beidurch Empfangsstärke bei Amplitudenmodulation.
Jeder der Sender arbeitet mit einem -Bit-Code
, genannt Chip-Sequenz, wobei in der Praxis mit
Chips gearbeit wird. Diese “Unter”-Bits (Chips) werden sequentiell übertragen, wobei der
Empfänger zwar feststellen kann, wieviele davon oder waren, aber nicht wer welches Bit gesendet hat.
mit zwei m-Bit-Code-Wörtern
Eine Chip-Sequenz
kodiert also ein Bit, wobei jeder Empfänger
2
arbeitet . Die Chip-Sequenz kodiert
und
muss das normalisierte innere Produkt 0 ergeben, d.h.3 :
das Bit
. Für alle &
')(
' '
Weil das normalisierte innere Produkt ein Skalarprodukt ist, nennt man diese
von CDMA orthogonal.
Lemma 1 Für alle gilt:
Beweis:
(2.1) &
(
&
(
3 Für
&
(
&
(
&
(
2 Zur
(2.2)
22
(2.1)
(2.2)
&
(
;A=
!" 8 # @$! verschiedenen Codes
vereinfachten mathematischen Darstellung kodieren wir dies “Unterbits” mit
beschreibt
die transponierte Matrix, d.h.
eine Matrix
.
statt mit
>1D=
.
% % Wenn nun der Empfänger gleichzeitig
Chip-Sequenz
A und B empfängt, heißt das, dass er zum Zeitpunkt gleichzeigt
und
erhält. Da wir angenommen haben, dass der
Empfänger die Anzahl der verschiedenen Signale zählen kann, kann der Empfänger
auch
be
Chips misst er den Vektor
. Dann berechnet
stimmen. Über den gesamten Zeitraum der
der Empfänger für Sender :
und erhält 1 für Bit 0, und -1 für Bit 1 oder 0 für den Fall, dass der
Empfänger kein Bit gesendet hat.
Die Korrektheit dieser Aussage folgt aus diesem Theorem, hierbei bezeichnen
die fremden orthogonalen Codes, während die Chipsequenz des gewünschten Senders darstellt.
Theorem 2 Sei
wobei
, Beweis:
(
und für alle (
&
&
gilt
(
(
. Dann ist
Zur Veranschaulichung soll folgendes Beispiel dienen.
Beispiel:
Wir starten mit den folgenden drei orthogonalen Codes aus 4 Chips.
Sender 1 sendet Bit 0, Sender 2 sendet
Bit 1 und Sender 3 sendet überhaupt nicht. Somit wird
gleichzeitig in der ersten Zeiteinheit
und
übertragen und beim
erscheint .
Empfänger
Ebenso in der zweiten Zeiteinheit. In der dritten Zeiteinheit wird
und
übertragen und
der Empfänger kann
identifizieren, genau wie in der vierten Runde.
Damit wird der folgende Vektor empfangen:
Somit kann von Sender 1 dekodiert werden
was Bit entspricht. Währendessen wird von Sender 2 dekodiert:
was Bit entspricht. Schließlich erbringt die Dekodierung bezüglich Sender 3:
23
24
Kapitel 3
Zellulare Netze
Die ersten analogen Mobilfunknetzwerke vertrauten auf der Unterteilung der zu versorgenden Fläche in
Zellen mit einer Basisstation und einer starren Frequenzzuteilung eines Frequenzbands auf die Zellen. Wir
haben es hier also mit einer Kombination aus Frequenzmultiplex und Raummultiplex zu tun. Sicherlich
kann man hier höchstens nachträglich von der Beschreibung eines Mediumzugriff im Schichtenmodell
sprechen, da diese analogen Systeme nicht für digitale Kommunikation von Rechnern konzipiert und eingesetzt wurden. Obgleich diese zellularen Netze mit ihrer starren Frequenzaufteilung immer seltener eingesetzt werden, wollen wir uns in diesem Kapitel damit beschäftigen, weil einige der damit verbundenen
Teilprobleme wie z.B. Voronoi-Diagramme sowohl in modernen Mobilfunknetzwerken vorkommen als
auch eine eigenständige Bedeutung besitzen.
An andere Probleme, wie etwa das Frequenzzuweisungsproblem, zeigen wir an Hand ihrer kombinatorischen Schwierigkeit exemplarisch, wie man diese feststellt und wie man doch für die Praxis brauchbare
Lösungen erhalten kann. Man beachte, dass beim Frequenzzuweisungsproblem (frequency assignment problem) schon allein die Modellierung dieses Problems nicht trivial ist. Man sieht dies daran, dass z.B. in benachbarten Zellen nicht benachbarte Frequenzen verteilt werden können, das sonst Interferenzen auftreten
können.
3.1 Voronoi-Diagramme
3. Vorlesung
Wir betrachten jetzt das Best-Station-Problem, d.h. für einen gegebene Menge von Basisstationen und einen 30.10.2002
Ort, bestimme den Sender mit dem besten Signal-Interferenz-Rausch-Verhältnis. Vernachlässigt man alle
Einflüsse auf diesen Quotienten bis auf die Abnahme der Empfangsleistung mit der Entfernung, erhält
man als Lösung sogenannte Voronoi-Diagramme, deren Eigenschaften wir in diesem Abschnitt genauer
betrachten werden. Zum vertiefenden Studium für diesen Bereich sei das Buch von Klein, Algorithmische
Geometrie empfohlen [Kle97].
Definition
Wir
Euklidischen Raum, d.h. auf Punkte in
beschränken unsere Betrachtungen auf den zweidimensionalen
verwenden wir den Euklidischen Abstand,
. Als Abstandsmaß zweier Punkte
,
auch bekannt als -Norm
Der sogenannte Bisektor zweier Punkte ist der Unterraum aller Punkte, die zu
Abstand besitzen, d.h.
Diese Mittelsenkrechte zerlegt
in zwei offene Halbebenen
25
und den gleichen
Abbildung 3.1: Zellulares Netz mit Basisstation und mobilen Empfängern
p
Bisektor
B(p,q)=B(q,p)
D(p,q)
D(q,p)
q
Abbildung 3.2: Bisektor zweier Punkte
und
Siehe hierzu Abbildung 3.2 Für eine gegebene Punktmenge
VR
bezeichnen wir mit VR
, definiert als
die Voronoi-Region von bezüglich (Abbildung 3.3). Als Übungsaufgabe sei empfohlen, zu beweisen,
dass Voronoi-Regionen konvex sind. Mit einer Voronoi-Region beschreiben wir also das Gebiet einer gegeben Funkstation, in welchem sie stärker empfangen wird als alle anderen.
Das Voronoi-Diagramm VD
ergibt sich aus allen Punkten der Ebene, die nicht zu den VoronoiRegionen gehören:
VD
VR
(Für eine Punktmenge bezeichne das Komplement der Menge .) Da die VoronoiRegionen konvex sind, kann für zwei Punkte und höchstens ein zusammenhöngendes Stück des Bisektors zum gemeinsamen Rand gehören. Das schränkt die Menge der gemeinsamen Punkte ein auf
Dies sind also alle Punkte, die mehr als einen nächsten Nachbarn besitzen. Ein Punkt auf dem gemeinsamen
Rand von zwei Voronoi-Regionen VR
und VR
muss zum Bisektor von und gehören, denn
es ist
VR
VR
26
VR(p,V)
p
Abbildung 3.3: Voronoi-Region eines Punktes
Punkte, Strecken, Halbgeraden und Geraden. Besteht der gemeinsame Bisektor nur aus einem Punkt, nennen wir ihn Voronoi-Knoten (oder Voronoi-Punkt), die anderen Voronoi-Punktmengen nennen wir VoronoiKanten.
Um festzustellen, ob ein Punkt ein Voronoi-Punkt ist, ob er auf einer Voronoi-Kante liegt oder in einer
Voronoi-Region, kann man das folgende Lemma verwenden.
Lemma 2 Sei ein Punkt der Ebene und sei
Voronoi-Diagramm einer Punktmenge :
1.
2.
der sich von
ausbreitende Kreis 1 . Dann gilt für das
genau dann, wenn in der Voronoi-Region von liegt.
genau dann, wenn auf einer Voronoi-Kante zwischen
trifft zuerst nur auf zwei Punkte trifft zuerst nur auf einen Punkt
den Regionen von und liegt.
3.
' mit - ' angrenzen.
trifft zuerst genau auf die Punkte
Knoten an den die Regionen von
genau dann, wenn
ist ein Voronoi-
Der Beweis dieses Lemmas sei zur Übung empfohlen. Eine Folgerung dieses Lemmas ist, dass die
Existenz von Voronoi-Geraden ein Spezialfall ist, der nur dann auftreten kann, wenn alle Punkte der Menge
auf einer Geraden liegen. Deshalb werden wir diesen in Abbildung 3.4 dargestellten Spezialfall im
folgenden ausschließen. Wir werden also nur Punktmengen betrachten, die nicht alle auf derselben Gerade
liegen und damit als Voronoi-Kanten nur Halbgeraden und Strecken erhalten.
sich z.B. in [Kle97], Seite 215-217. Folgende Beziehung gilt zwischen Voronoi-Diagrammen und der
konvexen Hülle von . Hierbei ist die konvexe Hülle CH
definiert als
CH
konvex
Für eine endliche Knotenmenge erhält man als konvexe Hülle eine Region, dessen Rand durch ein
konvexes Polygon beschrieben wird. Die Eckknoten der konvexen Hülle sind hierbei Knoten aus (siehe
Abbildung 3.5).
Lemma 3 Ein Punkt
der konvexen Hülle von
hat genau dann eine unbeschränkte Voronoi-Region, wenn er auf dem Rand
liegt.
Beweis: Angenommen, VR ist unbeschränkt. Dann existiert ein anderer Punkt in , so dass VD
ein unbeschränktes Stück des Bisektors
als Kante enthält, weil die Voronoi-Region aus einem
1 D.h.
Wir betrachten eine Folge von Kreisen mit Mittelpunkt
5
und zunehmenden Radien
27
Abbildung 3.4: Nur wenn alle Punkte von
auf einer Geraden liegen, können Voronoi-Geraden auftreten
Abbildung 3.5: Konvexe Hülle einer Punktmenge
Schnitt von endlich vielen Halbebenen hervorgegangen ist. Wir betrachten jetzt einen beliebigen Punkt
auf diesen Abschnitt des Bisektor in VD
, der o.B.d.A. rechts von der Gerade
liegt. Liegt ein
weiter Punkt von näher an als oder , dann würde kein Punkt
des
Voronoi-Diagramms
sein. Also
müssen alle Punkte
weiter weg liegen als die Entfernung
.
Angenommen es gäbe nun einen Punkt
rechts von der Gerade durch und , wie in Abbildung 3.6 gezeigt. Dann gibt es einen Punkt auf dem Bisektor, der gleich weit von , und entfernt
ist. Jeder Punkt rechts von wäre nun näher an als an und . Damit wäre der Bisektor nach rechts
abgeschlossen, was der Annahme seiner Unbeschränktheit widerspricht. Damit ist die Halbebene rechts
von der Gerade
frei von Punkten aus und die Punkte und müssen auf der konvexen Hülle von
liegen.
Für die Gegenrichtung betrachten wir zwei benachbarte Ecken
der konvexen Hülle CH
. Ohne
Beschränkung der Allgemeinheit liegen die Punkte links von der Gerade durch
. Wir betrachten die
Senkrechte auf
durch den Punkte und alle Kreise mit Mittelpunkt auf rechts von und Randpunkt , siehe Abbildung 3.7. Diese Kreise beinhalten keine weiteren Punkte aus und nach Lemma 2 sind
daher alle Punkte dieser Halbgerade Elemente des Voronoi-Region von . Diese ist daher unbeschränkt.
Das Voronoi-Diagramm mit seinem Knoten, Kanten und Flächen stellt ein Speziallfall eines
geometri
schen Graphen dar. Im allgemeinen kann man einen ungerichteten Graph
in
geometrisch
realisieren, wenn man seine Knoten paarweise auf paarweise verschiedene Punkte abbildet und seine Kanten auf einfache Wege, die diese Punkte verbinden und unterwegs kleine solche Punkte besuchen, abbilden
kann.
Problematisch bei dieser Betrachtung sind die unbeschränkten Kanten beschrieben durch Halbgeraden2 . Um diese als Kanten zwischen zwei Voronoi-Knoten beschreiben zu können, führen wir einen unendlich weiten Punkt ein, der als Endpunkt aller Halbgeraden dient.
eines Graphen , indem
Eine Zusammenhangskomponente ist der maximale Teilgraph 2 Den
Fall der Geraden haben wir ausgeschlossen.
28
p
B(p,q)
x
q
w
Abbildung 3.6: Der Voronoi-Punkt
beschränkt die Voronoi-Kante des Bisektors
nach rechts
p
p
q
Abbildung 3.7: Jeder Punkt (hier und auf der Halbgeraden mit rechten Winkel zur Strecke
diese in schneidet, ist Teilmenge der unbeschränkten Voronoi-Region von
29
, die
jeder Knoten
einen Weg in zu jedem anderen Knoten besitzt. Somit besitzt jeder
Graph eine eindeutige Zerlegung in Zusammenhangskomponenten.
Die Zusammenhangskomponenten von
nennt man die Flächen des Graphen. Es gilt für geometrische Graphen die Eulersche Formel
Theorem 3 Sei
ein kreuzungsfreier geometrischer Graph in der Ebene und bezeichne
die Anzahl der Knoten (vertices),
die Anzahl der Kanten (edges),
die Anzahl der Flächen (faces),
die Anzahl der Zusammenhangskomponenten von
$
Dann gilt
(connected component).
Diesen Satz kann man beweisen, indem man beginnend mit dem leeren Graph eine vollständige Induktion über die Anzahl der Knoten und Kanten durchführt. Eine direkte Folgerung aus der Eulerschen Formel
ist
Korollar 1 Für einen kreuzungsfreien geometrischen Graph
besitzen, gilt:
, dessen Knoten alle mindestens Grad
4. Vorlesung
Theorem 4 Das Voronoi-Diagramm zu gegebenen Punkten in der Ebene hat viele Voronoi-Knoten
6.11.2002
und Voronoi-Kanten. Der Rand einer Voronoi-Region besteht im Mittel aus h öchstens sechs Kanten.
Beweis: Da das Voronoi-Diagramm immer unbeschränkt ist, definieren wir das beschränkte VoronoiDiagramm, in dem alle Voronoi-Punkte, alle beschränkten Voronoi-Kanten und Teilstücke der VoronoiKanten vorkommen. Hierzu betrachten wir zum Beispiel einen Kreisauschnitt des Voronoi-Diagramms,
wobei der Kreis alle Vorononi-Punkt in seinem Kreisinneren besitzt (und damit bis zum Kreisrand auch die
unbeschränkten Voronoi-Kanten wenigstens teilweise vorkommen), siehe Abbildung 3.8.
Die Schnittpunkte der unbeschränkten Voronoi-Kanten mit werden mit bezeichnet, die Kreissegmente zwischen diesen Schnittpunkten formen Kanten . Damit folgt aus obigen Korollar, dass die
Anzahl der Knoten und Kanten dieses neuen beschränkten Graphen linear beschränkt ist in der Anzahl
der Voronoi-Regionen. (Diese Knoten und Kantenanzahl enthält als auch die im Voronoi-Diagramm nicht
vorkommenden Knoten und .)
Diese Beziehung zwischen Voronoi-Diagramm und konvexen Hülle hilft uns, eine untere Schranke zur
Zeitkomplexität zur Berechnung des Voronoi-Diagramms zu formulieren. Aus dem Grundstudium sollte
noch folgendes bekannt sein.
Theorem 5 Das Sortierproblem von
Zahlen hat eine Zeitkomplexität von mindestens ,
.
Für diesen Beweis wird gezeigt, dass die Berechnung jedes deterministischen Maschinenmodells mit
Hilfe eines Entscheidungsbaums dargestellt werden kann. Ein Entscheidungsbaum der Tiefe korrespon
diert dann mit einem Algorithmus mit Zeitkomplexität . Ein solcher Binärbaum hat höchstens Blätter,
die dann einer erfolgreichen Berechungen einer Eingabe entsprechen. Insgesamt gibt es verschieden
permutierte Eingaben und daher muss die Tiefe des Baums mindestens entsprechen.
, ,
,
,
Hieraus ergibt sich folgende untere Schranke für die Berechnung der konvexen Hülle.
30
Γ
Abbildung 3.8: Der Kreis
beinhaltet alle Voronoi-Punkt und beschränkt alle Voronoi-Kanten
y
y=x2
x
Abbildung 3.9: Jeder Punkt einer endlichen Teilmenge der Parabel liegt auf der konvexen Hülle
,
Theorem 6 Die Berechnung der konvexen Hülle einer gegebene Punktmenge hat mindestens Zeitkomple
xität .
Beweis: Wir reduzieren das Problem Zahlen
zu sortieren
auf die Berechnung
der konvexen Hülle. Hierfür betrachten wir die Punktmenge
. Diese liegen
auf den Rand der konvexen Hülle, wie in
auf einer Parabel und damit befindet sich jeder der Punkte
Abbildung 3.9 gezeigt.
Wir fordern, dass nicht nur die Punktmenge, sondern auch die Kantenmenge des umgebenden konvexen Polygons berechnet wird. Folgt man nun den Kanten dieses Polygons, so wird man ausgehend vom
kleinsten Wert , welches man in Linearzeit bestimmen kann, die sortierte Folge der Zahlen
erhalten.
Damit kann kein Algorithmus diesen Graphen schneller als in Zeit berechnen, da sonst das
Sortieren von Zahlen zeiteffizienter möglich wäre.
Um die effizientes Rechnen in geometrischen Graphen zu ermöglichen, reicht es nicht aus, diesen als
Adjazenzliste zu führen. Wenn man zum Beispiel die Kanten einer Fläche aufzählen möchte, dann kann es
an einem Randknoten mit hohen Ausgrad zu erheblichen Zeitverlusten führen.
Deswegen führen wir die Datenstruktur der doubly connected edge list (DCEL) ein. Zu jeder Kante
mit den angrenzenden Flächen und speichert man außer den Verweisen auf
auch Verweise auf die erste Kante mit Endpunkt , die im Uhrzeigersinn auf folgt, und auf die erste
,
31
p
e’’
F
e
q
F’
e’
Abbildung 3.10: Verweise einer Kante bei der DCEL-Zeigerstruktur
Kante mit Endpunkt im Uhrzeigersinn hinter ; siehe Abbildung 3.10.
Wenn man zusätzlichen die entsprechenden Kanten gegen den Uhrzeigersinn speichert erhält man die
Datenstruktur quad edge data structure (QEDS). Wir setzen im folgenden voraus, dass die Berechnung
eines geometrischen Graphs ebenfalls diese Struktur zur Folge hat.
Setzt man nun voraus, dass Voronoi-Diagramme in einer solchen Datenstruktur gespeichert werden,
erhält man für die Berechnung des Voronoi-Diagramms folgende untere Schranke.
Theorem 7 Aus dem Voronoi-Diagramm VD
die konvexe Hülle von ableiten.
einer -elementigen Punktmenge
l ässt sich in Zeit
Beweis: Aus dem Endpunkt einer unbeschränkten Voronoi-Kanten erhalten wir einen Start Randpunkte
der konvexen Hülle in Linearzeit. Folgt man jetzt immer der einer unbeschränkten Voronoi-Kante rechs
benachbarten beschränkten Voronoi-Kanten, so benötigt man Linearzeit um das Voronoi-Diagramm zu
umschreiten. Die den unbeschränkten Voronoi-Kanten benachbarten Voronoi-Regionen beschreiben die
Randpunkte der konvexen Hülle im Uhrzeigersinn.
Damit ergibt sich folgendes Korollar.
,
Korollar 2 Die Konstruktion des Voronoi-Diagramm von
.
Punkten in der Ebene hat die Zeitkomplexit ät
Damit kennen wir eine untere Schranke für die Zeitkomplexität zur Berechnung des Voronoi-Diagramms.
Wir werden nun im folgenden zeigen, dass diese Schranke scharf ist, indem wir einen Algorithmus mit dieser asymptotischen Zeitkomplexität angeben. Diese Aufgabe ist wesentlich aufwändiger.
Voronoi-Diagramms: Für Punkte gibt
Insbesondere
ergibt sie sich nicht direkt aus der Definition des
es Bisektoren. Nun haben Geraden im allgemeinen mögliche Schnittpunkte. Berechnet man
also allein diese Schnittpunkte, überschreitet man die gewünschte Rechenzeit bei weitem.
Wir verwenden hier die sogenannte Sweep-Technik, die von Fortune auf Voronoi-Diagrammen eingeführt wurde [For86]. Wir starten unsereÜberlegungen mit der Punktmenge die gleichweit von der Geraden
und einem Punkt
entfernt sind. Für diese Punkte gilt
( (
Hieraus ergibt sich die Gleichung
Offenbar ist die gesuchte Punktmenge eine Parabel. Wir bezeichnen nun die Gerade
als Sweep-Line
und lassen sie von Punkt
nach unten wegbewegen. Wir sehen hierbei, wie sich die Parabel öffnet und
mit der Zeit die gesamte Ebene überstreift (vgl. animierte Folie aus Vorlesung).
32
Betrachten wir nun Punkte, sehen wir Parabeln nach unten streifen. Hierbei fügen wir die Parabeln
erst ein, wenn die Sweep-Line über die Punkte streift. Wir werden sehen, dass für uns nur die unteren
Abschnitte der Parabelstücke von Interesse sind. Diese unterteilen die Wellenfront in Parabelstücke.
Insbesondere interessieren wir uns für zwei Ereignisse:
1. Entstehen eines Parabelstücks (Typ A)
Ein neues Parabelstück entsteht, wenn die Sweep-Line über einen Punkt aus
streift.
2. Verschwinden eines Parabelstücks (Typ B)
Wir werden gleich sehen, dass hierbei ein Voronoi-Punkt entsteht und eine Voronoi-Kante abgeschlossen wird.
,
Theorem 8 Für jede Menge von Punkten in der Ebene kann das Voronoi-Diagramm VD
auf Platz konstruiert werden.
5. Vorlesung
14.11.2002
in Zeit
Beweis: Wir berechnen das Voronoi-Diagramm mit Fortune’s Algorithmus (1997). Dabei lassen wir eine
Sweep-Line von oben nach unten über die Punktemenge laufen. Der folgende Beweis stammt aus dem Buch
von de Berg et.al., Computational Geometry [MKOS00] und wurde übernommen aus dem Vorlesungsskript
von Tamás Lukovszki zur Vorlesung Geometrische Algorithmen. Ein ähnlicher Beweis ist in dem Buch von
Rolf Klein zu finden.
Die Vorhersage der Ereignisse ist nicht so offensichtlich: Punkte, die unter der Sweep-Line liegen,
können Ecken über der Sweep-Line generieren (Abb. 3.11).
l
l
Abbildung 3.11: Das Wellenfront verurscacht durch die Sweep-Line
Die Wellenfront: Sei
definiert:
teilt die Halbebene über
zusammen mit . Die Wellenfront
ist bezüglich
in zwei Bereiche:
Der Bereich über : Alle Punkte über haben ihren nächsten Nachbarn auch über
von , die unter liegen, haben darauf keinen Einfluß mehr. Das Voronoi Diagramm über sicher.
Der Bereich unter unter haben.
: Punkte, die zwischen
. Punkte
ist also
und liegen, können ihren nächsten Nachbarn auch
Die Menge der Punkte, die von einer Linie und einem Punkt gleich entfernt sind, liegen (wie bereits
erläutert) in einer Parabel . Jeder Punkt
über definiert also eine Parabel . Die Wellenfront ist also eine Funktion, die zu einem -Wert den tiefsten -Wert aller Parabeln zuordnet. Da die Parabeln
-monoton sind, ist auch -monoton3
3
5
-monoton heisst, dass jede vertikale Gerade nur einen Schnittpunkt mit
33
besitzt.
besteht aus parabolischen Bögen. Die Stellen, in denen sich zwei Bögen schneiden, heißen Bruchpunkte. Die Bruchpunkte haben die gleiche Entfernung von zwei Punkten von und von , daher müssen
sie in einer Voronoi Kante liegen. Schnittpunkte der Wellenfront fahren das Voronoi-Diagramm ab.
Während sich die Sweep-Line nach unten bewegt wird, erhalten wir die Wellenfront . Wir erhalten
nicht explizit, da sich die Form von mit der Bewegung von kontinuierlich ¨andert. Wir müssen nur
die Ereignisse verwalten, wobei sich die Topologische Struktur von ändert.
Es gibt zwei Ereignistypen:
1. Entstehen eines Parabelstücks (Typ A)
Wenn die Sweep-Line einen neuen Punkt von erreicht, wird ein neuer Bogen in die Wellenfront
eingefügt. Dazu muß der Bogen in , der direkt über liegt, gefunden werden. (Nehmen wir
an, liegt nicht unter einem Bruchpunkt von . Dieser Spezialfall kann aber einfach behandelt
werden.) Dann wird gesplittet, und ein infinitissimal dünner Bogen für wird eingefügt. Wenn
sich weiter nach unten bewegt, wird dieser Bogen breiter (Abb. 3.12).
Abbildung 3.12: Wellenereignis vom Typ A
Es kann gezeigt werden, daß ein neuer Bogen in nur durch ein Typ A Ereignis auftauchen kann.
(Keine Parabel kann von oben die Wellenfront durchbrechen.) Daraus folgt, daß die Wellenfront höchstens
Bögen enthält: Nach jedem Punkt-Ereignis enthält um 2 Bögen mehr als vorher.
Beachte, daß Typ A Ereignisse von Anfang an bekannt sind.
2. Verschwinden eines Parabelstücks (Typ B)
Wenn ein parabolischer Bogen in zu einem Punkt schrumpft, wird er aus entfernt, und eine
neue Voronoi Ecke wird in VD
erzeugt. So ein Ereignis wird durch Bögen generiert, die in benachbart sind.
Hier
wird
ein
Ereignis
von drei aufeinander folgenden Bögen generiert. Betrachte
3 Punkte , , , die in drei aufeinander folgende Bögen definieren. Nehmen wir an, daß
'
'
,
(a) der Kreis um , , nicht vollständig über liegt, d.h die Voronoi Ecke zu ,
nicht generiert wurde, und
(b)
' noch
keinen Punkt von enthält, d.h. kein (zukünftiger) Punkt wird die Erzeugung der Voronoi
Ecke verhindern (Abb. 3.12).
Im Augenblick, wenn den tiefsten
erreicht, verschwindet der Bogen von aus . In
Punkt von
VD
treffen sich die Kanten und in einer Voronoi Ecke, und die Konstrution der Kante beginnt.
'
'
Der Sweep-Line-Algorithmus: Die Datenstrukturen, die wir verwalten müssen:
1. Das (partielle) Voronoi-Diagramm
Der Teil von VD
, der bereits konstruiert wurde, wird als DCEL gespeichert.Technische Schwierigkeit: Repräsentierung der unbegrenzten Kanten. Wir nehmen an, daß wir eine genügend große
”bounding box” haben, in die das ganze Diagramm hereinpasst.
34
e ij
p
e jk
j
p
e ij
e jk
j
p
p
i
p
p
i
p
k
p
e ij
e jk
j
i
pk
k
e ik
Abbildung 3.13: Wellenereignis vom Typ B
2. Die Wellenfront
Die Wellenfront ist durch einen binären Suchbaum repräsentiert. Sie ist die Sweep-Status-Struktur.
Die Blätter von repräsentieren die parabolischen Bögen und die internen Knoten die Bruchpunkte
der Wellenfront (Abb 3.14).
T
p
p
i
p
j
(p ,p )
j k
l
(pk,pl )
(p ,p )
i j
pk
pi
pj
Abbildung 3.14: Datenstruktur für Punkte
pk
pl
Die Bögen werden nicht explizit gespeichert, die Blätter von speichern nur die Punkte, die die
Bögen definieren, und die internen Knoten die Punktpaare, die die Bruchpunkte definieren. Die exakten Koordinaten der Bruchpunkte können aus der aktuellen Position von und den zwei definierenden Punkte berechnet werden. muß die folgenden Operationen unterstützen:
Für eine gegebene Position von , bestimme für eine vertikale Linie den Bogen, der sie schneidet.
Bestimme für einen Bogen seinen linken und rechten Nachbarn in der Wellenfront.
Füge einen neuen Bogen für in durch Splitten eines vorhandenen Bogens
.ein. Sei
Punkt, der den gesplitteten Bogen definiert. Dann entstehen die Blätter
, der
Entferne einen Bogen aus der Wellenfront.
unterstützt alle diese Operationen in 3. Ereignis-Warteschlange
Zeit.
ist eine Prioritätswarteschlange, wobei die Priorität der Ereignisse ihre -Koordinate ist.
chert die Ereignisse, die bereits erkannt wurden.
spei-
'
ein Ecken-Ereignis,
'
'
Die Priorität dieses Ecken-Ereignisses
ist die -Koordinate des tiefsten Punktes von ' .
' und der Test, ob er die Linie schneidet, kann in Zeit durchDie Berechnung von Für jedes Tripel von aufeinanderfolgenden
in enthält
und Blättern
um
die Sweep-Lne scheidet.
wenn der Kreis
geführt werden (Abb. 3.15).
35
T
(pj ,pk )
(pi , pj )
pi
Q
(pk ,pl )
pj
pk
pl
Abbildung 3.15: Ereigniswarteschlange
Jedes Ecken-Ereignis hat einen Pointer auf die drei benachbarten Blätter von , die es generieren,
und jedes Tripel von benachbarten Blättern in hat einen Pointer auf das Ecken-Ereignis in , das
von den 3 Punkten generiert wird (wenn es existiert).
Wenn ein Punkt-Ereignis (Typ A) auftritt, wird ein neuer Bogen eingefügt, und die Tripel von aufeinanderfolgenden Blätter ¨andern sich. Dementsprechend müssen einige Ecken-Ereignisse aus
gelöscht und einige neue Ecken-Ereignisse in eingefügt werden.
Algorithmus Voronoi-Diagram( )
1. Initialisiere
mit allen Punkt-Ereignissen.
do
Sei das Ereignis mit maximalen -Koord.
if ein Punkt-Ereignis then
2. while
HandlePointEvent( ), wobei
else
HandleVertexEvent( ), wobei
Enferne aus
der Punkt ist, der generiert hat.
der tiefste Punkt des Kreises ist, der generiert hat.
.
HandlePointEvent( )
1. Finde den Bogen in , der durch die vertikale Linie durch
Eckpunkt-Ereignisse von , in denen involviert ist.
geschnitten wird. Lösche alle
, wobei . Rebalanciere
2. Ersetze das Blatt, das repräsentiert, durch einem Baum, der drei Blätter hat:
der Punkt ist, der definiert hat. Die neuen internen Knoten sind
und
, wenn es nötig ist.
3. Erzeuge neue Rekorde im Voronoi-Diagramm für die zwei Halbkanten, die
rieren. Die zwei neuen Bruchpunkte werden dieser Kante folgen.
und
sepa-
4. Teste die Tripel, die einen von den neuen Bogen involvieren, ob sie ein Ecken-Ereignis erzeugen,
d.h ob der entsp Kreis die Sweepline schneidet. Wenn ja, füge diese Ereignisse in ein (falls sie
noch nicht in waren).
HandleVertexEvent( )
1. Finde den Bogen in , der vertikal über ist. wird aus der Strand-Linie verschwinden. Lösche
alle Eckpunkt-Ereignisse aus , die involvieren.
36
2. Lösche das Blatt aus , das repräsentiert. Aktualisiere die internen Knoten von , die die Bruchpunkte repräsentieren. Rebalanciere , wenn es nötig ist.
3. Erzeuge einen Rekord für die neue Voronoi-Ecke und zwei neue Halbkanten-Rekorde, die dem neuen Bruchpunkt der Strand-Linie entspricht. Setze die Pointer zwischen diesen Rekorden dementsprechend.
4. Teste die neuen Tripel von aufeinanderfolgenden Bögen, die nach dem Verschwinden von entstanden sind, ob sie ein Ecken-Ereignis erzeugen. Wenn ja, füge diese Ereignisse in ein (falls sie noch
nicht in waren).
,
Laufzeitanalyse
Die primitiven Operationen in und in können in Zeit durchgeführt werden. Für jedes Ereignis werden primitive Operationen in und in und elementare algebraische und RAM
Operationen durchgeführt. Da es insgesamt Ereignisse gibt, ist die Gesamtlaufzeit . Der
.
Speicherbedarf ist ,
3.2 Frequenzzuweisung
6. Vorlesung
Im folgenden wollen wir uns nun damit beschäftigen, Basisstationen Frequenzen zuzuweisen, so dass eine 21.11.2002
Kommunikation mit drahtlosen Teilnehmern nahezu störungsfrei funktioniert. Sei eine Menge von
Basisstationen
gegeben. Wir suchen nach einer Funktion
, die einer Basisstation
eine Übertragungsfrequenz
zuordnet unter Berücksichtigung von Frequenz- und Abstandsbedingungen. Beispiele für Nebenbedingungen und mögliche Ziele bei der Frequenzzuweisung sind u.a.
Minimiere die Anzahl der vergebenen Frequenzen
Minimiere die Breite des Frequenzspektrums
Minimiere die Anzahl der Wellenüberlagerungen (Interferenzen)
Hier ist anzumerken, dass das Ziel, die Anzahl der Störungen zu minimieren, in jeder Optimierung als
Nebenziel verfolgt wird. Wie wird das Frequenzzuweisungsproblem nun modelliert?
Definition 1 Der Graph Int
heisst Interferenz-Graph für eine Menge von Basisstationen. Die
Kanten sind gegeben durch die Interferenzen zwischen Basisstationen. D.h. zwei Knoten sind miteinander
verbunden, wenn sich die zugehörigen Basisstationen während einer zeitgleichen Übertragung gegenseitig
stören.
Wir beginnen mit einer einfachen, intuitiven Variante der Interferenz-Modellierung.
Sei
der
interferieren,
Umkreis um eine
Basisstation
mit
dem
Radius
.
Zwei
Basisstation
und
falls
. Falls sich also die Sendebereiche zweier Basisstationen überschneiden, so sollten
beiden Basisstationen unterschiedliche Sendefrequenzen zugeordnet werden um Störungen in der Schnittfläche zu vermeiden. Wir erkennen hier ein sehr schwieriges Problem, wie wir im folgenden sehen werden.
Das Problem der Frequenzvergabe entspricht dem Problem, den ungerichteten Interferenz-Graph zu färben.
ein ungerichteter
Graph. Eine Abbildung und , - .
Definition 2 Sei
falls
für
-
heisst -Knotenfärbung,
Ein Beispiel einer gültigen Färbung ist in Abbildung 3.16 zu sehen.
-
Definition 3 Sei
die kleinste Zahl , für die es in
die chromatische Zahl.
37
-
eine -Knotenfärbung gibt, dann heisst
Abbildung 3.16: Planarer Graph mit gültiger 3-Färbung
Das Graphfärbungsprobleme ist eines der fundamentalen Probleme der Graphentheorie. Vergleichbar
wichtig ist das Problem in einem Graphen vollständige Teilgraphen (Cliquen) zu finden. In Abbildung 3.17
ist eine solche Clique dargestellt.
Definition 4 Sei
die größte Zahl von Knoten, die in
Clique) bilden, dann nennen wir
die clique Zahl.
einen vollständigen Teilgraph (also eine
Abbildung 3.17: Ein Clique der Größe 8
Sei
der maximale Knotengrad eines Knotens in
den Kenngrößen einer Färbung:
. Es gilt folgender Zusammenhang zwischen
gilt:
Lemma 4 Für jeden ungerichteten Graphen
Den Beweis dazu überlassen wir dem Leser als Übung. Die folgende Aussage zeigt die Komplexität
unseres allgemeinen Frequenzzuweisungsproblems.
- Theorem 9 Sei COLOR
NP-vollständig für
.
- - -Knotenfärbung für den ungerichteten Graph -
, dann ist COLOR
Beweis: Um zu zeigen, dass COLOR
NP raten wir für jeden Knoten eine Farbe
. Es bleibt
zu überprüfen, ob die sich daraus ergebene Funktion eine gültige -Knotenfärbung ist. Der Zeitaufwand
hiefür ist polynomiell. Im zweiten Schritt zeigen wir, dass 3SAT COLOR, d.h. wir reduzieren
3SAT auf
COLOR. Wir nehmen an, dass eine boolesche Formel
3SAT aus Klauseln
und maximal
Variable besteht. Nun konstruieren wir daraus einen Graphen , so dass folgendes gilt:
3SAT, d.h.
-Knotenfärbung
(Variable), (negierte Variable), ist erfüllbar
besitzt eine
Die Knoten von seien gegeben
durch (Hilfsvariable) und
(Klauseln). Wir konstruieren die folgenden Kanten, wie in Abbildung 3.18
gezeigt:
für alle 38
für alle ' ' für alle Literale nicht in '
Idee der Färbung:
bilden eine Clique, d.h. schon hier sind Farben zur Färbung erforderlich.
Diese Farben seien
(true-Farben). Wir färben jetzt jedes erfüllte Literal mit der entsprechenden
true-Farbe und nehmen eine weitere, die false-Farbe, hinzu. Damit färben wir die nicht-erfüllten Literale.
Wie färben wir nun die Klauseln?
Abbildung 3.18: Reduktionsgraph für das Färbungsproblem
“ Sei
3SAT, d.h. es ex. eine Belegung, die die Klauseln
wahr macht. Wir färben
”
den Graph wie oben erwähnt. Betrachte nun eine Klausel . Mindestens ein Literal dieser Klausel wurde
mit einer true-Farbe gefärbt, da die Klausel erfüllbar ist. Die Klausel ist nur mit Literalen verbunden, die
sie nicht enthält. Also kann sie mit der gleichen true-Farbe gefärbt werden (kein anderes Literal wurde mit
dieser true-Farbe gefärbt).
“ Sei
3SAT, d.h. es gibt keine Belegung, die die Klauseln
wahr macht. Dann
”
existiert eine Klausel , die ausschließlich Literale enthält, die mit der false-Farbe gefäbrt wurden. Außerdem ist
dann mit Knoten aller true-Farben verbunden und mit mindestens einem Knoten, dem die
false-Farbe zugeordnet wurde. Daher kann
mit keiner
dieser Farben gefärbt werden, und es wird eine
weitere notwendig. Der Graph besitzt also keine
-Knotenfärbung.
Wir listen im folgenden einige weitere bekannte Resultate zur allgemeinen Knotenfärbung eines Graphen auf, um zu zeigen, wie schwierig das Problem ist. Anderseits führen nachweisbare Eigenschaften
eines Graphen, wie z.B. die Planarität, dazu, dass das Problem zumindest teilweise effizient lösbar wird.
Theorem 10 Es gelten folgende Aussagen:
1. Jeder planare Graph kann in Polynomzeit mit 4 Farben knotengef ärbt werden (Vier-Farben-Satz)
3. Der Test, ob ein planarer Graph eine -Knotenfärbung zulässt, ist ebenfalls NP-vollständig.
2. Jeder Graph kann in Polynomzeit auf -Knotenfärbbarkeit überprüft werden.
Wir werden diese Aussagen im Rahmen dieser Vorlesung aus Zeitgründen nicht beweisen.
1. In [AH77a, AH77b] wird bewiesen, dass jeder planare Graph 4-färbbar ist. Allein aus dieser Aussage
folgt noch nicht, dass man die gewünschte Färbung auch effizient finden kann. Aus dem Beweis der
4-Färbbarkeit kann man einen polynomialzeitbeschränkten Algorithmus zur Berechnung der Farbzuteilgung ableiten.
2. Diese Aufgabe kann der Leser als Übung selber lösen. Es zeigt sich, dass ein einfacher GreedyAlgorithmus eine 2-Färbung konstruieren kann, wenn sie existiert.
39
3. Obwohl für planare Graphen 2-Färbung und 4-Färbung effizient entscheidbar sind, bleibt das 3Färbungsproblem kombinatorisch schwierig [GJS74]
Approximierbarkeit des Färbungsproblems
Wenn also das Färbungsproblem nicht effizient lösbar ist, dann wäre es doch vorstellbar, dass man wenigstens eine Färbung berechenbar, die das korrekte Ergebnis approximiert. Hierfür betrachten wir zuerst
folgende Begriffe der Approximationsgüte.
Definition 5 Sei die Lösung eines Optimierungsproblems für eine Instanz .
Dann ist mit absoluter Güte
approximierbar, wenn es einen Polynomialzeitalgorithmus
so dass für alle Instanzen der Größe gilt:
ist mit relativer Güte approximierbar, wenn es einen Polynomialzeitalgorithmus
dass für alle Instanten der Größe gilt:
gibt,
gibt, so
In unseren Fall ist die Instanz der Graph , die Problemgröße wird durch die Anzahl der Knoten
beschrieben und es gilt . Wendet man diese Begriffe richtig an, sieht man sofort, dass das
Färbungsproblem eines planaren Graphs mit absoluter Approximationsgüte erreichen kann. Ebenso erhält
man auch eine konstante relative Approximationsgüte.
Wie verhält es sich aber für das allgemeine Graphfärbungsproblem? Hier ist die Situation weniger
einfach, wie das folgende Theorem zeigt.
Theorem 11 [BGS98] Die allgemeine Graph-Färbung ist nicht nur NP-vollständig, sondern auch nicht
approximierbar mit einem Faktor besser als
für
, solange NP P gilt.
approximiert werden kann [Hal93].
Im folgenden werden wir einen Approximationsalgorithmus vorstellen, der für einen ungerichteten
Graphen das allgemeine Färbungsproblem löst, wobei er eine relative Güte von , garantiert. D.h. die Anzahl der Farben, die der Algorithmus liefert, ist höchstens , mal so groß
wie die chromatische Zahl . Wir beginnen mit der technischen Vorarbeit.
Lemma 5 Sei ein Graph, für den es eine - -Knotenfärbung gibt. Dann gibt es einen Knoten
'
.
mit grad ' eine unabhängiWir verwenden ein Durchschnittsargument um Lemma 5 zu beweisen: Sei ge Zerlegung einer Knotenmenge , d.h. zwei Knoten aus
sind nicht untereinander verbunden, dann
enthält eine Menge davon mindestens ' Knoten. Der vollständige Beweis dient als Übung. Es ist zu
Auf der positiven Seite kann man nachweisen, dass das Färbungsproblem mit einer relativen Güte von
erkennen, dass allen Knoten einer unabhängigen Menge (vgl. Independent Set) die gleiche Farbe zugeordnet werden kann. Die Idee des Färbungsalgorithmus ist nun, in jedem Schritt eine nicht erweiterbare
unabhängige Menge zu bestimmen und die entsprechenden Knoten mit einer neuen Farbe zu färben. Zur
Bestimmung einer nicht erweiterbaren unabhängigen Menge verwenden wir den folgenden Algorithmus:
Algorithmus GreedyIS
begin
while do
Erzeuge
aus und wähle einen Knoten
Lösche und alle Nachbarn von aus
40
mit minimalem Grad
Füge
od
Ausgabe
end
zu
hinzu
Der Algorithmus GreedyIS berechnet eine nicht erweiterbare unabhängige Knotenmenge in Zeit . Das folgende Lemma sagt etwas aus über die Qualität der gefundenen Lösung.
, ' Lemma
6 Sei
.
-
Beweis: O.b.d.A. sei
Nachbarn hat. D.h.
-
. Aus Lemma 5 folgt, dass Knoten
und damit
' -
Aus
- Theorem 12 Sei
ein Graph mit
berechnet eine Färbung mit höchstens
einer optimalen Lösung entfernt.
Beweis: Mit Lemma 6:
, ' , ' '
Die
Anzahl der vergebenen Farben ist . Abbruch bei
:
, ' mit GreedyIS(G)
-
,
Knoten, für den es eine -Knotenfärbung gibt. GreedyCol
Farben und ist höchstens um den Faktor von
'
- folgt die Anzahl der maximal notwendigen Schritte. D.h.
, ' in Schritt höchstens
- - -
Algorithmus GreedyCol
begin
farbe
while do
Erzeuge
aus und bestimme
Färbe alle Knoten in mit farbe
Entferne aus und erhöhe farbe um 1
od
Ausgabe Knotenfärbung
end
ein Graph, für den es eine -Knotenfärbung gibt. Dann ist GreedyIS
, ' . Sei , ' , ' . Mit , '
' Nach spätestens Schritten (verteilten Farben!) ist der Zahl der verbliebenen Knoten kleiner als
. Hier
erhält
nun jeder Knoten eine eigene Farbe, so dass die Zahl der vergebenen Farben
nach oben begrenzt wird durch .
7. Vorlesung
28.11.2002
3.2.1 Labelling und Färbungsprobleme
In der Modellierung von Frequenzzuweisungsproblemen (Frequency Assignment Problems) unterscheidet
man zwei Grundtypen.
41
Färbungsprobleme
Diese werden auch Frequenzzuweisungsprobleme mit wiederverwendbarer Frequenz genannt. Wie
bereits vom klassischen Färbungsproblem bekannt, kann man hier Farben (=Frequenzen) immer wieder verwenden. Ziel ist es die Gesamtanzahl der Frequenzen zu minimieren unter Einhaltung der
Frequenzabstände.
Labelling-Probleme
Im Gegensatz zu Färbungsproblem kann hier nur jede Farbe einfach vergeben werden. Erst die Einhaltung von Frequenzabständen macht dieses Problem nicht trivial. Diese Problemstellung findet in
Frequenzspektren Anwendung, wo die Anzahl der Sender relativ gering ist (z.B. im Langwellenbereich), obgleich auf eine gewisse effiziente Ausnutzung des Spektrums nicht verzichtet werden
kann.
Eine Erweiterung stellen Mengen-(Färbung/Labelling)-Probleme dar, in denen jedem Sender eine Mindestanzahl von Frequenzen zugeordnet werden müssen. Auch hier ist ein Frequenzabstand einzuhalten.
zweier Punkte sich
All den folgenden Untersuchungen ist gemein, dass die Abstandsfunktion nicht auf den tatsächliche Euklidischen Abstand bezieht, sondern auf die Anzahl der Kanten auf den
kürzesten Weg von nach in einem gegebenen ungerichteten (Interferenz-) Graph.
Warum soll man weitere Modelle als das Färbungsproblem betrachten? Sicher ist das Färbungsmodell
ein einfach beschreibbares und anschauliches Modell. Wir haben gesehen, dass es algorithmisch weder exfallen zusammen. Das Hauptproblem ist,
akt noch approximativ gelöst werden kann, es sei denn und
dass die praktischen Anforderungen an einer Frequenzzuweisung schlecht modelliert werden, da der Zusammenhang von hoher Sendeenergie in der Umgebung eines Senders und der Beeinflussung benachbarter
Frequenzräume dadurch nicht dargestellt werden kann.
3.2.2 F*D-FAP
- Im F*D-FAP (Frequenz zu Distanz-Frequenzzuweisungsproblem/frequency versus distance frequency assignment problem ) ist eine Knotenmenge und eine Interferenzgraph gegeben. Ferner sind die Distan
zen
und die Frequenzzwischenräume
gegeben.
Gesucht ist eine Frequenzzuweisung
, so dass für alle gilt:
- E- E - . Für eine Beispielinstanz
Zu minimieren ist der maximale Funktionswert von , nämlich
siehe Abbildung 3.19.
Der Vorteil dieser Definition ist die Flexibilität und Allgemeinheit der Problemstellung, die Praxisnähe
verspricht. Andererseits stellt die Allgemeinheit auch ein Problem dar. Man erbt die Komplexitäät enthaltener Teilprobleme, wie das klassische Färbungsproblem, während andererseits nicht jede Folge und
realistisch ist.
T-Färbung
Dieses Problem ist definiert für eine feste endliche Menge
. Betrachtet werden nur direkt benachbarte Radiostationen.
Gegeben ist der ungerichtete Graph
. Gesucht ist hier eine Färbung
, so dass für
alle gilt
-
Damit stellt sich -Färbung als Spezialfall von F*D-FAP mit
und
,
Beispiel ist in Abbildung 3.20 dargestellt.
Zwischen der -Färbungszahl und der Färbungszahl besteht folgender Zusammenhang.
42
dar. Ein
Gegeben:
k
1
T
3
4
6
8
12
1
3
14
9
5
3
{0} {0,1}
D
Gesucht:
2
{0,1,3}
2
1
7
Abbildung 3.19: Beispiel für eine F*D-FAP-Instanz und Lösung
Gegeben:
Gesucht:
1
3
1
4
6
3
1
3
5
Abbildung 3.20: -Färbungsinstanz für
Lemma 7 Für alle ungerichtete Graphen
5
und Lösung
und Mengen mit gilt:
Der Beweis sei dem Leser zur Übung überlassen. Für die rechte Ungleichung kann man sich überlegen,
dass
Farben es genügt, die der Farbe zugeordnete Zahl mit
für eine gegebene Färbung mit
zu multiplizieren. Die erhaltene Frequenzverteilung genügt -Färbungsbedingung.
Radio-Färbung
Das Problem der Radio-Färbung berücksicht auch Interferenzen, die über die direkte Nachbarschaft hinausgehen.
Die Problemstellung ist hier für einen gegebenen ungerichteten Graph
eine Färbungsfunktion zu finden, so dass für Knoten gilt:
falls d(u,v) = 1 :
falls d(u,v) = 2 :
-
Auch diese Fragestellung ist ein Spezialfall von F*D-FAP. Hierbei wählt man
,
,
,
,
. Hier kann man einen Zusammenhang der Radio-Färbungszahl
zum maximalen Grad des Graphes herstellen:
43
gilt:
Lemma 8 Für alle ungerichtete Graphen
Beweis: Für die linke Ungleichung betrachtet man einen Knoten mit maximalen Grad . Alle Nachbarn
dieses
Knoten müssen verschiedene Farben besitzen. Hieraus folgt, dass die Anzahl der Farben mindestens
sein muss.
Für die rechte Ungleichung verbinden wir alle Knoten, die in der direkten
Nachbarschaft eines Knoten
sind. Dadurch erhalten wir einen Graphen mit einem Grad
. Nun betrachten wir
-Färbung auf diesen Graphen mit
. Eine solche -Färbung garantiert eine Radiofärbung,
d.h.
.
Nach
Lemma
7
gilt
.
Aus
Lemma
4
folgt
.
Gegeben:
Gesucht:
2
8
3
6
4
8
1
3
5
7
Abbildung 3.21: Radio-Färbungsinstanz und Lösung
Theorem 13 Es gelten foglende Aussagen.
1. Die Entscheidungsprobleme von T-Färbung und Radio-Färbung sind
2. Für jede Menge mit es sei denn
-vollständig.
ist das -Färbungsproblem nicht mit relativer Güte
.
3. Radio-Färbung auf planaren Graphen ist mit relativer Güte
approximierbar,
approximierbar.
Der Beweis des zweiten Punktes sei als Übungsaufgabe empfohlen (folgt aus Lemma 8). Für die nicht
trivialen Beweise der Punkte 1. und 3. verweisen wir auf [FNPS01].
3.2.3 Radio-Labelling
Für einen gegebenen ungerichteten Graph
gesucht, so dass für alle gilt:
falls
falls
wird hier eine injektive Funktion
Natürlich kann man bei Labelling-Problemen auf die zweite Bedingung verzichten. Radio-Labelling ist
damit äquivalent zu -Labelling für
, wenn man -Färbung entsprechend als -LabellingProblem umformuliert.
Es stellt sich heraus, dass ein enger Zusammenhang zwischen Radio-Labelling und dem Problem des
Hamiltonschen Pfads besteht. Allgemein ist beim Problem des Hamiltonschen Pfads ein Graph gegeben
und das Entscheidungsproblem ist, ob ein Pfad im Graph existiert, der alle Knoten genau einmal besucht.
Beim Optimierungsproblem ist zusätzlich eine Gewichtungsfunktion
gegeben. Ziel ist es
die Summe der Kosten
des Hamiltonschen Pfads zu minimieren. Mit bezeichnen wir
das Minimierungsproblem des Hamiltonschen Pfades eingeschränkt auf vollständige Graphen mit Gewich
.
tungsfunktion
44
Lemma 9 Radio-Labelling ist äquivalent zu HP(1,2).
Beweis: Sei
Gewichtsfunktion
der Graph der dem Radio-Labelling zugrunde liegt. Wir definieren nun als
falls ,
falls .
gegeben durch eine Permuation Für einen Hamiltonschen Pfad
definieren wir nun ein Labelling durch
'
'
-
&
)' (
' '
' und
aus . Damit ist
Dieses Labelling ist ein gültiges Radio-Labelling, da für alle
gilt folgt, dass
ein
existiert
und
,
wobei .
Es gilt ferner
-
Umgekehrt kann man mit der umgekehrten Transformation ebenso aus jedem Radio-Labelling eine
Hamiltonschen Pfad erhalten, indem man einfach die Knoten gemäß ihrer Label sortiert. Auch hier gilt
dann die eben beschriebene Gleichheit (siehe auch Abbildung 3.22).
Radio−Labelling
5
HP(1,2)
3
2
4
2
1
2
1
7
2
2
1
2
1
2
5
2
2
4
3
Abbildung 3.22: Äquivalenz von Radio-Labelling und HP(1,2)
Ein vollständiger Graph hat eine metrische Gewichtsfunktion
ungleichung für alle , wenn diese der Dreiecks
genügt. Man kann sich schnell davon überzeugen, dass jede Gewichtsfunktion mit Wertebereich
einem vollständigen Graph eine Metrik darstellt.
auf
Theorem 14 Das Hamiltonsche Pfadproblem für vollständige Graphen mit metrischer Distanzfunktion
kann mit relativer Güte approximiert werden.
Beweis: Wir betrachten den minimal spannenden Baum (MST) mit Gewicht
. Für den optimalen
Hamiltonschen Pfad gilt natürlich
, da jeder Pfad auch ein Baum darstellt.
Wir berechnen zuerst den MST in polynomieller Zeit und traversieren alle Knoten dieses Baumes
gemäß Abbildung 3.23. Hieraus ergibt sich ein Pfad , der jede Kante genau zweimal besucht und damit
Knoten mehrfach besucht. Für das Gewicht des Pfads gilt:
45
Abbildung 3.23: Traversierung des minimal spannenden Baums
' Wir streichen jetzt in diesem Pfad alle Mehrfachvorkommen eines Knoten, indem wir nur das erste Vorkommen eines Knotens
stehen lassen und erhalten . Allgemein gilt für einen Pfad
für jede metrische Gewichtsfunktion :
' '
' Damit gilt für den Hamiltonschen Pfad :
Aufgrund der Äquivalenz von Radio-Labelling und ' folgt nun sofort:
Korollar 3 Radio-Labelling lässt sich mit relativer Güte approximieren.
Dieses Resultat kann man noch auf die relative Approximationsgüte von
verbessern [FNPS01]. Wir
erinnern uns, dass Radio-Färbung für planare Graphen schon
-vollständig war.Überaschenderweise
gilt das nicht für das entsprechende Labelling-Problem.4
Theorem 15 [FNPS01] Radio-Labelling für planare Graphen ist in
.
Aus Zeitgründen wird dieser anspruchsvolle Beweis im Rahmen dieser Vorlesung nicht besprochen.
4 Es
sei denn
"
.
46
Kapitel 4
Radio Broadcasting
8. Vorlesung
Unter Broadcasting-Kommunikation versteht man das Versenden einer Nachricht von einer Informations04.12.2002
quelle an alle anderen Teilnehmer. Under dem Radio Broadcasting-Problem versteht man das Problem,
verteilt die Kommunikation so zu koordinieren, dass keine zwei Sender gleichzeitig versuchen diese Nachricht demselben Empfänger mitzuteilen. Geschieht das trotzdem, so wird nichts empfangen. Das heisst
insbesondere, dass der Empfänger nicht unterscheiden kann, ob keine Nachricht gesendet wurde oder ob
eine Nachrichtenkollision stattgefunden hat.
Als praktische Motivation kann man sich einen Funknetzwerk aus Flugzeugen vorstellen, in welchem
versucht wird, auf derselben Frequenz Nachrichten vom Tower an alle anderen Flugzeuge weiterzuleiten,
auch wenn sie sich schon außerhalb der Reichweite des Towers befinden.
Der Informationsfluss wird vollständig beschrieben durch einen ungerichteten Graphen
,
der dadurch gleichzeitig mögliche Verbindungen als auch Interferenzen beschreibt. Wenn keine Kante zwischen zwei Knoten vorhanden ist, dann ist weder Empfang noch Störung möglich. Wenn Kante
existiert, kann u nach v senden und umgekehrt. Hierbei sendet ein Knoten gleichzeitig an alle Punkte
seiner Nachbarschaft. Sei die direkte Nachbarschaft einer Station gemäß . Senden mindestens
zwei Knoten aus gleichzeitig, so kann nichts empfangen.
Wir gehen davon aus, dass die Stationen alle gleichgetaktet in Runden arbeiten. Das Netzwerk ruht,
bis der Sender versucht, das Broadcasting durchzuführen. Alle Stationen, einschließlich der Urheber
der Nachricht arbeiten nachdem selben Algorithmus. In Runde erhält der Sender die Nachricht, in der
nächsten Runde kann der Sender anfangen diese zu verbreiten. Im Netzwerk ist immer nur eine Nachricht
zu verbreiten.
Die Aufgabenstellung wird in Abbildung 4.1 dargestellt. Den Teilnehmern ist nicht bekannt, wie das
Netzwerk aufgebaut ist. Ziel ist es einen verteilten Algorithmus (d.h. einen Algorithmus zu entwerfen,
der auf allen Stationen implementiert wird), der Broadcasting schnell und sicher durchführt, sofern das
zugrundeliegende Netzwerk zusammenhängend ist.
Leider ist das im Prinzip selbst für einfachste Netzwerke nicht möglich, wie das folgende Theorem
besagt.
Theorem 16 Es gibt keinen deterministischen Broadcasting-Algorithmus f ür das Radio-BroadcastingProblem1 .
Beweis: Wir betrachten hierfür den Graphen aus Abbildung
4.2. Knoten stellt die Quelle dar. Sobald
sendet, werden und gleichzeitig informiert. Da und synchron nach dem gleichen deterministi- schen Algorithmus arbeiten, senden und pausieren sie immer gleichzeitig. In beiden Fällen empfängt
kein Signal. Damit wird das gesamte Netzwerk nie informiert, obleich der zugrundeliegende Graph zusammenhängend ist.
Erlaubt man den Stationen einen randomisierten Algorithmus zu verwenden, so ist das BroadcastingProblem doch lösbar. Wir betrachten hierzu den Algorithmus Simple-Random in Abbildung 4.3
Sei der Durchmesser des Kommunikationsgaphen und sein Grad. Dann gilt folgendes Lemma.
1 ohne
ID, d.h. für ununterscheidbare Radiostationen
47
? ? ?
?
?
?
?
Abbildung 4.1: Mögliche Netzwerke für Radio-Broadcasting
q
a
b
c
Abbildung 4.2: Ohne IDs kann kein Radio-Broadcasting-Algorithmus diesen Graph informieren
Simple-Random(t)
begin
if Nachricht
for then
tovorhanden
do
mit Wahrscheinlichkeit if
fi
mit Wahrscheinlichkeit
then
Sende (an alle Nachbarn)
od
fi
end.
Abbildung 4.3: Der Simple-Random-Algorithmus
48
Lemma 10 Ein Nachbarknoten wird in einer Runde mit Mindestwahrscheinlichkeit von
falls mindestens ein Nachbar informiert war.
informiert,
Beweis: Die Wahrscheinlichkeit,
dass
einer von
informierten Nachbarknoten ungestört
genau
sendet, ist: .
mit Abstand zur Quelle . Sei
Wir betrachten jetzt einen Knoten ein Pfad in
von zu . Dann betrachten wir jetzt nur den (erfolgreichen) Informationsfluss entlang
dieses Pfades. Wenn in einer gewissen Zeit Information entlang dieses Pfades transportiert werden kann,
dann stellt diese Zeit eine obere Schranke für den Zeitbedarf zur Information von im gesamten Netzwerk
dar. Damit unterschätzen wir also (möglicherweise) den wirklichen Informationsfluss und betrachten nur
den Informationsfluss auf diesen Pfad
P Lemma 11 Für jedes und gilt: Wenn auf einem Pfad der Länge
eine Nachricht mit
unabhängiger Wahrscheinlichkeit voranschreitet und mit Wahrscheinlichkeit
stehen bleibt, dann ist
die Wahrscheinlichkeit, dass die Information nach spätestens Schritten mit
nicht durchgelaufen ist, höchstens Beweis: Für den Beweis denken wir uns den Pfad nach rechts unbeschränkt verlängert und notieren mit
die Wahrscheinlichkeit, dass die Information in der Runde schon Schritte zurückgelegt hat.
Wenn die Zufallsvariable beschreibt, welche die erfolgreich zurückgelegte Wegstrecke bezeichnet.
Dann sieht man, dass diese beschrieben wird durch die Summe von binären gleichverteilten Zufallsvaria
blen mit P
und P
. Damit wird durch eine Binomialverteilung
beschrieben.
Es gilt also
P
Wir halten ab sofort fest und schreiben daher verkürzend
triviale Beobachtung fest (für
):
Wir möchten jetzt die Wahrscheinlichkeit
P
&
&
(
(
statt
. Wir halten zuerst einmal folgende
nach oben abschätzen. Hierfür betrachten wir den Quotienten zweier aufeinanderfolgenden Terme . Es
gilt
+
+ 0 < +
+ 0 + 49
Angenommen für ein gilt und
Damit gilt für :
P
&
&
(und damit für
(
(
& ( # &
( Lemma 12 Für geeignetes
lichkeit von mindestens
bleiben.
. Dann folgt daraus
. Somit ergibt sich für da nach
unserer
gilt
ersten
Beobachtung
):
<
Somit ist
&
(
' gilt: Simple-Random
informiert das gesamte Netzwerk mit Wahrschein in Zeit , , wenn alle Stationen bis zum Ende aktiv
Beweis: Wir betrachten einen Knoten und einen Pfad von der Quelle zu der höchstens Länge . Wir
vernachlässigen andere Informationsflüsse und untersuchen nur die Wahrscheinlichkeit, dass die Information durch Broadcast-Operationen entlang dieses Pfades weitergereicht wird.
Nach Lemma 10 ist die Erfolgswahrscheinlichkeit
einen Schritt mindestens
. Wir wenden
für
nun Lemma 11 an, wobei wir und setzen. Die Wahrscheinlichkeit zu scheitern,
d.h., dass keine Information innerhalb der Zeit
(für
E- ,
- , E-
"- ) ankommt, ist dann
'
,
,
' Modellerweiterung
Im deterministischen Modell ist im allgemeinen kein Radio-Broadcasting möglich. Wer erweitern daher
das Modell, um einen fairen Vergleich zwischen Probabilismus und Determinismus zu ermöglichen.
Wir erlauben daher, dass ein deterministischer Algorithmus auf einer Radiostation eine eindeutige
Identifikationsnummer ID
aus dem Bereich
verwenden darf. Außerdem ist die Gesamtanzahl der Knoten bekannt.
Im probabilistischen Modell erlauben wir keine IDs, geben dem Algorithmus Informationen über die
Knotenanzahl und den maximalen Grad . Wenn wir deterministische und probabilistische Algorithmen
voraus.
vergleichen wollen, setzen wir nur
50
E- Decay
begin repeat
Sende Nachricht an alle Nachbarn
Ergebnis fairer Münzwurf (0/1 mit jeweils W’keit )
until
oder end
-
Abbildung 4.4: Der Decay-Algorithmus
4.1 Effizientes Probabilistisches Radio Broadcasting
9. Vorlesung
Wir werden jetzt eine elementaren verteilten Algorithmus Decay (siehe Abb. 4.4) kennenlernen, der ver11.12.2002
sucht, ausgehend von informierten Nachbarn, einen Knoten mit Wahrscheinlichkeit von mindestens zu
informieren. Jeder der informierten Knoten sendet zuerst und wirft danach eine Münze, um zu bestimmen, ob er aufhört. Damit wird die Anzahl der kollidierenden Teilnhemer randomisiert ausgedünnt.
Wir gehen also davon aus, dass Nachbarknoten gleichzeitig Decay
starten. Dann bezeichne
die Wahrscheinlichkeit, dass die Nachricht von Nachbarn in Runden erhalten wird.
Nach dieser Definition gilt also für , dass
, da hier kein Nachbar informiert ist. Im
ersten Schritt des Algorithmus senden alle Teilnehmer gleichzeitig, damit ist also
, da dann
keine Blockade auftritt und
für , da dann mindestens zwei Teilnehmer gleichzeitig
senden und die Schleife nur einmal durchlaufen wird.
Wenn zwei Nachbar informiert sind und zwei Runden zur Verfügung stehen, gliedert sich die Wahrscheinlichkeit
in drei Fälle:
E - - -
E- 1. Zwei Nachbarn hören nach der ersten Runde auf. Dies passiert mit Wahrscheinlichkeit und wir
erhalten den Fall mit keinem Nachbar und einer verbliebenen Runde, d.h.
.
2. Ein Nachbar hört nach der ersten Runde auf. Hierfür haben wir Wahrscheinlichkeit und wir erhalten die Restwahrscheinlichkeit
.
3. Kein Nachbar hört auf; Wahrscheinlichkeit hierfür ist und wir müssen diese Wahrscheinlichkeit
mit der Erfolgswahrscheinlichkeit
multiplizieren.
können wir also die Wahrscheinlichkeit E - Wir erhalten also
Im allgemeinen Fall mit Unterfällen “ Nachbarn hören auf” rekonstruieren:
&
E- &
( &
( (
- - Nachbarn hören auf
Aus dieser Rekursion werden wir folgendes Lemma ableiten:
Lemma 13 Für gilt:
51
E - $
als Rekursion aus den
' $! # E- .
, gilt: E- 2. Für -
1.
' !$# E- - - ' !$# - .
&
( Beweis:
E - 1. Zuerst verdeutlichen wir uns, dass
existiert. Dies kann man daraus schlussfolgern,
dass die Werte
mit monoton zunehmend sind (folgt aus einfachen Induktionsbeweis) und
die Wahrscheinlichkeiten
nach oben mit beschränkt sind.
Wir bezeichnen daher
:
Damit gilt für und dann
Wir betrachten zuerst
Damit erhalten wir
. Unter der Annahme, dass für korrekt ist, führen wir jetzt einen Induktionsbeweis durch. Es gilt
&
(
Demnach gilt also
2. Dass die Aussage
für be. Wir betrachten daher nur den Fall E- (
&
K .
E- & (
Somit ist
die Annahme
.
''
und
, gilt, war Teil einerÜbungsaufga-
-
beschreibt die Wahrscheinlichkeit, dass Nachbarn einen Knoten in Runden informieren.
Dieses Ereignis bezeichnen wir mit . Sei das Ereignis, dass der Knoten bei informierten
Nachbarn jemals informiert wird und ist das Prädikate, das wahr ist, falls alle Nachbarn innerhalb von Runden aufhören (Dies ist eine hinreichende Bedingung für das Halten des Algorithmus).
-
52
BGI-Broadcast
begin
- ,, wait until Nachricht kommt an
for to do
wait until Time Decay
od
, - E- end
Abbildung 4.5: Der Broadcast-Algorithmus von Bar-Yehuda, Goldreich und Itai [BYGI87]
Es gilt '
'
und damit ist
E- '
'
'
'
'
' '
,
Die Wahrscheinlichkeit, dass gilt, ist also die Wahrscheinlichkeit, dass mindestens ein Nach barn mindestens Runden aktiv sind. Diese Wahrscheinlichkeit ist wegen
-
Damit ist
E- '
'
-
.
10.Vorlesung
Wir werden diesen Decay-Algorithmus als elementaren Baustein für ein effizientes probabilistisches 18.12.2002
Informationsverteilungsverfahren verwenden, das in [BYGI87] vorgestellt wird. Hierbei wird neben der
Nachricht eine Uhr in der Variable Time mitgeführt, die in jedem Zeitschritt um eins erhöht wird. Bei jeder
Kommunikation wird diese Variable an die Kommunikationspartner weitergegeben, so dass jeder der die
Nachricht kennt auch über einen synchroniserte Uhr verfügt.
Der BGI-Broadcast-Algorithmus
(Abb. 4.5) arbeitet in
sogenannten Superrunden die
Teilschritten bestehen. In jeder Superrunde starten alle Teilnehmer synchron den Decayaus
Algorithmus, der die Information dann mit Wahrscheinlichkeit von mindestens weiterleitet. Hierbei muss
insbesondere beachtet werden, dass die Informierung von Nachbarn nicht unabhängig geschieht, solange
es in der selben Superrunde geschieht.
Wir betrachten wieder einen festen Knoten und einen Pfad von der Quelle zu diesen Knoten der Länge
. Wir betrachten nur den Informationstransport entlang dieses Pfades. Gelingt es der Nachricht eine
Abkürzung zu beschreiten, so ignorieren wir diesen Effekt. Wir abstrahieren jetzt vom eigentlichen Informationsprozess, indem wir folgendes Szenario betrachten:
- ,
, Abstraktion
Auf dem Pfad informiert in jeder (Super-) Runde ein Knoten seinen Nachbarknoten mit (unabhängiger) Wahrscheinlichkeit .
53
In dieser Abstraktion stecken zwei mögliche Fehlerquellen:
1. Der BGI-Algorithmus beschränkt die Anzahl der Versuche, in der ein Knoten versucht seine Nachbarn zu informierten auf . Möglicherweise ist dieser Zeitraum nicht ausreichend. Dann würde die
Information auf dem Weg zum Ziel steckenbleiben. In diesem Fall würde der Broadcast-Algorithmus
von der Abstraktion abweichen.
, 2. Wir sagen,
Abstraktion scheitert, wenn es ihr nicht gelingt, die Information in Zeit
dass die
an das Ende des Pfades zu bringen.
Mit Hilfe dieser Abstraktion beweisen wir das folgende Theorem.
, ,
Theorem
informiert alle Knoten mit Wahrscheinlichkeit
17 Der BGI-Broadcast-Algorithmus
.
, in Zeit
Beweis: Wir analysieren zuerst
Wahrscheinlichkeit, dass die Abstraktion scheitert. D.h. dass die Infor die
Superrunden bis zum Ziel benötigt.
mation mehr als
,
Hierfür wenden wir Lemma 11 an und setzen
und und erhalten für
mit Wahrscheinlichkeit von höchstens
, , dass die Nachricht in Zeit
ankommt.
Die Wahrscheinlichkeit, dass der BGI-Algorithmus von der Abstraktion abweicht, bestimmt sich wie
folgt. Entlang eines Pfades ist die Wahrscheinlichkeit, dass die Information Schritte wiederholt nicht
übertragen werden kann, höchstens
Die Kantenanzahl ist insgesamt durch beschränkt und damit ist die Wahrscheinlichkeit, dass
dieses Ereignis auf irgendeinen Pfad überhaupt vorkommt, beschränkt durch
Die Abstraktion scheitert also mit Wahrscheinlichkeit von höchstens und stimmt mit Wahrscheinlichkeit von höchstens nicht mit der Realität überein. Damit ist die Erfolgswahrscheinlichkeit minde . D.h. mit Wahrscheinlichkeit von mindestens
sind alle Knoten nach
stens Runden informiert.
, ,
,
4.2 Eine untere Schranke f ¨ur deterministische Broadcasting
Wir gehen für das deterministische Modell davon aus, dass jeder der teilnehmenden Funkstationen eine
eindeutige Identifikationsnummer ID aus dem Bereich
als auch die Anzahl der teilnehmenden
Stationen kennt. Wir haben bereits gesehen, dass ohne diese Zusatzinformation Broadcasting in diesem
Modell im allgemeinen nicht möglich ist.
Bezeichne den maximalen Abstand eines Knotens zur Informationsquelle. Dann gilt folgendes Theorem
Theorem 18 Für jeden verteilten deterministischen Radio-Broadcast-Algorithmus, der IDs verwenden
, dessen Knoten nicht in Zeit
informiert werden k önnen.
darf, gibt es einen Graph mit
54
0
...
1
2
3
...
n
...
n+1
Abbildung 4.6: Die Graphfamilie
Beweis: Wir werden für einen gegebenen deterministischen Algorithmus im folgenden einen zusammenhängenden Graph konstruieren, der so aufgebaut ist, dass der Algorithmus die Knoten dieses Graphes
in Zeit
nicht informieren kann.
Wir betrachten für die folgende Graphen
und einer gegebenen Menge
mit
und
Siehe hierzu Abbildung 4.6. ist
zusammenhängend, wenn .
zu. Ferner habe Knoten und
Wir
teilen
den
Stationen
IDs
aus
dem
Bereich
.
die ID: ID und ID In der ersten Runde kann Knoten also Stationen informieren. Das Problem ist, die
letzte Station
zu informieren. Es ist leicht einzusehen, dass ein Informationsaustausch zwischen den informierten
Stationen nicht hilfreich ist.
Daher konzentrieren wir uns auf die weiteren Runden, die wir mit aufsteigend nummerieren. Hier
verfolgt jede Station einen festgelegten deterministischen Algorithmus, der völlig unabhängig von arbeitet, bis der letzte Knoten informiert ist. Wir setzen daher , wenn Station in Runde sendet und
entsprechend andernfalls.
Damit kann jeder deterministische Algorithmus durch eine -Matrix beschrieben werden
mit Einträgen und . Unser Ziel ist es ein Verfahren zu beschreiben, das für jede dieser Matrizen eine
Menge von Zeilen zu finden, so dass für jedes
entweder alle Einträge ) oder es mindestens zwei Einträge mit sind (für gibt. Hierfür
verwenden wir den Algorithmus -gewinnt, der in Abbildung 4.7 dargestellt ist.
Wir werden jetzt beweisen, dass dieser Algorithmus die gewünschte Menge bestimmt.
Als erstes beweisen wir, dass es nach Beendigung dieses Algorithmus keinen Zeitpunkt
gibt, indem nur eine Station sendet. Dies folgt sofort aus der Schleifenbedingung
D
es existiert mit genau einen Eintrag
Denn nach Beendigung einer Schleife while do od gilt
.
Nun müssen wir noch zeigen, dass der Algorithmus terminiert und dass danach gilt. Hierfür
beobachten wir, dass die Variable höchstens unterschiedliche Werte annehmen kann, da nach
Abarbeiten der inneren Schleife, die entsprechende Spalte auf gesetzt wird. Daher wird die Schleife
höchstens -mal durchlaufen. Da in jeder der Schleifendurchläufe höchstens eines der anfangs in
vorhandenen Elemente gelöscht werden kann, gilt am Ende .
Wenn wir für einen gegebenen deterministischen Algorithmus mit dieser Strategie und damit den
Graphen
bestimmen, können wir nach der ersten Runde zur
Informierung der Stationen
weitere Runden verhindern, dass die Station informiert wird.
+
55
K mit genau
while es existiert einenEintrag
Spalte mit genau
einer in Zeile
mit
K do
for all B-gewinnt
begin
do
od
od
end
Abbildung 4.7: Adversary-Strategie gegen einen deterministischen Broadcast-Algorithmus gegeben durch
die Matrix
56
Kapitel 5
Mobile Ad Hoc Netzwerke
11.Vorlesung
Ein mobiles ad hoc Netzwerk (Manet) ist ein autonomes System aus beweglichen Teilnehmern, die unter- 08.01.2003
einander über drahtlose Verbindungen kommunizieren. Wir modellieren ein Manet durch einen gerichteten
, wobei die Knotenmenge die Teilnehmer und die Kantenmenge die drahtlosen
Graphen
Kommunikationsverbindungen beschreibt. Manets zeichnen sich dadurch aus, dass sie keine Infrastruktur
und keine zentrale Verwaltung haben. Sie erlauben eine spontane (ad hoc) Vernetzung von mobilen Systemen, wie z.B. PDA, Notebook, Handy oder Roboter, ebenso wie eine spontane Anbindung dieser mobilen
Endgeräte an bestehenden LAN-, WAN- oder WLAN-Netzwerken. Durch die Mobilität der Teilnehmer
entsteht eine hohe Dynamik. Jederzeit können Teilnehmer zu dem System hinzukommen oder es verlassen. Die drahtlosen Kommunikationsverbindungen ¨andern sich laufend und können sehr kurzlebig sein.
Weiterhin nehmen wir in unseren Betrachtungen an, dass den Teilnehmern eines Manet keine Ortsinformationen zur Verfügung stehen.
Unter drahtloser Kommunikation verstehen wir die Datenübertragung mittels Funk (omnidirektionale
Kommunikation, Rundfunkmodell) oder Richtfunk bzw. Infrarot (unidirektionale Kommunikation, Sektorenmodell). In beiden Modellen1 erlauben wir die Einstellung der Sendestärke um die Sendereichweite zu
regulieren. Wir sprechen hier von leistungsvariablen Manets. Zur Vereinfachung gehen wir davon aus, dass
wir nur eine Frequenz zur Datenübertragung nutzen können.
Unser Ziel liegt darin, eine effiziente Kommunikation in einem Manet zu gewährleisten. Im folgenden
werden wir klären, was dabei effiziente Kommunikation bedeutet. Zunächst aber zu einigen Grundproblemen in Manets. Im Unterschied zu festverdrahteten Netzwerken (z.B. Ethernet) können Kanalabhörverfahren (z.B. CSMA/CD) in Manets nicht ohne weiteres verwendet werden. Die Übertragung der Daten
erfolgt über elektromagnetische Wellen, die sich überlagern können. Tritt dieseÜberlagerung an einem
Empfängerknoten auf, so sprechen wir von einer Interferenz (Störung, Kollision), und es kommt zu Datenverlust.
A
B
C
Abbildung 5.1: Hidden-Terminal-Problem
Definition 6 (Hidden Terminal Problem) Sei ein Knoten, der im Rundfunkmodell Daten an einen Knoten überträgt. Nun kann es einen Knoten geben, der gegenüber von auf der Geraden
liegt und
den gleichen Abstand von hat wie zu . Falls ebenfalls Daten an übertragen möchte, hört den
1 Anmerkung: Das Rundfunkmodell entspricht dem Sektorenmodell mit einem Sektor. Sowohl das Senden als auch das Empfangen
erfolgt sektororientiert!
57
Kanal zunächst ab um festzustellen, ob ein anderer Knoten sendet. Hier tritt das Hidden Terminal Problem (Bild 5.1) auf, denn der Knoten erkennt nicht, dass der Knoten an sendet. beginnt mit der
Übertragung, und es kommt beim Knoten zur Interferenz.
A
B
C
D
Abbildung 5.2: Exposed-Terminal-Problem
Definition 7 (Exposed Terminal
Problem)
Seien
vier benachbarte Knoten auf einer Geraden
mit gleichem Abstand, d.h.
. sende nun Daten im Rundfunkmodell an . Falls
der Knoten Daten an den Knoten übertragen möchte, hört er den Kanal zunächst ab. Er sieht, dass ein
anderer Knoten bereits sendet und entscheidet sich dafür nicht zu senden. Hier tritt das Exposed Terminal
Problem (Bild 5.2) auf, denn könnte durchaus Daten an übertragen. Die beiden Kommunikationsverbindungen
und
stören sich nicht.
C D
A
B
Abbildung 5.3: Asymmetric-Interference-Problem
Definition 8 (Asymmetric Interference Problem) Sei
eine relativ kurze Kommunikationsverbindung,
genutzt wird. Falls nun die Knoten und eine Kommunidie parallel zu einer langen Verbindung
kation aufbauen, so erkennt weder der Knoten noch der Knoten , dass und Daten austauschen.
und starten ihren Datenaustausch, und es kommt zur Kollision mit und (Bild 5.3).
Das Hidden Terminal Problem führt zu Datenverlust, wobei das Exposed Terminal Problem für eine
geringere Auslastung der Bandbreite sorgt. Das Asymmetric Interference Problem tritt nur in leistungsvariablen Manets auf, da hier die Sendestärke möglichst exakt für eine Kommunikationsverbindung eingestellt wird. Bei fester Sendestärke tritt das Problem nicht auf. Die drei Probleme lassen sich auch auf das
Sektorenmodell übertragen. Dies sei dem Leser alsÜbung überlassen.
C
A
D
B
E
Abbildung 5.4: Problem des Zusammenhangs
Ein Problem, das in leistungsvariablen Manets auftritt, ist der Zusammenhang. In einem Netzwerk
muss sichergestellt sein, dass jeder Knoten auch jeden anderen Knoten über verschiedene Kanten erreicht.
Aufgrund der Reichweitenanpassung liegt die Idee nahe, die Reichweite auf den Knoten einzustellen, der
mit der geringsten Sendestärke erreichbar ist. Im Rundfunkmodell führt dies dazu, dass das Netzwerk u.U.
58
nicht mehr zusammenhängt (Bild 5.4: Es bilden sich zwei Zusammenhangskomponenten, die nicht verbunden sind. Die Richtung der Kanten zeigen den nächsten Nachbarn an). Wir werden später sehen, dass die
Strategie der Anbindung des nächsten Nachbarn im Sektorenmodell ausreicht, um ein zusammenhängendes
Netzwerk mit guten Kommunikationseigenschaften zu erhalten.
In Manets ist die Sendereichweite der Teilnehmer beschränkt, so dass nicht jeder Teilnehmer jeden anderen direkt erreichen kann. Die direkte Kommunikation zwischen zwei benachbarten Knoten nennen wir
1-Hop-Kommunikation (Hop=Hüpfer). Da wir aber die Kommunikation zwischen beliebigen Teilnehmern
ermöglichen möchten, erhalten wir hier ein Routingproblem. Die Kommunikation zwischen zwei Knoten kann also über weitere Knoten erfolgen (Multi-Hop-Kommunikation). Für ein Quell-/Zielknotenpaar
müssen wir einen Weg angeben, der es ermöglicht Daten von einem Knoten zu einem Knoten
zu
transportieren.
Dynamische Änderungen aufgrund von Bewegungen der Teilnehmer, oder alleine das Ein- und Ausschalten der Knoten, sorgen dafür, dass sich sowohl die Netzwerkstruktur als auch die Routingwege laufend
ändern. Im nächsten Kapitel werden wir einen kurzenÜberblick über Routingprotokolle undÜbertragungstechniken geben, die versuchen diese Probleme zu lösen. Daran anschließend konzentrieren wir uns auf
mathematische Ansätze zur Bewertung und Entwicklung von Kommunikationsstrategien in Manets. Wir
beschäftigen uns dabei mit der Netzwerk- und der Verbindungsschicht in Manets.
5.1 Experimentelle Untersuchungen
Eine Übersicht über experimentelle Untersuchungen zur Netzwerkschicht in Manets liefert z.B. ein Buch
von Charles Perkins [Per01]. Zur Vertiefung in der Verbindungsschicht sei auf die IETF Manet Working
Group [Gro02] und auf die Tutorials von Nitin Vaidya [Vai02] verwiesen. Im folgenden geben wir einen
groben Überblick über die praktischen Arbeiten in diesen beiden Schichten.
5.1.1 Netzwerkschicht
In der Netzwerkschicht wird das Routing, d.h. die Kommunikation zwischen zwei beliebigen Netzwerkteilnehmern, die nicht notwendigerweise direkt miteinander verbunden sind, ermöglicht. Die Umsetzung
erfolgt über ein Routingprotokoll mit folgenden Aufgaben:
Bestimmung von Kommunikationswegen (z.B. Aufbau einer Distanztabelle für kürzeste-Wege-Routing)
Transport der Informationen entlang dieser Wege (z.B. First-In-First-Out, Longest-In-System, LastIn-Last-Out, Oldest-Packet-First)
Die Routingprotokolle unterscheiden sich in ihrer Informationsbeschaffung. Ein Protokoll arbeitet proaktiv, reaktiv oder hybrid. Hierbei bedeutet proaktiv, dass die Informationsgewinnung kontinuierlich durch automatische Aktualisierungsverfahren erfolgt (z.B. alle 500 ms). Eine reaktive Strategie aktualisiert Netzwerkbzw. Wegeinformationen erst auf Abruf, d.h. sobald auch wirklich ein Weg zu einem Zielknoten gefordert
ist. Hybride Verfahren versuchen die Vor- und Nachteile beider Aktualisierungsvarianten geschickt zu kombinieren. Sie arbeiten teilweise proaktiv und teilweise reaktiv.
Zu den klassischen Routingprotokollen in Festnetzen (z.B. Ethernet) gehören Distanzvektor- und Linkzustandsprotokolle. In Manets wurden damit ebenfalls die experimentellen Untersuchungen gestartet. Bei
einem Distanzvektorprotokoll baut jeder Knoten (Netzwerkteilnehmer) eine Routingtabelle auf, in der zur
Wegewahl notwendige Informationen über die Nachbarknoten gespeichert werden. Für jeden Zielknoten
wird ein Nachbarknoten ermittelt, über den Pakete weitergeleitet werden. Das Prinzip basiert auf dem
Bellmann-Ford-Algorithmus zur Bestimmung kürzester Wege. Die verteilte Umsetzung sieht so aus, dass
jeder Knoten seine Routingtabelle mit den Nachbarknoten austauscht. Das Verfahren liefert eine gültige
Routingtabelle, da jeder Knoten den Abstand zu seinen direkten Nachbarn kennt (1 Hop). Hier findet also
eine Hop-Minimierung statt. Ein bekanntes Problem in Distanzvektorprotokollen ist das Count-to-Infinity
Problem, welches auftritt, wenn eine Kommunikationskante entfernt wird und die Aktualisierungen auf
veralteten Informationen basieren. In Bild 5.5 ist in den Schritten eins bis drei zu sehen, wie sich die Information über einen Routingweg zum Knoten von den anderen Knoten im Netzwerk ausbreitet. Das
59
Netzwerk besteht aus vier Knoten und den gezeichneten Kommunikationsverbindungen. Die Tabellen werden korrekt ermittelt. In Schritt vier fällt nun aber die direkte Verbindung von Knoten zu Knoten aus,
und es kommt zu Fehlinterpretationen. Der Knoten verliert die direkte Verbindung zu , erinnert sich,
dass zwei Hops von entfernt ist und trägt somit eine drei in die Tabelle ein. Der Weg zu soll nun über
gehen. Diese Fehlinterpretation setzt sich durch das ganze Netzwerk fort, so dass es zu unendlich langen Wegen kommt. Zur Lösung dieses Problems werden die übertragenen Informationen mit Zeitstempeln
versehen.
A
Schritt 1:
Schritt 2:
Schritt 3:
A
Schritt 4:
Schritt 5:
Schritt 6:
Schritt 7:
B
1
1
1
C
D
2
2
3
B
3
3
3
5
C
2
4
4
4
D
3
3
5
5
Abbildung 5.5: Count-to-Infinity Problem
In Linkzustandsprotokollen sammelt jeder Knoten die Informationen über das gesamte Netzwerk. In
jedem Knoten wird also lokal ein Graph erzeugt, der das komplette Netzwerk beschreibt. Auf diesem
Graph können die kürzesten Wege nun z.B. mittels Dijkstra’s Kürzeste Wege-Algorithmus lokal berechnet
werden.
Weitere Routingprotokolle verwenden z.B. das Fluten des Netzwerkes (d.h. ein Paket wird von einem
Knoten an alle seine Nachbarn weitergeleitet), Potentiale zwischen benachbarten Knoten (abgeleitet aus
Algorithmen für Flussprobleme), u.ä.
Beispiele für Routingprotokolle in Manets (Überblick in [Per01]:
Proaktive Protokolle:
– Destination Sequenced Distance Vektor (DSDV)
– Optimized Link State Routing (OLSR)
Reaktive Protokolle:
– Dynamic Source Routing (DSR)
– Ad hoc On-demand Distance Vector (AODV)
– Temporally Ordered Routing Algorithm (TORA)
Hybride Protokolle:
– Zone Routing Protocol (ZRP)
– Greedy Perimeter Stateless Routing (GPSR)
Es ist anzumerken, dass diese Zusammenstellung nur eine sehr kleine Auswahl ist. Aktuell gibt es mehr
als 50 Routingprotokolle, die sich aber im wesentlichen auf die genannten Klassifizierungen zurückführen
lassen. In dieser Vorlesung liegt der Schwerpunkt auf algorithmische Aspekte in Manets, so dass wir hier
nur ein Routingprotokoll genauer vorstellen möchten. Dabei konzentrieren wir uns auf das Dynamic Source
Routing Protokoll.
60
Dynamic Source Routing
Beim Dynamic Source Routing Protokoll (DSR) wird das Routingproblem in zwei Teile unterteilt:
Route Discovery: Ein Pfad wird erst gesucht, wenn noch keiner vorhanden ist und einer gebraucht
wird
Route Maintenance: Nur während des Gebrauchs wird versucht den Pfad aufrecht zu erhalten
Da alle Operationen auf Abruf stattfinden, handelt es sich bei DSR um ein reaktives Routingprotokoll.
Es gibt keine periodischen Routinginformationen, und die Topologieänderungen beeinflussen ausschließlich betroffene Knoten.
Während eines Route Discovery’s (vgl. Bild 5.6) wird ein Route Request Paket geflutet, d.h. an alle
Nachbarn verschickt und von den Nachbarn wiederum an alle Nachbarn verbreitet. Ein Nachbar, der einen
Route Request zum zweiten Mal erhält, leitet diesen nicht weiter. Auf diese Art und Weise wird der Zielknoten erreicht oder ein Knoten gefunden, der einen Weg zum Zielknoten kennt. In beiden Fällen wird der
in den Paketen protokollierte Weg an den Erzeugerknoten zurückgeschickt (Route Reply).
"A"
A
"A,B"
B
"A,B,C"
C
D
Abbildung 5.6: Route Discovery
Ein Weg kann nun benutzt werden um Datenpakete zu verschicken. Die Route Maintenance sorgt dafür,
dass die Wege nicht an Gültigkeit verlieren. Nach dem Verschicken eines Datenpaketes wartet der Sender
auf eine Bestätigung (Acknowledgement) des jeweiligen Empfängerknotens. Falls dabei ein Problem festgestellt wird (z.B. eine Bestätigung bleibt aus), so wird ein Route Error Paket an den ursprünglichen Sender
geschickt. So können fehlerhafte Verbindungen erkannt und durch andere Wege ersetzt werden (evtl. neuer
Route Request).
Ermittelte Pfade werden in den beteiligten Knoten in einem Routen-Cache gespeichert. Der größte
Vorteil von DSR liegt in der reaktiven Arbeitsweise, d.h. Wege werden nur für Knoten ermittelt, die auch
an der aktuellen Netzwerkkommunikation beteiligt sind. Zu den Nachteilen gehört der Routen-Cache, der
auch ziemlich veraltete Wege enthalten kann. Außerdem wächst die Paketgröße mit der Wegelänge und die
Wegeermittlung zu Beginn durch Fluten erzeugt hohen Kommunikationsaufwand.
5.1.2 Verbindungsschicht
In der Verbindungsschicht geht es darum, die direkte Datenübertragung von einem Knoten zu einem Nachbarknoten fehlerfrei zu ermöglichen. Durch den drahtlosenÜbertragungskanal (vgl. Hidden Terminal Problem) kann es zu Konflikten bei der Datenübertragung kommen. In Abschnitt 2.3 haben wir bereits einige
Möglichkeiten kennengelernt, die gegen Konflikte auf demÜbertragungskanal schützen. Zur Kommunikation zwischen zwei benachbarten Knoten in Manets könnte man z.B. verschiedene Frequenzen, verschiedene Zeiten, orthogonale Codes, unterschiedliche Richtungen, etc. verwenden. Wir gehen hier allerdings
davon aus, dass nur eine Übertragungsfrequenz zur Verfügung steht und wir auch keine festen Codes vergeben können. Da sich die Knotenplatzierung in einem Manet laufend ¨andert, können wir auch nicht effizient
genug laufend eine Raumaufteilung oder ein Zeitscheduling neu berechnen.
Dennoch gibt es in Manets Ansätze, die das Hidden Terminal Problem lösen. Zunächst wird häufig
gefordert, dass die erfolgreiche Übertragung von Datenpaketen auch bestätigt wird (ACK). Wenn eine
Übertragung nicht bestätigt wurde, so wird das Datenpaket einfach nochmal geschickt,
und zwar zur Zeit
, wobei zur Zeit
zum ersten Mal geschickt wurde und die Anzahl der gescheiterten Versuche bezeichnet (vgl. Ethernet, CSMA/CD, CSMA/CA). Dieses exponentielle Vergrößern
des Zeitintervalls nennt man exponentielles BackOff-Protokoll. Für das Hidden Terminal Problem gibt es
wesentlich bessere Protokolle, wenn jeder Knoten mit der gleichen, festen Sendereichweite überträgt. In
diesem Fall können wir das Mobile Assisted Channel Allocation Protokoll (MACA) verwenden. Bevor
61
ein Knoten Daten an einen Knoten
sendet, wird eine Sendeanfrage (Request-to-Send Paket, RTS)
geschickt (siehe Bild 5.7). Falls kein anderer Knoten an sendet, so antwortet mit einer Sendeerlaubnis
(Clear-to-Send, CTS). Daraufhin kann mit der Datenübertragung starten. Das Hidden Terminal Problem
tritt nicht mehr auf, da jeder Knoten, der evtl. an senden könnte, das CTS-Signal mitbekommen hat. Zuletzt wird der korrekte Empfang der Daten von bestätigt. Andere Parameter und Vereinbarungen können
zu den RTS-CTS-Paketen hinzugefügt werden (z.B. Dauer derÜbertragung, Bandbreitenabsprachen, etc.).
Fehler während der Datenübertragung werden durch ein einfaches exponentielles BackOff-Protokoll aufgelöst.
RTS
A
B
C
CTS
A
B
C
DATA
A
B
C
ACK
A
B
C
Abbildung 5.7: MACA: Request-to-Send, Clear-to-Send Schema
Eine Erweiterung dieses RTS-CTS-Austausches liefert das MACAW-Protokoll (MACA-Wireless). Hier
sind zusätzliche Vereinbarungen erforderlich, und es wird ein anderes BackOff-Protokoll verwendet. Bei
erfolgreicher Übertragung wird das Wartezeitintervall nicht komplett zurückgesetzt, sondern linear verringert (z.B. um 1). Dies sorgt für weniger Kollisionen bei hoher Dichte und hohem Datenaufkommen. Zu
beiden Protokollen ist zu sagen, dass sie ohne weiteres nicht in leistungsvariablen Manets verwendet werden können. Klassische Varianten verwenden in leistungsvariablen Manets eine zusätzliche Frequenz zur
Ausstrahlung eines Besetztzeichens“mit maximaler Reichweite in regelmässigen Abständen. Das hilft uns
”
in unserem Modell aber nicht weiter (vgl. DBTMA, PCMA, PAMAS).
Einen ganz anderen Ansatz zur Datenübertragung verfolgen probabilistische Protokolle. Hier ist das
Ziel, jeder Kante eine bestimmte Wahrscheinlichkeit zuzuordnen, mit der sie in einem Zeitschritt benutzt
wird, um dann eine erfolgreiche Übertragung mit konstanter Wahrscheinlichkeit garantieren zu können.
Als Herausforderung an die zu entwickelnden Protokolle steht hier die Angabe eines verteilten Protokols,
welches die Wahrscheinlichkeiten bestimmt und an die Dynamik im Netzwerk anpasst. Mehr hierzu im
nächsten Kapitel.
62
5.2 Mathematische Analysen
12.Vorlesung
Unser Ziel besteht darin, effiziente Kommunikationsverfahren für Manets zu entwickeln. Die zu entwickeln- 15.01.2003
den Protokolle müssen sich an sich schnell ¨andernde Gegebenheiten anpassen können (Adaptivität) und
sollten Ressourcen effizient nutzen (insbesondere Energie und Zeit). Wir werden uns auf die Punkt-zuPunkt Kommunikation beschränken. Andere Kommunikationsvarianten sind z.B. Permutationsrouting, Broadcasting oder All-to-All Routing. Die wichtigsten Nebenbedingungen bei der Modellierung und der Entwicklung von Kommunikationsverfahren sind: Sicherstellung der Informationsübertragung (Problem: Interferenzen) und des Zusammenhangs (Problem: variable Sendereichweite), sowie Bereitstellung korrekter
Wege (Multi-Hop-Kommunikation).
5.2.1 Ressourceneffiziente Basisstrukturen im Rundfunkmodell
mit Knoten in der euklidischen Ebene gegeben. Wir erlauben zur KommunikaSei eine Menge tion zwischen zwei Knoten die Benutzung einer Frequenz und das Einstellen der Sendereichweiten. Eine
Übertragung erfolgt omnidirektional, d.h. wir legen das Rundfunkmodell zugrunde. Zusätzlich fordern wir,
dass jede erfolgreiche Übertragung bestätigt wird, so dass eine Kante in beide Richtungen benutzt wird.
, d.h.
Nun betrachten wir ein Punkt-zu-Punkt Routingproblem, gegeben durch
Pakete sollen von dem Quellknoten an den Zielknoten weitergeleitet werden. Wir lösen das Routingproblem , indem wir für jedes Paket einen Weg, d.h. eine Folge von Kanten, angeben. Die Vereinigung
aller verwendeten Kanten liefert die Kantenmenge bzw. das Wegesystem. Die Knoten und die Kanten der
Wege bilden ein Basisnetzwerk auf dem wir das Routingproblem ressourceneffizient lösen möchten.
Die beiden Ressourcen, die uns interessieren, sind Sendeenergie und Routingzeit. Das Ausbreitungsverhalten elektromagnetischer Wellen ist so charakterisiert, dass die Empfangsleistung quadratisch mit der
Distanz
abnimmt. Die Kosten einer drahtlosen Übertragung über eine Kante approximieren wir daher mit
.
&
Definition 9 (Einheitsenergie) Die Einheitsenergie eines Basisnetzwerkes
E-Energie
ist gegeben durch:
In dem Einheitsenergiemodell werden die Kosten aller Kanten berücksichtigt. Der Wert wird unabhängig
davon ermittelt, wie viele Pakete wirklich über eine Kante verschickt werden.
Das folgende Modell berück
sichtigt die wirkliche Last auf einer Kante. Zur Bestimmung der Last auf einer Kante zählen wir die
Pakete, die die Kante überqueren (andere Formulierung: die Last einer Kante ist die Anzahl der Wege,
.
die sie überqueren). Die maximale Last ist gegeben durch
Definition 10 (Flussenergie) Die Flussenergie eines Basisnetzwerkes
und dadurch induzierter Last ist gegeben durch:
F-Energie
&
mit Routingproblem
Die Routingzeit gibt die Anzahl der Schritte an, die benötigt werden um das Routingproblem
zu lösen, wenn in einem Zeitschritt ein Knoten eine Nachricht an einen Knoten
übermitteln darf (1
Zeitschritt=1 Hop). Die Routingzeit beschreiben wir durch die Werte Congestion und Dilation. Unser
Ziel liegt darin, obere und untere Schranken für anzugeben.
Routingzeit in Festnetzen: Wir modellieren ein Festnetz genauso wie ein Manet, allerdings stehen die
Kanten jetzt stellvertretend für festverdrahtete Verbindungen. Wir nehmen hier an, dass es bei derÜbertra
gung zwischen zwei benachbarten Knoten nicht zu Fehlern
betrachten
kommt. Für ein Festnetz
wir ein Routingproblem mit Wegesystem . Die Last
auf einer Kante , d.h. die Anzahl der Pakete,
die überqueren, bezeichnen wir mit Congestion der Kante . Die Last im Netzwerk ist dann ge . Die Länge eines längsten Weges in nennen wir Dilation
geben durch:
63
(maximale Hop-Distanz). Es ist leicht einzusehen, dass folgender Zusammenhang zwischen Routingzeit
und Congestion und Dilation besteht:
und
Der exakte Beweis sei dem Leser als Übung empfohlen.
Routingzeit in Funknetzen: Warum können wir in Manets nicht die gleiche Argumentation wie in Festnetzen benutzen? Ein Problem in Manets ist dadurch gegeben, dass bestimmte Kanten interferieren. Wir
können nicht annehmen, dass dieÜbertragung über eine Kante zu einem beliebigen Zeitpunkt erfolgreich
ist. Es kann zu Interferenzen kommen, so dass eine Übertragung mehrfach durchgeführt werden muss um
erfolgreich zu sein. Zur Lösung des Problems definieren wir das Mass Congestion neu und modellieren
genau, was wir unter einer Interferenz verstehen.
Definition 11 (Interferenz)
Sei
mit eine Kante .
der Kreis um
interferiert mit mit Radius und
oder Die Menge der Kanten, die mit einer Kante interferieren, ist gegeben durch:
und
oder für
Die Congestion einer Kante in drahtlosen Netzwerken ist definiert als die Last auf dieser Kante zuzüglich
den Lasten auf Kanten, die mit ihr interferieren.
Definition 12 (Congestion)
Sei
ein Manet mit Routingproblem , Wegesystem
zierter Lastfunktion
. Die Congestion einer Kante definieren wir als
Die Congestion des Netzwerkes ist gegeben durch:
&
und indu-
.
Die Dilation gibt wieder die Länge eines längsten Weges in an. Nun erhalten wir in einem Funknet
folgenden Zusammenhang zwischen Routingzeit und Congestion und Dilation.
Theorem 19 Für die Routingzeit in einem Manet
Wegesystem mit Congestion und Dilation gilt:
, mit Routingproblem
und
eine Kante mit maximaler Congestion . Wir versuchen die Anzahl der Kanten zu
Beweis: Sei maximieren, die zwar mit interferieren, aber trotzdem untereinander zeitgleich zur Übertragung genutzt
werden könnten, wenn nicht benutzt wird (vgl. Bild 5.8). Dazu unterteilen wir die Regionen um und für die Sektoren um und für die Sektoren um . Für
in jeweils Sektoren, d.h. alle Punkte
gilt nun, dass der Winkel zwischen
und
kleiner gleich ist. Sei nun
gilt: oder ( Sektoren). Daher müssen alle
Für zwei Kanten nacheinander stattfinden. Sei , dann
Übertragungen
über Kanten aus ( und damit:
gilt:
& ( 64
Abbildung 5.8: Die beiden äusseren Kanten können zeitgleich zurÜbertragung benutzt werden, d.h. die
erfolderliche Routingzeit ist mindestens um den Faktor 2 kleiner als die Congestion
Einzeloptimierungen
Ein optimales Wegesystem, dass für das Einheitsenergiemodell optimiert ist, liefert ein minimaler Spannbaum (MST( )). Die Gewichte an den Kanten sind gegeben durch die Energiekosten der entsprechenden
Kanten. Die Berechnung eines optimalen Basisnetzwerkes für Einheitsenergie kann mit dem Algorithmus
von Prim oder Kruskal in polynomieller Zeit erfolgen. Für das Flussenergiemodell liefert ein Baum nicht
unbedingt ein optimales Wegesystem, da die Bewertung der Kanten in Abhängigkeit der Last geschieht.
Aber auch hier lässt sich ein optimales Basisnetzwerk in polynomieller Zeit berechnen. Dazu betrachten
wir den Gabriel Graph GG( ).
, falls für
, heisst
Definition 13
gegeben. Der Graph
mit
(Gabriel Graph) Sei
: liegt nicht in dem Kreis um den Mittelpunkt von mit Durchmesser
alle
Gabriel Graph GG( ).
Der folgende Zusammenhang ist offensichtlich und wird dem Leser als Übungsaufgabe empfohlen:
MST( ) GG( ). Ein optimales Basisnetzwerk für das Flussenergiemodell erhalten wir nun, indem wir
im Gabriel Graphen die kürzesten Wege bestimmen, die zur Lösung des Routingproblems notwendig sind.
Die verwendeten Kanten bilden ein flussenergie-optimales Basisnetzwerk (Teilgraph des Gabriel Graphen),
denn der Gabriel Graph enthält für je zwei Knoten einen flussenergie-optimalen Weg. Um dies zu zeigen,
, die nicht
Energie-optimal ist. Dann gibt es einen
nehmen wir an, es gäbe eine Kante
. Das würde aber bedeuten, dass die Kante
weiteren Knoten mit:
nicht im Gabriel Graph enthalten ist, und wir erhalten einen Widerspruch (siehe Bild 5.9).
a
b
c
Abbildung 5.9: Die Definition von GG( ) entspricht der Energie-Optimalität einer Kante:
Im nächsten Kapitel werden wir Energie-optimale Basisnetzwerke approximieren, um auch gute Basisnetzwerke für andere Parameter zu erhalten. Dort werden wir sogenannte Spanner betrachten. Nun aber
zur Optimierung der Routingzeit. Wir haben gesehen, dass wir uns darauf konzentrieren können, Congestion und Dilation zu optimieren. Das Optimale Basisnetzwerk für Dilation ist der vollständige Graph.
Aber wie sieht das optimale Basisnetzwerk für Congestion aus? Wir versuchen es zu approximieren und
beginnen mit einer Worst-Case Platzierung für
die Anzahl
der Interferenzen. Wir betrachten eine Knoten
. Die Beobachtung hier ist nun, dass jede
menge
auf einer Linie mit Verbindung mit den Verbindungen , interferiert. Die Anzahl der Interferenzen
und bestimmt die Congestion. Um diese Situation charakterisieren
beträgt in diesem Basisnetzwerk
65
zu können und um eine obere Schranke für die Anzahl der Interferenzen zu erhalten, führen wir folgenden
Parameter ein.
einer Punktmenge ist definiert als:
D , Theorem 20 Für die Diversität einer Menge mit Punkten gelten:
1. , 2. 3. , für eine Konstante , wenn 4. , mit Wahrscheinlichkeit
gleichverteilt aus gewählt wird.
Definition 14 (Diversität) Die Diversität zufällig und
Die Aussagen 1 und 2 werden wir im Rahmen dieser Vorlesung aus Zeitgründen nicht beweisen. Die
Aussagen 3 und 4 seien dem Leser als Übungsaufgabe überlassen.
ist es
In Abhängigkeit der Diversität
mit dem Faktor zu appromöglich, die optimale Congestion für eine Punktmenge
ximieren. Aus Zeitgründen wollen wir uns in dieser Vorlesung nicht tiefergehend mit exakten Analysen
beschäftigen, sondern nur die Idee einer Basisstruktur vorstellen, die eine Approximation der
optimalen Congestion erlaubt. Für weitere Einzelheiten sei der Leser auf [MSVG02] verwiesen.
Hierarchischer Schichtengraph
Der hierarchische Schichtengraph dient der Congestion-Approximation
mit relativer Güte . Er ¨ahnelt einer Einteilung in verschiedene Cluster (Clustering)
und besitzt
zerlegt:
eine hierarchische Struktur. Die Knotenmenge wird in unterschiedliche Schichten
Die
nur einen Knoten.
unterste Schicht
enthält alle Knoten, d.h.
, und
die
oberste
Schicht
Zwischen den Schichten gibt es folgende Hierarchie:
. Die
Einstufung der Knoten in die Schichten erfolgt über die Knotenabstände. In jeder Schicht werden zwei
Eigenschaften gefordert:
1.
2.
2.
3. (kürzester Abstand)
(Reichweiten der Schichten)
(minimale Schichtdistanz)
(Anbindung zur nächst tieferen Schicht)
Für die Konstruktion verwenden wir zwei Parameter
Kantenmenge wie folgt definieren:
1.
,
über die wir die Schichten und
D.h. kurze Kanten sind in unteren Schichten zu finden, denn die Kantenlängen nehmen von Schicht
zu Schicht zu. Die Anzahl der Schichten wächst linear mit der Diversität einer Punktmenge. Die Idee, die
hinter dieser Konstruktion steht, ist vergleichbar mit einer Strassenkarte: Wenn jemand von München nach
Berlin möchte, so gibt es zwei Hauptwege: Die kürzere Strecke mit wenigen Zwischenstationen (Hops)
über die Autobahn, die verstopft sein kann (hohe Congestion), oder die zeitlich längere Strecke durch viele
kleine Städte und Dörfer über die Landstraßen, die frei sind.
66
TradeOffs
In diesem Abschnitt stellen wir uns die Frage, ob wir mehr als einen Parameter gleichzeitig optimieren
können. Dazu schauen wir uns drei TradeOffs an: Energie und Dilation, Congestion und Dilation und
Congestion und Energie.
Theorem 21 Seien eine Menge
auf einer
mit Durchmesser (vgl. Bild
Linie
und
für alle und #
gegeben.
5.10) und das Routingproblem mit Für jedes beliebige Wegesystem mit Einheitsenergie , Flussenergie und Dilation gilt:
die Kanten,
die auf dem Weg von nach
benutzt
Beweis: Seien werden. Zur Optimierung
der Einheitsenergie müssen wir
minimieren. Es gilt:
. Wir
nehmen einen MST
. Das optimale
und erhalten das optimale Netzwerk für Einheitsenergie mit Netzwerk
für Dilation ist gegeben durch die direkte Verbindung zwischen und mit Energiekosten
. Den Beweis im Flussenergiemodell führen wir analog mit einer Ausnahme: das optimale Netzwerk im
Flussenergie-Modell ist gegeben durch einen Teilgraph des Gabriel-Graphen.
(
( Abbildung 5.10: Die Linie im TradeOff zwischen Dilation und Energie
Für den TradeOff zwischen Energie und Dilation haben wir ein Netzwerk auf einer Linie betrachtet.
Jetzt betrachten wir eine Knotenmenge auf einem Gitter um eine untere Schranke für das Verhältnis zwischen Congestion und Dilation anzugeben.
Abbildung 5.11: Das Gitter im TradeOff zwischen Congestion und Dilation
auf einem Gitter (vgl. Bild 5.11) und das Rou
für alle gegeben. Für jedes beliebige Wegesystem mit
Theorem 22 Seien eine Menge
tingproblem mit
Congestion und Dilation gilt:
Auf den exakten Beweis verzichten wir an dieser Stelle. Für den interessierten Leser sei auf [MSVG02]
verwiesen. Die beste Wahl für Congestion ist, die Knotenmenge,
die als Gitter angeordnet ist, auch als
Gitter zu verbinden. Dann entsteht eine Congestion von , und die Dilation beträgt . Zur
Optimierung der Dilation bietet sich eine Baumkonstruktion an, worauf wir hier nur hinweisen möchten.
Damit ist es möglich, ein Wegesystem mit Congestion und Dilation anzugeben. Den
TradeOff zwischen Congestion und Energie nennen wir auch Unvereinbarkeit. Der Grund dafür ist, dass es
Netzwerke gibt, die entweder Congestion oder Energie optimieren, und dabei den nicht optimierten Wert
um einen polynomiellen Faktor weit entfernt von einer optimalen Lösung belassen.
67
,
,
Theorem
23 Sei eine Menge
auf einem Hufeisen (in U“-Form) der Länge so gegeben,
”
, und die Knoten dass
mit
und
seien auf zwei parallelen Linien (vgl. Bild 5.12). Die restlichen
Knoten
aus
seien gleichmäßig auf den Linien zwischen den Knoten ,
für und
platziert. Zusätzlich sei das Routingproblem
gegeben mit
für alle . Für jedes beliebige Wegesystem mit Congestion , Einheitsenergie und Flussenergie
gilt:
oder
oder
, und bezeichnen dabei jeweils die optimalen Werte für Congestion, Einheitsenergie und
Flussenergie.
Beweis: Das optimale Netzwerk im Einheitsenergiemodell ist durch den MST gegeben, d.h. die Kanten,
die entstehen, haben die Form eines Hufeisens. Die Anzahl der Interferenzen ist konstant, allerdings gehen
dann alle
beträgt. Die Einheitsenergie ist
Pakete über eine Kante, so dass die Congestion . Um die Congestion zu optimieren werden nur die Kanten für aufgebaut. Wir erhalten
Congestion
,
da
die
Anzahl
der
Interferenzen
wieder
konstant
ist, und Einheitsenergie
. Für das Flussenergiemodell funktioniert der Beweis
analog.
Abbildung 5.12: Das Hufeisen im TradeOff zwischen Congestion und Energie
5.2.2 Topologieaufbau im Sektorenmodell
13.Vorlesung
In dem letzten Abschnitt haben wir uns mit der Rundfunkkommunikation beschäftigt. Hier werden wir un22.01.2003
ser Modell für die gerichtete Kommunikation erweitern. Zur Motivation sei die Datenübertragung mittels
Richtfunk oder Infrarot erwähnt. Jeder Manet-Teilnehmer kann nun in verschiedene Sektoren parallel
senden und empfangen. Die Reichweite kann in jedem Sektor für die Übertragung einer Nachricht individuell eingestellt werden. Bei der Reichweitenanpassung liegt die Idee nahe, pro Knoten jeweils eine
Verbindung zu dem nächsten Nachbarn aufzubauen. Im Rundfunkmodell bzw. in dem Fall
haben wir
das Problem des Zusammenhangs bereits besprochen. Nun wollen wir den Ansatz untersuchen, in jedem
der Sektoren den nächsten Nachbarn anzubinden. Es stellt sich die Frage, wie viele Sektoren sind für
die Garantie eines zusammenhängenden Netzwerkes notwendig? Sei
und
. Per Induktion
nach dem Knotenabstand zweier beliebiger Knoten können wir zeigen, dass der Sektorengraph
, in dem jeder Knoten eine gerichtete Kante in jedem seiner Sektoren zu einem nächsten
Nachbarn aufbaut, stark zusammenhängend ist. Wir nutzen dabei die Eigenschaft aus, dass der nächste
Nachbar in einem Sektor echt näher an dem Zielknoten liegt als der Ausgangsknoten. Hier ist zu erkennen,
warum der Beweis für
nicht funktioniert. Das Problem das Zusammenhangs haben wir damit gelöst.
Wir wollen aber bessere Resultate zeigen. Wir fragen uns, wie lang kann so ein Weg werden? Um zu zeigen, dass wir Wege finden können, die höchstens konstant mal so lang sind wie der direkte euklidische
Abstand zwischen Quell- und Zielknoten, führen wir zunächst einige Begriffe ein.
-
-
-
' -
68
-
Definition 15 ( -Spanner) Sei
mit
ein Graph.
-Spanner, falls f ür alle
ist ein
existiert mit
für eine Konstante
ein Weg
.
die euklidische Distanz
zwischen und und
Hierbei ist
die euklidische Länge des Weges . Der konstante Faktor wird auch Stretchfaktor oder Dehnungsfaktor
genannt.
(
mit ein Graph. ist ein weak -Spanner,
Definition 16 (weak -Spanner) Sei
falls
existiert, der den Kreis
für alle ein
um
mit
dem
Radius
Weg
für eine Konstante
nicht verlässt. D.h. für alle Knoten auf gilt
.
Es stellt sich die Frage, wie hängen Spanner und weak Spanner zusammen?
Theorem 24 Sei
ein -Spanner, dann ist ein weak -Spanner.
beliebig. Da ein -Spanner ist, existiert ein Weg
. Die
Beweis: Seien
mit
durch eine Wegkonstruktion zu
Länge des Weges erlaubt es also nicht, den Kreis um mit Radius
verlassen.
Wie wir gesehen haben, ist jeder -Spanner auch ein weak -Spanner. Die weak Spanner-Eigenschaft ist
also eine schwächere Grapheigenschaft. Ist ein Spanner denn wirklich weniger? In Bild 5.13 sind die ersten
5 Iterationen der Kochschen Schneeflockenkurve dargestellt. Eine Kante wird in jeder Iteration durch vier
länger.
neue Kanten ersetzt. Auf diese Art und Weise wird der Weg in jedem Schritt um den Faktor
Man kann aber beweisen, dass die Fläche, die diese Konstuktion einnimmt, durch einen konstanten Faktor
beschränkt ist. Konstruieren wir daraus einen Graphen
, so können wir einen Weg zwischen
zwei Knoten angeben,
der
in
seiner
Länge
unbeschränkt
ist.
Trotzdem
verläuft
der ganze Weg in einem
Kreis um mit Radius für eine Konstante
. ist also ein weak -Spanner, aber kein Spanner für irgendein . Ein weak Spanner ist also wirklich mehr (schwächer in den Bedingungen)
als ein Spanner.
Abbildung 5.13: Die ersten 5 Iterationen der Kochschen Schneeflockenkurve
69
mit
ein Graph. ,
und Definition 17 (Power-Spanner) Sei
falls für alle ein Weg
&
(
( ( & (
Wir
nennen einen Power-Spanner, falls für alle -Power-Spanner ist.
ist ein
-Power-Spanner,
existiert mit
eine Konstante
existiert, für die
ein
Falls ein Graph
ein
-Power-Spanner ist, so gilt nach Definition, dass eine konstante
Approximation eines bzgl. Energie optimalen Netzwerkes liefert. Im folgenden werden weitere Zusammenhänge erläutert.
Theorem 25 Sei
ein -Spanner, dann ist ein
-Power-Spanner.
beliebig und sei der Weg von nach mit minimalen Energiekosten, gegeben
Beweis: Seien
( . Da ein -Spanner ist, existiert für jede Kante ein Weg in
durch mit . Sei nun der Weg von nach , der durch Hintereinanderausführen der für
entsteht, dann:
& (
& (
- ' Definition 18 (Yao-Graph) Seien
und
gegeben. Die Fläche um einen Knoten
unterteilen wir in gleichgroße Sektoren mit Sektorwinkel
. In jedem Sektor
von einem Knoten
erzeugen wir eine gerichtete Kante zu dem n ächsten Nachbarn, falls vorhanden.
der Sektor Sei in dem der Knoten liegt, dann erhalten wir:
-
'
Wir
nennen den Sektorengraphen ' ' Yao-Graph von -Graph.
mit
-
Sektoren. Er ist auch bekannt als
- -
' ' "-
-
'
die lokal aufgebaut
Jeder Knoten im Yao-Graphen unterhält höchstens viele ausgehende Kanten,
werden können. Sei
der Yao-Graph mit Sektoren, dann gilt also: . Die
Anzahl der Kanten ist linear in der Anzahl der Knoten. Daher gehört der Yao-Graph zu den ausgedünnten
Graphen.
Theorem 26 Der Yao-Graph
' ' -
mit Sektoren ist ein -Spanner für
-
mit
.
Beweis: Seien
beliebig. Nach Definition des Yao-Graphen existiert in jedem nicht leeren Sektor
eines Knotens eine gerichtete Kante zu einem anderen Knoten. Wir betrachten nun den Sektor von in
dem liegt. Entweder ist der nächste Nachbar, dann ist der gesuchte Weg gefunden, oder es existiert ein
Knoten , der näher an liegt als (da
). Der Weg von nach geht im ersten Schritt über . Im
zweiten Schritt suchen wir einen Weg von
nach und gehen analog vor. Da der auf diese Art und Weise
entstehende Weg immer kürzer wird, ist er auch endlich. So erhalten wir nacheinander
. Wir
zeigen nun, dass sich aber auch die Länge dieses Weges beschränken lässt. Zunächst fragen wir dazu nach
der maximalen Verlängerung des Weges
in
einem
Schritt.
Der Leser
mache
sich
klar, dass für
alle
im gleichen Sektor von
wie
mit
gilt
. Sei nun
der gefundene Weg von nach . Dann gilt
-
&
(
&#
(
&#
(
70
' - ' Wir beschränken uns hier auf dieses Resultat für den Yao-Graphen, denn für
den, dass der Yao-Graph ein weak
-
-Spanner ist mit
-
"- kann gezeigt wer-
:- ein weak -Spanner mit . Die Beweise dazu können in [FLZ98, FMS97]
und für
nachgelesen werden. Da der Yao-Graph ein -Spanner ist, ist er nach Satz 25 auch ein
-PowerSpanner. Durch genaues Hinschauen auf den Nachweis der Spanner-Eigenschaft des Yao-Graphen sollte
der Leser erkennen, dass sich der Power-Stretchfaktor auf verbessern lässt (Übungsaufgabe).
Wie wir sehen konnten, besitzt der Yao-Graph interessante Grapheigenschaften. Ist es sinnvoll ihn
als Kommunikationsnetzwerk einzusetzen? Um z.B. die Anzahl der Interferenzen untersuchen zu können,
benötigen wir eine neue Definition für eine Interferenz.
interferiert
mit einer Kante sowie .
Definition 19 (gerichtete
Interferenz)
Eine Kante und
genau dann, wenn
$
Der Yao-Graph zeichnet sich dadurch aus, dass der Ausgangsgrad beschränkt ist. Der Eingangsgrad
dagegen kann bei Knoten
werden. Dies führt dazu, den Yao-Graphen weiter auszudünnen.
' ' ' '
' und Definition 21 (SymmY-Graph) Sei ' ' ' ist gegeben durch
'
Definition 20 (SparsY-Graph) Sei
ist gegeben durch
' der Yao-Graph mit
-
Sektoren. Der SparsY-Graph
' mit ' der Yao-Graph mit - Sektoren. Der SymmY-Graph
' -
Beide Erweiterungen zeichnen sich dadurch aus, dass auch der Eingangsgrad eines Knotens durch
beschränkt ist. Der SymmY-Graph besteht zusätzlich ausschließlich aus symmetrischen Kanten, d.h. er
eignet sich besonders für eine bidirektionale Kommunikation, denn es entstehen auch dann theoretisch
keine Interferenzen. Nach der Definition der drei Graphen gilt SymmY SparsY Yao
.
Abbildung 5.14: Yao, SparsY und SymmY mit 8 festen Sektoren für 100 zufällig platzierte Knoten
Theorem
27 Der SparsY-Graph
.
'
' mit
-
Sektoren ist ein weak -Spanner für
mit
Beweis: Seien beliebig. Die Sektoren seien o.B.d.A. im Uhrzeigersinn durchnummeriert. Wir
analysieren eine worst-case Konstruktion für den Weg von nach . Die
direkte
Kante von nach verhinden wir, indem wir einen Knoten in platzieren mit
. Wir legen so, dass
71
der Kreis um mit Radius
durch den Kreis um mit Radius
maximal vergrößert wird (vgl.
Nachweis der Spanner-Eigenschaft des Yao-Graphen). Die Kante zu verhinden
wir, indem wir in dem
benachbarten
Sektor
einen
Knoten
platzieren
mit
und
.
Da
existiert in nach Defintion des SparsY-Graphen die Kante
und nicht die
. Um die Kante
zu verhinden, gehen wir analog vor wie bisher. Auf diese Art und
Kante
. Wir
Weise platzieren wir
und
erhalten
die Kanten
für und zuletzt
. Für alle
gilt
bzw.
. Für die Wege von nach
wiederholen wir die Konstruktion rekursiv. Die Kreise in nachfolgenden Interationen, in denen wir
weitere Knoten platzieren, werden in jedem Schritt um den Faktor
echt kleiner, wie wir bereits
beim Yao-Graphen gesehen haben. D.h. der gesamte konstruierte Weg verläuft in einem Kreis mit Radius
' '
&#
'
-2 ' (
- ' Die Analyse der Länge des Weges, der in dem letzten Beweis konstruiert wurde, führt leider nicht zu
dem Nachweis der Spanner-Eigenschaft des SparsY-Graphen. Der Weg ist zu lang, was aber auch kein
Gegenbeispiel
für die Spanner-Eigenschaft
ist. Es ist also eine offene Frage, ob der SparsY-Graph ein
-Spanner für eine Konstante
ist. Die Analyse der Energiekosten dieses Weges hilft, die PowerSpanner-Eigenschaft des SparsY-Graphen nachzuweisen.
'
'
' .
Theorem
28 Der SparsY-Graph
mit
und -
mit
-Power-Spanner für -
Sektoren ist ein
-
Beweis: Seien beliebig und sei der in Satz 27 konstruierte worst-case Weg von nach . Wenn
wir annehmen, dass wir die Konstruktion in allen Sektoren rekursiv durchführen können, so betragen die
Energiekosten dieses Weges:
& # E- & # E- (
(
, d.h. für - unter der Annahme, dass ' '
Diese Reihe konvergiert für - ' für - .
.
Theorem 29 Der SymmY-Graph ' ' mit - Sektoren ist stark zusammenhängend für Beweis: Wir beweisen die Behauptung
per Induktion nach dem Knotenabstand. Die Knoten mit dem
. Nach Definition
' . Nun wählen wir
kürzesten Abstand seien des SparsY-Graphen gilt zwei beliebige
es existiert eine Kante von nach , oder es existiert ein Knoten
Knoten
und . Entweder
mit . Da - gilt zusätzlich . Per Induktion existiert also
ein Weg von nach und von nach .
Für den Symmy-Graphen haben wir bisher nur bewiesen, dass er ein zusammenhängender Graph ist.
Das nächste Resultat zeigt, dass wir die Spanner, weak Spanner und die Power-Spanner Eigenschaften
aufgrund der Kantenausdünnung verlieren.
' ' mit - Sektoren
ist weder weak -Spanner und noch .
und Theorem 30 Der SymmY-Graph
Power-Spanner für beliebige Konstanten
'
' ' '
Beweis:
Sei
der SymmY-Graph von mit Sektoren.
Wir zeigen, dass kein weak
-Spanner ist für jede Konstante
. Angenommen, ist ein weak
mit
. Für -Spanner
konstruieren
wir
nun
einen
Weg,
der
den
Kreis
um
mit
Radius
verlässt.
Wir
benutzen
dabei
Knoten
und platzieren diese so, dass eine Kante
( hat als nächsten Nachbarn in einem Sektor, aber
verhindert wird durch die Kante wird widerum verhindert durch hat als nächsten Nachbarn, etc.). Eine Kante 72
(analog). Auf diese Art und Weise erhalten wir einen Turm, wobei nur die Verbindung zwischen den beiden
wird also aufgebaut.
obersten Knoten entsteht. Die Kante
Man mache sich klar, dass wir die
so legen können, dass immer gilt
Knoten für und
ein beliebig kleines
. Nun wählen wir
mit
und erhalten den gesuchten
.
Widerspruch:
(
Topologie
Yao
SparsY
SymmY
Anzahl
gerichteter
Interferenzen
1 (unger.!)
Spanner
Ja
weak und Power
Nein, aber
zusammenhängend
' EnergieApprox.
CongestionApprox.
-
,,
-
Tabelle 5.1: Graph- und Kommunikationseigenschaften der Sektorengraphen
14.Vorlesung
Aufbau und Erhaltung der Sektorengraphen In dem letzten Abschnitt haben wir verschiedene Sek- 29.01.2003
torengraphen anhand ihrer Graph- und Kommunikationseigenschaften untersucht (vgl. Tabelle 5.1). Jetzt
geben wir lokale, verteilte Algorithmen an, die die Graphen aufbauen und unter gegebener Dynamik erhalten. Wir nehmen an, dass Netzwerkteilnehmer das Netzwerk verlassen oder plötzlich hinzukommen.
Die Informationsübertragung unterteilen wir in zwei Kategorien: Routingmodus und Kontrollmodus. In
dem Routingmodus versuchen wir das Routingproblem zu lösen und Datenpakete durch das Netzwerk zu
schicken. Bei Ausfall oder Hinzukommen eines Knotens kann in den Kontrollmodus geschaltet werden,
um neue Verbindungen aufzubauen oder das Netzwerk zu reparieren. Hierfür verwenden wir ein kurzes,
spezielles Interferenzsignal, das an alle Knoten im Umkreis verschickt werden kann. Sobald z.B. ein Knoten erkennt, dass einer seiner Nachbarknoten nicht mehr zu erreichen ist (er sendet nicht mehr), schaltet
er sich und seine Nachbarschaft durch Senden des Interferenzsignals in den Kontrollmodus und erneuert seine Verbindungen. Wie
neu aufgebaut werden? Sei
viele Kanten müssen hier im schlimmsten Fall
seien parallel zu mit und platziert, so dass zwischen
und
eine
symmetrische
Kante
existiert.
Falls
nun
ein
Knoten
in
auftaucht, so müssen alle Kanten abgebaut und mit viele zu
neu aufgebaut werden. Das gleiche Szenario ist konstruierbar, wenn der Knoten bereits Netzwerkteilnehmer ist und plötzlich das Netzwerk verlässt.
( Theorem 31 Sei
Graph erfordert
(
. Das Verschwinden/Erscheinen eines Knotens im Yao-, SparsY- oder SymmY
Kantenaktualisierungen.
Sei nun die Anzahl der in einem Aktualisierungsprozess eingebundenen Kanten und
der zur Verfügung stehenden Sendereichweiten.
, ,
die Anzahl
Theorem 32 Sei
. Das Verschwinden/Erscheinen eines Knotens im Yao-, SparsY- oder SymmY
Graph kostet im wesentlichen Zeit .
Beweis: Pro involvierte Kante führen wir folgenden Algorithmus durch. In der ersten Phase beginnen wir
mit kleinster Sendereichweite in dem entsprechenden Sektor nach einem Nachbarn zu suchen. Solange
kein Knoten antwortet, verdoppeln wir die Reichweite. Der Empfang einer Interferenz kann hier als Information genutzt werden: mindestens ein Nachbar wurde gefunden. Für das Verdoppeln sind höchstens
Schritte erforderlich. Das Auflösen der Interferenzen benötigt Zeit, wenn wir ein ex ponentielles BackOff-Protokoll verwenden. In der zweiten Phase benutzen wir die binäre Suche um die
Sendereichweite beinahe exakt auf den nächsten Nachbarn einzustellen. Hierfür benötigen wir nochmals
Schritte und Schritt für Interferenzauflösungen während der Suche. Insgesamt erhalten
.
wir also , ,
,
,
, ,
73
Weitere geometrische Graphstrukturen Wir haben bereits gesehen,
GG
dass der Gabriel-Graph
optimal ist für Flussenergie. Man kann zeigen, dass GG
ein weak -Spanner ist für ein
, allerdings
ist er kein Spanner. Als weitere Graphen seien in diesem Zusammenhang der relative Nachbarschaftsgraph
RNG
und die Delaunay-Triangulation DT
genannt.
Definition
22 (Relativer
Nachbarschaftsgraph)
Sei
. Der Graph mit Definition 23 (Delaunay-Triangulation) Sei eine Menge von Knoten und VD
ihr Voronoi verbunden, wenn ihre Voronoi-Regionen
Diagramm. Zwei Punkte werden durch eine Kante
VR
und VR an eine gemeinsame Voronoi-Kante in VD
angrenzen. Der dadurch entsteder Punktmenge genannt.
hende Graph wird Delaunay-Triangulation DT
Der Leser mache sich als Übungsaufgabe folgenden Zusammenhang klar:
MST
RNG
GG
DT
Routing mit Ortsinformationen im Yao-Graph An dieser Stelle weichen wir von der ersten harten Annahme ab, dass den Knoten keine Ortsinformationen bekannt sind. Wir nehmen an, dass jeder Knoten seine
Position und die Positionen der Zielknoten im Netzwerk kennt. Dies ist ein sehr theoretisches Modell, da
sich die Zielknoten in der Realität bewegen. Die laufenden Änderungen der Zielpositionen müssen also
genauso im Netzwerk verbreitet werden wie Routinginformationen. In der Praxis wird das Problem durch
dieses neue Modell nicht einfacher. Theoretisch wird es einfacher, denn wir können den konstruktiven Beweis zum Nachweis der Spannereigenschaft des Yao-Graphen nutzen um ein einfaches Routingprotokoll
anzugeben. Angenommen, ein Knoten möchte eine Information an einen anderen Knoten senden. Im
ersten Fall ist nächster Nachbar in einem Sektor, dann sind wir fertig. Im anderen Fall gibt es in dem
Sektor, in dem liegt, einen nächsten Nachbarn . Wir leiten die Information über weiter und sagen:
wir schicken die Information in den Zielsektor. Wie wir bereits wissen, ist dieser Weg endlich und die
euklidische Weglänge sogar bis auf einen konstanten Faktor durch den euklidischen Abstand zwischen
und beschränkt. Zu den Vorteilen dieses -Routingverfahrens gehört, dass keine Routingtabelle notwendig ist und die Routingentscheidungen lokal getroffen werden können. Zu den Nachteilen gehört, dass wir
Ortsinformationen benötigen (z.B. GPS), und dass sich die Zielknoten nicht bewegen dürfen. Ausserdem
funktioniert das -Routing nicht im SparsY- und auch nicht im SymmY-Graph (der Leser mache sich
dies klar!). Ein anderer Nachteil des Yao-Graphen ist die Dilation. Die euklidische Weglänge ist zwar beschränkt, aber die Anzahl der Hops kann beliebig schlecht werden: . Wir werden uns nun mit einer
Erweiterung des Yao-Graphen beschäftigen, die die Anzahl der Hops verringert.
- ' und
gegeben. Die Fläche um einen
Definition 24 (Hierarchischer Sektorengraph) Seien .
Knoten
unterteilen wir in gleichgroße
Sektoren
mit Sektorwinkel
Jeden Sektor teilen wir in Zellen ein. Dabei
geht
von
Radius
bis
für
und von Radius bis für . In jeder Zelle
erzeugen
wir
eine
Kante
zu
dem
n
ächsten
in der der Knoten liegt, dann erhalten wir:
die Zelle Nachbarn, falls vorhanden. Sei -
'
:-
' ' heisst hierarchischer Yao-Graph (H-Yao).
' , dann: . Die maximale Anzahl
Sei der Nachbarn in einem Sektor ist also beschränkt durch die Diversität. Für die Anzahl der Kanten heisst
das: ' E - . Das -Routing ändern wir nun so ab, dass wir die Information nicht nur in
Der Graph
den Zielsektor weiterleiten, sondern in die entsprechende Zielzelle. D.h. wir schicken die Information an
den Knoten, der in der Zelle nächster Nachbar ist, in der auch der Zielknoten liegt. Da wir die Menge
der Kanten nur vergrössern, bleibt die Spannereigenschaft des Yao-Graphen erhalten. Man kann aber mehr
zeigen, denn die Spannereigenschaft bleibt auch erhalten, wenn wir die durch das hierarchische -Routing
entstehenden Wege betrachten. Die Länge des worst-case Weges kann nicht länger werden als bereits für
den Yao-Graphen nachgewiesen. Wie ¨andert sich die Dilation?
74
' ' Theorem 33 Seien
und
gegeben durch .
gegeben, dann ist die Dilation im hierarchischen Yao-Graphen
beliebig. Wir versuchen den Weg von nach über möglichst viele ZwischenkBeweis: Seien noten zu konstruieren. In jedem Schritt platzieren wir dazu in der Zielzelle einen Knoten als nächsten
Nachbarn, damit wir nicht direkt erreichen. Im ersten Schritt sei der nächste Nachbar
in der
Zielzel
le der Knoten . Als Übung sollte sich der Leser klar machen, dass das Verhältnis
maximal wird, wenn und auf den Sektorgrenzen in der Zelle liegen. Wir
davon
gehen daher
aus, dass
und auf den Sektorgrenzen liegen. Wenn wir nun eine konstante
mit
finden können, dann kommen wir dem Zielknoten in jedem Schritt um einen konstanten Faktor echt näher
und können die Anzahl der Zwischenknoten beschränken. Wir betrachen nun
und wählen
. Sei
, dann gilt nach dem Cosinussatz
mit . Es folgt
*, *), $
Wenn wir nun als Funktion in Abhängigkeit von betrachten, so stellen wir fest, dass zwischen und ein globales Minimum existiert. D.h. wird maximal an den Grenzen. Wir erhalten also
, mit , * , In
Distanz
von dem nächsten Nachbarn zu um den Faktor
jedem Schritt wird also die verbleibende
verkleinert. Nach höchstens Schritten ist der Abstand zum Zielknoten
echt kleiner als 1, d.h. der Zielknoten ist erreicht.
75
76
Kapitel 6
Call-Control in zellularen Netzwerken
15.Vorlesung
Wir kehren in diesem Kapitel zu dem
zellularen Netzwerkmodell zurück. Wir betrachten also eine Menge 05.02.2003
von Feststationen, die jeweils die Frequenzen verwenden können. Zwischen benachbarten Feststationen
können Interferenzen auftreten. Deswegen ist es nicht möglich, dass zwei benachbarte Feststationen zur
selben Zeit die selbe Frequenz verwenden.
Um jetzt den zur Verfügung stehenden Frequenzraum dynamisch an die Teilnehmer zu verteilen, teilen
wir jeder Rufanforderung eines mobilen Teilnehmers eine Frequenz einer Feststation zu. Diese kann der
Teilnehmer für den angemeldeten Zeitraum verwenden. Damit steht diese Frequenz sowohl den Teilnehmern dieser Basistation als auch der benachbarten (inteferierenden) Station nicht mehr zur Verfügung.
Bei dieser dynamischen Problemstellung ergeben sich für den Netzbetreiber folgende Alternativen. Er
kann Rufanforderungen annehmen oder auch abweisen (wenn zum Beispiel dadurch lukrativere Rufanforderungen verhindert werden). Daneben muss der Netzbetreiber auch dynamisch die geeignete Frequenz
der Mobilstation zuweisen. Der Netzbetreiber kann natürlich nicht voraussagen, welche Rufanforderungen
an welchen Basisstation in Zukunft eintreffen werden. Trotzdem muss er einen Algorithmus wählen, dass
das Betriebsergebnis seines Netzwerks optimiert.
Wir werden uns in diesem Kapitel dieser Problemstellung der sogenannten Call Control widmen und
daran beispielhaft zeigen, wie man solche Online-Algorithmen entwickeln und analysieren kann. Diese
Untersuchungen wurden von Grammati E. Pantziou, George P. Pentaris und Paul G. Spirakis in [PPS97,
PPS02] veröffentlicht.
6.1 Das Modell
Wir betrachten
von Feststationen. Die Frequenzen bezeichnen wir
also eine Menge
. Zwischen verschiedenen Frequenzen treten keine Interferenzen auf. Die Interferenzen gleimit
cher Frequenzen werden duch den ungerichteten Interferenzgraph
beschrieben. Ist die Kante
, so bedeutet diese, dass entweder in oder in eine Frequenz einem Teilnehmer zugewiesen
werden kann.
(em requests). Mit einer
6.1.1 Requests
Die Teilnehmer selbst modellieren wir nur über ihre Rufanforderungen
Rufanforderung übermittelt ein mobiler Teilnehmer folgende Informationen:
Die Interpretation ist wie folgt.
beschreibt die nächste Feststation des mobilen Teilnehmers. Nur an dieser wird der Ruf
bedient (wenn überhaupt).
77
beschreibt den Anfangszeitpunkt des Rufs. Zu diesem Zeitpunkt trifft auch die Rufanforderung an. Damit muss der Netzbetzreiber sich unmittelbar entscheiden, wartet er, lehnt er den Ruf
dadurch ab.
beschreibt die Rufdauer. Ist legt der Teilnehmer nicht mehr auf. Es gehört
zu den Spielregeln, dass ein Ruf bis zum Ende bedient wird, auch wenn neue lukrativere Rufanforderungen in der Zwischenzeit eintreffen1.
beschreibt den Preis der Verbindung. Nimmt der Netzbetreiber den Ruf an, so kann der diesen
Betrag sofort einstreichen. Natürlich ist der Netzbetreiber gewillt diesen Betrag zu maximieren.
6.1.2 Das Spiel
In einer zentralen Stelle treffen nun also die Folge der Rufanforderungen ein, sortiert
nach
den Zeitpunkten . Dem Netzbetreiber ist der Interferenzgraph bekannt und zu Beginn sind noch alle
Frequenzen an allen Mobilstationen verfügbar. Für bis zum Ende der Folge , erhält der
Betreiber den Request und muss ohne Kenntnis späterer Requests folgende Entscheidung treffen:
wird bedient. Diese Entscheidung ist nur möglich, wenn es eine Frequenz
1. Der Request
gibt, die sowohl an der Feststation als auch an allen benachbarten Feststationen mit
zum Zeitpunkt noch frei ist.
an und allen benachbarten Feststationen
belegt
und
.
Man wählt nun solch eine freie Frequenz
diese Frequenz für den Zeitraum
Dann erhält man die Belohnung .
2. Der Request wird abgelehnt. Diese Entscheidung ist zwingend, wenn gerade keine Frequenz
verfügbar ist. Solche eine
Entscheidung kann aber auch strategisch getroffen werden, wenn zum
Beispiel die Belohnung zu gering ist gemessen oder die Netzlage angespannt ist.
Ein einfaches Beispiel findet sich in Abbildung 6.1.
Abbildung 6.1: Bedienen und Ablehnung von Rufanfoderungen
Wir erkennen, dass in diesem dynamischen Problem das Färbungsproblem schon enthalten ist. Hierbei
betrachte man den Fall, dass jeder Knoten zeitgleich
eine Anfrage erhält. Alle Anfragen können dann nur,
genau dann bedient werden, wenn der Graph -färbbar ist.
Neben dieser hinlänglich diskutierten kombinatorischen Schwierigkeit kommt aber auch ein weiterer,
dynamisches Problem hinzu.
1 Sonst
bekommt der Netzbetreiber Probleme mit der Aufsichtsbehörde
78
6.2 Online-Algorithmen und das Kompetitive Verh¨
altnis
Hierzu betrachten wir nur eine Feststation und eine Frequenz, d.h.
folge
und die folgende Anforderungs-
Wir erinnern uns, dass der erste Parameter bedeutet, dass immer nur Feststation angerufen wird. Der
zweite beschreibt den Zeitpunkt der Rufanforderung. Also treffen zwei Anforderungen zum Zeitpunkt
ein, dann jeweils eine zum Zeitpunkt
. Der nächste Parameter beschreibt die Zeitdauer und der
letzte die Belohnung.
Man überlegt sich schnell, dass es am lukrativsten ist, die erste Anforderung abzulehnen und alle anderen hintereinander zu bedienen. Damit erhält man die Belohnung .
Nur muss die Entscheidung zum Zeitpunkt geschehen, diese Strategie zu treffen (ohne Kenntnis des
Rests der Folge). Treffen aber nur die beiden ersten Rufanforderungen ein, so währe es besser die höher
dotierte mit Belohnung zu akzeptieren und auf die andere zu verzichten. Damit wäre zwar der Kanal
für zehn Schritte blockiert. Das stellt dann aber kein Problem dar, da sonst keine Anforderungen folgen
würden.
Der Zwang uns am Anfang einer Folge zu entscheiden stellt uns also vor ein unauflösbares Dilemma.
6.2.1 Das Leihskiproblem
Ein ähnliches Online-problem ist das sogenannte Leihskiproblem. Als Skianfänger steht man vor der Entscheidung, ob man sich gleich Skier zum Pris von 100 Taler kaufen soll, oder ob man sich diese für 10
Taler pro Tag leihen sollte.
Nun weiss man nicht, ob man sich gleich am ersten Tag die Beine bricht (oder der ganze Schnee
wegschmilzt) oder ob man eine ganze Saison jetzt jeden Tag Ski fahren möchte. Die optimale Strategie
wäre jeweils die folgende.
Der Schnee bleibt von Oktober bis April liegen (und wir finden Gefallen am Skifahren). Dann sollte
man am besten gleich am ersten Tag Skier kaufen für 100 Taler. Würde man jeden Tag Skier leihen,
kostete das mehr als 1000 Taler.
Der Schnee schmilzt am nächsten Tag. Dann hätte man besser nur einmal leihen sollen für 10 Taler.
Ersparnis gegenüber kaufen: 90 Taler.
Wie kann man diesen Widerspruch auflösen? Nun, man könnte ja zuerst Skier leihen und dann kaufen!
Wir betrachten also folgenden Online-Algorithmus. An den ersten 10 Tagen leihen wir Skier zu je 10
Taler. Dann kaufen wir die Skier am 11. Tag. Diese Strategie ist an den ersten 10 Tagen tatsächlich optimal.
Ab den 11. Tag zahlen wir drauf. Da wir dann 200 Taler ausgegeben haben. Optimal wären dann 100 Taler.
Damit sind wir einen Faktor 2 schlechter als die optimale Strategie.
Diese optimale Strategie, die erst hinterher bestimmbar wird, (aus dem Off), nennt man Offline-L ösung.
Das Verhältnis aus Ergebnis des Online-Algorithmus und Offline-Lösung wird kompetitives Verḧ
altnis
(competitive ratio) genannt. Unser Online-Algorithmus hat also ein kompetitives Verhältnis von 2.
6.2.2 Das kompetitive Verhältnis im Belohnungsmodell
Für eine Folge bezeichne die Summe aller Belohnungen, die Algorithmus für dir Rufanforderungsfolge erhält. Ferner sei OPT die Summe
aller Belohnungen bei optimaler Bedienung der Rufan
forderungen. Dann verhält sich Algorithmus -kompetitiv, falls für alle Folgen gilt:
OPT 79
Greedy-Algorithmus A
begin
for to do
if Frequenz in Knoten verfügbar then
Bediene Request mit einer beliebigen freien Frequenz
fi
od
end.
Abbildung 6.2: Greedy-Algorithmus A für das Call-Control-Problem
6.3 Flatrate ohne Auflegen
Um einen ersten Einblick in Online-Lösungsstrategien für das Call-Control-Problem zu erhalten betrachten
wir Folgen, die der Einschränkung von Einheitskosten, d.h.
, und ohne Auflegen, d.h. ,
genügen.
6.3.1 Der Greedy-Algorithmus
Hierfür untersuchen wir einfachen Greedy-Algorithmus, der in Abb. 6.2 dargestellt ist.
Tatsächlich haben wir diesen Algorithmus schon in Abb. 6.1 angewendet. Dort wurde Request abgelehnt. Als notwendiges
Kriterium zum Ablehnen einer Rufanforderung durch den Greedy-Algorithmus
ist die Existenz von Calls auf der 1-Nachbarschaft des angefordeten Knotens. Die 1-Nachbarschaft eines
Knoten bezeichnet die Menge aller direkten Nachbarn eines Knoten vereinigt mit dem Knoten selbst.
Diese Ablehnungsrelation können wir durch einen eigenen Ablehnungsgraph
darstellen.
Die Knoten dieses Graphes umfassen alle Rufanforderungen , die vom Greedy-Algorithmus angenommen werden oder Bestandteil der optimalen Offline-Lösung sind.
Dieser gerichtete Graph besteht aus den Quellknoten aller angenommen Rufanforderungen und
den Senkenknoten aller abgelehnten Knoten . Verhindert ein angenommener Ruf gemäß des GreedyAlgorithmus die Bedienung eines Rufs, so wird eine gerichtete Kante von
dem angenommen Ruf zum
abgelehnten eingefügt. D.h. falls ein akzeptierter Request
eine der Frequenzen eines abgelehnten
Requests blockiert,
ist
.
die Anzahl aller Rufanforderungen und bezeichne
die Anzahl aller akzeptierten
Sei nun
und
die Anzahl aller abgelehnten Requests.
Wir machen nun die folgenden Beobachtungen:
1. Der Eingrad in den abglehnten Knoten des Ablehnungsgraphen
der Frequenzen.
2. Der Ausgrad in den angenommenen Knoten ist beschränkt durch
le) Grad des Interferenzgraphen ist.
ist mindestens gleich der Anzahl
, wobei der (maxima-
Hierfür veranschaulichen wir uns, dass die abgelehnten Rufe im Ablehnungsgraph nach Definition
in der Offline-Lösung angenommen wurden. Für die beiden Knoten einer Kante stehen aber nur
Frequenzen zur Verteilung
an. Betrachten wir also die 1-Nachbarschaft eines Knoten
können
im besten Fall
Rufanforderungen bedient werden. Damit haben wir höchstens abgelehnte Rufe in der Nachbarschaft.
Theorem 34 Der Greedy-Algorithmus hat kompetitives Verhältnis
heitlicher Belohnung und unendlicher Dauer.
N
für Requestfolgen mit ein-
Beweis: Um die Performanz des Greedy-Algorithmus abzuschätzen, zählen
wir die Anzahl
ten des Ablehnungsgraphs . Es gilt, dass die Anzahl der Kanten
mindestens
80
der Kanbeträgt,
Dagegen ist aufgrund des Eingrades abgelehnter Rufanforderungen.
Also
gradbeschränkung nach oben beschränkt durch
. Damit gilt:
Wir setzen nun
und erhalten
Damit gilt
Rufanforderungen in den Ab , da
wirgenaualledieakzeptierten
Belohnung des Online-Algorithmus be-
Nun gilt für die optimale Lösung OPT lehnungsgraph eingefügt haben, während
schreibt.
Theorem 35 Der Greedy-Algorithmus hat mindestens kompetitives Verh ältnis
einheitlicher Belohnung und unendlicher Dauer.
wegen der Aus-
für Requestfolgen mit
Beweis: Hierfür betrachten wir einen Sterngraphen
wie in Abbildung 6.3 gezeigt mit
zentralen Knoten
und Grad
.Die Requestfolge besteht aus Requests
der
Form
und
Requests der
Form . auf jedem der anderen
Knoten.
Abbildung 6.3: Der Sterngraph als schlimmster Fall für den Greedy-Algorithmus für Call-Control
Der Greedy-Algorithmus würde nur die Requests der ersten Sorte bedienen können und Belohnung
erhalten.
Die optimale offline-Strategie bedient alle anderen Reqeusts und erhält die Belohnung
.
6.3.2 Oblivious Adversary
Der Einsatz von Zufallsexperimenten im Online-Algorithmus kann das kompetitive Verhältnis verbessern.
Er zwingt uns, den Begriff des kompetitiven Verhältnis zu verfeinern.
Nehmen wir einmal an, dass beim Leihskiproblem der Wettergott 2 die Entscheidungen des Skifahrers
beobachten und darauf reagieren. Dann kann er die Kosten maximieren, indem der Schnee am Tag des
Skikaufs schmilzt.
Ist das aber nicht der Fall, reden wir von einem oblivious adversary. Wir müssen zwar rechnen, dass
der Schnee an einem ungewünschten (schlimmstmöglichen) Tag schmilzt. Aber unsere Entscheidungsprozesse, die zum Kauf führen, bleiben dem Adversary verborgen. Hierzu ein Beispiel.
Wir leihen die Skier 4 Tage lang zum Preis von 10 Taler. Am 6. Tag werfen wir eine Münze. Fällt der
Taler auf Zahl, dann kaufen wir. Andernfalls mieten wir noch bis zum 9. Tag und kaufen am
10. Tag.
Bis zum 6. Tag ist dieser Algorithmus optimal. Am 6. Tag sind die erwarteten Kosten . Das kompetitive Verhältnis zum optimalen Wert 6 Tage lang mieten, also , ist dann .
Am 10. Tag sind die erwarteten Kosten
. Das Verhältnis zu den optimalen
.
Offline-Kosten von
ist damit nur
2 oder
die Bediener der Schnekanonen in Personalunion mit dem Skiverleiher
81
- Classify-and-Randomly-Select (CRS)
begin
Bestimme unabhängige Knotenmengen
Wähle gleichwahrscheinlich for to do
if und Frequenz in verfügbar then
Akzeptiere und bediene Request
else
Lehne Request ab
fi
od
end.
'
Abbildung 6.4: Classify-and-Randomly-Select (CRS) für das Call-Control-Problem
Eine detaillierte Analyse aller dieser Fälle zeigt, dass das kompetitive Verhältnis tatsächlich kleiner ist
als das jedes deterministischen Algorithmus. Im deterministischen Fall ist das kompetitive Verhältnis von
optimal (Kaufe am 10. Tag). Mit randomisierten Algorithmen kann man dagegen dieses Verhältnis
auf verbessern.3
Wir definieren daher das kompetitive Verhältnis gegenüber einem unbeirrbaren/vergesslichen Gegner (oblivious adversary), als das maximale Verhältnis über alle vom Online-Algorithmus unabhängigen
Folgen der erwarteten Belohnung des Online-Algorithmus zum optimalen Offline-Algorithmus.
6.3.3 Klassifizieren und Auswählen
Der Sterngraph aus dem letzten Beweis zeigt die Grenzen einer deterministischen Strategie auf. Es erscheint unvermeidbar sich auf den Deal einzulassen, zuerst den zentralen Knoten mit Aufgaben zu versorgen. Würde man darauf verzichten, könnte im schlimmsten Fall keine weitere Anforderung kommen.
Durch den geschickten Einsatz von Zufallsentscheidungen gelingt es, im Durchschnitt das kompetitive
Verhältnis auf den Faktor zwei zu senken. Hier stellen wir den CRS-Algorithmus vor, siehe Abbildung 6.4.
Dieser beruht auf der Bestimmung von unabhängiger Knotenmengen im Interferenzgraphen. Zwischen
Knoten von unabhängigen Knotenmengen dürfen keine Kanten des Graphen liegen. So besteht zum Beispiel der Sterngraph aus zwei unabhängigen Knotenmengen. Man sieht leicht ein, dass die minimale Anzahl
unabhängiger Knotenmengen der Färbungszahl des Graphen entspricht.
Wir gehen in folgenden Theorem davon aus, dass eine optimale Färbung des Interferenzgraphen gegeben ist. Die Färbungszahl von bezeichnen wir mit
.
Theorem 36 Der Classify-and-Randomly-Select-Algorithmus hat erwartetes kompetitives Verh ältnis
für Requests mit einheitlicher Belohnung und unendlicher Dauer gegen über einem oblivious Adversary.
Beweis: Wir bezeichnen mit OPT die Belohnung, die der CRS-Algorithmus erhält, wenn er sich für die te unabhängige Knotenmenge entscheidet.
Diese Belohnung entspricht der Anzahl der Requests für Knoten
, wobei für jeden Knoten maximal zugelassen werden. Interferenzen spielen hier keine Rolle.
Wenn wir die optimale Lösung eingeschränkt auf Requests in der Knotenmenge betrachten, dann
können nicht mehr Calls zugelassen werden. Damit gilt folgende Ungleichung für die Summe der Beloh-
6 8 +6 ; <F !
6 #F "
66 !@ " 6 8 6?9 @ 6 8 ; @
A= GO O O
3 Eine exakte Analyse im Skiverleihproblem zeigt, dass die Wahrscheinlichkeit
Tag gekauft werden, am besten mit
"
dann ein kompetitives Verh¨altnis von
[EYKL99].
"
82
7 A= OOO = 1 für die Entscheidung, dass die Skier am -ten
für zu w¨ahlen ist, was
ergibt. Eine algemeinere Untersuchung hierzu findet sich in
&'
(
nungen der optimalen Offline-Lösung.
OPT
OPT
Die erwartete Belohnung des CRS-Algorithmus ergibt sich durch aus den Einzelwahrscheinlichkeiten
zur Wahl einer Knotenmenge als
E
Damit erhalten wir die Beziehung
E
&'
- (
&' ( -
- OPT
-
OPT
'
OPT
was einem kompetitiven Verhältnis von
entspricht.
In den bisherigen Überlegungen hat die Anzahl der verfügbaren Frequenz interessanterweise keine
Rolle gespielt. Das nun folgende Ergebnis von [AAF 01] zeigt, dass man Ergebnisse für eine Frequenz
auf mehrere übertragen kann. Aus Zeit- und Platzgründen verzichten wir auf die Darstellung des Beweis.
Theorem 37 Jeder -kompetitive Algorithmus für das Call-Control-Problem
mit einer Frequenz kann in
einen
-kompetitiven Algorithmus für das Call-Control-Problem mit
Frequenzen umgewandelt
werden.
Wir werden daher im folgenden uns auf eine Frequenz, d.h.
, beschränken.
6.3.4 Lokale Online-Strategien
16.Vorlesung
Wir betrachten also den Spezialfall einer Frequenz, einheitlicher Belohnung und unendlicher Gesprächs- 12.02.2003
dauer. Natürlich kann man mit einer Frequenz immer nur einen Knoten in einer 1-Nachbarschaft bedienen.
Aber auch hier stellt sich die Frage wie man dies am besten bewerkstelligt. Hierfür betrachten wir den
sogenannten Block-and-Randomly-Serve-Algorithmus (BaRS) aus Abbildung 6.5.
Sei der durchschnittliche Grad des Interferenzgraphen . Dann gilt folgendes Lemma.
Lemma 14 Die Anzahl der akzeptierten Requests ist mindestens .
Beweis: Ein Knoten ist isoliert, falls er keine Nachbarn hat. Wir betrachten mit einen nicht isolierten
und nicht blockierten Knoten in der Nachbarschaft zum Zeitpunkt des ersten eintreffenden Requests, der
eine Färbung zur Folge hat.
Beschreibe die binäre Zufallsvariable das Ereignis, dass jetzt gefärbt wird, d.h.
, falls gefärbt wird und sonst . Ebenso beschreibe die binäre Zufallsvariable das Ereigniss, dass nun blockiert wird, d.h.
heisst wird nun blockiert und
heisst keine Blockade.
Dann gilt für den Erwartungswert der Summe
E
falls ( bezeichnet die Anzahl nicht blockierter Nachbarn von ). Ist gilt E
Sei die binäre Zufallsvariable, die beschreibt, dass der Knoten mit Wahrscheinlichkeit
eine Färbung verzichtet und nie wieder zur Färbung zur Verfügung steht. Hier gilt
und im Falle von ist E E
.
83
auf
Block-and-Randomly-Serve-Algorithmus (BaRS)
begin
to do
for if Frequenz in nicht verfügbar, weil ein Nachbar einen Request bedient then
Lehne Reqeust ab
Blockiere else if ist blockiert or bedient bereits or hat schon einmal abgelehnt then
Lehne Request ab
else
Anzahl nicht blockierter Nachbarn von if then
Bediene Request
else
with probability do
Bediene Request
otherwise
Lehne Request ab
Akzeptiere nie wieder einen Request
od fi
fi
od
end.
Abbildung 6.5: Block and Randomly Serve (BaRS) — Ein Algorithmus für das Call-Control-Problem für
eine Frequnz.
84
Hieraus folgt für die erwartete Gesamtanzahl
aller Request-ablehner E E , die Ge
und die erwartete Anzahl aller blockierten Knoten
samtanzahl aller gefärbten Knoten E E E
E
:
E
E
E (
E , da jeder der
Sei
E die erwartete Anzahl aller gefärbter Knoten Ferner ist
E nicht blockierten Knoten nur einmal gezählt wird, da er später blockiert wird. Nun folgt aus der letzten
Ungleichung die linke Seite der Ungleichung
&
E (
E während die rechte aus der Tatsache
folgt,
dass
E
gilt.
die Menge nicht-blockierter
Nachbarn. Es gilt nun
Für jeden gefärbten Knoten sei nun &
(
&
'
'
' mit ' .
'
'
Nun betrachten wir zwei ungefärbte und noch nicht blockierte Nachbarknoten und Dann gilt
'
Somit haben die Knoten kleineren (nicht-blockierten) Grads höhere
Wahrscheinlichkeit gefärbt zu werden
als ihre Nachbarn mit höheren Grad, was bedeutet E '
E
P
'
wird gefärbt und wird blockiert
Somit erhalten wir
&
E (
&
&
' E (
&
(
(
E (
& E
E '
E E Aus der Cauchy-Schwarz-Ungleichung folgt nun
&
&
(
E Für allgemeine Adversary (nicht oblivious) kann man folgendes Lemma beweisen. Hierbei ist ,
wobei die Anzahl der Knoten in der größten unabhängigen Menge beschreibt.
85
Lemma 15 Die erwartete Anzahl von akzeptieren Requests durch den BaRS-Algorithmus ist mindestens
Damit erhalten wir ein kompetives Verhältnis von
.
6.4 Das allgemeine Resultat
Natürlich gelten diese Überlegungen nur für das eingeschränkte Modell mit uniformer Belohnung und
unbeschränkter Anrufdauer. Mit der Classify-and-Select-Technik kann man aber einen Algorithmus konstruieren, der auch den allgemeinen Fall lösen kann.
Hierzu klassifiziert man die Zeitdauer in Größenklassen, die bis auf einen Faktor zwei gleich groß sind.
Man wählt eine dieser zufällig aus, wobei der Quotient aus maximaler und minimaler Rufdauer
ist. Nun löst man das Problem für eine Zeitperiode dieser Länge als ob die Anrufe beliebig lange dauern.
Natürlich verliert man durch diesen Ansatz erwartungsgemäß einen Faktor von .
Genaus kann man für unterschiedliche Belohnungen vorgehen. Wiederum geht ein Faktor von verloren, wobei der Quotient aus größter und kleinster Belohnung ist.
Man also folgendes Resultat zeigen
,
,
,
Theorem 38 Es gibt einen randomisierten Online-Algorithmus der das Call-Control-Problem mit beliebigen Requests mit kompetitiven Verhältnis
, , D
86
Literaturverzeichnis
[AAF 01] Awerbuch, Azar, Fiat, Leonardi, and Rosen. On-line competitive algorithms for call admission
in optical networks. Algorithmica, 31, 2001.
[AH77a]
K. Appel and W. Haken. Every planar map is 4-colorable – 1: Discharging. Illinois Journal of
Mathematics, 21:421–490, 1977.
[AH77b]
K. Appel and W. Haken. Every planar map is 4-colorable – 2: Reducibility. Illinois Journal of
Mathematics, 21:491–567, 1977.
[BB99]
Martin Bossert and Markus Breitbach. Digitale Netze. Teubner, Stuttgart, 1999. ISBN: 3-51906191-0.
[BGS98]
Mihir Bellare, Oded Goldreich, and Madhu Sudan. Free bits, PCPs, and nonapproximability—
towards tight results. SIAM Journal on Computing, 27(3):804–915, June 1998.
[BYGI87] Reuven Bar-Yehuda, Oded Goldreich, and Alon Itai. On the time-complexity of broadcast
in radio networks: An exponential gap between determinism and randomisation. In Fred B.
Schneider, editor, Proceedings of the 6th Annual ACM Symposium on Principles of Distributed
Computing, pages 98–108, Vancouver, BC, Canada, August 1987. ACM Press.
[EYKL99] R. El-Yaniv, R. Kaniel, and N. Linial. Competitive optimal on-line leasing. Algorithmica,
25:116–140, 1999.
[Feh95]
Kamilo Feher. Wireless Digital Communications: Modulation and Spread Spectrum. Prentice
Hall PTR, 1995. ISBN: 0130986178.
[FLZ98]
M. Fischer, T. Lukovszki, and M. Ziegler. Geometric searching in walkthrough animations
with weak spanners in real time. In 6th Annual European Symposium on Algorithms (ESA
’98), pages 163–174, 1998.
[FMS97]
M. Fischer, F. Meyer auf der Heide, and W.-B. Strothmann. Dynamic data structures for realtime management of large geometric scenes. In 5th Annual European Symposium on Algorithms
(ESA ’97), pages 157–170, 1997.
[FNPS01] Fotakis, Nikoletseas, Papadopoulou, and Spirakis. Hardness results and efficient approximations for frequency assignment problems and the radio coloring problem. BEATCS: Bulletin of
the European Association for Theoretical Computer Science, 75, 2001.
[For86]
Steven J. Fortune. A sweepline algorithm for Voronoi diagrams. In Proc. 2nd ACM Symp.
Computational Geometry, pages 313–322. ACM Press, 2–4 June 1986.
[GJS74]
M. R. Garey, D. S. Johnson, and L. Stockmeyer. Some simplified NP-complete problems. In
ACM, editor, Conference record of sixth annual ACM Symposium on Theory of Computing:
papers presented at the symposium, Seattle, Washington, April 30–May 2, 1974, pages 47–63,
New York, NY, USA, 1974. ACM Press.
87
[GLSV02] M. Grünewald, T. Lukovszki, C. Schindelhauer, and K. Volbert. Distributed maintenance of resource efficient wireless network topologies (distinguished paper). Lecture Notes in Computer
Science, 2400:935–945, 2002.
[Gro02]
IETF MANET Working Group. Manet-charter. http://www.ietf.org/html.charters/manetcharter.html, 2002.
[Hal93]
M.M. Halldórsson. A still better performance guarantee for approximate graph coloring. Inform. Process. Lett., 45:19–23, 1993.
[Kle97]
Rolf Klein. Algorithmische Geometrie. Addison-Wesley, Bonn, 1997. ISBN: 3-486-24382-9.
[MKOS00] Mark de Berg, Marc van Kreveld, Mark Overmars, and Otfried Schwarzkopf. Computational
Geometry: Algorithms and Applications. Springer, Heidelberg, 2000.
[MSVG02] F. Meyer auf der Heide, C. Schindelhauer, K. Volbert, and M . Grünewald. Energy, Congestion and Dilation in Radio Networks. In 14th ACM Symposium on Parallel Algorithms and
Architectures (S PAA’02), pages 230–237, 2002.
[Per01]
C. E. Perkins, editor. Ad Hoc Networking. Addision-Wesley, 2001.
[PPS97]
Pantziou, Pentaris, and Spirakis. Competitive call control in mobile networks. In ISAAC:
8th International Symposium on Algorithms and Computation (formerly SIGAL International
Symposium on Algorithms), 1997.
[PPS02]
Pantziou, Pentaris, and Spiraki. Competitive call control in mobile networks. Theory of Computing Systems, 2002.
[Sch00]
Jochen Schiller. Mobile Communications. Addison-Wesley, Bonn, 2000.
[Tan96]
Andrew S. Tanenbaum. Computer Networks. Prentice-Hall International, Inc., 1996. ISBN:
0-13-394248-1.
[Vai02]
Nitin Vaidya.
Tutorials about the MAC-Layer
http://www.crhc.uiuc.edu/ nhv/presentations.html, 2002.
88
in
Wireless
Networks.
Herunterladen