ws - Create a small-world graph using the Watts-Strogatz model
ws N m p [SHOW]
ws creates a small-world undirected graph with 'N' nodes using the
Watts-Strogatz small-world network model. The nodes are initially
placed around a circle and each node is connected to its 'm' closest
neighbours on either side. Then, each edge is rewired (independently)
with probability 'p'. The program prints on output the edge-list of
the resulting graph.
Number of nodes in the final graph.
Number of neighbours on the circle graph to which a node is connected on either side (i.e., each node will initially have '2m' edges).
Edge rewiring probability.
If the fourth (optional) parameter is equal to SHOW, the program
will print on STDERR the number of edges rewired while constructing
the graph.
The command:
$ ws 100 3 0.1
0 95
0 2
0 3
1 2
1 24
1 4
2 3
....
99 0
99 56
99 2
$
creates a Watts-Strogatz small-world network with 'N=100' nodes and
'K=m*N=300' edges, where each edge is independently rewired with
probability 'p=0.1'. The output of ws is the edge-list of the
resulting graph. Notice that in this case the first edge od node 0
has been rewired and connected to node 95. In order to be useful,
such edge-list should be saved into a file. The following command:
$ ws 100 300 0.1 SHOW > ws_100_3_0.1.net
Rewired edges: 32
$
will save the resulting graph in the file ws_100_3_0.1.net. Notice
the usage of the symbol ">" to redirect the output of the program to
a file. The line printed on output reports the number of rewired
edges, since SHOW was specified as a fourth parameter.
D. J. Watts and S. H. Strogatz. "Collective dynamics of 'small-world' networks". Nature 393 (1998), 440–442.
V. Latora, V. Nicosia, G. Russo, "Complex Networks: Principles, Methods and Applications", Chapter 4, Cambridge University Press (2017)
(c) Vincenzo 'KatolaZ' Nicosia 2009-2017 <v.nicosia@qmul.ac.uk>.