繁体   English   中英

查找包含所有负循环的最小子图

[英]Finding the minimal subgraph that contains all negative cycles

我遇到了以下问题:给定加权有向图G,我想构造包含G的所有负(简单)周期的G的最小子图。

我知道如何使用Bellman-Ford找到负循环,我知道有向图中的简单循环数是指数的。

解决问题的一种简单方法是简单地迭代所有简单循环并选择那些负数,但我觉得可能存在多项式时间算法。 我通过Google找到的大多数文章都是关于找到一个(而不是全部)负面循环。

我希望在这里找到一些关于stackoverflow的专家,这可能会给出一些多项式时间解决方案的提示,或提示证明它不能在多项式时间内求解。

提前谢谢了!

干杯,罗伯特

对于任何对类似问题感兴趣或陷入困境的人:它是NP完全的。 感谢我指着我在cstheory中的主题。

为了理解为什么它是NP完全的,首先观察问题可以表述如下:给定具有N个副本的加权有向图G和G上的边E,找出E是否位于(简单)负循环上。 如果是,E应该在子图H中。如果没有,它不应该在H中。

现在,让边E为权重w的E =(u,v)。 我们想知道是否存在从v到u的路径,总权重W使得W + w <0。如果我们可以在多项式时间内执行此操作,我们还可以在多项式时间内解决哈密顿循环问题:

分配给边E的重量为N - 1.00001。 为图中的所有其他边指定权重-1。 现在,图中唯一的E所在的负循环是包含所有顶点的循环(该循环具有权重-0.00001),因此是哈密顿循环。

非常感谢您的思考!

暂无
暂无

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

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