|This book treats graph colouring as an algorithmic problem, with a strong emphasis on practical applications. The author describes and analyses some of the best-known algorithms for colouring arbitrary graphs, focusing on whether these heuristics can provide optimal solutions in some cases; how they perform on graphs where the chromatic number is unknown; and whether they can produce better solutions than other algorithms for certain types of graphs, and why. The introductory chapters explain graph colouring, and bounds and constructive algorithms. The author then shows how advanced, modern techniques can be applied to classic real-world operational research problems such as seating plans, sports scheduling, and university timetabling. He includes many examples, suggestions for further reading, and historical notes, and the book is supplemented by a website with an online suite of downloadable code. The book will be of value to researchers, graduate students, and practitioners in the areas of operations research, theoretical computer science, optimization, and computational intelligence. The reader should have elementary knowledge of sets, matrices, and enumerative combinatorics.