A Decomposition
of Multidimensional
Point
Sets with
Applications
to
k-Nearest-Neighbors
and
n-Body
Potential
Fields
PAUL
B.
CALLAHAN
AND
S.
RAO
Johns Hopkins
University,
Baltimore,
Maiyland
KOSARAJU
Abstract.
We define the notion
of a well-separated
pair
decomposition
of points in d-dimensional
space. We
then
develop
efficient
sequential
and
parallel
algorithms
for
computing
such
a
decomposition.
We apply the resulting
decomposition
to the efficient
computation
of k-nearest
neighbors and n-body potential
fields.
Categories
and Subject
Descriptors:
F.2.2 [Analysis
of Algorithms
and
Problem
Complexity]:
Nonnumerical
Algorithms
and Problems—geometrical problems
and
computations
F.1.2
[Compu-
tation
by Abstract
Devices]: Modes of Computation—parallelism
and concurrency
General Terms: Algorithms,
Theory
Additional
Key Words and phrdses: Afl nearest neighbors, fast multipole
method
1.
Introduction
We
define
the
notion
of
a
well-separated
pair
decomposition
of
a
set
P
of
n
points
in
d dimensions.
This
consists
of
a bina~
tree
whose
leaves
are
points
in
P,
with
internal
nodes
corresponding
to
subsets
of
P
in
the
natural
way,
and
a
list
of
pairs
of
nodes,
such
that
the
sets
corresponding
to
each
node
are
geometrically
separated
in
a manner
to
be
defined,
and
each
distinct
pair
of
points
is “covered”
by
exactly
one
of
the
pairs
of
nodes.
()
We
show
that
although
there
are
;
pairs
of
points,
we
can
always
find
a
well-separated
pair
decomposition
using
O(n)
pairs
of
nodes.
Additionally,
we
show
that
such
a
decomposition
can
be
computed
in
O(n
log
n)
sequential
time,
which
we
prove
is
optimal,
and
in
0(log2n)
time
on
a
CREW
PRAM
using
O(n)
processors.
Using
this
decomposition,
we
show
that
the
k-nearest
neighbors
of
each
point
can
be
computed
in
O(n)
sequential
time,
and
in
O(log
n)
parallel
time
on
a CREW
PRAM
with
0(n)
processors,
for
any
fixed
k.
Note
that
this
gives
The work of both authors was supported by the National
Science Foundation
under grant CCR
91-07293 and by NSF/DARPA
under grant CCR 89-08092.
Authors’
address: Computer
Science Department,
Johns Hopkins
University,
Baltimore,
MD
21218.
Permission to copy without
fee all or part of this material
is granted provided that the copies are
not made or distributed
for direct commercial advantage, the ACM
copyright notice and the title
of the publication
and its date appear, and notice is given that copying is by permission of the
Association for Computing
Machinery.
To copy otherwise, or to republish, requires a fee and/or
specific permission.
Q 1995 ACM
0004-5411/95/0100-0067
$03.50
Journalof the Associationfor ComputingMachinery,Vol 42,No, 1,Jmuay 1995,pp
67-90,