Baumweite

Die Baumweite ist ein Begriff aus der Graphentheorie. Sie sagt aus, wie baum-ähnlich ein Graph ist. Da viele Algorithmen auf Bäumen effizient laufen, die dies auf allgemeinen Graphen nicht tun, ist es interessant, die Baumweite und eine zugehörige minimale Baumzerlegung eines Graphen zu kennen. Ein verwandter Begriff ist die Pfadweite.

Der Begriff wurde 1972 von Umberto Bertelè und Francesco Brioschi[1] eingeführt, unabhängig von Rudolf Halin 1976[2] und erneut unabhängig von Neil Robertson und Paul Seymour 1984[3].

Formale Definition

Eine Baumzerlegung eines Graphen ist ein Paar , wobei ein Baum und eine Familie von Untermengen der Knotenmenge des Graphen ist, sodass folgende Bedingungen gelten, wobei 3 und 4 Äquivalent[4] zueinander sind:

  1. .
  2. Für alle Kanten gibt es ein mit .
  3. Für alle gilt: wenn auf dem Pfad von zu in ist, dann .
  4. Für alle induziert die Menge einen zusammenhängenden Teilbaum in .

Die Weite der Baumzerlegung von ist definiert als und die Baumweite eines Graphen ist definiert als die kleinste Weite aller möglichen Baumzerlegungen von .

Die Subtraktion von 1 in dieser Definition bewirkt, dass Bäume (und Wälder) die Baumweite 1 haben. Ohne diese Subtraktion hätten nur Graphen ohne Kanten die Baumweite 1.

Erläuterung

Wir verteilen die Knoten von G auf Taschen (Englisch: buckets oder bags), die in einem Baum angeordnet sind, wobei folgende Regeln gelten:

  1. Jeder Knoten aus ist in mindestens einer Tasche.
  2. Die beiden Endknoten jeder Kante sind zusammen in mindestens einer Tasche.
  3. Für eine Tasche , die auf einem beliebigen Pfad liegt und zwei beliebige Taschen und auf jenem Pfad, sind die gemeinsamen Knoten der Taschen auch in enthalten.
  4. Für jeden Knoten bilden die Taschen, die enthalten, einen zusammenhängenden Teilbaum.

Eigenschaften

Komplexität

Das Entscheidungsproblem, ob für einen gegebenen Graphen G und eine gegebene Variable k die Baumweite von G höchstens k ist, ist NP-vollständig.[5] Graphen mit einer von einer Konstanten k beschränkten Baumweite lassen sich jedoch in linearer Zeit erkennen.[6] Die Laufzeit dieses Algorithmus hängt linear von der Anzahl der Knoten von G und exponentiell von k ab. Damit erfüllt jener Algorithmus das Kriterium für parametrisierte Probleme und das Baumweite Problem liegt in der Komplexitätsklasse FPT.

Schranken

Es gelten folgende Schranken für Baumweiten:

  • Jeder Baum mit mindestens 2 Knoten hat eine Baumweite von genau 1.
  • Jeder Kreisgraph mit mindestens 3 Knoten hat eine Baumweite von genau 2.
  • Ein Graph ohne Kanten (darunter also auch ein Baum mit 1 Knoten) hat eine Baumweite von genau 0.
  • Serien-Parallel-Graphen haben eine Baumweite von höchstens 2.
  • Halingraphen haben eine Baumweite von höchstens 3.
  • Die Baumweite planarer Graphen ist nicht durch eine Konstante nach oben beschränkt. Dies wird deutlich am Beispiel der -Gittergraphen. Diese besitzen eine Baumweite von . Die Baumweite von planaren Graphen mit Knoten ist aber durch beschränkt.[7]
  • Die Baumweite eines Graphen ist mindestens so groß wie seine größte Clique minus 1.

Berechnung

Zur Berechnung der Baumweite eines Graphen existieren mehrere Algorithmen, darunter gibt es kombinatorische Ansätze, wie den Bodländer Algorithmus[8] oder ganzzahlige lineare Ansätze[9]. Allen Ansätzen ist gemein, dass sie nur für kleine Instanzen, bzw. kleine und beschänkte Baumweite schnelle Ergebnisse liefern.

Preprocessing

Das Preprocessing beschreibt eine Vorberechnung, vor der Ausführung des eigentlichen Lösungsalgorithmus. Ziel ist es dabei, die gegebene Graphen Instanz zu verkleinern/reduzieren, damit der Hauptalgorithmus auf jener kleineren Instanz schneller eine Lösung finden kann. Beim Preprocessing wird die gesuchte Eigenschaft (hier Baumweite) nicht verändert oder bereits eine Lösung ausgegeben.

Für das Baumweite Problem existieren Preprocessing Regeln, die hierarchisch aufeinander stehen und in der Lage sind, Graphen bis zu einer Baumweite von 3 zu erkennen oder eine reduzierte Instanz mit Baumweite von mindestens 4 zu erzeugen.[10]

Baumweite 0

Anwendung von Regel 0

Reduktionsregel 0: Inselchen Regel (engl. Islet rule)
Sei ein Knoten mit Grad 0.
Entferne .

Baumweite 1

Anwendung von Regel 1

Reduktionsregel 1: Zweig Regel (engl. Twig rule)
Sei ein Knoten mit Grad 1.
Entferne .

Baumweite 2

Anwendung von Regel 2

Reduktionsregel 2: Serien Regel (engl. Series rule)
Sei ein Knoten mit Grad 2.
Füge eine Kante zwischen den Nachbarn von ein, falls sie noch nicht existiert.
Entferne .

