1 Introducción

La coloración de mapas de la tierra es uno de los problemas de optimización más estudiados en la Teoría de Grafos. El problema de la coloración de un mapa consiste en asignar un color a cada vértice (país) de tal manera que dos vértices conectados por una arista obtengan colores diferentes, minimizando el número total de colores utilizados.

Ahora, la siguiente afirmación no es verdadera:

"Es posible asignar uno de cuatro colores a cada país en cualquier mapa, de manera que ningún par de países que compartan una frontera tengan el mismo color." [1]

Sin embargo, este no es el enunciado del famoso Teorema de los Cuatro Colores, que fue demostrado hace más de 30 años utilizando numerosas comprobaciones por computadora.

La figura 1 muestra un pequeño ejemplo de un mapa que necesita cinco colores si cada par de países adyacentes debe recibir colores diferentes. La característica importante es que un país (5) es desconectado y está compuesto por dos regiones.

Un mapa plano que necesita cinco colores.  Mapa tomado de [1].
Figure 1: Un mapa plano que necesita cinco colores. Mapa tomado de [1].

Los mapas que incluyen países desconectados son posibles; un ejemplo es el mapa de América del Norte. Esto plantea la siguiente pregunta: ¿Es posible colorear el mapa actual del mundo con cuatro colores de manera que todas las partes de cada país reciban el mismo color y que dos países diferentes con un arco fronterizo en común no reciban el mismo color? Para dar una respuesta afirmativa a dicha pregunta nos apoyaremos en el siguiente teorema.

Teorema de los Cuatro Colores: Este teorema establece que cualquier mapa dibujado en el plano puede colorearse con solo cuatro colores, de tal manera que cada par de regiones conectadas que comparten un borde reciban colores diferentes.

Escrito en términos de grafos:

Teorema 1: [2]Cualquier grafo planar simple es -coloreable.

Donde:

Definición 1: Un grafo es una pareja ordenada , donde es un conjunto no vacío de objetos llamados vértices (nodos) y es un conjunto de aristas (líneas) entre los pares de vértices de . Antes de continuar estableceremos la siguiente notación.

  • Sea el conjunto de vértices. Es habitual utilizar letras minúsculas para representar dichos vértices, es decir . También se usan letras enumeradas con subíndices, esto es .
  • El conjunto de aristas , describe una relación entre los vértices de . Comúnmente se describe a etiquetando cada arista, es decir, , donde la arista o denota la conexión entre los vértices y . También usaremos la siguiente manera más simplificada .

Definición 2: Una coloración (o coloración propia) de vértices en grafos es una asignación de colores a los vértices de un grafo . De tal manera que cualquiera vértices adyacentes tienen distintos colores. Es decir, se busca una función

de tal forma que si

  • Una coloración usando exactamente colores se llama s-coloración.
  • Un grafo es k-coloreable si existe una -coloración de G para algún entero .

Este resultado fue propuesto por primera vez en 1852 por Francis Guthrie. Una demostración fue publicada en 1879 por Kempe, pero 11 años después, Heawood encontró un error en la prueba. Finalmente, en 1976, el teorema fue demostrado por Appel y Haken, aunque de una manera inusual. Brevemente, la demostración de Appel y Haken consiste en mostrar que cada mapa plano contiene solo una de una lista de al menos 1,800 configuraciones, y que cada configuración admite una reducción, permitiendo una demostración por inducción. Aunque los números involucrados son inusualmente grandes, la parte más inusual de la prueba es que se utilizaron aproximadamente 1,200 horas de tiempo de computadora para generar la lista de 1,800 configuraciones y verificar que las coloraciones de estas admitían la reducción necesaria [1].

El mapa de la figura 1 también podría representar límites políticos en los que el área 5 represente, por ejemplo, un imperio. Cuando Heawood encontró tanto un error en el argumento de Kempe como descubrió que no podía corregirlo, inventó generalizaciones sobre la coloración de mapas que, hasta cierto punto, pudo resolver. Su investigación dio origen al campo de la Teoría de Grafos Topológicos tal como se estudia hoy en día. Primero investigó el problema de la coloración de imperios: si los mapas están formados por países unidos en imperios, ¿cuántos colores se necesitan para colorear tales mapas, siempre que todos los países en un imperio reciban el mismo color y que los imperios con una frontera común reciban colores diferentes?

Ringel sugirió una variación del problema de la coloración de imperios. Supongamos que la Luna fuera colonizada y quisiéramos colorear un mapa de la tierra y la luna con el mínimo número de colores de tal forma que:

  1. Las regiones adyacentes en la tierra o en la luna reciban colores diferentes, y
  2. Un país en la tierra y su colonia lunar reciban el mismo color.

A este problema se le conoce como el Problema de la Tierra-Luna. Este problema ha estado abierto durante más de 20 años.

Por último se añade un teorema y un corolario que usaremos más adelante:

Teorema 2: Sea G un grafo de orden n y tamaño m, cuyo conjunto de vértices es . Entonces se satisface que;

Corolario 1: Si es un grafo planar de orden y tamaño , entonces se cumple la siguiente desigualdad:

2 Complejidad computacional de problemas que involucran coloración en grafos.

Comenzaremos con algunas definiciones antes de pasar a los resultados principales. Tanto en las matemáticas como en la teoría de la informática se han estudiado diferentes aspectos de los problemas de decisión. Algunos de estos estudios se enfocan en determinar si existen algoritmos eficientes para resolverlos y en qué medida algunos problemas de decisión son más difíciles de resolver que otros. Al analizar estos problemas, encontramos que algunos presentan mayor complejidad que otros. Un problema de decisión importante dentro de la teoría de grafos, que será el principal objeto de estudio en esta sección, es el llamado 3-coloración de grafos planares. Este problema consiste en:

Determinar si dado cualquier grafo planar no dirigido , es posible colorear los vértices de con tres colores, digamos (Azul, Rojo y Verde) de tal manera que ningún par de vértices adyacentes tenga el mismo color.

El problema de determinar si es posible colorear un grafo planar con 3 colores se convierte en un problema de decisión con el siguiente formato:

Problema: 3-coloración de grafos planares G.

Entrada: Un grafo planar no dirigido. ¿Es 3-coloreable?

