Results 1  10
of
28
Polylogarithmic deterministic fullydynamic graph algorithms I: connectivity and minimum spanning tree
 JOURNAL OF THE ACM
, 1997
"... Deterministic fully dynamic graph algorithms are presented for connectivity and minimum spanning forest. For connectivity, starting with no edges, the amortized cost for maintaining a spanning forest is O(log² n) per update, i.e. per edge insertion or deletion. Deciding connectivity between any two ..."
Abstract

Cited by 141 (5 self)
 Add to MetaCart
Deterministic fully dynamic graph algorithms are presented for connectivity and minimum spanning forest. For connectivity, starting with no edges, the amortized cost for maintaining a spanning forest is O(log² n) per update, i.e. per edge insertion or deletion. Deciding connectivity between any two given vertices is done in O(log n= log log n) time. This matches the previous best randomized bounds. The previous best deterministic bound was O( 3 p n log n) amortized time per update but constant time for connectivity queries. For minimum spanning trees, first a deletionsonly algorithm is presented supporting deletes in amortized time O(log² n). Applying a general reduction from Henzinger and King, we then get a fully dynamic algorithm such that starting with no edges, the amortized cost for maintaining a minimum spanning forest is O(log^4 n) per update. The previous best deterministic bound was O( 3 p n log n) amortized time per update, and no better randomized bounds were ...
An experimental analysis of selfadjusting computation
 In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI
, 2006
"... Selfadjusting computation uses a combination of dynamic dependence graphs and memoization to efficiently update the output of a program as the input changes incrementally or dynamically over time. Related work showed various theoretical results, indicating that the approach can be effective for a r ..."
Abstract

Cited by 47 (23 self)
 Add to MetaCart
Selfadjusting computation uses a combination of dynamic dependence graphs and memoization to efficiently update the output of a program as the input changes incrementally or dynamically over time. Related work showed various theoretical results, indicating that the approach can be effective for a reasonably broad range of applications. In this article, we describe algorithms and implementation techniques to realize selfadjusting computation and present an experimental evaluation of the proposed approach on a variety of applications, ranging from simple list primitives to more sophisticated computational geometry algorithms. The results of the experiments show that the approach is effective in practice, often offering orders of magnitude speedup from recomputing the output from scratch. We believe this is the first experimental evidence that incremental computation of any type is effective in practice for a reasonably broad set of applications.
Fully Dynamic All Pairs Shortest Paths with Real Edge Weights
 In IEEE Symposium on Foundations of Computer Science
, 2001
"... We present the first fully dynamic algorithm for maintaining all pairs shortest paths in directed graphs with realvalued edge weights. Given a dynamic directed graph G such that each edge can assume at most S di#erent real values, we show how to support updates in O(n amortized time and que ..."
Abstract

Cited by 37 (10 self)
 Add to MetaCart
We present the first fully dynamic algorithm for maintaining all pairs shortest paths in directed graphs with realvalued edge weights. Given a dynamic directed graph G such that each edge can assume at most S di#erent real values, we show how to support updates in O(n amortized time and queries in optimal worstcase time. No previous fully dynamic algorithm was known for this problem. In the special case where edge weights can only be increased, we give a randomized algorithm with onesided error which supports updates faster in O(S We also show how to obtain query/update tradeo#s for this problem, by introducing two new families of algorithms. Algorithms in the first family achieve an update bound of O(n/k), and improve over the best known update bounds for k in the . Algorithms in the second family achieve an update bound of ), and are competitive with the best known update bounds (first family included) for k in the range (n/S) # Work partially supported by the IST Programme of the EU under contract n. IST199914. 186 (ALCOMFT) and by CNR, the Italian National Research Council, under contract n. 01.00690.CT26. Portions of this work have been presented at the 42nd Annual Symp. on Foundations of Computer Science (FOCS 2001) [8] and at the 29th International Colloquium on Automata, Languages, and Programming (ICALP'02) [9].
Parametric and Kinetic Minimum Spanning Trees
"... We consider the parametric minimum spanning treeproblem, in which we are given a graph with edge weights that are linear functions of a parameter * and wish tocompute the sequence of minimum spanning trees generated as * varies. We also consider the kinetic minimumspanning tree problem, in which * r ..."
Abstract

Cited by 30 (7 self)
 Add to MetaCart
