Vantage-point tree
A vantage-point tree, or VP tree is a BSP tree which segregates data in a metric space by choosing a position in the space (the "vantage point") and dividing the data points into two partitions: those that are nearer to the vantage point than a threshold, and those that are not. By repeatedly applying this procedure to partition the data into smaller and smaller sets, a tree data structure is created where neighbors in the tree are likely to be neighbors in the space.
One of its declination is called the multi-vantage point tree, or MVP tree: an abstract data structure for indexing objects from large metric spaces for similarity search queries. It uses more than one point to partition each level.
History
Peter Yianilos claimed that the VP-tree was discovered independently by him (Peter Yianilos)
and by Jeffrey Uhlmann.
Yet, Uhlmann published this method before Yianilos in 1991.
Uhlmann called the data structure a metric tree, the name VP-tree was
proposed by Yianilos.
Vantage point trees have been generalized to non-metric spaces using Bregman divergences by Nielsen et al.