java.lang.Object
es.uam.eps.ir.relison.sna.community.detection.modularity.AbstractFastGreedy<U>
es.uam.eps.ir.relison.sna.community.detection.modularity.FastGreedy<U>
Type Parameters:
U - type of the users.
All Implemented Interfaces:
CommunityDetectionAlgorithm<U>, DendogramCommunityDetectionAlgorithm<U>

public class FastGreedy<U>
extends AbstractFastGreedy<U>
Fast Greedy algorithm for optimizing modularity.

Reference: M.E.J. Newman. Fast Algorithm for detecting community structure in networks. Physical Review E 69(6): 066133 (2004)

  • Field Summary

    Fields inherited from class es.uam.eps.ir.relison.sna.community.detection.modularity.AbstractFastGreedy

    rng
  • Constructor Summary

    Constructors 
    Constructor Description
    FastGreedy()  
  • Method Summary

    Modifier and Type Method Description
    protected org.jooq.lambda.tuple.Tuple3<java.lang.Integer,​java.lang.Integer,​java.lang.Double> findOptimalJoint​(Graph<U> graph, Communities<U> comm)
    Finds the optimal pair of communities to merge.

    Methods inherited from class es.uam.eps.ir.relison.sna.community.detection.modularity.AbstractFastGreedy

    detectCommunities, detectCommunityDendogram

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • findOptimalJoint

      protected org.jooq.lambda.tuple.Tuple3<java.lang.Integer,​java.lang.Integer,​java.lang.Double> findOptimalJoint​(Graph<U> graph, Communities<U> comm)
      Finds the optimal pair of communities to merge. It just optimizes the modularity of the network.
      Specified by:
      findOptimalJoint in class AbstractFastGreedy<U>
      Parameters:
      graph - the original graph.
      comm - the communities.
      Returns:
      a triple containing: a) the first comm. to merge, b) the second one, c) the mod. increment.