Geometrie 2. Julian Fischer Julian Fischer Geometrie / 30

Größe: px
Ab Seite anzeigen:

Download "Geometrie 2. Julian Fischer Julian Fischer Geometrie / 30"

Transkript

1 Geometrie 2 Julian Fischer Julian Fischer Geometrie / 30

2 Themen 1 Bereichssuche und kd-bäume 1 Bereichssuche 2 kd-bäume 2 Divide and Conquer 1 Closest pair 2 Beispiel: Points (IOI 2006) 3 Delaunay-Triangulation und Voronoi-Diagramme 1 Definitionen 2 Voronoi-Diagramme 3 Algorithmus für Delaunay-Triangulation Julian Fischer Geometrie / 30

3 Bereichssuche Problem: finde effizient alle Punkte in einem Bereich (Rechteck, Polygon etc.) Julian Fischer Geometrie / 30

4 Bereichssuche Problem: finde effizient alle Punkte in einem Bereich (Rechteck, Polygon etc.) meistens: zahlreiche Anfragen Julian Fischer Geometrie / 30

5 Bereichssuche Problem: finde effizient alle Punkte in einem Bereich (Rechteck, Polygon etc.) meistens: zahlreiche Anfragen Anzahl gesuchter Punkte Anzahl aller Punkte Julian Fischer Geometrie / 30

6 Bereichssuche Problem: finde effizient alle Punkte in einem Bereich (Rechteck, Polygon etc.) meistens: zahlreiche Anfragen Anzahl gesuchter Punkte Anzahl aller Punkte deshalb ist naiver Ansatz ineffizient Julian Fischer Geometrie / 30

7 Gitterverfahren Ansatz: sortiere Punkte in (regelmäßiges) Gitter ein schnelles Verwerfen von Punkten, die nicht in Bereich liegen können, möglich Julian Fischer Geometrie / 30

8 Gitterverfahren Ansatz: sortiere Punkte in (regelmäßiges) Gitter ein schnelles Verwerfen von Punkten, die nicht in Bereich liegen können, möglich Vorteile: leicht zu implementieren oft deutliche Verbesserung der Laufzeit Julian Fischer Geometrie / 30

9 Gitterverfahren Ansatz: sortiere Punkte in (regelmäßiges) Gitter ein schnelles Verwerfen von Punkten, die nicht in Bereich liegen können, möglich Vorteile: leicht zu implementieren oft deutliche Verbesserung der Laufzeit Probleme: Wahl der Gittergröße: nicht zu wenige, aber auch nicht zu viele Punkte je Gitterzelle Punkte können ungleichmäßig verteilt sein (z.b. entlang Diagonale) Julian Fischer Geometrie / 30

10 Gitterverfahren Julian Fischer Geometrie / 30

11 Gitterverfahren Julian Fischer Geometrie / 30

12 kd-bäume Idee: teile Punktmenge P rekursiv entlang von Hyperebenen Julian Fischer Geometrie / 30

13 kd-bäume Idee: teile Punktmenge P rekursiv entlang von Hyperebenen Hyperebenen am Besten zu Koordinatenachsen senkrecht Julian Fischer Geometrie / 30

14 kd-bäume Idee: teile Punktmenge P rekursiv entlang von Hyperebenen Hyperebenen am Besten zu Koordinatenachsen senkrecht wechsle Teilungsdimensionen gleichmäßig durch Julian Fischer Geometrie / 30

15 kd-bäume Idee: teile Punktmenge P rekursiv entlang von Hyperebenen Hyperebenen am Besten zu Koordinatenachsen senkrecht wechsle Teilungsdimensionen gleichmäßig durch Abbruch, wenn Anzahl der Punkte in Bereich gewissen Wert unterschreitet Julian Fischer Geometrie / 30

16 kd-bäume speichere die Aufsplittungsvorgänge als Baum Julian Fischer Geometrie / 30

17 kd-bäume speichere die Aufsplittungsvorgänge als Baum in Blättern werden die Punkte im zugehörigen Teil des R n gespeichert Julian Fischer Geometrie / 30

18 kd-bäume speichere die Aufsplittungsvorgänge als Baum in Blättern werden die Punkte im zugehörigen Teil des R n gespeichert sinnvolle Auswahlregeln für x k -Koordinate der Splithyperebene: Julian Fischer Geometrie / 30

19 kd-bäume speichere die Aufsplittungsvorgänge als Baum in Blättern werden die Punkte im zugehörigen Teil des R n gespeichert sinnvolle Auswahlregeln für x k -Koordinate der Splithyperebene: nehme x k -Koordinate eines zufällig ausgewählten Punkts Julian Fischer Geometrie / 30

20 kd-bäume speichere die Aufsplittungsvorgänge als Baum in Blättern werden die Punkte im zugehörigen Teil des R n gespeichert sinnvolle Auswahlregeln für x k -Koordinate der Splithyperebene: nehme x k -Koordinate eines zufällig ausgewählten Punkts wähle Median der x k -Koordinaten der Punkte Julian Fischer Geometrie / 30

21 kd-bäume speichere die Aufsplittungsvorgänge als Baum in Blättern werden die Punkte im zugehörigen Teil des R n gespeichert sinnvolle Auswahlregeln für x k -Koordinate der Splithyperebene: nehme x k -Koordinate eines zufällig ausgewählten Punkts wähle Median der x k -Koordinaten der Punkte Achtung: ordne Punkte, die auf Splitebene liegen, einheitlich einem Gebiet zu Julian Fischer Geometrie / 30