Salida: Sí o No. Sí, nos dice que el grafo es 3-coloreable; No, nos dice que no lo es.

La segunda pregunta que nos hacemos en este caso es:

¿Qué tan difícil es este problema desdel punto de vista computacional?

Para la elaboración de esta sección se consultaron los libros [3] [4] [5] y los artículos [6] [7].

Definición 3: Un problema de decisión es aquel que admite únicamente dos posibles respuestas: “Sí” o “No”, para cualquier entrada.

Para resolver problemas de decisión y otros tipos de problemas matemáticos, a menudo recurrimos a algoritmos. Estos son fundamentales para la solución de problemas tanto en computación como en matemáticas. Su definición es la siguiente:

Definición 4: Un algoritmo es un conjunto finito de instrucciones matemáticas bien definidas, que, cuando se ejecutan correctamente, produce un resultado específico a partir de una entrada dada.

Los algoritmos suelen ser vistos como una secuencia de instrucciones matemáticas para resolver problemas.

Un problema de decisión que puede ser resuelto a través de un algoritmo en un tiempo finito se llama decidible.

Entender los algoritmos es fundamental para resolver problemas computacionales. Sin embargo, no solo es importante encontrar una solución, sino también evaluar cuan eficiente es el algoritmo que utilizamos. Aquí es donde entra en juego el concepto de complejidad de un algoritmo, que a continuación definimos.

Definición 5: La complejidad de un algoritmo se refiere al tiempo y la memoria requeridos para ejecutar el algoritmo en función del tamaño de la entrada.

Para cuantificar la complejidad, utilizamos la notación Big-O, denotada como , que describe el crecimiento de una función en términos del tamaño de la entrada. La comprensión de la notación Big-O es esencial para evaluar y comparar algoritmos en términos de su eficiencia.

Definición 6: (Big-O) Sean , dos funciones definidas en los números enteros positivos, . Decimos que es una cota superior asintótica para si existe un número real y un entero positivo tal que:

En tal caso, se escribe

La cota superior asintótica se elige típicamente de manera que sea lo más simple y pequeña posible. Decimos que tiene un crecimiento lineal, cuadrático, cúbico o polinomial en si pertenece a , , o para algún , respectivamente. Cuando hablamos de la eficiencia de un algoritmo, nos referimos al tiempo que este tarda en ejecutarse en función del tamaño de la entrada. Los algoritmos con tiempo de ejecución polinomial, como la suma o multiplicación de números, se consideran eficientes. Por otro lado, si un algoritmo necesita iterar sobre cada instancia de un conjunto con elementos, su complejidad es exponencial en . Un problema se considera difícil si no existe un algoritmo eficiente, es decir, de tiempo polinomial, que pueda resolverlo.

Existen clases distintas de problemas; aquellos cuyos algoritmos tienen tiempo de ejecución polinomial, o no.

3 Clases de problemas

A continuación definimos las clases de problemas más usados, para preparar esta sección nos basamos en las notas del curso Design and Analysis of Algoritms del Profesor Erick Demaine [6].

Definición 7:  

  • Un algoritmo es polinomial si para algún , su tiempo de ejecución sobre las entradas de tamaño es . La clase de problemas tractables, denotada por P, comprende los problemas de decisión que se pueden resolver mediante un algoritmo de tiempo polinomial. Estos problemas se consideran eficientes.
  • La clase de problemas NP, denominada tiempo polinomial no determinista es la clase de problemas de decisión en los que se permite adivinar y verificar su solución en tiempo polinomial. El hecho de que una solución pueda adivinarse a partir de muchas opciones polinomiales en tiempo constante se le conoce como no-determinista.

Definición 8: Dentro de la clase de problemas NP hay una clase de problemas denominados NP-completos, que en términos generales son considerados difíciles de resolver y si existe un algoritmo que pueda resolver un problema NP-completo en tiempo polinomial, entonces también puede resolver cualquier otro problema NP en tiempo polinomial. En otras palabras, un problema es NP-completo si NP-hard (véase definición abajo).

En la práctica, verificar si una prueba es válida parece ser más sencillo que encontrar la solución a un problema. Sin embargo, en el campo de la informática, persiste una pregunta fundamental sin resolver: ¿Es la clase NP estrictamente más grande que la clase P? Esta pregunta es una de las incógnitas más importantes en la teoría de algoritmos.

Definición 9: Una reducción del problema al problema en tiempo polinomial, denotada por , es una transformación tal que existe un algoritmo que convierte las entradas del problema en entradas equivalentes del problema en tiempo polinomial. Equivalente significa que para cualquier entrada, el problema y el problema producen la misma respuesta (sí o no). Sea :

  • Si , entonces
  • Si , entonces .
  • Si , entonces .

Definición 10: Un problema es NP-hard o NP-duro si cada problema se reduce a . Es decir, un problema es NP-hard si es al menos tan dificil como todos los problemas en NP.

Con lo anterior podemos definir formalmente los problemas NP-completos.

Definición 11: Un problema es NP-completo si y es -hard.

Un ejemplo muy famoso de problemas -completos es el problema denominado SAT, con el fin de hacer este trabajo auto contenido y definir formalmente un problema SAT introduciremos las siguientes definiciones.

Definición 12: Una fórmula booleana es una expresión formada con las variables con para , junto con los operadores lógicos y (), no (¬) y o (). Sea una fórmula booleana y , entonces denota el valor de cuando a las variables de se les asignan los valores . Se dice que una fórmula satisface (o tiene solución) si existe alguna asignación tal que sea verdadera. Una fórmula booleana está en forma CNF (Forma Normal Conjuntiva) si es una conjunción (y) de disyunciones (o) de variables o sus negaciones. Es decir, una fórmula CNF tiene la forma

donde cada es un literal que puede ser la variable o su negación . Los términos se llaman literales y las expresiones se llaman cláusulas. Un CNF es una fórmula CNF en la cual todas las cláusulas contienen a lo sumo literales.

Con esta definición podemos dar paso a una definición formal de un tipo de fórmula booleana denominada SAT, para después demostrar que el problema de decidir si una fórmula booleana que está en 3CNF es o no válida se reduce a un problema de -coloración en grafos en tiempo polinomial y viceversa. Así que son equivalentemente difíciles y concluiremos que el problema de -coloración en grafos es NP-completo pues SAT lo es.

