soft_random_geometric_graph#
- soft_random_geometric_graph(n, radius, dim=2, pos=None, p=2, p_dist=None, seed=None)[源代码]#
返回单位多维数据集中的软随机几何图形。
软随机几何图形 [1] 模型场所
n
维度单位立方体中均匀随机的节点dim
. 两个距离节点,dist
,由p
-Minkowski距离度量由概率边缘连接p_dist
如果节点的计算距离度量值最多为radius
,否则它们不会联接。内边缘
radius
当scipy可用时,使用kdstree确定彼此之间的关系。这减少了时间复杂性 \(O(n^2)\) 到 \(O(n)\) .- 参数
- n整型或可迭代
节点数或可迭代节点数
- radius: float
距离阈值
- dim整型,可选
图的维度
- posDICT,可选
以节点为关键字,以节点位置为值的词典。
- p浮动,可选
要使用的Minkowski距离度量。
p
必须满足条件1 <= p <= infinity
。如果未指定此参数,则 \(L^2\) 使用公制(欧几里得距离公制),p=2。
这不应该与
p
一个Erd_s-r_nyi随机图,它表示概率。- p_dist函数,可选
计算连接由Minkowski距离度量计算的距离Dist的两个节点的概率的概率密度函数。概率密度函数,
p_dist
必须是将度量值作为输入并输出介于0-1之间的单个概率值的任何函数。Scipy.stats包实现了许多概率分布函数和定制概率分布定义的工具 [2] ,并且传递scipy.stats分布的.pdf方法可以在这里使用。如果概率函数,p_dist
,不提供,则默认函数为带速率参数的指数分布 \(\lambda=1\) 。- seed整数、随机状态或无(默认)
随机数生成状态的指示器。见 Randomness .
- 返回
- 图
一种无向无自环的软随机几何图形。每个节点都有一个节点属性
'pos'
在欧几里得空间中存储该节点的位置pos
关键字参数或,如果pos
未提供,由此函数生成。
笔记
这使用了 k -D树来构建图表。
这个
pos
关键字参数可用于指定节点位置,以便为位置创建任意分布和域。例如,使用平均值(0,0)和标准偏差2的节点位置的二维高斯分布
scipy.stats包可用于定义概率分布,使用.pdf方法
p_dist
.>>> import random >>> import math >>> n = 100 >>> pos = {i: (random.gauss(0, 2), random.gauss(0, 2)) for i in range(n)} >>> p_dist = lambda dist: math.exp(-dist) >>> G = nx.soft_random_geometric_graph(n, 0.2, pos=pos, p_dist=p_dist)
工具书类
- 1
作者:Mathew D.“软随机几何图的连通性。”应用概率年鉴26.2(2016):986-1028。
- 2
Scipy.stats-https://docs.scipy.org/doc/scipy/reference/tutorial/stats.html
实例
默认图形:
G=nx.软随机几何图形(50,0.2)
自定义图:
在100个均匀分布节点上创建一个软随机几何图,其中节点由一条边连接,该边的概率由具有速率参数的指数分布计算得出。 \(\lambda=1\) 如果欧几里得距离至多为0.2。