org.dllearner.algorithms.refinement
Class NodeComparator2

java.lang.Object
  extended by org.dllearner.algorithms.refinement.NodeComparator2
All Implemented Interfaces:
Comparator<Node>, Heuristic

public class NodeComparator2
extends Object
implements Heuristic

This heuristic compares two nodes by computing a score using the number of covered negatives and the horizontal expansion factor of a node as input. Using this score it decides which one of the nodes seems to be more promising. The heuristic is flexible, because it offers a tradeoff between accurary and horizontal expansion (concept length). In contrast to the lexicographic heuristic this means that it sometimes prefers worse classifiers with low horizontal expansion over a better classifier with high horizontal expansion. It can be configured by using the "percentPerLenghtUnit" constructor argument. A higher value means that the algorithm is more likely to search in unexplored areas (= low horizontal expansion) of the search space vs. looking in promising but already explored (= high horizontal expansion) areas of the search space.

Author:
Jens Lehmann

Constructor Summary
NodeComparator2(int nrOfNegativeExamples, double percentPerLengthUnit)
           
 
Method Summary
 int compare(Node n1, Node n2)
           
 boolean equals(Object o)
           
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NodeComparator2

public NodeComparator2(int nrOfNegativeExamples,
                       double percentPerLengthUnit)
Method Detail

compare

public int compare(Node n1,
                   Node n2)
Specified by:
compare in interface Comparator<Node>

equals

public boolean equals(Object o)
Specified by:
equals in interface Comparator<Node>
Overrides:
equals in class Object


SourceForge.net Logo DL-Learner is licenced under the terms of the GNU General Public License.
Copyright © 2007-2011 Jens Lehmann