Results 1  10
of
66
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 50 (24 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.
SelfAdjusting Computation
 In ACM SIGPLAN Workshop on ML
, 2005
"... From the algorithmic perspective, we describe novel data structures for tracking the dependences ina computation and a changepropagation algorithm for adjusting computations to changes. We show that the overhead of our dependence tracking techniques is O(1). To determine the effectiveness of change ..."
Abstract

Cited by 49 (18 self)
 Add to MetaCart
From the algorithmic perspective, we describe novel data structures for tracking the dependences ina computation and a changepropagation algorithm for adjusting computations to changes. We show that the overhead of our dependence tracking techniques is O(1). To determine the effectiveness of changepropagation, we present an analysis technique, called trace stability, and apply it to a number of applications.
LowDimensional Linear Programming with Violations
 In Proc. 43th Annu. IEEE Sympos. Found. Comput. Sci
, 2002
"... Two decades ago, Megiddo and Dyer showed that linear programming in 2 and 3 dimensions (and subsequently, any constant number of dimensions) can be solved in linear time. In this paper, we consider linear programming with at most k violations: finding a point inside all but at most k of n given half ..."
Abstract

Cited by 43 (3 self)
 Add to MetaCart
(Show Context)
Two decades ago, Megiddo and Dyer showed that linear programming in 2 and 3 dimensions (and subsequently, any constant number of dimensions) can be solved in linear time. In this paper, we consider linear programming with at most k violations: finding a point inside all but at most k of n given halfspaces. We give a simple algorithm in 2d that runs in O((n + k ) log n) expected time; this is faster than earlier algorithms by Everett, Robert, and van Kreveld (1993) and Matousek (1994) and is probably nearoptimal for all k n=2. A (theoretical) extension of our algorithm in 3d runs in near O(n + k ) expected time. Interestingly, the idea is based on concavechain decompositions (or covers) of the ( k)level, previously used in proving combinatorial klevel bounds.
A dynamic data structure for 3d convex hull and 2d nearest neighbor queries
 In: Proceedings of the seventeenth ACMSIAM symposium on Discrete algorithm
, 2006
"... We present a fully dynamic randomized data structure that can answer queries about the convex hull of a set of n points in three dimensions, where insertions take O(log 3 n) expected amortized time, deletions take O(log 6 n) expected amortized time, and extremepoint queries take O(log 2 n) worstca ..."
Abstract

Cited by 27 (4 self)
 Add to MetaCart
(Show Context)
We present a fully dynamic randomized data structure that can answer queries about the convex hull of a set of n points in three dimensions, where insertions take O(log 3 n) expected amortized time, deletions take O(log 6 n) expected amortized time, and extremepoint queries take O(log 2 n) worstcase time. This is the first method that guarantees polylogarithmic update and query cost for arbitrary sequences of insertions and deletions, and improves the previous O(n ε)time method by Agarwal and Matouˇsek a decade ago. As a consequence, we obtain similar results for nearest neighbor queries in two dimensions and improved results for numerous fundamental geometric problems (such as levels in three dimensions and dynamic Euclidean minimum spanning trees in the plane). 1
Buddy Tracking  Efficient Proximity Detection Among Mobile Friends
, 2004
"... Global positioning systems (GPS) and mobile phone networks are making it possible to track individual users with an increasing accuracy. It is natural to ask whether one can use this information to maintain social networks. Here each user wishes to be informed whenever one of a list of other users, ..."
Abstract

Cited by 26 (1 self)
 Add to MetaCart
(Show Context)
Global positioning systems (GPS) and mobile phone networks are making it possible to track individual users with an increasing accuracy. It is natural to ask whether one can use this information to maintain social networks. Here each user wishes to be informed whenever one of a list of other users, called the user's friends, appears in the user's vicinity. In contrast to more traditional positioning based algorithms, the computation here depends not only on the user's own position on a static map, but also on the dynamic position of the user's friends. Hence it requires both communication and computation resources. The computation can be carried out either between the individual users in a peertopeer fashion or by centralized servers where computation and data can be collected at one central location. In the peertopeer model, a novel algorithm for minimizing the number of location update messages between pairs of friends is presented. We also present an efficient algorithm for the centralized model, based on region hierarchy and quadtrees. The paper provides an analysis of the two algorithms, compares them with a naive approach, and evaluates them using the IBM City Simulator system.
Multidimensional scattered ranking methods for geographic information retrieval
 GeoInformatica
, 2005
"... Geographic Information Retrieval is concerned with retrieving documents in response to a spatially related query. This paper addresses the ranking of documents by both textual and spatial relevance. To this end, we introduce multidimensional scattered ranking, where textually and spatially similar ..."
Abstract

Cited by 17 (2 self)
 Add to MetaCart
(Show Context)
Geographic Information Retrieval is concerned with retrieving documents in response to a spatially related query. This paper addresses the ranking of documents by both textual and spatial relevance. To this end, we introduce multidimensional scattered ranking, where textually and spatially similar documents are ranked spread in the list, instead of consecutively. The effect of this is that documents close together in the ranked list have less redundant information. We present various ranking methods of this type, efficient algorithms to implement them, and experiments to show the outcome of the methods.
Computing the visibility graph of points within a polygon
 In Symposium on Computational Geometry
, 2004
"... We study the problem of computing the visibility graph defined by a set P of n points inside a polygon Q: two points p, q ∈ P are joined by an edge if the segment pq ⊂ Q. Efficient outputsensitive algorithms are known for the case in which P is the set of all vertices of Q. We examine the general c ..."
Abstract

Cited by 14 (4 self)
 Add to MetaCart
(Show Context)
We study the problem of computing the visibility graph defined by a set P of n points inside a polygon Q: two points p, q ∈ P are joined by an edge if the segment pq ⊂ Q. Efficient outputsensitive algorithms are known for the case in which P is the set of all vertices of Q. We examine the general case in which P is an arbitrary set of points, interior or on the boundary of Q and study a variety of algorithmic questions. We give an outputsensitive algorithm, which is nearly optimal, when Q is a simple polygon. We introduce a notion of “fat ” or “robust ” visibility, and give a nearly optimal algorithm for computing visibility graphs according to it, in polygons Q that may have holes. Other results include an algorithm to detect if there are any visible pairs among P, and algorithms for outputsensitive computation of visibility graphs with distance restrictions, invisibility graphs, and rectangle visibility graphs.
Maintaining Visibility Information of Planar Point Sets with a Moving Viewpoint
 IN 17TH CANADIAN CONFERENCE ON COMPUTATIONAL GEOMETRY
, 2005
"... Given a set of n points in the plane, we consider the problem of computing the circular ordering of the points about a viewpoint q and efficiently maintaining this ordering information as q moves. ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
Given a set of n points in the plane, we consider the problem of computing the circular ordering of the points about a viewpoint q and efficiently maintaining this ordering information as q moves.
Relative εApproximations in Geometry
, 2007
"... We reexamine relative εapproximations, previously studied in [Pol86, Hau92, LLS01, CKMS06], and their relation to certain geometric problems. We give a simple constructive proof of their existence in general range spaces with finite VCdimension, and of a sharp bound on their size, close to the be ..."
Abstract

Cited by 12 (4 self)
 Add to MetaCart
(Show Context)
We reexamine relative εapproximations, previously studied in [Pol86, Hau92, LLS01, CKMS06], and their relation to certain geometric problems. We give a simple constructive proof of their existence in general range spaces with finite VCdimension, and of a sharp bound on their size, close to the best known one. We then give a construction of smallersize relative εapproximations for range spaces that involve points and halfspaces in two and higher dimensions. The planar construction is based on a new structure—spanning trees with small relative crossing number, which we believe to be of independent interest. We also consider applications of the new structures for approximate range counting and related problems.