cdlib.benchmark.RDyn

RDyn(size: int = 300, iterations: int = 5, avg_deg: int = 15, sigma: float = 0.6, lambdad: float = 1, alpha: float = 2.5, paction: float = 1, prenewal: float = 0.8, quality_threshold: float = 0.5, new_node: float = 0.0, del_node: float = 0.0, max_evts: int = 1, simplified: bool = True) → [<Mock id='139911946799888'>, <class 'object'>]

RDyn is a syntetic dynamic network generator with time-dependent ground-truth partitions having tunable quality (in terms of conductance). Communities’ ids are aligned across time and a predefined number of merge/plit events are planted in between consecutive stable iterations.

Parameters:
  • size – Number of nodes
  • iterations – Number of stable iterations
  • avg_deg – Average node degree. Int, default 15
  • sigma – Percentage of node’s edges within a community. Float, default .6
  • lambdad – Community size distribution exponent. Float, default 1
  • alpha – Degree distribution exponent. Float, default 2.5
  • paction – Probability of node action. Float, default 1
  • prenewal – Probability of edge renewal. Float, default, .8
  • quality_threshold – Conductance quality threshold for stable iteration. Float, default .5
  • new_node – Probability of node appearance. Float, default 0
  • del_node – Probability of node vanishing. Float, default 0
  • max_evts – Max number of community events for stable iteration. Int, default 1
  • simplified – Simplified execution. Boolean, default True. (NB: when True an approximation of the original process is executed - some network characteristics can deviate from the expected ones)
Returns:

A dynetx DynGraph, the TemporalClustering object

Example:
>>> from cdlib.benchmark import RDyn
>>> G, coms = RDyn(n=300)
References:

Rossetti, Giulio. “RDyn: graph benchmark handling community dynamics.” Journal of Complex Networks 5.6 (2017): 893-912.

Note

Reference implementation: https://github.com/GiulioRossetti/RDyn