**Assigned:**
Thursday, April 6, 2006

**Due:**
Wednesday, April 12, 2006

## General Instructions

- Please review the
course information.
- You must write down with whom you worked on the assignment. If this
changes from problem to problem, then you should write down this
information separately with each problem.
- Numbered problems are all from the textbook
* Network Flows *.

## Problems

- Problem 10.2. Augmenting along shortest paths
- Problem 10.6. Flow decomposition.
- Problem 10.20. Capacity adjacent minimum-cost flow problems.
- Problem 10.22. Bit-scaling version of capacity scaling.
- Suppose that given an n-node, m-edge graph G, you could find the most negative simple cycle in T(n,m) time. Analyze the algorithm where you push flow around the most negative cycle in the residual graph. You should state your time
bounds in terms of T(n,m).
- Although finding the most negative cycle is NP-hard, the following
problem is solvable in polynomial time (via matching). Given a graph G,
a
* cycle cover * is a set of node disjoint cycles, such that each node
is in at most one cycle. The minimum cycle cover is the cycle cover of minimum cost. Analyze the minimum cost flow algorithm in which you repeatedly
find a minimumc cycle cover in the residual graph and then push flow around eachcycle in the cycle cover. You can assume that you can find a cycle cover in
O(n^{3}) time.

### Switch to:

cliff@ieor.columbia.edu