22 kd-bäume speichere die Aufsplittungsvorgänge als Baum in Blättern werden die Punkte im zugehörigen Teil des R n gespeichert sinnvolle Auswahlregeln für x k -Koordinate der Splithyperebene: nehme x k -Koordinate eines zufällig ausgewählten Punkts wähle Median der x k -Koordinaten der Punkte Achtung: ordne Punkte, die auf Splitebene liegen, einheitlich einem Gebiet zu also z.b. Punkte mit x k < φ in eine Splithälfte, Punkte mit x k φ in die andere Splithälfte Julian Fischer Geometrie / 30

23 kd-bäume Beispiel: Abbruch bei 3 oder weniger Punkten in Bereich Julian Fischer Geometrie / 30

24 kd-bäume Beispiel: Abbruch bei 3 oder weniger Punkten in Bereich Julian Fischer Geometrie / 30

25 kd-bäume Beispiel: Abbruch bei 3 oder weniger Punkten in Bereich Julian Fischer Geometrie / 30

26 kd-bäume Beispiel: Abbruch bei 3 oder weniger Punkten in Bereich Julian Fischer Geometrie / 30

27 kd-bäume Beispiel: Abbruch bei 3 oder weniger Punkten in Bereich Julian Fischer Geometrie / 30

28 kd-bäume Vorteile: effizient auch bei ungleichmäßiger Verteilung der Punkte, sofern n P Julian Fischer Geometrie / 30

29 kd-bäume Vorteile: effizient auch bei ungleichmäßiger Verteilung der Punkte, sofern n P Aufbau O(P log P) Julian Fischer Geometrie / 30

30 kd-bäume Vorteile: effizient auch bei ungleichmäßiger Verteilung der Punkte, sofern n P Aufbau O(P log P) Anfrage O(P 1 1 n + a) Julian Fischer Geometrie / 30

31 kd-bäume Vorteile: effizient auch bei ungleichmäßiger Verteilung der Punkte, sofern n P Aufbau O(P log P) Anfrage O(P 1 1 n + a) Nachteile: vergleichsweise aufwendig zu implementieren Julian Fischer Geometrie / 30

32 Divide and Conquer Prinzip: rekursives Aufteilen eines größeren Problems auf kleinere Teilprobleme liefert häufig verbesserte asymptotische Laufzeit Julian Fischer Geometrie / 30

33 Divide and Conquer Prinzip: rekursives Aufteilen eines größeren Problems auf kleinere Teilprobleme liefert häufig verbesserte asymptotische Laufzeit Laufzeit enthält typischerweise Faktor log n Julian Fischer Geometrie / 30

34 Divide and Conquer Prinzip: rekursives Aufteilen eines größeren Problems auf kleinere Teilprobleme liefert häufig verbesserte asymptotische Laufzeit Laufzeit enthält typischerweise Faktor log n Beispiel: Mergesort Julian Fischer Geometrie / 30

35 Closest pair Problem: Gegeben ist Punktmenge M; finde die beiden Punkte mit dem geringsten Abstand zueinander Julian Fischer Geometrie / 30

36 Closest pair Problem: Gegeben ist Punktmenge M; finde die beiden Punkte mit dem geringsten Abstand zueinander Idee: teile Punktmenge entlang einer Geraden (z.b. Parallele zu x-achse) in zwei Mengen M 1, M 2 auf Julian Fischer Geometrie / 30

37 Closest pair Problem: Gegeben ist Punktmenge M; finde die beiden Punkte mit dem geringsten Abstand zueinander Idee: teile Punktmenge entlang einer Geraden (z.b. Parallele zu x-achse) in zwei Mengen M 1, M 2 auf berechne das Closest pair in M 1 und das Closest pair in M 2 (rekursiv) Julian Fischer Geometrie / 30

38 Closest pair Problem: Gegeben ist Punktmenge M; finde die beiden Punkte mit dem geringsten Abstand zueinander Idee: teile Punktmenge entlang einer Geraden (z.b. Parallele zu x-achse) in zwei Mengen M 1, M 2 auf berechne das Closest pair in M 1 und das Closest pair in M 2 (rekursiv) berechne nun noch die Punkte p 1 M 1, p 2 M 2 mit dem geringsten Abstand Julian Fischer Geometrie / 30

39 Closest pair dies ist in Linearzeit möglich: Julian Fischer Geometrie / 30

40 Closest pair dies ist in Linearzeit möglich: d min bislang geringster gefundener Abstand Julian Fischer Geometrie / 30

41 Closest pair dies ist in Linearzeit möglich: d min bislang geringster gefundener Abstand sortiere alle Punkte aus M 1 und M 2 aus, deren Abstand von der Splitgeraden d min überschreitet Julian Fischer Geometrie / 30

42 Closest pair dies ist in Linearzeit möglich: d min bislang geringster gefundener Abstand sortiere alle Punkte aus M 1 und M 2 aus, deren Abstand von der Splitgeraden d min überschreitet ordne verbleibende Punkte in M 1 und in M 2 jeweils nach x-koordinate Julian Fischer Geometrie / 30

43 Closest pair durchlaufe Punkte in M 1 nach x-koordinate sortiert und berechne Abstand zu Punkten aus M 2 Julian Fischer Geometrie / 30

44 Closest pair durchlaufe Punkte in M 1 nach x-koordinate sortiert und berechne Abstand zu Punkten aus M 2 dabei müssen nur Punkte aus M 2 berücksichtigt werden, deren horizontaler Abstand zum momentanen Punkt aus M 1 d min nicht übersteigt Julian Fischer Geometrie / 30

