1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of...
-
Upload
neal-robinson -
Category
Documents
-
view
214 -
download
0
Transcript of 1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of...
![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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/1.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/2.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/3.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/4.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/5.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/6.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/7.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/8.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/9.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/10.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/11.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/12.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/13.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/14.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/15.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/16.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/17.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/18.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/19.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/20.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/21.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/22.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/23.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/24.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/25.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/26.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/27.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/28.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/29.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/30.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/31.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/32.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/33.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/34.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/35.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/36.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/37.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/38.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/39.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/40.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/41.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/42.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/43.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/44.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/45.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/46.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/47.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/48.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022070400/56649efe5503460f94c13a32/html5/thumbnails/49.jpg)
49
Homework
Can you provide a good bound on the number of messages?