Definición 13: SAT: El problema de decisión SAT se puede plantear como sigue. Dada una fórmula booleana de la forma:

¿Existe una asignación de variables verdadero (1) y falso (0), tal que toda la fórmula evalúe a verdadero (1)?

Fue probado que el problema SAT resulta ser NP-completo por Cook en 1971 [4]. A continuación, enunciamos el teorema y definimos formalmente el problema:

Teorema 3: (Teorema de Cook-Levin [4]) Sea SAT el lenguaje de todas las fórmulas CNF que tienen solución y SAT el lenguaje de todas las fórmulas 3CNF que tienen solución. Entonces:

  1. SAT es NP-completo.
  2. SAT es NP-completo.

En el problema de decisión de 3-coloración, se nos da un grafo y nos preguntamos si existe una forma de colorear los vértices de dicho grafo utilizando tres colores, a saber: rojo, verde o amarillo, de tal manera que ningún par de vértices adyacentes comparta el mismo color.

El objetivo de esta sección es demostrar una reducción en tiempo polinomial del problema SAT al problema de 3-coloración. Es decir, demostraremos el siguiente teorema:

Teorema 4: 3Coloración.

Antes de demostrar este teorema, esbozaremos la estrategia de la prueba. Dada una entrada del problema SAT (una fórmula booleana), debemos construir un grafo que será 3-coloreable si y solamente si la fórmula booleana tiene solución. La idea de la siguiente prueba fue tomada de [7].

La demostración se ejecutará en varios pasos.

  • Paso 1: Comenzamos construyendo un grafo que contiene 3 vértices etiquetados como , , y , conectados formando un triángulo. Coloreamos estos vértices con tres colores diferentes. Sin pérdida de generalidad, podemos colorearlos como se muestra en la figura 2:
Primer paso
Figure 2: Primer paso

En esta construcción, el color verde indica los valores verdaderos, el color rojo indica los valores falsos y el color de no representa ningún valor.

  • Paso 2: En nuestra fórmula, tenemos variables y negaciones de variables, conocidas como literales. Debemos asignar valores a los literales, por lo que basta asignar valores a su variable correspondiente. Para asegurar esto, hacemos lo siguiente:

Para cada varibale y su negación , creamos dos vértices en nuestro grafo y conectamos estos vértices al vértice , como se muestra en la figura 3.

Segundo paso
Figure 3: Segundo paso

Esto asegura que los literales y no reciban el mismo color que el vértice , ya que están conectadas a y, por lo tanto, deben ser coloreadas de rojo o verde. Para garantizar que y no reciban el mismo color (es decir, que si es verdadero, entonces sea falso, y viceversa), conectamos el vértice con el vértice , como se muestra en la figura 3.

De esta manera, si coloreamos el grafo de una forma válida, obtendremos valores de verdad para las variables y sus negaciones que son consistentes.

  • Paso 3: Finalmente, necesitamos representar cada cláusula de la fórmula booleana a través de un grafo. Para ello, representaremos el operador booleano mediante una construcción que llamaremos “gadget” (véase figura 4). Este gadget es -coloreable si y solo si al menos una de las literales en la cláusula es asignada o coloreada con (verdadero), como veremos a continuación.
Tercer paso
Figure 4: Tercer paso

En el gadget de la figura 4, si todas las literales se colorean como Falso (rojo), el vértice debe ser coloreado de azul, ya que está conectado a (verde) y a (rojo). A continuación, el vértice debe ser coloreado de rojo, ya que está conectado a (verde) y a (azul), como se muestra en la figura 5:

Coloración del tercer paso
Figure 5: Coloración del tercer paso

Esto implica que ni el vértice , ni , ni pueden ser coloreados de rojo. Por lo tanto, solo pueden tener los colores verde o azul. Sin embargo, al tratarse de tres vértices y solo dos colores disponibles, necesariamente habrá un par de vértices que compartan el mismo color. Como estos tres vértices están conectados entre sí, se produciría una contradicción, ya que dos vértices conectados tendrían el mismo color. De este modo, si las tres literales son falsas, es imposible colorear el gadget.

  • Paso 4: El paso final consiste en intersectar los gadgets, es decir, se crea un gadget por cada cláusula y se busca empatar esos gadgets. Aunque el resultado es grande, está bien estructurado, como se muestra en la figura 6. De este modo, el grafo resultante es 3-coloreable si y solo si la fórmula booleana se satisface.

En el caso de que la fórmula booleana representada por la figura no se satisfaga, es decir, si , , y son coloreadas de rojo, entonces al aplicar el proceso descrito en el paso 3, se llega a la conclusión de que es imposible colorear el grafo.

Reducción completa de la fórmula 3SAT  (x₁∨x₂∨̅x₃) ∧(x₂∨x₃∨x₄) a una 3-coloración
Figure 6: Reducción completa de la fórmula SAT

a una -coloración

  • Paso 5: Para demostrar que esta reducción se realiza en tiempo polinomial, supongamos que la fórmula tiene variables y cláusulas. Entonces, el número de vértices y aristas se calcula de la siguiente manera:

Vértices:

  • 3 vértices para el triángulo formado por los vértices , y (figura 2).
  • 2 vértices por cada variable: se requieren vértices extra (figura 3).
  • 5 vértices por cada cláusula: se requieren vértices extra (figura 4).

Aristas:

  • 3 aristas para el triángulo formado por los vértices , y (figura 2).
  • Aristas entre pares opuestos a las literales: aristas (figura 3).
  • Aristas de las literales al vértice : Se tienen aristas (figura 3).
  • 10 aristas por cláusula (gadget): Se tienen aristas (figura 4).

De este modo, el grafo generado tiene vértices y aristas. La construcción del grafo se realiza en un número de pasos que es polinomial respecto a y , garantizando así que la reducción se lleva a cabo en tiempo polinomial.

Hasta ahora hemos probado que un problema SAT se reduce a un problema de -coloración en grafos en general. Como SAT es un problema NP-completo por la reducción la -coloración en grafos también lo es.

Otra forma de demostrar que los problemas de -coloración en grafos son NP es modelar este problema como un problema de satisfacción de restricciones, dado que estos últimos son NP. En general, aunque en 2017 se demostró que, en el caso de que P NP [8], los problemas de satisfacción de restricciones pertenecen a la clase de problemas en los que se satisface la dicotomía; es decir, son P o son NP.

