多种商品流

时间:2013-08-01 03:43:11

标签: constraints max flow linear-programming maximize

我刚刚从DPV教科书的问题章节开始,为我的考试准备工作。对于其中一个,我遇到了一些麻烦,但我已经取得了一些进展:


DPV 7.20 http://i42.tinypic.com/ziw2ex.png


我的解决方案:

我将使用线性编程来最大化x SUM {flow_i(s_i,v)表示所有i,其中v是连接到源s_i的节点}> = x * d_i

受制于约束

  • 对于每个边e,f1 + .. fk< = c_e
  • 对于每个边e,flow_e> = 0
  • 以及一些我不确定的约束

我认为我走在正确的轨道上,但我需要一些帮助。我是否应该考虑尝试使用超级节点将其减少到常规的最大流量问题?

任何帮助都会很棒!谢谢。

1 个答案:

答案 0 :(得分:1)

是的,多源,多接收商品流问题的一种典型方法是引入超级源和一个超级接收器。然后将所有源 s1 ... sk 连接到超级源。将每个接收器 t1,... tk 连接到超级接收器。

重要:为离开或进入任何超级节点的所有边缘提供非常大的容量。

目标:最大化通过总量。 (离开源1..k的所有边缘的流量总和)

约束:

边缘容量限制:

你已经做对了。

  • 对于每个边e,f1 + .. fk< = c_e

*流量守恒(流入== Flow_out):*

  • 对于每个顶点v,流入v的流量之和=离开v
  • 的流量之和

需求满意度:

  • 对于每个接收器t_i,流入t_i的流量总和(所有边缘以t_i结尾)> = demand_i

您已经拥有的非零流量。

这是引用您特定问题的one accessible lecture handout。具体来说,请参阅讲义中的示例2。