watts_strogatz_graph¶
-
watts_strogatz_graph
(n, k, p, seed=None)[source]¶ Return a Watts–Strogatz small-world graph.
Parameters: - n (int) – The number of nodes
- k (int) – Each node is joined with its
k
nearest neighbors in a ring topology. - p (float) – The probability of rewiring each edge
- seed (int, optional) – Seed for random number generator (default=None)
Notes
First create a ring over
n
nodes. Then each node in the ring is joined to itsk
nearest neighbors (ork - 1
neighbors ifk
is odd). Then shortcuts are created by replacing some edges as follows: for each edge(u, v)
in the underlying “n
-ring withk
nearest neighbors” with probability \(p\) replace it with a new edge(u, w)
with uniformly random choice of existing nodew
.In contrast with
newman_watts_strogatz_graph()
, the random rewiring does not increase the number of edges. The rewired graph is not guaranteed to be connected as inconnected_watts_strogatz_graph()
.References
[1] Duncan J. Watts and Steven H. Strogatz, Collective dynamics of small-world networks, Nature, 393, pp. 440–442, 1998.