The MIT public relations office is reporting a new result on the maximum flow problem. It appears that work by Kelner, Madry, Christiano, Spielman and Teng (in some permutation: not surprisingly, the MIT release stresses the MIT authors) has reduced the complexity of maxflow to (V+E)^4/3 (from (V+E)^3/2. Details are pretty sketchy, but the approach seems to use matrix operations instead of the more combinatorial “push flow along this path (or edge)”. From the announcement:

Traditionally, Kelner explains, algorithms for calculating max flow would consider one path through the graph at a time. If it had unused capacity, the algorithm would simply send more stuff over it and see what happened. Improvements in the algorithms’ efficiency came from cleverer and cleverer ways of selecting the order in which the paths were explored.

But Kelner, CSAIL grad student Aleksander Madry, math undergrad Paul Christiano, and Professors Daniel Spielman and Shanghua Teng of, respectively, Yale and USC, have taken a fundamentally new approach to the problem. They represent the graph as a matrix, which is math-speak for a big grid of numbers. Each node in the graph is assigned one row and one column of the matrix; the number where a row and a column intersect represents the amount of stuff that may be transferred between two nodes. In the branch of mathematics known as linear algebra, a row of a matrix can also be interpreted as a mathematical equation, and the tools of linear algebra enable the simultaneous solution of all the equations embodied by all of a matrix’s rows. By repeatedly modifying the numbers in the matrix and re-solving the equations, the researchers effectively evaluate the whole graph at once.

I am a little hesitant here, since I can’t find the relevant paper. Worse, the presentation abstract talks about approximate maximum flow (see the September 28 entry at the MIT seminar listing), which would then add in some extra terms for exact max flow. So I welcome more information on the result.

In any case, it is exciting to see a new approach to these sorts of problems. If past experience is any guide, if this approach is workable, we can expect to see an avalanche of papers applying the approach to all sorts of network flow problems: shortest path, min cost flow, generalized networks (with multipliers) and so on. A likely good place to start is this overview paper by Spielman.