最小费用最大流问题

✍ dations ◷ 2025-11-14 00:42:40 #管理学,经济学,网络流,图论

最小费用最大流问题是经济学和管理学中的一类典型问题。在一个网络中每段路径都有“容量”和“费用”两个限制的条件下,此类问题的研究试图寻找出:流量从A到B,如何选择路径、分配经过路径的流量,可以达到所用的费用最小的要求。


有足够多辆卡车要将数量无限的某种物品从一个地点运输到另外一个地点,现在有有限条单向行驶道路直接或者间接地连接了这两地。但是每一条道路都有运输通过总数量的限制,称为容量,同时携带物品通过该路段时,都会按照携带物品数量多少被收取一定的费用。如何合理地安排每辆车的行驶路线,使得在运输的货物总量尽可能大的情况下,交付的总费用尽可能少?

注意,在此问题中总费用仅包括携带物品通过路段时被收取的费用,车辆和路线安排上没有限制,但通过某一路段的物品数量总和不得超过它的容量,收取的费用与携带物品的多少成正比。

最小费用最大流建立在最大流和网络流问题的基础之上。

带权有向图 G = ( V , E ) {\displaystyle G=(V,E)} 。如果将费用看作两点之间的距离,那么这就转换为了一个最短路问题。

在最短路问题中,我们利用队列优化的Bellman-Ford算法(以下简称 SPFA) 求单源最短路,进而得到两个结点之间的最短路径 d i s u v {\displaystyle dis_{u\to v}} . 使用类似的思想,将两点之间的距离转换为两点之间的费用,然后运行 SPFA 算法,同时维护可以从源点到达每个点的最大流量,得到从源点到汇点一条费用最小的增广路,使用这条路径进行增广,然后重复这个过程。直到找不到增广路,此时的总流量和总费用即为所求答案。

具体而言,记源点为 s {\displaystyle s} ,汇点为 t {\displaystyle t} . 设 u V ,   d ( u ) {\displaystyle u\in V,\ d(u)} 代表从 s {\displaystyle s} u {\displaystyle u} 每单位流量花费的最小费用, f ( u ) {\displaystyle f(u)} 代表使用上述每单位流量花费费用最小的路径能够让多少流量从源点流到 u {\displaystyle u} . 在 SPFA 每一轮循环过程中,从队列中取出一个结点 u {\displaystyle u} , 并枚举每一条边 ( u , v ) E {\displaystyle (u,v)\in E} , 如果满足 d ( v ) > d ( u ) + w ( u , v ) {\displaystyle d(v)>d(u)+w(u,v)} 则更新相应的 d ( v ) = d ( u ) + w ( u , v ) {\displaystyle d(v)=d(u)+w(u,v)} f ( v ) = min { f ( u ) , f ( u , v ) } {\displaystyle f(v)=\min\{f(u),f(u,v)\}} ,同时记录 l a s t ( v ) {\displaystyle last(v)} 代表来到结点 v {\displaystyle v} 使用了哪一条弧. 求出单源最短路后,就等同于找到了一条增广路,花费 f ( t ) × d ( t ) {\displaystyle f(t)\times d(t)} 将流量增大 f ( t ) {\displaystyle f(t)} . 增广结束后,我们需要更新这条增广路上弧和反向弧的流量。

需要注意的是,与求解单源最短路问题时类似,虽然SPFA能够处理带有负权的边(也就是费用为负的弧),但是如果出现了负环,则会让算法陷入死循环。

利用这种算法,不仅可以解决前面提到的类似问题,经过变换也可以通过建立相应模型间接地解决许多问题。

二分图的最佳带权匹配问题在经过变形之后,可以使用最小费用最大流相关算法进行求解。首先对于二分图中的每一条边,视其容量为1,它的权值也就是费用,由于最佳带权匹配需要所有匹配边权值之和最大,所以视其费用为权值的相反数。正确地求得最小费用 C {\displaystyle C} 之后,最佳带权匹配的总权值之和 T {\displaystyle T} 就是最小费用的相反数 T = C {\displaystyle T=-C} .

需要注意的是,二分图匹配问题中有许多个源点和许多个汇点,一条可行流可以从其中任何一个源点出发到达任何一个汇点结束,对于这种情况,我们可以建立一个额外的源点何一个额外的汇点,将额外源点与所有源点连容量为 {\displaystyle \infty } 费用为 0 {\displaystyle 0} 的弧,额外汇点也执行类似的操作。完成这一步后,所得到的模型已与普通最小费用最大流无异。

相关

  • 生物利用度生物利用度(英语:bioavailability (BA)),或称生体利用率或生体可用率,在药理学上是指所服用药物的剂量部分能到达体循环,是药物的一种药物动力学特性。按照定义,当药物以静脉注射时
  • 香油香油,广义的香油指烹调中用于增加食料香味的食用油,包括芝麻油、豆瓣油、花椒油、红油、葱油、蒜香油、芥末油、橄榄油、南瓜油、猪油、鸡油、虾油、黄油等,狭义的香油指芝麻油
  • 金边粉金边粉是一种通过蒸煮米浆而成的粉条食品,是东南亚常见的粉面食品,尤以泰国最为著名。谣传是由柬埔寨的金边传入,但实为大城王朝时期由中国商人引入泰国。金边粉与河粉相比较幼
  • 休斯湖休斯湖(英语:Lake Hughes)是位于美国加利福尼亚州洛杉矶县的一个人口普查指定地区。休斯湖的座标为34°41′23″N 118°26′27″W / 34.68972°N 118.44083°W / 34.68972; -11
  • 比洛利比洛利(Biloli),是印度马哈拉施特拉邦Nanded县的一个城镇。总人口13430(2001年)。该地2001年总人口13430人,其中男性6922人,女性6508人;0—6岁人口2218人,其中男1156人,女1062人;识字率
  • 欧仁·鲍狄埃巴黎公社的主要领导人之一欧仁·鲍狄埃(法语:Eugène Edine Pottier;1816年10月4日-1887年11月6日)是法国革命家、诗人,巴黎公社的主要领导人之一,《国际歌》的词作者。鲍狄埃出身
  • 约纳斯·瓦兰丘纳斯约纳斯·瓦兰丘纳斯(立陶宛语:Jonas Valančiūnas;1992年5月6日-),出生于立陶宛乌田纳,为现役立陶宛职业篮球运动员。目前效力于国家篮球协会(NBA联盟)的曼菲斯灰熊,场上主要位置为中
  • 大绥河水库大绥河水库是中国吉林省吉林市永吉县大绥河镇上游3公里达子沟村境内的一座中型水库,位于鳌龙河支流大绥河上游。多年平均径流量1478万m3。大坝为100年一遇洪水设计,千年洪水校
  • 松田清教练松田清(まつだ きよし、1930年12月11日-2007年2月18日)昭和中期(1940年代后半-1960年代初头)日本职棒选手(投手、后转外野手)。东京都涩谷区初台出身。左投左打。1952年3月23日
  • 格罗莫夫积格罗莫夫(Gromov)积是度量几何的一个概念,以米哈伊尔·格罗莫夫命名。在一个测地度量空间中,从同一点出来的两条测地线,格罗莫夫积大概量度这两条线彼此相近而行的距离。不过,格