Blocking flow
Jump to navigation
Jump to search
Basic definitions
Definition
Let [math]\displaystyle{ G=(V,A) }[/math] be a directed graph, let [math]\displaystyle{ s,t\in V }[/math], and for each arc [math]\displaystyle{ a\in A }[/math] let [math]\displaystyle{ u(a) }[/math] and [math]\displaystyle{ f(a) }[/math] be real values such that [math]\displaystyle{ 0\leq f(a)\leq u(a) }[/math]. We say that [math]\displaystyle{ f }[/math] is a blocking flow if every flow augmenting [math]\displaystyle{ (s,t) }[/math]-path contains at least one backward arc.
Remarks:
- The name refers to an alternative, equivalent definition: Every ordinary [math]\displaystyle{ (s,t) }[/math]-path contains at least one saturated arc, which "blocks" the augmentation.
- Obviously, maximum flows are blocking flows, but not vice versa.
Input
- An acyclic directed graph [math]\displaystyle{ G=(V,A) }[/math].
- A source node [math]\displaystyle{ s\in V }[/math] and a target node [math]\displaystyle{ t\in V }[/math].
- An upper bound [math]\displaystyle{ u(a) }[/math] for each arc [math]\displaystyle{ a\in A }[/math].
Output
A blocking flow [math]\displaystyle{ f }[/math].