next up previous
Next: Parallel Gauss-Seidel Implementation Up: A Parallel Gauss-Seidel Algorithm Previous: Node-tearing Nodal Analysis

Graph Coloring

Multi-coloring a graph G is an NP-complete problem that attempts to define a minimum number of colors for the nodes of a graph where no adjacent nodes are assigned the same color [8,11]. A greedy heuristic can yield an optimal ordering if the vertices are visited in the correct order. We selected the saturation degree ordering algorithm [8], but modified it to include load-balancing. The saturation degree ordering algorithm selects a node in the graph that has the largest number of differently colored neighbors. We have added the capability to the saturation degree ordering algorithm to select the color for a node in a manner that equalizes the number of nodes with a particular color. We simply select the consistent color with the fewest number of nodes.

We present our version of the saturation degree ordering-based graph multi-coloring algorithm in figure 5. The computational complexity of this algorithm is , where defines the set of nodes in adjacent to . The graphs encountered for coloring in this work were very sparse, generally with no more than three nodes adjacent to any single node.

 
Figure 5: The Graph Multi-Coloring Algorithm 



David P. Koester
Sun Oct 22 15:29:26 EDT 1995