Searcharxiv⌕ Search

arXiv subjects

Manoj Gupta

Publications and source records attributed to Manoj Gupta.

30 records · Page 2Linked to original sources

Nearly Optimal Space Efficient Algorithm for Depth First Search

We design a space-efficient algorithm for performing depth-first search traversal(DFS) of a graph in $O(m+n\log^* n)$ time using $O(n)$ bits of space. While a normal DFS algorithm results in a DFS-tree (in case the graph is connected), our space bounds do not permit us even to store such a tree. However, our algorithm correctly outputs all edges of the DFS-tree. The previous best algorithm (which used $O(n)$ working space) took $O(m \log n)$ time (Asano, Izumi, Kiyomi, Konagaya, Ono, Otachi, Schweitzer, Tarui, Uehara (ISAAC 2014) and Elmasry, Hagerup, Krammer (STACS 2015)). The main open question left behind in this area was to design faster algorithm for DFS using $O(n)$ bits of space. Our algorithm answers this open question as it has a nearly optimal running time (as the DFS takes $O(m+n)$ time even if there is no space restriction).

cs.DS↗

Simple dynamic algorithms for Maximal Independent Set and other problems

Most graphs in real life keep changing with time. These changes can be in the form of insertion or deletion of edges or vertices. Such rapidly changing graphs motivate us to study dynamic graph algorithms. However, three important graph problems that are perhaps not sufficiently addressed in the literature include independent sets, maximum matching (exact) and maximum flows. Maximal Independent Set (MIS) is one of the most prominently studied problems in the distributed setting. Recently, the first dynamic MIS algorithm for distributed networks was given by Censor-Hillel et al. [PODC16], requiring expected $O(1)$ amortized rounds with $O(Δ)$ messages per update, where $Δ$ is the maximum degree of a vertex in the graph. They suggested an open problem to maintain MIS in fully dynamic centralized setting more efficiently. Assadi et al. [STOC18] presented a deterministic centralized fully dynamic MIS algorithm requiring $O(\min\{Δ,m^{3/4}\})$ amortized time per update. This result is quite complex involving an exhaustive case analysis. We report a surprisingly simple deterministic centralized algorithm which improves the amortized update time to $O(\min\{Δ,m^{2/3}\})$. Additionally, we present some other minor results related to dynamic MIS, Maximum Flow, and Maximum Matching. A common trait of all our results is that despite improving state of the art upper bounds or matching state of the art lower bounds, they are surprisingly simple and are analysed using simple amortization arguments. Further, they use no complicated data structures or black box algorithms for their implementation.

cs.DS↗

Generic Single Edge Fault Tolerant Exact Distance Oracle

Given an undirected unweighted graph $G$ and a source set $S$ of $|S| = σ$ sources, we want to build a data structure which can process the following query {\sc Q}$(s,t,e):$ find the shortest distance from $s$ to $t$ avoiding an edge $e$, where $s \in S$ and $t \in V$. When $σ=n$, Demetrescu, Thorup, Chowdhury and Ramachandran (SIAM Journal of Computing, 2008) designed an algorithm with $\tilde O(n^2)$ space ($\tilde O(\cdot)$ hides poly $\log n$ factor.) and $O(1)$ query time. A natural open question is to generalize this result to any number of sources. Recently, Bil{ò} et. al. (STACS 2018) designed a data-structure of size $\tilde O(σ^{1/2}n^{3/2})$ with the query time of $O(\sqrt{nσ})$ for the above problem. We improve their result by designing a data-structure of size $\tilde O(σ^{1/2} n^{3/2})$ that can answer queries in $\tilde O(1)$ time. In a related problem of finding fault tolerant subgraph, Parter and Peleg (ESA 2013) showed that if detours of the {\em replacement} paths ending at a vertex $t$ are disjoint, then the number of such paths is $O(\sqrt{nσ})$. This eventually gives a bound of $O( n \sqrt{n σ}) = O(σ^{1/2}n^{3/2})$ for their problem. {\em Disjointness of detours} is a very crucial property used in the above result. We show a similar result for a subset of replacement path which \textbf{may not} be disjoint. This result is the crux of our paper and may be of independent interest.?

cs.DS↗

Multiple Source Dual Fault Tolerant BFS Trees

