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 )
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í?
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.
fuente
Respuestas:
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 14k O(n⌈k/2⌉) n7 n6.99 14
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 kk k k 2k O(n2) n 2k k 0 O(nk/2−ε) k O(nk−2ε) 2k 2k -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 \]k O(logn) O(n2) 3 k W\[1\] k W\[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 23 TIME[n2] TIME[n2] 3 3 O(logn) 3 P≠NP n2 (En algún momento, "3SUM-hard" se llamó " -hard"; este artículo de SIGACT se quejó correctamente de ese nombre).n2
fuente
fuente
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
fuente
fuente