1 Visualisierung von Graphen Aufwärtsplanare Zeichnungen 5. Vorlesung Sommersemester 2015 (basierend auf Folien von Martin Nöllenburg und Robert Görke, KIT) Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 2 Das Problem Definition. Ein gerichteter Graph D = (V , A) ist aufwärtsplanar, wenn er eine Zeichnung hat, bei der alle Kanten nach oben gerichtete y -monotone Kurven sind sich keine zwei Kanten schneiden. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 2 Das Problem Definition. Ein gerichteter Graph D = (V , A) ist aufwärtsplanar, wenn er eine Zeichnung hat, bei der alle Kanten nach oben gerichtete y -monotone Kurven sind sich keine zwei Kanten schneiden. Offensichtliche Voraussetzungen? Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 2 Das Problem Definition. Ein gerichteter Graph D = (V , A) ist aufwärtsplanar, wenn er eine Zeichnung hat, bei der alle Kanten nach oben gerichtete y -monotone Kurven sind sich keine zwei Kanten schneiden. Offensichtliche Voraussetzungen? – Planar & azyklisch. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 2 Das Problem Definition. Ein gerichteter Graph D = (V , A) ist aufwärtsplanar, wenn er eine Zeichnung hat, bei der alle Kanten nach oben gerichtete y -monotone Kurven sind sich keine zwei Kanten schneiden. Offensichtliche Voraussetzungen? – Planar & azyklisch. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 2 Das Problem Definition. Ein gerichteter Graph D = (V , A) ist aufwärtsplanar, wenn er eine Zeichnung hat, bei der alle Kanten nach oben gerichtete y -monotone Kurven sind sich keine zwei Kanten schneiden. Offensichtliche Voraussetzungen? – Planar & azyklisch. nicht hinreichend! Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 3 Aufwärtsplanarität Problem: Test auf Aufwärtsplanarität Gegeben sei ein gerichteter azyklischer Graph D = (V , A). Teste, ob D aufwärtsplanar ist. Falls ja, konstruiere entsprechende Zeichnung. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 3 Aufwärtsplanarität Problem: Test auf Aufwärtsplanarität Gegeben sei ein gerichteter azyklischer Graph D = (V , A). Teste, ob D aufwärtsplanar ist. Falls ja, konstruiere entsprechende Zeichnung. Problem0 : Test auf Aufwärtsplanarität, eingebettet Geg. gerichteter azyk. Graph D = (V , A) mit Einbettung F, f0 . Teste, ob D bezüglich F, f0 aufwärtsplanar ist. Falls ja, konstruiere entsprechende Zeichnung. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 3 Aufwärtsplanarität Problem: Test auf Aufwärtsplanarität Gegeben sei ein gerichteter azyklischer Graph D = (V , A). Teste, ob D aufwärtsplanar ist. Falls ja, konstruiere entsprechende Zeichnung. NP-schwer! [Garg & Tamassia ’95] Problem0 : Test auf Aufwärtsplanarität, eingebettet Geg. gerichteter azyk. Graph D = (V , A) mit Einbettung F, f0 . Teste, ob D bezüglich F, f0 aufwärtsplanar ist. Falls ja, konstruiere entsprechende Zeichnung. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 3 Aufwärtsplanarität Problem: Test auf Aufwärtsplanarität Gegeben sei ein gerichteter azyklischer Graph D = (V , A). Teste, ob D aufwärtsplanar ist. Falls ja, konstruiere entsprechende Zeichnung. NP-schwer! [Garg & Tamassia ’95] Problem0 : Test auf Aufwärtsplanarität, eingebettet Geg. gerichteter azyk. Graph D = (V , A) mit Einbettung F, f0 . Teste, ob D bezüglich F, f0 aufwärtsplanar ist. Falls ja, konstruiere entsprechende Zeichnung. kann effizient getestet werden! Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I [diese Vorlesung] · Universität Würzburg 4-1 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Dann sind folgende Aussagen äquivalent. 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-2 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Dann sind folgende Aussagen äquivalent. 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-3 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Dann sind folgende Aussagen äquivalent. 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. | {z } ohne Kreuzung in der Ebene zeichenbar Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-4 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Dann sind folgende Aussagen äquivalent. 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. | {z } | {z } ohne Kreuzung in der Ebene zeichenbar azyklischer gerichteter Graph mit einer einzigen Quelle s und einer einzigen Senke t Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-5 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Dann sind folgende Aussagen äquivalent. 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. | {z } | {z } ohne Kreuzung in zusätzlich: der Ebene zeichenbar so eingebettet, dass s azyklischer gerichteter Graph und t auf der äußeren mit einer einzigen Quelle s Facette f0 liegen und einer einzigen Senke t Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-6 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Dann sind folgende Aussagen äquivalent. 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. | {z } | {z } ohne Kreuzung in zusätzlich: der Ebene zeichenbar so eingebettet, dass s azyklischer gerichteter Graph und t auf der äußeren mit einer einzigen Quelle s Facette f0 liegen und einer einzigen Senke t Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-7 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Dann sind folgende Aussagen äquivalent. 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-8 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Dann sind folgende Aussagen äquivalent. 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-9 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Beweis siehe Buch Dann sind folgende Aussagen äquivalent. [DETT, Kap. 6.1] 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 4-10 The Big Picture: eine Charakterisierung Satz. [Kelly ’87, Di Battista & Tamassia ’88] Sei D = (V , A) ein gerichteter Graph. Beweis siehe Buch Dann sind folgende Aussagen äquivalent. [DETT, Kap. 6.1] 1. D ist aufwärtsplanar. 2. D kann geradlinig aufwärtsplanar gezeichnet werden. 3. D ist aufspannender Teilgraph eines planaren st-Graphen. lassen sich aufwärtsplanar zeichnen, s. Buch [DETT, Kap. 6.1] Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 5 Bimodalität Knoten bimodal Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 5 Bimodalität Knoten bimodal nicht bimodal Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 5 Bimodalität Knoten bimodal nicht bimodal Philipp Kindermann, Alexander Wolff · Definition Ein eingebetteter gerichteter Graph ist bimodal :⇔ alle Knoten sind bimodal Lehrstuhl für Informatik I · Universität Würzburg 5 Bimodalität Knoten bimodal nicht bimodal Definition Ein eingebetteter gerichteter Graph ist bimodal :⇔ alle Knoten sind bimodal Lemma Ein eingebetteter gerichteter Graph ist höchstens dann aufwärtsplanar, wenn er bimodal ist. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 6 Zusammenhang Winkelgröße vs. Quellen & Senken Für Facette f einer geradlinigen Zeichnung betrachte Winkel an – lokalen Senken (Knoten mit 2 eingehende Kanten auf ∂ f ) – lokalen Quellen (Knoten mit 2 ausgehenden Kanten auf ∂ f ) f Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 6 Zusammenhang Winkelgröße vs. Quellen & Senken Für Facette f einer geradlinigen Zeichnung betrachte Winkel an – lokalen Senken (Knoten mit 2 eingehende Kanten auf ∂ f ) – lokalen Quellen (Knoten mit 2 ausgehenden Kanten auf ∂ f ) f Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 6 Zusammenhang Winkelgröße vs. Quellen & Senken Für Facette f einer geradlinigen Zeichnung betrachte Winkel an – lokalen Senken (Knoten mit 2 eingehende Kanten auf ∂ f ) – lokalen Quellen (Knoten mit 2 ausgehenden Kanten auf ∂ f ) L(f ) := Anzahl großer Winkel (Intuition: in Zeichnung > π) S (f ) := Anzahl kleiner Winkel A(f ) := Anzahl lokaler Quellen (= Anzahl lokaler Senken) f Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 6 Zusammenhang Winkelgröße vs. Quellen & Senken Für Facette f einer geradlinigen Zeichnung betrachte Winkel an – lokalen Senken (Knoten mit 2 eingehende Kanten auf ∂ f ) – lokalen Quellen (Knoten mit 2 ausgehenden Kanten auf ∂ f ) L(f ) := Anzahl großer Winkel (Intuition: in Zeichnung > π) S (f ) := Anzahl kleiner Winkel A(f ) := Anzahl lokaler Quellen (= Anzahl lokaler Senken) Es gilt: L(f ) + S (f ) = Philipp Kindermann, Alexander Wolff f · Lehrstuhl für Informatik I · Universität Würzburg 6 Zusammenhang Winkelgröße vs. Quellen & Senken Für Facette f einer geradlinigen Zeichnung betrachte Winkel an – lokalen Senken (Knoten mit 2 eingehende Kanten auf ∂ f ) – lokalen Quellen (Knoten mit 2 ausgehenden Kanten auf ∂ f ) L(f ) := Anzahl großer Winkel (Intuition: in Zeichnung > π) S (f ) := Anzahl kleiner Winkel A(f ) := Anzahl lokaler Quellen (= Anzahl lokaler Senken) Es gilt: L(f ) + S (f ) = 2A(f ) Philipp Kindermann, Alexander Wolff f · Lehrstuhl für Informatik I · Universität Würzburg 6 Zusammenhang Winkelgröße vs. Quellen & Senken Für Facette f einer geradlinigen Zeichnung betrachte Winkel an – lokalen Senken (Knoten mit 2 eingehende Kanten auf ∂ f ) – lokalen Quellen (Knoten mit 2 ausgehenden Kanten auf ∂ f ) L(f ) := Anzahl großer Winkel (Intuition: in Zeichnung > π) S (f ) := Anzahl kleiner Winkel A(f ) := Anzahl lokaler Quellen (= Anzahl lokaler Senken) Es gilt: L(f ) + S (f ) = 2A(f ) f Per Induktion zeigt ( man: ) −2, f 6= f0 L(f ) − S (f ) = +2, f = f0 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 6 Zusammenhang Winkelgröße vs. Quellen & Senken Für Facette f einer geradlinigen Zeichnung betrachte Winkel an – lokalen Senken (Knoten mit 2 eingehende Kanten auf ∂ f ) – lokalen Quellen (Knoten mit 2 ausgehenden Kanten auf ∂ f ) L(f ) := Anzahl großer Winkel (Intuition: in Zeichnung > π) S (f ) := Anzahl kleiner Winkel A(f ) := Anzahl lokaler Quellen (= Anzahl lokaler Senken) Es gilt: L(f ) + S (f ) = 2A(f ) f Per Induktion zeigt ( man: ) −2, f 6= f0 ⇒ L(f ) − S (f ) = +2, f = f0 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 6 Zusammenhang Winkelgröße vs. Quellen & Senken Für Facette f einer geradlinigen Zeichnung betrachte Winkel an – lokalen Senken (Knoten mit 2 eingehende Kanten auf ∂ f ) – lokalen Quellen (Knoten mit 2 ausgehenden Kanten auf ∂ f ) L(f ) := Anzahl großer Winkel (Intuition: in Zeichnung > π) S (f ) := Anzahl kleiner Winkel A(f ) := Anzahl lokaler Quellen (= Anzahl lokaler Senken) Es gilt: L(f ) + S (f ) = 2A(f ) f Per Induktion zeigt ( man: ) ( −2, f 6= f0 A(f ) − 1, ⇒ L(f ) = L(f ) − S (f ) = +2, f = f0 A(f ) + 1, Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · f = 6 f0 f = f0 Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 Philipp Kindermann, Alexander Wolff ⇒ S (f ) = 2 · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 f u Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 Trenne f auf. f u Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 Trenne f auf. v f1 f2 u Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 Trenne f auf. v L(f ) − S(f ) = L(f1 ) + L(f2 ) + 1 − (S(f1 ) + S(f2 ) − 1) f1 f2 = −2 u Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 Trenne f auf. v 1. v Senke mit kleinem Winkel: L(f ) − S(f ) = L(f1 ) + L(f2 ) + 1 − (S(f1 ) + S(f2 ) − 1) f1 f2 = −2 u Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 Trenne f auf. v 1. v Senke mit kleinem Winkel: L(f ) − S(f ) = L(f1 ) + L(f2 ) + 1 − (S(f1 ) + S(f2 ) − 1) f1 f2 = −2 u Induktionsvoraussetzung Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 v Trenne f auf. 2. v Senke mit großem Winkel: L(f ) − S(f ) = L(f1 ) + L(f2 ) + 1 − (S(f1 ) + S(f2 ) − 1) f1 f2 = −2 u Induktionsvoraussetzung Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 v Trenne f auf. 3. v Quelle mit großem Winkel: L(f ) − S(f ) = L(f1 ) + L(f2 ) + 2 − (S(f1 ) + S(f2 )) f1 f2 = −2 u Induktionsvoraussetzung Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 Trenne f auf. v 4. v Quelle mit kleinem Winkel: u Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 7 Beweis: L(f ) − S(f ) = −2 für f 6= f0 L(f ) = 0 ⇒ S (f ) = 2 L(f ) ≥ 1 v Trenne f auf. 5. v keine Quelle/Senke: L(f ) − S(f ) = L(f1 ) + L(f2 ) + 1 − (S(f1 ) + S(f2 ) − 1) f1 f2 = −2 u Induktionsvoraussetzung Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 8 Beobachtungen Betrachte Winkel zwischen zwei ein-/ausgehenden Kanten. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 8 Beobachtungen Betrachte Winkel zwischen zwei ein-/ausgehenden Kanten. Lemma Sei D ein gerichteter Graph. In jeder aufwärtsplanaren Zeichnung von ( D gilt: 0 v innerer Knoten, (1) für jeden Knoten v ∈ V : L(v ) = 1 v Quelle/Senke. ( A(f ) − 1 f 6= f0 , (2) für jede Facette f ∈ F : L(f ) = A(f ) + 1 f = f0 . Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 8 Beobachtungen Betrachte Winkel zwischen zwei ein-/ausgehenden Kanten. Lemma Sei D ein gerichteter Graph. In jeder aufwärtsplanaren Zeichnung von ( D gilt: 0 v innerer Knoten, (1) für jeden Knoten v ∈ V : L(v ) = 1 v Quelle/Senke. ( A(f ) − 1 f 6= f0 , (2) für jede Facette f ∈ F : L(f ) = A(f ) + 1 f = f0 . ( Φ: Q ∪ S → F A(f ) − 1 f 6= f0 −1 v 7→ inzid. Facette |Φ (f )| = A(f ) + 1 f = f0 globale Quellen und Senken Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 8 Beobachtungen Betrachte Winkel zwischen zwei ein-/ausgehenden Kanten. Lemma Sei D ein gerichteter Graph. In jeder aufwärtsplanaren Zeichnung von ( D gilt: 0 v innerer Knoten, (1) für jeden Knoten v ∈ V : L(v ) = 1 v Quelle/Senke. ( A(f ) − 1 f 6= f0 , (2) für jede Facette f ∈ F : L(f ) = A(f ) + 1 f = f0 . ( ) Φ: Q ∪ S → F A(f ) − 1 f 6= f0 −1 v 7→ inzid. Facette |Φ (f )| = L(f ) A(f ) + 1 f = f0 heißt konsistent, wenn gilt globale Quellen und Senken Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 8 Beobachtungen Betrachte Winkel zwischen zwei ein-/ausgehenden Kanten. Lemma Sei D ein gerichteter Graph. In jeder aufwärtsplanaren Zeichnung von ( D gilt: 0 v innerer Knoten, (1) für jeden Knoten v ∈ V : L(v ) = 1 v Quelle/Senke. ( A(f ) − 1 f 6= f0 , (2) für jede Facette f ∈ F : L(f ) = A(f ) + 1 f = f0 . ( ) Φ: Q ∪ S → F A(f ) − 1 f 6= f0 −1 v 7→ inzid. Facette |Φ (f )| = A(f ) + 1 f = f0 heißt konsistent, wenn gilt globale Quellen und Senken Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 9 Beispiel Facettenzuordnung f4 f8 f3 f1 f9 f5 f6 f0 f2 f7 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 9 Beispiel Facettenzuordnung v9 v8 globale Quellen und Senken f4 f8 f3 v5 f1 v7 v6 f9 f5 v4 f6 f0 f2 v3 v2 f7 v1 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 9 Beispiel Facettenzuordnung v9 globale Quellen und Senken A(f3 ) = 1 v8 f4 f3 v5 f1 v7 v6 A(f5 ) = 2 A(f1 ) = 3 f0 A(f0 ) = 3 f8 A(f8 ) = 1 A(f4 ) = 2 f5 f2 A(f9 ) = 1 v4 f6 A(f2 ) = 1 f9 A(f6 ) = 1 A(f7 ) = 2 v3 v2 f7 v1 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 9 Beispiel Facettenzuordnung v9 v8 A(f3 ) = 1 L(f3 ) = 0 v5 f4 A(f4 ) = 2 L(f4 ) = 1 f3 f1 A(f0 ) = 3 L(f0 ) = 4 v7 v6 A(f1 ) = 3 L(f1 ) = 2 f0 globale Quellen und Senken f5 A(f6 ) = 1 L(f6 ) = 0 A(f7 ) = 2 L(f7 ) = 1 v2 f9 A(f9 ) = 1 L(f9 ) = 0 v4 f6 A(f2 ) = 1 L(f2 ) = 0 f2 A(f5 ) = 2 L(f5 ) = 1 f8 A(f8 ) = 1 L(f8 ) = 0 v3 f7 v1 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 9 Beispiel Facettenzuordnung v9 v8 A(f3 ) = 1 L(f3 ) = 0 v5 f4 A(f4 ) = 2 L(f4 ) = 1 f3 f1 A(f0 ) = 3 L(f0 ) = 4 v7 v6 A(f1 ) = 3 L(f1 ) = 2 f0 globale Quellen und Senken f5 f9 A(f6 ) = 1 L(f6 ) = 0 A(f7 ) = 2 L(f7 ) = 1 v2 Zuordnung φ:Q∪S →F A(f9 ) = 1 L(f9 ) = 0 v4 f6 A(f2 ) = 1 L(f2 ) = 0 f2 A(f5 ) = 2 L(f5 ) = 1 f8 A(f8 ) = 1 L(f8 ) = 0 v3 f7 v1 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 10 Kernaussage Satz Sei D = (V , A) gerichteter azykl. Graph mit Einbettung F, f0 . Dann gilt: D aufwärtsplanar bzgl. F, f0 ⇔ bimodal und ∃ konsistentes Φ . Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 10 Kernaussage Satz Sei D = (V , A) gerichteter azykl. Graph mit Einbettung F, f0 . Dann gilt: D aufwärtsplanar bzgl. F, f0 ⇔ bimodal und ∃ konsistentes Φ . ⇒: soeben hergeleitet Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 10 Kernaussage Satz Sei D = (V , A) gerichteter azykl. Graph mit Einbettung F, f0 . Dann gilt: D aufwärtsplanar bzgl. F, f0 ⇔ bimodal und ∃ konsistentes Φ . ⇒: soeben hergeleitet ⇐: zu zeigen: Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 10 Kernaussage Satz Sei D = (V , A) gerichteter azykl. Graph mit Einbettung F, f0 . Dann gilt: D aufwärtsplanar bzgl. F, f0 ⇔ bimodal und ∃ konsistentes Φ . ⇒: soeben hergeleitet ⇐: zu zeigen: – konstruiere st-Graph ⊇ D Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 10 Kernaussage Satz Sei D = (V , A) gerichteter azykl. Graph mit Einbettung F, f0 . Dann gilt: D aufwärtsplanar bzgl. F, f0 ⇔ bimodal und ∃ konsistentes Φ . ⇒: soeben hergeleitet ⇐: zu zeigen: – konstruiere st-Graph ⊇ D – wende Äquivalenz vom Anfang der Vorlesung an Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 10 Kernaussage Satz Sei D = (V , A) gerichteter azykl. Graph mit Einbettung F, f0 . Dann gilt: D aufwärtsplanar bzgl. F, f0 ⇔ bimodal und ∃ konsistentes Φ . ⇒: soeben hergeleitet ⇐: zu zeigen: – konstruiere st-Graph ⊇ D – wende Äquivalenz vom Anfang der Vorlesung an Zunächst: D , F, f0 Philipp Kindermann, Alexander Wolff ? → Φ konsistent · Lehrstuhl für Informatik I · Universität Würzburg 11 Flussnetzwerk zur Konstruktion von Φ Definition Flussnetzwerk NF ,f0 (D ) = ((W , AN ); l ; u ; b ) W = {v ∈ V | v ist Quelle oder Senke} ∪ F AN = {(v , f ) | v inzident zu f } l (a) = 0 ∀a ∈ AN u (a) = 1 ∀a ∈ AN ∀q ∈ W ∩ V 1 b (q ) = −(A(q ) − 1) ∀q ∈ F \ {f0 } −(A(q ) + 1) q = f0 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 12 Beispielnetzwerk normaler Knoten Quelle / Senke Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 12 Beispielnetzwerk normaler Knoten Quelle / Senke Facettenknoten Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 12 Beispielnetzwerk 1 −1 1 0 1 1 1 −2 1 −3 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I normaler Knoten Quelle / Senke Facettenknoten · Universität Würzburg 12 Beispielnetzwerk 1 −1 1 0 1 1 1 −2 1 −3 normaler Knoten Quelle / Senke Facettenknoten Starte mit Nullfluss Suche erhöhende Wege Geht auch ohne festgelegtes f0 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 12 Beispielnetzwerk 1 −1 1 0 1 1 1 −2 1 −3 normaler Knoten Quelle / Senke Facettenknoten Starte mit Nullfluss Suche erhöhende Wege Geht auch ohne festgelegtes f0 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z S S S Philipp Kindermann, Alexander Wolff · L L Lehrstuhl für Informatik I S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z S S S Philipp Kindermann, Alexander Wolff · L L Lehrstuhl für Informatik I S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z y S S Philipp Kindermann, Alexander Wolff · x L L Lehrstuhl für Informatik I S · S z Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z y S x Quelle ⇒ verfeinere mit (z , x ) S Philipp Kindermann, Alexander Wolff · x L L Lehrstuhl für Informatik I S · S z Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z y S x Quelle ⇒ verfeinere mit (z , x ) S Philipp Kindermann, Alexander Wolff · x L L Lehrstuhl für Informatik I S · S z Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z y S x Quelle ⇒ verfeinere mit (z , x ) S Philipp Kindermann, Alexander Wolff · x L L Lehrstuhl für Informatik I S · S z Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z S x Quelle ⇒ verfeinere mit (z , x ) S Philipp Kindermann, Alexander Wolff · S L L Lehrstuhl für Informatik I S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z S x Quelle ⇒ verfeinere mit (z , x ) S Philipp Kindermann, Alexander Wolff · S L L Lehrstuhl für Informatik I S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z z S x Quelle ⇒ verfeinere mit (z , x ) y Philipp Kindermann, Alexander Wolff · L S x Lehrstuhl für Informatik I S L S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z z S x Quelle ⇒ verfeinere mit (z , x ) x Senke ⇒ verfeinere mit (x , z ) y Philipp Kindermann, Alexander Wolff · L S x Lehrstuhl für Informatik I S L S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z z S x Quelle ⇒ verfeinere mit (z , x ) x Senke ⇒ verfeinere mit (x , z ) y Philipp Kindermann, Alexander Wolff · L S x Lehrstuhl für Informatik I S L S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z z S x Quelle ⇒ verfeinere mit (z , x ) x Senke ⇒ verfeinere mit (x , z ) y Philipp Kindermann, Alexander Wolff · L S x Lehrstuhl für Informatik I S L S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z x Quelle ⇒ verfeinere mit (z , x ) x Senke ⇒ verfeinere mit (x , z ) Philipp Kindermann, Alexander Wolff · S S S L L Lehrstuhl für Informatik I S · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z x Quelle ⇒ verfeinere mit (z , x ) x Senke ⇒ verfeinere mit (x , z ) S S S L L S Verfeinerung der Außenfacette f0 Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 13 Algorithmus: Φ, F, f0 → st-Graph k D Sei f Facette. Betrachte Folge σf von Winkeln L/S an lokalen Quellen und Senken von f (im UZS) Ziel: Entferne alle Quellen und Senken durch neue Kanten f 6= f0 mit |σf | ≥ 2 enthält hL, S, Si an Knoten x , y , z x Quelle ⇒ verfeinere mit (z , x ) x Senke ⇒ verfeinere mit (x , z ) S S S L L S Verfeinerung der Außenfacette f0 Verfeinere alle f ∈ F ⇒ planarer st-Graph, der D enthält Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-1 Beispiel Verfeinerung S S S L L S L S L S S L S S S S S S L S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-2 Beispiel Verfeinerung S S S L L S L S L S S L S S S S S S L S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-3 Beispiel Verfeinerung S S S L L S L S L S S L S S S S S S S S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-4 Beispiel Verfeinerung S S S L L S L S L S S L S S S S S S S S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-5 Beispiel Verfeinerung S S S S L S L S L S S L S S S S S S S S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-6 Beispiel Verfeinerung S S S S L S S L L S S L S S S S S S S S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-7 Beispiel Verfeinerung S S S S L S S L S S SS L S S S S S S S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-8 Beispiel Verfeinerung S S S S S L S S S S S L S S SS S S S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-9 Beispiel Verfeinerung S S SS S S S S S S S L S S SS S S S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-10 Beispiel Verfeinerung S S SS S S S S S S S S S S SS S S S Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-11 Beispiel Verfeinerung t S S SS S S S S S S S S S S SS S S S s Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 14-12 Beispiel Verfeinerung t S S SS S S S S S S S S S S SS S S S s Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 15 Zusammenfassung Eingabe: Eingebetteter, gerichteter, azykl. Graph G = (V , E ). Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 15 Zusammenfassung Eingabe: Eingebetteter, gerichteter, azykl. Graph G = (V , E ). Prüfe, ob Einbettung bimodal. Teste mit Flussnetzwerk, ob konsistentes Φ existiert. Falls bimodal und Φ existiert, zeichne G aufwärtsplanar: Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 15 Zusammenfassung Eingabe: Eingebetteter, gerichteter, azykl. Graph G = (V , E ). Prüfe, ob Einbettung bimodal. Teste mit Flussnetzwerk, ob konsistentes Φ existiert. Falls bimodal und Φ existiert, zeichne G aufwärtsplanar: – verfeinere G zu planarem st -Graphen G 0 – Zeichne G 0 mit Algorithmus für st -Graphen – Lösche Verfeinerungskanten wieder Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 15 Zusammenfassung Eingabe: Eingebetteter, gerichteter, azykl. Graph G = (V , E ). Prüfe, ob Einbettung bimodal. Teste mit Flussnetzwerk, ob konsistentes Φ existiert. Falls bimodal und Φ existiert, zeichne G aufwärtsplanar: – verfeinere G zu planarem st -Graphen G 0 – Zeichne G 0 mit Algorithmus für st -Graphen – Lösche Verfeinerungskanten wieder Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I Lässt sich aufwärtsplanar zeichnen, s. Buch [DETT, Kap. 6.1] · Universität Würzburg 15 Zusammenfassung Eingabe: Eingebetteter, gerichteter, azykl. Graph G = (V , E ). Prüfe, ob Einbettung bimodal. Teste mit Flussnetzwerk, ob konsistentes Φ existiert. Falls bimodal und Φ existiert, zeichne G aufwärtsplanar: – verfeinere G zu planarem st -Graphen G 0 – Zeichne G 0 mit Algorithmus für st -Graphen – Lösche Verfeinerungskanten wieder Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I Lässt sich aufwärtsplanar zeichnen, s. Buch [DETT, Kap. 6.1] – aber Platzbedarf exponentiell! · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } `(a) = 0 ∀a ∈ A Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } `(a) = 0 ∀a ∈ A u (a) = 2π ∀a ∈ A Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } `(a) = 0 ∀a ∈ A u (a) = 2π ∀a ∈ A b (v ) = 2π ∀v ∈ V Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } `(a) = 0 ∀a ∈ A u (a) = 2π ∀a ∈ A b (v ) = ( 2π ∀v ∈ V −(deg(f ) − 2)π falls f = 6 f0 , b (f ) = −(deg(f ) + 2)π sonst Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } `(a) = 0 ∀a ∈ A u (a) = 2π ∀a ∈ A b (v ) = ( 2π ∀v ∈ V −(deg(f ) − 2)π falls f = 6 f0 , b (f ) = −(deg(f ) + 2)π sonst Fluss liefert Zuweisung x (· , · ) von Winkelwerten mit: P 1. Knotenbed.: ∀v ∈ V : P f ∼v x (v , f ) = 2π 2. Facettenbed.: ∀f ∈ F : v ∼f x (v , f ) = (deg(f ) ∓ 2)π Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } `(a) = 0 ∀a ∈ A u (a) = 2π ∀a ∈ A b (v ) = ( 2π ∀v ∈ V −(deg(f ) − 2)π falls f = 6 f0 , b (f ) = −(deg(f ) + 2)π sonst Fluss liefert Zuweisung x (· , · ) von Winkelwerten mit: P 1. Knotenbed.: ∀v ∈ V : P f ∼v x (v , f ) = 2π 2. Facettenbed.: ∀f ∈ F : v ∼f x (v , f ) = (deg(f ) ∓ 2)π Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } `(a) = 0 ∀a ∈ A u (a) = 2π ∀a ∈ A b (v ) = ( 2π ∀v ∈ V −(deg(f ) − 2)π falls f = 6 f0 , b (f ) = −(deg(f ) + 2)π sonst Fluss liefert Zuweisung x (· , · ) von Winkelwerten mit: P 1. Knotenbed.: ∀v ∈ V : P f ∼v x (v , f ) = 2π 2. Facettenbed.: ∀f ∈ F : v ∼f x (v , f ) = (deg(f ) ∓ 2)π 1. und 2. erfüllt: Zuweisung lokal konsistent. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 16 Bestimmung der Winkel per Flussnetzwerk? W := V ∪ F A := {(v , f ) ∈ V × F : v inzident (∼) zu f } `(a) = 0 ∀a ∈ A u (a) = 2π ∀a ∈ A b (v ) = ( 2π ∀v ∈ V −(deg(f ) − 2)π falls f = 6 f0 , b (f ) = −(deg(f ) + 2)π sonst Fluss liefert Zuweisung x (· , · ) von Winkelwerten mit: P 1. Knotenbed.: ∀v ∈ V : P f ∼v x (v , f ) = 2π 2. Facettenbed.: ∀f ∈ F : v ∼f x (v , f ) = (deg(f ) ∓ 2)π 1. und 2. erfüllt: Zuweisung lokal konsistent. Bem. Mithilfe von Kantenkosten könnte man die Winkelauflösung maximieren. Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 17 Lokale Konsistenz 6⇒ globale Konsistenz x π 6 π 6 2π 3 2π 3 v π 6 u 10π 6 2π 3 π 6 π 12 3π 12 w 19π 12 Philipp Kindermann, Alexander Wolff 21π 12 · Lehrstuhl für Informatik I · Universität Würzburg 17 Lokale Konsistenz 6⇒ globale Konsistenz x π 6 π 6 2π 3 2π 3 v π 6 u 10π 6 gleichschenklig 2π 3 π 6 π 12 3π 12 w 19π 12 Philipp Kindermann, Alexander Wolff 21π 12 · Lehrstuhl für Informatik I · Universität Würzburg 17 Lokale Konsistenz 6⇒ globale Konsistenz x π 6 π 6 2π 3 2π 3 v π 6 u 10π 6 gleichschenklig 2π 3 π 6 π 12 3π 12 w 19π 12 21π 12 nicht gleichschenklig! Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 18 Charakterisierung bei Dreiecksgraphen Satz. [Di Battista & Vismara ’93] Gegeben ein planarer Dreiecksgraph? mit Einbettung F, f0 und Winkelzuweisung x , dann gilt: Es existiert geradlinige Zeichnung mit R2 \ f0 konvex P 1. Knotenwinkel = 2π P 2. Facettenwinkel = π Qdeg v sin αi ⇔ 3. für alle v f0 gilt im Rad Rv : i =1 sin βi = 1 P 4. für alle v ∼ f0 gilt: v ∼f 6=f x (v , f ) ≤ π 0 ?) Alle Facetten f 6= f0 sind Dreiecke (C3 ). Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 18 Charakterisierung bei Dreiecksgraphen Satz. [Di Battista & Vismara ’93] Gegeben ein planarer Dreiecksgraph? mit Einbettung F, f0 und Winkelzuweisung x , dann gilt: α1 β4 2 Es existiert geradlinige Zeichnung mit R \ f0 konvex P β1 v α4 1. Knotenwinkel = 2π α2 P β3 2. Facettenwinkel = π β2 α3 Q Rv ⇔ deg v sin αi 3. für alle v f0 gilt im Rad Rv : i =1 sin βi = 1 P 4. für alle v ∼ f0 gilt: v ∼f 6=f x (v , f ) ≤ π 0 ?) Alle Facetten f 6= f0 sind Dreiecke (C3 ). Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg 18 Charakterisierung bei Dreiecksgraphen Satz. [Di Battista & Vismara ’93] Gegeben ein planarer Dreiecksgraph? mit Einbettung F, f0 und Winkelzuweisung x , dann gilt: α1 β4 2 Es existiert geradlinige Zeichnung mit R \ f0 konvex P β1 v α4 1. Knotenwinkel = 2π α2 P β3 2. Facettenwinkel = π β2 α3 Q Rv ⇔ deg v sin αi 3. für alle v f0 gilt im Rad Rv : i =1 sin βi = 1 P 4. für alle v ∼ f0 gilt: v ∼f 6=f x (v , f ) ≤ π 0 Problem: Ist keine lineare Bedingung :-( ?) Alle Facetten f 6= f0 sind Dreiecke (C3 ). Philipp Kindermann, Alexander Wolff · Lehrstuhl für Informatik I · Universität Würzburg