此函数基于 Watts-Strogatz 模型的变体生成具有小世界属性的网络。通过首先创建一个周期性无向格,然后以概率 p
重连每条边的两个端点,同时避免创建多重边,来获得网络。
详细信息
请注意,此函数可能会创建具有环和/或多重边的图。您可以使用 simplify()
来消除这些。
此过程与 Watts 和 Strogatz 的原始模型(参见参考资料)不同,因为它重连边的**两个**端点。因此,在 p=1
的极限情况下,我们获得一个 G(n,m) 随机图,其顶点和边数与原始格相同。相比之下,原始的 Watts-Strogatz 模型仅重连每条边的一个端点,因此即使对于 p=1
,网络也不会完全随机化。对于 p
的适当选择,这两种模型都表现出同时具有短路径长度和高聚类系数的特性。
参考文献
Duncan J Watts and Steven H Strogatz: Collective dynamics of ‘small world’ networks, Nature 393, 440-442, 1998.
参见
随机图模型 (games) bipartite_gnm()
, erdos.renyi.game()
, sample_()
, sample_bipartite()
, sample_chung_lu()
, sample_correlated_gnp()
, sample_correlated_gnp_pair()
, sample_degseq()
, sample_dot_product()
, sample_fitness()
, sample_fitness_pl()
, sample_forestfire()
, sample_gnm()
, sample_gnp()
, sample_grg()
, sample_growing()
, sample_hierarchical_sbm()
, sample_islands()
, sample_k_regular()
, sample_last_cit()
, sample_pa()
, sample_pa_age()
, sample_pref()
, sample_sbm()
, sample_traits_callaway()
, sample_tree()
作者
Gabor Csardi csardi.gabor@gmail.com
示例
g <- sample_smallworld(1, 100, 5, 0.05)
mean_distance(g)
#> [1] 2.651717
transitivity(g, type = "average")
#> [1] 0.4970309