10 research outputs found

    Fast Dynamic Graph Algorithms for Parameterized Problems

    Full text link
    Fully dynamic graph is a data structure that (1) supports edge insertions and deletions and (2) answers problem specific queries. The time complexity of (1) and (2) are referred to as the update time and the query time respectively. There are many researches on dynamic graphs whose update time and query time are o(G)o(|G|), that is, sublinear in the graph size. However, almost all such researches are for problems in P. In this paper, we investigate dynamic graphs for NP-hard problems exploiting the notion of fixed parameter tractability (FPT). We give dynamic graphs for Vertex Cover and Cluster Vertex Deletion parameterized by the solution size kk. These dynamic graphs achieve almost the best possible update time O(poly(k)logn)O(\mathrm{poly}(k)\log n) and the query time O(f(poly(k),k))O(f(\mathrm{poly}(k),k)), where f(n,k)f(n,k) is the time complexity of any static graph algorithm for the problems. We obtain these results by dynamically maintaining an approximate solution which can be used to construct a small problem kernel. Exploiting the dynamic graph for Cluster Vertex Deletion, as a corollary, we obtain a quasilinear-time (polynomial) kernelization algorithm for Cluster Vertex Deletion. Until now, only quadratic time kernelization algorithms are known for this problem. We also give a dynamic graph for Chromatic Number parameterized by the solution size of Cluster Vertex Deletion, and a dynamic graph for bounded-degree Feedback Vertex Set parameterized by the solution size. Assuming the parameter is a constant, each dynamic graph can be updated in O(logn)O(\log n) time and can compute a solution in O(1)O(1) time. These results are obtained by another approach.Comment: SWAT 2014 to appea

    Multistage Vertex Cover

    Get PDF
    Covering all edges of a graph by a small number of vertices, this is the NP-hard Vertex Cover problem, is among the most fundamental algorithmic tasks. Following a recent trend in studying dynamic and temporal graphs, we initiate the study of Multistage Vertex Cover. Herein, having a series of graphs with same vertex set but over time changing edge sets (known as temporal graph consisting of time layers), the goal is to find for each layer of the temporal graph a small vertex cover and to guarantee that the two vertex cover sets between two subsequent layers differ not too much (specified by a given parameter). We show that, different from classic Vertex Cover and some other dynamic or temporal variants of it, Multistage Vertex Cover is computationally hard even in fairly restricted settings. On the positive side, however, we also spot several fixed-parameter tractability results based on some of the most natural parameterizations

    Maintaining CMSO? Properties on Dynamic Structures with Bounded Feedback Vertex Number

    Get PDF

    Dynamic Parameterized Problems and Algorithms

    Get PDF
    Fixed-parameter algorithms and kernelization are two powerful methods to solve NP-hard problems. Yet, so far those algorithms have been largely restricted to static inputs. In this paper we provide fixed-parameter algorithms and kernelizations for fundamental NP-hard problems with dynamic inputs. We consider a variety of parameterized graph and hitting set problems which are known to have f(k)n^{1+o(1)} time algorithms on inputs of size n, and we consider the question of whether there is a data structure that supports small updates (such as edge/vertex/set/element insertions and deletions) with an update time of g(k)n^{o(1)}; such an update time would be essentially optimal. Update and query times independent of n are particularly desirable. Among many other results, we show that Feedback Vertex Set and k-Path admit dynamic algorithms with f(k)log O(1) n update and query times for some function f depending on the solution size k only. We complement our positive results by several conditional and unconditional lower bounds. For example, we show that unlike their undirected counterparts, Directed Feedback Vertex Set and Directed k-Path do not admit dynamic algorithms with n^{o(1) } update and query times even for constant solution sizes k <= 3, assuming popular hardness hypotheses. We also show that unconditionally, in the cell probe model, Directed Feedback Vertex Set cannot be solved with update time that is purely a function of k

    Dynamic Kernels for Hitting Sets and Set Packing

    Get PDF
    Computing small kernels for the hitting set problem is a well-studied computational problem where we are given a hypergraph with n vertices and m hyperedges, each of size d for some small constant d, and a parameter k. The task is to compute a new hypergraph, called a kernel, whose size is polynomial with respect to the parameter k and which has a size-k hitting set if, and only if, the original hypergraph has one. State-of-the-art algorithms compute kernels of size k^d (which is a polynomial kernel size as d is a constant), and they do so in time m? 2^d poly(d) for a small polynomial poly(d) (which is a linear runtime as d is again a constant). We generalize this task to the dynamic setting where hyperedges may continuously be added or deleted and one constantly has to keep track of a size-k^d hitting set kernel in memory (including moments when no size-k hitting set exists). This paper presents a deterministic solution with worst-case time 3^d poly(d) for updating the kernel upon hyperedge inserts and time 5^d poly(d) for updates upon deletions. These bounds nearly match the time 2^d poly(d) needed by the best static algorithm per hyperedge. Let us stress that for constant d our algorithm maintains a dynamic hitting set kernel with constant, deterministic, worst-case update time that is independent of n, m, and the parameter k. As a consequence, we also get a deterministic dynamic algorithm for keeping track of size-k hitting sets in d-hypergraphs with update times O(1) and query times O(c^k) where c = d - 1 + O(1/d) equals the best base known for the static setting

    Fixed-Parameter Sensitivity Oracles

    Get PDF
    We combine ideas from distance sensitivity oracles (DSOs) and fixed-parameter tractability (FPT) to design sensitivity oracles for FPT graph problems. An oracle with sensitivity ff for an FPT problem Π\Pi on a graph GG with parameter kk preprocesses GG in time O(g(f,k)poly(n))O(g(f,k) \cdot \textsf{poly}(n)). When queried with a set FF of at most ff edges of GG, the oracle reports the answer to the Π\Pi-with the same parameter kk-on the graph GFG-F, i.e., GG deprived of FF. The oracle should answer queries in a time that is significantly faster than merely running the best-known FPT algorithm on GFG-F from scratch. We mainly design sensitivity oracles for the kk-Path and the kk-Vertex Cover problem. Following our line of research connecting fault-tolerant FPT and shortest paths problems, we also introduce parameterization to the computation of distance preservers. We study the problem, given a directed unweighted graph with a fixed source ss and parameters ff and kk, to construct a polynomial-sized oracle that efficiently reports, for any target vertex vv and set FF of at most ff edges, whether the distance from ss to vv increases at most by an additive term of kk in GFG-F.Comment: 19 pages, 1 figure, abstract shortened to meet ArXiv requirements; accepted at ITCS'2

    Meerkat: A framework for Dynamic Graph Algorithms on GPUs

    Full text link
    Graph algorithms are challenging to implement due to their varying topology and irregular access patterns. Real-world graphs are dynamic in nature and routinely undergo edge and vertex additions, as well as, deletions. Typical examples of dynamic graphs are social networks, collaboration networks, and road networks. Applying static algorithms repeatedly on dynamic graphs is inefficient. Unfortunately, we know little about how to efficiently process dynamic graphs on massively parallel architectures such as GPUs. Existing approaches to represent and process dynamic graphs are either not general or inefficient. In this work, we propose a library-based framework for dynamic graph algorithms that proposes a GPU-tailored graph representation and exploits the warp-cooperative execution model. The library, named Meerkat, builds upon a recently proposed dynamic graph representation on GPUs. This representation exploits a hashtable-based mechanism to store a vertex's neighborhood. Meerkat also enables fast iteration through a group of vertices, such as the whole set of vertices or the neighbors of a vertex. Based on the efficient iterative patterns encoded in Meerkat, we implement dynamic versions of the popular graph algorithms such as breadth-first search, single-source shortest paths, triangle counting, weakly connected components, and PageRank. Compared to the state-of-the-art dynamic graph analytics framework Hornet, Meerkat is 12.6×12.6\times, 12.94×12.94\times, and 6.1×6.1\times faster, for query, insert, and delete operations, respectively. Using a variety of real-world graphs, we observe that Meerkat significantly improves the efficiency of the underlying dynamic graph algorithm. Meerkat performs 1.17×1.17\times for BFS, 1.32×1.32\times for SSSP, 1.74×1.74\times for PageRank, and 6.08×6.08\times for WCC, better than Hornet on average

    Efficient fully dynamic elimination forests with applications to detecting long paths and cycles

    Full text link
    We present a data structure that in a dynamic graph of treedepth at most dd, which is modified over time by edge insertions and deletions, maintains an optimum-height elimination forest. The data structure achieves worst-case update time 2O(d2)2^{{\cal O}(d^2)}, which matches the best known parameter dependency in the running time of a static fpt algorithm for computing the treedepth of a graph. This improves a result of Dvo\v{r}\'ak et al. [ESA 2014], who for the same problem achieved update time f(d)f(d) for some non-elementary (i.e. tower-exponential) function ff. As a by-product, we improve known upper bounds on the sizes of minimal obstructions for having treedepth dd from doubly-exponential in dd to dO(d)d^{{\cal O}(d)}. As applications, we design new fully dynamic parameterized data structures for detecting long paths and cycles in general graphs. More precisely, for a fixed parameter kk and a dynamic graph GG, modified over time by edge insertions and deletions, our data structures maintain answers to the following queries: - Does GG contain a simple path on kk vertices? - Does GG contain a simple cycle on at least kk vertices? In the first case, the data structure achieves amortized update time 2O(k2)2^{{\cal O}(k^2)}. In the second case, the amortized update time is 2O(k4)+O(klogn)2^{{\cal O}(k^4)} + {\cal O}(k \log n). In both cases we assume access to a dictionary on the edges of GG.Comment: 74 pages, 5 figure

    Proceedings of the 17th Cologne-Twente Workshop on Graphs and Combinatorial Optimization

    Get PDF
    corecore