Upload
dusan
View
73
Download
0
Embed Size (px)
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 Presentation
Citation preview
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.