de.lmu.ifi.dbs.elki.algorithm.outlier
Class AggarwalYuEvolutionary<V extends NumberVector<?,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<OutlierResult>
      extended by de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractAggarwalYuOutlier<V>
          extended by de.lmu.ifi.dbs.elki.algorithm.outlier.AggarwalYuEvolutionary<V>
Type Parameters:
V - the type of FeatureVector handled by this Algorithm
All Implemented Interfaces:
Algorithm, OutlierAlgorithm, InspectionUtilFrequentlyScanned, Parameterizable

@Title(value="EAFOD: the evolutionary outlier detection algorithm")
@Description(value="Outlier detection for high dimensional data")
@Reference(authors="C.C. Aggarwal, P. S. Yu",
           title="Outlier detection for high dimensional data",
           booktitle="Proc. ACM SIGMOD Int. Conf. on Management of Data (SIGMOD 2001), Santa Barbara, CA, 2001",
           url="http://dx.doi.org/10.1145/375663.375668")
public class AggarwalYuEvolutionary<V extends NumberVector<?,?>>
extends AbstractAggarwalYuOutlier<V>

EAFOD provides the evolutionary outlier detection algorithm, an algorithm to detect outliers for high dimensional data.

Reference:
Outlier detection for high dimensional data Outlier detection for high dimensional data
C.C. Aggarwal, P. S. Yu
Proceedings of the 2001 ACM SIGMOD international conference on Management of data 2001, Santa Barbara, California, United States


Nested Class Summary
private  class AggarwalYuEvolutionary.EvolutionarySearch
          The inner class to handle the actual evolutionary computation.
private static class AggarwalYuEvolutionary.Individuum
          Individuum for the evolutionary search.
static class AggarwalYuEvolutionary.Parameterizer<V extends NumberVector<?,?>>
          Parameterization class.
 
Field Summary
protected static Logging logger
          The logger for this class.
private  int m
          Holds the value of M_ID.
static OptionID M_ID
          Parameter to specify the number of solutions must be an integer greater than 1.
protected  int MAX_ITERATIONS
          Maximum iteration count for evolutionary search.
private  Long seed
          Holds the value of SEED_ID.
static OptionID SEED_ID
          Parameter to specify the random generator seed.
 
Fields inherited from class de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractAggarwalYuOutlier
DONT_CARE, k, K_ID, phi, PHI_ID
 
Constructor Summary
AggarwalYuEvolutionary(int k, int phi, int m, Long seed)
          Constructor.
 
Method Summary
protected  Logging getLogger()
          Get the (STATIC) logger for this class.
 OutlierResult run(Database database, Relation<V> relation)
          Performs the evolutionary algorithm on the given database.
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractAggarwalYuOutlier
buildRanges, computeSubspace, computeSubspaceForGene, getInputTypeRestriction, sparsity
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm
makeParameterDistanceFunction, run
 
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.algorithm.outlier.OutlierAlgorithm
run
 

Field Detail

logger

protected static final Logging logger
The logger for this class.


M_ID

public static final OptionID M_ID
Parameter to specify the number of solutions must be an integer greater than 1.

Key: -eafod.m


SEED_ID

public static final OptionID SEED_ID
Parameter to specify the random generator seed.


MAX_ITERATIONS

protected final int MAX_ITERATIONS
Maximum iteration count for evolutionary search.

See Also:
Constant Field Values

m

private int m
Holds the value of M_ID.


seed

private Long seed
Holds the value of SEED_ID.

Constructor Detail

AggarwalYuEvolutionary

public AggarwalYuEvolutionary(int k,
                              int phi,
                              int m,
                              Long seed)
Constructor.

Parameters:
k - K
phi - Phi
m - M
seed - Seed
Method Detail

run

public OutlierResult run(Database database,
                         Relation<V> relation)
                  throws IllegalStateException
Performs the evolutionary algorithm on the given database.

Parameters:
database - Database
relation - Relation
Returns:
Result
Throws:
IllegalStateException

getLogger

protected Logging getLogger()
Description copied from class: AbstractAlgorithm
Get the (STATIC) logger for this class.

Specified by:
getLogger in class AbstractAlgorithm<OutlierResult>
Returns:
the static logger

Release 0.4.0 (2011-09-20_1324)