We consider the parametric minimum spanning treeproblem, in which we are given a graph with edge weights that are linear functions of a parameter * and wish tocompute the sequence of minimum spanning trees generated as * varies. We also consider the kinetic minimumspanning tree problem, in which * represents time and the graph is subject in addition to changes such as edge insertions, deletions, and modifications of the weight functions as time progresses. We solve both problems in time O(n2=3 log4=3 n) per combinatorial change in the tree (or randomized O(n2=3 log n) per change). Our time bounds reduce to O(n1=2 log3=2 n) per change (O(n1=2 log n) randomized) for planar graphs or other minorclosed families of graphs, and O(n1=4 log3=2 n) per change (O(n1=4 log n) randomized) for planar graphs with weight changes but no insertions or deletions.
Cell probe complexity  a survey
 In 19th Conference on the Foundations of Software Technology and Theoretical Computer Science (FSTTCS), 1999. Advances in Data Structures Workshop
"... The cell probe model is a general, combinatorial model of data structures. We give a survey of known results about the cell probe complexity of static and dynamic data structure problems, with an emphasis on techniques for proving lower bounds. 1 ..."
Abstract

Cited by 29 (0 self)
 Add to MetaCart
(Show Context)
The cell probe model is a general, combinatorial model of data structures. We give a survey of known results about the cell probe complexity of static and dynamic data structure problems, with an emphasis on techniques for proving lower bounds. 1
Finding all maximal cliques in dynamic graphs
 Computational Optimization Appl
"... Clustering applications dealing with perception based or biased data lead to models with nondisjunct clusters. There, objects to be clustered are allowed to belong to several clusters at the same time which results in a fuzzy clustering. It can be shown that this is equivalent to searching all maxi ..."
Abstract

Cited by 20 (1 self)
 Add to MetaCart
(Show Context)
Clustering applications dealing with perception based or biased data lead to models with nondisjunct clusters. There, objects to be clustered are allowed to belong to several clusters at the same time which results in a fuzzy clustering. It can be shown that this is equivalent to searching all maximal cliques in dynamic graphs like Gt = (V;Et), where Et¡1 Et; t = 1; : : : ; T;E0 = Á. In this article algorithms are provided to track all maximal cliques in a fully dynamic graph. It is naturally to raise the question about the maximum clique, having all maximal cliques. Therefore this article discusses potentials and drawbacks for this problem as well. Key wordsmaximal clique, dynamic graphs, fuzzy clustering 1 Introduction and
Kinetic Connectivity of Rectangles
 In Proc. 15th Annu. ACM Sympos. Comput. Geom
, 1999
"... We develop a kinetic data structure (KDS) for maintaining the connectivity of a set of axisaligned rectangles moving in the plane. In the kinetic framework, each rectangle is assumed to travel along a lowdegree algebraic path, specified by a flight planif the flight plan changes, the data struc ..."
Abstract

Cited by 16 (1 self)
 Add to MetaCart
(Show Context)
We develop a kinetic data structure (KDS) for maintaining the connectivity of a set of axisaligned rectangles moving in the plane. In the kinetic framework, each rectangle is assumed to travel along a lowdegree algebraic path, specified by a flight planif the flight plan changes, the data structure is informed about it. The connectivity of rectangles changes only at discrete moments, given by the times when the order of rectangles along either axis changes. Our main result is a kinetic data structure of size O(n log n) that requires O(log 2 n) amortized time for each update, and answers connectivity queries in worstcase time O(log n= log log n). 1 Introduction Connectivity is the most basic of graph properties, with many applications to realworld problems. Applications of connectivity range from electrical connectivity in integrated circuits to network connectivity in communication networks. In this paper, we explore the problem of maintaining the connectivity of n axisalig...
Implementations and Experimental Studies of Dynamic Graph Algorithms
, 2002
"... Dynamic graph algorithms have been extensively studied in the last two decades due to their wide applicability in many contexts. Recently, several implementations and experimental studies have been conducted investigating the practical merits of fundamental techniques and algorithms. In most cases, ..."
Abstract

Cited by 13 (3 self)
 Add to MetaCart
Dynamic graph algorithms have been extensively studied in the last two decades due to their wide applicability in many contexts. Recently, several implementations and experimental studies have been conducted investigating the practical merits of fundamental techniques and algorithms. In most cases, these algorithms required sophisticated engineering and finetuning to be turned into efficient implementations. In this paper, we survey several implementations along with their experimental studies for dynamic problems on undirected and directed graphs. The former case includes dynamic connectivity, dynamic minimum spanning trees, and the sparsification technique. The latter case includes dynamic transitive closure and dynamic shortest paths. We also discuss the design and implementation of a software library for dynamic graph algorithms.