geometric_soft_configuration_graph#

geometric_soft_configuration_graph(*, beta, n=None, gamma=None, mean_degree=None, kappas=None, seed=None)[source]#

返回一个从几何软配置模型中随机生成的图。

:math:`mathbb{S}^1`模型[1]是几何软配置模型,能够解释现实网络的许多基本特征,如小世界属性、异质度分布、高聚类水平和自相似性。

在几何软配置模型中,节点:math:i`被分配两个隐藏变量:隐藏度:math:kappa_i`,量化其流行度、影响力或重要性,以及在抽象相似空间中的角位置:math:theta_i,其中节点间的角距离是其相似性的代理。聚焦于角位置,该模型常被称为:math:mathbb{S}^1`模型(一维球面)。圆的半径调整为:math:`R = N/2pi,其中:math:`N`是节点数,使得密度在不失一般性的情况下设为1。

任意一对节点的连接概率随其隐藏度(即它们的综合流行度)的乘积增加,随两节点间的角距离减少。具体地,节点:math:`i`和:math:`j`以概率

\(p_{ij} = \frac{1}{1 + \frac{d_{ij}^\beta}{\left(\mu \kappa_i \kappa_j\right)^{\max(1, \beta)}}}\)

连接,其中:math:d_{ij} = RDeltatheta_{ij}`是节点:math:`i`和:math:`j`间圆弧的长度,分隔角距离为:math:Deltatheta_{ij}`。参数:math:mu`和:math:beta`(也称为逆温度)分别控制平均度和聚类系数。

可以证明[2],模型在:math:beta=1`处经历结构相变,使得对于:math:beta<1`,网络在热力学极限(当:math:Nto infty)下无聚类,而对于:math:beta>1,集合生成具有有限聚类系数的网络。

\(\mathbb{S}^1`模型可以表示为双曲平面中的纯几何模型:math:\)mathbb{H}^2`[3],通过将每个节点的隐藏度映射为径向坐标,

\(r_i = \hat{R} - \frac{2 \max(1, \beta)}{\beta \zeta} \ln \left(\frac{\kappa_i}{\kappa_0}\right)\)

其中:math:hat{R}`是双曲盘的半径,:math:zeta`是曲率,

\(\hat{R} = \frac{2}{\zeta} \ln \left(\frac{N}{\pi}\right) - \frac{2\max(1, \beta)}{\beta \zeta} \ln (\mu \kappa_0^2)\)

连接概率则为

\(p_{ij} = \frac{1}{1 + \exp\left({\frac{\beta\zeta}{2} (x_{ij} - \hat{R})}\right)}\)

其中

\(x_{ij} = r_i + r_j + \frac{2}{\zeta} \ln \frac{\Delta\theta_{ij}}{2}\)

是两个节点间双曲距离的良好近似,分隔角距离为:math:Deltatheta_{ij},径向坐标为:math:r_i`和:math:`r_j。对于:math:beta > 1,曲率:math:zeta = 1,对于:math:beta < 1\(\zeta = \beta^{-1}\)

Parameters:
提供 `n` 、 `gamma` 、 `mean_degree` 或 `kappas` 。 `n` 、 `gamma` 、 `mean_degree` 的值(如果提供)用于构建一个随机kappa字典,按节点键值,值从幂律分布中采样。
beta正数

逆温度,控制聚类系数。

n整数 (默认: None)

网络的大小(节点数)。 如果未提供,必须提供 kappas 并包含节点。

gamma浮点数 (默认: None)

隐藏度 kappas 的幂律分布指数。 如果未提供,必须直接提供 kappas

mean_degree浮点数 (默认: None)

网络中的平均度。 如果未提供,必须直接提供 kappas

kappas字典 (默认: None)

按节点键值到其隐藏度值的字典。 如果未提供,基于幂律分布使用 ngammamean_degree 计算随机值。

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

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

Returns:

一个随机几何软配置图(无向且无自环)。 每个节点有三个节点属性:

  • kappa 表示隐藏度。

  • theta 相似空间 (\(\mathbb{S}^1\)) 中的位置,也是双曲平面中的角位置。

  • radius 双曲平面中的径向位置(基于隐藏度)。

References

[1]

Serrano, M. Á., Krioukov, D., & Boguñá, M. (2008). Self-similarity of complex networks and hidden metric spaces. Physical review letters, 100(7), 078701.

[2]

van der Kolk, J., Serrano, M. Á., & Boguñá, M. (2022). An anomalous topological phase transition in spatial random graphs. Communications Physics, 5(1), 245.

[3]

Krioukov, D., Papadopoulos, F., Kitsak, M., Vahdat, A., & Boguná, M. (2010). Hyperbolic geometry of complex networks. Physical Review E, 82(3), 036106.

Examples

生成具有指定参数的网络:

>>> G = nx.geometric_soft_configuration_graph(
...     beta=1.5, n=100, gamma=2.7, mean_degree=5
... )

创建一个具有100个节点的几何软配置图。:math:`beta`参数设为1.5,隐藏度的幂律分布指数为2.7,平均值为5。

生成具有预定义隐藏度的网络:

>>> kappas = {i: 10 for i in range(100)}
>>> G = nx.geometric_soft_configuration_graph(beta=2.5, kappas=kappas)

创建一个具有100个节点的几何软配置图。\(\beta`参数设为2.5,所有节点的隐藏度:math:\)kappa=10`。