45 Closest pair durchlaufe Punkte in M 1 nach x-koordinate sortiert und berechne Abstand zu Punkten aus M 2 dabei müssen nur Punkte aus M 2 berücksichtigt werden, deren horizontaler Abstand zum momentanen Punkt aus M 1 d min nicht übersteigt Laufzeit insgesamt O(n log n) Julian Fischer Geometrie / 30

46 IOI 2006: Points gegeben ist eine Menge von entweder rot oder grün gefärbten Punkten keine drei Punkte sind kollinear Julian Fischer Geometrie / 30

47 IOI 2006: Points gegeben ist eine Menge von entweder rot oder grün gefärbten Punkten keine drei Punkte sind kollinear oben rechts bzw. links befindet sich je ein grüner Punkt, unten rechts bzw. links je ein roter Punkt alle anderen Punkte sind in dem Viereck, das diese vier Punkte bilden, enthalten Julian Fischer Geometrie / 30

48 IOI 2006: Points Aufgabe: verbinde alle roten Punkte bzw. alle grünen Punkte durch überschneidungsfreie Strecken miteinander Julian Fischer Geometrie / 30

49 IOI 2006: Points Aufgabe: verbinde alle roten Punkte bzw. alle grünen Punkte durch überschneidungsfreie Strecken miteinander Julian Fischer Geometrie / 30

50 IOI 2006: Points Vorgehensweise: betrachte Dreieck mit zwei roten (grünen) Eckpunkten und einem grünen (roten) Eckpunkt die beiden gleichfarbigen Eckpunkte seien bereits verbunden Julian Fischer Geometrie / 30

51 IOI 2006: Points falls nur Punkte einer Farbe in Dreieck: verbinde alle Punkte innerhalb des Dreiecks mit einem Eckpunkt der selben Farbe. Julian Fischer Geometrie / 30

52 IOI 2006: Points falls nur Punkte einer Farbe in Dreieck: verbinde alle Punkte innerhalb des Dreiecks mit einem Eckpunkt der selben Farbe. Julian Fischer Geometrie / 30

53 IOI 2006: Points falls Punkte beider Farben in Dreieck: verbinde Eckpunkt, dessen Farbe bei den Ecken des Dreiecks nur einmal auftritt, mit zufälligem Punkt der selben Farbe innerhalb des Dreiecks Julian Fischer Geometrie / 30

54 IOI 2006: Points falls Punkte beider Farben in Dreieck: verbinde Eckpunkt, dessen Farbe bei den Ecken des Dreiecks nur einmal auftritt, mit zufälligem Punkt der selben Farbe innerhalb des Dreiecks Julian Fischer Geometrie / 30

55 IOI 2006: Points falls Punkte beider Farben in Dreieck: verbinde Eckpunkt, dessen Farbe bei den Ecken des Dreiecks nur einmal auftritt, mit zufälligem Punkt der selben Farbe innerhalb des Dreiecks rufe Algorithmus rekursiv auf die Dreiecke auf, die man durch Unterteilung des alten Dreiecks mit dem zufällig gewählten Punkt erhält Julian Fischer Geometrie / 30

56 IOI 2006: Points alle Punkte sind in dem äußeren Viereck enthalten Julian Fischer Geometrie / 30

57 IOI 2006: Points alle Punkte sind in dem äußeren Viereck enthalten deshalb können wir die gleichfarbigen Eckpunkte des Viereck verbinden,... Julian Fischer Geometrie / 30

58 IOI 2006: Points alle Punkte sind in dem äußeren Viereck enthalten deshalb können wir die gleichfarbigen Eckpunkte des Viereck verbinden, das Viereck in zwei Dreiecke zerlegen und den Algorithmus auf diese beiden Dreiecke aufrufen Julian Fischer Geometrie / 30

59 Definitionen gegeben sei Punktmenge M im R n Julian Fischer Geometrie / 30

60 Definitionen gegeben sei Punktmenge M im R n Voronoi-Diagramm: Menge von Regionen Julian Fischer Geometrie / 30

61 Definitionen gegeben sei Punktmenge M im R n Voronoi-Diagramm: Menge von Regionen alle Punkte innerhalb einer Region besitzen denselben Punkt aus M als nächsten Nachbarn Julian Fischer Geometrie / 30

62 Definitionen gegeben sei Punktmenge M im R n Voronoi-Diagramm: Menge von Regionen alle Punkte innerhalb einer Region besitzen denselben Punkt aus M als nächsten Nachbarn Voronoi-Diagramm ist gröbste solche Zerlegung des Raums Julian Fischer Geometrie / 30

63 Definitionen gegeben sei Menge von Dreiecken Julian Fischer Geometrie / 30

64 Definitionen gegeben sei Menge von Dreiecken Umkreisbedingung: Im Inneren des Umkreises jedes Dreiecks liegt kein Eckpunkt eines anderen Dreiecks Julian Fischer Geometrie / 30

65 Definitionen gegeben sei Punktmenge M im R n Julian Fischer Geometrie / 30

66 Definitionen gegeben sei Punktmenge M im R n betrachte eine Triangulation der gegebenen Punktmenge Julian Fischer Geometrie / 30

67 Definitionen gegeben sei Punktmenge M im R n betrachte eine Triangulation der gegebenen Punktmenge diese heißt Delaunay-Triangulation, wenn sie die Umkreisbedingung erfüllt Julian Fischer Geometrie / 30

68 Definitionen gegeben sei Punktmenge M im R n betrachte eine Triangulation der gegebenen Punktmenge diese heißt Delaunay-Triangulation, wenn sie die Umkreisbedingung erfüllt mehrdimensionaler Fall: Definition analog, nur mit Simplizes statt Dreiecken Julian Fischer Geometrie / 30

69 Definitionen Delaunay-Triangulation ist dual zum Voronoi-Diagramm: Julian Fischer Geometrie / 30

