運籌優化(八)--圖與網路優化

Eason.wxd發表於2019-01-16

關於圖的基本概念

圖論(一)--基礎概念

圖論(二)--各種圖介紹

圖論(三)--各種基礎圖演算法總結

關於樹的基本概念

1.樹的概念

一個無圈並且連通的無向圖稱為樹圖或簡稱為樹(Tree)。

圖1是一個連通圖,圖2中的兩個圖都是樹。

如在有線通訊網和交通網中,在保證節點連通的條件下,邊數最少(可以節省材料和投資)的線路圖必然是樹。

圖1

一些行政管理機構和軍隊的建制也常用樹來表示相互隸屬關係;圖書分類、會計科目、決策過程等等也都可以畫成樹圖。

部分樹:在一個連通圖中G中,取部分邊連線G的所有頂點組成的樹稱為部分樹。

如圖2中(a)、(b)都是圖1的部分樹。

2.樹圖的性質

樹中的邊稱為樹枝,次數為1的頂點稱為樹葉。樹圖具有以下性質:

(1)任何樹必有樹葉,即次數為1的節點。

(2)樹是無迴路的連通圖,因而樹中任意兩點之間有、且僅有一條鏈連線相通,任意去掉一條樹枝,該樹就被分割成兩互不連通的子圖。

(3)樹的任意兩個頂點之間新增一條邊(稱為連枝),就構成一個迴路。僅用一條連枝構成的迴路稱為單連枝迴路,也稱為基本回路。

(4)一個連通圖具有很多樹,這些樹都是原連通圖的部分圖,即包括了原連通圖的所有頂點。若原連通圖有N個頂點,M條邊,則樹枝數為(N-1),連枝數則為C=M -(N-1)=M-N+1,因為一條連枝構成一個基本回路,所以基本回路個數也就是C。

(5)連枝的集合是原連通圖相應的餘樹,或稱為補樹。餘樹可能是樹,也可能不是樹,甚至可能是非連通圖。

關於最短路徑問題

最短路徑問題在實際中有廣泛的應用,如管道鋪設、線路選擇等問題,還有些如裝置更新、投資等問題也可以用網路最短路徑演算法得到解決,而且解法簡單、有效。

賦權圖1中的邊有方向,表明路線只能沿著箭頭方向行走,權表示vi到vj的距離(費用或時間),假設要求從v1到v7修一條公路,如何選擇一條路線使距離最短?

從v1到v7的路線是很多的,如路線(v1,v2,v5, v4,v7),也可選擇路線(v1,v3,v6,v7)等等。不同的路線,總距離是不同的,如前一路線,總距離是7+8+1+2=18單位。而按後一路線,總距離是1+3+7=11單位。實際上,從v1到v7的路線與有向圖中從v1到v7的路是一一對應的。現在的問題是,從v1到v7的眾多路線中,如何選一條最短的路。

最短路演算法的原理:若從起點v1到終點v7的最短路經過v3、v4,則從v1到終點v7的最短路是{v1,v3,v4,v7},同時v1到點v3的最短路一定是{v1,v3},而v1到v4的最短路是{v1,v3,v4}。即如果P是D中從vs到vj的最短路,vi是p中的一個點,那麼從vs到vj的路也必是從vs到vi的最短路。


關於網路流量問題

研究網路通過的流量也是生產和管理工作中常遇到的現實問題。例如:交通網路中車輛的最大通過能力;生產流水線上產品的最大加工能力;供水網路中通過的最大水流量;資訊網路中資訊的最大傳輸能力等等。這類網路的組成弧都具有確定的通過能力稱為弧的容量(capacity),記為cij;而實際通過弧的流量(flux),記為fij,因各弧容量的配置關係可能不協調,有些弧的流量常常達不到容量值。因此,研究實際能通過網路的最大流量問題,可以充分發揮網路的裝置能力,並且能明確為使最大流量增大應如何改造網路。

1.容量網路

在研究網路最大流問題時,首先應給出各弧的通過能力,各弧的權數表示弧的容量。容量是弧(i,j)在單位時間內的最大通過能力,流量則是弧(i,j)在單位時間內的實際通過量。標有弧容量cij的網路稱為容量網路,如圖1所示。

2.網路流

在容量網路中,實際通過各弧的流量集F={fij}稱為網路流,如圖1。由於各弧容量的配置可能不協調,實際通過各弧的流量fij不可能處處都達到容量值cij。

3.可行流

對於給定的容量網路,如果滿足下列容量約束和節點流量平衡條件,則該網路流稱為可行流。以圖1為例,這兩個條件可用以下公式來描述:

