Ruth Silverman
University of the District of Columbia
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Ruth Silverman.
IEEE Transactions on Pattern Analysis and Machine Intelligence | 2002
Tapas Kanungo; David M. Mount; Nathan S. Netanyahu; Christine D. Piatko; Ruth Silverman; Angela Y. Wu
In k-means clustering, we are given a set of n data points in d-dimensional space R/sup d/ and an integer k and the problem is to determine a set of k points in Rd, called centers, so as to minimize the mean squared distance from each data point to its nearest center. A popular heuristic for k-means clustering is Lloyds (1982) algorithm. We present a simple and efficient implementation of Lloyds k-means clustering algorithm, which we call the filtering algorithm. This algorithm is easy to implement, requiring a kd-tree as the only major data structure. We establish the practical efficiency of the filtering algorithm in two ways. First, we present a data-sensitive analysis of the algorithms running time, which shows that the algorithm runs faster as the separation between clusters increases. Second, we present a number of empirical studies both on synthetically generated data and on real data sets from applications in color quantization, data compression, and image segmentation.
symposium on computational geometry | 2002
Tapas Kanungo; David M. Mount; Nathan S. Netanyahu; Christine D. Piatko; Ruth Silverman; Angela Y. Wu
In k-means clustering we are given a set of n data points in d-dimensional space Rd and an integer k, and the problem is to determine a set of k points in ÓC;d, called centers, to minimize the mean squared distance from each data point to its nearest center. No exact polynomial-time algorithms are known for this problem. Although asymptotically efficient approximation algorithms exist, these algorithms are not practical due to the extremely high constant factors involved. There are many heuristics that are used in practice, but we know of no bounds on their performance.We consider the question of whether there exists a simple and practical approximation algorithm for k-means clustering. We present a local improvement heuristic based on swapping centers in and out. We prove that this yields a (9+ε)-approximation algorithm. We show that the approximation factor is almost tight, by giving an example for which the algorithm achieves an approximation factor of (9-ε). To establish the practical value of the heuristic, we present an empirical study that shows that, when combined with Lloyds algorithm, this heuristic performs quite well in practice.
symposium on computational geometry | 2000
Tapas Kanungo; David M. Mount; Nathan S. Netanyahu; Christine D. Piatko; Ruth Silverman; Angela Y. Wu
Abstract : K-means clustering is a very popular clustering technique which is used in numerous applications. Given a set of n data points in R(exp d) and an integer k, the problem is to determine a set of k points R(exp d), called centers, so as to minimize the mean squared distance from each data point to its nearest center. A popular heuristic for k-means clustering is Lloyds algorithm. In this paper, we present a simple and efficient implementation of Lloyds k-means clustering algorithm, which we call the filtering algorithm. This algorithm is very easy to implement. It differs from most other approaches in that it precomputes a kd-tree data structure for the data points rather than the center points. We establish the practical efficiency of the filtering algorithm in two ways. First, we present a data-sensitive analysis of the algorithms running time. Second, we have implemented the algorithm and performed a number of empirical studies, both on synthetically generated data and on real data from applications in color quantization, compression, and segmentation.
Computer Vision and Image Understanding | 1996
David M. Mount; Ruth Silverman; Angela Y. Wu
Given two simple polygonsPandQin the plane and a translation vectort?R2, thearea-of-overlapfunction ofPandQis the function Ar(t) = Area(P? (t+Q)), wheret+QdenotesQtranslated byt. This function has a number of applications in areas such as motion planning and object recognition. We present a number of mathematical results regarding this function. We also provide efficient algorithms for computing a representation of this function and for tracing contour curves of constant area-of-overlap.
Journal of Algorithms | 1990
David M. Mount; Ruth Silverman
Abstract A covering of the Euclidean plane by a polygon P is a system of translated copies of P whose union is the plane, and a packing of P in the plane is a system of translated copies of P whose interiors are disjoint. A lattice covering is a covering in which the translates are defined by the points of a lattice, and a lattice packing is defined similarly. We show that, given a convex polygon P with n vertices, the densest lattice packing of P in the plane can be found in O(n) time. We also show that the sparsest lattice covering of the plane by a centrally symmetric convex polygon can be solved in O(n) time. Our approach utilizes results from classical geometry that reduce these packing and covering problems to the problems of finding certain extremal enclosed figures within the polygon.
symposium on computational geometry | 2004
David M. Mount; Nathan S. Netanyahu; Christine D. Piatko; Ruth Silverman; Angela Y. Wu
We propose a generic computational framework for maintaining a discrete geometric structure defined by a collection of static and mobile objects. We assume that the mobile objects move incrementally, that is, in discrete time steps. We assume that the structure to be maintained is a function of the current locations of the mobile and static objects (independent of their prior motion). Unlike other models for kinetic computation, we place no restrictions on the motion nor on its predictability.In order to handle unrestricted incremental motion, our framework is based on the coordination of two computational entities. The first is the incremental motion algorithm. It is responsible for maintaining the structure and a set of certificates, or conditions, that prove the structures correctness. The other entity, called the motion processor, is responsible for handling all the low-level aspects of motion, including computing and/or tracking the motion of the mobile objects, answering queries about their current positions and velocities, and validating that the object motions satisfy simple motion estimates, which are generated by the incremental motion algorithm. Computational efficiency is measured in terms of the number of interactions between these two entities.
International Journal of Computational Geometry and Applications | 2000
David M. Mount; Nathan S. Netanyahu; Christine D. Piatko; Ruth Silverman; Angela Y. Wu
Given a set P of n points in Rd, a fundamental problem in computational geometry is concerned with finding the smallest shape of some type that encloses all the points of P. Well-known instances of this problem include finding the smallest enclosing box, minimum volume ball, and minimum volume annulus. In this paper we consider the following variant: Given a set of n points in Rd, find the smallest shape in question that contains at least k points or a certain quantile of the data. This type of problem is known as a k-enclosing problem. We present a simple algorithmic framework for computing quantile approximations for the minimum strip, ellipsoid, and annulus containing a given quantile of the points. The algorithms run in O(n log n) time.
Computational Geometry: Theory and Applications | 2000
David M. Mount; Nathan S. Netanyahu; Ruth Silverman; Angela Y. Wu
793,162. Measuring tapes. TIGRETT INDUSTRIES, Inc. Aug. 15, 1955, No. 23427/55. Class 106 (2). [Also in Groups XV, XXII, XXVI and XXXII] A measuring tape 31 is coiled on the outer periphery of a circular flange of a member 24, journalled at 26, in a bearing carried by an outer housing 29. A constant-tension spiral spring 18 (see Group XXXII) is disposed concentrically within the flange 24, and has one end connected to the latter, and the other end connected to a fixed part of the bearing 26.
Pattern Recognition | 1995
Longin Jan Latecki; Azriel Rosenfeld; Ruth Silverman
Abstract A set S is convex if for every pair of points P , Q ϵ S , the line segment PQ is contained in S . This definition can be generalized in various ways. One class of generalizations makes use of k -tuples, rather than pairs, of points—for example, Valentines property P 3 : For every triple of points P , Q , R of S , at least one of the line segments PQ , QR , or RP is contained in S . It can be shown that if a set has property P 3 , it is a union of at most three convex sets. In this paper we study a property closely related to, but weaker than, P 3 . We say that S has property CP 3 (“collinear P 3 ”) if P 3 holds for all collinear triples of points of S . We prove that a closed curve is the boundary of a convex set, and a simple arc is part of the boundary of a convex set, iff they have property CP 3 . This result appears to be the first simple characterization of the boundaries of convex sets; it solves a problem studied over 30 years ago by Menger and Valentine.
Applications in Optical Science and Engineering | 1993
David M. Mount; Ruth Silverman
Given a convex polygon P, an m-envelope is a convex m-sided polygon that contains P. Given any convex polygon P, and any sequence of m >= 3 angles A equals ((alpha) 1, (alpha) 2, ..., (alpha) m) we consider the problem of computing the minimum area m- envelope for P whose counterclockwise sequence of exterior angles is given by A. We show that such envelopes can be computed in O(nm log m) time. The main result on which the correctness of the algorithm rests is a flushness condition stating that for any locally minimum enclosure with specified angles, one of its sides must be collinear with one of the sides of P.