Presentation is loading. Please wait.

Presentation is loading. Please wait.

Accessible Set Systems Andreas Klappenecker. Matroid Let S be a finite set, and F a nonempty family of subsets of S, that is, F  P(S). We call (S,F)

Similar presentations


Presentation on theme: "Accessible Set Systems Andreas Klappenecker. Matroid Let S be a finite set, and F a nonempty family of subsets of S, that is, F  P(S). We call (S,F)"— Presentation transcript:

1 Accessible Set Systems Andreas Klappenecker

2 Matroid Let S be a finite set, and F a nonempty family of subsets of S, that is, F  P(S). We call (S,F) a matroid if and only if M1) If B  F and A  B, then A  F. [The family F is called hereditary] M2) If A,B  F and |A|<|B|, then there exists x in B\A such that A  {x} in F [This is called the exchange property]

3 Weight Functions A matroid (S,F) is called weighted if it equipped with a weight function w: S->R +, i.e., all weights are positive real numbers. If A is a subset of S, then w(A) :=  a in A w(a).

4 Greedy Algorithm for Matroids Greedy(M=(S,F),w) A :=  ; Sort S into monotonically decreasing order by weight w. for each x in S taken in monotonically decreasing order do if A  {x} in F then A := A  {x}; fi; od; return A;

5 Matroid Terminology Let (S,F) be a matroid. The elements in F are called independent sets or feasible sets. A maximal feasible set is called a basis. Since we have assume that the weight function is positive, the algorithm Greedy always returns a basis.

6 Matroid Example Suppose that S={a,b,c,d}. Construct the smallest matroid (S,F) such that {a,b} and {c,d} are contained in F. F = { , {a}, {b}, {c}, {d}, {a,b}, {c,d}, by the hereditary property {a,c}, {b,c}, {a,d}, {b,d} by the exchange property }

7 Conclusion Matroids characterize a group of problems for which the greedy algorithm yields an optimal solution. Kruskals minimum spanning tree algorithm fits nicely into this framework.

8 Prim’s Algorithm for MST We first pick an arbitrary vertex v 1 to start with. Maintain a set S = {v 1 }. Over all edges from v 1, find a lightest one. Say it’s (v 1,v 2 ). S ← S ∪ { v 2 } Over all edges from {v 1,v 2 } (to V- {v 1,v 2 }), find a lightest one, say (v 2,v 3 ). S ← S ∪ { v 3 } … In general, suppose we already have the subset S = {v 1,…,v i }, then over all edges from S to V-S, find a lightest one (v j, v i+1 ). Update: S ← S ∪ { v i+1 } … Finally we get a tree; this tree is a minimum spanning tree. 6 1 5 4 6 5 4 2 4 3 4 2 6 v1v1 v2v2 v3v3 v4v4 v5v5 v6v6 v7v7 v8v8 v9v9 [Slide due to Prof. Shengyu Zhang]

9 Critique Prim’s algorithm is a greedy algorithm that always produces optimal solutions. S = edges of the graph G F = { A | T=(V,A) is a induced subgraph of G, is a tree, and contains the vertex v } Apparently, Prim’s algorithm is essentially Greedy applied to (S,F). However, the set system (S,F) is not a matroid, since it is not hereditary! Why? Removing an edge from a tree can yield disconnected components, not necessarily a tree.

10 Goal Generalize the theory from matroids to more general set systems (so that e.g. Prim’s MST algorithm can be explained). Allow weight functions with arbitrary weight.

11 Accessible Set Systems Let S be a finite set, F a non-empty family of subsets of S. Then (S,F) is called a set system. The elements in F are called feasible sets. A set system (S,F) satisfying the accessibility axiom: If A is a nonempty set in F, then there exists an element x in S such that A\{x} in F. is called an accessible set system. [Greedy algorithms need to be able to construct feasible sets by adding one element at the time, hence the accessibility axiom is needed.]

12 Weight Functions Let w: S -> R be a weight function (negative weights are now allowed!). For a subset A of S, define w(A) :=  a in A w(a).

13 Accessible Set Systems A maximal set B in an accessible set system (S,F) is called a basis. Goal: Solve the optimization problem BMAX: maximize w(B) over all bases of M.

14 Greedy Algorithm Greedy(M=(S,F),w) A :=  ; Sort S into monotonically decreasing order by weight w. for each x in S taken in monotonically decreasing order do if A  {x} in F then A := A  {x}; fi; od; return A;

15 Question Characterize the accessible set systems such that the greedy algorithm yields an optimal solution for any weight function w. This question was answered by Helman, Moret, and Shapiro in 1993, after initial work by Korte and Lovasz (Greedoids) and Edmonds, Gale, and Rado (Matroids).

16 Extensibility Axiom: Motivation Define ext(A) = { x in S\A | A  {x} in F }. Let A be in F such that ext(A)=  and B a basis properly containing A. [This can happen, see homework.] Define w(x) = 2 if x in A w(x) = 1 if x in B\A w(x) = 0 otherwise. Then the Greedy algorithm incorrectly returns A instead of B.

17 Extensibility Axiom Extensibility Axiom: For each basis B and every feasible set A properly contained in B, we have ext(A) B  . [This axiom is clearly necessary for the optimality of the greedy algorithm.]

18 Matroid Embedding Axiom Let M=(S,F) be a set system. Define clos(M) = (S,F’), where F’ = { A | A  B, B in F } We call clos(M) the hereditary closure of M. Matroid embedding axiom clos(M) is a matroid. [This axiom is necessary for the greedy algorithm to return optimal sets. Thus, matroid are always in the background, even though the accessible set system might not be a matroid.]

19 Congruence Closure Axiom Congruence closure axiom For every feasible set A and all x,y in ext(A) and every subset X in S\(A  ext(A)), A  X  {x} in clos(M) implies A  X  {y} in clos(M). [This axiom restricts the future extensions of the set system. Note that it is a property in the hereditary closure.]

20 Theorem (Helman, Moret, Shapiro) Let M=(S,F) be an accessible set system. For each weight function w: S->R the optimal solutions to BMAX are the bases of M that are generated by Greedy (assuming a suitable ordering of the elements with the same weight) if and only if the accessible set system M satisfies the extension axiom, the congruence closure axiom, and the matroid embedding axiom.


Download ppt "Accessible Set Systems Andreas Klappenecker. Matroid Let S be a finite set, and F a nonempty family of subsets of S, that is, F  P(S). We call (S,F)"

Similar presentations


Ads by Google