Distributed Coloring

Preview:

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.

Recommended