28.11.2014 Views

Lecture Notes Discrete Optimization - Applied Mathematics

Lecture Notes Discrete Optimization - Applied Mathematics

Lecture Notes Discrete Optimization - Applied Mathematics

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

the MWIS problem is equivalent to finding a maximum weight basis of M.<br />

We give some examples of matroids.<br />

Example 3.2 (Uniform matroid). One of the simplest examples of a matroid is the socalled<br />

uniform matroid. Suppose we are given some set S and an integer k. Define the<br />

independent setsI as the set of all subsets of S of size at most k, i.e.,I ={I⊆ S | |I|≤k}.<br />

It is easy to verify that M =(S,I) is a matroid. M is also called the k-uniform matroid.<br />

Example 3.3 (Partition matroid). Another simple example of a matroid is the partition<br />

matroid. Suppose S is partitioned into m sets S 1 ,...,S m and we are given m integers<br />

k 1 ,...,k m . Define I = {I ⊆ S | |I∩ S i |≤k i for all 1≤i≤m}. Conditions (M1) and<br />

(M2) are trivially satisfied. To see that Condition (M3) is satisfied as well, note that if<br />

I,J ∈I and|I||I∩ S i | and thus<br />

adding any element x ∈ S i ∩(J\ I) to I maintains independence. Thus, M = (S,I) is a<br />

matroid.<br />

Example 3.4 (Graphic matroid). Suppose we are given an undirected graph G=(V,E).<br />

Let S=E and define I ={F ⊆ E | F induces a forest in G}. We already argued above<br />

that Conditions (M1) and (M2) are satisfied. We next show that Conditions (M4) is satisfied<br />

too. Let U ⊆ E. Consider the subgraph(V,U) of G induced by U and suppose that it<br />

consists of k components. By definition, each basis B of U is an inclusionwise maximal<br />

forest contained in U. Thus, B consists of k spanning trees, one for each component of<br />

the subgraph (V,U). We conclude that B contains |V|−k elements. Because this holds<br />

for every basis of U, Condition (M4) is satisfied. We remark that any matroid M =(S,I)<br />

obtained in this way is also called a graphic matroid (or cycle matroid).<br />

Example 3.5 (Matching matroid). The independent set system of Example 3.1 is not a<br />

matroid. However, there is another way of defining a matroid based on matchings. Let<br />

G = (V,E) be an undirected graph. Given a matching M ⊆ E of G, let V(M) refer to<br />

the set of nodes that are incident to the edges of M. A node set I ⊆ V is covered by<br />

M if I ⊆ V(M). Define S = V and I = {I ⊆ V | I is covered by some matching M}.<br />

Condition (M1) holds trivially. Condition (M2) is satisfied because if a node set I ∈I is<br />

covered by a matching M, then each subset J ⊆ I is also covered by M and thus J ∈I. It<br />

can also be shown that Condition (M3) is satisfied and thus M =(S,I) is a matroid. M is<br />

also called a matching matroid.<br />

3.3 Greedy Algorithm for Matroids<br />

The next theorem shows that the greedy algorithm given in Algorithm 3 always computes<br />

a maximum weight independent set if the underlying independent set system is a matroid.<br />

The theorem actually shows something much stronger: Matroids are precisely the<br />

independent set systems for which the greedy algorithm computes an optimal solution.<br />

Theorem 3.1. Let (S,I) be an independent set system. Further, let w : S → R + be a<br />

nonnegative weight function on S. The greedy algorithm (Algorithm 3) computes an independent<br />

set of maximum weight if and only if M =(S,I) is a matroid.<br />

16

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!