4 Problemas de Satisfacción de Restricciones.

Los Problemas de Satisfacción de Restricciones (CSP, por sus siglas en inglés) constituyen un área fundamental en la teoría de la computación. Estos se definen como conjuntos de objetos que deben satisfacer una serie de restricciones o limitaciones.

A continuación, los definiremos formalmente:

Definición 14: Un Problema de Satisfacción de Restricciones CSP se define como una tripleta , donde:

  • es un conjunto de variables, que puede o no ser infinito.
  • es el conjunto de valores que pueden tomar las variables o dominio.
  • es un conjunto finito de restricciones, donde cada restricción = para consiste de una -tupla de variables y una relación -aria sobre .

Definición 15: Una evaluación de las variables es una función

Decimos que una evaluación satisface una restricción con si la tupla de valores pertenece a la relación . Una solución del CSP es una evaluación que satisface todas las restricciones del problema.

Muchos problemas prácticos pueden modelarse como problemas de satisfacción de restricciones. Un ejemplo clásico de esto es el problema de satisfacibilidad booleana (SAT) visto en la sección anterior. En esencia, este problema implica encontrar asignaciones de valores a variables que hagan que una fórmula lógica proposicional sea verdadera. A continuación mostraremos como un problema SAT se modela como un problema CSP. El siguiente ejemplo se construyó tomando como base el ejemplo del libro [5].

Ejemplo 1: El problema de satisfacibilidad booleana (SAT) consiste en determinar si existen valores de ceros y unos para las variables de una fórmula lógica proposicional como la siguiente, que hagan verdadera la fórmula. Consideremos la siguiente fórmula:

El problema consiste en asignar valores de o para de tal manera que al evaluar la fórmula , esta resulte verdadera, es decir, . Este tipo de problemas se puede expresar como un CSP, en específico, de la siguiente manera:

  • Sea .
  • Sea .
  • Sea el conjunto de restricciones definido por:

donde:

  • .
  • .
  • .
  • .
  • .

Por lo tanto, la solución del ejemplo anterior consiste en encontrar las asignaciones de valores que satisfagan todas las restricciones del problema. En este caso, las soluciones son las siguientes:

Los CSP abarcan una amplia gama de problemas, desdel famoso Problema de las Ocho Reinas hasta el desafiante Teorema de los Cuatro Colores en la coloración de mapas. Numerosos juegos y rompecabezas, como por ejemplo el Sudoku, pueden modelarse como problemas de satisfacción de restricciones.

A continuación, formularemos el problema de coloración de mapas como un problema CSP, donde la tarea consiste en determinar si un mapa dado puede ser coloreado con tres colores distintos de manera que ningún par de regiones adyacentes tenga el mismo color.

Definición 16: El Problema de Coloración de un grafo (véase teorema 2). Sea un grafo donde es el conjunto de vértices y es el conjunto de aristas. El problema consiste en determinar si es posible colorear los vértices de con colores de tal manera que vértices adyacentes tengan colores diferentes.

El problema anterior lo formularemos como un CSP, donde:

  • es el conjunto de vértices de .
  • es el conjunto de colores que pueden asignarse a los vértices.
  • es el conjunto de restricciones, donde cada restricción para , con representando las aristas de y la relación de desigualdad sobre , definida como:

Por lo tanto, una solución al problema de colorear el mapa consiste en encontrar una función

que asigne un color a cada vértice en con tal que

Lo anterior equivale a ver si

Finalizaremos esta sección modelando un problema de -coloración como un problema SAT.

Ejemplo 2: Modelando un problema de -coloración de grafos como un problema SAT. Sea un grafo . Formularemos este problema como un SAT de la siguiente manera:

  • Las variables del conjunto con representan los colores asignados a los vértices en . Hay 3 variables por cada vértice en , una por cada color posible.
  • El dominio indica los valores que puede tomar cada variable , donde 1 significa que el color es asignado y 0 que no lo es.
  • Para cada vértice con , asignamos las siguientes restricciones:
  • Cada vértice debe ser coloreado con al menos un color, es decir, se debe satisfacer la siguiente fórmula:

para esta restricción se necesita una sola cláusula por cada vértice, es decir cláusulas en total para el grafo.

  • En nuestro problema de coloración no se pueden asignar dos colores al mismo tiempo al mismo vértice y esto se logra con la siguiente expresión lógica:

para esta restricción se necesitan cláusulas.

  • Cada par de vértices adyacentes son de diferente color. Para todo se tiene la restricción:

para esta restricción se necesitan cláusulas

Así, el problema de 3-coloración se reduce a encontrar una asignación a las variables que haga que la fórmula booleana descrita por la intercesión de todas las clausulas anteriores sea verdadera. Con este ejemplo, observamos que para cualquier grafo se puede escribir como un problema SAT utilizando un total de restricciones. De este modo hay una reducción de un problema de coloración en grafos a un problema SAT en tiempo polinomial.

Para demostrar que el problema de decidir si un grafo planar se puede colorear con 3 colores es NP-completo, se realiza una reducción en tiempo polinomial desdel problema de colorear cualquier grafo con 3 colores. Es decir, se demuestra el siguiente teorema:

Teorema 5: El problema de decidir si un grafo es -coloreable se reduce en tiempo polinomial al problema de decidir si un grafo planar es -coloreable.

La estrategia consiste en comenzar con un grafo no planar que tenga cruces, y reemplazar cada cruce por un gadget planar: un subgrafo de 11 vértices que puede ser coloreado con 3 colores. Este proceso se realiza para cada cruce, transformando así el grafo original en un grafo planar que es 3-coloreable si, y solo si, el grafo original no planar también lo es. El lector interesado en los detalles de la reducción puede consultar [9].

A partir del teorema anterior y de la reducción del problema 3-SAT al problema de 3-coloración, obtenemos que:

Y, dado que 3-SAT es NP-completo, concluimos que el problema de 3-coloración en grafos planares también es NP-completo.

5 El Problema de la Tierra-Luna (Earth-Moon Problem).

