Generating edges
This library generate edges in a modular structure based on the paper ... .
Procedure
It follows a two step process:
-
Generating edges inside communities
-
Generating edges between communities
Each of these steps, also follow two subsequent processes:
-
Creating backbone connectivity network for contributing nodes
-
Add a temporal dimension to this static network using poisson point process.
For the first step, the parameters are explained as below:
Backbone connectivity network parameters
Name | Type | Description |
---|---|---|
alpha | Float | [0.5,1): defines the internal density coefficient |
beta | Float | [0,1]: related to community identifialbility |
For the second step, the arguments are discussed below:
Poisson point process parameters
Name | Type | Description |
---|---|---|
lambda_in | Float | Rate of poisson process for generating temporal edges inside communities |
lambda_out | Float | Rate of poisson process for generating temporal edges betweek communities |
Rewiring noise
Inorder to add imperfections to our linkstream, we introduced a rewiring noise which can be used after the edge generation procedure.
It has only one paramter:
Name | Type | Description |
---|---|---|
eta | Float | [0,1]: rewiring noise probability |
Example
from mosaic_benchmark import ModularLinkStream
M=ModularLinkStream(number_of_nodes=10, t_start=0,t_end=4)
M.add_community([0,1,2,3,4],0,4)
M.add_community([5,6,7,8,9],0,4)
#Full clique inside, No edges outside in backbone connectivity network
M.generate_edges(1,0,1,0)
#Full clique inside and outside in backbone connectivity network (equal rates)
M.clear_edges()
M.generate_edges(1,1,1,1)
#Full clique inside and outside in backbone connectivity network (dissimilar rates)
M.clear_edges()
M.generate_edges(1,1,1,0.01)
# Signifact inside and rare outside in backbone connectivity network (similar rates)
M.clear_edges()
M.generate_edges(0.8,0.1,1,1)
Becarefull that the function gets the attribute with this order:
generate_edges(alpha, beta, lambda_in, lambda_out)