Institut für Informatik Lehrstuhl für Informatik 15 Computer Graphik & Visualisierung Diskrete Strukturen I Wintersemester 2006/2007 Tutorübung 7 Seite 1 von 3 Prof. R. Westermann, J. Schneider, J. Georgii, S. Pott TU München, 04.12.2006 Tutorübung zu Diskrete Strukturen I (Blatt 7) Aufgabe A [* Punkte] Art Gallery Theorem Ein Museum möchte seine Kunstwerke mit schwenkbaren Kameras überwachen. Natürlich sollen alle Exponate klar sichtbar sein, aber auf der anderen Seite kosten Kameras Geld, daher sollen nur so viele wie unbedingt nötig angeschafft werden. Dazu werden folgende Annahmen gemacht: • Der Kamerawinkel ist beliebig groß, da die Kameras schwenkbar sind. • Die Museumsräume sind vergleichsweise einfach: Ein 2D Grundriss reicht, um die gesamte Geometrie der Räume (bis auf eine konstante Raumhöhe) zu bestimmen. • An jeder Wand hängt mindestens ein Bild, daher muss immer die ganze Wand sichtbar sein. • Vereinfachend wird weiter angenommen, dass es reicht, Kameras in den Ecken anzubringen. Diese sehen dann mindestens den Raum zwischen den angrenzenden Wänden. Daher wandelt man den Grundriss in einen Polygonzug um: • Platziere einen Knoten in jede “Ecke” des Grundrisses. • Verbinde zwei Knoten mit einer Kante, wenn zwischen den dazugehörigen Ecken des Grundrisses eine Wand existiert. Abbildung 1. Grundriss und eine zugehörige Triangulierung. a) Wieviele Kameras benötigen Sie für den in Abb. 1 links dargestellten Grundriss mindestens ? b) Können Sie sich einen “noch schlechteren” Grundriss vorstellen ? Messen Sie “schlechter” als den Quotienten von benötigten Kameras zur Anzahl Eckpunkte. c) Können Sie eine Aussage machen, wieviele Kameras Sie im schlimmsten Fall benötigen ? Nun zur Formalisierung: Jeder geschlossene Polygonzug ohne Selbstüberlappung besitzt eine Triangulierung (warum ist das so?). Eine Triangulierung ist eine Zerlegung der Innenfläche in nicht überlappende Dreiecke. Beachten Sie: Diese Zerlegung fügt keine neuen Punkte ein, nur neue Kanten. Können Sie mit diesem Zusatzwissen, der Knotenfärbbarkeit von Graphen und dem Schubfachprinzip den folgenden Satz beweisen? Art Gallery Theorem Um ein Museum komplett zu überwachen, dessen Grundriss zu einem Polygon mit N Knoten korrespondiert, benötigt man immer höchstens ⌊ N3 ⌋ Kameras. Außerdem gibt es ein Polygon mit 3k Knoten, so dass genau k Kameras nötig sind. Seite 2 von 3 Lösungen: Aufgabe A [* Punkte] Art Gallery Abbildung 2. Links: “schlechterer” Polygonzug. Rechts: Polygonzug, der N /3 Kameras erfordert. a) Man benötigt nur eine Kamera. b) Siehe Abbildung 2 links. Hier werden zwei Kameras benötigt. c) Es lassen sich mehr oder weniger einfach Beispiele mit ca. N3 Kameras konstruieren, siehe Abbildung 2 rechts. Durch Hinzunahme weiterer Zacken (mit 3 zusätzlichen Knoten pro Zacken) kann man den Graphen beliebig erweitert werden, so dass pro 3 Knoten eine weitere Kamera nötig ist. Art Gallery Theorem Lemma: Jede Triangulierung eines Polygons ohne Selbstüberschneidung ist 3-färbbar. Beweis (konstruktiv): Jede oben beschriebene Triangulierung von N Knoten hat genau N − 2 Dreiecke (resultiert aus der Euler’schen Polyederformel für planare Graphen). Daher muss es nach dem Schubfachprinzip mindestens ein Dreieck geben, welches zwei Kanten mit dem Polygonzug gemeinsam hat. Genauer gibt es mindestens zwei solche Dreiecke, die in zwei Kanten überlappen, oder mindestens eines, welches in drei Kanten überlappt. Gibt es ein Dreieck, welches in drei Kanten überlappt, dann ist der Polygonzug selbst ein Dreieck (N = 3). Man beginnt die Knotenfärbung also an einem beliebigen Dreieck, welches mindestens zwei Kanten mit dem Polygonzug gemeinsam hat, und verteilt drei Farbmarker rot, grün, blau auf die Knoten. Für jedes weitere Dreieck, welches erst zwei Knoten gefärbt hat, ergibt sich die dritte Farbe zwingend. Das wiederholt man solange, bis die gesamte Triangulierung gefärbt ist. Inkonsistenzen können nicht auftreten, da es keine geschlossenen Dreiecksfächer (triangle fans) – keine inneren Punkte – geben kann. Siehe auch Abbildung 3. Abbildung 3. Triangulierter Polygonzug und 3-Färbung. Kameras sind bei “grün” zu platzieren. Konvexität von Dreiecken Wie bereits in Aufgabe 26 verwendet, ist die Punktmenge aller Punkte in einem Dreieck mit Rand Seite 3 von 3 konvex, d.h. die Menge der Punkte, die durch eine Verbindungslinie zwischen zwei beliebigen Punkten des Dreieck abgedeckt werden, ist wieder vollständig im Dreieck enthalten. Das bedeutet im Rahmen dieses Problems, dass eine Kamera in einem Eckpunkt das ganze Dreieck überblicken kann. Schubfachprinzip Es reicht also, eine Kamera entweder an jeden rot gefärbten Knoten zu stellen, oder an jeden grünen, oder an jeden blauen. Nach dem Schubfachprinzip gibt es aber entweder höchstens ⌊ N3 ⌋ rote, oder ⌊ N3 ⌋ grüne oder ⌊ N3 ⌋ blaue Knoten. Folglich finde also die Farbe, die am seltensten vorkommt, und platziere eine Kamera in jeden entsprechend gefärbten Knoten. Also ist die Forderung nach ⌊ N3 ⌋ Kameras hinreichend. Das Beispiel für Aufgabe c) zeigt aber auch, dass ⌊ N3 ⌋ notwendig ist.