运筹学_最小费用流问题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

对偶算法基本步骤: 对偶算法基本步骤: 零流为初始可行流 ⑴ 取零流 初始可行流 即 f (0) = {0} . 零流 初始可行流, 流量为W( 长度网络L( ⑵ 若有 f (k-1), 流量为 f (k-1) ) < v , 构造长度网络 f (k-1)). 长度网络 的最短路. ⑶ 在长度网络L( f (k-1))中求从 vs 到 vt 的最短路 若不存在 最短路, 则 f (k-1)已为最大流, 不存在流量等于v的流, 停止; 否则转⑷. 转 可增广链µ上, ⑷在G中与这条最短路相应的可增广链 可增广链 做 f (k) = f (k-1)θ 其中θ=min{min(cij - f i(k-1) ),min f i(k-1) } , µµ j j +
v1
d (f (1)) = 5×1+5×2+ 5×1= 20 × × ×
(10,4) vs (8,1)
v1
16续 例16续 (7,1) v1 7 W( f
(2) )=7
2 vt vt (2,6) vs d (f (2)) = 5 (2,0) (5,2) (4,2) 5 × × (0,2) 4×2+5×1+ v2 (10,3) v3 v2 0 v3 5×2+7×1= 30 × × (a) (e) f (2) v1 v1 -4 W (f (3))=10= v -1 7 2 vt v vt vs 4 -2 6 s 1 5 0 d (f (3)) = 8 2 3 -1 2×4+8×1+ × × v2 v3 v2 v3 3 3 (f) L( f (2) ) (g) f (3) 5×2+3×3+ × × 3×2+7×1= × × L(vs→ vt ) = 6 f (3) 即为所求 为 即为所求v为 30 10的最小费用流 的
图示运输网络, 求流量v为10的最小费用流 的最小费用流, 例 图示运输网络, 求流量 为10的最小费用流, 边上括号为 ( c i j , d i j ) . v
(10,4) vs (8,1)
1
(10,0) vs (8,5)
1 L(vs→ vt ) = 4 (7,1) 4 vt vt vs (2,6) 2 6 (5,2) (4,2) 1 2 v2 (10,3) v3 v2 v3 3 (b) L ( f (0) ) (a) v1 v1 -1 L(vs→ vt ) = 4 (7,5) (10,4) 1 vt vt vs 1 (5,5) (2,0) (-2) (2,6) - (0,0) (2,2) -1 v2 (10,0) v3 v2 (10,3) v3 (c) f (1) W( f (1))=5 (d) L ( f (1) )
对偶算法的基本思路: 对偶算法的基本思路: 的最小费用流 先找一个流量为 W ( f (0) < v ) 的最小费用流 f (0) , 再找从 可增广链µ, 再找从 v s 到 v t 可增广链 用最大流法将 f (0)调整到 f (1), 使f (1)流量为 W (f (0)) +θ, 是在W 流量下的最小费用流 且保证 f (1) 是在 (f (0))+θ流量下的最小费用流, 流量下的最小费用流, 为止。 不断进行到 W (f (k)) = v 为止。 在G中求关于 f 的最小费用可增广链等价于 最小费用可增广链等价于 最小费用可增广链等价于在长度网络 L( f ) 中求 从 v s 到 v t 的最短路 最短路.
§5最小费用流问题 已知容量网络G=(V,E,C), 每条边 i , vj)除了已给出容量 ij 每条边(v 除了已给出容量 已知容量网络 除了已给出容量c 还给出了单位流量的费用 费用d 外, 还给出了单位流量的费用 ij(≥0), 记G=(V, E, C, d). ( 使得流量W(f)=v, 且总费用最小 且总费用最小. 求G的一个可行流 f ={fij}, 使得流量 的一个可行流 d ( f ) = (v ∑ ) ∈Ed i j f i j ,v
wk.baidu.com
定义 对网络G=(V,E,C,d ), 有可行流 f , 保持原网络各点, 每条边用两条方向相反的有向边代替, 各边的权lij按如下 规则: : dij 当 f ij < c ij 1. 当边 (vi , vj) ∈E, 令 lij = +∞ 当 f ij = 0 ( 其中+∞的意义是: 这条边已饱和, 不能再增大流量, 否则 要花费很高的代价, 实际无法实现, 因此权为+∞的边可从 网络中去掉. ) 2.当边 (vj , vi) 为原来G中边(vi , vj) 的反向边, -dij 当 f ij > 0 令 lij = +∞ 当 f ij = 0 (其中+∞的意义是此边流量已减少到0, 不能再减少, 权为 +∞的边也可以去掉. ) 这样得到的网络 L( f ) 称为长度网络 (将费用看成长度). 长度网络
µ+ µ-
称为链µ的费用 链 的费用 的费用。
图中的可增广链µ中 图中的可增广链 中 v5 vs 3 5 v1 v2 4 v3 1 7 v4 6 v t 边上权为费用d i j
µ+ : {(vs , v1), (v2 , v3), (v3 , v4), (v5 , vt), } µ - : {(v2 , v1), (v5 , v4) } 链µ 的费用 d (µ) = (3+4+1+6) - (5+7) = 2 是从v 所有可增广链中费用最小的链, 若µ+是从 s到vt所有可增广链中费用最小的链 则称μ+为最小费用增广链。 最小费用增广链。
作 业
阅读 p174 p160 - 166 6.12(c). .
µ
此时 f (k)的流量为 W (f (k-1)) +θ, 若W (f (k-1)) +θ = v则停, 则 返回⑵ 否则 令 f (k) 代替 f (k-1) ,返回⑵. 定理 若 f 是流量为W( f )的最小费用流, µ是关于f 的从 vs到vt的一条最小费用可增广链, 则f 经过μ调整流量 θ 得 到新可行流 f ’(记为 f ’ = fµ θ), 一定是 一定是流量为 新可行流 W( f )+θ 的可行流中的最小费用流 最小费用流。 最小费用流
i j
特别地, 当要求 f 为最大流 此问题即为最小费用最大流 最大流时, 最大流 最小费用最大流 问题。 可行流, 定义 已知网络G=(V, E, C, d), f 是G上的一个可行流 µ 可行流 为从v s到v t的(关于 f 的)可增广链 d (µ) = ∑ d i j - ∑ d i j 可增广链, 可增广链
相关文档
最新文档