distributed coloring discrete mathematics and algorithms seminar melih onus november 10 2005

25
Distributed Coloring Discrete Mathematics and Algorithms Seminar Melih Onus November 10 2005

Upload: liliana-blankenship

Post on 29-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

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.