網(wǎng)絡(luò)流理論在理論計(jì)算機(jī)科學(xué)、運(yùn)籌學(xué)和離散數(shù)學(xué)等學(xué)科中均有應(yīng)用,可用于貨物運(yùn)輸建模和計(jì)算機(jī)視覺圖像分割等眾多問題。本書主要源于康奈爾大學(xué)的網(wǎng)絡(luò)流算法課程講義,包含出版年代較早的經(jīng)典書籍中未能涵蓋的新研究成果。本書采用簡(jiǎn)潔且統(tǒng)一的視點(diǎn),討論解決網(wǎng)絡(luò)流問題的多種組合算法、多項(xiàng)式算法及其分析,涵蓋流、小代價(jià)流、廣義流、多物流和全局小割集等,還介紹了關(guān)于計(jì)算電流的新研究成果及其在經(jīng)典問題上的應(yīng)用。本書可作為面向研究生的網(wǎng)絡(luò)流算法教材,也適合該領(lǐng)域的研究人員參考。
拾人花卉,系之一束;他供鮮花,我獻(xiàn)彩帶。
Montaigne
網(wǎng)絡(luò)流方面的任何新書似乎都應(yīng)說明其存在的合理性,因?yàn)樵擃I(lǐng)域的權(quán)威著作早已出版。我所參考的書籍《網(wǎng)絡(luò)流:理論、算法和應(yīng)用》(Network Flows: Theory, Algorithms, and Applications) 已于 1993 年出版。該書作者為 Ahuja、Magnanti 和 Orlin[4],他們是網(wǎng)絡(luò)流算法領(lǐng)域理論研究和實(shí)踐應(yīng)用的先驅(qū)。我用該書作者姓名的首字母 AMO 來代表此書。20 世紀(jì) 80 年代末至 90 年代初是研究網(wǎng)絡(luò)流問題的組合算法和多項(xiàng)式算法的黃金時(shí)期。AMO 不僅討論了當(dāng)時(shí)已完成的大部分研究,還給出了網(wǎng)絡(luò)流領(lǐng)域的廣泛綜述,其內(nèi)容貫穿網(wǎng)絡(luò)流理論研究和實(shí)際應(yīng)用。既然如此,為何還需寫此書?我有下面三方面的理由。
:關(guān)注點(diǎn)問題。我在寫另一領(lǐng)域的嚴(yán)謹(jǐn)性書籍 [206] 時(shí)意識(shí)到,書籍內(nèi)容很難兼顧準(zhǔn)確嚴(yán)謹(jǐn) 和 簡(jiǎn)潔明了。AMO 無疑是前者,本書的目標(biāo)是后者。本書主要關(guān)注網(wǎng)絡(luò)流問題的組合算法、多項(xiàng)式算法及其分析。在康奈爾大學(xué)運(yùn)籌學(xué)和信息工程學(xué)院任教期間,我教過幾次網(wǎng)絡(luò)流算法方面的研究生課程,本書內(nèi)容源于對(duì)這些課程內(nèi)容的提煉。該課程主要面向運(yùn)籌學(xué)和計(jì)算機(jī)科學(xué)系的學(xué)生,也有電氣和土木工程系的部分學(xué)生。從教學(xué)觀點(diǎn)來看,需做點(diǎn)取舍,以保證本書的大部分內(nèi)容可在一學(xué)期內(nèi)講完。
此外,由于本書是課堂教學(xué)的成果,其涵蓋的知識(shí)點(diǎn)是一次授課所能講完的內(nèi)容。因此,太長(zhǎng)或太復(fù)雜而無法在一次授課中講完的知識(shí)點(diǎn),本書都不涵蓋。我不太關(guān)注網(wǎng)絡(luò)流理論中的某些領(lǐng)域,比如沒有多項(xiàng)式運(yùn)行時(shí)間的網(wǎng)絡(luò)流應(yīng)用和算法等。對(duì)于本書未涉及的某些網(wǎng)絡(luò)流理論部分,感興趣的讀者可參閱 AMO。
第二:提供一些 AMO 沒有涉及的知識(shí)。對(duì)流問題和小代價(jià)環(huán)流問題,雖然本書所提的算法 AMO 也有涉及,但本書給出了一些重要的特殊情形。如前所述,雖然 20 世紀(jì) 80 年代末至 90 年代初是研究網(wǎng)絡(luò)流算法的黃金時(shí)代,但該領(lǐng)域在過去 25 年里的研究成果是 AMO 無法涵蓋的。
1998 年,Goldberg 和 Rao 所發(fā)表的論文 [98] 就是一個(gè)著名的研究成果。對(duì)流問題,他們給出了至今為止在理論上仍被認(rèn)為快的算法。1991 年,Wallacher[201] 關(guān)于小代價(jià)環(huán)流問題的算法是另一個(gè)研究成果,該算法具有相當(dāng)簡(jiǎn)單的分析。此外,AMO 出版時(shí),針對(duì)某些流問題,一些多項(xiàng)式算法正好脫穎而出。顯然,AMO 無法涵蓋這些算法。
我主要思考的是全局小割集、廣義流和多物流等問題的算法。近年來,內(nèi)點(diǎn)方法在網(wǎng)絡(luò)流問題的特殊應(yīng)用中產(chǎn)生了一些快速算法,但這些算法不是組合算法,因此,它們不在本書的選取范圍內(nèi)。本書還包含了一些與電流經(jīng)典主題相關(guān)的成果。
第三:情不自禁。我的主要研究興趣是組合算法和多項(xiàng)式算法,但在網(wǎng)絡(luò)流領(lǐng)域,除有一項(xiàng)研究成果外 [173],幾乎一無所獲。所以,作為一位公正的旁觀者,我可以說,該領(lǐng)域是一個(gè)優(yōu)美且存在一些有用算法思想的領(lǐng)域,這些算法思想以一種令人愉悅的方式相互支持著。
用前面引述的 Montaigne 的話來說,寫本書的目的就是做選擇和重組,盡我所能地展現(xiàn)一些算法及其分析的美妙之處。希望讀者和我一樣欣賞這終呈現(xiàn)的花束。
David P. Williamson
紐約,伊薩卡
2019 年 1 月
---作者簡(jiǎn)介---
大衛(wèi)·P. 威廉姆森(David P. Williamson) 康奈爾大學(xué)運(yùn)籌學(xué)和信息工程學(xué)院教授,ACM會(huì)士,SIAM會(huì)士。他在離散優(yōu)化方面的研究獲得了多個(gè)獎(jiǎng)項(xiàng),包括2000年由美國(guó)數(shù)學(xué)協(xié)會(huì)和數(shù)學(xué)規(guī)劃協(xié)會(huì)贊助的Fulkerson獎(jiǎng)。他與David B. Shmoys合著的The Design of Approximation Algorithms(Cambridge, 2011)獲得了2013年的INFORMS Lanchester獎(jiǎng)。他在多個(gè)編委會(huì)任職,曾任SIAM Journal on Discrete Mathematics的主編。
---譯者簡(jiǎn)介---
吳向軍 博士,中山大學(xué)副教授。主要研究方向?yàn)槿斯ぶ悄芎退惴ㄔO(shè)計(jì)等,近年來主要從事智能規(guī)劃領(lǐng)域的研究和規(guī)劃系統(tǒng)的設(shè)計(jì)與開發(fā)。
譯者序
前言
致謝
第 1 章 預(yù)備知識(shí):短路徑算法 1
1.1 無負(fù)權(quán)邊:Dijkstra 算法 2
1.2 有負(fù)權(quán)邊:Bellman-Ford算法 5
1.3 負(fù)權(quán)回路的檢測(cè)算法 9
練習(xí) 16
章節(jié)后記 17
第 2 章 流算法 19
2.1 化條件 21
2.2 應(yīng)用:汽車共享問題 27
2.3 應(yīng)用:棒球隊(duì)淘汰問題 28
2.4 應(yīng)用:密子圖問題 33
2.5 改進(jìn)增廣路徑算法 37
2.6 容量度量算法 40
2.7 短增廣路徑算法 42
2.8 推送重標(biāo)算法 44
練習(xí) 54
章節(jié)后記 59
第 3 章 全局小割集算法 61
3.1 Hao-Orlin 算法 62
3.2 MA 序算法 68
3.3 隨機(jī)合并算法 72
3.4 Gomory-Hu 樹 76
練習(xí) 83
章節(jié)后記 85
第 4 章 其他流算法 88
4.1 阻塞流算法 88
4.2 單位容量圖的阻塞流 90
4.3 Goldberg-Rao 算法 92
練習(xí) 96
章節(jié)后記 97
版權(quán)聲明 97
第 5 章 小代價(jià)環(huán)流算法 99
5.1 化條件 101
5.2 Wallacher 算法 104
5.3 小均值回路消去算法 109
5.4 容量度量算法 115
5.5 逐次逼近 119
5.6 網(wǎng)絡(luò)單純形 124
5.7 應(yīng)用: 帶時(shí)限的流問題 126
練習(xí) 130
章節(jié)后記 136
第 6 章 廣義流算法 139
6.1 化條件 141
6.2 Wallacher 式 GAP 消去算法 146
6.3 負(fù)代價(jià) GAP 檢測(cè) 151
6.4 有損圖、Truemper 算法和收益度量 155
6.5 誤差度量 161
練習(xí) 163
章節(jié)后記 164
第 7 章 多物流算法 166
7.1 化條件 166
7.2 雙物流問題 168
7.3 預(yù)備知識(shí):乘權(quán)算法 171
7.4 Garg-K.nemann 算法 175
7.5 Awerbuch-Leighton 算法 178
練習(xí) 184
章節(jié)后記 185
第 8 章 電流算法 187
8.1 化條件 187
8.2 無向圖的流問題 196
8.3 圖的稀疏化 199
8.4 簡(jiǎn)易 Laplacian 求解器 204
練習(xí) 210
章節(jié)后記 212
版權(quán)聲明 213
第 9 章 開放問題 214
參考文獻(xiàn) 216