圖1容量網路

(1) 容量約束條件:0≤fij≤cij。 對圖1有:0≤f12≤70,0≤f13≤100,0≤f14≤90,0≤f26≤80,0≤f34≤40,0≤f35≤50,0≤f45≤40,0≤f46≤100,0≤f56≤90。

(2)節點流量平衡條件:每個節點的流入總量等於流出總量。v1: Q=f12+f13+f14,v2: f12=f26,v3:f13=f34+f35,v4:f14+f34=f45+f46,v5: f35+f45=f56,V6: f26+f46+f56=Q

可行流總是存在的,如零流{fij=0}就是一個可行流,即容量網路沒有給出流量fij時,就認為fij=0。

4.最大流:

容量網路的最大流就是使得從網路起點(或稱發點)到終點(或稱收點)的總流量Q達到最大的可行流F= {fij} 。

最大流問題用線性規劃模型表示如下:式中s為發點,t為收點。

一個可行流相當於線性規劃中的一個可行解,而尋求最大流就相當於求解這個線性規劃數模的最優解,不過,網路最大流問題採用網路模型方法求解比用線性規劃方法求解簡便、直觀。

5.增廣鏈 

圖2(a)給出了一個容量網路{cij, fij},其中{fij}為可行流,並且

(1)正(前)向弧:與從起點→終點方向一致的弧。

(2)反(後)向弧:與從起點→終點方向相反的弧。

(3)增廣鏈定義:一條從起點到終點的鏈,且其正向弧必須是非飽和弧,反向弧必須是非零弧。即:正向飽和弧和反向零弧均不構成增廣鏈的弧。

正向非飽和弧充許增大流量,反向非零弧,允許減小流量(維持節點流量平衡)。

例如: 對圖2(a)的容量網路和給定的可行流,按上述定義尋找增廣鏈,可找到一條如圖2(b)的增廣鏈 L={v1,v3,v2,v4,v6}。其中:正向弧集 L+={(v1,v3),(v2,v4),(v4,v6)}均為非飽和弧。反向弧集 L-={v2,v3}為非零弧。

在增廣鏈上存在增大輸送能力的潛力。如圖2(b),對所有正向弧增加流量1個單位,對所有反向弧減少流量1個單位,也就是說,增廣鏈方向調整1個單位流量,其他弧上的流量不變,這時得到的新網路流仍是可行流,但總流量Q增加了1個單位。因此,可以利用增廣鏈來調整給定的當前可行流,以求得最大流。若當前可行流F不存在增廣鏈,那麼它就不能再調整增大,可斷定它就是最大流F*。另外,對圖2(a)還可找出其它增廣鏈,說明當網路流非最大時,往往存在多條增廣鏈。

(4)網路可行流為網路最大流的判別方法

檢查該網路可行流是否存在增廣鏈,若不存在,則當前可行流為最大流;否則,當前可行流為非最大流,總流量還可增大。

6.割集

割集就是研究網路流“瓶頸”的一種工具。

(1)割集的概念:連通圖的一個割集,是使圖分成兩個互不連通子圖的邊的最小集合,記為S={(vi,,vj)}。顯然,一個連通圖的割集不止一個,如圖3就作出了3個割集s1,s2,s3,。

    s1={(v1,v2),(v1,v3)},其容量為C1=3+5=8。

    s2={(v1,v2),(v3,v5)},其容量為C2=3+2=5, s2割了三條弧,但(v2,v3)不入割集,因為只要把與v1→v6同方向的弧(v1,v2),(v3,v5)割斷,由起點到終點的通路就斷了。

S3={(v2,v4),(v3,v5)},其容量為C3=4+2=6。

一般地,割集記為,其中(始點在V1內,而終點在內),容量記為

如圖1中構成割集S2的兩個點集,始點在V內,而終點在內的只有兩條弧{(v1,v2),(v3,v5)}。

結論:

(1)任一可行流的流量Q都不會超過任一割集的流量,即:Q≤

(2)最小割集(最小割):所有割集中容量最小的割集。最小割的容量記為。實際流F的流量Q(F)≤

(3) 最大流——最小割定理:實際流F所能達到的最大流量Q(F*)等於最小割的容量。即:

最後,實際上,這裡應該有一步介紹網路計劃與網路計劃優化,但是,發現它講的就是專案管理中的進度管理工具,如關鍵路徑法,還有單代號,雙代號網路圖,時標網路圖等等,這也是圖網路技術對工程管理的貢獻,這裡就不再囉嗦了。

相關文章