Lecture 11: Bipartite matching, and transformations

October 5th, 2008

We looked at the problem of computing a maximum matching in a bipartite graph, and showed that a simple max flow formulation yields the optimal matching. As an aside, I asked you to consider the following strategy:

Take any edge that doesn’t intersect the set of edges chosen thus far.

How badly might this do ?

We also saw that Hall’s theorem, a structural way of characterizing the existence of a perfect matching in a bipartite graph, can be proved using flow principles.

Finally, we examined some variants of the max flow problem that can all be reduced to the standard formulation. These were:

  • circulations: having multiple sources and sinks, each with their own specified demands
  • Lower bounds on edge capacities (like lower limits on speeds on a highway)
  • Vertex capacities: limiting the amount of flow through a vertex (for example, this can arise when you have a warehouse that’s storing shipments, but can only store a limited amount of material)

The first two sections are taken from Section 7.5 of the text, and the last part is taken from Section 7.7.

Leave a Reply