Algorithmische Probleme in Funknetzwerken IV

Slides:



Advertisements
Ähnliche Präsentationen
Kap. 13 Sweep-Line Algorithmen Kap Schnittprobleme
Advertisements

Christian Schindelhauer
Christian Schindelhauer
7. Natürliche Binärbäume
Marco Barz Seminar über Algorithmen SoSe2007
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Verifizieren versus Berechnen
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung.
Christian Schindelhauer
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken XV Christian Schindelhauer
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken IX Christian Schindelhauer
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken X Christian Schindelhauer
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 1 Algorithm. Grundlagen des Internets 24. Juni 2002 Christian Schindelhauer.
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung.
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester.
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester.
Christian Schindelhauer
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Geometrisches Divide and Conquer
Kapitel 4 Geometrische Abbildungen
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/ Vorlesung Dominic Dumrauf.
Christian Schindelhauer
Minimum Spanning Tree: MST
Theorie und Praxis geometrischer Algorithmen
Tetraederzerlegung Ina Ehmann Tetraederzerlegung.
Diskrete Mathe 9 Vorlesung 9 SS 2001
Effiziente Algorithmen
Effiziente Algorithmen
Geoinformation II Vorlesung 4 SS 2001 Voronoi-Diagramme.
Konstruktion der Voronoi-Diagramme II
Diskrete Mathematik II
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 7 SS 2000 Punkt-in-Polygon-Verfahren I (Trapezkarte)
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Christian Scheideler Institut für Informatik Universität Paderborn
Konstruktion der Voronoi-Diagramme I
Institut für Theoretische Informatik
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Gegenseitige Lage von Geraden Schnittpunktberechnung
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken III Christian Schindelhauer
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation III Vorlesung 1 WS 2001/02 Punkt-in-Landkarte I (Streifenkarte)
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Analyse der Laufzeit von Algorithmen
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken VIII Christian Schindelhauer
HEINZ NIXDORF INSTITUT Universität Paderborn Fakultät für Elektrotechnik, Informatik und Mathematik Algorithmische Probleme in Funknetzwerken XIII Klaus.
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken VI Christian Schindelhauer
Routenplanung querfeldein - Geometric Route Planning
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Voronoi-Diagramme.
Geoinformation II 6. Sem. Vorlesung April 2000 Geometrische Algorithmen - ein einführendes, größeres Beispiel für ein Semester-begleitendes Programmier.
Konvexe Hüllen (Convex Hulls)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung 4 4. Mai 2000 Voronoi-Diagramm.
 Präsentation transkript:

Algorithmische Probleme in Funknetzwerken IV Christian Schindelhauer schindel@upb.de

Zellulare Netze (I) Ursprüngliche Problemstellung: Gegeben: Gesucht: Starres Frequenzmultiplexing für gegebene Menge von Basisstationen Gegeben: Positionen der Basisstationen Gesucht: Frequenzzuteilung, welche die Interferenzen minimiert Wie modelliert man zulässige Frequenzzuteilungen?

Voronoi-Diagramme Definition (I) 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)

Voronoi-Diagramme Definition (II) 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 vV:

Voronoi-Diagramme Definition (III) Voronoi-Region VR(p,V) Voronoi-Diagramm VD(V) Alle Voronoi-Regionen sind konvex Beweis: Übung Voronoi-Diagramme bestehen aus Strecken, Halbgeraden und Punkten

Voronoi-Diagramme Struktur 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

Geometrischer Graph 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

Kreis-Lemma Beweis: Übung…

Konvexe Hülle Voronoi-Diagramme stehen in enger Beziehung zur konvexen Hülle CH(V) einer Punktmenge V

Eulersche Formel

Größe des Voronoi-Diagramms

Zeitkomplexität I (untere Schranke) In welcher Zeit kann man das Voronoi-Diagramm berechnen? Trivial O(n2) Kann man es in Linearzeit berechnen? Zum Vergleich:

Zeitkomplexität II (untere Schranke) Wenn man verlangt, dass der Algorithmus eine Adjazenzliste ausgibt

Effiziente DS für Geom. Graphen (Zwischenspiel) 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

Zeitkomplexität III (untere Schranke) Wenn QEDS-DS von VD(V) gegeben ist

Duale Graphen

Delaunay-Triangulation I 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,qV die Regionen VR(p,V) und VR(q,V) als Rand eine Strecke besitzen, füge (p,q) zur Delaunay-Triangulation

Delaunay-Triangulation II 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

Sweep-Technik (I) 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 Sweep-Line von Punkt (a,0) weg

Sweep-Technik (II) Mehrere Punkte Ereignisse Nur vordere Wellenfront ist von Interesse Unterteilung der Wellenfront in Parabelstücke Ereignisse Entstehen eines Parabelstücks Nur wenn die Wellenfront einen Punkt streift Verschwinden eines Parabelstücks Dadurch entsteht Voronoi-Punkt

Sweep-Technik (III) 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

W = { x  H |  p  V  H : |x,p| = minuL |x,L| } Die Wellenfront Sei H Halbebene über parallel abwärts bewegender Gerade L inklusive L W = { x  H |  p  V  H : |x,p| = minuL |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 VH 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)

Ereignis A: Einfügen neuer Parabel Sweep-Linie trifft auf Punkt pV 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

Ereignis B: Löschen einer Parabel 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

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

Ereignis-Warteschlange Priorität ergibt sich durch y-Koordinate der Sweep-Linie L Erzeugen Parabel: Priorität = y-Koordinate der Punkte aus V 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