算法问题:将非整数最大流转换为整数最大流

时间:2011-04-18 06:40:17

标签: algorithm graph combinatorics mathematical-optimization

考虑一下,我们在具有整数弧容量的定向网络中有一个非整数最大流

是否有可以将此流转换为整数最大流量的算法?

它的运行时间是多少?

这不是一个家庭作业问题。

3 个答案:

答案 0 :(得分:0)

如果您正在寻找具有积分电弧容量的最大s-t流量(整数),则它不是NP完全的。 并且可能存在用于该目的的算法。你会尝试找到一些 没有饱和能力的弧线。 在所有路径上,这条边必须是饱和的边缘。 在这里,您将拥有多个具有非整数容量的s-t路径。 尝试通过增加积分来减少积分而不减少积分 违反能力。

此外,请查看此页面上的算法: http://en.wikipedia.org/wiki/Maximum_flow_problem 所有提到的算法都应该产生整数流。

它还说明了积分流定理:  如果流网络中的每个边都具有积分容量,则存在整数最大流量。

答案 1 :(得分:0)

我不确定convert this flow into an integer maximum flow的意思。 如果你有一个非整数最大流量,那么当然不可能从积分问题得到相同的流量,因为整数图的解也是积分的。

(例如,如果最大流量为3.5,则无法从积分图中获得此最大流量。)

如果您只想要解决方案的舍入整数图。再次解决它,然后你得到了相应的整数解决方案。

PS:整数和非整数最大流量都不是NP完全的。他们都在P。

答案 2 :(得分:0)

这与AMO的书中的练习9.42类似。我认为最好看一下“整数等流量问题”。