圖論中一種理論和方法,研究網路上的一類最優化問題。T.E.哈裏斯於1955年研究鐵路網的最大通過能力時首先提出,在一個給定的網路上尋求某兩點間的最大運輸量問題。1956年,L.R.福特和D.R.富爾克森給出瞭演算法,從而建立瞭網路流理論。
在網路流問題中,網路是由一個有向圖G=(V,E)和一個定義在弧集E上的已知非負負函數с所組成,其中點集V中有兩個指定的點υs和υt,分別稱為發點和收點,而V中其他的點都稱為中間點;с稱為網絡的容量函數。用сij表示函數с在弧e=(υi,υj)上的函數值,並稱之為弧(υi,υj)的容量。
設f是定義在集合E上的非負函數。用fij表示f在弧e=(υi,υj)上的函數值,並稱為在弧e上從υi到υj的流量。若函數f滿足以下兩個條件,則稱函數f為網絡上的流,簡稱網絡流:①在每一條弧上,流量fij不超過容量сij,即0≤fij≤сij;②在任何一個中間點υj上,從υi流出的總流量等於流入υi的總流量,即
![](/img3/10417.gif)
![](/img3/10418.gif)
![](/img3/10419.gif)
對任意給定的流f,易見,發點的凈出量等於收點的凈收量,即
![](/img3/10420.gif)
![](/img3/10421.jpg)
由網絡中的點組成的序列
![](/img3/10422.gif)
在網絡上尋求一個使流量 υ(f)達到最大的流f,稱之為網絡最大流問題。它是網絡流理論中的一個主要研究課題,已獲得一些重要結果:①流f是最大流的充分必要條件是,不存在關於f的增廣鏈。從而將尋求最大流問題化為判斷有無增廣鏈問題。易見,圖1中的b不是最大流。福特和富爾克森提出瞭一種標號法,即對網絡上的點給以標號,從υs出發沿網絡上的弧向υt探尋增廣鏈的方法。②若各弧上的容量都是正整數,則必存在各弧上的流量都是整數的最大流。③設x是含有υs而不含υt的點集,(X,x)表示起點在x中而終點不在x中的弧的集合,並稱為分離υs和υt的截集,簡稱截集。網絡中去掉一個截集後,就沒有從υs到υt的定向鏈。(X,x)中所有弧的容量之和,稱為這個截集的截量,記作с(X,x)。使截量最小的截集稱為最小截集。網絡流理論中有一個基本的對偶定理:最大流的流量等於最小截集的截量。圖1的c是一個流量達到最大的流(流量為5),截集{(υs,υ1),(υ2,υ4)}是一個最小截集(截量為5),這裡x={υs,υ2}。
最小費用流問題是常見的一類重要的網絡流問題。設在網絡的每條弧(υi,υj)上,除сij外,還賦予一個數值αij,求出一個流f,使其流量為給定的υ*,而且
![](/img3/10423.gif)
![](/img3/10424.gif)
![](/img3/10425.gif)
作為網絡最大流問題的推廣,弧上流量有非零下界的網絡流、動態流、帶增益的流、多種物資流、網絡流的分析和合成等問題,都有瞭一系列的研究結果。在網絡最大流的算法方面也取得瞭很大的改進。網絡流理論已經成為解決許多組合問題的有力工具。組合數學中的一個著名問題,即不同代表系問題:有n個人自由組成m個不同的社會團體,每個人可以同時自由參加幾個團體,如何選出m個不同的人,使其分別成為m個團體的代表。這個問題就可用網絡流方法解決。例如,設有5個人:{1,2,3,4,5},4個團體:A={2,4,5},B={1,5},C={3,4},D={3,4},可通過求解圖2
![](/img3/10426.jpg)
參考書目
L.R.Ford and D.R.Fulkerson,Flows in Networks,Princeton Univ.Press,Princeton.1962.
J.C.Hu,Integer Programming and Network Flows,Addison-Wesley,London,1969.