1 maximal independent set. 2 independent set (is): in a graph g=(v,e), |v|=n, |e|=m, any set of...

49
1 Maximal Independent Set

Upload: neal-robinson

Post on 03-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

1

Maximal Independent Set

Page 2: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

2

Independent Set (IS):

In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

Page 3: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

3

Maximal Independent Set (MIS):

An independent set that is nosubset of any other independent set

Page 4: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

4

Maximum Independent Set:

A MIS of maximum size

A graph G… …a MIS of G… …a MIS of max size

Remark: finding a maximum IS is an NP-hard problem, while a MIS can be found in polynomial time!

Page 5: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

5

Applications in DS: network topology

•In a network graph consisting of nodes representing processors, a MIS defines a set of processors which can operate in parallel without interference

•For instance, in wireless ad hoc networks, to avoid interferences, a conflict graph is built, and a MIS on that defines a clustering of the nodes enabling efficient routing

Page 6: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

6

Applications in DS: network monitoring

• A MIS is always a Dominating Set (DS) of the graph (the converse in not true, unless the DS is independent), namely every node in G is at distance at most 1 from at least one node in the MIS (otherwise the MIS could be enlarged, against the assumption of maximality!)

In a network graph G consisting of nodes representing processors, a MIS defines a set of processors which can monitor the correct functioning of all the nodes in G (in such an application, one should find a minimum MIS)

Page 7: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

7

A Sequential Greedy algorithm

Suppose that will hold the final MISI

Initially I

G

Page 8: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

8

Pick a node and add it to I1v

1v

Phase 1:

1GG

Page 9: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

9

