Matroid Theory and Flow Optimization
Matroids provide a unifying framework for combinatorial optimization, generalizing both graph theory and linear algebra. Matroid intersection and matroid union extend flow-type arguments beyond network settings.
Matroids
A matroid consists of a ground set and a collection of independent sets satisfying: (1) ; (2) if and , then (hereditary); (3) if with , then with (augmentation). The rank .
Graphic matroid: = edges of a graph, = acyclic edge sets (forests). Independent sets are spanning forests; rank = . Linear matroid: = columns of a matrix, = linearly independent subsets. Partition matroid: partitioned into blocks, . Bipartite matching is matroid intersection of two partition matroids.
Matroid Intersection
Edmonds' matroid intersection theorem: The maximum size of a common independent set of matroids and equals . This generalizes KΓΆnig's theorem (intersection of two partition matroids) and can be computed in polynomial time. Applications: common bases, colorful forests, and arborescences.
Matroid union: the union of independent sets from matroid has maximum size (Nash-Williams). Application: the minimum number of forests needed to cover all edges of a graph is over subgraphs (Nash-Williams-Tutte theorem). The greedy algorithm optimally solves the weighted matroid optimization problem: sort elements by weight and greedily add to an independent set.
Submodular Optimization
A set function is submodular if for all . Matroid rank functions are submodular. LovΓ‘sz extension: any submodular function can be minimized in polynomial time via the ellipsoid method or combinatorial algorithms ( where is the evaluation cost). Submodular maximization is NP-hard in general but admits -approximation for monotone submodular functions under cardinality constraints (Nemhauser-Wolsey-Fisher).