El problema de la Tierra-Luna es un problema que permanece abierto dentro del ámbito de la coloración de grafos, planteado por Gerhard Ringel en 1959 [1]. Como vimos en la introducción este problema es una extensión del problema de la coloración de mapas planos, cuya solución se obtiene a través del Teorema de los Cuatro Colores (véase teorema 1).

De manera intuitiva, el problema puede enunciarse de la siguiente forma:

¿Cuántos colores se necesitan para colorear los mapas políticos de la tierra y la luna en un futuro hipotético, donde cada país de la tierra tiene una colonia en la luna que debe recibir el mismo color?

Territorio de países en tierra y luna.
Figure 7: Territorio de países en tierra y luna.

En la figura 7 se muestra un ejemplo de una coloración para la tierra y la luna. Nótese que cada país debe ser coloreado con el mismo color tanto en la tierra como en la luna, aunque la disposición geográfica es diferente en ambos cuerpos celestes.

La pregunta anterior se puede formular de la siguiente manera: ¿Cuál es el número mínimo de colores necesarios para colorear un conjunto de países, de tal forma que no haya dos países que compartan una frontera común y estén coloreados con el mismo color, bajo la condición de que cada país consiste en una región en la tierra y una región en la luna?

En términos de teoría de grafos, esta pregunta se puede reformular como sigue:

¿Cuál es el número cromático máximo de un grafo que es la unión de dos grafos planares (sobre el mismo conjunto de vértices)?

Nos gustaría establecer algunas cotas sobre el número de colores necesarios. Comenzaremos con un ejemplo dado por Thom Sulanke en 1974, que refuta la conjetura de Ringel, la cual postulaba que 8 colores serían suficientes para resolver la pregunta.

Antes de continuar, es importante señalar que para la preparación de esta sección se consultaron los artículos [10], [1] y [11]. La mayoría de las demostraciones aquí expuestas se completaron o se hizo una demostración alternativa.

Ejemplo 3: Supongamos que tenemos la coloración del mapa en “la tierra” donde cada letra representa un país diferente.
Coloración en “la tierra”.
Figure 8: Coloración en “la tierra”.

El grafo correspondiente (figura 9) para este mapa tiene 11 vértices (uno por cada país) y 26 aristas (una por cada colindancia), cumpliendo la desigualdad de Euler para grafos planos, , donde es el número de aristas y 11 es el número de vértices. Así,

queda definido por

Grafo de mapa en “la tierra”. G₁
Figure 9: Grafo de mapa en “la tierra”.
Grafo de mapa en “la tierra”.
Figure 10: Grafo de mapa en “la tierra”.
El grafo es isomorfo al grafo de la figura 10, que a simple vista no parece ser plano; sin embargo, como se observa en la figura 9, sí posee una representación plana. Más adelante usaremos este grafo para simplicidad visual. A continuación, analizamos el mapa en la luna. Supongamos que los 11 países del mapa terrestre se mantienen en la luna, pero en este caso, cada país está dividido en regiones diferentes a las del mapa terrestre. Esta variación en la división regional altera las colindancias entre las regiones en la luna, en comparación con las del mapa de la tierra.
Coloración en “la luna”.
Figure 11: Coloración en “la luna”.

Denotemos por el grafo que representa el mapa lunar (figura 12). En las aristas indican las nuevas colindancias entre las regiones lunares. El grafo correspondiente al mapa lunar tiene 11 vértices (uno por cada región) y 24 aristas. Así, queda definido por

Grafo de mapa en “la luna”. G₂
Figure 12: Grafo de mapa en “la luna”.
Reordenando los vértices alfabéticamente para facilitar el análisis, obtenemos el grafo de la figura 13.
Grafo de mapa en “la luna”.
Figure 13: Grafo de mapa en “la luna”.

Para garantizar que las colindancias sean consistentes entre los dos mapas, debemos considerar la unión de los grafos y . En dondel conjunto de vértices es el mismo, pero el de aristas será la unión dellos. Al grafo resultante, que representa la combinación de las regiones de ambos mapas, le llamamos donde:

Grafo Tierra-Luna. G₃
Figure 14: Grafo Tierra-Luna.

El grafo final combina las coloraciones de las regiones de la Tierra y la Luna, respetando las adyacencias especificadas en ambos mapas. La pregunta clave es: ¿cuál es el número mínimo de colores necesarios para colorear este grafo de manera que no haya dos regiones adyacentes con el mismo color? En este caso, hemos determinado que se requieren al menos 9 colores, y este número es óptimo. Esto se debe a que el subgrafo formado por los vértices a y las aristas que los conectan es un grafo completo , donde cada vértice está conectado con todos los demás. Por lo tanto, se necesitan al menos 6 colores para colorear . Por otro lado, el subgrafo formado por los vértices a es un ciclo , que también requiere colores distintos de los usados en . Para colorear un ciclo , se necesitan al menos 3 colores adicionales. Dado que es la unión de y , la cota mínima de colores necesarios es 9. Además, este número es suficiente, como se ha demostrado en el ejemplo, donde se logra una coloración correcta con 9 colores.

Como se puede observar, el Problema de la Tierra-Luna se puede formular como un grafo cuyo conjunto de vértices es el mismo, pero cuyo conjunto de aristas se puede dividir para formar dos grafos planares y A la operación inversa, es decir, construir un grafo de Tierra-Luna la llamaremos unión.

Definición 17: Sean y dos grafos planos definidos sobre el mismo conjunto de vértices , definimos la unión de estos grafos como el grafo , donde . Es decir, el grafo unión mantiene el mismo conjunto de vértices y su conjunto de aristas corresponde a la unión de las aristas de y . Por el corolario 1, sabemos que un grafo planar con vértices tiene a lo sumo aristas. De este modo, el Problema de la Tierra-Luna tendrá como máximo aristas en un grafo plano y aristas en el grafo plano .

Por lo tanto, tenemos el siguiente corolario.

Corolario 2: Si es un grafo con vértices que es la unión de dos grafos planares, entonces tendrá como máximo aristas.

Corolario 3: Si es un grafo que es la unión de dos grafos planares, existe al menos un vértice con grado no mayor a 11.

Si el resultado es trivial, ya que todos los vértices tendrán grado no mayor a 11. Supongamos que .

