Edge-Coloring and f-Coloring for Various Classes of Graphs

Report 1 Downloads 103 Views
Edge-Coloring and f-Coloring for Various Classes of Graphs Xiao Zhou and Takao Nishizeki * Graduate School of Information Sciences Tohoku University, Sendai 980-77, Japan

Abstract

In an ordinary edge-coloring of a graph G = (V, E) each color appears at each vertex v E V at most once. An f-coloring is a generalized coloring in which each color appears at each vertex v E V at most f(v) times. This paper gives efficient sequential and parallel algorithms which find ordinary edge-colorings and f-colorings for various classes of graphs such as bipartite graphs, planar graphs, graphs of fixed genus, partial k-trees, s-degenerate graphs, graphs of fixed arborieity etc.

1

Introduction

This paper deals with a simple graph G which has no multiple edge or no self-loops. An edge-coloring of a graph G is to color all the edges of G so that no two adjacent edges are colored with the same color. The minimum number of colors needed for an edge-coloring is called the chromatic index of G and denoted by x'(G). In this paper the maximum degree of a graph G is denoted by A(G) or simply by A. Vizing showed that x'(G) = A or A + 1 for any simple graph G [6, 22]. The edge-coloring problem is to find an edge-coloring of G using X'(G) colors. Let f be a function which assigns a positive integer f(v) to each vertex v E V. Then an f-coloring of G is to color all the edges of G so that, for each vertex v E V, at most f(v) edges incident with v are colored with the same color. The minimum number of colors needed for all f-coloring is called the f-chromatic index of G and denoted by X'I(G). The f-coloring problem is to find an f-coloring of G using X't(G) colors. Let A / ( G ) = max, ev[d(v)/f(v)] where d(v) is the degree of vertex v. Hakimi and Kariv have proved that X'I(G) = A I or A / + 1 for any simple graph G [9]. An ordinary edge-coloring is a special case of an f-coloring for which f(v) = 1 for every vertex v E V. The edge-coloring and f-coloring have applications to scheduling problems like the file transfer problem in a computer network [4, 16, 17]. In the model a vertex of a graph G represents a computer, and an edge does a file which one wishes to transfer between the two computers corresponding to its ends. The integer f(v) is the number of communication ports available at a computer v. The edges colored with the same color represent files that can be transferred in the network simultaneously. Thus an f-coloring of G using x~(G) colors corresponds to a scheduling of file transfers with the minimum finishing time. *E-mail:(zhoulnishi)@ecei.tohoku.ac.jp

Refs. [22] [14] [19] [24]

[6] our8

ours ours

Upper bounds on X~ A+ 1 A max{4, A} max{2k, A)

