Estoy buscando ejemplos de problemas parametrizados por un número , donde la dureza del problema no es monotónica en k . La mayoría de los problemas (en mi experiencia) tienen una transición de fase única, por ejemplo, k -SAT tiene una transición de fase única de k ∈ { 1 , 2 } (donde el problema está en P) a k ≥ 3 (donde el problema es NP- completar). Me interesan los problemas en los que hay transiciones de fase en ambas direcciones (de fácil a difícil y viceversa) a medida que k aumenta.
Mi pregunta es algo similar a la que se hizo en Hardness Jumps in Computational Complexity , y de hecho algunas de las respuestas allí son relevantes para mi pregunta.
Ejemplos que conozco:
- coloración de los gráficos planos: en P excepto cuando k = 3 , donde es NP-completo.
- Árbol Steiner con terminales: en P cuando k = 2 (colapsa a la ruta s - t más corta) y cuando k = n (colapsa a MST), pero NP-hard "en el medio". No sé si estas transiciones de fase son nítidas (por ejemplo, P para k 0 pero NP-duro para k 0 + 1 ). También las transiciones de k dependen del tamaño de la instancia de entrada, a diferencia de mis otros ejemplos.
- Contando asignaciones satisfactorias de una fórmula plana módulo : en P cuando n es un número
primo deMersenne n = 2 k - 1 , y # P-complete para lamayoría (?) /Todos los demás valores de n (de Aaron Sterling en este hilo ) . ¡Muchas transiciones de fase! - Detección inducida de subgrafía: el problema no está parametrizado por un entero sino por un gráfico. Existen gráficos (donde ⊆ denota un cierto tipo de relación de subgrafo), para lo cual determinar si H i ⊆ G para un gráfico dado G está en P para i ∈ { 1 , 3 } pero NP- completa para i = 2 . (de Hsien-Chih Chang en el mismo hilo ).
Respuestas:
Un campo con mucha no monotonicidad de la complejidad del problema es la prueba de propiedades. Deje que sea el conjunto de todos los gráficos de n -vértices, y llame a P ⊆ G n una propiedad de gráfico. Un problema genérico es determinar si un gráfico G tiene la propiedad P (es decir, G ∈ P ) o está "lejos" de tener la propiedad P en algún sentido. Dependiendo de qué es P y qué tipo de acceso de consulta tiene al gráfico, el problema puede ser bastante difícil.solnorte norte PAGS⊆ Gnorte sol PAGS G ∈ P PAGS PAGS
Pero es fácil ver que el problema no es monótono, ya que si tenemos , el hecho de que P sea fácilmente comprobable no implica que S sea fácilmente comprobable o que T lo sea.S⊂ P⊂ T PAGS S T
Para ver esto, es suficiente observar que y P = ∅ son ambos trivialmente comprobables, pero que para algunas propiedades, existen fuertes límites inferiores.PAGS= Gnorte PAGS= ∅
fuente
Para un gráfico dado y un número entero k ≥ 1 , la k -ésima potencia de G , denotada por G k , tiene el mismo conjunto de vértices de tal manera que dos vértices distintos son adyacentes en G k si su distancia en G es como máximo k . El problema de la potencia k de la gráfica dividida pregunta si una gráfica dada es la potencia k de la gráfica dividida.sol k ≥ 1 k sol solk solk sol k k k
fuente
Uno de estos problemas es la coloración de bordes de gráficos planos donde el parámetro es - grado máximo de un gráfico. Cuando Δ = 2 o Δ ⩾ 7 se conocen algoritmos polinómicos exactos para él ( ver aquí ), mientras que para 3 ⩽ Δ ⩽ 6 dichos algoritmos no se conocen y no hay pruebas de dureza NP para estos casos.Δ Δ = 2 Δ ⩾ 7 3 ⩽ Δ ⩽ 6
La pregunta relacionada se discute aquí .
fuente
Determinar si un gráfico tiene una camarilla dominante para:sol
El caso se debe a Brandstädt y Kratsch , y el caso d i a m ( G ) = 2 se señala en un artículo mío reciente .rei a m ( G ) = 3 rei a m ( G ) = 2
fuente
¿Es este un ejemplo del fenómeno que estás buscando?
Considere el problema de k-Clique, donde k es el tamaño de la camarilla que estamos buscando. Entonces el problema es "¿Hay una camarilla de tamaño k en el gráfico G en n vértices?"
Para todas las constantes k, el problema está en P. (El algoritmo de fuerza bruta se ejecuta en el tiempo . Para valores grandes de k, por ejemplo valores como n / 2, es NP-completo. Cuando k se acerca mucho a n, como nc para alguna constante c, el problema está en P nuevamente porque podemos buscar en todos los subconjuntos de n vértices de tamaño nc y verificar si alguno de ellos forma una camarilla. (Solo hay O ( n c ) tales subconjuntos, que son polinómicamente grandes cuando c es una constante).O(nk) O(nc)
fuente
Aquí hay un ejemplo que podría ser del tipo que estás buscando. Sin embargo, el parámetro no es un entero, es un par de números. (Aunque uno de ellos se puede arreglar para que sea un problema de un parámetro).
El problema es evaluar el polinomio de Tutte de un gráfico G en las coordenadas (x, y). Podemos restringir las coordenadas para que sean enteros. El problema está en P si (x, y) es uno de los puntos (1, 1), (-1, -1), (0, -1), (-1,0) o satisface (x-1 ) (y-1) = 1. De lo contrario, es # P-duro.
Obtuve esto del artículo de Wikipedia sobre el polinomio de Tutte .
fuente
¿Qué pasa con la cuestión de calcular el permanente de una matriz módulo ? Para k = 2 esto es fácil (ya que permanente = determinante), y Valiant (en " La complejidad de calcular el permanente ") mostró que se puede calcular el módulo 2 d en el tiempo O ( n 4 d - 3 ) para d ≥ 2 por Una variante modificada de la eliminación gaussiana. Pero para k, que no es una potencia de 2 , es UP-Hard.k k=2 2d O(n4d−3) d≥2 k 2
fuente
Otro problema con este fenómeno es el problema MINIMO -SPANNER en gráficos divididos.t
Para una constante , un t -spanner de un gráfico conectado G es un subgrafo de expansión conectado H de G de tal manera que para cada par de vértices x e y , la distancia entre x e y en H es como máximo t veces su distancia en G . El problema MINIMO t -SPANNER solicita un t -spanner con un número mínimo de aristas de un gráfico dado.t t G H G x y x y H t G t t
Un gráfico dividido es un gráfico cuyo conjunto de vértices se puede dividir en una camarilla y un conjunto independiente.
En este documento se demostró que MINIMUM 2-SPANNER en gráficos divididos es NP-hard mientras que para cada , MINIMUM t -SPANNER es fácil en gráficos divididos.t≥3 t
fuente
Ejemplo bien conocido es colorante -Edge.k
Es decidible en tiempo polinómico si contrario es N P -completo .k≠Δ NP
Para gráficos cúbicos, decidir la existencia de coloración de bordes usando:
Holyer, Ian (1981), "La integridad de NP del coloreado de bordes", SIAM Journal on Computing 10: 718–720
http://en.wikipedia.org/wiki/Edge_coloring
fuente
La prueba ha sido anunciada en este documento .
fuente
Ver Chandran, L. Sunil, Deepak Rajendraprasad y Marek Tesař. "Rainbow Coloring of Split Graphs". preimpresión arXiv arXiv: 1404.4478 (2014).
fuente
Decidir si un gráfico de diámetro 1 tiene un conjunto de corte desconectado es trivial. El problema se vuelve NP-duro en los gráficos de diámetro 2, vea este documento y nuevamente es fácil en los gráficos de diámetro, al menos 3, vea este documento .
fuente