Hubbry Logo
search
logo

Matroid partitioning

logo
Community Hub0 Subscribers
Write something...
Be the first to start a discussion here.
Be the first to start a discussion here.
See all
Matroid partitioning

Matroid partitioning is a problem arising in the mathematical study of matroids and in the design and analysis of algorithms. Its goal is to partition the elements of a matroid into as few independent sets as possible. An example is the problem of computing the arboricity of an undirected graph, the minimum number of forests needed to cover all of its edges. Matroid partitioning may be solved in polynomial time, given an independence oracle for the matroid. It may be generalized to show that a matroid sum is itself a matroid, to provide an algorithm for computing ranks and independent sets in matroid sums, and to compute the largest common independent set in the intersection of two given matroids.

The arboricity of an undirected graph is the minimum number of forests into which its edges can be partitioned, or equivalently (by adding overlapping edges to each forest as necessary) the minimum number of spanning forests whose union is the whole graph. A formula proved by Crispin Nash-Williams characterizes the arboricity exactly: it is the maximum, over all subgraphs of the given graph , of the quantity .

The forests of a graph form the independent sets of the associated graphic matroid, and the quantity appearing in Nash-Williams' formula is the rank of the graphic matroid of , the maximum size of one of its independent sets. Thus, the problem of determining the arboricity of a graph is exactly the matroid partitioning problem for the graphic matroid. The fact that the elements of this matroid cannot be partitioned into fewer than independent subsets is then just an application of the pigeonhole principle saying that, if items are partitioned into sets of size at most , then at least sets are needed. The harder direction of Nash-Williams' formula, which can be generalized to all matroids, is the proof that a partition of this size always exists.

To generalize Nash-Williams' formula, one may replace by a matroid , and the subgraph of with a restriction of to a subset of its elements. The number of edges of the subgraph becomes, in this generalization, the cardinality of the selected subset, and the formula for the maximum size of a forest in becomes the rank . Thus, the minimum number of independent sets in a partition of the given matroid should be given by the formula

This formula is indeed valid, and it was given an algorithmic proof by Edmonds (1965). In other words, a matroid can be partitioned into at most independent subsets, if-and-only-if for every subset of , the cardinality of is at most .

The first algorithm for matroid partitioning was given by Edmonds (1965). It is an incremental augmenting-path algorithm that considers the elements of the matroid one by one, in an arbitrary order, maintaining at each step of the algorithm an optimal partition for the elements that have been considered so far. At each step, when considering an element that has not yet been placed into a partition, the algorithm constructs a directed graph that has as its nodes the elements that have already been partitioned, the new element , and a special element for each of the independent sets in the current partition. It then forms a directed graph on this node set, with a directed arc for each matroid element that can be added to partition set without causing it to become dependent, and with a directed arc for each pair of matroid elements such that removing from its partition and replacing it with forms another independent set.

Now there are two cases:

so in this case the algorithm may find an optimal partition by placing into its own new independent set and leaving the other independent sets unchanged.

See all
User Avatar
No comments yet.