Overview
The Simple Interconnect Islands (SII) network generator creates networks made of nb.islands islands. Each island is made of a random network of size size.island and having density p.in. Every pairs of islands are interconnected by n.inter links.
This random network generator may be used for benchmarking and/or simulation. It creates small-world networks with communities. It does not intends to generate plausible nor realistic networks, but its statistical properties may be easily tuned by playing with its parameters.
Properties
- expected total number of edges (total_links_expected): (nb.islands-1)*nb.islands/2 + nb.islands*size.island*(size.island-1)/2*p.in
- total number of nodes (totalsize): nb.islands*size.island
- expected average degree: 2*total_links_expected/totalsize
- expected density: total_links_expected/(totalsize*(totalsize-1)/2)
- expected clustering rate into each island: p.in (as in any random network)
- expected clustering rate in the whole network: (p.in^3 + (n.inter/size.island)^3) / (p.in^2 + (n.inter/size.island)^2)
- distribution of degree is Poisson-like (sum of the distribution of connectivity for islands).
Behaviour:
- connected as long as p.in is high enough (as in any random network)
- average path length increase slighly when size.island increase. Average path length decrease when nb.islands increase.
- islands create areas with strong clustering
- average short path remains low because of the interconnections between islands.
- as a consequence, SII networks are small-world according to the Watts&Strogatz 1998 definition.
Sourcecode
This R script enable a low-perf generation of SII (requires the igraph package).
This network generator will next be included in the igraph package with a more efficient C version (see https://code.launchpad.net/~samuel-...) for sourcecode.
Example
First open R, load the igraph library, and copy/past the script above:
Generating a SII network:
Display it and observe some of its properties: