# \[ANN\] VPTrees.jl - nearest neighbor search in metric spaces

**URL:** <https://discourse.julialang.org/t/ann-vptrees-jl-nearest-neighbor-search-in-metric-spaces/31477>\
**Category:** Package Announcements\
**Created:** [November 25, 2019, 7:33am UTC](https://discourse.julialang.org/t/ann-vptrees-jl-nearest-neighbor-search-in-metric-spaces/31477 "2019-11-25T07:33:34Z")\
**Posts on this page:** 1\
**Showing post:** 6

<div class="post-metadata">

**Author:** ![Datseris](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/datseris/32/13406_2.png) [@Datseris](https://discourse.julialang.org/u/Datseris)\
**Post date:** [November 26, 2019, 10:10pm UTC](https://discourse.julialang.org/t/ann-vptrees-jl-nearest-neighbor-search-in-metric-spaces/31477/6 "2019-11-26T22:10:14Z")

</div>

Thanks for sharing these benchmarks. At JuliaDynamics we are constantly doing a lot of nearest neighbor searching and it will be interesting to compare these three packages also for the datasets that we use there.

They are fundamentally different in the sense that they are composed of low-dimensional static arrays. I know that NearestNeighbors have been optimized a lot for these kind of datasets.

In JuliaDynamics, specifically the “Base” package for datasets, I have defined a `neighborhood` interface that links to NearestNeighbors.jl . It would be trivial to extend this to accommodate all packages. I only have to define dispatch for the second argument (currently only “tree”) of the [`neighborhood` function](https://juliadynamics.github.io/DynamicalSystems.jl/dev/embedding/dataset/#DelayEmbeddings.neighborhood)

maybe @altre , @kristoffer.carlsson and @JonasIsensee and @zgornel you wouldbe interested into bringing everything together in JuliaNeighbors ? I’d be happy to contribute the common interface via `neighborhood` or something similar.

---

_[View the full topic](https://discourse.julialang.org/t/ann-vptrees-jl-nearest-neighbor-search-in-metric-spaces/31477)._
