V - the type of vector the algorithm is applied to@Title(value="GriDBSCAN: Using Grid for Accelerating Density-Based Clustering") @Reference(authors="S. Mahran, K. Mahar", title="Using grid for accelerating density-based clustering", booktitle="8th IEEE Int. Conf. on Computer and Information Technology", url="https://doi.org/10.1109/CIT.2008.4594646", bibkey="DBLP:conf/IEEEcit/MahranM08") public class GriDBSCAN<V extends NumberVector> extends AbstractDistanceBasedAlgorithm<V,Clustering<Model>> implements ClusteringAlgorithm<Clustering<Model>>
An accelerated DBSCAN version for numerical data and Lp-norms only, by partitioning the data set into overlapping grid cells. For best efficiency, the overlap of the grid cells must be chosen well. The authors suggest a grid width of 10 times epsilon.
Because of partitioning the data, this version does not make use of indexes.
Reference:
 S. Mahran, K. Mahar
 Using grid for accelerating density-based clustering
 In 8th IEEE Int. Conf. on Computer and Information Technology, 2008.
| Modifier and Type | Class and Description | 
|---|---|
protected static class  | 
GriDBSCAN.Instance<V extends NumberVector>
Instance, for a single run. 
 | 
static class  | 
GriDBSCAN.Parameterizer<O extends NumberVector>
Parameterization class. 
 | 
| Modifier and Type | Field and Description | 
|---|---|
protected double | 
epsilon
Holds the epsilon radius threshold. 
 | 
protected double | 
gridwidth
Width of the grid cells. 
 | 
private static Logging | 
LOG
The logger for this class. 
 | 
protected int | 
minpts
Holds the minimum cluster size. 
 | 
ALGORITHM_IDDISTANCE_FUNCTION_ID| Constructor and Description | 
|---|
GriDBSCAN(DistanceFunction<? super V> distanceFunction,
         double epsilon,
         int minpts,
         double gridwidth)
Constructor with parameters. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
TypeInformation[] | 
getInputTypeRestriction()
Get the input type restriction used for negotiating the data query. 
 | 
protected Logging | 
getLogger()
Get the (STATIC) logger for this class. 
 | 
Clustering<Model> | 
run(Relation<V> relation)
Performs the DBSCAN algorithm on the given database. 
 | 
getDistanceFunctionrunclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrunprivate static final Logging LOG
protected double epsilon
protected int minpts
protected double gridwidth
public GriDBSCAN(DistanceFunction<? super V> distanceFunction, double epsilon, int minpts, double gridwidth)
distanceFunction - Distance functionepsilon - Epsilon valueminpts - Minpts parametergridwidth - Grid widthpublic Clustering<Model> run(Relation<V> relation)
public TypeInformation[] getInputTypeRestriction()
AbstractAlgorithmgetInputTypeRestriction in interface AlgorithmgetInputTypeRestriction in class AbstractAlgorithm<Clustering<Model>>protected Logging getLogger()
AbstractAlgorithmgetLogger in class AbstractAlgorithm<Clustering<Model>>Copyright © 2019 ELKI Development Team. License information.