Efficient Vertex-Centric Graph Coloring

Date

2020-05

Authors

van Til, Isaac Willem

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Graph coloring is a way of labeling (with labels traditionally referred to as “colors”) the elements of a graph with the constraint that no two adjacent vertices have the same color and that as few colors should be used as possible. In addition to many theoretical problems, graph coloring lends itself to efficiently solving a variety of practical applications (e.g., schedule generation, resource allocation, networking, and solving Sudoku). The problem with graph coloring is that finding a solution with the minimal number of colors is NP-hard, i.e., no known polynomial time algorithm can solve it optimally (so computing the solution cannot be done quickly). I have written a series of algorithms that take advantage of high amounts of parallelization to produce acceptable colorings. An analysis of the colorings and runtimes of each approach compared to other solutions from the literature shows that acceptable colorings are produced in a reasonable time.

Description

Keywords

graph coloring heuristic, parallel algorithm, OpenMP, many-core architecture, vertex coloring, Honors College

Citation

van Til, I. W. (2020). Efficient vertex-centric graph coloring (Unpublished thesis). Texas State University, San Marcos, Texas.

Rights

Rights Holder

Rights License

Rights URI