max{8, A ) max{2[(5 + x / 4 " ~ - ~ / 2 J , A} max{2s, A) max{4a - 2, A}

ours

Table 3: Upper bounds on the f-chromatic index.

ours

max{2E(s+ j'gF~'~T)/2J,A,} max{2s, AI } max{4a - 2, A! }

ours

max{g, A, }

max{2k, A! }

[9] ours

max(4, A/}

[9]

A! + 1 A!

Simple graph Bipartite Series-parallel Partial k-tree Planar graph Genus g > I Degeneracy s Arboricity a

Refs.

Upper bounds on X~

. Classes of graphs

Table 1: Upper bounds on the chromatic index.

Classe~ of graphs Simple graph Bipartite Series-parallel Partial k-tree Planar graph Genus g > 1 Degeneracy s Arboricity a

Genus g _> 1 Partial k-tree Degeneracy s Arboricity a

Planar graph

Bipartite

Simple graph

Classes of graphs

Genus g ~ 1 Degeneracy s Arboricity a .=.

Planar graph

Bipartite Partial k-tree

Simple graph

Classesof graphs

O(Iog a n) O(log 3 n) O(Iog a n) O(log a n) O(n logo n)

O(n loga n) O(n log3 n) O(nlog3 n)

max{r (9+4' +-~-~z-1 - 1 , a ) m ~ { r ( , , + 2)=/21 - 1, A) max( f(a + 2)2/2] - 1, A}

max(9,A}

max(19, A)

O(Iog n n)

O(nlogn)

O(n) A! O(n logs n) max{ 19, A! } O(n log~n) max{9, Ay} O(n log3 n) max{[~+~ " +z~2]_ 1,A/) O( n log3 n) max{ r(k + 2)2/2] - 1, A! } O( n loga n) maxiffs + 2)2/21 - 1, a / } O(n logs n) max{ [(u + 2)2/2] - 1, A / }

A/-I-1

Numbers of used colors

Table 4: Algorithms for the f-coloring.

O(l& .) O(Iog3 n)

O(Iog 2 n) O(log a n) O(Iog a n) O(n log n) O(n log n) O(n log n) O(n log n)

O(log~ n)

open

Parallel I Operations

O(n)

Time

O( m log n)

O(min{mAl log n,

Sequential Time

Table 2: Algorithms for the ordinary edge-coloring.

O(n log n) O(n log n) O(n log n)

O(n log n)

O(n)

O(logn)

a X'

O(log a n)

O(n)

O(n) O(n) O(log 2 n) O(nlogs n)

Numbers of used colors A+I

Parallel [ Operations open

Time

O(mlog n)

Sequential Time O(min{nA log n,

Ours

Ours

Ours Ours Ours Ours Ours

Ours

Refs.

Ours

Ours

Ours

[2]

[3]

[5, T, 15] [24}

[s]

Refs.

rO O O

201

Since the ordinary edge-coloring problem is NP-complete [11], the f-coloring problem is also NP-complete. Therefore it is very unlikely that there exists a sequential algorithm which solves the ordinary edge-coloring problem or the f-coloring problem in polynomial time. However it is known that any simple graph G can be edge-colored with A -4- 1 colors in polynomial time [19, 21]. The best known algorithm for edgecoloring G with A + I colors runs in time O(min{nA log n, m v ~ ' ~ ' n ' } ) [8]. Throughout this paper n denotes the number of the vertices and m the number of the edges in G. Hakimi and Kariv's proof [9] yields a sequential algorithm which f-colors any graph using A ! + 1 colors in time O(mn). On the other hand, there are polynomial-time algorithms which find an edge-coloring using x'(G) colors for restricted classes of graphs, as follows: (a) an O(m log n)-time sequential algorithm for bipartite graphs [5, 7]; (b) a linear-time sequential algorithm for planar graphs of A _> 19 [3]; (c) an O ( n l o g n)-time sequential algorithm for planar graphs of A _> 9 [2]; (d) a linear-time sequential algorithm for series-parallel multigraphs [25]; and (e) a linear-time sequential algorithm for partial k-trees [24]. However no efficient algorithms for the f-coloring problem have been obtained even for restricted classes of graphs. On the other hand, NC parallel algorithms for finding an optimal edge-coloring have been obtained only for a few restricted classes of graphs such as series-parallel multigraphs [25], partial k-trees [23] and planar graphs with maximum degree A > 9 or A > 19 [2, 3]. Furthermore an NC parallel algorithm for finding edge-colorings with A + 1 colors has not been known for general graphs except the case when A is bounded [13]. In this paper we first obtain new upper bounds on the chromatic index for three classes of graphs: graphs of genus g > 1, s-degenerate graphs, and graphs of arboricity a. (These new bounds together with known ones are listed in Table 1.) We then give efficient sequential and NC parallel algorithms which find edge-colorings for the three classes of graphs. (These new algorithms together with known ones are listed in Table 2.) We next obtain new upper bounds on the f-chromatic index for six classes of graphs: bipartite graphs, planar graphs, graphs of genus g > 1, partial k-trees, sdegenerate graphs and graphs of arboricity a. (These results are listed in Table 3.) We finally give efficient sequential and NC parallel algorithms which find f-colorings for the six classes of graphs. (These results are listed in Table 4.) In this paper the parallel computation model we use is a concurrent-read exclusive-write parallel random access machine ( C R E W PRAM).

2

S u m m a r y Tables

In this section we summarize old results and our new ones in four tables. We first define various classes of graphs. Let s be a positive integer. A graph G is s-degenerate if the vertices of G can be ordered vl, v2, ..., v,~ such that d(vi,Gi) 1, and that x'(G) < max{4a(G) - 2, A} because s(G) < 2a(G) - 1 as shown in Section 3. The proofs of the upper bounds on the chromatic index immediately yield sequential algorithms which find an edge-coloring using colors no more than the bounds in O(mn) time. In Section 4 we give a more efficient algorithm which may use colors more than the bounds. The algorithm edge-colors a graph G with max{ [(a(G) + 2)2/2] - 1, A} colors in time O(nlogn). Since a(G) < s(G) and s(G) < [(5 + X/489(G) + 1)/21, [(a(G) + 2)2/2] _< [(s(G) + 2)2/2] and [(a(G) + 2)2/2] < [(9 + X/489(G) + 1)2/8]. These consequences together with the known ones are listed in Table 2. In Section 5 we prove that the f-coloring problem on a graph G can be reduced to the edge-coloring problem on a new graph G 1. Then, using the reduction, we derive new upper bounds on the f-chromatic index from the upper bounds on the chromatic index listed in Table 1. The new upper bounds are listed in Table 3. Furthermore, using the reduction, we derive new efficient sequential and NC parallel algorithms for the f-coloring problem from the algorithms for the edge-coloring problem listed in Table 2. The new algorithms are listed in Table 4.

3

Chromatic

Index

By the classical Vizing's theorem, x'(G) = ~ or A + 1 for any simple graph G [6, 22]. The main result of this section is the following theorem, whose proof is given later. T h e o r e m 3.1 x'(G) = A ( G ) /f A(G) >__2s(G). We observe the following upper bounds on the minimum degree 6(G) expressed in term of a(G). L e m m a 3.2 6(G) < 2 a ( a ) - 1.

203 P r o o f . Assume that a graph G = (V, E) has no isolated vertices. Let n = IVI, and let n' be the number of all the vertices of degree < 2a(G). Then clearly n'+2a(G)(n-n') < 21E I. On the other hand G can be partitioned into a(G) forests, and any forest has at most n - 1 edges. Therefore IEI _< a(G)(n - 1). Thus n' > 2a/(2a - 1) > 1. Q.g.D. If g ( a ) > 1, then ~ ( a ) < [ ( 5 + k / 4 8 g ( a ) + 1)/2J [10, 12]. Therefore by Lemma 3.2 we can immediately derive'the following upper bounds on s(G) in terms of a(G) and g(G). Note that a(G') < a(G) and g(G') < g(G) if G' is a subgraph of G. Lemma 3.3 (a) s(G) 9. Indeed the fact was proved only by using the property that a(G) _< 3 for a planar graph G. We have the following lemma with a flavor of generalization of the fact. L e m m a 4.3 If a graph G has no isolated vertices, a(G) is bounded, and A(G) > ca(G),

then G has O(n) eliminable edges. Chrobak and Nishizeki's algorithm [2] correctly works for any graph with bounded A having O(n) eliminable edges. Therefore by Lemma 4.3 we have the following lemma.

205

L e m m a 4.4 If a(G) and A(G) are bounded, then G can be edge-colored by at most max{ca(G), A} colors in O(nlog n) sequential time or in O(log 3 n) parallel time with O(nlog 3 n) operations. By Lemma 4.4 it suffices to give an algorithm to edge-color G using A ( G ) colors only for the case in which A is not bounded, say A(G) > 2c~(G). Our idea is to decompose G into several subgraphs G1, G 2 , ' " , G3 of small maximum degrees A(Gi) such that A ( G ) = ~ i ~ 1 A ( G i ) and ca(G) < x ' ( G i ) = A(Gi) < 2ca(G) for each i, and hence an optimal edge-coloring of G can be obtained simply by extending those of G1, G 2 , . . . , Gj. Note that the optimal edge-colorings of Ga, G ~ , . . . , Gj can be found in the complexities as shown in Lemma 4.4. Let c be a bounded positive integer, and let E l , E 2 , - ' - , Ej be a partition of E. Denote by Gi = G[Ei] the subgraph of G induced by the edge set Ei. We say that El, E 2 , . . . , E j is a (A, c)-partition of E if G~ = G[E~], 1 < i < j, satisfies (i) A ( G ) = ~=, A(Gi); and (ii) A ( G i ) = c f o r e a c h i , l