70 Definitionen Delaunay-Triangulation ist dual zum Voronoi-Diagramm: Dualgraph von Delaunay-Triangulation ist Voronoi-Diagramm Julian Fischer Geometrie / 30

71 Definitionen Berechnung des Voronoi-Diagramms aus Delaunay-Triangulation möglich: Julian Fischer Geometrie / 30

72 Definitionen Berechnung des Voronoi-Diagramms aus Delaunay-Triangulation möglich: Berechnung des zum Punkt P gehörigen Gebiets: Julian Fischer Geometrie / 30

73 Definitionen Berechnung des Voronoi-Diagramms aus Delaunay-Triangulation möglich: Berechnung des zum Punkt P gehörigen Gebiets: betrachte Halbräume, die P enthalten und durch die Mittelsenkrechten der Verbindungsstrecken zwischen P und den Nachbarn von P begrenzt werden Julian Fischer Geometrie / 30

74 Definitionen Berechnung des Voronoi-Diagramms aus Delaunay-Triangulation möglich: Berechnung des zum Punkt P gehörigen Gebiets: betrachte Halbräume, die P enthalten und durch die Mittelsenkrechten der Verbindungsstrecken zwischen P und den Nachbarn von P begrenzt werden das gesuchte Gebiet ist der Schnitt diese Halbräume Julian Fischer Geometrie / 30

75 Definitionen Berechnung des Voronoi-Diagramms aus Delaunay-Triangulation möglich: Berechnung des zum Punkt P gehörigen Gebiets: betrachte Halbräume, die P enthalten und durch die Mittelsenkrechten der Verbindungsstrecken zwischen P und den Nachbarn von P begrenzt werden das gesuchte Gebiet ist der Schnitt diese Halbräume Umgekehrt kann aus Voronoi-Diagramm sofort die Delaunay-Triangulation ermittelt werden Julian Fischer Geometrie / 30

76 Voronoi-Diagramme Berechnung durch iteratives Einfügen von Punkten und Aktualisieren des Diagramms Julian Fischer Geometrie / 30

77 Voronoi-Diagramme Berechnung durch iteratives Einfügen von Punkten und Aktualisieren des Diagramms Bei Einfügung eines neuen Punkts müssen nur die Zelle, in der er liegt, sowie (rekursiv) alle Nachbarzellen von geänderten Zellen aktualisiert werden Julian Fischer Geometrie / 30

78 Voronoi-Diagramme Berechnung durch iteratives Einfügen von Punkten und Aktualisieren des Diagramms Bei Einfügung eines neuen Punkts müssen nur die Zelle, in der er liegt, sowie (rekursiv) alle Nachbarzellen von geänderten Zellen aktualisiert werden Aktualisierung einer Zelle geschieht also durch Schnitt eines Simplex mit einem Halbraum Julian Fischer Geometrie / 30

79 Delaunay-Triangulation (2D) wir betrachten nur den zweidimensionalen Fall Julian Fischer Geometrie / 30

80 Delaunay-Triangulation (2D) wir betrachten nur den zweidimensionalen Fall füge iterativ Punkte in zufälliger Reihenfolge hinzu Julian Fischer Geometrie / 30

81 Delaunay-Triangulation (2D) wir betrachten nur den zweidimensionalen Fall füge iterativ Punkte in zufälliger Reihenfolge hinzu bei Hinzufügen eines neuen Punkts: teile Dreieck, in dem er liegt, in drei neue Dreiecke auf Julian Fischer Geometrie / 30

82 Delaunay-Triangulation (2D) wir betrachten nur den zweidimensionalen Fall füge iterativ Punkte in zufälliger Reihenfolge hinzu bei Hinzufügen eines neuen Punkts: teile Dreieck, in dem er liegt, in drei neue Dreiecke auf falls ein Dreieck die Umkreisbedingung verletzt, gibt es ein anliegendes Dreieck, so dass der dritte Punkt dieses anliegenden Dreiecks die Bedingung verletzt Julian Fischer Geometrie / 30

83 Delaunay-Triangulation (2D) falls ein Dreieck die Umkreisbedingung verletzt, gibt es ein anliegendes Dreieck, so dass der dritte Punkt dieses anliegenden Dreiecks die Bedingung verletzt Julian Fischer Geometrie / 30

84 Delaunay-Triangulation (2D) falls ein Dreieck die Umkreisbedingung verletzt, gibt es ein anliegendes Dreieck, so dass der dritte Punkt dieses anliegenden Dreiecks die Bedingung verletzt wir betrachten dann das von diesen Punkten gebildete Viereck, das entlang einer Diagonale unterteilt wurde, und ändern die Unterteilungsdiagonale Julian Fischer Geometrie / 30

85 Delaunay-Triangulation (2D) falls ein Dreieck die Umkreisbedingung verletzt, gibt es ein anliegendes Dreieck, so dass der dritte Punkt dieses anliegenden Dreiecks die Bedingung verletzt wir betrachten dann das von diesen Punkten gebildete Viereck, das entlang einer Diagonale unterteilt wurde, und ändern die Unterteilungsdiagonale prüfe dann rekursiv für benachbarte Dreiecke, ob Umkreisbedingung verletzt Julian Fischer Geometrie / 30

86 Delaunay-Triangulation (2D) naive Bestimmung des Dreiecks, in dem neuer Punkt landet: O(n 2 ) Julian Fischer Geometrie / 30

87 Delaunay-Triangulation (2D) naive Bestimmung des Dreiecks, in dem neuer Punkt landet: O(n 2 ) bessere Methode: DAG, in dem Änderungen an der Triangulationsstruktur gespeichert werden Julian Fischer Geometrie / 30

