¿Existe un algoritmo de aproximación de factor constante para el problema de coloración de rectángulo 2D?


17

El problema que consideramos aquí es la extensión del conocido problema de coloreado de intervalos. En lugar de intervalos, consideramos rectángulos que tienen lados paralelos a los ejes. El objetivo es colorear los rectángulos usando un número mínimo de colores, de modo que a cualquiera de los dos rectángulos superpuestos se les asignen colores diferentes.

Se sabe que este problema es NP-hard. Xin Han, Kazuo Iwama, Rolf Klein y Andrezej Lingas (Aproximación del conjunto independiente máximo y coloración mínima del vértice en los gráficos de caja) dieron una aproximación O (log n). ¿Existe un mejor algoritmo de aproximación?

Sabemos que el problema de coloreado de intervalos se resuelve en tiempo polinómico mediante un algoritmo de primer ajuste al considerar los intervalos de acuerdo con sus puntos finales izquierdos. Sin embargo, el algoritmo en línea de primer ajuste es 8 competitivo cuando los intervalos aparecen en orden arbitrario.

¿Cuál es el rendimiento del algoritmo de primer ajuste para el problema de coloración del rectángulo? ¿Qué sucede con el algoritmo de primer ajuste cuando los rectángulos aparecen de acuerdo con sus lados izquierdos (verticales)?

Gracias de antemano por cualquier ayuda en esto.

Respuestas:


12

Como sugiere la otra respuesta, el límite inferior no es demasiado difícil de ver. Hagamos el barrido de abajo hacia arriba con una línea horizontal. La idea es construir componentes que requieran una cantidad cada vez mayor de colores. En particular, deje que sea ​​un dispositivo que tenga un rectángulo superior con color (es decir, el primer ajuste le asignaría el color ). Claramente, es solo un rectángulo único. El componente esΩ(Iniciar sesiónnorte)C(yo)yoyoC(1)C(2)

En general, el componente es un rectángulo con colgando debajo de él:C(k)C(1),...,C(k-1)

Ahora, es fácil verificar que un algoritmo de ajuste primero con barrido horizontal desde la parte inferior usaría k colores para colorear C(k) . Sin embargo, el gráfico de intersección de C(k) es solo un árbol, y se puede colorear con 2 colores. Ahora, C(k) es solo un árbol de Fibonacci en estructura, y como tal, el número de nodos en él es 2O(k) , lo que implica una brecha de Ω(Iniciar sesiónnorte) .

Dado que existe un algoritmo simple que obtiene una aproximación O(Iniciar sesiónnorte) a la coloración de los rectángulos, esto podría ser ajustado. No lo sé.


6

Que yo sepa, esto no se sabe. Un antiguo artículo de Asplund y Grunbaum (1960) muestra que si el número de camarilla es 2, entonces el número cromático es como máximo 6 (y esto es apretado). Creo que debería ser fácil encontrar ejemplos en los que la brecha para el primer ajuste sea mayor que cualquier constante, ya que los árboles se pueden representar mediante un gráfico de intersección de rectángulos, y los árboles requieren log n colores por cualquier algoritmo en línea.


3

Creo que el papel Asplund, Grunbaum o documentos posteriores también muestran que el número cromático de los gráficos de intersección rectangular es como máximo O (k ^ 2), donde k es el tamaño de la camarilla máxima ... sin embargo, no se conocen ejemplos que requieren más que lineal en k número de colores.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.