繁体   English   中英

在流程图中搜索最小流量并满足需求

[英]Searching for minimal flow with fulfill capacity in flow graphs

我修改了最大流量问题的任务。 我应该找到满足条件的最小流量(其中f是流量,c是容量):

f(u,v) >= c(u,v) 

因此,每个边缘的流量至少是边缘的容量。 (我正在写容量,但因为它不再是容量,所以被重命名,因为它必须由流来满足)

还有一件事。 我有功能MaxFlow,它为我提供了经典的最大流量,我可以调用一次。

谁能帮我伪算法? 我正在考虑修改Ford-Fulkers算法并根据需要进行更改,但是我不确定该在哪里安装MaxFlow? 当我知道图形中的最大流量时,它如何对算法提供帮助? 谢谢

从具有下限的最大流量到最大流量有一个简单的减少:

http://www.cs.uiuc.edu/~jeffe/teaching/algorithms/2009/notes/18-maxflowext.pdf

想法是使所有边缘饱和。 然后,您将拥有不平衡的节点。 您可以使用最大流量算法来解决不平衡问题。

构造如下:对于每个顶点v,定义M(v):=传入边缘的下限之和-传出边缘的下界之和。 删除所有下限,并将每个原始边的容量设置为上限-下限(在您的情况下为无穷大)。

引入一个新的超级源S和一个新的超级接收器T。为每个顶点v添加一个容量为M(v)的边(S,v),其中M(v)> = 0。 M(v)<0的每个顶点v的上限容量-M(v)。

解决由此产生的ST最大流量问题。

最后,删除S和T,并在每个原始边上将原始下界添加到流中。

暂无
暂无

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

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