dual tree Data Structures
Many of our fast algorithms rely on data structures, both existing ones and new ones we have introduced.

fastlab Big Ideas People Stuff
Isee elsewhere
Cover Trees
We showed new analysis methods for cover trees, in the context of bichromatic, dual-tree algorithms. [see full entry here]
Cosine Trees
We introduced cosine trees, an analog of ball trees for dot products rather than distances, in the context of accelerating linear algebraic computations. [see full entry here]
Subspace Trees
We introduced subspace trees, which create splits along principal component directions, in the context of accelerating high-dimensional kernel summations. [see full entry here]
Spill Trees
We introduced spill trees, kd-tree variants which allow overlapping bounding boxes, in the context of accelerating approximate nearest-neighbor searches. [see full entry here]
Iin progress
Comparison/Survey of Data Structures
We have implemented and compared 45 of the most widely-known or promising algorithms and data structures for proximity problems (5 variants of nearest-neighbor search and 3 variants of range search). We believe this is likely the most comprehensive experimental study of proximity problems that exists.
Adaptive and Parameterized Analysis of Proximity Data Structures
We are pursuing the development of theoretical techniques for more realistic runtime analysis of practical algorithms, toward a theory for the design of optimal data structures for proximity problems.