cornerSort {debCAM} | R Documentation |
Given a set of data points, return possible combinations of data points as corners. These combinations are selected by ranking the sum of margin-of-errors.
cornerSort(X, K, nComb)
X |
Data in a matrix. Each column is a data point. |
K |
The number of corner points. |
nComb |
The number of returned combinations of data points as corners. All combinations will be returned if the number of all combinations is less than nComb. |
This function is to detect K corner points from M data
points by conducting an exhaustive combinatorial search (with total
C_M^K combinations), based on a convex-hull-to-data fitting criterion:
sum of margin-of-errors. nComb
combinations are returned for further
selection based on reconstruction errors of all data points in original
space.
The function is implemented in Java with R-to-Java interface provided by
rJava
package. It relies on NonNegativeLeastSquares class in Parallel
Java Library (https://www.cs.rit.edu/~ark/pj.shtml).
A list containing the following components:
idx |
A matrix to show the indexes of data points in combinations to construct a convex hull. Each column is one combination. |
error |
A vector of margin-of-error sums for each combination. |
data <- matrix(c(0.1,0.2,1.0,0.0,0.0,0.5,0.3, 0.1,0.7,0.0,1.0,0.0,0.5,0.3, 0.8,0.1,0.0,0.0,1.0,0.0,0.4), nrow =3, byrow = TRUE) topconv <- cornerSort(data, 3, 10)