El resultado se obtendrá por contradicción. Supongamos, que tenemos un grafo unión de dos planares de orden y tamaño en el cual todos sus vértices tienen un grado mayor o igual a 12. Usando el corolario anterior (2) y el teorema 2, podemos afirmar que:

Sin embargo, bajo nuestra hipótesis de que todos los vértices tienen un grado mayor o igual a 12, y aplicando nuevamente el teorema 2, obtenemos:

Combinando las dos desigualdades anteriores obtenemos:

Esta última desigualdad es una contradicción. Por lo tanto, llegamos a la conclusión de que debe existir al menos un vértice en con un grado a lo más de 11.

Teorema 6: [1] El grafo del Problema de la Tierra-Luna es -coloreable.

Probaremos este teorema usando inducción matemática sobre el orden de . Sea n el orden de .

Base de inducción: Supongamos que . Si tiene vértices, entonces existe una -coloración para G, ya que, basta con asignar un color distinto a cada vértice, y por construcción, no habrá dos vértices adyacentes con el mismo color. Por lo tanto, el resultado se cumple para .

Hipótesis de inducción: Supongamos que todo grafo planar de orden es -coloreable.

Paso de inducción: Por demostrar que cualquier grafo de orden es -coloreable. Por el colorario 3 sabemos que en cualquier grafo que es la unión de dos grafos planares existe al menos un vértice con . Sea el subgrafo de , donde y incluye todas las aristas que no son incidentes con . En otras palabras, es el grafo resultante de “eliminar” y todas las aristas que lo conectan. Entonces, el orden de es , y por la hipótesis de inducción, obtenemos que es -coloreable. De lo anterior se sigue que existe una -coloración para con . Utilizamos esta -coloración para con los colores , y solo falta asignar un color a . Sabemos que tiene a lo más aristas incidentes a él. Supongamos sin pérdida de generalidad que estas aristas están conectadas a lo más a vértices diferentes . Asignamos el color no utilizado para a . De esta manera, se conservan las características de la -coloración en , y de orden es -coloreable.

Hasta aquí, el ejemplo 14 demuestra que se requieren al menos 9 colores para resolver el Problema de la Tierra-Luna. Por otro lado, el teorema 6 establece que es posible utilizar hasta 12 colores. Esto plantea la pregunta: ¿es factible lograr una coloración con menos de 12 colores? Por lo que sabríamos que la respuesta al mínimo número de colores necesarios se encuentra en el conjunto:

Dejando abiertas las posibilidades de exploración en torno a la existencia de configuraciones que requieran 10 u 11 colores. Esta incertidumbre resalta la complejidad del problema y nos surge la pregunta de cual es la complejidad computacional del problema de -coloración de la Tierra-Luna con .

Para concluir esta sección, modelaremos el Problema de la Tierra-Luna mostrado en la figura 7 como un Problema de Satisfacción de Restricciones (CSP).

Con el objetivo de analizar su complejidad computacional, en la siguiente sección presentaremos la modelación del Problema de la Tierra-Luna como un CSP, con el propósito de demostrar que es un problema de complejidad NP-hard.

6 Problema de la Tierra-Luna a través de los CSP.

Empezamos esta sección construyendo el siguiente ejemplo. Tenemos una porción de países europeos: Alemania, Austria, Bélgica, Francia, Países Bajos, Luxemburgo, Polonia, República Checa y Suiza (véase figura 7). El problema consiste en colorear los países utilizando el mínimo número de colores de tal manera que no haya dos países colindantes que compartan el mismo color.

Primero, describiremos el mapa como dos grafos, donde cada vértice representará un país y una arista unirá dos países si estos colindan, i.e. Sea el grafo en la tierra donde:

  • representa los países de Alemania, Austria, Bélgica, Francia, Pblanda, Luxemburgo, Polonia, República Checa y Suiza respectivamente.
  • representa colindancias entre los países en la tierra: , , , , , , , , , , , , , , ,

Además, sea el grafo en la luna donde:

  • representa los países de Alemania, Austria, Bélgica, Francia, Países Bajos, Luxemburgo, Polonia, República Checa y Suiza respectivamente.
  • representa colindancias entre los países en la luna: , , , , , , , , , , , , , , ,

Por lo tanto, los grafos planares que representa los mapas en la tierra y en la luna están representados en la figura 15. Una vez dada la representación gráfica, formularemos este problema como una instancia de CSP. El Problema Tierra-Luna de arriba se puede plantear como un CSP de la siguiente manera:

Representación gráfica del Problema de la Tierra-Luna.
Figure 15: Representación gráfica del Problema de la Tierra-Luna.
  • Sea nuestro conjunto de variables, representando cada país.
  • Sea el dominio de los valores de las variables, que representan los colores (por ejemplo, Verde, Azul, Rosa y Amarillo) que se pueden asignar a los vértices.
  • Sea el conjunto de restricciones sobre las variables. Definimos las restricciones de colindancia de la siguiente manera:
  • Tierra: Los países adyacentes deben tener colores diferentes. Las colindancias son:
  • Luna: Similarmente, las colindancias para el grafo en la luna son:

En este contexto, la relación binaria establece que los colores asignados a países adyacentes deben ser distintos tanto en la tierra como en la luna.

Por lo tanto, una solución al problema de colorear el mapa en la tierra consiste en encontrar una función

que asigne un color a cada vértice en con tal que

Esto último es equivalente a decir que .

De manera similar, para el problema de la Luna, buscamos la misma función

que asigne un color a cada vértice en tal que

Ahora, dado que buscamos satisfacer simultáneamente las restricciones tanto en la tierra como en la luna, el CSP que representa la unión de estas condiciones implica que es el conjunto de variables definido anteriormente, y representa los mismos colores. El conjunto de restricciones es la unión de las restricciones de colindancia para ambos contextos:

  • Tierra-Luna: Los países adyacentes deben tener colores diferentes, tanto en la tierra como en la luna. La unión de las colindancias es:

Por lo tanto, una solución al problema de colorear el mapa en la Tierra-Luna consiste en encontrar una función que asigne un color a cada vértice con , de manera que

Esto es equivalente a afirmar que .

Una posible solución para el Problema de la Tierra-Luna es:

Estas soluciones se ilustran en la figura 16, que corresponde a cada uno de los mapas.

