Parallel and On-Line Graph Coloring 1 Introduction
Total Page:16
File Type:pdf, Size:1020Kb
Parallel and Online Graph Coloring Magns M Halldrsson Science Institute University of Iceland IS Reykjavik Iceland Abstract We discover a surprising connection b etween graph coloring in two orthogonal paradigms parallel and online computing We present a randomized online coloring algorithm with p a p erformance ratio of O n log n an improvement of log n factor over the previous b est known algorithm of Vishwanathan Also from the same principles we construct a parallel coloring algorithm with the same p erformance ratio for the rst such result As a byproduct we obtain a parallel approximation for the indep endent set problem Introduction At the heart of most partition and allo cation problems is a graph coloring question The graph coloring problem involves assigning values or colors to the vertices of a graph so that adjacent vertices are assigned distinct colors with the ob jective of minimizing the number of colors used We seek graph coloring algorithms that are b oth eective and ecient Eciency means among other things using computation time b ounded by a p olynomial in the size of the input Eectiveness means that the quality of the coloring is never much worse than the optimal coloring it is measured in terms of the performance ratio of the algorithm dened as the ratio of the number of colors used to the minimum number of colors needed maximized over all inputs In this pap er we present a reasonably eective and ecient graph coloring algorithm that yields b oth parallel and online algorithms A parallel algorithm is said to b e ecient if it uses time p olylogarithmic and pro cessors p olynomial in the size of the input The coloring problem is of central imp ortance in parallel and distributed computation as a means of scheduling nonconicting concurrent tasks Previous parallel algorithm have attained the degree b ound of Bro okss theorem coloring of planar graphs and some other sp ecial cases but no nontrivial p erformance guarantee on general k k graph was known We present a parallel algorithm that uses at most n colors on k colorable graphs for a p erformance ratio of O n log n where n is the number of vertices An algorithm is said to b e online if the color assigned to vertex i is indep endent of ver tices with index greater than i This corresp onds to various dynamic situations such as the assignments of frequencies to mobile users The online graph coloring problem has b een widely studied and for various other reasons as well In particular an algorithm that improves the trivial p erformance ratio to O n log n was given by Lovsz Saks and Trotter and p p n on colorable graph and O n log n ratio on a randomized algorithm with ratio of O email mmhrhihiis Research partly p erformed at Rutgers University Tokyo Institute of Technology and Japan Advanced Institute of Science and Technology Hokuriku and supp orted there by a DIMACS Graduate Fellowship a Toshiba Endowed Chair and a PFU Endowed Chair resp ectively general graphs was given by Vishwanathan We improve here the randomized algorithm of for a p erformance ratio of O n log n We rst present in Section a sequential graph coloring algorithm with a p erformance ratio of O n log n and use it to derive b oth a parallel algorithm in Section and a randomized on line algorithm in Section with the same p erformance ratio The randomized algorithm is an p log n improvement of an algorithm of Vishwanathan and the p erformance ratio of O n compares favorably with the lower b ound for randomized online coloring of n log n The p erformance ratio of the parallel algorithm is the rst of its kind It also compares favor ably with the b est p erformance ratio known for sequential coloring of O nlog log n log n and the b est announced lower b ound known for that quantity assuming P NP of n for each Finally using the parallel coloring algorithm we obtain in Section a O nlog log n log n p erformance ratio for parallel indep endent set problem This also com pares favorably to the sequential upp er b ound of O n log n and the announced lower b ound of n for each See Table for comparisons Online Parallel Sequential Deterministic Randomized p log n O nlg lg n log n Known upp er b ound O n log n O n Here O n log n O n log n Known lower b ounds n log n n log n n n Table New and known results on approximate graph coloring This connection b etween apparently unrelated algorithmic paradigms is quite surprising as the two paradigms we study are seemingly orthogonal and incompatible Parallel computation is inherently oline and online computation inherently sequential Nevertheless there are certain strong similarities in particular b oth require a lo ose coupling among subproblems Parallel algorithms b enet greatly from lo cality which can b e thought of as a case of limited information similar to the online regime Online algorithms know more ab out certain other subproblems but with less control over what they learn Approximate Coloring Algorithms In this section we present and analyze the underlying sequential oline coloring algorithm that forms the basis of the parallel and online variants Let us rst review what we have learned from previous metho ds First consider an algorithm due to Wigderson Given a threecolorable graph on n vertices we lo ok for a vertex of degree p n The neighborho o d of that vertex must b e twocolorable so we color these neighbors at least with two fresh new colors in linear time and remove them from the graph We rep eat this until p p n for at most n iterations The remaining graph can easily b e maximum degree falls b elow p p n colors for a combined total of n colors This principle colored using max degree can b e generalized to graphs of larger chromatic number where the key observation is that the neighborho o d of any no de in a k colorable graph must b e k colorable This allows us the break the problem into a collection of somewhat easier subproblems The problem with this approach is that it lls the color classes in sequence We need a metho d that accumulates many color classes concurrently rather than searching for individual indep endent sets We extract an idea from the online algorithm of Vishwanathan A simple greedy algorithm sometimes referred to as First Fit works as follows The vertices are pro cessed in sequence according to some arbitrary order and a vertex is assigned to the rst color to which none of the preceding neighbors of the vertex have b een assigned If we are given a limited number of colors it may not b e p ossible to color all the vertices The resulting coloring of a subset of the vertices is called a maximal partial coloring of the graph A maximal partial coloring is an assignment of some of the no des into xed number of greedy color classes so that each remaining no de is adjacent to some no de in each greedy class The imp ortant p oint is that each color class partitions the remaining no des into subsets of the neighborho o ds of the no des in the color class If we choose a small class the remaining uncolored no des induce relatively few subproblems The total number of colors used is then the number of greedy color classes plus the sum of the number of colors used in the subproblems Such a maximal partial coloring is easy to achieve sequentially via the First Fit algorithm which assigns a vertex to the rst compatible color class if one exists KColorGk b egin if k BipartiteColorG else if k log n Assign each vertex a dierent color else k k k s sn k nk ResidueNo des MaximalPartialColorGs Find the smallest greedy color class and let w w b e its no des p Partition the ResidueNo des into R R such that no des in R are adjacent to w p i i for i to p ColorR k i end Figure An approximation algorithm for k colorable graphs We state the main algorithm in Figure The algorithm nds a maximal partial coloring partitions the remaining no des around the smallest color class and recurses on those subprob lems with the recursion b ottoming out at bipartite graphs When the chromatic number is to o large for us to handle with resp ect to the size of the graph we settle on the trivial coloring of one color p er vertex Theorem The number of colors used by Color on k colorable graphs is at most f k log k k k n where f k O k Proof Let An k denote the maximum number of colors used by the algorithm to color any k k k k colorable graph on n vertices Let f k denote k k and let k k An k denote f k n Our prop osition is that An k An k for all p ositive integers n k k The pro of pro ceeds by induction on k with the base case k established by an optimal bipartite algorithm Hence assume from here on that An k An k for all p ositive integers n The number of colors used by our algorithm is the number of greedy colors s sn k plus the number of colors used in the t subproblems each on m vertices To maintain sanity j and simplicity of presentation we ignore all ceilings Note that An k k sn k so our main task is to show that the number of colors used in the subproblems b e at most k k k sn k k n Intuitively we nd that the worst case o ccurs when the subproblems are all of equal size and then derive the worstcase number of subproblems If g is the total number of vertices in the greedy color classes then the number of vertices in the smallest class and thus the number of subproblems is at most g s By the inductive assumption we can assume that the number of colors used in the subproblems is b ounded by A Thus g s X Am