Konvexe H¨ ulle und Durchschnitte
Elmar Langetepe University of Bonn
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 1
Erwartete Anzahl Konflikte: Beweis!
7
8 nil
9 10 11 12
8 nil
9
10 nil
11 12
A
A
p8 p8
p10 p10
a a
b b
p12 z
z
p9 p9
p12
p7 p7
p11 p11
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 2
Erwartete Anzahl Konflikte: Beweis!
(pi, pj) in Konflikt ⇐⇒ zpj schneidet eine Kante von ch(Si−1), die beim Einf¨ugen von pi entfernt wird
7
8 nil
9 10 11 12
8 nil
9
10 nil
11 12
A
A
p8 p8
p10 p10
a a
b b
p12 z
z
p9 p9
p12
p7 p7
p11 p11
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 2
Absch¨ atzung durch Integral!
j
X
i=1
2
j ≤ 2
Z j
i=1
1
xdx ∈ O(log n)
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 3
Einfaches optimales Verfahren: Vorsortieren!
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 4
Einfaches optimales Verfahren: Vorsortieren!
Theorem 4.7 Die konvexes H¨ulle von n sortierten Punkten kann in Zeit O(n) berechnet werden.
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 4
Einfaches optimales Verfahren: Vorsortieren!
Theorem 4.7 Die konvexes H¨ulle von n sortierten Punkten kann in Zeit O(n) berechnet werden.
Beweis:
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 4
Einfaches optimales Verfahren: Vorsortieren!
Theorem 4.7 Die konvexes H¨ulle von n sortierten Punkten kann in Zeit O(n) berechnet werden.
Beweis: Konturpolygon bestimmen!
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 4
Einfaches optimales Verfahren: Vorsortieren!
Theorem 4.7 Die konvexes H¨ulle von n sortierten Punkten kann in Zeit O(n) berechnet werden.
Beweis: Konturpolygon bestimmen! Geradeziehen der Ketten
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 4
Konturpolygon bestimmen
R O
L
U
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 5
Konturpolygon bestimmen
• Sortieren nach X- und Y -Koordinate, Min., Max. O, U, L, R
• Y -monotone Ketten L − O, O −R, R −U, U −L, Beispiel L − O
R O
L
U
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 5
Konturpolygon bestimmen
• Sortieren nach X- und Y -Koordinate, Min., Max. O, U, L, R
• Y -monotone Ketten L − O, O −R, R −U, U −L, Beispiel L − O
• Laufzeit: O(n)
R O
L
U
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 5
Konturketten in konvexe Ketten
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 6
Konturketten in konvexe Ketten
• Sweep: Konvex-so-far, Backtracking, Beispiel Tafel
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 6
Konturketten in konvexe Ketten
• Sweep: Konvex-so-far, Backtracking, Beispiel Tafel
• Insgesamt nicht mehr als O(n) (amortisiert) Orientationtests
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 6
Konturketten in konvexe Ketten
• Sweep: Konvex-so-far, Backtracking, Beispiel Tafel
• Insgesamt nicht mehr als O(n) (amortisiert) Orientationtests
p1=L pi-1
pi
pj pj+1
pk+1 O
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 6
Einfaches optimales Verfahren: Vorsortieren!
Theorem 4.7 Die konvexes H¨ulle von n sortierten Punkten kann in Zeit O(n) berechnet werden.
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 7
Das Dualit¨ atsprinzip!
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 8
Das Dualit¨ atsprinzip!
Konfiguration von Punkten ¨ubertragen auf Konfiguration f¨ur Geraden
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 8
Das Dualit¨ atsprinzip!
Konfiguration von Punkten ¨ubertragen auf Konfiguration f¨ur Geraden
p = (a, b) −→ p∗ = {Y = aX + b}
G∗ = (−a, b) ←− G = {Y = aX + b}
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 8
Das Dualit¨ atsprinzip!
Konfiguration von Punkten ¨ubertragen auf Konfiguration f¨ur Geraden
p = (a, b) −→ p∗ = {Y = aX + b}
G∗ = (−a, b) ←− G = {Y = aX + b}
Beispiel!
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 8
Strukturelle Eigenschaften
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 9
Strukturelle Eigenschaften
• Relative Lage von Punkten und Geraden zueinander
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 9
Strukturelle Eigenschaften
• Relative Lage von Punkten und Geraden zueinander
• Abst¨ande bleiben gleich
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 9
Strukturelle Eigenschaften
• Relative Lage von Punkten und Geraden zueinander
• Abst¨ande bleiben gleich
• Gerichteter vertikaler Abstand gva, Vorzeichen
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 9
Strukturelle Eigenschaften
• Relative Lage von Punkten und Geraden zueinander
• Abst¨ande bleiben gleich
• Gerichteter vertikaler Abstand gva, Vorzeichen
• p ∈ G ⇐⇒ G∗ ∈ p∗
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 9
Strukturelle Eigenschaften
• Relative Lage von Punkten und Geraden zueinander
• Abst¨ande bleiben gleich
• Gerichteter vertikaler Abstand gva, Vorzeichen
• p ∈ G ⇐⇒ G∗ ∈ p∗
Lemma 4.8 F¨ur einen Punkt p und eine Gerade G haben wir gva(p, G) = −gva(G∗, p∗). Insbesondere gilt:
p liegt oberhalb von G ⇐⇒ p∗ verl¨auft oberhalb von G∗
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 9
Weitere Eigenschaften
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 10
Weitere Eigenschaften
Lemma 4.9 Seien p = (a, b) und q = (c, d) mit a 6= c und `(pq) die Gerade durch p und q.
Dann gilt:
p∗ ∩ q∗ = (`(pq))∗.
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 10
Weitere Eigenschaften
Lemma 4.9 Seien p = (a, b) und q = (c, d) mit a 6= c und `(pq) die Gerade durch p und q.
Dann gilt:
p∗ ∩ q∗ = (`(pq))∗.
Beweis: Konstruktiv!
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 10
Durchschnitt von Halbgeraden/Konvexe H¨ ulle
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 11
Durchschnitt von Halbgeraden/Konvexe H¨ ulle
• n Geraden Gi, 1 ≤ i ≤ n, in der Ebene, nicht senkrecht
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 11
Durchschnitt von Halbgeraden/Konvexe H¨ ulle
• n Geraden Gi, 1 ≤ i ≤ n, in der Ebene, nicht senkrecht
• Gi = {(x, y) ∈ IR2; y = aix + bi} = {Y = aiX + bi} reelle Zahlen ai, bi
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 11
Durchschnitt von Halbgeraden/Konvexe H¨ ulle
• n Geraden Gi, 1 ≤ i ≤ n, in der Ebene, nicht senkrecht
• Gi = {(x, y) ∈ IR2; y = aix + bi} = {Y = aiX + bi} reelle Zahlen ai, bi
• Durchschnitt der unteren Halbebenen Hi = {Y ≤ aiX + bi}
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 11
Durchschnitt von Halbgeraden/Konvexe H¨ ulle
• n Geraden Gi, 1 ≤ i ≤ n, in der Ebene, nicht senkrecht
• Gi = {(x, y) ∈ IR2; y = aix + bi} = {Y = aiX + bi} reelle Zahlen ai, bi
• Durchschnitt der unteren Halbebenen Hi = {Y ≤ aiX + bi}
n
\
i
Hi
Berandet durch untere Kontur des Arrangements der Geraden
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 11
Dualit¨ at ausnutzen
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 12
Dualit¨ at ausnutzen
Theorem 4.10 Arrangement von n Geraden Gi:
Gi ∩ Gj ist Eckpunkt des Durchschnitts der unteren Halbebenen
⇐⇒ das Liniensegment G∗i Gj∗ ist eine untere Kante der konvexen H¨ulle der Punkte G∗i
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 12
Dualit¨ at ausnutzen
Theorem 4.10 Arrangement von n Geraden Gi:
Gi ∩ Gj ist Eckpunkt des Durchschnitts der unteren Halbebenen
⇐⇒ das Liniensegment G∗i Gj∗ ist eine untere Kante der konvexen H¨ulle der Punkte G∗i
Konvexe H¨ulle und Schnitt von Halbebenen ist identisch
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 12
Dualit¨ at ausnutzen
Theorem 4.10 Arrangement von n Geraden Gi:
Gi ∩ Gj ist Eckpunkt des Durchschnitts der unteren Halbebenen
⇐⇒ das Liniensegment G∗i Gj∗ ist eine untere Kante der konvexen H¨ulle der Punkte G∗i
Konvexe H¨ulle und Schnitt von Halbebenen ist identisch Beweis!
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 12
Ergebnisse
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 13
Ergebnisse
Korollar 4.11 Die Berechnung des Durchschnitts von n Halbebenen hat die Zeitkomplexit¨at Θ(n log n).
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 13
Ergebnisse
Korollar 4.11 Die Berechnung des Durchschnitts von n Halbebenen hat die Zeitkomplexit¨at Θ(n log n).
Korollar 4.12 Der Schnitt von n Halbebenen, deren Geraden nach Steigung sortiert sind, kann in Zeit O(n) berechnet werden.
Algorithmische Geometrie Durchschnitte/Konvexe H¨ulle 06.05.15 cElmar Langetepe SS ’15 13