I understand that Ford-Fulkerson Algorithm can find the maximum flow that can flow from source (s
) to sink (t
) in a flow network.
But is there an algorithm that finds all possible sets of paths that give the max flow?
An example:
In this network below, all edges have a capacity of 1. It's not hard to see that the max flow from s
to t
is 3. But how to find the combinations of paths that carry that flow?
Expected outputs:
Path set 1: s-0-1-t, s-2-3-t, s-5-6-t
Path set 2: s-0-1-t, s-2-4-t, s-5-6-t
Path set 3: s-0-3-t, s-2-4-t, s-5-6-t
Path set 4: s-0-4-t, s-2-3-t, s-5-6-t
A similar question was asked here but didn't seem to get a clear answer.