Algorithmische Probleme in Funknetzwerken IV Christian Schindelhauer [email protected] HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Zellulare Netze (I) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Ursprüngliche Problemstellung: – Starres Frequenzmultiplexing für gegebene Menge von Basisstationen • Gegeben: – Positionen der Basisstationen • Gesucht: – Frequenzzuteilung, welche die Interferenzen minimiert • Wie modelliert man zulässige Frequenzzuteilungen? Christian Schindelhauer 06.11.2002 2 Algorithmische Probleme in Funknetzwerken IV Voronoi-Diagramme Definition (I) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Best-Station-Problem nur unter Berücksichtung von Path Loss führt zu Voronoi-Diagrammen • Abstandsmaß: – Euklidischer Abstand – = L2-Norm – p=(p1,p2), q=(q1,q2) R2 • Bisektor B(p,q) Christian Schindelhauer 06.11.2002 3 Algorithmische Probleme in Funknetzwerken IV Voronoi-Diagramme Definition (II) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Bisektor • Zerlegt Ebene in Halbebenen D(p,q) und D(q,p) • Für gegebene Punktmenge V definiere Voronoi-Region VR(p,V) eines Punkts vV: Christian Schindelhauer 06.11.2002 4 Algorithmische Probleme in Funknetzwerken IV Voronoi-Diagramme Definition (III) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Voronoi-Region VR(p,V) • Voronoi-Diagramm VD(V) • Alle Voronoi-Regionen sind konvex – Beweis: Übung • Voronoi-Diagramme bestehen aus Strecken, Halbgeraden und Punkten Christian Schindelhauer 06.11.2002 5 Algorithmische Probleme in Funknetzwerken IV Voronoi-Diagramme Struktur HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Voronoi-Diagramme bestehen aus Strecken, Halbgeraden und Punkten – Betrachte benachbarte Voronoi-Regionen VR(p,V) und VR(q,V) – Dann muß jeder Punkt des gemeinsamen Rands im Bisektor B(p,q) liegen, weil • Jede Voronoi-Region ist konvex + • Randstücke bestehen aus endlich vielen Geradenstücken Voronoi-Diagramm ist ein geometrischer Graph Christian Schindelhauer 06.11.2002 6 Algorithmische Probleme in Funknetzwerken IV Geometrischer Graph HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Geometrische Realisierung eines ungerichteten Graphen in R2 • Knoten werden auf Punkte abgebildet • Kanten werden auf einfache Wege abgebildet • Keine Überschneidung zwischen verschiedenen einfachen Wegen – Planarer Graph • Zusammenhangskomponente – Maximaler Teilgraph indem jeder Knoten einen Weg zu jedem anderen Knoten besitzt Christian Schindelhauer 06.11.2002 7 Algorithmische Probleme in Funknetzwerken IV Kreis-Lemma HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Beweis: Übung… Christian Schindelhauer 06.11.2002 8 Algorithmische Probleme in Funknetzwerken IV Konvexe Hülle HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Voronoi-Diagramme stehen in enger Beziehung zur konvexen Hülle CH(V) einer Punktmenge V Christian Schindelhauer 06.11.2002 9 Algorithmische Probleme in Funknetzwerken IV Eulersche Formel Christian Schindelhauer 06.11.2002 10 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken IV Größe des VoronoiDiagramms Christian Schindelhauer 06.11.2002 11 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken IV Zeitkomplexität I (untere Schranke) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • In welcher Zeit kann man das Voronoi-Diagramm berechnen? – Trivial O(n2) • Kann man es in Linearzeit berechnen? • Zum Vergleich: Christian Schindelhauer 06.11.2002 12 Algorithmische Probleme in Funknetzwerken IV Zeitkomplexität II (untere Schranke) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Wenn man verlangt, dass der Algorithmus eine Adjazenzliste ausgibt Christian Schindelhauer 06.11.2002 13 Algorithmische Probleme in Funknetzwerken IV Effiziente DS für Geom. Graphen (Zwischenspiel) • HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Adjazenzliste – Für jeden Knoten, Liste benachbarter Knoten • Doubly Connected Edge List (DCEL) – Für jede Kante • • • • Adjazente Knoten Nächste Kante im Uhrzeigersinn an den Endknoten Benachbarte Fläche Quad Edge Data Structure (QEDS) – Wie DCEL nur ergänzt durch Kanten gegen den Uhrzeigersinn Christian Schindelhauer 06.11.2002 14 Algorithmische Probleme in Funknetzwerken IV Zeitkomplexität III (untere Schranke) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Wenn QEDS-DS von VD(V) gegeben ist Christian Schindelhauer 06.11.2002 15 Algorithmische Probleme in Funknetzwerken IV Duale Graphen Christian Schindelhauer 06.11.2002 16 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken IV Delaunay-Triangulation I HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Endliche Punktmenge V in allgemeiner Lage: – Keine drei Punkte sind auf einer Gerade – Keine vier Punkte auf einem Kreisbogen – Erhält man indem man jeden Punkt um einen infinitesimal kleinen Vektor in zufällige Richtung verschiebt • Delaunay-Triangulation – Gegeben Menge V und Voronoi-Diagramm VD(V) – Falls für p,qV die Regionen VR(p,V) und VR(q,V) als Rand eine Strecke besitzen, füge (p,q) zur Delaunay-Triangulation Christian Schindelhauer 06.11.2002 17 Algorithmische Probleme in Funknetzwerken IV Delaunay-Triangulation II HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Da V in allgemeiner Lage, d.h. Keine vier Punkte auf einem Kreisbogen • Kein Voronoi-Punkt hat mehr als drei Kanten (wegen Kreislemma) • Damit hat jeder Fläche des Dualen Graphen nur drei benachbarte Kanten Delaunay-Triangulation besteht nur aus Dreiecken Christian Schindelhauer 06.11.2002 18 Algorithmische Probleme in Funknetzwerken IV Sweep-Technik (I) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Betrachte Bisektor zwischen Punkt (a,0) und Linie y=0 • Ergibt Parabel mit – x2 + (y-a)2 = y2 – y = x2/ (2a) + a/2 • Nun bewegt sich die SweepLine von Punkt (a,0) weg Christian Schindelhauer 06.11.2002 19 Algorithmische Probleme in Funknetzwerken IV Sweep-Technik (II) • HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Mehrere Punkte – Nur vordere Wellenfront ist von Interesse – Unterteilung der Wellenfront in Parabelstücke • Ereignisse 1. Entstehen eines Parabelstücks – Nur wenn die Wellenfront einen Punkt streift 2. Verschwinden eines Parabelstücks – Dadurch entsteht VoronoiPunkt Christian Schindelhauer 06.11.2002 20 Algorithmische Probleme in Funknetzwerken IV Sweep-Technik (III) HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Schnittpunkte der Wellenfront fahren das Voronoi-Diagramm ab • Treffen sich zwei Parabeln an der Wellenfront, verschwindet ein Parabelstück • Nur benachbarte Spikes kommen als nächster Treffpunkt in Frage • Die Anzahl der Parabelstücke in der Frontlinie ist linear Christian Schindelhauer 06.11.2002 21 Algorithmische Probleme in Funknetzwerken IV HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Die Wellenfront • Sei H Halbebene über parallel abwärts bewegender Gerade L inklusive L W = { x H | p V H : |x,p| = minuL |x,L| } • Alle Punkte über B haben nächsten Nachbarn in B • Alle Punkte zwischen B und L können nächsten Nachbarn sowohl in VH oder V \ H haben • Die Parabel ist y-monoton, d.h. jede senkrechte Gerade schneidet B höchstens in einem Punkt • Die Schnittpunkte von Parabeln heißen Bruchpunkte – Fakt: Ein Punkt p ist ein Bruchpunkt gdw. p VD(V) Christian Schindelhauer 06.11.2002 22 Algorithmische Probleme in Funknetzwerken IV Ereignis A: Einfügen neuer Parabel HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Sweep-Linie trifft auf Punkt pV • Parabel beginnt als Halbgerade – Halbiert bestehendes Parabelstück (falls Sweep-Linie in allgemeiner Position) – Da keine ander Operation Parabeln erzeugt, höchstens 2n-1 Parabelstücke • Die beiden Schnittpunkte mit der alten Wellenfront definieren eine beginnende Voronoi-Kante – Die Verlängerung der Kante über die Wellenfront hinaus, wird Spike genannt – Die Schnittpunkte der Parabeln bewegen sich auf diesen Spikes bis sie einen Voronoi-Punkt treffen – Treffpunkte möglicher Spikes zeigen mögliche Voronoi-Punkte an Christian Schindelhauer 06.11.2002 23 Algorithmische Probleme in Funknetzwerken IV Ereignis B: Löschen einer Parabel HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik • Bewegung der Sweep-Linie läßt Bruchpunkte aufeinanderlaufen – Parabel zwischen Bruchpunkten verschwindet – Voronoi-Region der verschwundenen nun hinter Sweep-Linie – Da Region konvex ist dies Voronoi-Region abgearbeitet • Der Treffpunkt der Bruchpunkte muß ein “bekannter” Spike sein • Berechne frühesten “Zeitpunkt”, an dem die Sweep-Linie eine Parabel löscht – Hierfür müssen nur benachbarte Parabelstücke berücksichtigt werden – Nach Löschen, aktualisiere mögliche Treffpunkte Christian Schindelhauer 06.11.2002 24 Algorithmische Probleme in Funknetzwerken IV HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Notwendige Datenstrukturen • Bisher konstruiertes Voronoi-Diagramm – Speicherung als QEDS – Technische Schwierigkeit: Unbeschränkte Kanten • Verwende “bounding box” • Wellenfront – Wörterbuch mit Punkten aus V die relevante Parabeln beschreiben • sortiert nach x-Koordinaten • Jede Suche, Einfüge-Operation in Zeit O(log n) • Ereignis-Warteschlange als Priority-Queue – Priorität ergibt sich durch y-Koordinate der Sweep-Linie L – Aktualisiere Warteschlange bei jedem Ereignis Christian Schindelhauer 06.11.2002 25 Algorithmische Probleme in Funknetzwerken IV Ereignis-Warteschlange • HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Priorität ergibt sich durch y-Koordinate der Sweep-Linie L A. Erzeugen Parabel: – Priorität = y-Koordinate der Punkte aus V B. Löschen Parabel: – Priorität = y-Koordinate der Sweep-Linie, die den Kreis mit Mittelpunkt des Spike-Schnittpunkts s und Radius |s,u| von unten berührt, wobei u beteiligter Knoten eines Spikes ist. • • Aktualisiere Warteschlange bei jedem Ereignis Zeitaufwand O(log n) (amortisiert) für – Einfügen in Warteschlange – Löschen eines Elements der Warteschlange Christian Schindelhauer 06.11.2002 26 Algorithmische Probleme in Funknetzwerken IV