From Wikipedia, the free encyclopedia
In graph theory, the treewidth of an undirected graph is an integer number which specifies, informally, how far the graph is from being a tree. The smallest treewidth is 1; the graphs with treewidth 1 are exactly the trees and the forests. The graphs with treewidth at most 2 are the series–parallel graphs. The maximal graphs with treewidth exactly k are called k-trees, and the graphs with treewidth at most k are called partial k-trees. Many other well-studied graph families also have bounded treewidth.
Treewidth may be formally defined in several equivalent ways: in terms of the size of the largest vertex set in a tree decomposition of the graph, in terms of the size of the largest clique in a chordal completion of the graph, in terms of the maximum order of a haven describing a strategy for a pursuit–evasion game on the graph, or in terms of the maximum order of a bramble, a collection of connected subgraphs that all touch each other.
Treewidth is commonly used as a parameter in the parameterized complexity analysis of graph algorithms. Many algorithms that are NP-hard for general graphs, become easier when the treewidth is bounded by a constant.
The concept of treewidth was originally introduced by Umberto Bertelè and Francesco Brioschi (1972) under the name of dimension. It was later rediscovered by Rudolf Halin (1976), based on properties that it shares with a different graph parameter, the Hadwiger number. Later it was again rediscovered by Neil Robertson and Paul Seymour (1984) and has since been studied by many other authors.[1]
Definition[edit]
A graph with eight vertices, and a tree decomposition of it onto a tree with six nodes. Each graph edge connects two vertices that are listed together at some tree node, and each graph vertex is listed at the nodes of a contiguous subtree of the tree. Each tree node lists at most three vertices, so the width of this decomposition is two.
A tree decomposition of a graph G = (V, E) is a tree T with nodes X1, …, Xn, where each Xi is a subset of V, satisfying the following properties[2] (the term node is used to refer to a vertex of T to avoid confusion with vertices of G):
- The union of all sets Xi equals V. That is, each graph vertex is contained in at least one tree node.
- If Xi and Xj both contain a vertex v, then all nodes Xk of T in the (unique) path between Xi and Xj contain v as well. Equivalently, the tree nodes containing vertex v form a connected subtree of T.
- For every edge (v, w) in the graph, there is a subset Xi that contains both v and w. That is, vertices are adjacent in the graph only when the corresponding subtrees have a node in common.
The width of a tree decomposition is the size of its largest set Xi minus one. The treewidth tw(G) of a graph G is the minimum width among all possible tree decompositions of G. In this definition, the size of the largest set is diminished by one in order to make the treewidth of a tree equal to one.
Equivalently, the treewidth of G is one less than the size of the largest clique in the chordal graph containing G with the smallest clique number. A chordal graph with this clique size may be obtained by adding to G an edge between every two vertices that both belong to at least one of the sets Xi.
Treewidth may also be characterized in terms of havens, functions describing an evasion strategy for a certain pursuit–evasion game defined on a graph. A graph G has treewidth k if and only if it has a haven of order k + 1 but of no higher order, where a haven of order k + 1 is a function β that maps each set X of at most k vertices in G into one of the connected components of G X and that obeys the monotonicity property that β(Y) ⊆ β(X) whenever X ⊆ Y.
A bramble of order four in a 3×3 grid graph, the existence of which shows that the graph has treewidth at least 3
A similar characterization can also be made using brambles, families of connected subgraphs that all touch each other (meaning either that they share a vertex or are connected by an edge).[3] The order of a bramble is the smallest hitting set for the family of subgraphs, and the treewidth of a graph is one less than the maximum order of a bramble.
Examples[edit]
Every complete graph Kn has treewidth n – 1. This is most easily seen using the definition of treewidth in terms of chordal graphs: the complete graph is already chordal, and adding more edges cannot reduce the size of its largest clique.
A connected graph with at least two vertices has treewidth 1 if and only if it is a tree. A tree has treewidth one by the same reasoning as for complete graphs (namely, it is chordal, and has maximum clique size two). Conversely, if a graph has a cycle, then every chordal completion of the graph includes at least one triangle consisting of three consecutive vertices of the cycle, from which it follows that its treewidth is at least two.
Bounded treewidth[edit]
Graph families with bounded treewidth[edit]
For any fixed constant k, the graphs of treewidth at most k are called the partial k-trees. Other families of graphs with bounded treewidth include the cactus graphs, pseudoforests, series–parallel graphs, outerplanar graphs, Halin graphs, and Apollonian networks.[4] The control-flow graphs arising in the compilation of structured programs also have bounded treewidth, which allows certain tasks such as register allocation to be performed efficiently on them.[5]
The planar graphs do not have bounded treewidth, because the n × n grid graph is a planar graph with treewidth exactly n. Therefore, if F is a minor-closed graph family with bounded treewidth, it cannot include all planar graphs. Conversely, if some planar graph cannot occur as a minor for graphs in family F, then there is a constant k such that all graphs in F have treewidth at most k. That is, the following three conditions are equivalent to each other:[6]
- F is a minor-closed family of bounded-treewidth graphs;
- One of the finitely many forbidden minors characterizing F is planar;
- F is a minor-closed graph family that does not include all planar graphs.
Forbidden minors[edit]
The four forbidden minors for treewidth 3: K5 (top-left), the graph of the octahedron (bottom-left), the Wagner graph (top-right), and the graph of the pentagonal prism (bottom-right)
For every finite value of k, the graphs of treewidth at most k may be characterized by a finite set of forbidden minors. (That is, any graph of treewidth > k includes one of the graphs in the set as a minor.) Each of these sets of forbidden minors includes at least one planar graph.
- For k = 1, the unique forbidden minor is a 3-vertex cycle graph.[7]
- For k = 2, the unique forbidden minor is the 4-vertex complete graph K4.[7]
- For k = 3, there are four forbidden minors: K5, the graph of the octahedron, the pentagonal prism graph, and the Wagner graph. Of these, the two polyhedral graphs are planar.[8]
For larger values of k, the number of forbidden minors grows at least as quickly as the exponential of the square root of k.[9] However, known upper bounds on the size and number of forbidden minors are much higher than this lower bound.[10]
Algorithms[edit]
Computing the treewidth[edit]
It is NP-complete to determine whether a given graph G has treewidth at most a given variable k.[11]
However, when k is any fixed constant, the graphs with treewidth k can be recognized, and a width k tree decomposition constructed for them, in linear time.[12] The time dependence of this algorithm on k is exponential.
Due to the roles the treewidth plays in an enormous number of fields, different practical and theoretical algorithms computing the treewidth of a graph were developed. Depending on the application on hand, one can prefer better approximation ratio, or better dependence in the running time from the size of the input or the treewidth.
The table below provides an overview of some of the treewidth algorithms. Here k is the treewidth and n is the number of vertices of an input graph G.
Each of the algorithms outputs in time f(k) ⋅ g(n) a decomposition of width given in the Approximation column. For example, the algorithm of Bodlaender (1996) in time 2O(k3)⋅n either constructs a tree decomposition of the input graph G of width at most k or reports that the treewidth of G is more than k. Similarly, the algorithm of Bodlaender et al. (2016) in time 2O(k)⋅n either constructs a tree decomposition of the input graph G of width at most 5k + 4 or reports that the treewidth of G is more than k. Korhonen (2021) improved this to 2k + 1 in the same running time.
Approximation | f(k) | g(n) | reference |
---|---|---|---|
exact | O(1) | O(nk+2) | Arnborg, Corneil & Proskurowski (1987) |
4k + 3 | O(33k) | O(n2) | Robertson & Seymour (1995) |
8k + 7 | 2O(k log k) | n log2 n | Lagergren (1996) |
5k + 4 (or 7k + 6) | 2O(k log k) | n log n | Reed (1996) |
exact | 2O(k3) | O(n) | Bodlaender (1996) |
O(1) | nO(1) | Feige, Hajiaghayi & Lee (2008) | |
4.5k + 4 | 23k | n2 | Amir (2010) |
11/3k + 4 | 23.6982k | n3 log4n | Amir (2010) |
exact | O(1) | O(1.7347n) | Fomin, Todinca & Villanger (2015) |
3k + 2 | 2O(k) | O(n log n) | Bodlaender et al. (2016) |
5k + 4 | 2O(k) | O(n) | Bodlaender et al. (2016) |
k2 | O(k7) | O(n log n) | Fomin et al. (2018) |
5k + 4 | 28.765k | O(n log n) | Belbasi & Fürer (2021a) |
2k + 1 | 2O(k) | O(n) | Korhonen (2021) |
5k + 4 | 26.755k | O(n log n) | Belbasi & Fürer (2021b) |
exact | 2O(k2) | n4 | Korhonen & Lokshtanov (2022) |
(1+ |
kO(k/ |
n4 | Korhonen & Lokshtanov (2022) |
Unsolved problem in mathematics:
Can the treewidth of planar graphs be computed in polynomial time?
It is not known whether determining the treewidth of planar graphs is NP-complete, or whether their treewidth can be computed in polynomial time.[13]
In practice, an algorithm of Shoikhet & Geiger (1997) can determine the treewidth of graphs with up to 100 vertices and treewidth up to 11, finding a chordal completion of these graphs with the optimal treewidth.
For larger graphs, one can use search-based techniques such as branch and bound search (BnB) and best-first search to compute the treewidth. These algorithms are anytime in that when stopped early, they will output an upper bound on the treewidth.
The first BnB algorithm for computing treewidth, called the QuickBB algorithm[14] was proposed by Gogate and Dechter.[15] Since the quality of any BnB algorithm is highly dependent on the quality of the lower bound used, Gogate and Dechter[15] also proposed a novel algorithm for computing a lower-bound on treewidth called minor-min-width.[15] At a high level, the minor-min-width algorithm combines the facts that the treewidth of a graph is never larger than its minimum degree or its minor to yield a lower bound on treewidth. The minor-min-width algorithm repeatedly constructs a graph minor by contracting an edge between a minimum degree vertex and one of its neighbors, until just one vertex remains. The maximum of the minimum degree over these constructed minors is guaranteed to be a lower bound on the treewidth of the graph.
Dow and Korf[16] improved the QuickBB algorithm using best-first search. On certain graphs, this best-first search algorithm is an order of magnitude faster than QuickBB.
Solving other problems on graphs of small treewidth[edit]
At the beginning of the 1970s, it was observed that a large class of combinatorial optimization problems defined on graphs could be efficiently solved by non serial dynamic programming as long as the graph had a bounded dimension,[17] a parameter shown to be equivalent to treewidth by Bodlaender (1998). Later, several authors independently observed at the end of the 1980s[18] that many algorithmic problems that are NP-complete for arbitrary graphs may be solved efficiently by dynamic programming for graphs of bounded treewidth, using the tree-decompositions of these graphs.
As an example, the problem of coloring a graph of treewidth k may be solved by using a dynamic programming algorithm on a tree decomposition of the graph. For each set Xi of the tree decomposition, and each partition of the vertices of Xi into color classes, the algorithm determines whether that coloring is valid and can be extended to all descendant nodes in the tree decomposition, by combining information of a similar type computed and stored at those nodes. The resulting algorithm finds an optimal coloring of an n-vertex graph in time O(kk+O(1)n), a time bound that makes this problem fixed-parameter tractable.
Courcelle’s theorem[edit]
For a large class of problems, there is a linear time algorithm to solve a problem from the class if a tree-decomposition with constant bounded treewidth is provided. Specifically, Courcelle’s theorem[19] states that if a graph problem can be expressed in the logic of graphs using monadic second order logic, then it can be solved in linear time on graphs with bounded treewidth. Monadic second order logic is a language to describe graph properties that uses the following constructions:
- Logic operations, such as
- Membership tests, such as e ∈ E, v ∈ V
- Quantifications over vertices, edges, sets of vertices, and/or sets of edges, such as ∀v ∈ V, ∃e ∈ E, ∃I ⊆ V, ∀F ⊆ E
- Adjacency tests (u is an endpoint of e), and some extensions that allow for things such as optimization.
Consider for example the 3-coloring problem for graphs. For a graph G = (V, E), this problem asks if it is possible to assign each vertex v ∈ Vone of the 3 colors such that no two adjacent vertices are assigned the same color.
This problem can be expressed in monadic second order logic as follows:
,
where W1, W2, W3 represent the subsets of vertices having each of the 3 colors.
Therefore, by Courcelle’s results, the 3-coloring problem can be solved in linear time for a graph given a tree-decomposition of bounded constant treewidth.
[edit]
Pathwidth[edit]
The pathwidth of a graph has a very similar definition to treewidth via tree decompositions, but is restricted to tree decompositions in which the underlying tree of the decomposition is a path graph. Alternatively, the pathwidth may be defined from interval graphs analogously to the definition of treewidth from chordal graphs. As a consequence, the pathwidth of a graph is always at least as large as its treewidth, but it can only be larger by a logarithmic factor.[4] Another parameter, the graph bandwidth, has an analogous definition from proper interval graphs, and is at least as large as the pathwidth. Other related parameters include the tree-depth, a number that is bounded for a minor-closed graph family if and only if the family excludes a path, and the degeneracy, a measure of the sparsity of a graph that is at most equal to its treewidth.
Grid minor size[edit]
Because the treewidth of an n × n grid graph is n, the treewidth of a graph G is always greater than or equal to the size of the largest square grid minor of G. In the other direction, the grid minor theorem by Robertson and Seymour shows that there exists an unbounded function f such that the largest square grid minor has size at least f(r) where r is the treewidth.[20] The best bounds known on f are that f must be at least Ω(rd) for some fixed constant d > 0, and at most[21]
For the Ω notation in the lower bound, see big O notation. Tighter bounds are known for restricted graph families, leading to efficient algorithms for many graph optimization problems on those families through the theory of bidimensionality.[22]
Halin’s grid theorem provides an analogue of the relation between treewidth and grid minor size for infinite graphs.[23]
Diameter and local treewidth[edit]
A family F of graphs closed under taking subgraphs is said to have bounded local treewidth, or the diameter-treewidth property, if the treewidth of the graphs in the family is upper bounded by a function of their diameter. If the class is also assumed to be closed under taking minors, then F has bounded local treewidth if and only if one of the forbidden minors for F is an apex graph.[24] The original proofs of this result showed that treewidth in an apex-minor-free graph family grows at most doubly exponentially as a function of diameter;[25] later this was reduced to singly exponential[22] and finally to a linear bound.[26]
Bounded local treewidth is closely related to the algorithmic theory of bidimensionality,[27] and every graph property definable in first order logic can be decided for an apex-minor-free graph family in an amount of time that is only slightly superlinear.[28]
It is also possible for a class of graphs that is not closed under minors to have bounded local treewidth. In particular this is trivially true for a class of bounded degree graphs, as bounded diameter subgraphs have bounded size. Another example is given by 1-planar graphs, graphs that can be drawn in the plane with one crossing per edge, and more generally for the graphs that can be drawn on a surface of bounded genus with a bounded number of crossings per edge. As with minor-closed graph families of bounded local treewidth, this property has pointed the way to efficient approximation algorithms for these graphs.[29]
Hadwiger number and S-functions[edit]
Halin (1976) defines a class of graph parameters that he calls S-functions, which include the treewidth. These functions from graphs to integers are required to be zero on graphs with no edges, to be minor-monotone (a function f is referred to as «minor-monotone» if, whenever H is a minor of G, one has f(H) ≤ f(G)), to increase by one when a new vertex is added that is adjacent to all previous vertices, and to take the larger value from the two subgraphs on either side of a clique separator. The set of all such functions forms a complete lattice under the operations of elementwise minimization and maximization. The top element in this lattice is the treewidth, and the bottom element is the Hadwiger number, the size of the largest complete minor in the given graph.
Notes[edit]
- ^ Diestel (2005) pp.354–355
- ^ Diestel (2005) section 12.3
- ^ Seymour & Thomas (1993).
- ^ a b Bodlaender (1998).
- ^ Thorup (1998).
- ^ Robertson & Seymour (1986).
- ^ a b Bodlaender (1988).
- ^ Arnborg, Proskurowski & Corneil (1990); Satyanarayana & Tung (1990).
- ^ Ramachandramurthi (1997).
- ^ Lagergren (1993).
- ^ Arnborg, Corneil & Proskurowski (1987).
- ^ Bodlaender (1996).
- ^ Kao (2008).
- ^ «Vibhav Gogate». personal.utdallas.edu. Retrieved 2022-11-27.
- ^ a b c Gogate, Vibhav; Dechter, Rina (2012-07-11). «A Complete Anytime Algorithm for Treewidth». arXiv:1207.4109 [cs.DS].
- ^ «Best-First Search for Treewidth». www.aaai.org. Retrieved 2022-11-27.
- ^ Bertelè & Brioschi (1972).
- ^ Arnborg & Proskurowski (1989); Bern, Lawler & Wong (1987); Bodlaender (1988).
- ^ Courcelle (1990); Courcelle (1992)
- ^ Robertson, Seymour. Graph minors. V. Excluding a planar graph. [1]
- ^ Chekuri & Chuzhoy (2016)
- ^ a b Demaine & Hajiaghayi (2008).
- ^ Diestel (2004).
- ^ Eppstein (2000).
- ^ Eppstein (2000); Demaine & Hajiaghayi (2004a).
- ^ Demaine & Hajiaghayi (2004b).
- ^ Demaine et al. (2004); Demaine & Hajiaghayi (2008).
- ^ Frick & Grohe (2001).
- ^ Grigoriev & Bodlaender (2007).
References[edit]
- Amir, Eyal (2010), «Approximation algorithms for treewidth», Algorithmica, 56 (4): 448–479, doi:10.1007/s00453-008-9180-4, MR 2581059, S2CID 5874913.
- Arnborg, S.; Corneil, D.; Proskurowski, A. (1987), «Complexity of finding embeddings in a
-tree«, SIAM Journal on Matrix Analysis and Applications, 8 (2): 277–284, doi:10.1137/0608024.
- Arnborg, Stefan; Proskurowski, Andrzej; Corneil, Derek G. (1990), «Forbidden minors characterization of partial 3-trees», Discrete Mathematics, 80 (1): 1–19, doi:10.1016/0012-365X(90)90292-P, MR 1045920.
- Arnborg, S.; Proskurowski, A. (1989), «Linear time algorithms for NP-hard problems restricted to partial
-trees«, Discrete Applied Mathematics, 23 (1): 11–24, doi:10.1016/0166-218X(89)90031-0.
- Belbasi, Mahdi; Fürer, Martin (2021a), «An improvement of Reed’s treewidth approximation», in Uehara, Ryuhei; Hong, Seok-Hee; Nandy, Subhas C. (eds.), WALCOM: Algorithms and Computation – 15th International Conference and Workshops, WALCOM 2021, Yangon, Myanmar, February 28 — March 2, 2021, Proceedings, Lecture Notes in Computer Science, vol. 12635, Springer, pp. 166–181, arXiv:2010.03105, doi:10.1007/978-3-030-68211-8_14, MR 4239527, S2CID 222177100.
- Belbasi, Mahdi; Fürer, Martin (2021b), «Finding all leftmost separators of size
«, in Du, Ding-Zhu; Du, Donglei; Wu, Chenchen; Xu, Dachuan (eds.), Combinatorial Optimization and Applications — 15th International Conference, COCOA 2021, Tianjin, China, December 17-19, 2021, Proceedings, Lecture Notes in Computer Science, vol. 13135, Springer, pp. 273–287, arXiv:2111.02614, doi:10.1007/978-3-030-92681-6_23, S2CID 242758210
- Bern, M. W.; Lawler, E. L.; Wong, A. L. (1987), «Linear-time computation of optimal subgraphs of decomposable graphs», Journal of Algorithms, 8 (2): 216–235, doi:10.1016/0196-6774(87)90039-3.
- Bertelè, Umberto; Brioschi, Francesco (1972), Nonserial Dynamic Programming, Academic Press, pp. 37–38, ISBN 978-0-12-093450-8.
- Bodlaender, Hans L. (1988), «Dynamic programming on graphs with bounded treewidth», Proc. 15th International Colloquium on Automata, Languages and Programming, Lecture Notes in Computer Science, vol. 317, Springer-Verlag, pp. 105–118, CiteSeerX 10.1.1.18.8503, doi:10.1007/3-540-19488-6_110, ISBN 978-3-540-19488-0.
- Bodlaender, Hans L. (1996), «A linear time algorithm for finding tree-decompositions of small treewidth», SIAM Journal on Computing, 25 (6): 1305–1317, CiteSeerX 10.1.1.19.7484, doi:10.1137/S0097539793251219.
- Bodlaender, Hans L. (1998), «A partial k-arboretum of graphs with bounded treewidth», Theoretical Computer Science, 209 (1–2): 1–45, doi:10.1016/S0304-3975(97)00228-4.
- Bodlaender, Hans L.; Drange, Pal G.; Dregi, Markus S.; Fomin, Fedor V.; Lokshtanov, Daniel; Pilipczuk, Michal (2016), «A
5-approximation algorithm for treewidth», SIAM Journal on Computing, 45 (2): 317–378, arXiv:1304.6321, doi:10.1137/130947374.
- Chekuri, Chandra; Chuzhoy, Julia (2016), «Polynomial bounds for the grid-minor theorem», Journal of the ACM, 63 (5): A40:1–65, arXiv:1305.6577, doi:10.1145/2820609, MR 3593966, S2CID 209860422.
- Courcelle, B. (1990), «The monadic second-order logic of graphs I: Recognizable sets of finite graphs», Information and Computation, 85: 12–75, CiteSeerX 10.1.1.158.5595, doi:10.1016/0890-5401(90)90043-h.
- Courcelle, B. (1992), «The monadic second-order logic of graphs III: Treewidth, forbidden minors and complexity issues.», Informatique Théorique (26): 257–286.
- Demaine, Erik D.; Fomin, Fedor V.; Hajiaghayi, MohammadTaghi; Thilikos, Dimitrios M. (2004), «Bidimensional parameters and local treewidth», SIAM Journal on Discrete Mathematics, 18 (3): 501–511, CiteSeerX 10.1.1.107.6195, doi:10.1137/S0895480103433410, MR 2134412, S2CID 7803025.
- Demaine, Erik D.; Hajiaghayi, MohammadTaghi (2004a), «Diameter and treewidth in minor-closed graph families, revisited», Algorithmica, 40 (3): 211–215, doi:10.1007/s00453-004-1106-1, MR 2080518, S2CID 390856.
- Demaine, Erik D.; Hajiaghayi, MohammadTaghi (2004b), «Equivalence of local treewidth and linear local treewidth and its algorithmic applications», Proceedings of the Fifteenth Annual ACM-SIAM Symposium on Discrete Algorithms, New York: ACM, pp. 840–849, MR 2290974.
- Demaine, Erik D.; Hajiaghayi, MohammadTaghi (2008), «Linearity of grid minors in treewidth with applications through bidimensionality» (PDF), Combinatorica, 28 (1): 19–36, doi:10.1007/s00493-008-2140-4, S2CID 16520181.
- Diestel, Reinhard (2004), «A short proof of Halin’s grid theorem», Abhandlungen aus dem Mathematischen Seminar der Universität Hamburg, 74: 237–242, doi:10.1007/BF02941538, MR 2112834, S2CID 124603912.
- Diestel, Reinhard (2005), Graph Theory (3rd ed.), Springer, ISBN 978-3-540-26182-7.
- Eppstein, D. (2000), «Diameter and treewidth in minor-closed graph families», Algorithmica, 27 (3–4): 275–291, arXiv:math/9907126, doi:10.1007/s004530010020, MR 1759751, S2CID 3172160.
- Feige, Uriel; Hajiaghayi, MohammadTaghi; Lee, James R. (2008), «Improved approximation algorithms for minimum weight vertex separators», SIAM Journal on Computing, 38 (2): 629–657, CiteSeerX 10.1.1.597.5634, doi:10.1137/05064299X.
- Fomin, Fedor V.; Todinca, Ioan; Villanger, Yngve (2015), «Large induced subgraphs via triangulations and CMSO», SIAM Journal on Computing, 44 (1): 54–87, arXiv:1309.1559, doi:10.1137/140964801, S2CID 15880453.
- Frick, Markus; Grohe, Martin (2001), «Deciding first-order properties of locally tree-decomposable structures», Journal of the ACM, 48 (6): 1184–1206, arXiv:cs/0004007, doi:10.1145/504794.504798, MR 2143836, S2CID 999472.
- Fomin, Fedor V.; Lokshtanov, Daniel; Saurabh, Saket; Pilipczuk, Michal; Wrochna, Marcin (2018), «Fully polynomial-time parameterized computations for graphs and matrices of low treewidth», ACM Transactions on Algorithms, 14 (3): 34:1–34:45, arXiv:1511.01379, doi:10.1145/3186898, S2CID 2144798.
- Grigoriev, Alexander; Bodlaender, Hans L. (2007), «Algorithms for graphs embeddable with few crossings per edge», Algorithmica, 49 (1): 1–11, CiteSeerX 10.1.1.65.5071, doi:10.1007/s00453-007-0010-x, MR 2344391, S2CID 8174422.
- Halin, Rudolf (1976), «S-functions for graphs», Journal of Geometry, 8 (1–2): 171–186, doi:10.1007/BF01917434, S2CID 120256194.
- Kao, Ming-Yang, ed. (2008), «Treewidth of graphs», Encyclopedia of Algorithms, Springer, p. 969, ISBN 9780387307701,
Another long-standing open problem is whether there is a polynomial-time algorithm to compute the treewidth of planar graphs.
- Korhonen, Tuukka (2021), «A Single-Exponential Time 2-Approximation Algorithm for Treewidth», Proceedings of the 62nd IEEE Annual Symposium on Foundations of Computer Science, IEEE, pp. 184–192, arXiv:2104.07463, doi:10.1109/FOCS52979.2021.00026, S2CID 233240958.
- Lagergren, Jens (1993), «An upper bound on the size of an obstruction», Graph structure theory (Seattle, WA, 1991), Contemporary Mathematics, vol. 147, Providence, RI: American Mathematical Society, pp. 601–621, doi:10.1090/conm/147/01202, ISBN 9780821851609, MR 1224734.
- Lagergren, Jens (1996), «Efficient parallel algorithms for graphs of bounded tree-width», Journal of Algorithms, 20 (1): 20–44, doi:10.1006/jagm.1996.0002, MR 1368716.
- Ramachandramurthi, Siddharthan (1997), «The structure and number of obstructions to treewidth», SIAM Journal on Discrete Mathematics, 10 (1): 146–157, doi:10.1137/S0895480195280010, MR 1430552.
- Reed, Bruce A. (1992), «Finding approximate separators and computing tree width quickly», in Kosaraju, S. Rao; Fellows, Mike; Wigderson, Avi; Ellis, John A. (eds.), Proceedings of the 24th Annual ACM Symposium on Theory of Computing, May 4-6, 1992, Victoria, British Columbia, Canada, ACM, pp. 221–228, doi:10.1145/129712.129734, S2CID 16259988.
- Robertson, Neil; Seymour, Paul D. (1984), «Graph minors III: Planar tree-width», Journal of Combinatorial Theory, Series B, 36 (1): 49–64, doi:10.1016/0095-8956(84)90013-3.
- Robertson, Neil; Seymour, Paul D. (1986), «Graph minors V: Excluding a planar graph», Journal of Combinatorial Theory, Series B, 41 (1): 92–114, doi:10.1016/0095-8956(86)90030-4.
- Robertson, Neil; Seymour, Paul D. (1995), «Graph Minors XIII: The Disjoint Paths Problem», Journal of Combinatorial Theory, Series B, 63 (1): 65–110, doi:10.1006/jctb.1995.1006.
- Robertson, Neil; Seymour, Paul; Thomas, Robin (1994), «Quickly excluding a planar graph», Journal of Combinatorial Theory, Series B, 62 (2): 323–348, doi:10.1006/jctb.1994.1073, MR 1305057.
- Satyanarayana, A.; Tung, L. (1990), «A characterization of partial 3-trees», Networks, 20 (3): 299–322, doi:10.1002/net.3230200304, MR 1050503.
- Seymour, Paul D.; Thomas, Robin (1993), «Graph searching and a min-max theorem for tree-width», Journal of Combinatorial Theory, Series B, 58 (1): 22–33, doi:10.1006/jctb.1993.1027.
- Shoikhet, Kirill; Geiger, Dan (1997), «A Practical Algorithm for Finding Optimal Triangulations», in Kuipers, Benjamin; Webber, Bonnie L. (eds.), Proceedings of the Fourteenth National Conference on Artificial Intelligence and Ninth Innovative Applications of Artificial Intelligence Conference, AAAI 97, IAAI 97, July 27-31, 1997, Providence, Rhode Island, USA, AAAI Press / The MIT Press, pp. 185–190.
- Thorup, Mikkel (1998), «All structured programs have small tree width and good register allocation», Information and Computation, 142 (2): 159–181, doi:10.1006/inco.1997.2697.
- Korhonen, Tuukka; Lokshtanov, Daniel (2022), «An Improved Parameterized Algorithm for Treewidth», arXiv:2211.07154 [cs.DS].
Да, он всегда будет выдавать константное значение, а именно 0
. Нужно заменить строчку return Math.max(left, right);
на return Math.max(left, right) + 1;
. Исправленный вариант:
static class Node {
Node left;
Node right;
static int height(Node node) {
if (node == null) {
return 0;
}
int left = height(node.left);
int right = height(node.right);
return Math.max(left, right) + 1;
}
}
Хочу заметить, что этот метод вычисляет не ширину дерева, а высоту, то есть расстояние от корня до самого глубокого листа. Если вы хотите вычислять не высоту, а ширину дерева, то сначала стоит определить, что такое ширина дерева. Например, можно определить её как максимальная ширина уровня дерева
, где ширина уровня дерева
есть число вершин, находящихся на некотором уровне, то есть на одинаковом расстоянии от корня. Тогда алгоритм вычисления ширины дерева выглядит следующим образом:
- Найдём глубину дерева уже написанным методом. Обозначим её за
h
. - Всего уровней в дереве ровно
h + 1
. Заведём массив наh + 1
элементов, вi
-ой его ячейке будет записано число вершин наi
-ом уровне. Изначально массив заполнен нулями. - Обойдём дерево любым алгоритмом, в процессе увеличивая соответствующие ячейки массива.
- По нашему определению ширина дерева равна максимуму элементов в этом массиве.
Собственно, код:
static class Node {
Node left;
Node right;
static int height(Node node) {
if (node == null) {
return 0;
}
int left = height(node.left);
int right = height(node.right);
return Math.max(left, right) + 1;
}
static void dfs(Node node, int nodeHeight, int[] numberVertexesOnLevels) {
++numberVertexesOnLevels[nodeHeight];
dfs(node.left, nodeHeight + 1, numberVertexesOnLevels);
dfs(node.right, nodeHeight + 1, numberVertexesOnLevels);
}
static int width(Node node) {
int height = height(node);
int[] numberVertexesOnLevels = new int[height];
dfs(node, 0, numberVertexesOnLevels);
return Arrays.stream(numberVertexesOnLevels).max().getAsInt();
}
}
Введение
В этом посте я сделаю демонстрацию кода о том, как найти ширину двоичного дерева.
Шаг 1: Начните с класса узла дерева
Шаг 2: Напишите шаблонный код для создания дерева, на котором мы будем играть.
Шаг 3: Сначала мы найдем высоту бинарного дерева
Шаг 4: Затем мы рассчитаем количество элементов на каждом уровне двоичного дерева.
Шаг 5: Затем мы найдем максимальный уровень, который завершен, и количество элементов на максимальном полном уровне даст нам ширину
Шаг 6: Проверьте вывод кода
Вывод
Если вам понравился этот пост, подпишитесь на меня в инсте: https://www.instagram.com/global.software.developers/?hl=en
Если вам понравился этот пост, подпишитесь на меня в инсте: https://www.instagram.com/global.software.developers/?hl=en
ширина дерева
В теории графов и теоретической информатике древовидная ширина графа представляет собой число , которое интуитивно измеряет, насколько он близок к дереву [ 1 ] . Его можно определить несколькими способами [Какими?] , в частности, с помощью декомпозиции дерева .
Часто простая алгоритмическая задача на деревьях на самом деле проста на древовидных графах. Таким образом, этот параметр часто используется в графовых алгоритмах, особенно для схем полиномиальной аппроксимации и параметризованной сложности . Во многих приложениях графы имеют небольшую ширину дерева [ref. необходимо] , такие как социальные сети.
Определение
С разложением дерева
Пример графа G и древовидной декомпозиции графа G.
Определение декомпозиции дерева
Неформально, учитывая неориентированный граф , древовидная декомпозиция представляет собой дерево , узлы которого аннотируются подмножествами вершин , которые удовлетворяют следующим условиям:
- каждая вершина появляется в метке узла ;
- для любого ребра существует узел метки которого содержит и ;
- для любой вершины , узлы дерева, которые содержат , образуют связное поддерево .
Формально для данного неориентированного графа древовидная декомпозиция представляет собой пару , где — дерево, и представляет собой функцию , ассоциированную с каждым узлом подмножества , которое удовлетворяет следующим условиям:
- Для любой вершины существует такой узел дерева , что . Это условие сводится к тому, что союз равен .
- Для любого ребра существует такой узел , что .
- Для любой вершины узлы образуют связанное поддерево . Это условие сводится к наложению того, что для всех узлов и , которые содержат одну и ту же вершину (то есть и ) , все узлы единственной простой цепи между и также удовлетворяют .
Каждый граф имеет по крайней мере одну древовидную декомпозицию, например ту, в которой дерево имеет единственную вершину и где . В этом случае все вершины и ребра графа покрыты , и условие пути тривиально выполняется. Однако это разложение не единственно. В более общем смысле любой граф допускает бесконечное число декомпозиций деревьев: например, можно выбрать любое дерево и определить с помощью для любого узла .
Настройка ширины дерева
Ширина дерева древовидной декомпозиции равна кардинальной величине наибольшей метки минус единица. Формально это так . В примере на рисунке все метки имеют кардинальное значение 3, поэтому древовидная ширина этой древовидной декомпозиции равна 2. Древовидная ширина ( древовидная ширина ) графа G является минимумом древовидной ширины среди всех древовидных разложений графа этот график.
Если мы рассмотрим тривиальную древовидную декомпозицию, в которой узлы помечены набором всех вершин в графе, мы обнаружим, что любой граф с вершинами имеет ширину дерева не более. С другой стороны, если это дерево, если мы строим по структуре , мы можем получить древовидную декомпозицию, где каждая метка содержит ровно два элемента, следовательно, ширины 1.
Через триангуляции
Для любого графа обозначим порядок наибольшей клики графа . Ширина дерева графа — это наименьшее значение, взятое среди всех триангуляций графа .
Примеры
Деревья имеют ширину дерева 1. Клика размера n имеет ширину дерева n-1 . Квадратная сетка размера n имеет ширину дерева , равную n [ 2 ] .
Алгоритмические аспекты
Расчет ширины дерева
Вычисление ширины дерева является NP-трудным [ 3 ] . Однако, если фиксировано, существует линейный алгоритм для определения того, равна ли ширина дерева графа . Однако зависимость от времени выполнения алгоритма носит экспоненциальный характер. Для некоторых конкретных классов графов вычисление ширины дерева выполняется за полиномиальное время (деревья, триангулированные графы и т. д.).
Использование в алгоритмах
Многие NP-трудные графовые задачи в общем случае могут быть решены за полиномиальное время, если ограничиться графами ограниченной древесной ширины. Следовательно, это хороший параметр для параметризованной сложности . Если проблема выразима в монадической логике второго порядка , теорема Курселя [ 4 ] утверждает, что тогда ее можно решить за линейное время (но константа представляет собой башню экспонент, в которой алгоритм вообще неприменим).
Например, максимально устойчивая задача для плоских графов может быть решена за полиномиальное время при ограниченной ширине дерева (мы тогда примем эту ширину за константу) [ 5 ] , что позволяет получить схему аппроксимации за полиномиальное время при ширине не ограничен.
Связи с триангулированными графами
Концепция декомпозиции дерева имеет очень сильную связь с триангулированными графами . Во-первых, древовидная ширина триангулированного графа H равна размеру его наибольшей клики минус единица. Во-вторых, значение можно вычислить с помощью линейного алгоритма, если граф H триангулирован. В литературе по исследованию операций алгоритмы вычисления ширины дерева графа G часто стремятся определить триангулированный
граф H с наименьшим значением , который содержит G.
Связанные настройки графика
Ширина дерева может быть связана с другими параметрами графа, такими как вырожденность или ежевика .
Определен вариант для ориентированных графов, он равен нулю на ориентированных ациклических графах [ 6 ] .
Библиография
Работает
- (в) Дэвид П. Уильямсон и Дэвид Б. Шмойс , Разработка алгоритмов аппроксимации , Издательство Кембриджского университета ,2010, 500 р. ( онлайн презентация , читать онлайн )
- (en) Ганс Л. Бодлендер, « Путеводитель по дереву » , Технический отчет RUU-CS , vol. 92.1993 г. ( читать онлайн )
Предметы
- С. Арнборг , Д. Корнейл и А. Проскуровски , « Сложность поиска вложений в k — дерево », SIAM Journal on Matrix Analysis and Applications , vol. 8, № 2 ,1987 г., с. 277–284 ( DOI 10.1137/0608024 )
Примечания и ссылки
- ↑ Дэвид П. Уильямсон и Дэвид Б. Шмойс , Разработка алгоритмов аппроксимации , издательство Кембриджского университета ,2010, 500 р. ( онлайн презентация , читать онлайн ) , гл. 10.2 («Задача максимального независимого множества в планарных графах»)п. 272.
- ↑ Ули Вагнер, « Графики и алгоритмы: Древовидная ширина расширенных тем» (неопр . ) .
- ↑ Арнборг, Корнейл и Проскуровски, 1987 .
- ↑ Брюно Курсель , « Монадическая логика графов второго порядка. I. Распознаваемые множества конечных графов », Информация и вычисления , вып. 85, № 1 ,1 марта 1990 г., с. 12–75 ( DOI 10.1016/0890-5401(90)90043-H , читать онлайн , доступ3 декабря 2017 г.)
- ↑ Дэвид П. Уильямсон и Дэвид Б. Шмойс , Дизайн алгоритмов аппроксимации ,2010, с. 273.
- ↑ Тор Джонсон, Нил Робертсон , Пол Д. Сеймур и Робин Томас, « Directed Tree-Width », J. Comb. Теория, сер. Б , том. 8, № 1 ,2001 г., с. 138–154 ( DOI 10.1006/jctb.2000.2031 ).
Связанная статья
- Ширина клика
В теории графов , то древесная ширина неориентированного графа представляет собой целое число, определяющее, неформально, как далека графы от того , чтобы дерево . Наименьшая ширина дерева — 1; графы с шириной дерева 1 — это в точности деревья и леса . Графики с шириной дерева не более 2 являются последовательно -параллельными графами . Максимальные графы с шириной дерева ровно k называются k-деревьями , а графы с шириной дерева не выше k называются частичными k -деревьями . Многие другие хорошо изученные семейства графов также имеют ограниченную древовидную ширину.
Ширина дерева может быть формально определена несколькими эквивалентными способами: размером самой большой вершины, установленной в древовидной декомпозиции графа, размером самой большой клики в хордовом завершении графа, максимальным порядком убежища, описывающим стратегию для игра преследования-уклонения на графе, или максимальный порядок ежевики , совокупность связанных подграфов, которые все соприкасаются друг с другом.
Treewidth обычно используется в качестве параметра в параметризованном анализе сложности алгоритмов графов . Многие алгоритмы, которые NP-трудны для общих графов, становятся проще, если ширина дерева ограничена константой.
Концепция ширины дерева была первоначально введена Умберто Бертеле и Франческо Бриоски ( 1972 ) под названием « измерение» . Позже он был переоткрыт Рудольфом Халином ( 1976 ) на основе свойств, которые он разделяет с другим параметром графа, числом Хадвигера . Позже он был снова открыт Нилом Робертсоном и Полом Сеймуром ( 1984 ) и с тех пор изучается многими другими авторами.
Определение
Граф с восемью вершинами и его древовидное разложение на дерево с шестью вершинами. Каждое ребро графа соединяет две вершины, перечисленные вместе в некотором узле дерева, и каждая вершина графа указана в узлах смежного поддерева дерева. Каждый узел дерева содержит не более трех вершин, поэтому ширина этого разбиения равна двум.
Разложение дерева графа G = ( V , E ) является деревом, Т , с узлами Х 1 , …, Х п , где каждый Х я есть подмножество V , удовлетворяющая следующие свойства (термин узел является используется для обозначения вершины T, чтобы избежать путаницы с вершинами G ):
- Объединение всех множеств X я равен V . То есть каждая вершина графа содержится как минимум в одном узле дерева.
- Если X i и X j оба содержат вершину v , то все узлы X k из T на (уникальном) пути между X i и X j также содержат v . Эквивалентно, узлы дерева , содержащие вершину V образуют связное поддерево T .
- Для каждого ребра ( v , w ) в графе существует подмножество X i, которое содержит как v, так и w . То есть вершины смежны в графе только тогда, когда соответствующие поддеревья имеют общий узел.
Ширина из разложения дерева является размер ее наибольшего множества X I минус один. Древесная ширина TW ( G ) графа G является минимальная ширина среди всех возможных разбиений дерева из G . В этом определении размер самого большого набора уменьшается на единицу, чтобы сделать ширину дерева равной единице.
Эквивалентно, ширина дерева G на единицу меньше размера самой большой клики в хордальном графе, содержащем G с наименьшим номером клики . Хордовый граф с таким размером клики может быть получен добавлением к G ребра между каждыми двумя вершинами, которые обе принадлежат хотя бы одному из множеств X i .
Treewidth также можно охарактеризовать в терминах убежищ , функций, описывающих стратегию уклонения для определенной игры преследования-уклонения, определенной на графе. Граф G имеет древовидную ширину k тогда и только тогда, когда он имеет убежище порядка k + 1, но не более высокого порядка, где убежище порядка k + 1 — это функция β, которая отображает каждое множество X не более чем из k вершин в G в одна из компонент связности G X и, подчиняющийся монотонности свойством , что & beta ; ( Y ) ⊆ & beta ; ( Х ) всякий раз , когда X ⊆ Y .
Ежевичник порядка четыре в графе сетки 3 × 3, существование которого видно , что график имеет древесную ширину по крайней мере-
Подобная характеристика также может быть сделана с использованием ежевики , семейств связанных подграфов, которые все соприкасаются друг с другом (что означает, что они либо имеют общую вершину, либо соединены ребром). Порядок ежевики — это наименьший набор совпадений для семейства подграфов, а ширина дерева графа на единицу меньше максимального порядка ежевики.
Примеры
Каждый полный граф K n имеет ширину дерева n — 1. Это легче всего увидеть, используя определение ширины дерева в терминах хордовых графов: полный граф уже является хордовым, и добавление дополнительных ребер не может уменьшить размер его наибольшей клики.
Связный граф с минимум двумя вершинами имеет ширину дерева 1 тогда и только тогда, когда он является деревом. Дерево имеет древовидную ширину, равную единице, по тем же соображениям, что и для полных графов (а именно, оно хордовое и имеет максимальный размер клики два). И наоборот, если у графа есть цикл, то каждое хордовое пополнение графа включает по крайней мере один треугольник, состоящий из трех последовательных вершин цикла, из чего следует, что его ширина по дереву не меньше двух.
Ограниченная ширина дерева
Семейства графов с ограниченной шириной дерева
Для любой фиксированной константы k графики ширины не более k называются частичными k -деревьями . Другие семейства графов с ограниченным древесной шириной включает в кактусах графики , pseudoforests , последовательно-параллельных граф , внешнепланарные графики , графики Халин и сети аполлоновских . В графах потока управления , возникающих при компиляции из структурированных программ также имеют ограниченную древесную ширину, что позволяет определенные задачи , такие как выделение регистров должны быть выполнены эффективны на них.
В плоских графах не имеют ограниченную древесную ширину, поскольку п × п решетчатый граф является планарным графом с древесной шириной точно п . Следовательно, если F — семейство минорно-замкнутых графов с ограниченной шириной дерева, оно не может включать все плоские графы. И наоборот, если некоторый планарный граф не может быть второстепенным для графов семейства F , тогда существует константа k такая, что все графы в F имеют ширину дерева не более k . То есть следующие три условия эквивалентны друг другу:
- F — минорно-замкнутое семейство графов с ограниченной шириной дерева;
- Один из конечного числа запрещенных миноров, характеризующих F, является плоским;
- F — семейство минорно-замкнутых графов, которое не включает все плоские графы.
Запрещенные несовершеннолетние
Четыре запрещенных минора для ширины дерева 3: K 5 (вверху слева), график октаэдра (внизу слева), график Вагнера (вверху справа) и график пятиугольной призмы (внизу справа)
Для любого конечного значения k графы с шириной не более k могут быть охарактеризованы конечным набором запрещенных миноров . (То есть любой граф с шириной дерева> k включает в себя один из графов в наборе в качестве второстепенного.) Каждый из этих наборов запрещенных миноров включает по крайней мере один планарный граф.
- При k = 1 единственным запрещенным минором является трехвершинный граф циклов .
- При k = 2 единственным запрещенным минором является 4-вершинный полный граф K 4 .
- При k = 3 существует четыре запрещенных минора: K 5 , граф октаэдра , граф пятиугольной призмы и граф Вагнера . Из них два многогранных графа плоские.
При больших значениях k количество запрещенных миноров растет, по крайней мере, так же быстро, как экспонента квадратного корня из k . Однако известные верхние границы размера и количества запрещенных миноров намного выше этой нижней границы.
Алгоритмы
Вычисление ширины дерева
NP-полный, чтобы определить, имеет ли данный граф G древовидную ширину не более данной переменной k . Однако, когда к какому — либо фиксированному постоянная, то графы с древесной шириной к могут быть распознаны, а ширина к декомпозиции дерева , построенная для них, в линейное время. Временная зависимость этого алгоритма от k экспоненциальная.
Из-за роли, которую ширина дерева играет в огромном количестве полей, были разработаны различные практические и теоретические алгоритмы вычисления ширины дерева графа. В зависимости от используемого приложения можно предпочесть лучший коэффициент аппроксимации или лучшую зависимость времени выполнения от размера ввода или ширины дерева. В таблице ниже представлен обзор некоторых алгоритмов ширины дерева. Вот ширина дерева и количество вершин входного графа . Каждый из алгоритмов выводит по времени разложение ширины, указанной в столбце Приближение. Например, алгоритм Bodlaender (1996) во времени либо строит древовидное разложение входного графа шириной не больше, либо сообщает, что ширина
дерева больше чем
. Аналогичным образом алгоритм Bodlaender et al. (2016) со временем либо строит древовидную декомпозицию входного графа шириной не более, либо сообщает, что ширина
дерева больше, чем
. Корхонен (2021) улучшил это до того же времени.
Приближение | f (k) | г (п) | ссылка |
---|---|---|---|
точный | Арнборг, Корнейл и Проскуровски (1987) | ||
Робертсон и Сеймур (1995) | |||
Лагергрен (1996) | |||
Рид (1992) | |||
точный | Бодлендер (1996) | ||
Файги, Хаджиагайи и Ли (2008) | |||
Амир (2010) | |||
Амир (2010) | |||
точный | Фомин, Тодинка и Вилланджер (2015) | ||
Bodlaender et al. (2016) | |||
Bodlaender et al. (2016) | |||
Фомин и др. (2018) | |||
Бельбаси и Фюрер (2020) | |||
|
|
|
Корхонен (2021 г.) |
Нерешенная задача по математике :
Можно ли вычислить ширину дерева плоских графов за полиномиальное время?
Неизвестно, является ли определение ширины дерева планарных графов NP-полным, или их ширина дерева может быть вычислена за полиномиальное время.
На практике алгоритм Шойхета и Гейгера (1997) может определять ширину дерева графов до 100 вершин и ширину дерева до 11, находя хордовое завершение этих графов с оптимальной шириной дерева.
Решение других задач на графах малой ширины дерева
В начале 1970-х годов было замечено, что большой класс задач комбинаторной оптимизации, определенных на графах, может быть эффективно решен с помощью непоследовательного динамического программирования, пока граф имеет ограниченную размерность , параметр, который Бодлендер показал как эквивалентный ширине дерева. (1998) . Позже несколько авторов независимо друг от друга заметили в конце 1980-х годов, что многие алгоритмические проблемы, которые являются NP-полными для произвольных графов, могут быть эффективно решены с помощью динамического программирования для графов ограниченной древовидной ширины с использованием древовидной декомпозиции этих графов.
Например, проблема раскраски графа с шириной дерева k может быть решена с помощью алгоритма динамического программирования на древовидной декомпозиции графа. Для каждого набора X i разложения дерева и каждого разбиения вершин X i на классы цветов алгоритм определяет, является ли эта раскраска допустимой и может ли быть расширена на все узлы-потомки в разложении дерева путем объединения информации аналогичных type вычисляется и хранится в этих узлах. Результирующий алгоритм находит оптимальную раскраску n- вершинного графа за время O ( k k + O (1) n ), ограничение по времени, которое делает эту задачу с фиксированным параметром решаемой .
Теорема Курселя
Для большого класса задач существует алгоритм линейного времени для решения задачи из класса, если предусмотрено дерево-разложение с постоянной ограниченной шириной дерева . В частности, теорема Курселя утверждает, что если проблема графа может быть выражена в логике графов с использованием монадической логики второго порядка , то она может быть решена за линейное время на графах с ограниченной шириной дерева. Monadic логика второго порядка является языком для описания свойств графов , которые используются следующими конструкции: логические операции ( ), членство тесты (например, ), количественные над вершинами, ребра, множество вершин, множество ребер (например, , , , ), тесты на смежность ( u — конечная точка e ) и некоторые расширения, которые позволяют выполнять такие операции, как оптимизация.
Рассмотрим, например, задачу 3-раскраски графов. Для графа эта задача спрашивает, можно ли присвоить каждой вершине один из трех цветов, чтобы никаким двум смежным вершинам не был назначен один и тот же цвет. Эта проблема может быть выражена в монадической логике второго порядка следующим образом:
-
,
где представляют собой подмножества вершин каждого из трех цветов. Следовательно, согласно результатам Курселя, проблема 3-раскраски может быть решена за линейное время для графа, заданного древовидным разложением с ограниченной постоянной шириной дерева.
Ширина пути
Pathwidth графа имеет очень похожее определение с помощью дерев древесной ширины разбиений, но ограничивается разбиениями дерева , в котором основное дерево разложения является путем граф . В качестве альтернативы, ширина пути может быть определена из интервальных графов аналогично определению ширины дерева из хордовых графов. Как следствие, ширина пути графа всегда по крайней мере равна его ширине дерева, но она может быть больше только на логарифмический коэффициент. Другой параметр, полоса пропускания графика , имеет аналогичное определение из соответствующих интервальных графиков и по крайней мере такой же большой, как ширина пути. Другие связанные параметры включают глубину дерева , число, которое ограничено для семейства второстепенных замкнутых графов тогда и только тогда, когда семейство исключает путь, и вырождение , меру разреженности графа, которая не более чем равна его ширина дерева.
Младший размер сетки
Поскольку древесная ширина из п × п сеточного графа является п , то древесная ширина графа G всегда больше или равен размеру самого большого квадрата сетки минор из G . В другом направлении, то теорема сетки незначительные по Robertson и Seymour показывает , что существует функция ф такая , что древесная ширина составляет не более е ( г ) , где г является размер самого большого квадрата сетки минор. Наилучшие известные оценки для f состоят в том, что f должно быть не меньше Ω ( r d ) для некоторой фиксированной константы d > 0 и не больше O ( √ r / log r ). Для семейств ограниченных графов известны более жесткие границы, что приводит к эффективным алгоритмам для многих задач оптимизации графов для этих семейств с помощью теории двумерности .
Теорема Халина о сетке обеспечивает аналог отношения между шириной дерева и второстепенным размером сетки для бесконечных графов.
Диаметр и местная ширина дерева
Семейство графов F, замкнутое относительно взятия подграфов, называется ограниченной локальной шириной дерева или свойством диаметра-дерева , если ширина дерева графов в семействе ограничена сверху функцией их диаметра . Если класс также считается замкнутым относительно взятия миноров , то F имеет ограниченную локальную ширину дерева тогда и только тогда, когда один из запрещенных миноров для F является вершинным графом . Первоначальные доказательства этого результата показали, что ширина дерева в семействе графов без минорных вершин растет не более чем вдвое экспоненциально как функция диаметра; позже это было сведено к одноэкспоненциальной и, наконец, к линейной оценке. Ограниченная локальная ширина дерева тесно связана с алгоритмической теорией двумерности , и каждое свойство графа, определяемое в логике первого порядка, может быть определено для семейства графов без апекс-минор за время, которое лишь немного сверхлинейно.
Также возможно, что класс графов, не замкнутый относительно миноров, имеет ограниченную локальную ширину дерева. В частности, это тривиально верно для класса графов ограниченной степени, поскольку подграфы ограниченного диаметра имеют ограниченный размер. Другой пример — 1-планарные графы , графы, которые можно нарисовать на плоскости с одним пересечением на ребро, и, в более общем смысле, графы, которые могут быть нарисованы на поверхности ограниченного рода с ограниченным числом пересечений на ребро. Как и в случае семейств минорно-замкнутых графов с ограниченной локальной шириной дерева, это свойство указывает путь к эффективным алгоритмам аппроксимации для этих графов.
Число Хадвигера и S- функции
Халин (1976) определяет класс параметров графа, которые он называет S- функциями, которые включают ширину дерева. Эти функции от графов к целым числам должны быть равны нулю на графах без ребер , чтобы быть минорно-монотонными (функция f называется «минорно-монотонной», если, когда H является минором G , одна имеет f (H ) ≤ f (G)), чтобы увеличиваться на единицу, когда добавляется новая вершина, смежная со всеми предыдущими вершинами, и брать большее значение из двух подграфов по обе стороны от разделителя клик . Набор всех таких функций образует полную решетку при операциях поэлементной минимизации и максимизации. Верхний элемент в этой решетке — это ширина дерева, а нижний элемент — это число Хадвигера , размер наибольшего полного минора в данном графе.
Примечания
использованная литература
.
- Arnborg, S .; Корнейл, Д .; Proskurowski, А. (1987), «Сложность нахождения вложения в K -tree», SIAM журнал на матричный анализ и приложения , 8 (2): 277-284, DOI : 10,1137 / 0608024.
- Арнборг, Стефан; Проскуровский, Анджей; Корнейл, Дерек Г. (1990), «Запрещенная характеристика миноров частичных 3-деревьев», Дискретная математика , 80 (1): 1–19, DOI : 10.1016 / 0012-365X (90) 90292-P , MR 1045920.
- Arnborg, S .; Проскуровский А. (1989), «Алгоритмы с линейным временем для NP-сложных задач, ограниченных частичными k -деревьями», Дискретная прикладная математика , 23 (1): 11–24, DOI : 10.1016 / 0166-218X (89) 90031- 0.
- Берн, МВт; Лоулер, Э.Л . ; Вонг, Л. (1987), «Линейное время вычисление оптимальных подграфов разлагаемых графов», журнал алгоритмы , 8 (2): 216-235, DOI : 10,1016 / 0196-6774 (87) 90039-3.
- Бертеле, Умберто; Бриоски, Франческо (1972), Несерийное динамическое программирование , Academic Press, стр. 37–38, ISBN 978-0-12-093450-8.
- Бодлендер, Ханс Л. (1988), «Динамическое программирование на графах с ограниченной шириной дерева», Proc. 15 — й Международный коллоквиум автоматного, языки и программирование , Lecture Notes в области компьютерных наук, 317 ., Springer-Verlag, стр 105-118, CiteSeerX 10.1.1.18.8503 , DOI : 10.1007 / 3-540-19488-6_110 , ISBN 978-3-540-19488-0.
- Бодлендер, Ханс Л. (1996), «Алгоритм линейного времени для поиска разложения дерева с малой шириной дерева», SIAM Journal on Computing , 25 (6): 1305–1317, CiteSeerX 10.1.1.19.7484 , doi : 10.1137 / S0097539793251219.
- Бодлендер, Ханс Л. (1998), «Частичный k- арборетум графов с ограниченной древовидной шириной», Теоретическая информатика , 209 (1-2): 1–45, DOI : 10.1016 / S0304-3975 (97) 00228-4.
- Bodlaender, Hans L .; Drange, Pal G .; Dregi, Markus S .; Фомин, Федор В .; Локштанов Даниил; Пилипчук, Михал (2016), «Алгоритм 5-аппроксимации c ^ kn для ширины дерева», SIAM Journal on Computing , 45 (2): 317–378, arXiv : 1304.6321 , doi : 10.1137 / 130947374.
- Чекури, Чандра; Чужой, Юлия (2016), «Полиномиальные оценки для теоремы о сетке-минор», Журнал ACM , 63 (5): A40: 1–65, arXiv : 1305.6577 , doi : 10,1145 / 2820609 , MR 3593966 , S2CID 209860422.
- Демейн, Эрик Д .; Фомин, Федор В .; Хаджиагайи, Мохаммад Таги; Thilikos, Димитриос М. (2004), «двумерный параметры и локальная древесная ширина», SIAM журнал по дискретной математике , 18 (3): 501-511, CiteSeerX 10.1.1.107.6195 , DOI : 10,1137 / S0895480103433410 , МР 2134412.
- Демейн, Эрик Д .; Hajiaghayi, MohammadTaghi (2004a), «Диаметр и древесная ширина в минорных-замкнутом графике семей, Revisited», Algorithmica , 40 (3): 211-215, DOI : 10.1007 / s00453-004-1106-1 , МР 2080518 , S2CID 390856.
- Demaine, Erik D .; Hajiaghayi, MohammadTaghi (2004b), «Эквивалентность локальной ширины дерева и линейной ширины локального дерева и ее алгоритмические приложения», Труды пятнадцатого ежегодного симпозиума ACM-SIAM по дискретным алгоритмам , Нью-Йорк: ACM, стр. 840–849, MR 2290974.
- Демейн, Эрик Д .; Hajiaghayi, MohammadTaghi (2008), «Линейность сетки несовершеннолетних древесная ширина с приложениями через bidimensionality» (PDF) , Combinatorica , 28 (1): 19-36, DOI : 10.1007 / s00493-008-2140-4 , S2CID 16520181.
- Diestel Рейнхард (2004), «Короткое доказательство теоремы Халин в сетке», Abhandlungen AUS DEM Mathematischen Семинаре дер Universität Hamburg , 74 : 237-242, DOI : 10.1007 / BF02941538 , MR 2112834 , S2CID 124603912.
- Дистель, Рейнхард (2005), Теория графов (3-е изд.), Springer , ISBN 978-3-540-26182-7.
- Рид, Брюс (1996), Эффективные параллельные алгоритмы для графов ограниченной древовидной ширины.
- Амир, Эйал (2010), Алгоритмы приближения для ширины дерева.
- Лагергрен, Йенс (1992), Нахождение приблизительных разделителей и быстрое вычисление ширины дерева , Ассоциация вычислительной техники , ISBN 0897915119.
- Эппштейн, Д. (2000), «Диаметр и ширина дерева в семействах второстепенных замкнутых графов», Algorithmica , 27 (3–4): 275–291, arXiv : math / 9907126 , doi : 10.1007 / s004530010020 , MR 1759751 , S2CID 3172160.
- Файги, Уриэль; Хаджиагайи, Мохаммад Таги; Ли, Джеймс Р. (2008), «Улучшенные алгоритмы аппроксимации для разделителей вершин с минимальным весом», SIAM Journal on Computing , 38 (2): 629–657, CiteSeerX 10.1.1.597.5634 , doi : 10.1137 / 05064299X.
- Фрик, Маркус; Grohe, Martin (2001), «Определение свойств первого порядка локально древовидных разложимых структур», Журнал ACM , 48 (6): 1184–1206, arXiv : cs / 0004007 , doi : 10.1145 / 504794.504798 , MR 2143836 , S2CID 999472.
- Фомин, Федор В .; Локштанов Даниил; Саураб, Сакет; Пилипчук, Михал; Wrochna, Marcin (2018), «Полностью параметризованные вычисления с полиномиальным временем для графов и матриц с малой шириной дерева», ACM Trans. Алгоритмы , 14 (3): 34: 1–34: 45, arXiv : 1511.01379 , doi : 10.1145 / 3186898 , S2CID 2144798.
- Григорьев Александр; Bodlaender, Ганс Л. (2007), «Алгоритмы графики Встраиваемый с несколькими пересечений на краю», Algorithmica , 49 (1): 1-11, CiteSeerX 10.1.1.65.5071 , DOI : 10.1007 / s00453-007-0010-х , Руководство по ремонту 2344391 , S2CID 8174422.
- Халин, Рудольф (1976), » S -функции для графов», журнал геометрии , 8 (1-2): 171-186, DOI : 10.1007 / BF01917434 , S2CID 120256194.
-
Као, Мин-Ян, изд. (2008), «Ширина графов», Энциклопедия алгоритмов , Springer, стр. 969, ISBN 9780387307701,
Другая давняя открытая проблема , есть ли полиномиальный алгоритм для вычисления древесной ширины плоских графов.
- Корхонен, Туукка (2021), Алгоритм одноэкспоненциальной временной 2-аппроксимации для ширины дерева , arXiv : 2104.07463
- Бельбаси, Махди; Фюрер, Мартин (2020), Улучшение аппроксимации ширины дерева Рида , arXiv : 2010.03105
- Лагергрен, Йенс (1993), «Верхняя граница размера препятствия», Теория структуры графа (Сиэтл, Вашингтон, 1991) , Contemporary Mathematics, 147 , Providence, RI: American Mathematical Society, pp. 601–621, doi : 10.1090 / conm / 147/01202 , ISBN 9780821851609, Руководство по ремонту 1224734.
- Ramachandramurthi, Siddharthan (1997), «Структура и количество препятствий к древесной ширине», SIAM журнал по дискретной математике , 10 (1): 146-157, DOI : 10,1137 / S0895480195280010 , МР 1430552.
- Робертсон, Нил ; Сеймур, Пол Д. (1984), «Миноры графа III: плоская ширина дерева», журнал комбинаторной теории, серия B , 36 (1): 49–64, DOI : 10.1016 / 0095-8956 (84) 90013-3.
- Робертсон, Нил ; Сеймура, Пол Д. (1986), «Graph несовершеннолетние В: За исключением плоского графа», Журнал комбинаторной теории, Series B , 41 (1): 92-114, DOI : 10,1016 / 0095-8956 (86) 90030-4.
- Робертсон, Нил ; Seymour, Paul D. (1995), «Graph Несовершеннолетние XIII: дизъюнктному Дорожки Проблема», Журнал комбинаторной теории, серии B , 63 (1): 65-110, DOI : 10,1006 / jctb.1995.1006.
- Робертсон, Нил ; Сеймур, Пол ; Томас, Робин (1994), «Быстро за исключением плоского графа», Журнал комбинаторной теории , Series B, 62 (2): 323-348, DOI : 10,1006 / jctb.1994.1073 , МР 1305057.
- Сатьянараяна, А .; Танг, Л. (1990), «Характеристика частичных 3-деревьев», сети , 20 (3): 299-322, DOI : 10.1002 / net.3230200304 , МР 1050503.
- Сеймур, Пол Д .; Томас, Робин (1993), «Поиск в графах и теорема о минимуме и максимуме для древовидной ширины», Журнал комбинаторной теории, серия B , 58 (1): 22–33, doi : 10.1006 / jctb.1993.1027.
- Шойхет Кирилл; Гейгер, Дэн (1997), «Практический алгоритм поиска оптимальных триангуляций», Proc. AAAI ’97 (PDF) , стр. 185–190.
- Thorup, Миккель (1998), «Все структурированные программы имеют небольшую ширину дерева и хорошее распределение регистров», информация и вычисления , 142 (2): 159-181, DOI : 10,1006 / inco.1997.2697.
- Фомин, Федор В .; Тодинка, Иоан; Вилланджер, Ингве (2015), «Большие индуцированные подграфы через триангуляции и CMSO», SIAM Journal on Computing , 44 (1): 54–87, arXiv : 1309.1559 , doi : 10.1137 / 140964801 , S2CID 15880453.