I heard here that the Hamiltonian cycle problem is polynomial on graphs of bounded treewidth.
I am interested in examples/references to different problems which is essentially hard but having polynomial complexity on graphs of bounded treewidth.
4 Answers 4
There are probably thousands of examples; there's a short list at ISGCI; the Wikipedia article has plenty of links. Search for "bounded treewidth" and "parameterized complexity treewidth" for many, many more.
Essentially, the problems become easy on graphs of bounded treewidth because:
Although it's NP-complete to determine if a graph has treewidth at most $k$ [1], there is, for every $k$ a linear-time algorithm to compute a tree decomposition of any graph that does actually have treewidth $k$ [2].
Once you have the tree decomposition, you can solve many problems by dynamic programming.
A simple example, which doesn't even use dynamic programming, is the Clique problem. Any clique of a graph must be contained completely in some node of the tree decomposition. That means that a graph of treewidth $k$ can have no clique of size greater than $k+1$ and, to find a clique of size at most $k+1,ドル you just have to see if each node of the decomposition contains the clique you're looking for. That can be done in linear time if $k$ is a fixed constant, since you're just checking for cliques in $O(n)$ graphs that each have at most $k+1$ vertices.
For a more complicated example, suppose you want to know if a graph $G$ of treewidth 4 is 3-colourable. First, compute the tree decomposition. Each vertex of the tree corresponds to a subgraph of at most 5 vertices of $G$. For each leaf of the tree, compute by brute force all 3-colourings of the corresponding subgraphs. This is in polynomial time because there are at most $n$ leaves, each corresponds to a subgraph with at most 5 vertices and there are at most 3ドル^5=243$ 3-colourings of any such subgraph. Now, for each vertex $v$ of the tree that's adjacent to a leaf, enumerate all the 3-colourings that are compatible with possible colourings of the leaves adjacent to $v$. (That is, the 3-colourings of the subgraph corresponding to $v$ that can be extended to a 3-colouring of the graph corresponding to $v$ and all its adjacent leaves.) At this point, you can forget about the colourings of the leaves, since everything you need to know about them is now encoded in the distance-1 vertices. Now, iterate up the tree. You can imagine doing something similar for Hamiltonian path, constructing a path through the whole tree by joining up paths in the subtrees; that's more complicated.
[1] Arnborg, Corneil, and Proskurowski, "Complexity of finding embeddings in a k-tree"., SIAM Journal on Matrix Analysis and Applications 8(2): 277–284, 1987. DOI.
[2] Bodlaender, "A linear time algorithm for finding tree-decompositions of small treewidth", SIAM Journal on Computing 25 (6): 1305–1317, 1996. DOI.
-
$\begingroup$ this bounded treewidth is an assumption right? I mean it is not property exist in these problems $\endgroup$seteropere– seteropere2013年12月21日 06:26:22 +00:00Commented Dec 21, 2013 at 6:26
-
$\begingroup$ I'm not sure what you mean. For all of these problems, and for all $k,ドル there is a polytime algorithm that solves the problem on all graphs of treewidth at most $k,ドル but fails for graphs of treewidth $k+1$ or greater. All of these problems have "yes" instances of all treewidths. For example, there are Hamiltonian graphs of all treewidths bigger than 1 and even 2-colourable graphs of all possible treewidths (e.g., grids). $\endgroup$David Richerby– David Richerby2013年12月21日 11:48:32 +00:00Commented Dec 21, 2013 at 11:48
-
$\begingroup$ Forgive my ignorance David but how we set up the value for $k$? $\endgroup$seteropere– seteropere2013年12月22日 07:18:49 +00:00Commented Dec 22, 2013 at 7:18
-
1$\begingroup$ @seteropere The statement is true for every value of $k$. So, for example, if you find that all the graphs you need to work with have treewidth between 1 and 5, you use the algorithm for $k=5$. $\endgroup$David Richerby– David Richerby2013年12月22日 10:15:42 +00:00Commented Dec 22, 2013 at 10:15
Typically, for many "local problems" such as $\mathsf{Vertex Cover}$ or $\mathsf{IndependentSet}$ (meaning a solution can be verified by checking the neighborhood of each vertex), standard dynamic programming methods run in $c^{\textbf{tw}}|V|^{O(1)}$ time, where $\textbf{tw}$ is the treewidth of the input graph, and $c$ is some (small) constant. For many of these problems, we have matching upper and lower bounds for the running time of the optimal solution, assuming the so-called Strong Exponential Time Hypothesis (SETH).
In some sense, problems with some "global constraint" (like connectivity) appear harder. For such problems, the typical DP algorithm has to consider all the ways in which the solution can traverse the corresponding separator of the tree decomposition, that is $\Omega(s^s),ドル where $s$ is the size of the separator. For more, you could look at the FOCS'11 paper of Cygan et al., arXiv version here. They consider Monte Carlo algorithms for problems with global constraints. There is subsequent work in this direction that investigates the "need" for randomness.
You could also have a look at Chapter 5 of Fomin, Fedor V., and Dieter Kratsch. Exact exponential algorithms. Springer, 2010.
Perhaps you could start with:
H. Bodlaender and A. Koster, Combinatorial Optimization on Graphs of Bounded Treewidth, The Computer Journal 51 (3), 255-269, 2008.
Found that reference under "Resources" from here.
Here is a recent study of this phenomenon of treewidth limiting the complexity of the problem and moving it into P from the point-of-view of SAT instance (hardness). This might underlie a larger framework to help understand the simplification across other NP-complete problems (via reductions to SAT).
Strong Backdoors to Bounded Treewidth SAT Gaspers/Szeider 2012
Decomposability can be considered in terms of the treewidth of a graph that is associated with the given CNF formula, for instance by considering clauses and variables as vertices of the graph, and making a variable adjacent with all the clauses it appears in. On the other hand, a strong backdoor set of a CNF formula is a set of variables such that each possible partial assignment to this set moves the formula into a fixed class for which (#)SAT can be solved in polynomial time. In this paper we combine the two above approaches. In particular, we study the algorithmic question of finding a small strong backdoor set into the class W_t of CNF formulas whose associated graphs have treewidth at most t.
-
$\begingroup$ see also whats the connection between treewidth and instance hardness for random 3sat, tcs.se $\endgroup$vzn– vzn2013年12月17日 00:04:24 +00:00Commented Dec 17, 2013 at 0:04
Explore related questions
See similar questions with these tags.