Let $G=(V,E)$ be a graph with $n$ vertices and $m$ edges, with a designated set of $σ$ sources $S\subseteq V$. The fault tolerant subgraph for any graph problem maintains a sparse subgraph $H$ of $G$, such that for any set $F$ of $k$ failures, the solution for the graph problem on $G\setminus F$ is maintained in $H\setminus F$. We address the problem of maintaining a fault tolerant subgraph for Breath First Search tree (BFS) of the graph from a single source $s\in V$ (referred as $k$ FT-BFS) or multiple sources $S\subseteq V$ (referred as $k$ FT-MBFS). The problem of $k$ FT-BFS was first studied by Parter and Peleg [ESA13]. They designed an algorithm to compute FT-BFS subgraph of size $O(n^{3/2})$. Further, they showed how their algorithm can be easily extended to FT-MBFS requiring $O(σ^{1/2}n^{3/2})$ space. They also presented matching lower bounds for these results. The result was later extended to solve dual FT-BFS by Parter [PODC15] requiring $O(n^{5/3})$ space, again with matching lower bounds. However, their result was limited to only edge failures in undirected graphs and involved very complex analysis. Moreover, their solution doesn't seems to be directly extendible for dual FT-MBFS problem. We present a similar algorithm to solve dual FT-BFS problem with a much simpler analysis. Moreover, our algorithm also works for vertex failures and directed graphs, and can be easily extended to handle dual FT-MBFS problem, matching the lower bound of $O(σ^{1/3}n^{5/3})$ space described by Parter [PODC15].The key difference in our approach is a much simpler classification of path interactions which formed the basis of the analysis by Parter [PODC15]. Our dual FT-MBFS structure also seamlessly gives a dual fault tolerant spanner with additive stretch of +2 having size $O(n^{7/8})$.

cs.DS↗

Fully dynamic maximal matching in O(log n) update time

We present an algorithm for maintaining maximal matching in a graph under addition and deletion of edges. Our data structure is randomized that takes O(log n) expected amortized time for each edge update where n is the number of vertices in the graph. While there is a trivial O(n) algorithm for edge update, the previous best known result for this problem for a graph with n vertices and m edges is O({(n+ m)}^{0.7072})which is sub-linear only for a sparse graph. For the related problem of maximum matching, Onak and Rubinfield designed a randomized data structure that achieves O(log^2 n) amortized time for each update for maintaining a c-approximate maximum matching for some large constant c. In contrast, we can maintain a factor two approximate maximum matching in O(log n) expected time per update as a direct corollary of the maximal matching scheme. This in turn also implies a two approximate vertex cover maintenance scheme that takes O(log n) expected time per update.

cs.DS↗

Better Analysis of GREEDY Binary Search Tree on Decomposable Sequences

In their seminal paper [Sleator and Tarjan, J.ACM, 1985], the authors conjectured that the splay tree is dynamically optimal binary search tree (BST). In spite of decades of intensive research, the problem remains open. Perhaps a more basic question, which has also attracted much attention, is if there exists any dynamically optimal BST algorithm. One such candidate is GREEDY which is a simple and intuitive BST algorithm [Lucas, Rutgers Tech. Report, 1988; Munro, ESA, 2000; Demaine, Harmon, Iacono, Kane and Patrascu, SODA, 2009]. [Demaine et al., SODA, 2009] showed a novel connection between a geometric problem. Since dynamic optimality conjecture in its most general form remains elusive despite much effort, researchers have studied this problem on special sequences. Recently, [Chalermsook, Goswami, Kozma, Mehlhorn and Saranurak, FOCS, 2015] studied a type of sequences known as $k$-{\em decomposable sequences} in this context, where $k$ parametrizes easiness of the sequence. Using tools from forbidden submatrix theory, they showed that GREEDY takes $n2^{O(k^2)}$ time on this sequence and explicitly raised the question of improving this bound. In this paper, we show that GREEDY takes $O(n \log{k})$ time on $k$-decomposable sequences. In contrast to the previous approach, ours is based on first principles. One of the main ingredients of our result is a new construction of a lower bound certificate on the performance of any algorithm. This certificate is constructed using the execution of GREEDY, and is more nuanced and possibly more flexible than the previous independent set certificate of Demaine et al. This result, which is applicable to all sequences, may be of independent interest and may lead to further progress in analyzing GREEDY on $k$-decomposable as well as general sequences.

cs.DS↗

Simple and Faster algorithm for Reachability in a Decremental Directed Graph

