Algorithmische Geometrie: Rest Lokalisierung von Punkten; Voronoi Diagramme (1/2) Nico Düvelmeyer WS 2009/2010, 22.12.2009
Überblick 1 Fertigstellung Kapitel 7 2 Definition Voronoi Diagramm 3 Grundlegende Eigenschaften Voronoi Diagramm 4 Bestimmung des Voronoi Diagramms (Ausblick)
Überblick 1 Fertigstellung Kapitel 7 2 Definition Voronoi Diagramm 3 Grundlegende Eigenschaften Voronoi Diagramm 4 Bestimmung des Voronoi Diagramms (Ausblick)
Fertigstellung Kapitel 7 Weiter in Vorlesung 8 ab Seite 29
Überblick 1 Fertigstellung Kapitel 7 2 Definition Voronoi Diagramm 3 Grundlegende Eigenschaften Voronoi Diagramm 4 Bestimmung des Voronoi Diagramms (Ausblick)
Durst in der Wüste
Erinnerung Euklidischer Abstand zweier Punkte p, q R 2 dist(p, q) := (p x q x ) 2 + (p y q y ) 2
Definition 8.1 Das Voronoi Diagramm Vor(P) von P = {p 1,..., p n } R 2 ist die Aufteilung der Ebene R 2 in n Bereiche B 1,..., B n und zugehörige Kanten, wobei B i := { q R 2 : dist(q, p i ) < dist(q, p j ) j i } =: V(p i ).
Visualisierung Voronoi Diagramm http://www.pi6.fernuni-hagen.de/geomlab/voroglide/
Anwendungen Post Office Problem Einzugsgebiete für Kaufhäuser Approximationsalgorithmen übernächstes Kapitel
Überblick 1 Fertigstellung Kapitel 7 2 Definition Voronoi Diagramm 3 Grundlegende Eigenschaften Voronoi Diagramm 4 Bestimmung des Voronoi Diagramms (Ausblick)
Offene Halbebene h(p, q) := { x : dist(x, p) < dist(x, q) } offene Halbebene Rand: Mittelsenkrechte von pq Seite: enthält p
Beobachtung 8.2 V(p i ) = h(p i, p j ) 1 j n,i j konvexes polygonales Gebiet gegebenenfalls unbeschränkt maximal n 1 Ecken und Kanten
Satz 8.3 Sei P eine Menge von n Punkten der Ebene. Sind alle Punkte in P kollinear, dann besteht Vor(P) aus n 1 parallelen Geraden. Andernfalls ist Vor(P) zusammenhängend, und alle Kanten sind Strecken oder Strahlen. Beweis. Kanten: Strecken, Strahlen oder Geraden Kante k := V(p i ) V(p j ) Gerade g P kollinear p l P: p i, p j, p l nicht kollinear Mittelsenkrechte von p j p l schneidet g h(p l, p j ) g nicht Rand von V(p j ) Wäre Vor(P) nicht zusammenhängend durch Bereich V(p i ) zerlegt V(p i ) hätte zwei parallelen Randgeraden
Satz 8.4 n 3, P = n. Vor(P) hat e 2n 5 Ecken k 3n 6 Kanten Beweis. für P kollinear: siehe Satz 8.3 Eulersche Polyederformel m e + m f m k = 2 m f = n Flächen; m e = n + 1 Knoten: P {v } m k = k Kanten: ggf. zu v verbogen (e + 1) + n k = 2 doppeltes Abzählen Kanten-Knoten-Inzidenzen: 2k 3(e + 1) = 3(2 + k n) = 3k 3n + 6 k 3n 6, e = 1 + k n 2n 5
Notation C P (q) q R 2, P R 2 C P (q) := Kreis mit Mittelpunkt q maximaler Radius im Inneren keine Punkt aus P
Satz 8.5 Sei P eine Menge von Punkten der Ebene. Dann gelten folgende Aussagen. 1. Ein Punkt q ist Ecke von Vor(P) genau dann, wenn der Rand von C P (q) mindestens drei der Punkte von P enthält. 2. Die Mittelsenkrechte von p i und p j bestimmt genau dann eine Kante von Vor(P), wenn es einen Punkt q auf dieser Mittelsenkrechten gibt, so dass der Rand von C P (q) von den Punkten in P genau p i und p j enthält.
Beweis Satz 8.5 Punkt 1. q Ecke C P (q) enthält mindestens drei Punkte von P: p i, p j, p k C P (q) Inneres von C P (q) leer q V(p i ), q V(p j ), q V(p k ) damit q Ecke von Vor(P) q Ecke C P (q) enthält mindestens drei Punkte von P: q Ecke von Vor(P) q ist zu mindestens drei Kanten inzident q gehört zum Rand von V(p i ), V(p j ) und V(p k ) p i, p j, p k C P (q)
Beweis Satz 8.5 Punkt 2. V(pi ) V(p j ) > 1 q V(pi ) V(p j ) : C P (q) P = {p i, p j } : dist(q, p i ) = dist(q, p j ) dist(q, p k ) für alle 1 k n q liegt auf einer Kante oder Ecke von Vor(P) wegen Punkt 1. ist q keine Ecke von Vor(P) q liegt auf der Mittelsenkrechten von p i und p j : q sei beliebig im Inneren einer Kante von Vor(P), die p i und p j trennt C P (q) enthält sowohl p i als auch p j, aber keinen anderen Punkt aus P
Überblick 1 Fertigstellung Kapitel 7 2 Definition Voronoi Diagramm 3 Grundlegende Eigenschaften Voronoi Diagramm 4 Bestimmung des Voronoi Diagramms (Ausblick)
Folgerung 5.6 + Beobachtung 8.2 Folgerung Der gemeinsame Durchschnitt einer Menge von n Halbebenen des R 2 kann innerhalb einer Zeit in O(n log n) und mit linearem Speicherplatzbedarf berechnet werden. Algorithmus mit Laufzeit in O(n 2 log n) zur Bestimmung aller Voronoi-Bereiche
Bestimmung des Voronoi Diagramms: Fortune s Algorithmus Zeit in O(n log n) asymptotisch optimal http://www.diku.dk/hjemmesider/studerende/duff/fortune/ http://kam.mff.cuni.cz/~ludek/algovision/algovision.html