Jump to content

Matroid intersection

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Daveagp (talk | contribs) at 05:33, 21 June 2012. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In combinatorial optimization, the matroid intersection problem is to find a largest common independent set in two matroids over the same ground set. If the elements of the matroid are assigned real weights, the weighted matroid intersection problem is to find a common independent set with the maximum possible weight. These problems generalize many problems in combinatorial optimization including finding maximum matchings and maximum weight matchings in bipartite graphs and finding arborescences in directed graphs.

The matroid intersection theorem, due to Jack Edmonds, says that there is always a simple upper bound certificate, consisting of a partition of the ground set amongst the two matroids, whose value (sum of respective ranks) equals the size of a maximum common independent set.

Example

Let G = (U,V,E) be a bipartite graph. One may define a matroid MU on the ground set E, in which a set of edges is independent if no two of the edges have the same endpoint in U. Similarly one may define a matroid MV in which a set of edges is independent if no two of the edges have the same endpoint in V. Any set of edges that is independent in both MU and MV has the property that no two of its edges share an endpoint; that is, it is a matching. Thus, the largest common independent set of MU and MV is a maximum matching in G.

Extension

The matroid intersection problem becomes NP-hard when three matroids are involved, instead of only two.

References

  • Brezovec, Carl; Cornuéjols, Gérard; Glover, Fred (1986), "Two algorithms for weighted matroid intersection", Mathematical Programming, 36 (1): 39–53, doi:10.1007/BF02591988.
  • Aigner, Martin; Dowling, Thomas (1971), "Matching theory for combinatorial geometries", Transactions of the American Mathematical Society, 158 (1): 231–245, doi:10.1090/S0002-9947-1971-0286689-5.
  • Edmonds, Jack (1979), "Matroid intersection", Discrete Optimization I, Proceedings of the Advanced Research Institute on Discrete Optimization and Systems Applications of the Systems Science Panel of NATO and of the Discrete Optimization Symposium, Annals of Discrete Mathematics, vol. 4, pp. 39–49, doi:10.1016/S0167-5060(08)70817-3.
  • Frank, András (1981), "A weighted matroid intersection algorithm", Journal of Algorithms, 2 (4): 328–336, doi:10.1016/0196-6774(81)90032-8.
  • Frederickson, Greg N.; Srinivas, Mandayam A. (1989), "Algorithms and data structures for an expanded family of matroid intersection problems", SIAM Journal on Computing, 18 (1): 112–138, doi:10.1137/0218008.
  • Gabow, Harold N.; Tarjan, Robert E. (1984), "Efficient algorithms for a family of matroid intersection problems", Journal of Algorithms, 5 (1): 80–131, doi:10.1016/0196-6774(84)90042-7.
  • Lawler, Eugene L. (1975), "Matroid intersection algorithms", Mathematical Programming, 9 (1): 31–56, doi:10.1007/BF01681329.