在图中找到一对边缘不相交的路径,使得每个路径的长度小于给定的常数

时间:2011-10-10 10:53:20

标签: graph-theory graph-algorithm shortest-path

我知道如何找到一对具有最小长度总和的不相交路径(Surballe算法)。 我还有一个ILP的公式解决了以下问题,它概括了我的问题: 给定图G中的两个顶点u和v,在G中连接u和v的所有不相交的路径对中,找到一对具有该对中较长路径的最小长度的对。 (当然,对于超过两条不相交路径的群体,可能会重新拟定这个问题。)

有没有人知道有效(多项式?)算法来解决任何这些问题(标题中的问题或广义问题?)

谢谢!

1 个答案:

答案 0 :(得分:0)

我认为这是一个NP问题,因为我可以减少背包问题,根据this article背包问题是NP完全的。确实背包问题在背包大小的值中有Pseudo-polynomial time算法,但在输入的大小上没有多项式时间算法。

将背包问题减少到您指定的问题:

- 我背包问题的说明:

1-假设你有两个背包都有尺寸c。

2-你有n个项目,卷v1,v2,.. vn。

3-你想把所有这些n项打扰到你的背包里。

- 将这个背包问题减少到你的问题:

1-制作带(n + 1)个顶点的图形。

2-顶点i使用两条边连接到顶点(i + 1)。一个有成本vi(体积 我的项目)和成本为零的项目。

3-你想找到从顶点1到顶点(n + 1)的两条边缘不相交路径,其上限等于背包大小。

所以如果你能在多项式中解决你的问题,背包问题就会在多项式中得到解决,你已经证明了P = NP。 :d

当然根据上面的描述,你可以在图的边权重的多项式时间内解决你的问题,但它是一个伪多项式时间算法,而不是与Surballe算法不同的真实算法。 抱歉英语不好。