A repository for containing complex networks exercises
Here different network growth types are investigated:
- Random Attachment: Network growth (New node with m open links) with random attachment.
- BA scale-free network: This works by drawing n random samples from the links vector and attach the new node to what the links is attached to. Thus nodes who already have many links will experience more growth.
- Modified Preferential growth:
- Random modified growth: Network growth process with random link attachment - meaning that for each growth iteration, a new node will appear and attach itself to each end/node of a randomly sampled link, effectively forming triangles all over.
Below are some plotted results for the different growth types. The explanation for these plots are:
- The number in each node indicates the order in which each particular node was created.
- The size of the node scales with the number of links attached to it.
- N, is the number of nodes in the network.
- The clustering coefficient, C, for each node is a "measure for local connectedness between neighbouring nodes".
For the whole network we can calculate an average clustering coefficient as:
If all nodes are connected to each other directly with a link, this value is 1, i.e. 100% clustering.
By instantiating alot of networks it is possible to find out how the clustering coefficient is statistically distributed, and the script "clustering_statistics.py" does exactly that. For example, by simulating 1000 networks for each type, we can find the mean clustering coefficient for each type of network growth, including its standard deviation.
Distribution of clustering coefficient for simulations of 1000 network growths for each growth type.
In this case, the mean for each network was:
Network Type | Mean Clustering value |
---|---|
Random | 0.049 |
Preferential | 0.128 |
Modified Preferential | 0.097 |
Random Modified | 0.731 |