14829043
The Robot Localization Problem
We consider the following problem: given a simple polygon ${\cal P}$ and a star-shaped polygon ${\cal V}$, find a point (or the set of points) in ${\cal P}$ from which the portion of ${\cal P}$ that is visible is translation-congruent to ${\cal V}$. The problem arises in the localization of robots equipped with a range finder and a compass---${\cal P}$ is a map of a known environment, ${\cal V}$ is the portion visible from the robot's position, and the robot must use this information to determine its position in the map. We give a scheme that preprocesses ${\cal P}$ so that any subsequent query ${\cal V}$ is answered in optimal time O(m + log n + A), where m and n are the number of vertices in ${\cal V}$ and ${\cal P}$ and A is the number of points in ${\cal P}$ that are valid answers (the output size). Our technique uses O(n5) space and preprocessing in the worst case; within certain limits, we can trade off smoothly between the query time and the preprocessing time and space. In the process of solving this problem, we also devise a data structure for output-sensitive determination of the visibility polygon of a query point inside a polygon ${\cal P}$. We then consider a variant of the localization problem in which there is a maximum distance to which the robot can "see"---this is motivated by practical considerations, and we outline a similar solution for this case. We finally show that a single localization query ${\cal V}$ can be answered in time O(mn) with no preprocessing.
10626633
Cylindrical static and kinetic binary space partitions
We describe the first known algorithm for efficiently maintaining a Binary Space Partition (BSP) for n continuously moving segments in the plane, whose interiors remain disjoint throughout the motion. Under reasonable assumptions on the motion, we show that the total number of times this BSP changes is O.n 2 / ,a nd that we can update the BSP in O.logn/ expected time per change. Throughout the motion, the expected size of the BSP is O.n logn/. We also consider the problem of constructing a BSP for n static triangles with pairwise-disjoint interiors in R 3 . We present a randomized algorithm that constructs a BSP of size O.n 2 / in O.n 2 log 2 n/ expected time. We also describe a deterministic algorithm that constructs a BSP of size O..nCk/log 2 n/ and height O.logn/ in O..nCk/log 3 n/ time, where k is the number of intersection points between the edges of the projections of the triangles onto the xy-plane. This is the first known algorithm that constructs a BSP of O.logn/ height for disjoint triangles inR 3 . © 2000 Elsevier Science B.V. All rights reserved.
11907465
Deformable Free-Space Tilings for Kinetic Collision Detection†
We present kinetic data structures for detecting collisions between a set of polygons that are moving continuously. Unlike classical collision detection methods that rely on bounding volume hierarchies, our method is based on deformable tilings of the free space surrounding the polygons. The basic shape of our tiles is that of a pseudo-triangle, a shape sufficiently flexible to allow extensive deformation, yet structured enough to make detection of self-collisions easy. We show different schemes for maintaining pseudo-triangulations as a kinetic data structure, and we analyze their performance. Specifically, we first describe an algorithm for maintaining a pseudo-triangulation of a point set, and show that the pseudo-triangulation changes only quadratically many times if points move along algebraic arcs of constant degree. In addition, by refining the pseudo-triangulation, we show triangulations of points that only change about O(n 7 / 3 ) times for linear motion. We then describe an algorithm for maintaining a pseudo-triangulation of a set of convex polygons. Finally, we extend our algorithm to the general case of maintaining a pseudo-triangulation of a set of moving or deforming simple polygons.
8275001
Zonotopes as bounding volumes
Zonotopes are centrally symmetric polytopes with a very special structure: they are Minkowski sums of line segments. In this paper we propose to use zonotopes as bounding volumes for geometry in collision detection and other applications where the spatial relationship between two pieces of geometry is important. We show how to construct optimal, or approximately optimal zonotopes enclosing given set of points or other geometry. We also show how zonotopes can be used for efficient collision testing, based on their representation via their defining line segments --- without ever building their explicit description as polytopes. This implicit representation adds flexibility, power, and economy to the use of zonotopes as bounding volumes.
2060671
Landmark Selection and Greedy Landmark-Descent Routing for Sensor Networks
We study the problem of landmark selection for landmark-based routing in a network of fixed wireless communication nodes. We present a distributed landmark selection algorithm that does not rely on global clock synchronization, and a companion local greedy landmark-based routing scheme. We assume no node location information, and that each node can communicate with some of its geographic neighbors. Each node is named by its hop count distances to a small number of nearby landmarks. Greedy routing at a node is performed to equalize its vector of landmark distances to that of the destination. This is done by following the shortest path to the landmark that maximizes the ratio of its distances to the source and the destination. In addition, we propose a method to alleviate the difficulty in routing to destinations near the boundaries by virtually expanding the network boundaries. The greedy routing, when combined with our landmark selection scheme, has a provable bounded path stretch relative to the best path possible, and guarantees packet delivery in the continuous domain. In the discrete domain, our simulations show that the landmark selection scheme is effective, and the companion routing scheme performs well under realistic settings. Both the landmark selection and greedy routing assumes no specific communication model and works with asymmetric links. Although some of the analysis are non-trivial, the algorithms are simple, flexible and cost-effective enough to warrant a real-world deployment.
36092896
Fractionally cascaded information in a sensor network
31972087
Sparse data aggregation in sensor networks
34799453
Estimating surface normals in noisy point cloud data
In this paper we describe and analyze a method based on local least square fitting for estimating the normals at all sample points of a point cloud data (PCD) set, in the presence of noise. We study the effects of neighborhood size, curvature, sampling density, and noise on the normal estimation when the PCD is sampled from a smooth curve in ℝ2 or a smooth surface in ℝ3, and noise is added. The analysis allows us to find the optimal neighborhood size using other local information from the PCD. Experimental results are also provided.
10145935
Partial and approximate symmetry detection for 3D geometry
"Symmetry is a complexity-reducing concept [...]; seek it every-where." - Alan J. PerlisMany natural and man-made objects exhibit significant symmetries or contain repeated substructures. This paper presents a new algorithm that processes geometric models and efficiently discovers and extracts a compact representation of their Euclidean symmetries. These symmetries can be partial, approximate, or both. The method is based on matching simple local shape signatures in pairs and using these matches to accumulate evidence for symmetries in an appropriate transformation space. A clustering stage extracts potential significant symmetries of the object, followed by a verification step. Based on a statistical sampling analysis, we provide theoretical guarantees on the success rate of our algorithm. The extracted symmetry graph representation captures important high-level information about the structure of a geometric model which in turn enables a large set of further processing operations, including shape compression, segmentation, consistent editing, symmetrization, indexing for retrieval, etc.
8013433
Data structures for mobile data
Computer systems commonly cache the values of variables to gain efficiency. In applications where the goal is to track attributes of a continuously moving or deforming physical system over time, caching relations between variables works better than caching individual values. The reason is that, as the system evolves, such relationships are more stable than the values of individual variables.
Kinetic data structures (KDSs) are a novel formal framework for designing and analyzing sets of assertions to cache about the environment, so that these assertion sets are at once relatively stable and tailored to facilitate or trivialize the computation of the attribute of interest. Formally, a KDS is a mathematical proof animated through time, proving the validity of a certain computation for the attribute of interest. KDSs have rigorous associated measures of performance and their design shares many qualities with that of classical data structures.
The KDS framework has led to many new and promising algorithms in applications where the efficient modeling of motion is essential. Among these are collision detection for moving rigid and deformable bodies, connectivity maintenace in ad-hoc networks, local environment tracking for mobile agents, and visibility/occlusion maintenance. This talk will survey the general ideas behind KDSs and illustrate their application to simple geometric problems that arise in virtual and physical environments.
9160404
Shape segmentation using local slippage analysis
We propose a method for segmentation of 3D scanned shapes into simple geometric parts. Given an input point cloud, our method computes a set of components which possess one or more slippable motions: rigid motions which, when applied to a shape, slide the transformed version against the stationary version without forming any gaps. Slippable shapes include rotationally and translationally symmetrical shapes such as planes, spheres, and cylinders, which are often found as components of scanned mechanical parts. We show how to determine the slippable motions of a given shape by computing eigenvalues of a certain symmetric matrix derived from the points and normals of the shape. Our algorithm then discovers slippable components in the input data by computing local slippage signatures at a set of points of the input and iteratively aggregating regions with matching slippable motions. We demonstrate the performance of our algorithm for reverse engineering surfaces of mechanical parts.