Finalmente, en la figura 16 se presenta los grafos que modelan la tierra y la luna, asociados a esta solución. Adicionalmente, en la figura 17 se representa el grafo que es la unión de estos dos grafos planares, y sería el que se modeló al final.

Una solución gráfica del Problema de la Tierra-Luna.
Figure 16: Una solución gráfica del Problema de la Tierra-Luna.
Grafo combinado de la Tierra-Luna.
Figure 17: Grafo combinado de la Tierra-Luna.

Hasta el momento, hemos demostrado que el problema de coloración del modelo Tierra-Luna presenta desafíos significativos, con un mínimo de 9 colores necesarios y la posibilidad de utilizar hasta 12. Este análisis nos lleva a considerar la complejidad intrínseca de la coloración de grafos y abre la puerta a la exploración de la complejidad computacional para la -coloración del Problema de la Tierra-Luna con . Debra Boutin, Ellen Gethner y Thom Sulanke en [12] proporcionaron un catálogo de 40 nuevos ejemplos (configuraciones) del Problema de la Tierra-Luna que pueden ser coloreados con 9 colores. Además, presentan una nueva metodología para construir configuraciones adicionales, lo que permite crear una familia infinita de ejemplos de problemas de la Tierra-Luna que son 9-coloreables.

Debido a que el Problema de la Tierra-Luna puede ser modelado como un problema de satisfacción de restricciones (CSP), sabemos que este problema tiene una complejidad en NP-hard. Sin embargo, para , el teorema 6 establece que el problema de decidir si un grafo que representa un problema de la Tierra-Luna es -coloreable siempre tiene una solución afirmativa. Esto implica que dicho problema puede resolverse en tiempo polinomial. El problema de la 3-coloración en la Tierra es NP-completo, ya que se redujo del problema 3-SAT a la 3-coloración de grafos. Por lo tanto, el Problema de la Tierra-Luna con 3 colores también será NP-completo, dado que en la tierra y la luna lo es.

Para concluir esta sección, construiremos una reducción en tiempo polinomial del problema SAT al problema de 3-coloración de la Tierra-Luna. De esta manera, probaremos de forma independiente, y sin hacer uso del hecho de que el problema de 3-coloración en la Tierra es NP-completo, que el problema de 3-coloración de la Tierra-Luna también es NP-completo.

Teorema 7: .

Antes de demostrar este teorema, esbozaremos la estrategia de la prueba. Dada una entrada del problema (una fórmula booleana), debemos construir un mapa en la tierra y un mapa en la luna que será 3-coloreable si y solamente si la fórmula booleana tiene solución.

La demostración se ejecutará en varios pasos. Sea una entrada del problema con variables y cláusulas.

  • Paso 1: Empezamos construyendo un mapa de la tierra que incluye tres países adyacentes, etiquetados como , , y . Aquí, es un cuadrado, es un -ágono, y es -ágono. Asignamos a cada país un color distinto utilizando tres colores diferentes. Sin pérdida de generalidad, los colores se distribuyen como se muestra en la figura 18:
Primer paso.
Figure 18: Primer paso.

En esta construcción, el color verde representa los valores verdaderos, el rojo representa los valores falsos y el color de no indica ningún valor específico.

  • Paso 2: En nuestra fórmula, se incluyen variables y sus negaciones, denominadas literales. Asignamos valores a cada literal de manera que si una literal es verdadera su negación sea falsa. Para garantizar esta condición, procedemos de la siguiente forma:

Para cada literal y su negación , agregamos dos países (cuadrados) en nuestro mapa de la tierra. Estos países se conectan entre sí y a uno de los lados disponibles del país (disponibles lados, uno para cada variable y su negación), como se ilustra en la figura 19.

Esto asegura que las literales y no reciban el mismo color que el país , ya que sus países están conectadas a y, por lo tanto, deben ser coloreadas de rojo o verde. Para garantizar que y no reciban el mismo color (es decir, que si es verdadero, entonces sea falso, y viceversa), conectamos el país con el país , como se muestra en la figura 19.

De esta manera, si coloreamos el mapa de una forma válida, obtendremos valores de verdad para las variables y sus negaciones que son consistentes.

Segundo paso.
Figure 19: Segundo paso.
  • Paso 3: Finalmente, debemos representar cada cláusula de la fórmula booleana en el mapa. Para esto, utilizaremos una construcción denominada “gadget” para simular el operador booleano (véase la figura 20). Este gadget es -coloreable si y solo si al menos uno de los países representado por las literales en la cláusula se asigna o colorea con (verdadero), como se explicará a continuación.

El gadget que construiremos es análogo al descrito en el paso 3 de la demostración del Teorema 4, con la diferencia de que en esta ocasión se conecta al país que representa el valor Falso. Una parte del gadget se sitúa en la “tierra” y consiste en varios países conectados a uno de los lados del país correspondiente a . Dado que el polígono que representa a tiene lados, podemos utilizar un lado distinto para cada gadget asociado a cada cláusula de la fórmula booleana.

Cada uno de estos gadgets incluye también países en la “luna”, los cuales representan los literales de la cláusula correspondiente. Para ello, cada literal se modela mediante un polígono en la luna: específicamente, utilizamos un -ágono para cada literal, o un triángulo en caso de que . Esta construcción permite representar adecuadamente la estructura lógica de cada cláusula dentro del grafo, respetando las restricciones de adyacencia y colorabilidad necesarias para la reducción.

Review 614603433199-fig29.png Tercer paso (tierra).
Figure 20: Tercer paso (tierra).

Estos países de las literales en la luna no serán colindantes entre sí. En este modelo, para cada cláusula, adicional se agregarán algunos de los países del gadget en uno de los lados de los -ágonos que representan las literales utilizadas en esa cláusula.

Tercer paso (luna).
Figure 21: Tercer paso (luna).

En el gadget mostrado en la figura 20 que se representa con los grafos de las figura 20 y la figura 21, si todos los países asociados a literales se colorean como Falsas (rojo), ninguno de los países , , o puede ser coloreado de rojo, ya que colindan con los países correspondientes a las literales y . Además, dado que en la tierra el país colinda con , si es verde, debe ser azul, y viceversa. Esto implica que el país debe ser coloreado de rojo, ya que colinda con (verde/azul) y con (azul/verde).

