distributed coloring
DESCRIPTION
Distributed Coloring. Discrete Mathematics and Algorithms Seminar Melih Onus November 10 2005. Outline. Vertex Coloring Model Luby’s Algorithm Coloring Constant Degree Oriented Graphs Coloring Oriented Graphs Conclusion & Open Problems. Vertex Coloring. - PowerPoint PPT PresentationTRANSCRIPT
Distributed Coloring
Discrete Mathematics and Algorithms Seminar
Melih Onus
November 10 2005
Outline
Vertex Coloring Model Luby’s Algorithm Coloring Constant Degree Oriented Graphs Coloring Oriented Graphs Conclusion & Open Problems
Vertex Coloring
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
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
With orientation, u can be colored provided that there is no edge w v and node w also chooses the same color
u v u v
With existing algorithms both remain uncolored
Using orientation, u gets colored red
Luby’s algorithm
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 Works in O(log n) rounds w.h.p.
a
v
bc
Luby’s algorithm (Example)
Round 1
u v
a
bc
Round 2
u v
a
bc
Round 3
u v
a
bc
Round 4
u
Coloring Constant Degree Oriented Graphs
Special case: Constant degree graphs
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)
Round 1
u v
a
bc
Round 2
u v
a
bc
Round 3
u v
a
bc
Algorithm Color-Random
For constant degree graph with n nodes provided with -acyclic orientation, our algorithm obtains a +1 coloring in O( ) rounds, w.h.p..nlog
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.
nlog
p p p p p p p p p p p p
Analysis(Part I)
Lemma: After O((logn)1/2) rounds, every path of length (logn)1/2 has at least one colored node, w.h.p..
Proof:
(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.
p p(logn)1/2
Analysis(Part I)
p p p p p p p p p p p p
(logn)1/2 nodes
p(logn)1/2
c(logn)1/2 rounds
p(logn)1/2
p(logn)1/2
pclogn =1/n-clogp
p(logn)1/2
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..
Orientation is (logn)1/2-acyclic, so there can be no cycles on connected component of uncolored nodes.
This provides a topological ordering.
Analysis(Part II)
label(u)=0 if no entering edge vu1+maxv:vu label v otherwise
00
1
12 2
3
4
Maximum label is (logn)1/2.
All nodes will be colored after (logn)1/2 rounds.
Lowerbound
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
General Case: Arbitrary degree graphs
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
uu v
c b
Algorithm Color-Wait (Example)
Round 1
v
a
c b
Round 2
a
v
c b
Round 3
u
a
no node with entering edge for node u
no node with entering edge for node b
no uncolored node with entering edge for node c
no uncolored node with entering edge for node v
Coloring Oriented Graphs
While there are uncolored nodes– Use Algorithm Color-Random for loglog n rounds– If = ((logn)1/2loglogn)
• Use Algorithm Color-Random for (8/+4) (logn)1/2/loglogn rounds
– Else • Use Algorithm Color-Random for 4(logn)1/2 rounds
– Use Algorithm Color-Wait (logn)1/2 rounds
constant, >0, > log+1/2n loglog n
Phase I
Phase II
Phase III
Phase I
Lemma: After phase I, the number of uncolored neighbors of any node reduces to log n w.h.p..
Use Algorithm Color-Random for loglog n rounds
Phase II
Lemma: After phase II, every path of length (logn)1/2 has at least one colored node, w.h.p..
If = ((logn)1/2loglogn) Use Algorithm Color-Random for (8/+4) (logn)1/2/loglogn rounds
Else Use Algorithm Color-Random for 4(logn)1/2 rounds
Phase III
After phase III, all nodes will be colored.
Use Algorithm Color-Wait (logn)1/2 rounds
Coloring Oriented Graphs
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 log n) rounds, with high probability.nlog
nlog
Results
for any constant >0
Conclusion & Open Problems
Distributed coloring algorithm Acyclic orientations, better bounds Deterministic distributed algorithms for +1-coloring
that run in polylogarithmic number of rounds
References
K. Kothapalli, C. Scheideler, M. Onus, C. Schindelhauer. Distributed coloring with O(logn) bits. submitted to IPDPS 06.
M. Luby. A simple parallel algorithm for the maximal independent set problem. STOC 1985.