找到所需的“中心点”的最小数量

时间:2016-04-18 17:59:18

标签: algorithm graph cluster-analysis

我有一组'n'个节点。函数返回两个节点之间的距离,使得dist(a,c)可能不是dist(a,b)+ dist(b,c)。基于阈值,我通过边缘连接某些节点。我希望选择最小数量的节点,使得这些节点的集合及其直接边缘连接的邻居包括整个n个节点集。最佳解决方案是否可行?在纸上乱涂乱画让我觉得中心性可以帮助(程度,亲密度?)。我发生了群集,但此图中的节点没有属性。如何选择最小节点数?提前致谢

1 个答案:

答案 0 :(得分:3)

  

我希望选择最小数量的节点   这些节点及其直接边缘连接的邻居包括   整套n个节点

这是Dominating Set

由于我们可以轻松地为(u,v)是边缘的所有节点定义d(u,v) = 1,因此我们可以轻松地将Vertex Cover降低到您的问题。

由于Dominating-Set为NP-Complete,以上是多项式减少,所以你的问题也是如此。

tl; dr:您的问题是NP-Complete,并没有最佳解决方案的已知有效解决方案。