Baumweite 3

Anwendung von Regel 3a

Reduktionsregel 3a: Dreiecks Regel (engl. Triangle rule)
Sei ein Knoten mit Grad 3, wobei mindestens zwei Nachbarn durch eine Kante miteinander verbunden sind.
Vervollständige die 3 Nachbarn von zu einer Clique.
Entferne .

Anwendung von Regel 3b

Reduktionsregel 3b: Kumpel Regel (engl. Buddy rule)
Seien Knoten mit Grad 3 mit den gleichen Nachbarn.
Vervollständige die 3 Nachbarn von und zu einer Clique.
Entferne und .

Anwendung von Regel 3c

Reduktionsregel 3c: Würfel Regel (engl. Cube rule)
Seien Knoten, die Knoten besitzen Grad 3, ist ein -Kreis und sind mit verbunden.
Vervollständige zu einer Clique.
Entferne .

Aus der Anwendung der Preprocessing Regeln lassen sich folgende Aussage ableiten:

Für einen Graphen wende die Preprocessing Regeln zwischen und an, bis dies nicht mehr möglich ist. Erhält man als Endergebnis den leeren Graphen, so gilt ,
erhält man nicht den leeren Graphen, so gilt für den entstandenen Graphen , als auf für die Ungleichung .[10]

Literatur

  • Reinhard Diestel: Graphentheorie. 5. Auflage. Springer-Verlag, Berlin, Heidelberg 2010, ISBN 978-3-96134-004-0, 10. Minoren, S. 287–330.
  • Frank Gurski, Irene Rothe, Jörg Rothe, Egon Wanke: Exakte Algorithmen für schwere Graphenprobleme. Springer-Verlag, Berlin, Heidelberg 2010, ISBN 978-3-642-04499-1.
  • Hans L. Bodlaender: Fixed-Parameter Tractability of Treewidth and Pathwidth. In: Bodlaender H.L., Downey R., Fomin F.V., Marx D. (Hrsg.): The Multivariate Algorithmic Revolution and Beyond. LNCS 7370. Springer, Berlin, Heidelberg 2012, ISBN 978-3-642-30890-1, S. 196–227, doi:10.1007/978-3-642-30891-8_12.

Einzelnachweise

  1. Bertelè, Brioschi, Nonserial Dynamic Programming, Academic Press 1972, dort Dimension genannt
  2. Halin, S-functions for graphs, J. Geom., 8, 1976, 171–186
  3. Robertson, Seymour: Graph minors III: Planar tree-width, Journal of Combinatorial Theory, Series B, Band 36, 1984, S. 49–64
  4. Hans L. Bodlaender, Arie M. C. A. Koster: Treewidth computations I. Upper bounds. In: Information and Computation. Band 208, Nr. 3, 1. März 2010, ISSN 0890-5401, S. 259–275, doi:10.1016/j.ic.2009.03.008 (sciencedirect.com [abgerufen am 15. September 2025]).
  5. S. Arnborg; D. Corneil; A. Proskurowski: Complexity of finding embeddings in a k-tree. SIAM Journal on Matrix Analysis and Applications, 8 (2) 1987, S. 277–284
  6. Hans L. Bodlaender: A linear time algorithm for finding tree-decompositions of small treewidth. SIAM Journal on Computing, 25 (6) 1996, S. 1305–1317
  7. Fedor V. Fomin, Dimitrios M. Thilikos: New upper bounds on the decomposability of planar graphs. In: Journal of Graph Theory. Band 51, Nr. 1, 2006, S. 53–81, doi:10.1002/jgt.20121.
  8. Hans L. Bodlaender: A linear time algorithm for finding tree-decompositions of small treewidth. In: Proceedings of the twenty-fifth annual ACM symposium on Theory of Computing (= STOC '93). Association for Computing Machinery, New York, NY, USA 1993, ISBN 978-0-89791-591-5, S. 226–234, doi:10.1145/167088.167161 (acm.org [abgerufen am 3. Oktober 2025]).
  9. Sven Mallach: On integer linear programs for treewidth based on perfect elimination orderings (extended version). In: Acta Informatica. Band 62, Nr. 3, 26. August 2025, ISSN 1432-0525, S. 34, doi:10.1007/s00236-025-00505-y.
  10. a b Hans L. Bodlaender and Arie M.C.A. Koster and Frank van den Eijkhof and Linda C. van der Gaag: Pre-processing for Triangulation of Probabilistic Networks. Hrsg.: ZIB. Berlin 2001, S. 01–39.

Auf dieser Seite verwendete Medien

Treewidth rule0.svg
Autor/Urheber: Telijas, Lizenz: CC0
Illustration der Reduktionsregel für Baumweite 0
Reduction rule 3b for treewidth.svg
Autor/Urheber: Telijas, Lizenz: CC0
Reduktionsregel 3b für Baumweite
Reduction rule 2 for treewdith.svg
Autor/Urheber: Telijas, Lizenz: CC0
Reduktionsregel 2 für Baumweite
Reduction for 3a for treewidth.svg
Autor/Urheber: Telijas, Lizenz: CC0
Reduktionsregel 3a für Baumweite
Reduction rule 3c for treewidth.svg
Autor/Urheber: Telijas, Lizenz: CC0
Reduktionsregel 3c für Baumweite
Treewidth reduction rule 1.svg
Autor/Urheber: Telijas, Lizenz: CC0
Beispiel für die Reduktionsregel 1 für Baumweite