Un grafo es un conjunto de objetos llamados vértices y una selección de pares de vértices unidos gráficamente por líneas llamadas aristas. Típicamente, un grafo se representa mediante una serie de puntos o circulos (los vértices) conectados por líneas (las aristas).
El problema de coloración de grafos se ha estudiado durante varias décadas, lamentablemente, el problema de coloración de grafos arbitrario con el menor número conocido de colores es un problema que se clasifica entre los llamados “NP-COMPLETOS” para los cuales, las únicas soluciones conocidas consisten en probar todas las posibilidades. Realizado esto a través de métodos y algoritmos informáticos representaría un tiempo de ejecución de T(n₂).
El problema básicamente consiste en colorear los vértices de los grafos con el menor número de colores posibles. La única regla es que no pueden quedar coloreados 2 vértices unidos por una arista con el mismo color. De este modo, para resolver este problema del modo “ávido” o en otras palabras empírico, se procede a colorear el primer vértice, luego se examinan la lista de los no coloreados y se verifica si no hay una arista que lo una con un vértice que ya tenga asignado el nuevo color, si tal arista no existe, se le asigna el nuevo color al vértice.
Gracias a la teoría de grafos se pueden resolver diversos problemas como por ejemplo la síntesis de circuitos secuenciales, contadores o sistemas de apertura. Se utiliza para diferentes áreas por ejemplo, Dibujo computacional y en todas las áreas de Ingeniería. Como caso práctico podemos incluir el descrito en el libro “ESTRUCTURA DE DATOS Y ALGORITMOS” de Alfred V. AHO, acerca de un modelo matemático que simplificaría el diseño de un semáforo para una intersección complicada de 5 calles. El programa o algoritmo debe estar diseñado para recibir como entradas cada uno de los giros de autos posibles.

ED, EC, EB, EA, DC, DB, DA, BA, BD, BC, AD, AC, AB.
Diseñaremos un grafo cuyos vértices representen los giros posibles y uniremos por las aristas cada giro no permitido evitando una colisión vehicular. Luego procedemos a la coloración del grafo del modo descrito anteriormente. Un procedimiento realizado ávidamente nos podría conducir a un resultado similar a este:
De este modo determinamos que cada color representa una serie de posibles giros de vehículos que podrían circular libremente sin el temor de impactar con otros posibles giros. Esta es un ejemplo práctico de una aplicación cotidiana en campos de ingeniería; Sin embargo esta estructura puede ser implementada en muchos más campos profesionales y matemáticos.
Referencias:
- Libro "Estructura de Datos" de Alfred V. Aho, John E. Hopcroft, Jefrey D. Ullman