Approximate nearest nearest neighbor Search program code ann:a Library for approximate nearest neighbor Searching_ approximate nearest neighbor

Source: Internet
Author: User
Ann:a Library for
Approximate nearest neighbor searching David M. Mount and Sunil Arya Version 1.1.2
Release Date:jan-What is ANN? ANN is a library written in C + +, which supports data structures and algorithms for both exact and approximate nearest Hbor searching in arbitrarily high dimensions.

In the nearest neighbor problem a set of data points in d-dimensional spaces is given. These points are preprocessed to a data structure, so this given any query point Q, the nearest or generally K nearest p Oints of P to Q can is reported efficiently. The distance between two points can be defined in many ways. ANN assumes that distances are measured using any class of distance functions called Minkowski. These include the known Euclidean distance, Manhattan distance, and Max distance.

Based on We own experience, ANN performs quite efficiently for point sets ranging into size from thousands to hundreds of T Housands, and in dimensions as 20. (for applications in significantly higher dimensions, the results are rather spotty, but you might try it anyway.)

The library implements a number of different data structures, based on kd-trees and box-decomposition trees, and employs a Couple of different search strategies.

The library also comes with test programs to measuring the quality of performance of ANN on any particular data sets, As as is as programs for visualizing the structure of the geometric data structures. Why approximate nearest neighbors? Computing exact nearest neighbors in dimensions more higher than 8 seems to be a very task. Few methods seem to is significantly better than a brute-force computation of all distances. However, it has been shown this by computing nearest neighbors-approximately, it is possible to achieve fast The ER running times (on the order of ' s "s) often with a relatively small actual errors. ANN allows the user to specify a maximum approximation error bound, thus allowing the user to control the tradeoff between Accuracy and running time. Conditions of use as of Version 1.0, ANN is distributed under the terms of The gnu lesser public License. Please also check out The copyright notice andlicense Terms.

The University of Maryland and the authors make no representations about the suitability or fitness to this software for a NY purpose. It is provided ' as is ' without express or implied warranty.   System Requirements compiling ANN requires an ANSI C + + compiler. It has been successfully compiled and run on a number of platforms, including Sun workstations running SunOS 5.x (Solaris) and Linux 2.x platforms using the g++ compiler, and under Microsoft Windows using Visual Studio, Version 8.0, and Vis UAL C + + 2005. How can I get ANN? The latest version of ANN can is downloaded here. The changes in version 1.1.2 are very minor, and primarily involve fixing, compilation, and errors C + + modern. See readme.txt for more information. ANN Version 1.1.2  (release Date:jan) ann_1.1.2.zip:complete the source code and documentation in ZIP format. (617K) Ann_1.1.2.tar.gz:same contents as Ann_1.1.2.zip, but in tar.gz format. (590K) ANN programming manual  (PDF) And documentation source files. ReadMe.txt:Text file containing general information about the library. ANN Version 1.1.2:precompiled files for users of Microsoft Windows XP. Contains precompiled Library (. dll and. lib), include files, and executables needed for using ANN. Ann_1.1.2_ms_win32_bin. Zip:in zip format. (556K) Ann_1.1.2_ms_win32_bin.tar.gz:same contents as Ann_1.1.2_ms_win32_bin.zip, but in tar.gz format. (560K)

Older versions of ANN are also available, but not supported. ANN Version 1.1.1  (release date:08/04/06) ann_1.1.1.tar.gz:complete source code and documentation. (588K) ann_1.1.1_ms_win32_bin.tar.gz. (225K) ANN Version 1.1  (release date:05/03/05) ann_1.1.tar.gz:complete source code and documentation. (588K) ann_1.1_ms_win32_bin.tar.gz. (222K) ANN Version 1.0  (release date:04/01/05) ann_1.0.tar.gz. (550K) ann_1.0_ms_win32_bin.tar.gz. (150K) ANN Version 0.2  (release date:06/24/98) ann_0.2.tar.gz. (166K) ANN Version 0.1  (release date:03/04/98) ann_0.1.tar.gz. (165K) questions/comments? If you are have questions or comments, please email them to Dave mount: mount@cs.umd.edu.   Acknowledgments We would like to thank the numerous user's ANN who have made contributions in the form of sugges tions, makefile entries, and finding bugs (and waited so patiently to this release). We would also like to acknowledge the support of the NSF under grants CCR-9712379 and CCR-0098151.

Back to Dave Mount ' s home page.

Last Updated on 28, 2010.


from:http://www.cs.umd.edu/~mount/ann/

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.