为什么需要考虑负环有向图的最短路径问题?

Why is there need to consider the shortest path problem for digraphs with negative cycles?

考虑可能带有负环的有向图 G=(V,A,W) 上的最短路径问题。我们只考虑简单路径,即没有重复顶点的路径。通过构造一个新图 G'(V,A,W') 使得 G' 和 G 具有相同的顶点和弧,但是对于每个弧,它在 G' 中的权重比它在 G 中的权重高一个常数。

显然,如果P1和P2是两条路径,且G中w(P1) < w(P2),则G'中w'(P1) < w'(P2)。这意味着 G 中的最短路径也是 G' 中的最短路径。通过选择足够大的常数,G'的权值都可以是正的。因此足以解决G'的最短路径问题。为什么最短路径问题对于负环图来说似乎是个大问题?

此外,the shortest path problem with negative cycles is actually NP-hard。如果我是对的,我们可以将负循环的情况简化为没有负循环的情况,问题不应该是多项式的吗?

我想我漏掉了什么,但我不确定是什么。

Clearly, if P1 and P2 are two paths, and w(P1) < w(P2) in G, then w'(P1) < w'(P2) in G'. This means a shortest path in G is also a shortest path in G'.

No,因为如果 G 中路径 p 的权重表示为 wp,则该路径在G'中的权重为wp+np×cnp 路径中的边数,c 增加每条边的常量。

这意味着另一条道路现在可能更有利。该路径在 G 中可能有更多昂贵的边,但由于它包含较少的边,因此修改后的边的总和可以小于 G 中的总和.

以下图为例:

 A               B
 o-------7-------o
1 \             / 1
   o--2--o--2--o
   C     D     E

此处AB之间的最短路径是通过CDE,因为总和是 1+2+2+1=6,而 AB 之间的直接路径将导致 7.

例如,如果我们现在将每条边增加两条,我们将获得:

 A               B
 o-------9-------o
3 \             / 3
   o--4--o--4--o
   C     D     E

所以现在路径 A-C-D-E-B 的权重为 3+4+4+3=14,而直接路径 A-B 的权重为 9。因此,如果我们将每条边都增加一个特定的常数,则最优路径可能会有所不同。