Remove and neighbors )( 1vN1v

1G

Page 10: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

10

Remove and neighbors )( 1vN1v

2G

Page 11: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

11

Pick a node and add it to I2v

2v

Phase 2:

2G

Page 12: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

12

2v

Remove and neighbors )( 2vN2v

2G

Page 13: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

13

Remove and neighbors )( 2vN2v

3G

Page 14: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

14

Repeat until all nodes are removed

Phases 3,4,5,…:

3G

Page 15: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

15

Repeat until all nodes are removed

No remaining nodes

Phases 3,4,5,…,x:

1xG

Page 16: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

16

At the end, set will be a MIS of I G

G

Page 17: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

17

Worst case graph (for number of phases):

n nodes, n-1 phases

Running time of the algorithm: Θ(m)

Number of phases of the algorithm: O(n)

Page 18: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

18

Homework

Can you see a distributed version of the algorithm just given?

Page 19: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

19

A General Algorithm For Computing MIS

Same as the sequential greedy algorithm, but at each phase, instead of a single node, we now select any independent set (this selection should be seen as a black box at this stage)

The underlying idea is that this approach will be useful for a distributed algorithm

Page 20: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

20

Suppose that will hold the final MISI

Initially I

Example:

G

Page 21: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

21

Find any independent set 1I

Phase 1:

And insert to :1I I 1III

1GG

Page 22: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

22

1I )( 1INremove and neighbors

1G

Page 23: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

23

remove and neighbors 1I )( 1IN

1G

Page 24: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

24

remove and neighbors 1I )( 1IN

2G

Page 25: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

25

Phase 2:

Find any independent set 2I

And insert to :2I I 2III

On new graph

2G

Page 26: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

26

remove and neighbors 2I )( 2IN

2G

Page 27: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

27

remove and neighbors 2I )( 2IN

3G

Page 28: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

28

Phase 3:

Find any independent set 3I

And insert to :3I I 3III

On new graph

3G

Page 29: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

29

remove and neighbors 3I )( 3IN

3G

Page 30: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

30

remove and neighbors 3I )( 3IN

No nodes are left

4G

Page 31: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

31

Final MIS I

G

Page 32: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

32

1. The algorithm is correct, since independence and maximality follow by construction

2. The number of phases depends on the choice of the independent set in each phase: The larger the subgraph removed at the end of a phase, the smaller the residual graph, and then the faster the algorithm. Then, how do we choose such a set, so that independence is guaranteed and the convergence is fast?

Analysis

Page 33: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

33

Example:If is MIS, 1 phase is needed

1I

Example:If each contains one node, phases may be needed

kI)(n

(sequential greedy algorithm)

Page 34: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

34

A Randomized Sync. Distributed Algorithm

•Follows the general MIS algorithm paradigm, by choosing randomly at each phase the independent set, in such a way that it is expected to remove many nodes from the current residual graph•Works with synchronous, anonymous, uniform models

Remark: It is randomized in a Las Vegas sense, i.e., it uses randomization only to reduce the expected running time, but always terminates with a correct result

Page 35: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

35

Let be the maximum node degree in the whole graph

d

1 2 d

Suppose that d is known to all the nodes (this may require a pre-processing)

Page 36: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

36

Elected nodes are candidates forindependent set

Each node elects itself with probability

At each phase :k

kI

dp

1

1 2 d

kGz

z

Page 37: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

37

However, it is possible that neighbor nodes are elected simultaneously (nodes can check it out by testing their neighborhood)

Problematic nodeskG

Page 38: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

38

All the problematic nodes step back to the unelected status, and proceed to the next phase. The remaining elected nodes formindependent set kI

kGkI

kIkI

kI

Page 39: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

39

Success for a node in phase : disappears at end of phase(enters or )

Analysis:

kGz

kI

1 2 y

No neighbor elects itself

z

z

k)( kIN

k

A good scenariothat guaranteessuccess

elects itself

Page 40: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

40

Basics of ProbabilityLet A and B denote two events in a probability space;

let

1. A (i.e., not A) be the event that A does not occur;2. AՈB be the event that both A and B occur;3. AUB be the event that A or (non-exclusive) B occurs.

Then, we have that:1. P(A)=1-P(A);2. P(AՈB)=P(A)P(B) (if A and B are independent)3. P(AUB)=P(A)+P(B)-P(AՈB) (if A and B are

mutually exclusive, then P(AՈB)=0, and P(AUB)=P(A)+P(B)).

Page 41: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

41

Fundamental inequalities

tn

t ent

nt

e

11

21n

nt ||

10 p

1k

k

kp

p

11

Page 42: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

42

Probability for a node z of success in a phase: P(success z) = P((z enters Ik) OR (z enters N(Ik))

i.e., is at least the probability that it enters Ik, i.e., it elects itself AND no neighbor elects itself, i.e. (notice that events are independent):

1 2 y

p

p1

p1p1

z

No neighbor should elect itself

elects itself

P(success z) ≥ p(1-p)y (recall that p=1/d)

Page 43: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

43

Probability of success for a node in a phase:

2ed1

d1

1ed1

d1

1d1

p)p(1p1pd

dy

At least

For 2d

First (left) ineq. with t =-1

Page 44: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

44

Therefore, node disappears at the end of phase with probability at least

1 2 y

z

z

ed21k

Node z does not disappear at the end of phase k with probability at most

2ed1

1

Page 45: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

45

after phases

Definition: Bad event for node :

ned ln4

node did not disappear

This happens with probability P(ANDk=1,..,4ed lnn (z does not disappear at the end of phase

k))

i.e., at most:

2ln2

ln22ln411

21

12

11

needed n

nedned

z

z

(first (right) ineq. with t =-1 and n =2ed)

Independent events

Page 46: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

46

after phases

Bad event for G:

ned ln4

at least one node did not disappear

This happens with probability (notice that events are not mutually exclusive): P(ORxG(bad event for x)) ≤

nnnx

Gx

11) for event P(bad 2

Page 47: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

47

within phases

Good event for G:

ned ln4

all nodes disappear

This happens with probability:

n1

-1G] for event bad of ty[probabili1

(i.e., with high probability)

Page 48: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

48

Total number of phases:

)log(ln4 ndOned

# rounds for each phase: 31. In round 1, each node tries to elect itself and

notifies neighbors;2. In round 2, each node receives notifications

from neighbors, decide whether it is in Ik, and notifies neighbors;

3. In round 3, each node receiving notifications from elected neighbors, realizes to be in N(Ik),

notifies its neighbors about that, and stops. total # of rounds: )log( ndO

(w.h.p.)

Time complexity

Page 49: 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent

49

Homework

Can you provide a good bound on the number of messages?