La dureza salta en la complejidad computacional?

34

El problema del ancho de banda mínimo es encontrar un orden de los nodos del gráfico en la línea entera que minimiza la mayor distancia entre dos nodos adyacentes. Una oruga es un árbol formado a partir de la ruta principal mediante el crecimiento de rutas de longitud disjuntas de borde a lo sumo desde sus nodos ( se llama longitud del cabello). El problema del ancho de banda mínimo está en para las orugas de 2 pero es completo para las orugas de 3.kkkPNP

Aquí hay un hecho muy interesante, el problema del ancho de banda mínimo se puede resolver en tiempo polinómico para orugas 1 (longitud del cabello como máximo) pero es completo para orugas 1 cíclicas (en oruga cíclica, se agrega un borde para conectar los puntos finales del camino principal). Por lo tanto, la adición de exactamente un borde hace que el problema sea completo.NPNP

¿Cuál es el ejemplo más sorprendente del salto de dureza del problema en el que una pequeña variación de la instancia de entrada provoca un salto de complejidad desde la capacidad de resolución en tiempo polinómico hasta la completitud ?NPAGS

Mohammad Al-Turkistany
fuente
66
Permanente vs Determinante. Estos son dos problemas diferentes (así que supongo que no califica como respuesta), pero el salto de dureza es bastante sorprendente.
Jagadish
@Jagadish, estoy de acuerdo. Aún así, creo que puedes publicarlo como respuesta.
Mohammad Al-Turkistany
8
El permanente de una matriz 0-1 puede verse como el valor esperado del determinante de la matriz cuando las entradas 1 se reemplazan por +1 o -1 al azar.
Dana Moshkovitz el
@Dana, ¿podría hacer que su comentario sea una respuesta por separado? (preferiblemente con una referencia)
Mohammad Al-Turkistany
Wiki de la comunidad?
Niel de Beaudrap

Respuestas:

46

Uno de los ejemplos aplicados más interesantes de saltos de dureza se puede observar en el siguiente problema:

Considere un campeonato de la liga de fútbol con equipos: el problema de decidir si un equipo determinado puede (todavía) ganar la liga está en si en un partido, el equipo ganador recibe 2 puntos, el perdedor 0 y cada equipo recibe 1 punto en un partido de empate. Pero si cambiamos las reglas para que el equipo ganador obtenga 3 puntos, el mismo problema se convierte en duro.P N PnPNP

El resultado puede generalizarse para cualquier regla de punto para cada e incluso para solo tres rondas restantes.k > 2(0,1,k)k>2

