1,510 research outputs found
Speeding-up Dynamic Programming with Representative Sets - An Experimental Evaluation of Algorithms for Steiner Tree on Tree Decompositions
Dynamic programming on tree decompositions is a frequently used approach to
solve otherwise intractable problems on instances of small treewidth. In recent
work by Bodlaender et al., it was shown that for many connectivity problems,
there exist algorithms that use time, linear in the number of vertices, and
single exponential in the width of the tree decomposition that is used. The
central idea is that it suffices to compute representative sets, and these can
be computed efficiently with help of Gaussian elimination.
In this paper, we give an experimental evaluation of this technique for the
Steiner Tree problem. A comparison of the classic dynamic programming algorithm
and the improved dynamic programming algorithm that employs the table reduction
shows that the new approach gives significant improvements on the running time
of the algorithm and the size of the tables computed by the dynamic programming
algorithm, and thus that the rank based approach from Bodlaender et al. does
not only give significant theoretical improvements but also is a viable
approach in a practical setting, and showcases the potential of exploiting the
idea of representative sets for speeding up dynamic programming algorithms
Solving weighted and counting variants of connectivity problems parameterized by treewidth deterministically in single exponential time
It is well known that many local graph problems, like Vertex Cover and
Dominating Set, can be solved in 2^{O(tw)}|V|^{O(1)} time for graphs G=(V,E)
with a given tree decomposition of width tw. However, for nonlocal problems,
like the fundamental class of connectivity problems, for a long time we did not
know how to do this faster than tw^{O(tw)}|V|^{O(1)}. Recently, Cygan et al.
(FOCS 2011) presented Monte Carlo algorithms for a wide range of connectivity
problems running in time $c^{tw}|V|^{O(1)} for a small constant c, e.g., for
Hamiltonian Cycle and Steiner tree. Naturally, this raises the question whether
randomization is necessary to achieve this runtime; furthermore, it is
desirable to also solve counting and weighted versions (the latter without
incurring a pseudo-polynomial cost in terms of the weights).
We present two new approaches rooted in linear algebra, based on matrix rank
and determinants, which provide deterministic c^{tw}|V|^{O(1)} time algorithms,
also for weighted and counting versions. For example, in this time we can solve
the traveling salesman problem or count the number of Hamiltonian cycles. The
rank-based ideas provide a rather general approach for speeding up even
straightforward dynamic programming formulations by identifying "small" sets of
representative partial solutions; we focus on the case of expressing
connectivity via sets of partitions, but the essential ideas should have
further applications. The determinant-based approach uses the matrix tree
theorem for deriving closed formulas for counting versions of connectivity
problems; we show how to evaluate those formulas via dynamic programming.Comment: 36 page
An Efficient Algorithm for Computing Network Reliability in Small Treewidth
We consider the classic problem of Network Reliability. A network is given
together with a source vertex, one or more target vertices, and probabilities
assigned to each of the edges. Each edge appears in the network with its
associated probability and the problem is to determine the probability of
having at least one source-to-target path. This problem is known to be NP-hard.
We present a linear-time fixed-parameter algorithm based on a parameter
called treewidth, which is a measure of tree-likeness of graphs. Network
Reliability was already known to be solvable in polynomial time for bounded
treewidth, but there were no concrete algorithms and the known methods used
complicated structures and were not easy to implement. We provide a
significantly simpler and more intuitive algorithm that is much easier to
implement.
We also report on an implementation of our algorithm and establish the
applicability of our approach by providing experimental results on the graphs
of subway and transit systems of several major cities, such as London and
Tokyo. To the best of our knowledge, this is the first exact algorithm for
Network Reliability that can scale to handle real-world instances of the
problem.Comment: 14 page
A Solution Merging Heuristic for the Steiner Problem in Graphs Using Tree Decompositions
Fixed parameter tractable algorithms for bounded treewidth are known to exist
for a wide class of graph optimization problems. While most research in this
area has been focused on exact algorithms, it is hard to find decompositions of
treewidth sufficiently small to make these al- gorithms fast enough for
practical use. Consequently, tree decomposition based algorithms have limited
applicability to large scale optimization. However, by first reducing the input
graph so that a small width tree decomposition can be found, we can harness the
power of tree decomposi- tion based techniques in a heuristic algorithm, usable
on graphs of much larger treewidth than would be tractable to solve exactly. We
propose a solution merging heuristic to the Steiner Tree Problem that applies
this idea. Standard local search heuristics provide a natural way to generate
subgraphs with lower treewidth than the original instance, and subse- quently
we extract an improved solution by solving the instance induced by this
subgraph. As such the fixed parameter tractable algorithm be- comes an
efficient tool for our solution merging heuristic. For a large class of sparse
benchmark instances the algorithm is able to find small width tree
decompositions on the union of generated solutions. Subsequently it can often
improve on the generated solutions fast
Tractable Optimization Problems through Hypergraph-Based Structural Restrictions
Several variants of the Constraint Satisfaction Problem have been proposed
and investigated in the literature for modelling those scenarios where
solutions are associated with some given costs. Within these frameworks
computing an optimal solution is an NP-hard problem in general; yet, when
restricted over classes of instances whose constraint interactions can be
modelled via (nearly-)acyclic graphs, this problem is known to be solvable in
polynomial time. In this paper, larger classes of tractable instances are
singled out, by discussing solution approaches based on exploiting hypergraph
acyclicity and, more generally, structural decomposition methods, such as
(hyper)tree decompositions
Fixed-parameter tractable canonization and isomorphism test for graphs of bounded treewidth
We give a fixed-parameter tractable algorithm that, given a parameter and
two graphs , either concludes that one of these graphs has treewidth
at least , or determines whether and are isomorphic. The running
time of the algorithm on an -vertex graph is ,
and this is the first fixed-parameter algorithm for Graph Isomorphism
parameterized by treewidth.
Our algorithm in fact solves the more general canonization problem. We namely
design a procedure working in time that, for a
given graph on vertices, either concludes that the treewidth of is
at least , or: * finds in an isomorphic-invariant way a graph
that is isomorphic to ; * finds an isomorphism-invariant
construction term --- an algebraic expression that encodes together with a
tree decomposition of of width .
Hence, the isomorphism test reduces to verifying whether the computed
isomorphic copies or the construction terms for and are equal.Comment: Full version of a paper presented at FOCS 201
- …