520 likes | 816 Views
Maximal Independent Set. Independent Set (IS):. In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent. Maximal Independent Set (MIS):. An independent set that is no subset of any other independent set. Maximum Independent Set:. A MIS of maximum size. A graph G….
E N D
Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent
Maximal Independent Set (MIS): An independent set that is no subset of any other independent set
Maximum Independent Set: A MIS of maximum size A graph G… …a MIS of G… …a MIS of max size
Applications in Distributed Systems • 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 interference, a conflict graph is built, and a MIS on that defines a clustering of the nodes enabling efficient routing
Applications in Distributed Systems (2) • A MIS is always a Dominating Set (DS) of the graph (the converse in not true), namely every node in G must be at distance at most 1 from at least one node in the MIS • 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
A Sequential Greedy algorithm Suppose that will hold the final MIS Initially
Phase 1: Pick a node and add it to
Phase 2: Pick a node and add it to
Phases 3,4,5,…: Repeat until all nodes are removed
Phases 3,4,5,…,x: Repeat until all nodes are removed No remaining nodes
Running time of the algorithm: Θ(m) Number of phases of the algorithm: O(n) Worst case graph (for number of phases): n nodes, n-1 phases
Homework • Can you see a distributed version of the algorithm just given?
A General Algorithm For Computing MIS Same as the sequential greedy algorithm, but at each phase we may select any independent set (instead of a single node)
Example: Suppose that will hold the final MIS Initially
Phase 1: Find any independent set And insert to :
Phase 2: On new graph Find any independent set And insert to :
Phase 3: On new graph Find any independent set And insert to :
remove and neighbors No nodes are left
Observation: The number of phases depends on the choice of 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
Example: If is MIS, 1 phase is needed Example: If each contains one node, phases are needed (sequential greedy algorithm)
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 include many nodes of the remaining graph
Let be the maximum node degree in the whole graph 2 1 Suppose that d is known to all the nodes (this may require a pre-processing)
At each phase : Each node elects itself with probability 2 1 Elected nodes are candidates for independent set
However, it is possible that neighbor nodes may be elected simultaneously Problematic nodes
All the problematic nodes must be un-elected. The remaining elected nodes form independent set
Analysis: Success for a node in phase : disappears at end of phase (enters or ) A good scenario that guarantees success No neighbor elects itself 2 1 elects itself
Basics of Probability • E: finite universe of events; let A and B denote two events in E; then: • A Bis the event that A or (non-exclusive) B occurs; • A Bis the event that both A and B occur.
Probability of success in a phase: is at least the probability that a node elects itself and no neighbor elects itself, i.e.: No neighbor should elect itself 2 1 elects itself
Probability of success in phase: At least First (left) ineq. with t =-1 For
Therefore, node disappears at the end of phase with probability at least 2 1
Definition:Bad event for node : after phases node did not disappear This happens with probability (first (right) ineq. with t =-1 and n =2ed) at most:
Bad event for G: after phases at least one node did not disappear This happens with probability: P(ORxG(bad event for x)) ≤
Good event for G: within phases all nodes disappear This happens with probability: (high probability)
Total number of phases: (with high probability) • # rounds for each phase: 3 • In round 1, each node tries to elect itself and notifies neighbors; • In round 2, each node receives notifications from neighbors, decide whether is in Ik, and notifies neighbors; • In round 3, each node receiving notifications from elected neighbors, realizes to be in N(Ik). total # of rounds:
Homework • Can you provide a good bound on the number of messages?