de.lmu.ifi.dbs.elki.index.preprocessed.preference
Class HiSCPreferenceVectorIndex<V extends NumberVector<?,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.index.AbstractIndex<O>
      extended by de.lmu.ifi.dbs.elki.index.preprocessed.AbstractPreprocessorIndex<NV,BitSet>
          extended by de.lmu.ifi.dbs.elki.index.preprocessed.preference.AbstractPreferenceVectorIndex<V>
              extended by de.lmu.ifi.dbs.elki.index.preprocessed.preference.HiSCPreferenceVectorIndex<V>
All Implemented Interfaces:
Index, PreferenceVectorIndex<V>, Result

@Title(value="HiSC Preprocessor")
@Description(value="Computes the preference vector of objects of a certain database according to the HiSC algorithm.")
public class HiSCPreferenceVectorIndex<V extends NumberVector<?,?>>
extends AbstractPreferenceVectorIndex<V>
implements PreferenceVectorIndex<V>

Preprocessor for HiSC preference vector assignment to objects of a certain database.

See Also:
HiSC

Nested Class Summary
static class HiSCPreferenceVectorIndex.Factory<V extends NumberVector<?,?>>
          Factory class
 
Field Summary
protected  double alpha
          Holds the value of parameter alpha.
protected  int k
          Holds the value of parameter k.
protected static Logging logger
          Logger to use
 
Fields inherited from class de.lmu.ifi.dbs.elki.index.preprocessed.AbstractPreprocessorIndex
storage
 
Fields inherited from class de.lmu.ifi.dbs.elki.index.AbstractIndex
relation
 
Constructor Summary
HiSCPreferenceVectorIndex(Relation<V> relation, double alpha, int k)
          Constructor.
 
Method Summary
private  BitSet determinePreferenceVector(Relation<V> relation, DBID id, DBIDs neighborIDs, StringBuffer msg)
          Determines the preference vector according to the specified neighbor ids.
protected  Logging getLogger()
          Get the classes static logger.
 String getLongName()
          A "pretty" name for the result, for use in titles, captions and menus.
 String getShortName()
          A short name for the result, useful for file names.
protected  void preprocess()
          Preprocessing step.
 
Methods inherited from class de.lmu.ifi.dbs.elki.index.preprocessed.preference.AbstractPreferenceVectorIndex
getPreferenceVector
 
Methods inherited from class de.lmu.ifi.dbs.elki.index.AbstractIndex
delete, deleteAll, getPageFileStatistics, insert, insertAll
 
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.index.preprocessed.preference.PreferenceVectorIndex
getPreferenceVector
 
Methods inherited from interface de.lmu.ifi.dbs.elki.index.Index
delete, deleteAll, getPageFileStatistics, insert, insertAll
 

Field Detail

logger

protected static final Logging logger
Logger to use


alpha

protected double alpha
Holds the value of parameter alpha.


k

protected int k
Holds the value of parameter k.

Constructor Detail

HiSCPreferenceVectorIndex

public HiSCPreferenceVectorIndex(Relation<V> relation,
                                 double alpha,
                                 int k)
Constructor.

Parameters:
relation - Relation in use
alpha - Alpha value
k - k value
Method Detail

preprocess

protected void preprocess()
Description copied from class: AbstractPreferenceVectorIndex
Preprocessing step.

Specified by:
preprocess in class AbstractPreferenceVectorIndex<V extends NumberVector<?,?>>

determinePreferenceVector

private BitSet determinePreferenceVector(Relation<V> relation,
                                         DBID id,
                                         DBIDs neighborIDs,
                                         StringBuffer msg)
Determines the preference vector according to the specified neighbor ids.

Parameters:
relation - the database storing the objects
id - the id of the object for which the preference vector should be determined
neighborIDs - the ids of the neighbors
msg - a string buffer for debug messages
Returns:
the preference vector

getLogger

protected Logging getLogger()
Description copied from class: AbstractPreprocessorIndex
Get the classes static logger.

Specified by:
getLogger in class AbstractPreprocessorIndex<V extends NumberVector<?,?>,BitSet>
Returns:
Logger

getLongName

public String getLongName()
Description copied from interface: Result
A "pretty" name for the result, for use in titles, captions and menus.

Specified by:
getLongName in interface Result
Specified by:
getLongName in class AbstractIndex<V extends NumberVector<?,?>>
Returns:
result name

getShortName

public String getShortName()
Description copied from interface: Result
A short name for the result, useful for file names.

Specified by:
getShortName in interface Result
Specified by:
getShortName in class AbstractIndex<V extends NumberVector<?,?>>
Returns:
result name

Release 0.4.0 (2011-09-20_1324)