Re: [問題] 最大流最小費用問題

看板Prob_Solve (計算數學 Problem Solving)作者 (...)時間9年前 (2015/04/03 23:54), 9年前編輯推噓7(7014)
留言21則, 3人參與, 最新討論串5/5 (看更多)
※ 引述《FRAXIS (喔喔)》之銘言: : ※ 引述《DJWS (...)》之銘言: : : 然後min cost flow有一些莫名其妙的特例, : 這邊就是我很難搞懂的地方 : : 例如circulation problem/transportation problem之類的。 : : 這些都不是重點,這些只是流量下限為0、supply/demand為0之類的, : : 圖論方式的演算法還是一樣沒變。 : : 線性規劃的演算法可能有差一點點,我沒有仔細去研究。 : 書上大部分都是介紹 min cost circulation problem,因為這可以解其他所有問題。 : 像是 min-cost max flow 、 min-cost flow 、 transshipment 、 transportation : 和 assignment 。 : 理論上是只要解 transshipment 就可以了,因為他跟 circulation problem 是等價 : (線性時間轉換),只是實際上應用有點麻煩。 : 每類問題自己又有分 有向/無向 、 上下限(正負) 、 cost正負 、 : supply/demand 等等變化。 : 雖然有技巧可以把這些都正規化成有向無上下限且cost皆為正, : 但是要記起來挺麻煩的。 : 而且 把 cost 從負變正 和 無向轉有向 還會互相衝突?? 你寫的那些問題,就是我所謂的莫名其妙的特例。 我覺得這些問題是冷知識,沒有必要鑽研。 事情其實可以很簡單, 考慮 是st還是循環 、 supply/demand 、 上下限 這三件事情就夠了。 最後總是可以用 min cost max st flow 的演算法解決。 --------------------------------------- 正規化的方式也很簡單,orlin那本書有介紹。  1. 下限變不見     (事先流一些,a supply -k , b supply +k)  2. -cost變成+cost     (事先流到滿,residual network完全變反向,              (cost就完全變號了。SSPA就有這種情況。)  3. feasible flow變成max st flow (新增st,s連到supply,demand連到t,很直覺。) 只有這三步。很直覺,應該不會太難記。 --------------------------------------- 至於無向邊,幾乎沒人討論。 因為無向邊必須規定如何流動,這很難搞。 例如可以同時雙向對流,又例如只能選擇一個方向流。 前者就很智障,不就是來回不斷流來流去,單純衝流量嗎?沒有討論意義。 後者的重點,已經不是流的問題了,而是 graph orientation 的問題了。 所以沒人想要討論這種奇怪的東西。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.250.70.154 ※ 文章網址: https://www.ptt.cc/bbs/Prob_Solve/M.1428076497.A.828.html

04/04 00:16, , 1F
我只是想釐清一下 那上下限可以是負數嗎?
04/04 00:16, 1F

04/04 00:16, , 2F
我知道負數的上限可以看成 反向邊的下限
04/04 00:16, 2F

04/04 00:17, , 3F
但是如果正向反向邊同時都有上下限(正負不限) 那該怎麼
04/04 00:17, 3F

04/04 00:17, , 4F
作?
04/04 00:17, 4F

04/04 00:30, , 5F
取交集?
04/04 00:30, 5F

04/04 06:52, , 6F
上下限是複數很不自然 通常不會用到負數
04/04 06:52, 6F

04/04 06:53, , 7F
如果有負數 不如建兩條邊 或者討論無向邊(但不值得討論)
04/04 06:53, 7F

04/04 06:54, , 8F
然後正反邊都有上下限 照常處理 外觀像是來回折返一遍
04/04 06:54, 8F

04/04 06:56, , 9F
概念上有一種繞圈做白工的感覺 只是為了滿足下限
04/04 06:56, 9F

04/04 21:31, , 10F
那再問一下 有沒有什麼特殊圖上面最大流或是最小費用流
04/04 21:31, 10F

04/04 21:31, , 11F
有比較快速的算法?
04/04 21:31, 11F

04/04 21:35, , 12F
除了平面圖求最大流之外 還有比較特殊的圖可以加速嗎?
04/04 21:35, 12F

04/04 21:38, , 13F
喔 正確來說應該是 st 平面圖 一般的平面圖有點難搞..
04/04 21:38, 13F

04/05 07:07, , 14F
不清楚沒有研究
04/05 07:07, 14F

04/05 07:07, , 15F
有好的計算性質的特殊圖 就是沒有環
04/05 07:07, 15F

04/05 07:09, , 16F
DAG/tree 無環 bipartite 無奇環 chordal無>3的洞
04/05 07:09, 16F

04/05 07:10, , 17F
可以往這邊去找
04/05 07:10, 17F
※ 編輯: DJWS (111.250.68.114), 04/05/2015 07:14:09

04/05 07:15, , 18F
至於平面圖的話 klein 前幾年有研究
04/05 07:15, 18F

04/05 21:51, , 19F
我有找到這個 http://ppt.cc/Aj1x 平面圖最小割算法
04/05 21:51, 19F

04/06 14:40, , 20F
minimum st cut = shortest st path in dual graph
04/06 14:40, 20F

03/14 10:10, , 21F
03/14 10:10, 21F
文章代碼(AID): #1L7hVHWe (Prob_Solve)
文章代碼(AID): #1L7hVHWe (Prob_Solve)