Class OPTICSList<O>

  • Type Parameters:
    O - the type of objects handled by the algorithm
    All Implemented Interfaces:
    Algorithm, OPTICSTypeAlgorithm

    @Title("OPTICS: Density-Based Hierarchical Clustering (implementation using a list)")
    @Reference(authors="Mihael Ankerst, Markus M. Breunig, Hans-Peter Kriegel, J\u00f6rg Sander",
               title="OPTICS: Ordering Points to Identify the Clustering Structure",
               booktitle="Proc. ACM SIGMOD Int. Conf. on Management of Data (SIGMOD \'99)",
               url="https://doi.org/10.1145/304181.304187",
               bibkey="DBLP:conf/sigmod/AnkerstBKS99")
    public class OPTICSList<O>
    extends AbstractOPTICS<O>
    The OPTICS algorithm for density-based hierarchical clustering.

    Algorithm to find density-connected sets in a database based on the parameters 'minPts' and 'epsilon' (specifying a volume). These two parameters determine a density threshold for clustering.

    This version is implemented using a list, always scanning the list for the maximum. While this could be cheaper than the complex heap updates, benchmarks indicate the heap version is usually still preferable.

    Reference:

    Mihael Ankerst, Markus M. Breunig, Hans-Peter Kriegel, Jörg Sander
    OPTICS: Ordering Points to Identify the Clustering Structure
    Proc. ACM SIGMOD Int. Conf. on Management of Data (SIGMOD '99)

    Since:
    0.7.0
    Author:
    Elke Achtert, Erich Schubert
    • Field Detail

      • LOG

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

      • OPTICSList

        public OPTICSList​(Distance<? super O> distance,
                          double epsilon,
                          int minpts)
        Constructor.
        Parameters:
        distance - Distance function
        epsilon - Epsilon value
        minpts - Minpts value