Algorithm 最小总容量削减

Algorithm 最小总容量削减,algorithm,optimization,graph,graph-theory,graph-algorithm,Algorithm,Optimization,Graph,Graph Theory,Graph Algorithm,在下面的网络中,数字表示边缘的容量。这是一个网络流问题。该问题询问最小总容量削减。我的讲师的答案(图中有一条红色的抖动线)是: The minimum total capacity cut contains arcs {AB, SC, SE} as shown. 我的答案是{SA,SC,EF}。我基本上也是这样做的,只是我避免使用edgeSA,使用EF而不是AB。为什么我错了 流仍然可以通过S->E->C->D->T,因此您的边集甚至不是一个切割 切割是一组边缘,一旦移除,就不可能从S流向T

在下面的网络中,数字表示边缘的容量。这是一个网络流问题。该问题询问
最小总容量削减
。我的讲师的答案(图中有一条红色的抖动线)是:

The minimum total capacity cut contains arcs {AB, SC, SE} as shown.
我的答案是
{SA,SC,EF}
。我基本上也是这样做的,只是我避免使用edge
SA
,使用
EF
而不是
AB
。为什么我错了


流仍然可以通过S->E->C->D->T,因此您的边集甚至不是一个切割

切割是一组边缘,一旦移除,就不可能从S流向T

请记住,删除边不会删除顶点本身

以下是获得最小切割的简单方法:

  • 在残差图上运行任何最大流算法(Ford Fulkerson,Edmonds 卡普、迪尼奇等)
  • 是否从源节点忽略饱和边执行BFS (流量值=边缘容量的边缘)
  • 现在把所有的边都拿走 从已访问的节点到未访问的节点
  • 这些边将是可能的最小切割之一

    • 流仍然可以通过S->E->C->D->T,因此您的边集甚至不是一个切割

      切割是一组边缘,一旦移除,就不可能从S流向T

      请记住,删除边不会删除顶点本身

      以下是获得最小切割的简单方法:

      • 在残差图上运行任何最大流算法(Ford Fulkerson,Edmonds 卡普、迪尼奇等)
      • 是否从源节点忽略饱和边执行BFS (流量值=边缘容量的边缘)
      • 现在把所有的边都拿走 从已访问的节点到未访问的节点
      • 这些边将是可能的最小切割之一

      啊,是的。这有算法吗?还是通过随机检查?@s5s添加了一个算法来回答,解释了如何获得最小截面积,是的。这有算法吗?还是通过随机检查?@s5s在答案中添加了一个算法,解释了如何获得最小切割