Consider the problem of maintaining source sink reachability($st$-Reachability), single source reachability(SSR) and strongly connected component(SCC) in an edge decremental directed graph. In particular, we design a randomized algorithm that maintains with high probability: 1) $st$-Reachability in $\tilde{O}(mn^{4/5})$ total update time. 2) $st$-Reachability in a total update time of $\tilde{O}(n^{8/3})$ in a dense graph. 3) SSR in a total update time of $\tilde{O}(m n^{9/10})$. 4) SCC in a total update time of $\tilde{O}(m n^{9/10})$. For all the above problems, we improve upon the previous best algorithm (by Henzinger et. al. (STOC 2014)). Our main focus is maintaining $st$-Reachability in an edge decremental directed graph (other problems can be reduced to $st$-Reachability). The classical algorithm of Even and Shiloach (JACM 81) solved this problem in $O(1)$ query time and $O(mn)$ total update time. Recently, Henzinger, Krinninger and Nanongkai (STOC 2014) designed a randomized algorithm which achieves an update time of $\tilde{O}(m n^{0.98})$ and broke the long-standing $O(mn)$ bound of Even and Shiloach. However, they designed four algorithms $A_i (1\le i \le 4)$ such that for graphs having total number of edges between $m_i$ and $m_{i+1}$ ($m_{i+1} > m_i$), $A_i$ outperforms other three algorithms. That is, one of the four algorithms may be faster for a particular density range of edges, but it may be too slow asymptotically for the other ranges. Our main contribution is that we design a {\it single} algorithm which works for all types of graphs. Not only is our algorithm faster, it is much simpler than the algorithm designed by Henzinger et.al. (STOC 2014).

cs.DS↗

Fully Dynamic $(1+ε)$-Approximate Matchings

We present the first data structures that maintain near optimal maximum cardinality and maximum weighted matchings on sparse graphs in sublinear time per update. Our main result is a data structure that maintains a $(1+ε)$ approximation of maximum matching under edge insertions/deletions in worst case $O(\sqrt{m}ε^{-2})$ time per update. This improves the 3/2 approximation given in [Neiman,Solomon,STOC 2013] which runs in similar time. The result is based on two ideas. The first is to re-run a static algorithm after a chosen number of updates to ensure approximation guarantees. The second is to judiciously trim the graph to a smaller equivalent one whenever possible. We also study extensions of our approach to the weighted setting, and combine it with known frameworks to obtain arbitrary approximation ratios. For a constant $ε$ and for graphs with edge weights between 1 and N, we design an algorithm that maintains an $(1+ε)$-approximate maximum weighted matching in $O(\sqrt{m} \log N)$ time per update. The only previous result for maintaining weighted matchings on dynamic graphs has an approximation ratio of 4.9108, and was shown in [Anand,Baswana,Gupta,Sen, FSTTCS 2012, arXiv 2012].

cs.DS↗

Maintaining Approximate Maximum Weighted Matching in Fully Dynamic Graphs

We present a fully dynamic algorithm for maintaining approximate maximum weight matching in general weighted graphs. The algorithm maintains a matching ${\cal M}$ whose weight is at least $1/8 M^{*}$ where $M^{*}$ is the weight of the maximum weight matching. The algorithm achieves an expected amortized $O(\log n \log \mathcal C)$ time per edge insertion or deletion, where $\mathcal C$ is the ratio of the weights of the highest weight edge to the smallest weight edge in the given graph. Using a simple randomized scaling technique, we are able to obtain a matching whith expected approximation ratio 4.9108.

cs.DS↗

The update complexity of selection and related problems

We present a framework for computing with input data specified by intervals, representing uncertainty in the values of the input parameters. To compute a solution, the algorithm can query the input parameters that yield more refined estimates in form of sub-intervals and the objective is to minimize the number of queries. The previous approaches address the scenario where every query returns an exact value. Our framework is more general as it can deal with a wider variety of inputs and query responses and we establish interesting relationships between them that have not been investigated previously. Although some of the approaches of the previous restricted models can be adapted to the more general model, we require more sophisticated techniques for the analysis and we also obtain improved algorithms for the previous model. We address selection problems in the generalized model and show that there exist 2-update competitive algorithms that do not depend on the lengths or distribution of the sub-intervals and hold against the worst case adversary. We also obtain similar bounds on the competitive ratio for the MST problem in graphs.

cs.DS↗

On Dynamic Optimality for Binary Search Trees

Does there exist O(1)-competitive (self-adjusting) binary search tree (BST) algorithms? This is a well-studied problem. A simple offline BST algorithm GreedyFuture was proposed independently by Lucas and Munro, and they conjectured it to be O(1)-competitive. Recently, Demaine et al. gave a geometric view of the BST problem. This view allowed them to give an online algorithm GreedyArb with the same cost as GreedyFuture. However, no o(n)-competitive ratio was known for GreedyArb. In this paper we make progress towards proving O(1)-competitive ratio for GreedyArb by showing that it is O(\log n)-competitive.

cs.DS↗

An O(log(n)) Fully Dynamic Algorithm for Maximum matching in a tree

In this paper, we have developed a fully-dynamic algorithm for maintaining cardinality of maximum-matching in a tree using the construction of top-trees. The time complexities are as follows: 1. Initialization Time: $O(n(log(n)))$ to build the Top-tree. 2. Update Time: $O(log(n))$ 3. Query Time: O(1) to query the cardinality of maximum-matching and $O(log(n))$ to find if a particular edge is matched.

cs.DS↗