Tercer paso (coloración).
Figure 22: Tercer paso (coloración).

Por lo tanto, el país debe ser coloreado de verde o azul, dado que está conectado a (rojo). Por lo tanto, los países , y solo pueden tener los colores verde o azul. Sin embargo, al tratarse de tres países y solo dos colores disponibles, necesariamente habrá un par de vértices que compartan el mismo color. Como estos tres países están conectados entre sí, se produciría una contradicción, ya que dos países conectados tendrían el mismo color. De este modo, si los países de las tres literales son falsas, es imposible colorear el gadget. Adicionalmente, es sencillo ver que si alguno es verde, se puede colorear el gadget.

Paso 4: El paso final consiste en intersectar los gadgets, de manera que no colinden con los países ya existentes, es decir, se crean los mapas por cada clausal y se busca empatar esos gadgets. Aunque el resultado es grande, está bien estructurado, como se muestra en la figura 23. De este modo, el mapa resultante es 3-coloreable si y solo si la fórmula booleana se satisface.

Reducción completa de la fórmula 3SAT  (x₁∨x₂∨̅x₃) ∧(x₂∨x₃∨x₄) a una 3-coloración.
Figure 23: Reducción completa de la fórmula

a una -coloración.

En el caso de que la fórmula booleana representada por la figura no se satisfaga, es decir, si , , y son coloreadas de rojo, entonces al aplicar el proceso descrito en el paso 3, se llega a la conclusión de que es imposible colorear el mapa.

  • Paso 6: Para demostrar que esta reducción se realiza en tiempo polinomial, supongamos que la fórmula tiene literales y cláusulas. Entonces, el número de países se calcula de la siguiente manera:

Países en la tierra:

  • 3 países para , y (figura 18).
  • 2 países por cada variable: se requieren países extra (figura 19).
  • 6 países por cada cláusula: se requieren países extra (figura 21).

Países en la luna:

  • 1 país por cada literal: se requieren a lo más países extra (figura 21).
  • 3 países conectados a las literales por cada clausal: se requieren países adicionales (figura 21).

De este modo, los mapas generados tienen en total países.

Hasta ahora, hemos demostrado que un problema SAT puede reducirse al Problema de la Tierra-Luna de forma general. Dado que SAT es un problema NP-completo, la reducción implica que el Problema de la Tierra-Luna también es NP-completo.

7 Conclusión

Este trabajo ha ofrecido una revisión sobre los problemas de coloración en grafos. Que se profundiza más en la tesis de la cual se deriva este artículo.

Se permitió profundizar en la complejidad computacional de los problemas de decisión, destacando la relevancia de la clasificación de problemas en P, NP, NP-completo y NP-hard. Además, la modelación de la 3-coloración coo un Problema de Satisfacción de Restricciones (CSP) proporcionó un marco útil para abordar estos problemas desde distintos enfoques. Adicionalmente, se presentó un importante resultado: Grafo -coloreable (esto significa que cualquier instancia del problema de 3-satisfacibilidad booleana puede transformarse en tiempo polinomial en una instancia equivalente de un grafo -coloreable), acompañado de dos reducciones significativas.

Estas reducciones permiten concluir que la 3-coloración de mapas en la tierra es un problema NP-completo, dado que lo es.

Finalmente, se abordó el problema de colorear mapas de la Tierra-Luna, que ilustra la evolución del pensamiento en la teoría de grafos y la necesidad de seguir investigando áreas abiertas para avanzar en nuestra comprensión de la coloración de grafos. Se concluye con la demostración Problema Tierra-Luna, es decir, que se el problema SAT se puede reducir en tiempo polinómico a una instancia del Problema Tierra-Luna, de dicha reducción se puede concluir que este problema último es NP-completo. La demostración se hizo en colaboración con mi asesora Edith Vargas y el profesor Mike Behrisch, hasta la fecha dicha demostración no ha sido encontrada en alguna bibliografía. Se continuó investigando y podemos afirmar que el problema de colorear mapas en la Tierra-Luna es un problema NP-completo para , y colores. Las pruebas de estas afirmaciones se encontrarán en un futuro artículo.

BIBLIOGRAFÍA

[1] Hutchinson, Joan P. (1993) "Coloring ordinary maps, maps of empires, and maps of the moon", Volume 66. Taylor & Francis. Mathematics Magazine 4 211–226

[2] Kempe, Alfred B. (1879) "On the geographical problem of the four colours", Volume 2. JSTOR. American journal of mathematics 3 193–200

[3] McEliece, Robert J. (1978) "A public-key cryptosystem based on algebraic", Volume 4244. Coding Thv 114–116

[4] Arora, Sanjeev and Barak, Boaz. (2009) "Computational complexity: a modern approach". Cambridge University Press

[5] Lau, Dietlinde. (2006) "Function algebras on finite sets: Basic course on many-valued logic and clone theory". Springer Science & Business Media

[6] Demain, Erick and Ku, Jason and Solomon, Justin. (2020) "Lecture 19: Complexity". MIT OpenCourse

[7] Tsiatas, Alexander. (2008) "Phase transitions in Boolean satisfiability and graph coloring". Department of Computer Science, Cornell University

[8] Zhuk, Dmitriy. (2020) "A proof of the CSP dichotomy conjecture", Volume 67. ACM New York, NY, USA. Journal of the ACM (JACM) 5 1–78

[9] Gorrie, Daniel. (2014) "Scribe Notes: Planar Graphs and Space Complexity" https://people.eecs.berkeley.edu/ gorrie/cs170/notes/planar.pdf

[10] Ringel, Gerhard. (2012) "Map color theorem", Volume 209. Springer Science & Business Media

[11] Gonthier, Georges and others. (2008) "Formal proof–the four-color theorem", Volume 55. Notices of the AMS 11 1382–1393

[12] Boutin, Debra L and Gethner, Ellen and Sulanke, Thom. (2008) "Thickness-two graphs part one: New nine-critical graphs, permuted layer graphs, and Catlin's graphs", Volume 57. Wiley Online Library. Journal of Graph Theory 3 198–214

Back to Top

Document information

Published on 22/12/25
Submitted on 15/12/25

Licence: CC BY-NC-SA license

Document Score

0

Views 14
Recommendations 0

Share this document