Algorithmische Geometrie: Delaunay Triangulierung (Teil 2)

Größe: px
Ab Seite anzeigen:

Download "Algorithmische Geometrie: Delaunay Triangulierung (Teil 2)"

Transkript

1 Algorithmische Geometrie: Delaunay Triangulierung (Teil 2) Nico Düvelmeyer WS 2009/2010,

2 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

3 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

4 Satz 10.1 (Wiederholung) Gegeben: P n Punkte der Ebene (nicht kollinear) k Anzahl von Punkten aus P auf Rand von conv P Dann hat jede Triangulierung von P genau 2n 2 k Dreiecke 3n 3 k Kanten

5 Definition 10.2 Winkel-Vektor (Wiederholung) Triangulierung T von P α 1,..., α 3m Innenwinkeln aller Dreiecke in T α 1 α 2 α 3m Winkel-Vektor von T: W (T) := (α 1,..., α 3m )

6 Delaunay Graph Definition 10.9 (Wiederholung) P Menge von n Punkten Voronoi-Diagramm Vor(P) besteht aus je einem Gebiet je Punkt aus P dualer Graph G Knoten: Voronoi-Gebiet V(p) (p P) Kanten in G: Gebiete von Vor(P) mit gemeinsamer Kante in Vor(P) Einbettung von G: V(p) p, {V(p), V(q)} pq Delaunay Graph DG(P) von P

7 Satz (Wiederholung) Der Delaunay Graph einer ebenen Punktmenge ist ein ebener Graph.

8 Definition Delaunay Triangulierung (Wiederholung) P: endliche Punktmenge eine Delaunay Triangulierung von P: beliebige Triangulierung von DG(P) ausgehend die Delaunay Triangulierung von P: nur wenn DG(P) eine Triangulierung ist letzteres gilt, wenn P in allgemeiner Lage ist: keine vier Punkte auf einem Kreis

9 Satz (Wiederholung) Es sei P eine endliche Menge von Punkten der Ebene. 1. Die Punkte p i, p j, p k P sind genau dann Ecken eines gemeinsamen Gebietes von DG(P), wenn der Kreis durch p i, p j, p k keine Punkte aus P in seinem Inneren enthält. 2. Zwei Punkte p i, p j P bilden genau dann eine Kante von DG(P), wenn es eine abgeschlossene Kreisscheibe K i,j mit p i und p j im Rand gibt, die keine weiteren Punkte aus P enthält.

10 Satz (Wiederholung) Triangulierung T zulässig T Delaunay Triangulierung

11 Satz (Wiederholung) 1. T Triangulierung mit maximalem W (T) T Delaunay Triangulierung 2. T Delaunay Triangulierung minimaler Winkel in W (T) ist maximal

12 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

13 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

14 Randomisiert inkrementeller Ansatz (Wiederholung) Start: großes Dreieck p 0 p 1 p 2 enthält P = {p 0, p 1,..., p n } bestimmen eine Delaunay Triangulierung von Q i := {p 2, p 1, p 0, p 1,..., p i } entfernen p 1, p 2 samt inzidenter Kanten und Dreiecke Delaunay Triangulierung von P

15 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

16 Algorithmus (Wiederholung) Eingabe: eine Menge P von n + 1 Punkten der Ebene Ausgabe: eine Delaunay Triangulierung von P 1: Funktion DELAUNAYTRIANGULIERUNG(P) 2: Bestimme den lexikographisch höchsten Punkt p 0 von P, d.h. den Punkt mit maximaler x-koordinate unter allen Punkten von P mit maximaler y-koordinate. 3: p 1 und p 2 seien zwei Punkte der Ebene, die hinreichend weit von P entfernt sind, so dass P im Dreieck p 0 p 1 p 2 enthalten ist. 4: Initialisiere T als die Triangulierung mit dem einzelnen Dreieck p 0 p 1 p 2. 5: Bestimme eine zufällige Vertauschung p 1,..., p n von P \ {p 0 }.

17 Algorithmus (Wiederholung) 6: Für r 1 bis n mache Füge p r in T ein 7: Suche das Dreieck p i p j p k T, welches p r enthält. 8: Wenn p r im Inneren von p i p j p k liegt, dann 9: füge drei neue Kanten p i p r, p j p r und p k p r in T ein, wobei p i p j p k in drei Dreiecke zerlegt wird. 10: KORRIGIEREKANTE(p r, p i p j, T) 11: KORRIGIEREKANTE(p r, p j p k, T) 12: KORRIGIEREKANTE(p r, p k p i, T) 13: sonst

18 Algorithmus (Wiederholung) 14: Es sei p i p j die Kante von T, die p r enthält, p i p j p k T und p i p j p l T die beiden zu p i p j inzidenten Dreiecke. 15: Füge zwei neue Kanten p k p r und p l p r in T ein, wobei p i p j durch p r in zwei Strecken und p i p j p k sowie p i p j p l jeweils in zwei Dreiecke zerlegt werden. 16: KORRIGIEREKANTE(p r, p i p l, T) 17: KORRIGIEREKANTE(p r, p l p j, T) 18: KORRIGIEREKANTE(p r, p j p k, T) 19: KORRIGIEREKANTE(p r, p k p i, T) 20: Entferne p 1, p 2 mit allen inzidenten Kanten und Dreiecken aus T. 21: Liefere T.

19 Idee KorrigiereKante ähnlich ZULÄSSIGETRIANGULIERUNG(T) kontrollieren und korrigieren potenziell unzulässige Kanten rekursiver Aufruf übergeben neu eingefügte Ecke p r Garantie: p r p i p j T

20 Fortsetzung von Algorithmus Eingabe: der neu eingefügte Punkt p r, die zu kontrollierende Kante p i p j, und die bisherige Triangulierung T Ausgabe: eine Triangulierung T, die lokal zulässig ist, d.h. für die p i p j entweder wegfällt oder zulässig ist, und keine neuen unzulässigen Kanten dazukommen 22: Funktion KORRIGIEREKANTE(p r, p i p j, T) 23: Wenn p i p j unzulässig ist, dann 24: seien p i p j p r, p i p j p l T die zu p i p j inzidenten Dreiecke. 25: Ersetze p i p j durch p r p k in T. 26: KORRIGIEREKANTE(p r, p i p k, T) 27: KORRIGIEREKANTE(p r, p k p j, T)

21 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

22 Satz Jede neue Kante, die in DELAUNAYTRIANGULIERUNG(P) oder KORRIGIEREKANTE(p r, p i p j, T) erzeugt wird, ist eine Kante im Delaunay Graph von Q r = {p 2, p 1,..., p r }.

23 Beweis von Satz direkt in DELAUNAYTRIANGULIERUNG(P) erzeugte Kanten Annahme: p i p j p k durch p r aufgeteilt U := K (p i p j p k ) enthält im Inneren kein p t mit t < r Modifizieren Kreis U: Punkt p i und Tangente fix, verkleinern den Radius Kreise U enthält p r im Rand U nicht im Inneren: p 2,..., p r 1 U auf Rand von p 2,..., p r : genau p i, p r p i p r im Delaunay Graph von Q r analog: p r p j, p r p k, (p r p l )

