Algorithms and Data Structures for External Memory
Algorithms and Data Structures for External Memory
Algorithms and Data Structures for External Memory
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
8<br />
Batched Problems in Computational Geometry<br />
For brevity, in the remainder of this manuscript we deal only with<br />
the single-disk case D = 1. The single-disk I/O bounds <strong>for</strong> the batched<br />
problems can often be cut by a factor of Θ(D) <strong>for</strong> the case D ≥ 1<br />
by using the load balancing techniques of Chapter 5. In practice, disk<br />
striping (cf. Section 4.2) may be sufficient. For online problems, disk<br />
striping will convert optimal bounds <strong>for</strong> the case D = 1 into optimal<br />
bounds <strong>for</strong> D ≥ 1.<br />
Problems involving massive amounts of geometric data are ubiquitous<br />
in spatial databases [230, 299, 300], geographic in<strong>for</strong>mation systems<br />
(GIS) [16, 230, 299, 334], constraint logic programming [209, 210],<br />
object-oriented databases [361], statistics, virtual reality systems, <strong>and</strong><br />
computer graphics [169].<br />
For systems of massive size to be efficient, we need fast EM algorithms<br />
<strong>and</strong> data structures <strong>for</strong> some of the basic problems in computational<br />
geometry. Luckily, many problems on geometric objects can<br />
be reduced to a small set of core problems, such as computing intersections,<br />
convex hulls, or nearest neighbors. Useful paradigms have<br />
69