research

Space- and Time-Efficient Algorithm for Maintaining Dense Subgraphs on One-Pass Dynamic Streams

Abstract

While in many graph mining applications it is crucial to handle a stream of updates efficiently in terms of {\em both} time and space, not much was known about achieving such type of algorithm. In this paper we study this issue for a problem which lies at the core of many graph mining applications called {\em densest subgraph problem}. We develop an algorithm that achieves time- and space-efficiency for this problem simultaneously. It is one of the first of its kind for graph problems to the best of our knowledge. In a graph G=(V,E)G = (V, E), the "density" of a subgraph induced by a subset of nodes SVS \subseteq V is defined as E(S)/S|E(S)|/|S|, where E(S)E(S) is the set of edges in EE with both endpoints in SS. In the densest subgraph problem, the goal is to find a subset of nodes that maximizes the density of the corresponding induced subgraph. For any ϵ>0\epsilon>0, we present a dynamic algorithm that, with high probability, maintains a (4+ϵ)(4+\epsilon)-approximation to the densest subgraph problem under a sequence of edge insertions and deletions in a graph with nn nodes. It uses O~(n)\tilde O(n) space, and has an amortized update time of O~(1)\tilde O(1) and a query time of O~(1)\tilde O(1). Here, O~\tilde O hides a O(\poly\log_{1+\epsilon} n) term. The approximation ratio can be improved to (2+ϵ)(2+\epsilon) at the cost of increasing the query time to O~(n)\tilde O(n). It can be extended to a (2+ϵ)(2+\epsilon)-approximation sublinear-time algorithm and a distributed-streaming algorithm. Our algorithm is the first streaming algorithm that can maintain the densest subgraph in {\em one pass}. The previously best algorithm in this setting required O(logn)O(\log n) passes [Bahmani, Kumar and Vassilvitskii, VLDB'12]. The space required by our algorithm is tight up to a polylogarithmic factor.Comment: A preliminary version of this paper appeared in STOC 201

    Similar works