Diskrete Mathematik II Vorlesung 8 08.06.00 Voronoi-Diagramme
Konstruktion des Voronoi-Diagramms „Divide and Conquer“ Input: Gegeben ist eine Menge P von mindestens 2 Punkten Divide: Zerlege P in zwei etwa gleich große Teilmengen P1 und P2 Rekursiv: Berechne Voronoi-Diagramme von P1 und P2 Merge: Verknüpfe die beiden in Schritt 3 gebildeten Diagramme Halt: Der Abschluß ist erreicht, wenn das Voronoi-Diagramm eines Punktes zu bilden ist; dies ist die ganze Ebene Wie oft ist dieser Zyklus zu durchlaufen? log n mal O(n * log n) wenn „Divide“ and „Merge“ nicht mehr als n Schritte benötigen, Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Aufteilung der Menge P in P1 und P2 Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Voronoi-Diagramm von P1 Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Voronoi-Diagramm von P2 Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Was ist das schwierigste Teilproblem? - Merge Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Konstruktion des trennenden Kantenzuges Was wissen wir über den trennenden Kantenzug? monoton in Nord-Süd-Richtung jede Kante ist Grenze (Mittelsenkrechte) zwischen einer roten und einer grünen Region Problem: sukzessive Identifikation der benachbarten roten und grünen Punkte die nördlichsten und südlichsten Teilstücke sind unbeschränkt, also Halbgeraden die benachbarten roten und grünen Punkte bilden dort unbeschränkte Voronoi-Regionen sie liegen also jeweils auf der roten bzw. grünen konvexen Hülle beginnen wir also mit den beiden Tangenten Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Tangente Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Tangente – konvexe Hülle Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Konvexe Hülle Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Eine Tangente T an die Punktmenge P geht durch zwei Punkte von P teilt die Ebene in zwei Halbebenen so, daß alle Punkte in der gleichen Halbebene liegen die Tangenten bestimmen die Lage der Kanten für die neue konvexe Hülle beider Punktmengen Konstruktion der Tangenten im Detail: später Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Mittelsenkrechte bilden Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Aktive Voronoi-Regionen Schnittpunkte mit Seg- menten suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Aktive Voronoi-Regionen Schnittpunkte mit Seg- menten suchen Neue aktive VR (Voronoi- Region) Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Aktive Voronoi-Regionen Schnittpunkte mit Seg- menten suchen Neue aktive VR Mittelsenkrechte zuwischen den aktiven VR Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Schnittpunkte suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Schnittpunkte suchen Neue aktive VR suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Schnittpunkte suchen Neue aktive VR suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Schnittpunkte suchen Neue aktive VR suchen Mittelsenkrechte der aktiven VR Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Schnittpunkte suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Schnittpunkte suchen Neue aktive VR suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Schnittpunkte suchen Neue aktive VR suchen Mittelsenkrechte der aktiven VR Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Mittelsenkrechte der aktiven VR Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Mittelsenkrechte der aktiven VR Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Mittelsenkrechte der aktiven VR Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Mittelsenkrechte der aktiven VR Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Nächsten relevanten Schnittpunkte suchen Neue aktive VR suchen Verknüpfung mit der Mittel- senkrechten vom Anfang Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Vereinigung Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Löschen der überflüssigen Segmente Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Löschen der überflüssigen Segmente Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Ergebnis: Voronoi-Diagramm von P Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Datenstruktur für Voronoi-Diagramm Doppelt verkettete Kantenliste Durchlaufen des Kantenumrings in linearer Zeit Direkter Zugriff auf die benachbarten Maschen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Kosten wie lange dauert die Konstruktion des trennenden Kantenzuges? Zahl der Teilkanten / Knoten des Kantenzuges Zahl Berechnungen von Schnittpunkten mit den benachbarten Voronoi-Regionen Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Länge des Kantenzuges im Worst Case O(n) Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Größenordnung des Kanten-Umrings im worst case O(n) Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
war jetzt alles umsonst? O(n) * O(n) = O(n2) ? war jetzt alles umsonst? Kantenzug ist monoton Voronoi-Regionen sind konvex Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
Keine Kante öfter als zwei mal anfassen! O(n) * O(n) = O(n2) ? Keine Kante öfter als zwei mal anfassen! Voronoi-Regionen sind konvex Kantenzug ist monoton Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00
„Investitionen müssen sich amortisieren“ Ziel: keine Kante mehr als zwei mal „anfassen“ Es gibt insgesamt höchstens 3* n – 6 Kanten O(n) Konvexität der Voronoi-Regionen höchstens zwei Schnittpunkte mit der aktiven Halbgeraden Es genügt, die linken (grünen) Kantenumringe im Uhrzeigersinn und die rechten (roten) Kantenumringe gegen den Uhrzeigersinn zu durchlaufen und den zuletzt gefundenen und verworfenen Schnittpunkt als Haltepunkt zu merken! Lutz Plümer - Diskrete Mathematik II - SS 2000 - Vorlesung 8 - 08.06.00 44