dual_barabasi_albert_graph#

dual_barabasi_albert_graph(n, m1, m2, p, seed=None, initial_graph=None, *, create_using=None)[source]#

使用双重 Barabási–Albert 优先连接返回一个随机图

一个包含 n 个节点的图通过增长生成,方法是附加新节点,每个新节点以概率 p 附加 m1 条边或以概率 1p 附加 m2 条边,这些边优先连接到度数较高的现有节点。

参数:
nint

节点数

m1int

以概率 p 连接每个新节点到现有节点的边数

m2int

以概率 1p 连接每个新节点到现有节点的边数

pfloat

附加 m1 条边的概率 (相对于 m2 条边)

seed整数, random_state 对象,或 None (默认)

随机数生成状态的指示器。参见随机性

initial_graph图对象 或 None (默认)

Barabási–Albert 算法的初始网络。使用 initial_graph 的副本。在大多数用例中,它应该连接。如果为 None,则从一个包含 max(m1, m2) + 1 个节点的星图开始。

create_using图构造器,可选 (默认=nx.Graph)

要创建的图类型。如果提供图实例,则在填充前会被清空。不支持多重图和有向图类型,并将引发 NetworkXError

返回:
G图对象
引发:
NetworkXError

如果 m1m2 不满足 1 <= m1,m2 < n,或 p 不满足 0 <= p <= 1,或初始图的节点数 m0 不满足 m1, m2 <= m0 <= n

参考文献

[1]
  1. Moshiri “The dual-Barabasi-Albert model”, arXiv:1810.10538.