Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte...
Transcript of Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte...
![Page 1: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/1.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Andreas Gemsa
Ubung Algorithmische Geometrie
LEHRSTUHL FUR ALGORITHMIK I · INSTITUT FUR THEORETISCHE INFORMATIK · FAKULTAT FUR INFORMATIK
Einfuhrung & Konvexe Hulle
21.04.2011
![Page 2: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/2.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
AlgoGeom-Team
Martin [email protected]
Raum 319Sprechzeiten: Termin per Mail vereinbaren
Dozent
Ubungsleiter
Andreas [email protected]
Raum 322Sprechzeiten: Termin per Mail vereinbaren
TermineVorlesung: Di 9:45 – 11:15 Uhr, Raum 131Ubung: Do 10:15 – 11:00 Uhr, Raum 131 (ab 21.04.)
![Page 3: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/3.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
AlgoGeom-Team
Martin [email protected]
Raum 319Sprechzeiten: Termin per Mail vereinbaren
Dozent
Ubungsleiter
Andreas [email protected]
Raum 322Sprechzeiten: Termin per Mail vereinbaren
TermineVorlesung: Di 9:45 – 11:15 Uhr, Raum 131Ubung: Do 10:15 – 11:00 Uhr, Raum 131 (ab 21.04.)
![Page 4: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/4.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Ubungsbetrieb
Ausgabe Blatt 1for Woche i = 2 . . . 14 do
if Tag == Dienstag thenAusgabe Blatt iAbgabe Blatt (i− 1)
if Tag == Donnerstag & !isFeiertag(Tag) thenBesprechung Blatt (i− 1)
Bearbeitung der Aufgaben und Abgabe der Losungen inZweiergruppen erwunschtUbung wochentlich 45 Minutenabweichende Regelung an FeiertagenAchtung: erste Ubung am 21.04. in Raum −118
![Page 5: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/5.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Ablauf
Besprechung UB1EinstiegGrundlegendesOptimalitat!
Kontextsensitiver Algorithmus
Optimalitat?!
![Page 6: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/6.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Fragen
Fragen zur Vorlesung
Fragen zum Ablauf der Ubung
AlgorithmenLaufzeiten...
...
Einfuhrung & Konvexe Hulle
![Page 7: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/7.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Ubungsblatt 1 - Aufgabe 1 - a)
Gerichtete Gerade g durch p = (px, py) und q = (qx, qy)
Punkt r = (rx, ry)
![Page 8: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/8.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Ubungsblatt 1 - Aufgabe 1 - a)
A =
1 px py1 qx qy1 rx ry
Gerichtete Gerade g durch p = (px, py) und q = (qx, qy)
Punkt r = (rx, ry)
![Page 9: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/9.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Ubungsblatt 1 - Aufgabe 1 - a)
A =
1 px py1 qx qy1 rx ry
Gerichtete Gerade g durch p = (px, py) und q = (qx, qy)
Punkt r = (rx, ry)
Beweise: Vorzeichen von det(A) zeigt an ob r linksoder rechts von g liegt.
![Page 10: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/10.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
![Page 11: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/11.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
p
q
![Page 12: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/12.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
p
q
![Page 13: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/13.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
p
qr
![Page 14: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/14.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
p
qr
![Page 15: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/15.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
p
qr
rp =
(rx − pxry − py
)
![Page 16: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/16.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
p
qr
rp =
(rx − pxry − py
)
![Page 17: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/17.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
p
qr
rp =
(rx − pxry − py
)
![Page 18: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/18.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
p
qr
npq =
(py − qyqx − px
)rp =
(rx − pxry − py
)
rp · npq = det(A)
![Page 19: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/19.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
A =
1 px py1 qx qy1 rx ry
Gerichtete Gerade g durch p = (px, py) und q = (qx, qy)
Punkt r = (rx, ry)
Beweise: Vorzeichen von det(A) zeigt an ob r linksoder rechts von g liegt.
![Page 20: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/20.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
A =
1 px py1 qx qy1 rx ry
Gerichtete Gerade g durch p = (px, py) und q = (qx, qy)
Punkt r = (rx, ry)
Beweise: Vorzeichen von det(A) zeigt an ob r linksoder rechts von g liegt.
![Page 21: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/21.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
A =
1 px py1 qx qy1 rx ry
Gerichtete Gerade g durch p = (px, py) und q = (qx, qy)
Punkt r = (rx, ry)
Beweise: Vorzeichen von det(A) zeigt an ob r linksoder rechts von g liegt.
+ b)
Beweise: |det(A)| = doppelter Flacheninhalt desDreiecks pqr
![Page 22: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/22.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - b)
p
q
r
![Page 23: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/23.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - b)
p
q
r
![Page 24: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/24.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - b)
p
q
r
![Page 25: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/25.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - b)
p
q
r
![Page 26: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/26.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - b)
p
q
r
![Page 27: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/27.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - b)
p
q
r
Apqr = |pq| · hh
![Page 28: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/28.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - b)
p
q
r
Apqr = |pq| · hhϕ
![Page 29: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/29.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - b)
p
q
r
Apqr = |pq| · hhϕ
ϕ
![Page 30: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/30.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
A =
1 px py1 qx qy1 rx ry
Gerichtete Gerade g durch p = (px, py) und q = (qx, qy)
Punkt r = (rx, ry)
Beweise: Vorzeichen von det(A) zeigt an ob r linksoder rechts von g liegt.
+ b)
Beweise: |det(A)| = doppelter Flacheninhalt desDreiecks pqr
![Page 31: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/31.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 1 - a)
A =
1 px py1 qx qy1 rx ry
Gerichtete Gerade g durch p = (px, py) und q = (qx, qy)
Punkt r = (rx, ry)
Beweise: Vorzeichen von det(A) zeigt an ob r linksoder rechts von g liegt.
+ b)
Beweise: |det(A)| = doppelter Flacheninhalt desDreiecks pqr
![Page 32: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/32.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
![Page 33: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/33.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
![Page 34: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/34.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
![Page 35: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/35.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
![Page 36: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/36.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
b) Schnitt zweier konvexen Mengen ist konvex.
Def: Eine Menge P ⊆ R2 heißt konvex, wenn fur je zweiPunkte p, q ∈ P auch gilt pq ∈ P .
![Page 37: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/37.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
b) Schnitt zweier konvexen Mengen ist konvex.
![Page 38: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/38.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
b) Schnitt zweier konvexen Mengen ist konvex.
![Page 39: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/39.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
b) Schnitt zweier konvexen Mengen ist konvex.
c) CH(P ) ist ein Polygon.
![Page 40: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/40.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
b) Schnitt zweier konvexen Mengen ist konvex.
c) CH(P ) ist ein Polygon.
![Page 41: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/41.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
b) Schnitt zweier konvexen Mengen ist konvex.
c) CH(P ) ist ein Polygon.
d) Alle Ecken von CH(P ) liegen in P.
![Page 42: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/42.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 2Lemma:Fur eine endliche Punktmenge P ⊆ R2
ist CH(P ) ein konvexes Polygon, das Penthalt und dessen Ecken in P liegen.
a) Die konvexe Hulle CH(P ) enthalt alle Punkte aus P .
Mathematik: CH(P ) =⋂
C⊇P : C konvex
C
b) Schnitt zweier konvexen Mengen ist konvex.
c) CH(P ) ist ein Polygon.
d) Alle Ecken von CH(P ) liegen in P.
![Page 43: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/43.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 3
a) Berechnung konvexer Hulle benotigt Ω(n log n).
![Page 44: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/44.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 3
a) Berechnung konvexer Hulle benotigt Ω(n log n).
b) Gegeben: einfaches [nicht notwendigerweise kovexes]Polygon. Konstruiere daraus in O(n) seine konvexe Hulle.Warum ist das kein Widerspruch zu a) ?
![Page 45: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/45.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Aufgabe 3
a) Berechnung konvexer Hulle benotigt Ω(n log n).
b) Gegeben: einfaches [nicht notwendigerweise kovexes]Polygon. Konstruiere daraus in O(n) seine konvexe Hulle.Warum ist das kein Widerspruch zu a) ?
UpperConvexHull(P )
〈p1, p2, . . . , pn〉 ← sortiere P von links nach rechtsL← 〈p1, p2〉for i← 3 to n do
L.append(pi)while |L| > 2 and letzte 3 Punkte in L kein Rechtsknick do
entferne vorletzten Punkt aus L
return L
![Page 46: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/46.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 47: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/47.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 48: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/48.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 49: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/49.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 50: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/50.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 51: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/51.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 52: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/52.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 53: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/53.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 54: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/54.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 55: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/55.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 56: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/56.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
O(n)
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 57: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/57.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
O(n)O(h)
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 58: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/58.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Kontextsensitiver Algorithmus
O(n)O(h)
Laufzeit: O(nh)
GiftWrapping(P )
p0 = (0,∞), p1 = linkester Knoten in Pwhile true do
Berechne pk+1 ∈ P der den Winkel pj−1pjqi maximiert.if pk+1 == p1 then
break
return (p1, . . . , ph)
![Page 59: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/59.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Optimalitat?!
Wann ist welcher Algorithmus besser?
![Page 60: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/60.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Optimalitat?!
Viele Punkte auf CH(P ): O(n log n)
Wenige Punkte auf CH(P ): O(nh)
Wann ist welcher Algorithmus besser?
Graham Scan
Gift Wrapping
![Page 61: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/61.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Optimalitat?!
Viele Punkte auf CH(P ): O(n log n)
Wenige Punkte auf CH(P ): O(nh)
Wann ist welcher Algorithmus besser?
Geht es vielleicht noch besser?
Graham Scan
Gift Wrapping
![Page 62: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/62.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Optimalitat?!
Viele Punkte auf CH(P ): O(n log n)
Wenige Punkte auf CH(P ): O(nh)
Wann ist welcher Algorithmus besser?
Geht es vielleicht noch besser?
ja
Graham Scan
Gift Wrapping
![Page 63: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/63.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
![Page 64: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/64.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
![Page 65: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/65.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Angenommen, wir kennen h:
Gift Wrapping
GrahamScan
ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
![Page 66: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/66.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
![Page 67: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/67.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
![Page 68: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/68.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
O(n/h)
![Page 69: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/69.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
O(n/h)
O(n
logh
)
![Page 70: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/70.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
O(logm)
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
O(n/h)
O(n
logh
)
![Page 71: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/71.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
O(logm)
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
O(n/h)
O(n
logh
)
O(h) · O(n/h) = O(n)
![Page 72: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/72.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
O(logm)
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
O(n/h)
O(n
logh
)
O(h) · O(n/h) = O(n)
O(n
logh
)
![Page 73: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/73.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
O(logm)
Angenommen, wir kennen h:ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
O(n/h)
O(n
logh
)
O(h) · O(n/h) = O(n)
O(n
logh
)
O(n log h)
![Page 74: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/74.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
O(logm)
ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
O(n/h)
O(n
logh
)
O(h) · O(n/h) = O(n)
O(n
logh
)
Im Allgemeinen ist h aber unbekannt.
![Page 75: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/75.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
O(logm)
ChanHull(P ,h)
Unterteile P in Mengen Pi mit je h Knotenfor i von 1 bis n/h do
Berechne per GrahamScan CH(Pi)
p0 = (0,∞)p1 = linkester Knoten in Pfor j von 1 bis h do
for i von 1 bis n/h doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/hreturn (p1, . . . , ph)
O(h log h)
O(n/h)
O(n
logh
)
O(h) · O(n/h) = O(n)
O(n
logh
)
Im Allgemeinen ist h aber unbekannt.m
![Page 76: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/76.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Im Allgemeinen ist h aber unbekannt.ChanHull(P ,m)
Unterteile P in Mengen Pi mit je m Knotenfor i von 1 bis n/m do
Berechne per GrahamScan CH(Pi)
p0 = (0,−∞)p1 = linkester Knoten au Pfor j von 1 bis m do
for i von 1 bis n/m doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/mreturn (p1, . . . , pm)
O(m logm)
O(n/m)
O(n
logm
)
O(logm)
O(m) · O(n/m) = O(n)
O(n
logm
)
O(n logm)
![Page 77: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/77.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
Im Allgemeinen ist h aber unbekannt.ChanHull(P ,m)
Unterteile P in Mengen Pi mit je m Knotenfor i von 1 bis n/m do
Berechne per GrahamScan CH(Pi)
p0 = (0,−∞)p1 = linkester Knoten au Pfor j von 1 bis m do
for i von 1 bis n/m doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/mreturn (p1, . . . , pm)
O(m logm)
O(n/m)
O(n
logm
)
O(logm)
O(m) · O(n/m) = O(n)
O(n
logm
)
O(n logm)
![Page 78: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/78.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
ChanHull(P ,m)
Unterteile P in Mengen Pi mit je m Knoten...p0 = (0,−∞)p1 = linkester Knoten au Pfor j von 1 bis m do
for i von 1 bis n/m doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/mif pj+1 == p1 then
return (p1, . . . , pj)
return failure
O(n
logm
)
O(log h)
O(m) · O(n/m) = O(n)
O(n
logm
)
Im Allgemeinen ist h aber unbekannt.
![Page 79: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/79.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Chans Algorithmus
ChanHull(P ,m)
Unterteile P in Mengen Pi mit je m Knoten...p0 = (0,−∞)p1 = linkester Knoten au Pfor j von 1 bis m do
for i von 1 bis n/m doBerechne Punkt qi ∈ Pi der den Winkelpj−1pjqi maximiert.
pj+1 = maxq1, . . . , qn/mif pj+1 == p1 then
return (p1, . . . , pj)
return failure
O(n
logm
)
O(log h)
O(m) · O(n/m) = O(n)
O(n
logm
)
Im Allgemeinen ist h aber unbekannt.
O(n logm)
![Page 80: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/80.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
Vorschlage?
![Page 81: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/81.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
![Page 82: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/82.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
Laufzeit:
O(n logm) =O(n log 22
t)
![Page 83: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/83.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
Laufzeit:
O(n logm) =O(n log 22
t)
?∑t=0
O(n log 22t)
![Page 84: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/84.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
Laufzeit:
O(n logm) =O(n log 22
t)
O(log log h)∑t=0
O(n log 22t)
![Page 85: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/85.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
Laufzeit:
O(n logm) =O(n log 22
t)
O(log log h)∑t=0
O(n log 22t) = O(n)
O(log log h)∑t=0
O(2t)
![Page 86: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/86.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
Laufzeit:
O(n logm) =O(n log 22
t)
O(log log h)∑t=0
O(n log 22t) = O(n)
O(log log h)∑t=0
O(2t)
= O(n) · O(2log log h+1)
![Page 87: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/87.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
Laufzeit:
O(n logm) =O(n log 22
t)
O(log log h)∑t=0
O(n log 22t) = O(n)
O(log log h)∑t=0
O(2t)
= O(n) · O(2log log h+1) = O(n) · O(2log log h)
![Page 88: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/88.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
Laufzeit:
O(n logm) =O(n log 22
t)
O(log log h)∑t=0
O(n log 22t) = O(n)
O(log log h)∑t=0
O(2t)
= O(n) · O(2log log h+1) = O(n) · O(2log log h)= O(n) · O(log h)
![Page 89: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/89.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Was ist mit m?
FullChanHull(P )
for t = 0, 1, 2, . . . do
m = minn, 22tresult = ChanHull(P , m)if result != failure then
break
return result
Laufzeit:
O(n logm) =O(n log 22
t)
O(log log h)∑t=0
O(n log 22t) = O(n)
O(log log h)∑t=0
O(2t)
= O(n) · O(2log log h+1) = O(n) · O(2log log h)= O(n) · O(log h) = O(n log h)
![Page 90: Einf uhrung & Konvexe H ulle - ITI Algorithmik Ia) Die konvexe H ulle CH (P ) enth alt alle Punkte aus P . Mathematik: CH(P ) = \ C P : C konvex C b) Schnitt zweier konvexen Mengen](https://reader034.fdocument.pub/reader034/viewer/2022050612/5fb2de97e500675fb17b87fd/html5/thumbnails/90.jpg)
Andreas Gemsa · Ubung Algorithmische Geometrie
Das war’s!
Nachster Termin:Donnerstag, 28.04, 10:15 Uhr
SegmentschnitteRaum 131, Gebaude 50.34
Fragen?