Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.distance.similarityfunction
Class SharedNearestNeighborSimilarityFunction<O extends DatabaseObject,D extends Distance<D>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.logging.AbstractLoggable
      extended by de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
          extended by de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction<O,D>
              extended by de.lmu.ifi.dbs.elki.distance.similarityfunction.AbstractSimilarityFunction<O,D>
                  extended by de.lmu.ifi.dbs.elki.distance.similarityfunction.AbstractPreprocessorBasedSimilarityFunction<O,SharedNearestNeighborsPreprocessor<O,D>,IntegerDistance>
                      extended by de.lmu.ifi.dbs.elki.distance.similarityfunction.SharedNearestNeighborSimilarityFunction<O,D>
Type Parameters:
O - object type
D - distance type
All Implemented Interfaces:
MeasurementFunction<O,IntegerDistance>, PreprocessorBasedMeasurementFunction<O,SharedNearestNeighborsPreprocessor<O,D>,IntegerDistance>, SimilarityFunction<O,IntegerDistance>, PreprocessorClient<SharedNearestNeighborsPreprocessor<O,D>,O>, Parameterizable

public class SharedNearestNeighborSimilarityFunction<O extends DatabaseObject,D extends Distance<D>>
extends AbstractPreprocessorBasedSimilarityFunction<O,SharedNearestNeighborsPreprocessor<O,D>,IntegerDistance>

Author:
Arthur Zimek

Field Summary
 
Fields inherited from class de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction
INFINITY_PATTERN
 
Fields inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
optionHandler
 
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debug, logger
 
Constructor Summary
SharedNearestNeighborSimilarityFunction()
          Provides a SharedNearestNeighborSimilarityFunction with a pattern defined to accept Strings that define a non-negative Integer.
 
Method Summary
protected static int countSharedNeighbors(SortedSet<Integer> neighbors1, SortedSet<Integer> neighbors2)
           
 AssociationID<SortedSet<Integer>> getAssociationID()
          Returns the association ID for the association to be set by the preprocessor.
 String getDefaultPreprocessorClassName()
          Returns the name of the default preprocessor.
 String getPreprocessorDescription()
          Returns the description for the preprocessor parameter.
 Class<SharedNearestNeighborsPreprocessor<O,D>> getPreprocessorSuperClass()
          Returns the super class for the preprocessor parameter.
 IntegerDistance infiniteDistance()
          Provides an infinite distance.
 boolean isInfiniteDistance(IntegerDistance distance)
          Returns true, if the given distance is an infinite distance, false otherwise.
 boolean isNullDistance(IntegerDistance distance)
          Returns true, if the given distance is a null distance, false otherwise.
 boolean isUndefinedDistance(IntegerDistance distance)
          Returns true, if the given distance is an undefined distance, false otherwise.
 IntegerDistance nullDistance()
          Provides a null distance.
 IntegerDistance similarity(Integer id1, Integer id2)
          Returns the similarity between the two objects specified by their object ids.
 IntegerDistance undefinedDistance()
          Provides an undefined distance.
 IntegerDistance valueOf(String pattern)
          Provides a measurement suitable to this measurement function based on the given pattern.
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.similarityfunction.AbstractPreprocessorBasedSimilarityFunction
getPreprocessor, setDatabase, setParameters
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.similarityfunction.AbstractSimilarityFunction
similarity, similarity
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction
getDatabase, matches, requiredInputPattern, setRequiredInputPattern, shortDescription
 
Methods inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
addOption, addParameterizable, addParameterizable, checkGlobalParameterConstraints, collectOptions, getAttributeSettings, getParameters, rememberParametersExcept, removeOption, removeParameterizable
 
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debugFine, debugFiner, debugFinest, exception, progress, verbose, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.lmu.ifi.dbs.elki.distance.MeasurementFunction
requiredInputPattern
 
Methods inherited from interface de.lmu.ifi.dbs.elki.utilities.optionhandling.Parameterizable
checkGlobalParameterConstraints, collectOptions, getParameters, shortDescription
 

Constructor Detail

SharedNearestNeighborSimilarityFunction

public SharedNearestNeighborSimilarityFunction()
Provides a SharedNearestNeighborSimilarityFunction with a pattern defined to accept Strings that define a non-negative Integer.

Method Detail

similarity

public IntegerDistance similarity(Integer id1,
                                  Integer id2)
Description copied from interface: SimilarityFunction
Returns the similarity between the two objects specified by their object ids.

Parameters:
id1 - first object id
id2 - second object id
Returns:
the similarity between the two objects specified by their object ids

countSharedNeighbors

protected static int countSharedNeighbors(SortedSet<Integer> neighbors1,
                                          SortedSet<Integer> neighbors2)

infiniteDistance

public IntegerDistance infiniteDistance()
Description copied from interface: MeasurementFunction
Provides an infinite distance.

Returns:
an infinite distance

isInfiniteDistance

public boolean isInfiniteDistance(IntegerDistance distance)
Description copied from interface: MeasurementFunction
Returns true, if the given distance is an infinite distance, false otherwise.

Parameters:
distance - the distance to be tested on infinity
Returns:
true, if the given distance is an infinite distance, false otherwise

isNullDistance

public boolean isNullDistance(IntegerDistance distance)
Description copied from interface: MeasurementFunction
Returns true, if the given distance is a null distance, false otherwise.

Parameters:
distance - the distance to be tested whether it is a null distance
Returns:
true, if the given distance is a null distance, false otherwise

isUndefinedDistance

public boolean isUndefinedDistance(IntegerDistance distance)
Description copied from interface: MeasurementFunction
Returns true, if the given distance is an undefined distance, false otherwise.

Parameters:
distance - the distance to be tested whether it is undefined
Returns:
true, if the given distance is an undefined distance, false otherwise

nullDistance

public IntegerDistance nullDistance()
Description copied from interface: MeasurementFunction
Provides a null distance.

Returns:
a null distance

undefinedDistance

public IntegerDistance undefinedDistance()
Description copied from interface: MeasurementFunction
Provides an undefined distance.

Returns:
an undefined distance

valueOf

public IntegerDistance valueOf(String pattern)
                        throws IllegalArgumentException
Description copied from interface: MeasurementFunction
Provides a measurement suitable to this measurement function based on the given pattern.

Parameters:
pattern - a pattern defining a similarity suitable to this measurement function
Returns:
a measurement suitable to this measurement function based on the given pattern
Throws:
IllegalArgumentException - if the given pattern is not compatible with the requirements of this measurement function

getAssociationID

public AssociationID<SortedSet<Integer>> getAssociationID()
Description copied from interface: PreprocessorClient
Returns the association ID for the association to be set by the preprocessor.

Returns:
the association ID for the association to be set by the preprocessor, which is AssociationID.SHARED_NEAREST_NEIGHBORS_SET

getDefaultPreprocessorClassName

public String getDefaultPreprocessorClassName()
Description copied from interface: PreprocessorClient
Returns the name of the default preprocessor.

Returns:
the name of the default preprocessor, which is SharedNearestNeighborsPreprocessor

getPreprocessorDescription

public String getPreprocessorDescription()
Description copied from interface: PreprocessorClient
Returns the description for the preprocessor parameter.

Returns:
the description for the preprocessor parameter

getPreprocessorSuperClass

public Class<SharedNearestNeighborsPreprocessor<O,D>> getPreprocessorSuperClass()
Description copied from interface: PreprocessorClient
Returns the super class for the preprocessor parameter.

Returns:
the super class for the preprocessor, which is SharedNearestNeighborsPreprocessor

Release 0.2 (2009-07-06_1820)