Home
PRIMAL is an implementation of a supervised learning algorithm based on nearest-neighbors and the Gabriel graph. PRIMAL incorporates several unique techniques to improve accuracy and optimize efficiency. In order to reduce classification errors and provide greater generality, the training data is smoothed using Wilson editing of the Gabriel graph. Points are removed if they share Gabriel neighbors of the same class to reduce storage space while minimizing change to the decision boundary. The resulting training set is tuned using the Iterative Case Fitting algorithm of Brighton and Mellish. Lastly, unknown points are classified according to their nearest neighbor on the Gabriel graph. PRIMAL efficiently computes the approximate Gabriel neighbors of query points using an adaption of Houle's Spatial Approximation Sample Hierarchy algorithm for finding nearest neighbors in high dimensions.
This site provides the source code and documentation for PRIMAL under the GNU General Public License, several publications relevant to PRIMAL, and information for contacting the authors of the code.