Class GriDBSCAN<V extends NumberVector>

  • Type Parameters:
    V - the type of vector the algorithm is applied to
    All Implemented Interfaces:
    Algorithm, ClusteringAlgorithm<Clustering<Model>>

    @Title("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 java.lang.Object
    implements ClusteringAlgorithm<Clustering<Model>>
    Using Grid for Accelerating Density-Based Clustering.

    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.

    Since:
    0.7.1
    Author:
    Erich Schubert
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected Distance<? super V> distance
      Distance function used.
      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.
    • Constructor Summary

      Constructors 
      Constructor Description
      GriDBSCAN​(Distance<? super V> distance, double epsilon, int minpts, double gridwidth)
      Constructor with parameters.
    • Field Detail

      • LOG

        private static final Logging LOG
        The logger for this class.
      • epsilon

        protected double epsilon
        Holds the epsilon radius threshold.
      • minpts

        protected int minpts
        Holds the minimum cluster size.
      • gridwidth

        protected double gridwidth
        Width of the grid cells. Must be at least 2 epsilon!
    • Constructor Detail

      • GriDBSCAN

        public GriDBSCAN​(Distance<? super V> distance,
                         double epsilon,
                         int minpts,
                         double gridwidth)
        Constructor with parameters.
        Parameters:
        distance - Distance function
        epsilon - Epsilon value
        minpts - Minpts parameter
        gridwidth - Grid width