Problemas que se pueden usar para mostrar resultados de dureza de tiempo polinómico

58

Al diseñar un algoritmo para un nuevo problema, si no puedo encontrar un algoritmo de tiempo polinómico después de un tiempo, podría intentar probar que es NP-hard en su lugar. Si tengo éxito, he explicado por qué no pude encontrar el algoritmo de tiempo polinómico. No es que sepa con certeza que P! = NP, es solo que esto es lo mejor que se puede hacer con el conocimiento actual, y de hecho el consenso es que P! = NP.

Del mismo modo, supongamos que he encontrado una solución de tiempo polinómico para algún problema, pero el tiempo de ejecución es . Después de mucho esfuerzo, no avanzo en mejorar esto. Entonces, en cambio, podría intentar probar que es 3SUM-hard en su lugar. Por lo general, este es un estado de cosas satisfactorio, no por mi creencia suprema de que 3SUM realmente requiere tiempo , sino porque este es el estado actual del arte, y muchas personas inteligentes han intentado mejorar y han fallado Entonces no es mi culpa que sea lo mejor que puedo hacer.Θ ( n 2 )O(n2)Θ(n2)

En tales casos, lo mejor que podemos hacer es un resultado de dureza, en lugar de un límite inferior real, ya que no tenemos límites inferiores superlineales para máquinas de Turing para problemas en NP.

¿Existe un conjunto uniforme de problemas que se pueden usar para todos los tiempos de ejecución polinomiales? Por ejemplo, si quiero demostrar que es poco probable que algún problema tenga un algoritmo mejor que , ¿hay algún problema X tal que pueda demostrar que es X-hard y dejarlo así?O(n7)

Actualización : Esta pregunta originalmente pedía familias de problemas. Como no hay tantas familias de problemas, y esta pregunta ya ha recibido excelentes ejemplos de problemas difíciles individuales, estoy relajando la pregunta a cualquier problema que pueda usarse para resultados de dureza de tiempo polinomial. También estoy agregando una recompensa a esta pregunta para alentar más respuestas.

Robin Kothari
fuente
55
La página maven.smith.edu/~orourke/TOPP/P11.html resume algunos resultados sobre los límites inferiores (y superiores) de 3SUM y problemas relacionados y vale la pena leerlos.
Tsuyoshi Ito
2
La ausencia de límites inferiores superlineales es para una TM con al menos dos cintas, ¿no es así? Recuerdo haber leído en alguna parte que verificar un palíndromo en una TM de una sola cinta tiene un límite inferior de tiempo cuadrático. Cuando hablamos de límites inferiores dentro de , del tipo vs. , ¿está bien suponer que el modelo exacto de TM no importa mucho? Ω ( n i ) Ω ( n i + 1 )PΩ(ni)Ω(ni+1)
gphilip
3
Fuera de tema: Robin, Tsuyoshi, gracias por presentarnos a la familia 3SUM de límites inferiores: nunca antes había oído hablar de ellos.
gphilip
2
@ Tsuyoshi: Gracias por la información. Esta es una buena encuesta sobre el tema: cs.mcgill.ca/~jking/papers/3sumhard.pdf . @gphilip: Recientemente, algunos geómetras computacionales me presentaron este problema. Supongo que es muy conocido en esa área.
Robin Kothari
Gran pregunta ¿Podría aclarar qué quiere decir con "uniforme": desea limitar la cantidad de preprocesamiento del parámetro?
András Salamon

Respuestas:

35

Sí, el algoritmo más conocido para -SUM se ejecuta en tiempo , por lo que es muy posible que pueda argumentar que algún problema es difícil, porque si está en entonces puedes resolver -SUM más rápido.O ( n k / 2 ) n 7 n 6.99 14kO(nk/2)n7n6.9914