88 Delaunay-Triangulation (2D) naive Bestimmung des Dreiecks, in dem neuer Punkt landet: O(n 2 ) bessere Methode: DAG, in dem Änderungen an der Triangulationsstruktur gespeichert werden bei Aufteilung eines Dreiecks: füge drei neue Knoten und Kanten vom altem Knoten zu neuen Knoten ein Julian Fischer Geometrie / 30

89 Delaunay-Triangulation (2D) naive Bestimmung des Dreiecks, in dem neuer Punkt landet: O(n 2 ) bessere Methode: DAG, in dem Änderungen an der Triangulationsstruktur gespeichert werden bei Aufteilung eines Dreiecks: füge drei neue Knoten und Kanten vom altem Knoten zu neuen Knoten ein bei Kanten flip : füge zwei neue Knoten ein; füge Kanten vom alten Knoten zu neuen Knoten ein Julian Fischer Geometrie / 30

90 Delaunay-Triangulation (2D) naive Bestimmung des Dreiecks, in dem neuer Punkt landet: O(n 2 ) bessere Methode: DAG, in dem Änderungen an der Triangulationsstruktur gespeichert werden bei Aufteilung eines Dreiecks: füge drei neue Knoten und Kanten vom altem Knoten zu neuen Knoten ein bei Kanten flip : füge zwei neue Knoten ein; füge Kanten vom alten Knoten zu neuen Knoten ein bei Einfügen eines Punktes: durchlaufe Baum entlang des einzigen möglichen Pfads, um Dreieck zu finden, das durch ihn unterteilt werden soll Julian Fischer Geometrie / 30

91 Delaunay-Triangulation (2D) naive Bestimmung des Dreiecks, in dem neuer Punkt landet: O(n 2 ) bessere Methode: DAG, in dem Änderungen an der Triangulationsstruktur gespeichert werden bei Aufteilung eines Dreiecks: füge drei neue Knoten und Kanten vom altem Knoten zu neuen Knoten ein bei Kanten flip : füge zwei neue Knoten ein; füge Kanten vom alten Knoten zu neuen Knoten ein bei Einfügen eines Punktes: durchlaufe Baum entlang des einzigen möglichen Pfads, um Dreieck zu finden, das durch ihn unterteilt werden soll Laufzeit: O(n log n) (durchschnittlich) Julian Fischer Geometrie / 30

92 Zusammenfassung Julian Fischer Geometrie / 30

93 Zusammenfassung Bereichssuche und kd-bäume Julian Fischer Geometrie / 30

94 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen Julian Fischer Geometrie / 30

95 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen kd-bäume zur Bereichssuche im R n, n P Julian Fischer Geometrie / 30

96 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen kd-bäume zur Bereichssuche im R n, n P bei gleichmäßiger Punkteverteilung auch Gitterverfahren Julian Fischer Geometrie / 30

97 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen kd-bäume zur Bereichssuche im R n, n P bei gleichmäßiger Punkteverteilung auch Gitterverfahren Divide-and-Conquer Julian Fischer Geometrie / 30

98 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen kd-bäume zur Bereichssuche im R n, n P bei gleichmäßiger Punkteverteilung auch Gitterverfahren Divide-and-Conquer häufig bei ICPC: Verwendung zur Berechnung des closest pair Julian Fischer Geometrie / 30

99 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen kd-bäume zur Bereichssuche im R n, n P bei gleichmäßiger Punkteverteilung auch Gitterverfahren Divide-and-Conquer häufig bei ICPC: Verwendung zur Berechnung des closest pair auch als Ansatz für Nichtstandard-Aufgaben Julian Fischer Geometrie / 30

100 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen kd-bäume zur Bereichssuche im R n, n P bei gleichmäßiger Punkteverteilung auch Gitterverfahren Divide-and-Conquer häufig bei ICPC: Verwendung zur Berechnung des closest pair auch als Ansatz für Nichtstandard-Aufgaben Voronoi-Diagramme und Delaunay-Triangulation Julian Fischer Geometrie / 30

101 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen kd-bäume zur Bereichssuche im R n, n P bei gleichmäßiger Punkteverteilung auch Gitterverfahren Divide-and-Conquer häufig bei ICPC: Verwendung zur Berechnung des closest pair auch als Ansatz für Nichtstandard-Aufgaben Voronoi-Diagramme und Delaunay-Triangulation machbar in 2D, schwierig in höheren Dimensionen Julian Fischer Geometrie / 30

102 Zusammenfassung Bereichssuche und kd-bäume Binärbäume zur effizienten Realisierung von Operationen auf Intervallen kd-bäume zur Bereichssuche im R n, n P bei gleichmäßiger Punkteverteilung auch Gitterverfahren Divide-and-Conquer häufig bei ICPC: Verwendung zur Berechnung des closest pair auch als Ansatz für Nichtstandard-Aufgaben Voronoi-Diagramme und Delaunay-Triangulation machbar in 2D, schwierig in höheren Dimensionen typischerweise genügen bei ICPC-Aufgaben die quadratischen Algorithmen Julian Fischer Geometrie / 30

103 Ende Das wars... Julian Fischer Geometrie / 30

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

Hallo Welt für Fortgeschrittene

Hallo Welt für Fortgeschrittene Hallo Welt für Fortgeschrittene Geometrie II Tiago Joao Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Inhalt Koordinatenkompression Beispiel: SafeJourney Typische compress-funktion Bereichssuche

Mehr

Geometrie II Hallo Welt! für Fortgeschrittene