24 Beweis von Satz direkt von KORRIGIEREKANTE(p r, p i p j, T) erzeugten Kanten Umkreis U von p i p j p l p i p j unzulässig p r im Inneren von U Schrumpfen U Kreis innerhalb von U enthält von Q i nur p i und p r, auf dem Rand

25 Exaktheit von Algorithmus Zu zeigen: 1. Algorithmus terminiert 2. keine unzulässige Kante in T

26 Exaktheit von Algorithmus Zu zeigen: 1. Algorithmus terminiert (W (T) wächst streng bei Drehungen) 2. keine unzulässige Kante in T

27 Exaktheit von Algorithmus Zu zeigen: 1. Algorithmus terminiert (W (T) wächst streng bei Drehungen) 2. keine unzulässige Kante in T alle neuen Kanten inzidieren mit p r wir haben gezeigt: alle neuen Kanten sind zulässig alte Kanten werden nur unzulässig, wenn sich inzidente Dreiecke ändern diese werden explizit behandelt

28 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

29 Zusätzliche Suchstruktur für p i p j p k T mit p r p i p j p k gerichteter kreisfreier Graph D eine Wurzel ein Blatt für jedes Dreieck in T innere Knoten: ehemalige Dreiecke in T innere Knoten verweisen auf 2 oder 3 neue Dreiecke

30 Beispiel Suchstruktur

31 Suchzeit für p i p j p k T Suchzeit mittels D ist linear zur Länge des Suchpfades gleich der Anzahl aller in D gespeicherten Dreiecke, welche den Punkt p r enthalten

32 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

33 Hilfspunkte p 1, p 2 p 1, p 2 dürfen DG(P) nicht verfälschen keine Koordinaten für p 1, p 2 Anpassung Test ob Kante in T unzulässig Anpassung Suche mit D (Lage der Punkt Gerade) l 1 beliebige horizontale Gerade unterhalb P l 2 beliebige horizontale Gerade oberhalb P zuerst p 1 auf l 1 beliebig hinreichend weit rechts dann p 2 auf l 2 beliebig hinreichend weit links

34 Hilfspunkte p 1, p 2 p 1, p 2 dürfen DG(P) nicht verfälschen keine Koordinaten für p 1, p 2 Anpassung Test ob Kante in T unzulässig Anpassung Suche mit D (Lage der Punkt Gerade) l 1 beliebige horizontale Gerade unterhalb P l 2 beliebige horizontale Gerade oberhalb P zuerst p 1 auf l 1 beliebig hinreichend weit rechts ausserhalb aller Kreise durch drei Punkte aus P rechts von Schnittpunkten l 1 Gerade durch zwei Punkte aus P dann p 2 auf l 2 beliebig hinreichend weit links

35 Hilfspunkte p 1, p 2 p 1, p 2 dürfen DG(P) nicht verfälschen keine Koordinaten für p 1, p 2 Anpassung Test ob Kante in T unzulässig Anpassung Suche mit D (Lage der Punkt Gerade) l 1 beliebige horizontale Gerade unterhalb P l 2 beliebige horizontale Gerade oberhalb P zuerst p 1 auf l 1 beliebig hinreichend weit rechts ausserhalb aller Kreise durch drei Punkte aus P rechts von Schnittpunkten l 1 Gerade durch zwei Punkte aus P dann p 2 auf l 2 beliebig hinreichend weit links ausserhalb aller Kreise durch drei Punkte aus P {p 1 } links von Schnittpunkten l 2 Gerade durch zwei Punkte aus P {p 1 }

36 Delaunay Triangulierung von P {p 1, p 2 } besteht aus einer Delaunay Triangulierung von P, Kanten von p 1 zu allen Eckpunkten der rechten konvexen Hülle von P, Kanten von p 2 zu allen Eckpunkten der linken konvexen Hülle von P, sowie der Kante p 1 p 2

37 Lagebeziehungen Punkt Strecke äquivalent für i, j 0: p j liegt links der orientierten Gerade von p i zu p 1 p j liegt links der orientierten Gerade von p 2 zu p i p i ist lexikographisch tiefer (nicht: kleiner) als p j

38 Unzulässigkeit von Kante p i p j p i p j, p i p j p k, p i p j p r in T i, j, k 0: Koordinaten bekannt: p r innerhalb Kreis K (p i, p j, p k )? Beweis. sonst min(i, j) < k? nicht beide i < 0, j < 0 genau eine der Zahlen i, j, k negativ? negative Punkt ausserhalb des Kreises durch die anderen sonst p 2 ausserhalb der Kreise durch die anderen Punkte

39 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