Tenga en cuenta que el problema -SUM se vuelve "más fácil" a medida que aumenta: dado un algoritmo mejorado para -SUM, es bastante fácil obtener un algoritmo mejorado para -SUM: tome todos los pares de números en su dada la instancia -SUM, reemplazando cada par con la suma de los dos, y busca una suma de números de los que son iguales a . Entonces, un algoritmo para -SUM implica un algoritmo para -SUM. Dicho de otra manera, un límite inferior ajustado parak k 2 k O ( n 2 ) n 2 k k 0 O ( n k / 2 - ε ) k O ( n k - 2 ε ) 2 k 2 k kkkk2kO(n2)n2kk0O(nk/2ε)kO(nk2ε)2k2k-SUM es una suposición más fuerte que un límite inferior ajustado para -SUM.k

Otro candidato para un problema difícil es -Clique. Vea mi respuesta -Clique para más información sobre eso . Si puede mostrar (por ejemplo) que un mejor algoritmo para su problema implica un algoritmo para la camarilla, entonces se necesitaría un súper avance para mejorar su algoritmo. La complejidad parametrizada ofrece muchos ejemplos de otros problemas como este: -Clique es difícil para la clase , y -SUM es difícil para .O ( log n ) O ( n 2 ) 3 k W \ [ 1 \] k W \ [ 2 \]kO(logn)O(n2)3kW\[1\]kW\[2\]

Permítame advertirle que aunque es muy conveniente trabajar con problemas como este, los problemas como -SUM no se encuentran entre los "más difíciles" en , por ejemplo, es muy poco probable que cada problema en realidad puede reducirse en tiempo lineal a -SUM. Esto se debe a que -SUM puede resolverse con bits de no determinismo en tiempo lineal, por lo que si todo en tiempo cuadrático puede reducirse a -SUM, entonces y otras consecuencias fantásticas resultan. Puede encontrar más información sobre este punto en el artículo "¿Qué tan difíciles son los problemas duros ?"T I M E [ n 2 ] T I M E [ n 2 ] 3 3 O ( log n ) 3 P N P n 2 n 23TIME[n2]TIME[n2]33O(logn)3PNPn2(En algún momento, "3SUM-hard" se llamó " -hard"; este artículo de SIGACT se quejó correctamente de ese nombre).n2

Ryan Williams
fuente
44
El único problema que tengo con el uso de k-clique es que 3-clique se puede resolver en . Si fuera el caso de que k-clique pareciera requerir , esa sería una gran familia natural para usar. Θ ( n k )O(n2.376)Θ(nk)
Robin Kothari
kkkO(nk/2)kkO(nk/2)
n2
@ Ryan: Tienes razón, son lo mismo. Aunque, con k-SUM, al menos tenemos evidencia en modelos más débiles de que el límite conjeturado es correcto. No conozco ningún argumento que sugiera que 3-camarilla no se pueda resolver más rápido que la multiplicación de matrices.
Robin Kothari
nf(k)f(k)=Θ(k)
14

Ω(n3)

Mihai
fuente
2
¿Qué tal el diámetro de un gráfico? Mejor aún, conviértalo en un problema de decisión "¿Es el diámetro al menos k?". Esto tiene la ventaja de no tener un límite superlineal obvio, que yo sepa.
Raphael el
9

dO(nd)ndd+1

(d+1)kΩ(nd/2+1)d3

J. Erickson, S. Har-Peled y DM Mount, sobre el problema del cuadrado mínimo mínimo, geometría discreta y computacional, 36, 593-607, 2006. http://www.cs.umd.edu/~mount/Papers /dcg06-lms.pdf

J. Erickson y R. Seidel. Mejores límites inferiores para detectar una degeneración fina y esférica. Computación discreta. Geom., 13: 41–57, 1995. http://compgeom.cs.uiuc.edu/~jeffe/pubs/degen.html

J. Erickson. Nuevos límites inferiores para problemas de casco convexo en dimensiones extrañas. SIAM J. Comput., 28: 1198–1214, 1999. http://compgeom.cs.uiuc.edu/~jeffe/pubs/convex.html

Guilherme D. da Fonseca
fuente
Me gusta esta respuesta, pero ¿podrías explicarme? ¿Por qué se cree?
Aaron Sterling
8

Θ(n4/3)nn

Jeffε
fuente
77
¿Hay algún problema no geométrico que se reduzca al problema de Hopcroft?
Suresh Venkat
Decidí otorgar la recompensa a esta respuesta porque nunca antes había oído hablar de este problema.
Robin Kothari