Geometrie II Hallo Welt! für Fortgeschrittene Geometrie II Hallo Welt! für Fortgeschrittene - 2010 Thorsten Wißmann 2. Juli 2010 Stand: 1. Juli 2010 Thorsten Wißmann Geometrie II 2. Juli 2010 1 / 40 Inhalt 1 Datentypen 2 Bereichssuche Gitterverfahren

Mehr

Geometrie II. Deniz Neufeld Deniz Neufeld Geometrie II / 39

Geometrie II. Deniz Neufeld Deniz Neufeld Geometrie II / 39 Geometrie II Deniz Neufeld 20.06.2016 Deniz Neufeld Geometrie II 20.06.2016 1 / 39 Ziel Umgehen mit großen, mehrdimensionalen Datenmengen Bereichssuche Nearest-Neighbour-Search Mehrdimensionale Datenverarbeitung

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

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

Voronoi Diagrams, Delaunay Triangulations and Alpha Shapes Nils Kubera (6kubera)

Voronoi Diagrams, Delaunay Triangulations and Alpha Shapes Nils Kubera (6kubera) Voronoi Diagrams, Delaunay Triangulations and Alpha Shapes 12.11.2008 Nils Kubera 5886728 (6kubera) Inhalt Einleitung Algorithmen zur Generierung Beschränkungen Aktualität Quellen Inhalt Einleitung Algorithmen

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

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

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

Ü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

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

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

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

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

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

(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

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

Ü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

Algorithmische Geometrie: Delaunay Triangulierung (Teil 2)

Algorithmische Geometrie: Delaunay Triangulierung (Teil 2) Algorithmische Geometrie: Delaunay Triangulierung (Teil 2) Nico Düvelmeyer WS 2009/2010, 2.2.2010 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller

Mehr

6. Triangulation von Polygonen

6. Triangulation von Polygonen 1 6. Triangulation von Polygonen 2 Problemstellung 3 Problemstellung 4 Problemstellung 5 Problemstellung 6 Jedes Polygon lässt sich triangulieren. Wir führen einen Induktionsbeweis nach der Anzahl der

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

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

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

Ü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

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

Ausleuchtung/Überwachung von polygonalen Flächen

Ausleuchtung/Überwachung von polygonalen Flächen 1 Ausleuchtung/Überwachung von polygonalen Flächen 2 1. Beschreibung der Aufgabenstellung 3 Gegeben ist der Grundriss eines Raumes. 4 In den Ecken des Raumes sollen Geräte platziert werden, die zusammen

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

Hallo Welt! für Fortgeschrittene. Geometrie I. Philipp Erhardt. 19. Juli Philipp Erhardt Geometrie I 19. Juli / 27

Hallo Welt! für Fortgeschrittene. Geometrie I. Philipp Erhardt. 19. Juli Philipp Erhardt Geometrie I 19. Juli / 27 Hallo Welt! für Fortgeschrittene Geometrie I Philipp Erhardt 19. Juli 2011 Philipp Erhardt Geometrie I 19. Juli 2011 1 / 27 Gliederung 1 Grundlagen 2 CCW 3 Punkt-in-Polygon 4 Pick s Theorem 5 Konvexe Hülle

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

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

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.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

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

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

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am 03.12.2013 Algorithmische Geometrie: Schnitte von Strecken Sweep-Line INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg

Mehr

Geometrische Algorithmen

Geometrische Algorithmen Geometrische Algorithmen Bin Hu Algorithmen und Datenstrukturen 2 Arbeitsbereich für Algorithmen und Datenstrukturen Institut für Computergraphik und Algorithmen Technische Universität Wien Einführung

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

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

Kapitel 6: Algorithmen der Computer-Geometrie

Kapitel 6: Algorithmen der Computer-Geometrie LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Kapitel 6: Algorithmen der Computer-Geometrie Skript zur Vorlesung Geo-Informationssysteme Wintersemester 2015/16 Ludwig-Maximilians-Universitä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

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

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

KD-Bäume. ein Vortrag von Jan Schaefer

KD-Bäume. ein Vortrag von Jan Schaefer ein Vortrag von Jan Schaefer Überblick - Kurzer Rückblick: Quad Trees - KD-Baum bauen - Effizienz des Konstruktionsalgorithmus - Regionen - Bereichssuche - Effizienz des Suchalgorithmus - Anwendungsgebiete

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

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

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

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

Bereichsabfragen II. 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 20.05.2014 Objekttypen in Bereichsabfragen y0 y0 y x x0 Bisher betrachteter Fall Eingabe:

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

Kapitel 9 Algorithm. Geometrie. Kürzeste Abstände Konvexe Hülle

Kapitel 9 Algorithm. Geometrie. Kürzeste Abstände Konvexe Hülle Kapitel 9 Algorithm. Geometrie Kürzeste Abstände Konvexe Hülle Überblick Teilgebiet der Informatik, in dem es um die Entwicklung effizienter Algorithmen und die Bestimmung der algorithmischen Komplexität

Mehr

Übersicht über Informatik und Softwaresystemtechnik WS 99/00, Prof. Dr. Andreas Schwill

Übersicht über Informatik und Softwaresystemtechnik WS 99/00, Prof. Dr. Andreas Schwill Konvexe Hülle Hierbei handelt es sich um ein klassisches Problem aus der Algorithmischen Geometrie, dem Teilgebiet der Informatik, in dem man für geometrische Probleme effiziente Algorithmen bestimmt.

Mehr

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Aufgabe 1. / 16 P Instruktionen: 1) In dieser Aufgabe sollen Sie nur die Ergebnisse angeben. Diese können Sie direkt bei den Aufgaben notieren. 2) Sofern

Mehr

