Presentation is loading. Please wait.

Presentation is loading. Please wait.

A simple parallel algorithm for the MIS problem

Similar presentations


Presentation on theme: "A simple parallel algorithm for the MIS problem"— Presentation transcript:

1 A simple parallel algorithm for the MIS problem
By Michael Luby

2 What is MIS? G=(V,E): Maximal independent set problem.
Input: undirected graph G=(V,E). Output: a set of vertices there is no vertex outside the independent set that may join it. Maximum independent set Maximal independent set

3 What are we going to talk about?
MIS general algorithm. Monte Carlo algorithm A. Monte Carlo algorithm B. Analysis of algorithm B complexity. Generating pairwise independent random variables.

4 General MIS algorithm *

5 General MIS algorithm 2 1 3 4 5 6 7 8 9 10 12 11

6 General MIS algorithm 2 1 3 4 5 6 7 8 9 10 12 11

7 General MIS algorithm 2 1 3 4 5 6 7 8 9 10 12 11

8 General MIS algorithm 5 6 7 8 10

9 General MIS algorithm 5 6 7 8 10

10 General MIS algorithm 5 6 7 8 10

11 General MIS algorithm 6 8

12 General MIS algorithm 6 8

13 General MIS algorithm 6 8

14 General MIS algorithm

15 General MIS algorithm 2 1 3 4 5 6 7 8 9 10 12 11

16 The select step The number of executions of the body of the while loop before G’ is empty need to be as small as possible. That means we need the select step to choose a set I that will make the while loop run as little as possible.

17 Monte Carlo algorithm a Monte Carlo algorithm is a randomized algorithm whose running time is deterministic, but whose output may be incorrect with a certain (typically small) probability. The name refers to the grand casino in the Principality of Monaco at Monte Carlo, which is well-known around the world as an icon of gambling.

18 Monte Carlo algorithm A description
This is simplest Monte Carlo algorithm.

19 Monte Carlo algorithm A description

20 Monte Carlo algorithm A
7 4 8 5 2 6 3 9 1 10 11 12

21 Monte Carlo algorithm A
6053 87 2 1 20512 740 3 298 4 5 2699 6 10943 7 5040 8 9 14095 18532 10 12049 12 4073 11

22 Monte Carlo algorithm A
6053 87 2 1 20512 740 3 298 4 5 2699 6 10943 7 5040 8 9 14095 18532 10 12049 12 4073 11

23 Monte Carlo algorithm A
6053 87 2 1 20512 740 3 298 4 5 2699 6 10943 7 5040 8 9 14095 18532 10 12049 12 4073 11

24 Monte Carlo algorithm B
Definitions: d(i)= |adj(i)| coin(i) {0,1}, such that if d(i) 1 then coin(i) takes on the value 1 with probability and if d(i)=0 then coin(i) is always 1.

25 Monte Carlo algorithm B description

26 Monte Carlo algorithm B description
2 1 3 4 5 6 7 8 9 10 12 11

27 Monte Carlo algorithm B description
2 1 2 1 3 d(i) 3 1 3 4 5 2 3 6 2 7 8 9 4 1 10 1 12 1 11

28 Monte Carlo algorithm B description
2 1 1 1 2 1 3 d(i) 3 1 3 1 coin(i) 4 5 2 3 6 2 7 8 9 4 1 10 1 12 1 11 1

29 Monte Carlo algorithm B description
1 1 2 1 coin(i) 3 1 4 5 6 7 8 9 10 12 11 1

30 Monte Carlo algorithm B description
1 1 2 1 coin(i) 3 1 4 5 6 7 8 9 10 12 11 1

31 Monte Carlo algorithm B description
2 1 3 4 5 6 7 8 9 10 12 11

32 Analysis of algorithms A & B

33 Analysis of algorithms A & B
The proof is very similar for both algorithms. It is shown that on the average each execution of the body of the while loop eliminates a constant fraction of the edges in E’. Therefore, the complexity of both A & B is o(log n). We will see only the proof for part (2).

34 Proof of theorem 1 7 4 8 5 2 6 3 9 1 10 11 12

35 Proof of theorem 1

36 Proof of theorem 1

37 Proof of Lemma B

38 Proof of Lemma B

39 Proof of Lemma B

40 Technical Lemma

41 Generating pairwise independent random variables

42 Generating pairwise independent random variables
1 2 3 .. q-1 q v1 v2 vn

43


Download ppt "A simple parallel algorithm for the MIS problem"

Similar presentations


Ads by Google