找到最好的子图

时间:2011-11-17 13:30:53

标签: graph complexity-theory subgraph

我正在尝试解决以下问题:

给定连通图G =(V,E)和顶点t∈V,我需要找到子图G'=(V',E'),其中t∈V'。 G'应该最大化一些目标函数并最小化它包含的顶点数。

Max f(G')
Min |V'|

在这个多目标优化问题中,最大化f(G')比最小化顶点数更重要。

让我们检查一下类似问题的实际情况:

假设我们必须在建筑物中设计一个ad hoc无线网络,其中客户端设备具有固定的位置,并且只有一个AP连接到有线网络。最初,我们在每个房间放置一个AP,并使用传播模型计算可以连接的AP和它们提供覆盖的客户端设备。在这个初始分发中,可能有几个AP将为同一客户端设备提供覆盖,因此我们需要对其进行优化。

Red dot represents the AP connected to the wired network and black dots denote the rest of the APs. Solid lines between APs show us how they are connected

图1.红点表示连接到有线网络的AP,黑点表示其余AP。 AP之间的实线向我们展示了它们的连接方式。

在图1中形成AP连接的图表表示我们问题的连接图G,连接到有线网络的AP是节点t。优化表示此初始网络设计的图表意味着找到包含连接到有线网络的AP的子图,并最大化覆盖客户端设备的百分比(最大f(G')),从而最大限度地减少AP的数量(Min | V'| )。与问题一样,最大化覆盖客户端设备的百分比是主要目标。

A possible solution

图2.可能的解决方案。

使用强力算法,它似乎是NP完全性问题;找到最佳解决方案需要检查所有潜在的子图(所有子图都包含节点t)并证明可能的解决方案。你怎么看?

1 个答案:

答案 0 :(得分:1)

这是NP完全的。如果 G' k 顶点上的完整图形,则 f(G')= 1,否则为0。现在这个问题只是发现 G 是否有一个大小为 k 的集团。