Fuente: "Teoría de la complejidad" por Ingo Wegener ( http://portal.acm.org/citation.cfm?id=1076319 )

Dimitri Scheftelowitsch
fuente
12
esto me recuerda a TSP: puede obtener un 1.5 aprox con pesos que son 1 o 2, pero no si los pesos son 1 o 3
Suresh Venkat
24

Esto responde la pregunta que se hace en el título de la pregunta, pero no la que se hace en la pregunta.

Un ejemplo sorprendente de salto en dureza surge de la pregunta: "¿Cuántas tareas satisfactorias tiene una fórmula plana, módulo ?" Se pensó ampliamente que esto era # P-hard, y es para "la mayoría" de los valores de , pero si es un número entero de Mersenne (por ejemplo , porque 7 es de forma ), entonces el La respuesta se puede calcular en tiempo polinómico.n n n = 7 2 3 - 1nnnn=7231

Esto fue descubierto por primera vez por Valiant, en su innovador artículo Algoritmos holográficos.

Aaron Sterling
fuente
44
Eso no está del todo bien. La fórmula no solo necesita ser plana. También debe ser monótono, leer dos veces y tener cláusulas de tamaño , donde . La presentación de Valiant en Algoritmos Holográficos es fijar el tamaño de la cláusula a y luego variar el módulo. Se conocía la dureza característica 0 (es decir, el arnés # P). Valiant probó la dureza mod 2 y la tractable mod 7. Tenga en cuenta que esta dureza es dureza , no dureza # P. Creo que el mod de complejidad de otros valores está abierto. Más tarde, Jin-Yi Cai y Pinyan Lu dieron trazabilidad para todos los . n = 2 k - 1 k = 3 P = # 2 P kkn=2k1k=3P=#2Pk
Tyson Williams
2
Para obtener más información sobre esto, incluidas las referencias en papel, consulte Holographic_algorithm # History en Wikipedia.
Tyson Williams
21

INDEPENDENT SET es NP-complete para gráficos sin cruz (triángulo) , pero se puede resolver en tiempo lineal para gráficos sin silla (triángulo) . (Los gráficos sin X son aquellos que no contienen ningún gráfico de X como un subgrafo inducido).

silla: imagen del gráfico de silla de ISGCI triángulo: imagen del gráfico de triángulo de ISGCI cruz:imagen del gráfico cruzado de ISGCI

Observe que la cruz se obtiene de la silla agregando un solo borde.

András Salamon
fuente
12
¿Qué pasa con este ejemplo más simple? SET INDEPENDIENTE es NP-c para gráficos sin , pero puede resolverse en tiempo lineal para gráficos sin (es decir, sin garras). K 1 , 3K1,4K1,3
vb le
19

No estoy seguro de estar de acuerdo con su caracterización de que agregar un solo borde a la entrada hace que el problema sea NP completo, ya que uno realmente permite que se agregue un borde a cada una de las infinitas instancias de entrada.

Aquí hay un ejemplo de un problema que muestra una dicotomía aguda a lo largo de las líneas que sugiere.

El problema de determinar si existe un homomorfismo gráfico desde el gráfico de entrada G hasta un gráfico de plantilla fijo H está en P cuando H es un gráfico con un bucle automático o es un gráfico sin bucle bipartito. Cuando H no es bipartito (esto a menudo se puede lograr agregando un solo borde), entonces el problema se vuelve NP completo.

La clave aquí es que 2 colores están en P (esto corresponde a un homomorfismo a , el camino en 3 vértices), mientras que 3 colores son NP completos (esto corresponde a un homomorfismo a K 3 , el triángulo).P3K3

András Salamon
fuente
14

Aquí hay otro ejemplo interesante, planteado en la detección inducida de subgrafía:

Un theta es un gráfico con vértices no adyacentes x,y , tres caminos P1,P2,P3 de x a y , donde cualquiera de los dos caminos induce un ciclo con una longitud mayor que 3.

Una pirámide es un gráfico con un vértice x , un triángulo y1,y2,y3 , y rutas Pi de x a yi para cada i=1,2,3 , con a lo sumo una ruta con longitud uno.

Finalmente, un prisma es un gráfico con dos triángulos x1,x2,x3 e y1,y2,y3 , y las rutas Pi de xi a yi para cada i=1,2,3 .

Es fácil de describir en las figuras:

theta, prisma y pirámide

Para detectar la theta y la pirámide inducidas, se sabe que se encuentra en tiempo polinómico. (De hecho, el algoritmo más conocido para theta toma O(n11) tiempo, y para la pirámide toma O(n9) . Pero para detectar un prisma inducido, el problema se vuelve NP-difícil.

Se puede ver " Detección de subgrafías inducidas " por Leveque, Lin, Maffray y Trotignon como referencia. La razón por la que theta y la pirámide son relativamente fáciles está relacionada con el problema de "tres en un árbol", descrito en " El problema de tres en un árbol " por Chudnovsky y Seymour.

Hsien-Chih Chang 張顯 之
fuente
13

er ... estoy seguro de que estás buscando ejemplos menos triviales ... pero me gustaría señalar que hay algo especial en el número vs 3 . 2 - S A T a 3 - S A T , 2 - C O L vs 3 - C O L , etc. Intuitivamente, siempre pensé que era porque un nodo con como máximo 2 aristas puede formar como máximo una línea, pero un nodo con 3 aristas puede formar un árbol, cuando nos movemos de 2-3 obtenemos una explosión combinatoria.232SAT3SAT2COL3COL

gabgoh
fuente
99
Por otro lado, MAX 2SAT es difícil. entonces 2 no es TAN especial.
Suresh Venkat
1
2 Y la integridad perfecta parece especial sin embargo. :)
Daniel Apon el
Además, coincidencia perfecta 2D vs coincidencia perfecta 3D.
Mohammad Al-Turkistany
13

Creo que no tiene mucho sentido hablar de instancias. Podemos hablar sobre dos distribuciones de instancias de entrada con diferentes dificultades, pero sería más interesante si existe una relación entre la distribución, o entre instancias en las distribuciones.

Podemos considerar una familia de distribuciones parametrizadas y luego hablar sobre lo que sucede cuando cambiamos el parámetro. Quizás le interese lo que se llama el fenómeno umbral , "donde un sistema sufre un cambio cualitativo rápido como resultado de un pequeño cambio en un parámetro ...". Eche un vistazo a esta encuesta: Ehud Friedgut , "En busca de umbrales agudos ", Algoritmos de estructuras aleatorias 26, 2005.

Creo que uno de los ejemplos más llamativos y hermosos es el k-SAT aleatorio con densidad de cláusula , la transición de fase es realmente sorprendente.Δ

Kaveh
fuente
11

Inferencia de tipos para los términos lambda es DEXPTIME-completo con prenex y rango-2 sistemas de tipo polimórfico (cuando cuantificadores tipo están anidados a lo más un nivel profundo), pero se vuelve undecidable Ranking-3 y superior. Es extraño que un nivel de anidación adicional pueda hacer que un problema sea indecidible.

Alex Rubinsteyn
fuente
10

Encontrar el estado fundamental del modelo de Ising plano con un campo magnético 0 está en P, con un campo magnético distinto de cero es NP-duro. La función de partición del modelo Ising plano con un campo magnético 0 está en P, con un campo magnético distinto de cero es NP-duro.

Yaroslav Bulatov
fuente
9

Aquí hay un buen problema con un salto de complejidad interesante como Ancho de banda mínimo que abordó en su pregunta.

Deje un grafo y T un árbol de expansión de G . El desvío de un borde u v E ( G ) es la única u - v trayectoria en T . La congestión de e E ( T ) , denotada por c n g G , T ( e ) es el número de desvíos que contienen e . La congestión de G en T , denotada por c n g GGTGuvE(G)uvTeE(T)donortesolsol,T(mi)misolT , es la congestión máxima sobre todos los bordes en T . La congestión del árbol de expansión de G , denotado por s t c ( G ) , es la mínima congestión de todos los árboles que abarcan de G . El problema de la congestión de árbol de expansión pregunta si un gráfico dado tiene congestión de árbol de expansión como máximo alguna k dada.donortesolsol(T)Tsolstdo(sol)solk

El siguiente salto de complejidad se muestra en: Bodlaender et al., Complejidad parametrizada del problema de congestión de Spanning Tree , Algorithmica 64 (2012) 85–111 :

Por cada fijo y d el problema es resoluble en tiempo lineal para gráficos de grado en la mayoría d . Por el contrario, si permitimos solo un vértice de grado ilimitado, el problema se convierte inmediatamente en N P -completo para cualquier k 8 fijo .krerenortePAGSk8

vb le
fuente
8

Me pregunto por qué nadie mencionó esto:

Horn-Sat vs K-Sat

Supongo que todos saben lo que es. Si no:

Horn-Sat es encontrar si un conjunto de cláusulas de claxon es satisfactorio (cada cláusula tiene como máximo 1 literal positivo).

K-Sat es encontrar si un conjunto de cláusulas es satisfactoria (cada cláusula puede tener más de 1 literales positivos).

Entonces, permitir más de un literal positivo en cada cláusula hace que el problema de P-complete NP-complete.

Jorge
fuente
7

Coloración gráfica

Como se mencionó en otra respuesta, 2-COL es solucionable en tiempo polinómico mientras que 3-COL es NP-completo. Pero al aumentar el número de colores, después de algún punto (¿desconocido?), El problema se vuelve más fácil.

Por ejemplo, si tenemos N vértices y N colores, el problema puede resolverse asignando un color diferente a cada vértice.

Jorge
fuente
CUALQUIER gráfica plana es de 4 colores. [1]: projecteuclid.org/DPubS/Repository/1.0/…
rphv
6

En una vena similar: permanente vs determinante.

Jagadish
fuente
3
La diferencia entre perm y det es en realidad mucho más significativa y de un tipo diferente que los otros saltos de dureza discutidos en la pregunta y las otras respuestas. La negación es muy poderosa: en cierto sentido, es lo que nos permite calcular det fácilmente pero no permanente; Valiant tiene un documento "La negación puede ser exponencialmente poderosa" portal.acm.org/citation.cfm?id=804412 ; Se conocen muchos límites inferiores para la complejidad monótona (incluso en el modelo algebraico, donde la monotonicidad excluye negaciones y constantes negativas), pero muy pocos de estos se traducen en una complejidad no monótona.
Joshua Grochow el
3
Otro ejemplo: la negación también es necesaria para el algoritmo de Strassen para multiplicar matrices 2x2. Sin él, no se puede superar el algoritmo trivial para multiplicar matrices de 2x2.
Joshua Grochow el
6

Acabo de leer un artículo que trata sobre particiones hipergráficas . El problema se define así, cita:

kl1l<kPklH=(V,E)t1,,tkEl |VEl |=norte=yo=1ktyoEl |miEl |=metroVkt1,...,tkmil

En general, está comprobado que:

  • PAGSk1norte,metrok2
  • PAGSkl2l<k

Si esto no es suficiente para "saltar", sigue leyendo. Para las hipergrafías con hiperedges disjuntas, se muestra:

  • Pk1k2
  • Pklm2l<k

Laurent Lyaudet. 2010. NP-hard y variantes lineales de partición hipergráfica. Theor Comput Sci. 411, 1 (enero de 2010), 10-21. http://dx.doi.org/10.1016/j.tcs.2009.08.035

Rafael
fuente
5

Se conocen saltos de complejidad interesantes por el problema de programación del taller.

nMmjμjO1j,O2j,,OμjjOijpijmijMCjj

Cmax=maxjCjCj

J||γγ

J2|n=k|FJ|n=2|FJ2 (n=k)2 (k)F

J3|n=3|CmaxJ3|n=3|C

J2||CmaxJ2||C

Por lo tanto, aquí podemos ver que hay un salto cuando pasamos de dos trabajos / máquinas a tres.

Oleksandr Bondarenko
fuente
1
Bien, estoy confundido con la terminología especial. ¿Podría por favor simplificar la terminología (o incluso mejor eliminarla)?
Mohammad Al-Turkistany
1

Ennorte(1-o(1))Ennorte

Andras Farago
fuente
0

2norte2norte(una+si)norte=yo0 ..norte(norteyo)unayosinorte-yopagssi(una)una=si=12norte=pags1(1)reTyoMETROmi(2norte)(k<norte)PAGS=nortePAGS=reTyoMETROmi(2norte)PAGS=nortePAGS

Esa Pulkkinen
fuente