Iterated Greedy Graph Coloring and the Difficulty Landscape

Technical report TR92-07. Many heuristic algorithms have been proposed for graph coloring. The simplest is perhaps the greedy algorithm. Many variations have been proposed for this algorithm at various levels of sophistication, but it is generally assumed that the coloring will occur in a single attempt. We note that if a new permutation of the vertices is chosen which respects the independent sets of a previous coloring, then applying the greedy algorithm will result in a new coloring in which the number of colors used does not increase, yet may decrease. We introduce several heuristics for generating new permutations that are fast when implemented and effective in reducing the coloring number. The resulting Iterated Greedy algorithm(IG) can obtain colorings in the range 100 to 103 on graphs in G(1000,1/2). More interestingly, it can optimally color k-colorable graphs with k up to 60 and n=1000, exceeding results of anything in the literature for these graphs. We couple this algorithm with several other coloring algorithms, including a modified Tabu search, and one that tries to find large independent sets using a pruned backtrack. With these combined algorithms we find 86 and 87 colorings for G(1000,1/2). Finally, we explore the areas of difficulty in probabilistic graph space under a natural parameterization. Specifically, we check our system on k-colorable graphs in G(300,p,k) for 0.05<=p<=0.95 and 2<=k<=105. We find a narrow ridge where the algorithms fail to find the specified coloring, but easy success everywhere else. | TRID-ID TR92-07