测量图中顶点密度的差异?

计算科学 图论
2021-12-04 11:30:12

让我们在图表中说G我们有两个顶点vu,每个顶点通过描述距离的边连接到几个邻居dij从这些邻居那里。邻居本身也通过这些边连接到更多的顶点。

如果一个顶点有相对较短的边并且连接到也有相对较短边的邻居,我们可以说它在密集区域,反之亦然;如果一个顶点的边大多是长边,而邻居的边也大多是长边,那么它就在一个相对稀疏的区域中。

我正在寻找一种方法来测量这种稀疏性/密度并能够比较不同顶点之间的这个属性。

本质上,我们有两个标量列表(顶点的边的长度)和可能的直接邻居边的长度作为输入。我们需要输出密度度量并能够在顶点之间进行比较。

我现在正在做的是使用修剪后的平均值并简单地计算密度之间的比率,但也许有一种更强大的方法。

1个回答

如果您想计算图形的物理密度,那么为什么不尝试估计Number Density也就是说,每单位面积的顶点数(或体积,如果这更适合您的问题)。

问题是使用哪个区域来执行计算?您可能需要对顶点周围的局部区域进行采样,以查看顶点密度在接近顶点时的表现。例如,

  1. 选择一个顶点u
  2. 寻找距离d到最近的邻居
  3. 计算顶点数|Vr|在一个半径内r=d,2d,3d, ...,Nd
  4. 计算每个半径处的密度:ρd,ρ2d,ρ3d, ...,ρNd

    ρr=|Vr|/πr2

  5. 在估计值之间拟合一条线ρ和半径rρ(r)=mr+ρ0

  6. 使用偏移量ρ0(IE,r0) 作为您对顶点密度的估计u.

要记住几件事:

  • 您可能会遇到负密度问题,在这种情况下,此方法不起作用或您需要强制执行约束ρ>0在线拟合优化期间。

  • 您还需要选择社区规模N. 我会从N=10. 也就是说,从最近邻的数量级开始。

  • 您可能还需要验证线模型是否是良好的局部模型。您可能需要尝试其他功能才能获得良好的预测。