3.2. Divide-and-Conquer-Methoden

3.2. Divide-and-Conquer-Methoden LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE 3.2. Divide-and-Conquer-Methoden Divide-and-Conquer-Methoden Einfache Sortieralgorithmen reduzieren die Größe des noch

Mehr

4. Tries und kd-bäume

4. Tries und kd-bäume 4. Tries und kd-bäume Digitale Suchbäume (Tries) kd-bäume Prof. Dr. O. Bittel, HTWG Konstanz Algorithmen und Datenstrukuren Tries und kd-bäume SS 2019 4-1 Tries (1) Problem mit den bisherigen Suchbäumen

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: 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

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

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

Voronoi Diagrams. Christian Wellenbrock. December 1, 2009

Voronoi Diagrams. Christian Wellenbrock. December 1, 2009 December 1, 2009 Das Voronoi Diagramm Problemstellung Gegeben: Menge der Zentren P = {p 1,..., p n } R 2 Das Voronoi Diagramm Problemstellung Gegeben: Menge der Zentren P = {p 1,..., p n } R 2 Gesucht:

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

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

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Bereichsabfragen II. 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 17.07.2012 Objekttypen in Bereichsabfragen y0 y0 y x x0 Bisher

Mehr

4.3 Splitstrategien für R-Bäume (I)

4.3 Splitstrategien für R-Bäume (I) 4.3 Splitstrategien für R-Bäume (I) Der Knoten K läuft mit K = M+1 über: Aufteilung auf zwei Knoten K 1 und K 2, sodaß K 1 m und K 2 m Erschöpfender Algorithmus Suche unter den O(2 M ) Möglichkeiten die

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

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Bereichsabfragen II. 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 17.07.2012 Objekttypen in Bereichsabfragen y0 y x x0 Bisher

Mehr

Bereichsabfragen. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Bereichsabfragen. 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 17.05.2011 Geometrie in Datenbanken In einer Personaldatenbank

Mehr

M. Pester 29. Ein konvexes d-polytop ist eine begrenzte d-dimensionale polyedrale Menge. (d = 3 Polyeder, d = 2 Polygon)