40 Definition Konfigurationenraum Quadrupel (X, Π, D, Z) X Menge von n Eingabeobjekten Π Menge von Konfigurationen D, Z Funktionen Π P(X) D( ) Objekte, die definieren Z( ) Objekte, die zerstören Nebenbedingung D( ) Z( ) = maximaler Grad d max{# (D( )) : Π} aktive Konfigurationen über Y X D( ) Y und Z( ) Y = T(Y ) Menge der aktiven Konfigurationen über Y X

41 Beispiel 10.20: Delaunay Triangulierung für P in allgemeiner Lage X = P Π nicht entartete Dreiecken mit Ecken in P D( ) Eckenmenge von Z( ) P int(u( )) d = 3

42 randomisiert inkrementelles Verfahren gesucht: T(X) zufällig gleichverteilt: Permutation x 1,..., x n von X X r := {x 1,..., x r }, Algorithmus bestimmt iterativ T(X r ) möglichst nur durch lokale Betrachtungen

43 Satz E[# (T(X r ) \ T(X r 1 ))] d r E[# (T(X r))]

44 Beweis Satz E[# (T(X r ) \ T(X r 1 ))] d r E[# (T(X r))] E[# (T(X r ) \ T(X r 1 )) X r = X r ] =E[# ({ T(X r ) : x r D( ) }) X r = X r ] = 1 # ({ T(X r ) : x r D( ) }) r x r X r = 1 # ({ T(X r ) : x D( ) }) r x X r = 1 # ({ x X r : x D( ) }) r = 1 r T(X r ) T(X r ) # (D( )) d r # (T(X r ))

45 Definition n C := T(X r ) r=1 S := # (Z( )) C

46 Satz Konfigurationenraum (X, Π, D, Z) S = n r=1 T(X r ) # (Z( )) Dann gilt E[S] n r=1 d 2 n r r E[# (T(X r))] r.

47 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

48 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

49 Definition 10.24: unser Konfigurationenraum P r := {p 1,..., p r } Ω := {p 2, p 1, p 0 } DG r := DG(Q r ), Erinnerung: Q r = Ω P r X := P \ {p 0 } = P n Π Tripel = (p i, p j, p k ) (X Ω) 3 mit D((p i, p j, p k )) := {p i, p j, p k } X Z((p i, p j, p k )) X \ {p i, p j, p k } d = 3 p i p j p k mathematisch positiv orientiert int(u( p i p j p k )) oder auf Kreisbogen von p i über p j zu p k

50 Delaunay-Winkel: aktive Konfigurationen G: beschränktes Gebiet von DG r Ecke p j mit Nachbarn p i und p k (p i, p j, p k ) T(X r ) für G: Anzahl Ecken = Anzahl Delaunay-Winkel = Anzahl Kanten

51 Lemma Beweis. Satz E[# (T(X r ) \ T(X r 1 ))] O(1) E[# (T(X r ) \ T(X r 1 ))] d r E[# (T(X r))] Satz 10.1: DG r hat höchstens 3(r + 3) 6 = 3r + 3 Kanten Inzidenzen von Kanten (beschränkte) Gebiete: # (T(X r )) 2(3r + 3) 3 = 6r + 3 d r E[# (T(X 3(6r + 3) r))] = r r 27

52 Lemma 10.26: Zusammenhang Triangulierung T Konfigurationen in T(X r ) Beweis. Wenn Dreieck zu T in Schritt r = p i p j p r ; p i p r, p j p r DG r Wenn p i p j p r zudem in T bleibt (Schritt r) (p i, p r, p j ) T(X r ) Delaunay-Winkel (bzw. (p j, p r, p i )) Satz 10.18

53 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

54 Lemma Die erwartete Anzahl von Dreiecken, die von DELAUNAYTRIANGULIERUNG(P) erzeugt wird, ist in O(n). Beweis. k = deg(p r, DG r ) maximal 2(k 3) + 3 = 2k 3 Dreiecke zu T genau k davon bleiben in T k # (T(X r ) \ T(X r 1 )) E[k] O(1) erwartete Anzahl erzeugter Dreiecke: E[2k 3] O(1).

55 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

56 Definition Triangulierung T von P Dreiecke T Z(P, ) := P int(u( )) Delaunay-Dreieck T am Ende (beliebigen) Schritt r (Zeile 19) C = C(p 1,..., p n ) Menge der Delaunay-Dreiecke

57 Satz [ ] E # (Z(P, )) O(n log n) C Beweis. [ ] [ E # (Z(P, )) E n r=1 C d 2 n r r E[# (T(X r))] r C # ( Z( ) )] = E[S] n 9 n ( ) 1 r O = n r r=1 O(n log n) n O(1/r) r=1

58 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

59 Satz Eine Delaunay Triangulierung einer Menge P von n Punkten der Ebene kann in O(n log n) erwarteter Zeit und mit erwartetem Speicherplatzbedarf in O(n) berechnet werden.

60 Beweis von Satz Algorithmus Speicherplatzbedarf von T: in O(n) Speicherplatzbedarf von D: linear in Anzahl erzeugter Dreiecke, Erwartungswert in O(n) Aufteilung der Laufzeit: Lokalisierung p r in T extra (Zeile 7) ohne Suche: Zeitaufwand linear in der Anzahl erzeugter Dreiecke Suchaufwand für p r :

61 Beweis von Satz Suchaufwand für p r : linear in der Anzahl besuchten Knoten von D = Anzahl erzeugter Dreiecke mit p r = 1+ Anzahl wieder aus T entfernter Dreiecke Abbildung auf Delaunay-Dreieck mit p r int(u( )), d.h. p r Z(P, ), und gleichzeitig mit aus T entfernt wurde. Zuordnung. Warum wurde aus T entfernt? durch neuen Punkt zerlegt := sonst Kantendrehung von p i p j mit = p i p j p k auch p i p j p l aus T verschwunden damals entweder p l oder p k als neuer Punkt hinzugefügt jeweils andere Dreieck oder p i p j p l war Delaunay-Dreieck p i p j unzulässig p i p j p k p i p j p l U( ) für festes p r kein Delaunay-Dreieck doppelt

62 Beweis von Satz Suchaufwand für p r : = 1+ Anzahl wieder aus T entfernter Dreiecke Abbildung auf Delaunay-Dreieck mit p r int(u( )), d.h. p r Z(P, ), und gleichzeitig mit aus T entfernt wurde. für festes p r kein Delaunay-Dreieck doppelt Suchzeit nach p r in T in O(1) + O(# ({ C : p r Z(P, ) })) Suchzeit aller n Punkte p 1,..., p n in ( ) O(n) + O # (Z(P, )) C Erwartungswert davon in O(n log n)

63 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller Ansatz Rahmen des Algorithmus Exaktheit des inkrementellen Ansatzes Zusätzliche Suchstruktur Hilfspunkte p 1, p 2 3 Konfigurationenräume 4 Analyse Algorithmus Anpassung Konfigurationenraum Erwartete Anzahl erzeugter Dreiecke Erwartete Zeit zum Lokalisieren von p r Aufwand für Delaunay Triangulierung 5 Beweis Satz 10.23

64 Satz Konfigurationenraum (X, Π, D, Z), S = n r=1 T(X r ) # (Z( )) Dann gilt E[S] n r=1 d 2 n r r E[# (T(X r))] r.

65 Beweis Satz wir schreiben T r := T(X r ) Umgruppierung der Summanden in S: S = n r=1 T r \T r 1 # (Z( )) = n 1 r=1 k(x r, y) := # ({ T r : y Z( ) }) für y X k(x r, y, x r ) := # ({ T r : y Z( ), x r D( ) }) T r \T r 1 # (Z( )) = T r \T r 1 # (Z( )) = T r \T r 1 # (Z( )) (1) y X\X r # ({ T r \ T r 1 : y Z( ) }) y X\X r k(x r, y, x r ). (2)

66 Beweis Satz k(x r, y) := # ({ T r : y Z( ) }) für y X k(x r, y, x r ) := # ({ T r : y Z( ), x r D( ) }) T r \T r 1 # (Z( )) = Rückwärtsanalyse, r < n, X r =: X r E[k(X r, y, x r ) X r = X r ] = y X\X r k(x r, y, x r ). (2) T r,y Z( ) T r,y Z( ) E # (Z( )) X r = X r d r T r \T r 1 P(x r D( )) d/r = d r k(x r, y) y X\X r k(x r, y) (3)

67 Beweis Satz k(x r, y) := # ({ T r : y Z( ) }) für y X E # (Z( )) X r = X r d r T r \T r 1 E[k(X r, x r+1 ) X r = X r ] = 1 n r k(x r, x r+1 ) = # (T r \ T r+1 ) E # (Z( )) X r = X r T r \T r 1 y X\X r y X\X r k(x r, y) (3) k(x r, y), d(n r) E[k(X r, x r+1 ) X r = X r ] r (4) d(n r) = E[# (T r \ T r+1 ) X r = X r ] r

68 Beweis Satz E # (Z( )) X r = X r T r \T r 1 = d(n r) E[k(X r, x r+1 ) X r = X r ] r (4) d(n r) E[# (T r \ T r+1 ) X r = X r ] r (5) E # (Z( )) T r \T r 1 d(n r) E[# (T r \ T r+1 )]. (6) r

69 Beweis Satz E # (Z( )) T r \T r 1 d(n r) E[# (T r \ T r+1 )]. (6) r C := C \ T n = n r=1 T r \ T n für C sei j( ) = j mit T j 1 \ T j ; i( ) = i mit T i \ T i 1 n 1 r=1 i( ) j( ) 1 d(n r) E[# (T r \ T r+1 )] = de r n (j( ) 1) j( ) 1 n 1 r=1 = n j( ) 1 1 [ C [ d(n r) E[# (T r \ T r+1 )] de r C n (j( ) 1) j( ) 1 n i( ) 1 = n i( ) i( ) ] n i( ) i( ) ] (7)

70 Beweis Satz E # (Z( )) T r \T r 1 n 1 r=1 [ d(n r) E[# (T r \ T r+1 )] de r C de [ n 1 r=1 d(n r) E[# (T r \ T r+1 )]. (6) r ] n r # (T r \ T r 1 ) r ] n i( ) i( ) (7) (8) n 1 E # (Z( )) de r=1 T r \T r 1 [ n 1 r=1 ] n r # (T r \ T r 1 ) r (9)

71 Beweis Satz S = n r=1 T r \T r 1 # (Z( )) = n 1 r=1 T r \T r 1 # (Z( )) (1) n 1 E # (Z( )) de r=1 T r \T r 1 [ n 1 r=1 ] n r # (T r \ T r 1 ) r (9) E[S] d n 1 r=1 n r n 1 n r d E [# (T r \ T r 1 )] d r r r E[# (T r)] r=1

Algorithmische Geometrie: Delaunay Triangulierung (Teil 1)

Algorithmische Geometrie: Delaunay Triangulierung (Teil 1) Algorithmische Geometrie: Delaunay Triangulierung (Teil 1) Nico Düvelmeyer WS 2009/2010, 26.1.2010 Überblick 1 Motivation Interpolation von Höhendaten 2 Triangulierungen von ebenen Punktmengen 3 Delaunay

Mehr

10 Delaunay Triangulierung

10 Delaunay Triangulierung 10 Delaunay Triangulierung 10.1 Motivation Interpolation von Höhendaten Ein Terrain ist der Graph einer Funktion f : A R 2 R. Typischerweise kennen wir f durch Messungen in endlich vielen Punkten P A,

Mehr

Algorithmische Geometrie: Rest Lokalisierung von Punkten; Voronoi Diagramme (1/2)

Algorithmische Geometrie: Rest Lokalisierung von Punkten; Voronoi Diagramme (1/2) 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

Mehr

Algorithmische Geometrie: Voronoi Diagramme (Teil 2)

Algorithmische Geometrie: Voronoi Diagramme (Teil 2) Algorithmische Geometrie: Voronoi Diagramme (Teil 2) Nico Düvelmeyer WS 2009/2010, 12.1.2010 Überblick 1 Definition und grundlegende Eigenschaften (Wied.) 2 Bestimmung des Voronoi Diagramms Gleitebenenverfahren

Mehr

2. Triangulation ebener Punktmengen. 3. Definition und Eigenschaften der Delaunay Triangulation

2. Triangulation ebener Punktmengen. 3. Definition und Eigenschaften der Delaunay Triangulation Delaunay Triangulation 1. Motivation 2. Triangulation ebener Punktmengen 3. Definition und Eigenschaften der Delaunay Triangulation 4. Berechnung der Delaunay Triangulation (randomisiert, inkrementell)

Mehr

Algorithmische Geometrie: Arrangements und

Algorithmische Geometrie: Arrangements und Algorithmische Geometrie: Arrangements und Dualität Nico Düvelmeyer WS 2009/2010, 19.1.2010 Überblick 1 Strahlenverfolgung und Diskrepanz 2 Dualität Dualitäts-Abbildung Transformation des Problems zur

Mehr

Geradenarrangements und Dualität von Punkten und Geraden

Geradenarrangements und Dualität von Punkten und Geraden Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 12.06.2012 Dualitätsabbildung Bisher haben wir Dualität für planare

Mehr

Geradenarrangements und Dualität von Punkten und Geraden

Geradenarrangements und Dualität von Punkten und Geraden Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.06.2014 1 Dualitätsabbildung Bisher haben wir Dualität für planare

Mehr

Geradenarrangements und Dualität von Punkten und Geraden

Geradenarrangements und Dualität von Punkten und Geraden Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 12.06.2012 Dualitätsabbildung Bisher haben wir Dualität für planare

Mehr

Delaunay-Triangulierungen

Delaunay-Triangulierungen Vorlesung Algorithmische Geometrie Delaunay-Triangulierungen INSTITUT FU R THEORETISCHE INFORMATIK FAKULTA T FU R INFORMATIK Martin No llenburg 10.06.2014 Grafik c Rodrigo I. Silveira 1 Dr. Martin No llenburg

Mehr

Vorlesung Algorithmische Geometrie Konvexe Hülle im R 3

Vorlesung Algorithmische Geometrie Konvexe Hülle im R 3 Vorlesung Algorithmische Geometrie Konvexe Hülle im R 3 LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Andreas Gemsa 26.06.2012 Prüfung! Termine: 20. Juli 27.

Mehr

Grundlagen zur Delaunay-Triangulierung und zur konvexen Hülle. zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung "Algorithmische Geometrie"):

Grundlagen zur Delaunay-Triangulierung und zur konvexen Hülle. zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung Algorithmische Geometrie): Grundlagen zur Delaunay-Triangulierung und zur konvexen Hülle zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung "Algorithmische Geometrie"): 1 Erzeugung des Voronoi-Diagramms (siehe Vorlesung "Algorithmische

Mehr

Algorithmische Geometrie, SoSe 2005 Skriptmitschrift vom 29. April 2005

Algorithmische Geometrie, SoSe 2005 Skriptmitschrift vom 29. April 2005 Algorithmische Geometrie, SoSe 2005 Skriptmitschrift vom 29. April 2005 Antonia Wittmers Igor Savchenko Konvexe Hüllen Inkrementeller Algorithmus für die konvexe Hülle Dabei heißt inkrementeller Algorithmus,

Mehr

Algorithmische Geometrie: Lineare Optimierung (I)

Algorithmische Geometrie: Lineare Optimierung (I) Algorithmische Geometrie: Lineare Optimierung (I) Nico Düvelmeyer WS 2009/2010, 17.11.2009 Überblick 1 Geometrie von Gießformen 2 Durchschnitte von Halbebenen 3 Inkrementeller Algorithmus Überblick 1 Geometrie

Mehr

Übungsblatt 7 - Voronoi Diagramme

Übungsblatt 7 - Voronoi Diagramme Karlsruher Institut für Technologie Algorithmische Geometrie Fakultät für Informatik Sommersemester 2012 ITI Wagner Martin Nöllenburg/Andreas Gemsa Übungsblatt 7 - Voronoi Diagramme 1 Voronoi-Zellen Sei

Mehr

Algorithmische Geometrie: Abfragen Orthogonaler Bereiche

Algorithmische Geometrie: Abfragen Orthogonaler Bereiche Algorithmische Geometrie: Abfragen Orthogonaler Bereiche Nico Düvelmeyer WS 2009/2010, 8.12.2009 Überblick 1 1-dimensionale Bereichsabfragen 2 Kd-Baum Struktur Aufbau Abfrage mit dem Kd-Baum 3 Range-Baum

Mehr

Algorithmische Geometrie

Algorithmische Geometrie Algorithmische Geometrie Martin Peternell TU Wien 31. Fortbildungstagung für Geometrie 2010, Strobl 1 Themen der Algorithmische Geometrie Entwurf von Algorithmen für geometrische Fragestellungen betreffend

Mehr

Distanzprobleme in der Ebene

Distanzprobleme in der Ebene Distanzprobleme in der Ebene (Literatur: deberg et al., Kapitel 7,9) Christian Knauer 1 Motivation: Alle nächsten Nachbarn Gegeben: Eine Menge von Punkten P in der Ebene Berechne: Zu jedem Punkt aus P

Mehr

Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 29.05.2011 Das Postamt-Problem b(p, q) = {x R 2 : xp = xq } p q h(p, q) h(q, p) = {x :

Mehr

Dualität + Quad-trees

Dualität + Quad-trees Übung Algorithmische Geometrie Dualität + Quad-trees LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Andreas Gemsa 30.06.2011 Übersicht Übungsblatt 10 - Dualität

Mehr

Algorithmische Geometrie: Schnittpunkte von Strecken

Algorithmische Geometrie: Schnittpunkte von Strecken Algorithmische Geometrie: Schnittpunkte von Strecken Nico Düvelmeyer WS 2009/2010, 3.11.2009 3 Phasen im Algorithmenentwurf 1. Konzentration auf das Hauptproblem 2. Verallgemeinerung auf entartete Eingaben

Mehr

Vorlesung Algorithmische Geometrie Konvexe Hülle in R 3

Vorlesung Algorithmische Geometrie Konvexe Hülle in R 3 Vorlesung Algorithmische Geometrie Konvexe Hülle in R 3 INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 15.07.2014 1 Wdh: Konvexe Hülle in R 2 (VL1) Def: Eine Menge S R 2

Mehr

Was bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone

Was bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone Was bisher geschah Motivation, Beispiele geometrische Objekte im R 2 : Punkt, Gerade, Halbebene, Strecke, Polygon, ebene Zerlegung in Regionen (planare Graphen) maschinelle Repräsentation geometrischer

Mehr

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.06.2014 1 Das Postamt-Problem b(p, q) = {x 2 R 2 : xp = xq } p q h(p, q) h(q, p) = {x

Mehr

9 Arrangements und Dualität

9 Arrangements und Dualität 9 Arrangements und Dualität 9.1 Strahlenverfolgung und Diskrepanz Wir betrachten eine Anwendung aus der Computergraphik: realistische Bilder von 3D- Szenen lassen sich durch ray tracing berechnen. Für

Mehr

Voronoi-Diagramme und Delaunay-Triangulierungen

Voronoi-Diagramme und Delaunay-Triangulierungen Vorlesung Algorithmische Geometrie Voronoi-Diagramme & Delaunay-Triangulierungen LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 07.06.2011 Erinnerung:

Mehr

Zusammenfassung Voronoi Diagramme

Zusammenfassung Voronoi Diagramme Zusammenfassung Voronoi Diagramme Elmar Langetepe University of Bonn Algorithmische Geometrie Voronoi Diagramme 03.06.11 c Elmar Langetepe SS 15 1 Kap. 5: Voronoi Diagramme Zerlegung der Ebene in Zellen

Mehr

Klausur. 18. Juli 2008, 10:15-12:15 Uhr. Name:... Matrikelnummer:... Anzahl beschriebener Blätter (ohne Aufgabenblatt):... D(p) : Y = p x X + p y

Klausur. 18. Juli 2008, 10:15-12:15 Uhr. Name:... Matrikelnummer:... Anzahl beschriebener Blätter (ohne Aufgabenblatt):... D(p) : Y = p x X + p y GRUNDZÜGE DER ALGORITHMISCHEN GEOMETRIE Klausur 18. Juli 2008, 10:15-12:15 Uhr Name:................................... Matrikelnummer:................................... Anzahl beschriebener Blätter (ohne

Mehr

Algorithmische Geometrie 3. Schnitte von Liniensegmenten

Algorithmische Geometrie 3. Schnitte von Liniensegmenten Algorithmische Geometrie 3. Schnitte von Liniensegmenten JProf. Dr. Heike Leitte Computergraphik und Visualisierung Inhaltsverzeichnis 1. Einführung 2. Konvexe Hülle 3. Schnitte von Liniensegmenten 4.

Mehr

Geometrie 2. Julian Fischer Julian Fischer Geometrie / 30

Geometrie 2. Julian Fischer Julian Fischer Geometrie / 30 Geometrie 2 Julian Fischer 6.7.2009 Julian Fischer Geometrie 2 6.7.2009 1 / 30 Themen 1 Bereichssuche und kd-bäume 1 Bereichssuche 2 kd-bäume 2 Divide and Conquer 1 Closest pair 2 Beispiel: Points (IOI

Mehr

Punktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung

Punktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung Punktlokalisation 1. Trapez-Zerlegungen 2. Eine Suchstruktur 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung 4. Analyse Punktlokalisation Einteilung in Streifen Anfragezeit:

Mehr

Geometrische Algorithmen Voronoi-Diagramme. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Voronoi-Diagramme

Geometrische Algorithmen Voronoi-Diagramme. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Voronoi-Diagramme Folie 1 von 32 Geometrische Algorithmen Voronoi-Diagramme Folie 2 von 32 Voronoi-Diagramme Übersicht Problemstellung Animation zur Konstruktion eines Voronoi-Diagramms Definition, Eigenschaften eines Voronoi-Diagramms

Mehr

Es sei P ein einfaches Polygon in der Ebene; P habe n Ecken. Hilfssatz: Zu jedem einfachen Polygon mit mehr als 3 Ecken existiert eine Diagonale.

Es sei P ein einfaches Polygon in der Ebene; P habe n Ecken. Hilfssatz: Zu jedem einfachen Polygon mit mehr als 3 Ecken existiert eine Diagonale. 6. Polygontriangulierung: Wie bewacht man eine Kunstgalerie? 6.1. Grundlegendes zu Polygonen Es sei P ein einfaches Polygon in der Ebene; P habe n Ecken. Definition: Hilfssatz: Zu jedem einfachen Polygon

Mehr

Polygontriangulierung

Polygontriangulierung Vorlesung Algorithmische Geometrie Polygone triangulieren LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 26.04.2011 Das Kunstgalerie-Problem

Mehr

(1) Geometrie. Vorlesung Computergraphik 3 S. Müller U N I V E R S I T Ä T KOBLENZ LANDAU

(1) Geometrie. Vorlesung Computergraphik 3 S. Müller U N I V E R S I T Ä T KOBLENZ LANDAU (1) Geometrie Vorlesung Computergraphik 3 S. Müller KOBLENZ LANDAU KOBLENZ LANDAU Organisatorisches Vorlesung CG 2+3 Die Veranstaltung besteht aus 2 Teilen, wobei in der Mitte und am Ende eine Klausur

Mehr

Das Voronoi Diagramm. 1. Definition. 2. Eigenschaften. 3. Größe und Speicherung. 4. Konstruktion. 5. Verwendung

Das Voronoi Diagramm. 1. Definition. 2. Eigenschaften. 3. Größe und Speicherung. 4. Konstruktion. 5. Verwendung Das Voronoi Diagramm 1. Definition 2. Eigenschaften 3. Größe und Speicherung 4. Konstruktion 5. Verwendung Das Voronoi- Diagramm Voronoi Regionen Euklidische Distanz: d(p,q) = (px-qx)^2+(py-qy)^2 Das Voronoi-Diagramm

Mehr

2.4. Triangulierung von Polygonen

2.4. Triangulierung von Polygonen Als drittes Problem haben wir in Kapitel 1 die Triangulierung von Polygonen identifiziert, die etwa bei der Überwachung eines Museums durch Kameras auftritt. F70 F71 Definition und Theorie: Definition

Mehr

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 24.05.2011 Motivation Gegeben eine Position p = (p x, p y )

Mehr

Optimales Routing. Paul Kunze

Optimales Routing. Paul Kunze Optimales Routing Paul Kunze 10.07.2015 Grundlagen Grundlagen endliche Menge an Punkten Φ = {x i } aus R 2 hier: gebildet durch Poisson-Punktprozess A = A D : Route zum Ziel D Φ. Abbildung auf einem Graphen

Mehr

Algorithmische Geometrie: Einstimmung

Algorithmische Geometrie: Einstimmung Algorithmische Geometrie: Einstimmung Nico Düvelmeyer WS 2009/2010, 20.10.2009 Überblick 1 Organisatorisches 2 Fachgebiet Typische Untersuchungsgegenstände Typische Anwendungsgebiete 3 Inhalte der Vorlesung

Mehr

Übungen zur Vorlesung Algorithmische Geometrie

Übungen zur Vorlesung Algorithmische Geometrie Prof. Dr. E. Wanke Düsseldorf, 22. Juni 2016 S. Hoffmann, M.Sc. Übungen zur Vorlesung Algorithmische Geometrie Hinweise Programmieraufgaben: Alle vorgeschlagenen Programmieraufgaben können Sie in einer

Mehr

für n-elementige Punktmenge jedenfalls Ω(n log n), da mit VD die konvexe Hülle in linearer Zeit bestimmbar.

für n-elementige Punktmenge jedenfalls Ω(n log n), da mit VD die konvexe Hülle in linearer Zeit bestimmbar. Konstruktion des Voronoi-Diagramms Untere Schranke für den Zeitaufwand: für n-elementige Punktmenge jedenfalls Ω(n log n), da mit VD die konvexe Hülle in linearer Zeit bestimmbar. Wenn man die n Punkte

Mehr

5. Bäume und Minimalgerüste

5. Bäume und Minimalgerüste 5. Bäume und Minimalgerüste Charakterisierung von Minimalgerüsten 5. Bäume und Minimalgerüste Definition 5.1. Es ein G = (V, E) ein zusammenhängender Graph. H = (V,E ) heißt Gerüst von G gdw. wenn H ein

Mehr

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 22.05.2012 Nachtrag: Dynamische Bereichsabfragen Letzte Woche: kd-trees und Range-Trees

Mehr

Quad-trees. Benjamin Niedermann Übung Algorithmische Geometrie

Quad-trees. Benjamin Niedermann Übung Algorithmische Geometrie Übung Algorithmische Geometrie Quad-trees LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann 02.07.2014 Übersicht Übungsblatt 11 - Quadtrees Motivation:

Mehr

Seminar. Algorithmische Geometrie

Seminar. Algorithmische Geometrie Seminar Algorithmische Geometrie WS 2000/2001 Thema: Konvexe Hülle Mirko Dennler 21439 Inhaltsverzeichnis Konvexe Hülle 1. Problemstellung 3 2. GRAHAMS SCAN 4-5 3. JARVIS' MARCH 5-6 4. QUICK HULL 6-7 5.

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

Algorithmische Techniken für Geometrische Probleme

Algorithmische Techniken für Geometrische Probleme Algorithmische Techniken für Geometrische Probleme Berthold Vöcking 14. Juni 2007 Inhaltsverzeichnis 1 Die Sweepline-Technik 2 1.1 Schnitte orthogonaler Liniensegmente............... 2 1.2 Schnitte beliebiger

Mehr

Quadtrees und Meshing

Quadtrees und Meshing Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 19.06.2012 Motivation: Meshing von Platinenlayouts Zur Simulation der Hitzeentwicklung

Mehr

Geometrische Algorithmen Einige einfache Definitionen: Ist ein Punkt in einem Polygon? Punkt-in-Polygon-Problem. Das Punkt-in-Polygon-Problem

Geometrische Algorithmen Einige einfache Definitionen: Ist ein Punkt in einem Polygon? Punkt-in-Polygon-Problem. Das Punkt-in-Polygon-Problem Geometrische Algorithmen Einige einfache Definitionen: Punkt: im n-dimensionalen Raum ist ein n-tupel (n Koordinaten) Gerade: definiert durch zwei beliebige Punkte auf ihr Strecke: definiert durch ihre

Mehr

Polygontriangulierung

Polygontriangulierung Übung Algorithmische Geometrie Polygontriangulierung LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann 07.05.204 Ablauf Vergabe der Projekte Übungsblatt

Mehr

Kombinatorische Optimierung

Kombinatorische Optimierung Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 16 Programm: Einführung

Mehr

Quadtrees und Meshing

Quadtrees und Meshing Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 24.06.2014 Motivation: Meshing von Platinenlayouts Zur Simulation der Hitzeentwicklung

Mehr

12. Flächenrekonstruktion aus 3D-Punktwolken und generalisierte Voronoi-Diagramme

12. Flächenrekonstruktion aus 3D-Punktwolken und generalisierte Voronoi-Diagramme 12. Flächenrekonstruktion aus 3D-Punktwolken und generalisierte Voronoi-Diagramme (Einfache) Voronoi-Diagramme: Motivation: gegeben: Raum R, darin Menge S von Objekten Frage nach Zerlegung von R in "Einflusszonen"

Mehr

Quadtrees und Meshing

Quadtrees und Meshing Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 19.06.2012 Motivation: Meshing von Platinenlayouts Zur Simulation der Hitzeentwicklung

Mehr

Lineare Programmierung

Lineare Programmierung Übung Algorithmische Geometrie Lineare Programmierung LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann 14.05.2014 Übersicht Übungsblatt 4 Lineares

Mehr

Hallo Welt für Fortgeschrittene

Hallo Welt für Fortgeschrittene Hallo Welt für Fortgeschrittene Geometrie II Benjamin Zenke Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Inhalt Closest Pair Divide & Conquer Bereichssuche Gitterverfahren k-d-tree Sweep-Line-Algorithmen

Mehr

5. Gitter, Gradienten, Interpolation Gitter. (Rezk-Salama, o.j.)

5. Gitter, Gradienten, Interpolation Gitter. (Rezk-Salama, o.j.) 5. Gitter, Gradienten, Interpolation 5.1. Gitter (Rezk-Salama, o.j.) Gitterklassifikation: (Bartz 2005) (Rezk-Salama, o.j.) (Bartz 2005) (Rezk-Salama, o.j.) Allgemeine Gitterstrukturen: (Rezk-Salama, o.j.)

Mehr

Diskrete Mathematik 1 WS 2008/09

Diskrete Mathematik 1 WS 2008/09 Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 008/09 Blatt

Mehr

Übersicht. Begriffserklärung Motivation / Anwendungen Drei Algorithmen Zusammenfassung Fragen Quellen. Triangulierung von Steffen Ernst 2

Übersicht. Begriffserklärung Motivation / Anwendungen Drei Algorithmen Zusammenfassung Fragen Quellen. Triangulierung von Steffen Ernst 2 Triangulierung Übersicht Begriffserklärung Motivation / Anwendungen Drei Algorithmen Zusammenfassung Fragen Quellen Triangulierung von Steffen Ernst 2 Begriffserklärung Ein Graph ist trianguliert, wenn

Mehr

Quadtrees und Meshing

Quadtrees und Meshing Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 21.06.2011 Motivation: Meshing von Platinenlayouts Zur Simulation

Mehr

Freie Bäume und Wälder

Freie Bäume und Wälder (Martin Dietzfelbinger, Stand 4.6.2011) Freie Bäume und Wälder In dieser Notiz geht es um eine besondere Sorte von (ungerichteten) Graphen, nämlich Bäume. Im Gegensatz zu gerichteten Bäumen nennt man diese

Mehr

Computer-Graphik I Verallgemeinerte Baryzentrische Koordinaten

Computer-Graphik I Verallgemeinerte Baryzentrische Koordinaten lausthal omputer-raphik I Verallgemeinerte Baryzentrische Koordinaten. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Verallgemeinerungen der baryzentr. Koord. 1. Was macht man im 2D bei

Mehr

Effizienter Planaritätstest Vorlesung am

Effizienter Planaritätstest Vorlesung am Effizienter Planaritätstest Vorlesung am 23.04.2014 INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER Satz Gegebenen einen Graphen G = (V, E) mit n Kanten und m Knoten, kann in O(n + m) Zeit

Mehr

7. Triangulation von einfachen Polygonen

7. Triangulation von einfachen Polygonen 1 7. Triangulation von einfachen Polygonen 2 Ziel Bessere Laufzeit als O(n log n) durch schnelleres Berechnen der Trapezzerlegung des Polygons. 3 Idee Finde Methode, den Anfangspunkt einer Strecke in der

Mehr

Berechnung approximierter Voronoi-Zellen auf geometrischen Datenströmen

Berechnung approximierter Voronoi-Zellen auf geometrischen Datenströmen Definition Berechnung approximierter Voronoi-Zellen auf geometrischen Datenströmen Seminar über Algorithmen WS 2005/2006 Vorgetragen von Oliver Rieger und Patrick-Thomas Chmielewski basierend auf der Arbeit

Mehr

Algorithmische Geometrie

Algorithmische Geometrie Algorithmische Geometrie Wladimir Emdin und Martin Dames Skript vom 3.6.2005 1 Wiederholung und Erganzung zu Fortune Sweep Gegeben: eine endliche Menge an Punkten S R 2 Gesucht: Das Voronoi-Diagramm von

Mehr

Übung Computergrafik 3

Übung Computergrafik 3 1.Übungsblatt: Geometrie Institut für Computervisualistik 17. Juni 2013 Aufgabe 1: Fragezeichen Gegeben: Menge zufälliger 2D-Punkte Entsprechende Anzahl zufälliger Farben Kegel zeichnen Spitze auf Punkt

Mehr

Jurij-Andrei Reichenecker 21. Juni Tessellationen

Jurij-Andrei Reichenecker 21. Juni Tessellationen Jurij-Andrei Reichenecker 21. Juni 2010 Tessellationen Seite 2 Tessellationen 21. Juni 2010 Jurij-Andrei Reichenecker Inhalt Einführung Voronoi Tessellation Algorithmus zur Erstellung von Voronoi Tessellationen

Mehr

Triangulierungen von Punktmengen und Polyedern

Triangulierungen von Punktmengen und Polyedern Triangulierungen von Punktmengen und Polyedern Vorlesung im Sommersemester 2 Technische Universität Berlin Jörg Rambau 2.4.2 Motivation und Beispiele Wir wollen hier den Begriff der Triangulierungen von

Mehr

Geometrische Algorithmen

Geometrische Algorithmen Geometrische Algorithmen Thomas Röfer Motivation Scan-line-Prinzip Konvexe Hülle Distanzprobleme Voronoi-Diagramm Rückblick Manipulation von Mengen Vorrangwarteschlange Heap HeapSort swap(a, 0, 4) 1 5

Mehr

Durchschnitte und Sichtbarkeit

Durchschnitte und Sichtbarkeit Durchschnitte und Sichtbarkeit Elmar Langetepe University of Bonn Algorithmische Geometrie Durchschnitte 11.05.15 c Elmar Langetepe SS 15 1 Durchschnitt von Halbgeraden/Konvexe Hülle Algorithmische Geometrie

Mehr

Schnittpunkt der Simpson Linien ist optimaler Standort

Schnittpunkt der Simpson Linien ist optimaler Standort Schnittpunkt der Simpson Linien ist optimaler Standort 1 2 Hilft dieses Lösungsverfahren bei der Lösung der gegebenen Real-World Probleme? Hilft dieses Lösungsverfahren bei der Lösung der gegebenen Real-World

Mehr

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 1 / 18 Was tun mit NP-harten Problemen? Viele praxisrelevante

Mehr

Einführung & Konvexe Hülle

Einführung & Konvexe Hülle Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.04.2012 AlgoGeom-Team Dozent Martin Nöllenburg noellenburg@kit.edu

Mehr

Die Abbildung (x 1 ;x 2 ) 7! (x 1 ;x 2 ; 1) ist eine Einbettung von R 2 in P 2 (als Mengen). Punkte mit z 6= 0 sind endliche" Punkte mit inhomogenen K

Die Abbildung (x 1 ;x 2 ) 7! (x 1 ;x 2 ; 1) ist eine Einbettung von R 2 in P 2 (als Mengen). Punkte mit z 6= 0 sind endliche Punkte mit inhomogenen K Kapitel IV Projektive Geometrie In diesem Kapitel wird eine kurze Einführung in die projektive Geometrie gegeben. Es sollen unendlich ferne Punkte mit Hilfe von homogene Koordinaten eingeführt werden und

Mehr

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme Theoretische Informatik Exkurs Rainer Schrader Exkurs: Komplexität von n Institut für Informatik 13. Mai 2009 1 / 34 2 / 34 Gliederung Entscheidungs- und Approximationen und Gütegarantien zwei Greedy-Strategien

Mehr

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 4. Januar 2011 Berthold Vöcking, Informatik 1 () Vorlesung

Mehr

Algorithmische Graphentheorie

Algorithmische Graphentheorie Algorithmische Graphentheorie Vorlesung 7 und 8: Euler- und Hamilton-Graphen Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 17. April 2018 1/96 WIEDERHOLUNG Eulersche

Mehr

Vorlesung Geometrische Algorithmen Generierung von Nicht-uniformen Netzen Sven Schuierer

Vorlesung Geometrische Algorithmen Generierung von Nicht-uniformen Netzen Sven Schuierer Vorlesung Geometrische Algorithmen Generierung von Nicht-uniformen Netzen Sven Schuierer Uberblick 1. Anwendung 2. Anforderungen an Netze 3. Quadrantenbaume Quadrantenbaume fur Punktemengen Bestimmung

Mehr

Algorithmische Geometrie 5. Triangulierung von Polygonen

Algorithmische Geometrie 5. Triangulierung von Polygonen Algorithmische Geometrie 5. Triangulierung von Polygonen JProf. Dr. Heike Leitte Computergraphik und Visualisierung Inhaltsverzeichnis 1. Einführung 2. Konvexe Hülle 3. Schnitte von Liniensegmenten 4.

Mehr

Datenstrukturen und Algorithmen (SS 2013)

Datenstrukturen und Algorithmen (SS 2013) Datenstrukturen und Algorithmen (SS 2013) Übungsblatt 10 Abgabe: Montag, 08.07.2013, 14:00 Uhr Die Übungen sollen in Gruppen von zwei bis drei Personen bearbeitet werden. Schreiben Sie die Namen jedes

Mehr

Beweis: Färbe jede Kante zufällig und unabhängig mit Ws 1 2. Ereignis A i : i-te Clique K (i), i = 1,..., ( n K (i)

Beweis: Färbe jede Kante zufällig und unabhängig mit Ws 1 2. Ereignis A i : i-te Clique K (i), i = 1,..., ( n K (i) Die Probabilistische Methode Beobachtung: Besitzt ein Ereignis Ws > 0, so muss es existieren! Notation: Sei K n der komplette Graph mit n Knoten und ( n 2) Kanten. Satz Falls 2 (k 2) 1 > ( n k), existiert

Mehr

Übung Computergrafik 3

Übung Computergrafik 3 Übung Computergrafik 3 1.Übungsblatt: Geometrie Stephan Groß (Dank an Irini Schmidt und Jakob Bärz) Institut für Computervisualistik Universität Koblenz-Landau 6. Juli 2011 Aufgabe 1: Fragezeichen Gegeben:

Mehr

Hallo Welt für Fortgeschrittene

Hallo Welt für Fortgeschrittene Hallo Welt für Fortgeschrittene Geometrie I Markus Götze Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Gliederung Grundlagen Polygone ccw Pick's Theorem Konvexe Hülle Hallo Welt für Fortgeschrittene

Mehr

2.2. Schnitte von Liniensegmenten

2.2. Schnitte von Liniensegmenten Wir wenden uns nun dem Problem (2) aus 1 zu. F15 Aus zwei Mengen S1, S2 von Liniensegmenten möchten wir alle Schnittpunkte der Segmente aus S1 mit denen aus S2 ermitteln. Wir legen fest, dass sich zwei

Mehr

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7 1 Kürzeste Pfade Woche 6 7 Hier arbeiten wir mit gewichteten Graphen, d.h. Graphen, deren Kanten mit einer Zahl gewichtet werden. Wir bezeichnen die Gewichtsfunktion mit l : E R. Wir wollen einen kürzesten

Mehr

Wiederholung. Divide & Conquer Strategie

Wiederholung. Divide & Conquer Strategie Wiederholung Divide & Conquer Strategie Binäre Suche O(log n) Rekursives Suchen im linken oder rechten Teilintervall Insertion-Sort O(n 2 ) Rekursives Sortieren von a[1..n-1], a[n] Einfügen von a[n] in

Mehr

Das Divide - and - Conquer Prinzip. Quicksort Formulierung und Analyse des Prinzips Geometrisches Divide and Conquer - Closest-Pair - Segmentschnitt

Das Divide - and - Conquer Prinzip. Quicksort Formulierung und Analyse des Prinzips Geometrisches Divide and Conquer - Closest-Pair - Segmentschnitt Divide and Conquer Das Divide - and - Conquer Prinzip Quicksort Formulierung und Analyse des Prinzips Geometrisches Divide and Conquer - Closest-Pair - Segmentschnitt 2 Quicksort: Sortieren durch Teilen

Mehr

6. Übung zur Linearen Optimierung SS08

6. Übung zur Linearen Optimierung SS08 6 Übung zur Linearen Optimierung SS08 1 Sei G = (V, E) ein schlichter ungerichteter Graph mit n Ecken und m Kanten Für eine Ecke v V heißt die Zahl der Kanten (u, v) E Grad der Ecke (a) Ist die Anzahl

Mehr

Geometrie. Hallo Welt! für Fortgeschrittene Simon Kuhnle. 11. Juli

Geometrie. Hallo Welt! für Fortgeschrittene Simon Kuhnle. 11. Juli Geometrie Hallo Welt! für Fortgeschrittene 2008 Simon Kuhnle sisikuhn@stud.informatik.uni-erlangen.de 11. Juli 2008 Simon Kuhnle Geometrie 11.07.2008 1 / 33 Übersicht Übersicht 1 Grundlagen 2 ccw 3 Konvexe

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Kürzeste Wege Maike Buchin 4. und 6.7.2017 Einführung Motivation: Bestimmung von kürzesten Wegen ist in vielen Anwendungen, z.b. Routenplanung, ein wichtiges Problem. Allgemeine

Mehr

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme 10 Matching-Probleme 10.1 Definition von Matching-Probleme Definition 21 [2-dimensionales Matching] Sei G = (V, E) ein ungerichteter Graph und E E. E ist ein Matching, wenn für alle Kantenpaare e 1, e

Mehr

Nachbarschaft, Grad, regulär, Inzidenz

Nachbarschaft, Grad, regulär, Inzidenz Nachbarschaft, Grad, regulär, Inzidenz Definition Eigenschaften von Graphen Sei G = (V, E) ein ungerichteter Graph. 1 Die Nachbarschaftschaft Γ(u) eines Knoten u V ist Γ(u) := {v V {u, v} E}. 2 Der Grad

Mehr

Wir wollen nun die Behauptung beweisen, dass die Laufzeit von SELECT linear ist, also dass T (n) = O(n) gilt.

Wir wollen nun die Behauptung beweisen, dass die Laufzeit von SELECT linear ist, also dass T (n) = O(n) gilt. Abschätzung für die Rekursion von SELECT Wir wollen nun die Behauptung beweisen, dass die Laufzeit von SELECT linear ist, also dass T (n) = O(n) gilt. Wir nehmen erst einmal an, dass eine Konstante d existiert,

Mehr

Triangulierung von einfachen Polygonen

Triangulierung von einfachen Polygonen Triangulierung von einfachen Polygonen - Seminarvortrag von Tobias Kyrion - Inhalt: 1.1 Die Problemstellung Quellenangabe 1.1 Die Problemstellung Definition Polygon: endlich viele paarweise verschiedene

Mehr

Vorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Vorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 24.04.2011 Überlagern von Kartenebenen Beispiel: Gegeben zwei verschiedene Kartenebenen,

Mehr

Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n i =.

Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n i =. 2. Der Blum-Floyd-Pratt-Rivest-Tarjan Selektions-Algorithmus Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n

Mehr