public abstract class KDTreeNodeSplitter extends java.lang.Object implements java.io.Serializable, OptionHandler, RevisionHandler
Modifier and Type | Field and Description |
---|---|
static int |
MAX
Index of max value in an array of attributes' range.
|
static int |
MIN
Index of min value in an array of attributes' range.
|
static int |
WIDTH
Index of width value (max-min) in an array of attributes' range.
|
Constructor and Description |
---|
KDTreeNodeSplitter()
default constructor.
|
KDTreeNodeSplitter(int[] instList,
Instances insts,
EuclideanDistance e)
Creates a new instance of KDTreeNodeSplitter.
|
Modifier and Type | Method and Description |
---|---|
java.lang.String[] |
getOptions()
Gets the current settings of the object.
|
java.lang.String |
getRevision()
Returns the revision string.
|
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options.
|
void |
setEuclideanDistanceFunction(EuclideanDistance func)
Sets the EuclideanDistance object to use for
splitting nodes.
|
void |
setInstanceList(int[] instList)
Sets the master index array containing indices of the
training instances.
|
void |
setInstances(Instances inst)
Sets the training instances on which the tree is (or is
to be) built.
|
void |
setNodeWidthNormalization(boolean normalize)
Sets whether if a nodes region is normalized
or not.
|
void |
setOptions(java.lang.String[] options)
Parses a given list of options.
|
abstract void |
splitNode(KDTreeNode node,
int numNodesCreated,
double[][] nodeRanges,
double[][] universe)
Splits a node into two.
|
public static final int MIN
public static final int MAX
public static final int WIDTH
public KDTreeNodeSplitter()
public KDTreeNodeSplitter(int[] instList, Instances insts, EuclideanDistance e)
instList
- Reference of the master index array.insts
- The set of training instances on which
the tree is built.e
- The EuclideanDistance object that is used
in tree contruction.public java.util.Enumeration listOptions()
listOptions
in interface OptionHandler
public void setOptions(java.lang.String[] options) throws java.lang.Exception
setOptions
in interface OptionHandler
options
- the list of options as an array of stringsjava.lang.Exception
- if an option is not supportedpublic java.lang.String[] getOptions()
getOptions
in interface OptionHandler
public abstract void splitNode(KDTreeNode node, int numNodesCreated, double[][] nodeRanges, double[][] universe) throws java.lang.Exception
node
- The node to split.numNodesCreated
- The number of nodes that so far have been
created for the tree, so that the newly created nodes are
assigned correct/meaningful node numbers/ids.nodeRanges
- The attributes' range for the points inside
the node that is to be split.universe
- The attributes' range for the whole
point-space.java.lang.Exception
- If there is some problem in splitting the
given node.public void setInstances(Instances inst)
inst
- The training instances.public void setInstanceList(int[] instList)
instList
- The master index array.public void setEuclideanDistanceFunction(EuclideanDistance func)
func
- The EuclideanDistance object.public void setNodeWidthNormalization(boolean normalize)
normalize
- Should be true if
normalization is required.public java.lang.String getRevision()
getRevision
in interface RevisionHandler