M. Pester 29. Ein konvexes d-polytop ist eine begrenzte d-dimensionale polyedrale Menge. (d = 3 Polyeder, d = 2 Polygon) M. Pester 29 6 Konvexe Hülle 6.1 Begriffe Per Definition ist die konvexe Hülle für eine Menge S von lich vielen Punkten die kleinste konvexe Menge, die S enthölt (z.b. in der Ebene durch ein umspannes

Mehr

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Suchen. Lineare Suche. Such-Algorithmen. Sommersemester Dr.

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Suchen. Lineare Suche. Such-Algorithmen. Sommersemester Dr. Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 0 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Fortgeschrittene Datenstrukturen Such-Algorithmen

Mehr

Informatik II: Algorithmen und Datenstrukturen SS 2013

Informatik II: Algorithmen und Datenstrukturen SS 2013 Informatik II: Algorithmen und Datenstrukturen SS 2013 Vorlesung 11b, Mittwoch, 3. Juli 2013 (Editierdistanz, dynamische Programmierung) Prof. Dr. Hannah Bast Lehrstuhl für Algorithmen und Datenstrukturen

Mehr

Parallele Algorithmen in der Bildverarbeitung

Parallele Algorithmen in der Bildverarbeitung Seminar über Algorithmen - SoSe 2009 Parallele Algorithmen in der Bildverarbeitung von Christopher Keiner 1 Allgemeines 1.1 Einleitung Parallele Algorithmen gewinnen immer stärker an Bedeutung. Es existieren

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

G. Zachmann Clausthal University, Germany Die wichtigsten Entwurfsverfahren für Algorithmen:

G. Zachmann Clausthal University, Germany Die wichtigsten Entwurfsverfahren für Algorithmen: lausthal Informatik II Divide & onquer. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Algorithmen-Design-Techniken Die wichtigsten Entwurfsverfahren für Algorithmen: 1. Divide and onquer

Mehr

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität Datenstrukturen und Algorithmen Christian Sohler FG Algorithmen & Komplexität 1 Geometrisches Problem: Problem: Nächstes Paar Eingabe: n Punkte in der Ebene Ausgabe: Das Paar q,r mit geringstem Abstand

Mehr

Konvexe Hülle. Konvexe Hülle. Mathematik. Konvexe Hülle: Definition. Mathematik. Konvexe Hülle: Eigenschaften. AK der Algorithmik 5, SS 2005 Hu Bin

Konvexe Hülle. Konvexe Hülle. Mathematik. Konvexe Hülle: Definition. Mathematik. Konvexe Hülle: Eigenschaften. AK der Algorithmik 5, SS 2005 Hu Bin Konvexe Hülle Konvexe Hülle AK der Algorithmik 5, SS 2005 Hu Bin Anwendung: Computergraphik Boundary Kalkulationen Geometrische Optimierungsaufgaben Konvexe Hülle: Definition Mathematik Konvex: Linie zwischen

Mehr

Parallelisierung durch Gebietszerlegung

Parallelisierung durch Gebietszerlegung Parallelisierung durch Gebietszerlegung Jahn Müller jahn.mueller@uni-muenster.de Westfälische Wilhelms-Universität Münster 25.01.2008 1 Einleitung 2 Gebietszerlegung nicht überlappende Zerlegung überlappende

Mehr

Geometrie I. Polygone. Dominik Huber Hallo Welt! für Fortgeschrittene. Informatik 2 Programmiersysteme Martensstraße Erlangen

Geometrie I. Polygone. Dominik Huber Hallo Welt! für Fortgeschrittene. Informatik 2 Programmiersysteme Martensstraße Erlangen Geometrie I Polygone Dominik Huber 28.5.2018 Hallo Welt! für Fortgeschrittene Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Gliederung Wiederholung Analytische Geometrie Abstand Punkt

Mehr

Kürzeste und Schnellste Wege

Kürzeste und Schnellste Wege Kürzeste und Schnellste Wege Wie funktionieren Navis? André Nusser (Folien inspiriert von Kurt Mehlhorn) Struktur Straßennetzwerke Naiver Algorithmus Dijkstras Algorithmus Transitknoten Nachbemerkungen

Mehr

Lernmodul 2: Geoobjekte und ihre Modellierung - Dreiecksnetze

Lernmodul 2: Geoobjekte und ihre Modellierung - Dreiecksnetze Folie 1 von 16 Lernmodul 2 Dreiecksnetze Folie 2 von 16 Dreiecksnetze Übersicht Dreiecksnetze - Triangulated Irregular Networks - TINs Modellierung des Geländereliefs durch TINs Delaunay TINs: besonders

Mehr

Kapitel 2. Weitere Beispiele Effizienter Algorithmen

Kapitel 2. Weitere Beispiele Effizienter Algorithmen Kapitel 2 Weitere Beispiele Effizienter Algorithmen Sequentielle Suche Gegeben: Array a[1..n] Suche in a nach Element x Ohne weitere Zusatzinformationen: Sequentielle Suche a[1] a[2] a[3] Laufzeit: n Schritte

Mehr

Triangulierung von einfachen Polygonen

Triangulierung von einfachen Polygonen Triangulierung von einfachen Polygonen Tobias Kyrion Inhaltsverzeichnis 1.1 Die Problemstellung....................... 1 2.1 Ein naiver Algorithmus...................... 2 3.1 Zerlegung in monotone Teilpolygone..............

Mehr

häufige Aufgabe Motivation: Approximation komplizierter Geometrien durch einfachere Dreiecke oft effizienter zu bearbeiten als Polygone

häufige Aufgabe Motivation: Approximation komplizierter Geometrien durch einfachere Dreiecke oft effizienter zu bearbeiten als Polygone Triangulierung häufige Aufgabe Motivation: Approximation komplizierter Geometrien durch einfachere Dreiecke oft effizienter zu bearbeiten als Polygone Problemstellung 1: Gegeben: ein einfaches Polygon

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 22.04.2014 Überlagern von Kartenebenen Beispiel: Gegeben zwei verschiedene Kartenebenen,

Mehr

Algorithmische Geometrie Thema: Konvexe Hüllen

Algorithmische Geometrie Thema: Konvexe Hüllen Algorithmische Geometrie Thema: Konvexe Hüllen Christoph Hermes Hermes@hausmilbe.de 17. Juni 2003 Ausblick auf den Vortrag 1/32 1 Was sind konvexe Hüllen? Wozu braucht man sie? Wie kann man sie berechnen

Mehr

14. Sortieren II Heapsort. Heapsort. [Max-]Heap 7. Heapsort, Quicksort, Mergesort. Binärer Baum mit folgenden Eigenschaften

14. Sortieren II Heapsort. Heapsort. [Max-]Heap 7. Heapsort, Quicksort, Mergesort. Binärer Baum mit folgenden Eigenschaften Heapsort, Quicksort, Mergesort 14. Sortieren II 14.1 Heapsort [Ottman/Widmayer, Kap. 2.3, Cormen et al, Kap. 6] 397 398 Heapsort [Max-]Heap 7 Inspiration von Selectsort: Schnelles Einfügen Binärer Baum

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

Computer graphics. Triangulierung. Dr. Ernst Kruijff. Institute of Visual Computing 3DMi group Bonn-Rhein-Sieg University of Applied Sciences.

Computer graphics. Triangulierung. Dr. Ernst Kruijff. Institute of Visual Computing 3DMi group Bonn-Rhein-Sieg University of Applied Sciences. Computer graphics Triangulierung Dr. Ernst Kruijff Institute of Visual Computing 3DMi group Bonn-Rhein-Sieg University of Applied Sciences 3 Dm group smatherma0er Sources Gabriel Zachmann, Vorlesung Computergrafik,

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

Range-Search. Operationen: Welche Datenstrukturen sind geeignet? Arrays? Listen? AVL-Bäume? Splay-Bäume?

Range-Search. Operationen: Welche Datenstrukturen sind geeignet? Arrays? Listen? AVL-Bäume? Splay-Bäume? Algorithmische Geometrie Die Technik der Sweepline Range-Search (Folie 431, Seite 79 im Skript) Operationen: 1 Einfügen einer Zahl x 2 Löschen einer Zahl x 3 Ausgabe aller gespeicherter Zahlen in [a, b]

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

Rechnen mit Vektoren. 1. Vektoren im Koordinatensystem Freie Vektoren in der Ebene

Rechnen mit Vektoren. 1. Vektoren im Koordinatensystem Freie Vektoren in der Ebene Rechnen mit 1. im Koordinatensystem 1.1. Freie in der Ebene 1) Definition Ein Vektor... Zwei sind gleich, wenn... 2) Das ebene Koordinatensystem Wir legen den Koordinatenursprung fest, ferner zwei zueinander

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen von Prof. Dr. Thomas Ottmann, Universität Freiburg und Prof. Dr. Dr. Peter Widmayer, Eidgenössische Technische Hochschule Zürich 2., vollständig überarbeitete und erweiterte

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Untere Schranken für Sortieren Sortieren mit linearem Aufwand Mediane und Ranggrössen 2 Wie schnell können wir sortieren?

Mehr