繁体   English   中英

有向无环图中的最大权重连接子图

[英]Maximum weight connected subgraph in an directed acyclic graph

我正在研究涉及逻辑电路(可以表示为DAG)的问题。 DAG中的每个节点都有给定的权重,该权重可以为负。 我的目标是找到一个连接的子图,以使节点权重之和最大。

给定边缘权重的最大权重连接子图问题显然是NP难的,但我希望的是有向无环性质以及我正在处理节点权重而不是边缘权重的事实使问题更容易解决。 有人可以指出我正确的方向来开始解决这个问题吗?

谢谢

您提到的问题是NP难题,请参见:Trey Ideker,Owen Ozier,Benno Schwikowski和Andrew F. Siegel合着的“发现分子相互作用网络中的调控和信号回路”,生物信息学,第18卷,第233-240页,2002年

以及本文的补充信息: http : //prosecco.ucsd.edu/ISMB2002/nph.pdf

第一种方法是,将起始节点权重的倒数分配给每个边,然后应用最短路径算法(例如Bellman-Ford) Dijkstra的算法无法正常工作,因为某些边缘可能为负。

第二种方法是从每个叶节点开始,在每个边缘添加“标签”,以跟踪所有相关节点的ID和总权重。 无需标记节点,因为对于每个从叶子开始的链,保证每个节点仅被访问一次。 例如,给定以下非循环有向图(从上到下),其中每个节点权重为1:

                         A     G
                        / \   /
                       /   \ /
                      B     C
                      |    / \
                      D   E   F
                           \ /
                            H

A和B之间的边缘将标记为{{D,B,A},3},A和C之间的边缘将具有两个标记{{H,E,C,A},4}和{{H,F ,C,A},4}。

在进行此预处理之后,为每个根节点找到最大的权重路径。 该信息位于其出站边缘的标记中。

您提到连接的那个连接的子图应该是“最大”的。 为此,贪婪地选择一个顶点并使其增长,直到无法增长为止。 这确保了最大程度。 但是,如果您表示“最大”,则问题可能是NP_Complete。 还让我提醒您,节点加权图比边缘加权图更通用。 为前者构建的每种算法都适用于以后的算法,反之亦然。 这很容易看到。 尝试一下。 我所理解的问题,我认为是P。如果这是正确的,则此提示是为DAG使用一些特殊属性(您在研究后应该知道这一点,这似乎是一个讲授问题)。 对于一般图,这可以简化为斯坦纳树,因此它是NP-Cmplete(对于平面图也是如此)。

我认为如果给定边缘权重的最大权重连接子图问题是NP困难,那么您的问题就是NP困难。 您可以将节点权重问题简化为边缘权重问题。

1)Lets say that your nodes have weights wn1,wn2,wn3,....wnN; where N is # of nodes.

2)Lets also say that the edges can be represented by e1,e2,e3,...eE; E- # of edges.

The weight of the edge ei:nj->nk can be defined as F(wnj,wnk), the function being
arbitrary. For simplicity we can assume wei=wnj+wnk.

Now if we assume that all node weights are independent and non-identical, then we
can say the same about the edge weights. As a DAG with non-identical edge weights
is NP hard, your problem too is. 

Having said that, I think you should proceed in the following way:
1)Look for similarity in node weights for your particular problem. If there are any,
try to look up the literature for similar problems. 

2)If they are hard to find, I suggest you translate your node weight problem to edge 
weight one, and see how the similarity in node weights translates to edge weights
problem and see what simplification can you apply to this problem, again from 
literature.

我希望这有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM