Si se demuestra P = NP, ¿cómo cambiará el campo de la inteligencia artificial?

Su pregunta tiene un alcance demasiado limitado. Existe la posibilidad de que descubrir que P = NP (lo que sería increíblemente sorprendente para muchas personas) o incluso que BQP = NP (igualmente sorprendente, aunque aprovecharlo requeriría la construcción de verdaderas computadoras cuánticas) cambiaría TODO , no solo AI.

Para que quede claro, para que el resultado P = NP sea interesante, necesitaríamos ver algo así como un algoritmo O (n ^ 6) para SAT o algo así. Un algoritmo O (n ^ 1000), aunque teóricamente interesante, no va a ayudar a nadie. Pero supongamos que tal cosa es creada. ¿Entonces que?

Para empezar, todo se vuelve mucho más rápido: las computadoras se aceleran, los envíos se aceleran, las redes se aceleran, etc., a medida que se resuelven las soluciones óptimas para los problemas NP-hard del día a día. Hay varias razones diferentes para este aumento de velocidad, que incluyen enrutamiento mejorado, búsqueda mejorada y compresión mejorada.

A continuación, una gran cantidad de los métodos criptográficos utilizados actualmente se vuelven vulnerables. Todo lo que cualquier gobierno ha hecho se convierte en conocimiento público de la noche a la mañana. Puedes imaginar el resultado.

Pero supongo que tenías un interés particular en la inteligencia, así que veamos qué sucede allí. En primer lugar, tenga en cuenta que un algoritmo polinómico para algunos problemas NP-duros no cambiará el estado de la pregunta “¿Es posible la inteligencia artificial a nivel humano?” La existencia de humanos ya es una gran evidencia de que la respuesta es “sí”, ya sea que estemos o no resolviendo problemas de NP completo para lograrlo. (Esa es otra pregunta para la cual la respuesta es probablemente “no”.) Además, si la inteligencia sobrehumana es solo una cuestión de escala, puede que no tenga ningún efecto sobre el estado de esa pregunta tampoco, pero también puede romper las limitaciones que una vez El pensamiento existía. (Es mi opinión que el paralelismo masivo es mucho más importante para la inteligencia que los algoritmos seriales rápidos, pero …)

Sin embargo, hay otro significado para la “inteligencia artificial” que se verá muy afectado. Muchas personas usan este término para describir soluciones a problemas de búsqueda ingeniosamente transformados. Por ejemplo, una IA que juega al ajedrez solo está haciendo una búsqueda, al igual que la mayoría de los “sistemas inteligentes” que funcionan en la actualidad. El “Watson” de IBM se basa en un algoritmo de búsqueda inteligente. Los algoritmos de planificación para controles y sistemas de prueba automatizados son solo búsquedas. Y su relación con la búsqueda es lo que hace que NP sea una clase que valga la pena estudiar.

Una forma de responder la pregunta “¿Qué es NP?” es que es la clase de preguntas de la forma “¿Existe al menos una cosa X para la cual P (X) es verdadera?” * Visto de esta manera, está bastante claro que los problemas de NP tienen que ver con la búsqueda. ¿Existe un movimiento de ajedrez que garantice que gano? ¿Existe un documento que contenga una respuesta a esta pregunta? ¿Hay una secuencia de acciones garantizada para llevarme allí desde aquí?

Entonces, mirando las inteligencias artificiales como “máquinas que buscan”, queda claro que muchas de esas máquinas serán más confiables y obtendrán mejores respuestas más rápido si todos los problemas de NP pueden resolverse en un tiempo polinómico de bajo grado.

Es decir, de nuevo, solo un pequeño subconjunto de las cosas que llamamos inteligencias artificiales, y todavía habrá muchos problemas abiertos incluso si P = NP. Por ejemplo, algoritmos de aprendizaje, procesamiento del lenguaje natural, visión, controles robóticos y una variedad de problemas de optimización y conteo. Quizás algunos de estos también verán mejoras como resultado, porque es difícil adivinar todo lo que podría caerse de tal innovación, pero ninguno se resolverá por completo.

* La otra cosa es que P (X) debe ser verificable en el tiempo polinómico, que incluye muchos, pero no todos, los problemas que nos interesan.

Hace algunos años, tuve la suerte de asistir a una charla dada por Donald Knuth (resultó que alguien en nuestro programa de matemáticas conocía a alguien que lo conocía y logró convencerlo de que lo visitara), y alguien en la audiencia le preguntó si él creía que P = NP. Su respuesta fue que él creía que P = NP, pero temía que la prueba no fuera constructiva.

Es decir, existe la posibilidad de que podamos demostrar que existe un método para resolver rápidamente cualquier problema de NP, pero es posible que no podamos necesariamente dar explícitamente este algoritmo. Este sería un interesante contrapunto al escenario planteado por David Rutter, en el sentido de que nada cambiaría (excepto, presumiblemente, una persona sería $ 1M más rica).

EDITAR:

O tal vez no. Vea el comentario de Robin Adams en los comentarios.

No creo que cambie las cosas en absoluto.

En la práctica, existen muchas soluciones aproximadas / probabilísticas para la mayoría de los problemas difíciles de NP que surgen en el mundo real.

Por ejemplo, mientras que el isomorfismo gráfico es NP difícil, en la práctica se hace todo el tiempo usando algoritmos que son prácticamente lineales, con una probabilidad esencialmente baja arbitraria de falso positivo, usando un tipo de algoritmo hash (esto se usa en herramientas de comparación de redes CAD todo el tiempo).

Es como el problema de la detención, un caso límite / curiosidad en los algoritmos, es divertido pensar en eso, pero en el mundo real seguimos la vida con aproximaciones lo suficientemente buenas para casi todo. Hay muy pocas situaciones en las que el resultado óptimo de un algoritmo duro NP no pueda ser aproximado satisfactoriamente por algún otro truco.

La IA no sufre la falta de potencia de la computadora para calcular los problemas difíciles de NP, sino la falta de alguien que tenga buenas ideas sobre qué algoritmos implementar para crear sentido común y razonamiento al nivel de incluso un niño de un año.

El cerebro humano no necesita P = NP para funcionar, solo tiene una buena arquitectura y se las arregla con la respuesta aproximada. El truco consiste en saber qué nivel de abstracción debe analizarse un problema y una respuesta aproximada para resolverlo, sin calcular el problema del vendedor ambulante de manera óptima.

P = NP se puede ver desde muchos ángulos. El más cercano a mi pensamiento como programador es como un problema de búsqueda.

Si P = NP es cierto universalmente, que para cada problema que puede resolverse generando todas las soluciones posibles y probando su idoneidad, se puede encontrar una mejor solución constructiva que evite generar y probar.

Eso sería increíble, pero un ideal que probablemente no habremos alcanzado en la práctica dentro de un par de miles de años en lo que respecta a la tecnología, incluso si fuera matemáticamente probado mucho antes.

Esta pregunta coquetea con la idea del tiempo, en mi opinión matemática: para las computadoras puede sugerir que no hay diferencia en el tiempo requerido para calcular un escenario del tiempo requerido para calcular todos los escenarios, y seleccionar el mejor (“computadoras cuánticas” [tos ]):

Hipótesis 1. Si el tiempo no existe, para nosotros es simplemente una medida utilizada para parametrizar lo que ya se ha resuelto. Entonces, cualquier cerebro que pueda explotar las propiedades cuánticas es capaz de calcular a un nivel no clásico. Recomendaría la charla de DWave a continuación:

Hipótesis 2. Daría credibilidad al modelo de abajo hacia arriba de nuestro universo, como si la IA pudiera ser diseñada para superar a la humanidad; seríamos tan insignificantes para ellos como las hormigas para nosotros cuando construimos puentes. Eso es tranquilizador, ¡quiero vivir en un zoológico de personas!

[lol \]

-io

Esta pregunta se discute en esta TEDx Talk recientemente publicada:

Próxima generación de inteligencia artificial biológicamente inspirada | Tara Karimi | TEDxRiceU

La cognición es sistémica, apuesta a lineal. La clase de estos problemas es np, por lo que comprenderlos permitiría que naciera un sistema auto interactivo, como nuestros cerebros. Por ejemplo, sudoku está determinado no por un simple valor X, sino por cuántos valores interactúan para producir lo que he llamado un sistema. Un cerebro es de la misma manera, las neuronas singulares no tienen sentido, solo en su sistema, como la disposición específica de un cerebro humano, son “humanos”.

He escrito más sobre esto, y posibles soluciones a los otros problemas del milenio en un documento,

REVISTA DE AVANCES EN FÍSICA,

Puede buscar información más detallada.

Olvídate de la fxxxxx AI, ¡preocúpate primero por la seguridad!