- 89 Views
- Uploaded on
- Presentation posted in: General

Accessible Set Systems

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Accessible Set Systems

Andreas Klappenecker

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 BF and A B, then AF.

[The family F is called hereditary]

M2) If A,BF and |A|<|B|, then there exists x in B\A such that A{x} in F

[This is called the exchange property]

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).

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;

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.

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 }

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.

v9

v1

- We first pick an arbitrary vertex v1 to start with.
- Maintain a set S = {v1}.

- Over all edges from v1, find a lightest one. Say it’s (v1,v2).
- S ← S ∪ {v2}

- Over all edges from {v1,v2} (to V-{v1,v2}), find a lightest one, say (v2,v3).
- S ← S ∪ {v3}

- …
- In general, suppose we already have the subset S = {v1,…,vi}, then over all edges from S to V-S, find a lightest one (vj, vi+1).
- Update: S ←S ∪ {vi+1}
- …
- Finally we get a tree; this tree is a minimum spanning tree.

6

1

v2

5

3

6

2

4

v8

v3

5

v6

6

4

4

4

v5

v4

2

v7

[Slide due to Prof. Shengyu Zhang]

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.

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.

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.]

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).

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.

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;

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).

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.

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.]

Let M=(S,F) be a set system. Define

clos(M) = (S,F’), where F’ = { A | AB, 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.]

Congruence closure axiom

For every feasible set A and all x,y in ext(A) and every subset X in S\(Aext(A)), AX{x} in clos(M) implies AX{y} in clos(M).

[This axiom restricts the future extensions of the set system. Note that it is a property in the hereditary closure.]

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.