Distributed Coloring Discrete Mathematics and Algorithms Seminar Melih
Distributed Coloring Discrete Mathematics and Algorithms Seminar Melih Onus November 10 2005
Outline n n n Vertex Coloring Model Luby’s Algorithm Coloring Constant Degree Oriented Graphs Coloring Oriented Graphs Conclusion & Open Problems
Vertex Coloring n Given a graph G, find a coloring of the vertices so that no two neighbors in G have the same color Proper Coloring Improper Coloring
Model n n n G(V, E), V represents the set of processors and E represents communication links Communication links are bidirectional Processors are synchronized Each node knows n, and its neighbors The edges in E have an orientation (edge {u, v} is oriented either as u v or v u)
How can we use orientation? If nodes u and v choose the same color during any round of algorithm, in the existing algorithms both nodes remain uncolored n With orientation, u can be colored provided that there is no edge w v and node w also chooses the same color n u v With existing algorithms both remain uncolored u v Using orientation, u gets colored
Luby’s algorithm n In each round – Each uncolored node chooses a color uniformly random – If there is no conflict, node is colored with that color Distributed +1 -coloring algorithm n Works in O(log n) rounds w. h. p. n
Luby’s algorithm (Example) u v a c b c Round 1 u a b Round 2 v u v a c b Round 3 a c b Round 4
Coloring Constant Degree Oriented Graphs n Special case: Constant degree graphs n Algorithm Color-Random: In each round – Each uncolored node v chooses an available color cv uniformly at random – If no neighbor node u with higher priority ( u v) chooses the same color cv, node v is colored with cv u v : u has higher priority
Algorithm Color-Random (Example) u v a c b c Round 1 u b Round 2 v a c a b Round 3
Algorithm Color-Random n For constant degree graph with n nodes provided with -acyclic orientation, our algorithm obtains a +1 coloring in O( ) rounds, w. h. p. . An orientation of the edges of a graph is said to be m-acyclic if and only if the orientation does not have cycles of length at most m.
Analysis(Part I) n Lemma: After O((logn)1/2) rounds, every path of length (logn)1/2 has at least one colored node, w. h. p. . Proof: p p p p(logn)1/2 Each node has constant number of neighbors, so the probability that a node is not colored at a round is at most p (constant). The probability that none of the nodes at the path is colored at a round is at most p(logn)1/2.
Analysis(Part I) p p p (logn)1/2 nodes p p(logn)1/2 c(logn)1/2 rounds p(logn)1/2 pclogn =1/n-clogp
Analysis(Part II) After O((logn)1/2) rounds, every connected component of uncolored nodes have diameter at most (logn)1/2, w. h. p. . n Orientation is (logn)1/2 -acyclic, so there can be no cycles on connected component of uncolored nodes. n This provides a topological ordering. n
Analysis(Part II) 1 0 0 1 2 2 3 4 0 label(u)= 1+max v: v u label v Maximum label is (logn)1/2. All nodes will be colored after (logn)1/2 rounds. if no entering edge v u otherwise
Lowerbound n For every Las Vegas algorithm A, there is infinite family of oriented graphs G such that A has complexity of at least ((logn)1/2), on expectation, to compute a proper vertex coloring. A Las Vegas algorithm is a randomized algorithm that always produces a correct result, with the only variation being its runtime.
Coloring Oriented Graphs n General Case: Arbitrary degree graphs n Algorithm Color-Wait For each round – If u is uncolored and does not have any uncolored neighbor w such that w u then node u is colored with the lowest available color
Algorithm Color-Wait (Example) no node with entering edge for node u u v no uncolored node with entering edge for node v u v a c b Round 1 u c b no node with entering edge for node b Round 2 no uncolored node with entering edge for node c v a c b Round 3 a
Coloring Oriented Graphs n While there are uncolored nodes – Use Algorithm Color-Random for loglog n rounds – If = ((logn)1/2 loglogn) • Use Algorithm Color-Random for (8/ +4) (logn)1/2/loglogn rounds Phase II – Else • Use Algorithm Color-Random for 4(logn)1/2 rounds – Use Algorithm Color-Wait (logn)1/2 rounds constant, >0, > log +1/2 n loglog n Phase III
Phase I Use Algorithm Color-Random for loglog n rounds n Lemma: After phase I, the number of uncolored neighbors of any node reduces to log n w. h. p. .
Phase II If = ((logn)1/2 loglogn) Use Algorithm Color-Random for (8/ +4) (logn)1/2/loglogn rounds Else Use Algorithm Color-Random for 4(logn)1/2 rounds n Lemma: After phase II, every path of length (logn)1/2 has at least one colored node, w. h. p. .
Phase III Use Algorithm Color-Wait (logn)1/2 rounds n After phase III, all nodes will be colored.
Coloring Oriented Graphs n Given an -acyclic oriented graph G=(V, E) of maximum degree , for any constant >0 a (1+ ) vertex coloring of G can be obtained in O(log ) + O( log n) rounds, with high probability.
Results for any constant >0
Conclusion & Open Problems Distributed coloring algorithm n Acyclic orientations, better bounds n Deterministic distributed algorithms for +1 -coloring that run in polylogarithmic number of rounds n
References K. Kothapalli, C. Scheideler, M. Onus, C. Schindelhauer. Distributed coloring with O(logn) bits. submitted to IPDPS 06. n M. Luby. A simple parallel algorithm for the maximal independent set problem. STOC 1985. n
- Slides: 25