6,066 research outputs found
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
A Faster Parameterized Algorithm for Treedepth
The width measure \emph{treedepth}, also known as vertex ranking, centered
coloring and elimination tree height, is a well-established notion which has
recently seen a resurgence of interest. We present an algorithm which---given
as input an -vertex graph, a tree decomposition of the graph of width ,
and an integer ---decides Treedepth, i.e. whether the treedepth of the graph
is at most , in time . If necessary, a witness structure
for the treedepth can be constructed in the same running time. In conjunction
with previous results we provide a simple algorithm and a fast algorithm which
decide treedepth in time and ,
respectively, which do not require a tree decomposition as part of their input.
The former answers an open question posed by Ossona de Mendez and Nesetril as
to whether deciding Treedepth admits an algorithm with a linear running time
(for every fixed ) that does not rely on Courcelle's Theorem or other heavy
machinery. For chordal graphs we can prove a running time of for the same algorithm.Comment: An extended abstract was published in ICALP 2014, Track
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
Space Saving by Dynamic Algebraization
Dynamic programming is widely used for exact computations based on tree
decompositions of graphs. However, the space complexity is usually exponential
in the treewidth. We study the problem of designing efficient dynamic
programming algorithm based on tree decompositions in polynomial space. We show
how to construct a tree decomposition and extend the algebraic techniques of
Lokshtanov and Nederlof such that the dynamic programming algorithm runs in
time , where is the maximum number of vertices in the union of
bags on the root to leaf paths on a given tree decomposition, which is a
parameter closely related to the tree-depth of a graph. We apply our algorithm
to the problem of counting perfect matchings on grids and show that it
outperforms other polynomial-space solutions. We also apply the algorithm to
other set covering and partitioning problems.Comment: 14 pages, 1 figur
Efficient Decomposition of Image and Mesh Graphs by Lifted Multicuts
Formulations of the Image Decomposition Problem as a Multicut Problem (MP)
w.r.t. a superpixel graph have received considerable attention. In contrast,
instances of the MP w.r.t. a pixel grid graph have received little attention,
firstly, because the MP is NP-hard and instances w.r.t. a pixel grid graph are
hard to solve in practice, and, secondly, due to the lack of long-range terms
in the objective function of the MP. We propose a generalization of the MP with
long-range terms (LMP). We design and implement two efficient algorithms
(primal feasible heuristics) for the MP and LMP which allow us to study
instances of both problems w.r.t. the pixel grid graphs of the images in the
BSDS-500 benchmark. The decompositions we obtain do not differ significantly
from the state of the art, suggesting that the LMP is a competitive formulation
of the Image Decomposition Problem. To demonstrate the generality of the LMP,
we apply it also to the Mesh Decomposition Problem posed by the Princeton
benchmark, obtaining state-of-the-art decompositions
Finite Boolean Algebras for Solid Geometry using Julia's Sparse Arrays
The goal of this paper is to introduce a new method in computer-aided
geometry of solid modeling. We put forth a novel algebraic technique to
evaluate any variadic expression between polyhedral d-solids (d = 2, 3) with
regularized operators of union, intersection, and difference, i.e., any CSG
tree. The result is obtained in three steps: first, by computing an independent
set of generators for the d-space partition induced by the input; then, by
reducing the solid expression to an equivalent logical formula between Boolean
terms made by zeros and ones; and, finally, by evaluating this expression using
bitwise operators. This method is implemented in Julia using sparse arrays. The
computational evaluation of every possible solid expression, usually denoted as
CSG (Constructive Solid Geometry), is reduced to an equivalent logical
expression of a finite set algebra over the cells of a space partition, and
solved by native bitwise operators.Comment: revised version submitted to Computer-Aided Geometric Desig
The condition number of join decompositions
The join set of a finite collection of smooth embedded submanifolds of a
mutual vector space is defined as their Minkowski sum. Join decompositions
generalize some ubiquitous decompositions in multilinear algebra, namely tensor
rank, Waring, partially symmetric rank and block term decompositions. This
paper examines the numerical sensitivity of join decompositions to
perturbations; specifically, we consider the condition number for general join
decompositions. It is characterized as a distance to a set of ill-posed points
in a supplementary product of Grassmannians. We prove that this condition
number can be computed efficiently as the smallest singular value of an
auxiliary matrix. For some special join sets, we characterized the behavior of
sequences in the join set converging to the latter's boundary points. Finally,
we specialize our discussion to the tensor rank and Waring decompositions and
provide several numerical experiments confirming the key results
- …