Options
All
  • Public
  • Public/Protected
  • All
Menu

Class StandardLocalMovingAlgorithm

Standard local moving algorithm.

The standard local moving algorithm iterates over the nodes in a network. A node is moved to the cluster that results in the largest increase in the quality function. If the current cluster assignment of the node is already optimal, the node is not moved. The algorithm continues iterating over the nodes in a network until no more nodes can be moved.

A fast variant of the standard local moving algorithm is provided by the FastLocalMovingAlgorithm.

Hierarchy

Index

Properties

DEFAULT_RESOLUTION: number = 1

Default resolution parameter.

resolution: number

Resolution parameter.

random: Random

Random number generator.

Methods

  • getResolution(): number
  • setResolution(resolution: number): void
  • Calculates the quality of a clustering using the CPM quality function.

    The CPM quality function is given by

    1 / (2 * m) * sum(d(c[i], c[j]) * (a[i][j] - resolution * n[i] *
    n[j])),

    where a[i][j] is the weight of the edge between nodes i and j, n[i] is the weight of node i, m is the total edge weight, and resolution is the resolutionparameter. The function d(c[i], c[j]) equals 1 if nodes i and j belong to the same cluster and 0 otherwise. The sum is taken over all pairs of nodes i and j.

    Modularity can be expressed in terms of CPM by setting n[i] equal to the total weight of the edges between node i and its neighbors and by rescaling the resolution parameter by 2 * m.

    Parameters

    Returns number

    Quality of the clustering

  • Removes a cluster from a clustering by merging the cluster with another cluster. If a cluster has no connections with other clusters, it cannot be removed.

    Parameters

    • network: Network

      Network

    • clustering: Clustering

      Clustering

    • cluster: number

      Cluster to be removed

    Returns number

    Cluster with which the cluster to be removed has been merged, or -1 if the cluster could not be removed

  • removeSmallClustersBasedOnNNodes(network: Network, clustering: Clustering, minNNodesPerCluster: number): boolean
  • removeSmallClustersBasedOnWeight(network: Network, clustering: Clustering, minClusterWeight: number): boolean
  • Removes small clusters from a clustering. Clusters are merged until each cluster has at least a certain minimum total node weight.

    The total node weight of a cluster equals the sum of the weights of the nodes belonging to the cluster.

    Parameters

    • network: Network

      Network

    • clustering: Clustering

      Clustering

    • minClusterWeight: number

      Minimum total node weight of a cluster

    Returns boolean

    Boolean indicating whether any clusters have been removed

  • initializeBasedOnResolution(resolution: number): void
  • initializeBasedOnRandom(random: Random): void
  • initializeBasedOnResolutionAndRandom(resolution: number, random: Random): void
  • Initializes a standard local merging algorithm for a specified resolution parameter.

    Parameters

    • resolution: number

      Resolution parameter

    • random: Random

      Random number generator

    Returns void

  • Improves a clustering of the nodes in a network using the standard local moving algorithm.

    The standard local moving algorithm iterates over the nodes in a network. A node is moved to the cluster that results in the largest increase in the quality function. If the current cluster assignment of the node is already optimal, the node is not moved. The algorithm continues iterating over the nodes in a network until no more nodes can be moved.

    Parameters

    Returns boolean

    Boolean indicating whether the clustering has been improved

Constructors

Generated using TypeDoc