Buenos ejemplos de "dos es fácil, tres es difícil" en ciencias computacionales


29

Recientemente me encontré con una formulación del meta-fenómeno : " dos es fácil, tres es difícil " (redactado de esta manera por Federico Poloni), que se puede describir de la siguiente manera:

Cuando se formula un cierto problema para dos entidades, es relativamente fácil de resolver; sin embargo, un algoritmo para una formulación de tres entidades aumenta enormemente la dificultad, posiblemente incluso haciendo que la solución no sea factible o no alcanzable.

(Agradezco sugerencias para hacer que la redacción sea más bella, concisa y precisa).

¿Qué buenos ejemplos en diversas áreas de las ciencias de la computación (comenzando con álgebra lineal pura y terminando con una física computacional a término) conoce?


2
La maldición de la dimensionalidad viene a la mente.
Paul

44
gráfico de 2 colores ( fácil ) versus 3 colores ( NP-hard ), ver aquí
GoHokies

55
@GoHokies Por favor, no publique respuestas como comentarios.
David Richerby

44
Desde la base de los antecedentes matemáticos o de recursión, puede encontrar la función TREE , donde TREE (2) = 3 y TREE (3) es ... bastante grande. (no estoy familiarizado con las ciencias computacionales, no estoy seguro de que esta sea realmente una respuesta que está buscando, pero parece lo suficientemente similar como para dejar un comentario al respecto)
BurnsBA

2
Un contraejemplo: "Nunca vaya al mar con dos cronómetros; tome uno o tres". Dicho esto, hay tantos buenos ejemplos que no hay una respuesta correcta. Esta pregunta debería ser wiki comunitaria.
David Hammen

Respuestas:


35

Un ejemplo que aparece en muchas áreas de la física, y en particular la mecánica clásica y la física cuántica, es el problema de los dos cuerpos. El problema de dos cuerpos aquí significa la tarea de calcular la dinámica de dos partículas que interactúan y que, por ejemplo, interactúan por fuerzas gravitacionales o de Coulomb. La solución a este problema a menudo se puede encontrar en forma cerrada mediante una transformación variable en coordenadas de centro de masa y relativas.

Sin embargo, tan pronto como considere tres partículas, en general no existen soluciones de forma cerrada .


3
Nitpick que estoy seguro de que sabes, pero tu respuesta no dice: hay soluciones de forma cerrada para el problema de los 3 cuerpos, pero solo para algunos casos especiales
llama

buen truco, gracias, "en general" falta aquí.
davidhigh

Tenga en cuenta que el problema de los 3 cuerpos tiene una solución en serie ( muy lentamente convergente) encontrada por Sundman a principios del siglo XX y una versión más débil (que ignora las singularidades donde los cuerpos colisionan) se encontró para el problema del cuerpo n en 1990.
WorldSEnder

27

Un ejemplo famoso es el problema de satisfacción booleana (SAT). 2-SAT no es complicado de resolver en tiempo polinómico, pero 3-SAT es NP-completo.


3
3-SAT se puede reducir a gráficos de 3 colores, o viceversa
GoHokies

8
@GoHokies ¿Pensé que eso es cierto para cada problema np-complete? ¿O es algo especialmente notable sobre estos dos? Sry si esta es una pregunta estúpida, mi conocimiento en esta área es básico. Pero así es como entiendo el teorema de los cocineros
findusl

2
@findusl Tienes toda la razón. Lo que hace que 3-SAT y 3 colores sean "especiales" es la dicotomía 2 vs 3 del OP.
GoHokies

26

En una y dos dimensiones, todos los caminos conducen a Roma, pero no en tres dimensiones.

Específicamente, dado un paseo aleatorio (igualmente probable que se mueva en cualquier dirección) en los enteros en una o dos dimensiones, entonces, sin importar el punto de partida, con probabilidad uno (también conocido como casi seguro), el paseo aleatorio eventualmente llegará a un lugar específico designado punto ("Roma").

Sin embargo, para tres o más dimensiones, la probabilidad de llegar a "Roma" es menor que uno; con la probabilidad de disminuir a medida que aumenta el número de dimensiones.

Entonces, por ejemplo, si realiza una simulación estocástica (Monte Carlo) de una caminata aleatoria que comienza en "Roma", que se detendrá cuando regrese a Roma, entonces en una y dos dimensiones, puede estar seguro de que eventualmente regresará a Roma y detener la simulación, tan fácil. En tres dimensiones, es posible que nunca vuelvas tan fuerte.

https://en.wikipedia.org/wiki/Random_walk#Higher_dimensions

Para visualizar el caso bidimensional, uno puede imaginar a una persona caminando al azar por una ciudad. La ciudad es efectivamente infinita y está organizada en una cuadrícula cuadrada de aceras. En cada intersección, la persona elige aleatoriamente una de las cuatro rutas posibles (incluida la que originalmente viajó). Formalmente, esta es una caminata aleatoria en el conjunto de todos los puntos en el plano con coordenadas enteras.

¿Volverá alguna vez la persona al punto de partida original de la caminata? Este es el equivalente bidimensional del problema de paso a nivel discutido anteriormente. En 1921, George Pólya demostró que la persona seguramente haría una caminata aleatoria bidimensional, pero para 3 dimensiones o más, la probabilidad de regresar al origen disminuye a medida que aumenta el número de dimensiones. En 3 dimensiones, la probabilidad disminuye a aproximadamente el 34%

Ver http://mathworld.wolfram.com/PolyasRandomWalkConstants.html para valores numéricos.


21

Aquí hay uno cercano a los corazones de los contribuyentes en SciComp.SE:

El problema de existencia y suavidad de Navier – Stokes

La versión tridimensional es, por supuesto, un famoso problema abierto y el tema de un premio Clay Millenium de un millón de dólares. Pero la versión bidimensional ya se resolvió hace mucho tiempo, con una respuesta afirmativa. ¡Terry Tao señala que la solución se remonta esencialmente a la tesis de Leray en 1933!

¿Por qué el problema tridimensional es mucho más difícil de resolver? La respuesta estándar, ondulada a mano, es que la turbulencia se vuelve significativamente más inestable en tres dimensiones que en dos. Para obtener una respuesta matemáticamente más rigurosa, consulte la declaración oficial del problema de Charles Fefferman en el Clay Institute o la agradable exposición de Terry Tao sobre las posibles estrategias de prueba .


20

En la teoría de la elección social, diseñar un esquema de elección con dos candidatos es fácil (reglas mayoritarias), pero diseñar un esquema de elección con tres o más candidatos necesariamente implica hacer compensaciones entre varias condiciones que suenan razonables. ( Teorema de imposibilidad de Arrow ).


11

Diagonalización simultánea de dos matrices A1 y A2 :

U1TA1V=Σ1,U2TA2V=Σ2
está cubierto por ladescomposición del valor singular generalizadoexistente.

Sin embargo, cuando se requiere la reducción simultánea de tres matrices a una forma canónica (condición más débil en comparación con lo anterior):

QTA1Z=A1~,QTA2Z=A2~,QTA3Z=A3~
no existen métodos directos. Por lo tanto, uno tiene que optar por rutas más complicadas usando SVD aproximadas, descomposiciones de tensor, etc.

Una aplicación práctica sería una solución para un problema de valor propio cuadrático:

(A1+λA2+λ2A3)x=0

Fuente: CF van Loan, "Conferencia 6: La descomposición generalizada de valores singulares de orden superior", CIME-EMS Summer School, Cetraro, Italia, junio de 2015.


¿Deberían y U T 2 ser V - 1 ? Aquí ni siquiera se les exige que sean iguales. U1TU2TV1
Rosie F

1
@RosieF no es para SVD (generalizado). Vea las primeras ecuaciones aquí , que simplemente no expresan . Σ
Anton Menshov

9

Hay muchos ejemplos en computación cuántica, aunque he estado fuera de esto por un tiempo y no recuerdo muchos. Una de las principales es que el enredo bipartito (enredo entre dos sistemas) es relativamente fácil, mientras que el enredo entre tres o más sistemas es un desastre sin resolver con probablemente cien artículos escritos sobre el tema.

La raíz de esto es que los tensores de rango 2 (es decir, matrices) pueden analizarse mediante descomposición de valores singulares. No existe nada similar para los tensores de rango 3 o superior. De hecho, incluso algo tan simple como max(uavbwcTabc/uvw) (con sub / superíndices que denotan la suma de Einstein), IIRC, no se cree que sea eficientemente solucionable .

Este artículo parece relevante, aunque no lo he leído: la mayoría de los problemas de tensor son NP-hard


2
Creo que el verdadero problema al que te estás enfrentando es que la descomposición del rango de tensor es fácil para los tensores de orden 1 (vectores) y los tensores de orden 2 (matrices), pero NP difícil para el resto
Richard Zhang

Eso es parte de esto, pero incluso si tuvieras una forma de descomponerlos, todavía existe el problema de categorizar / clasificar. Para el enredo, las unidades unitarias locales no importan, por lo que todo lo que queda en el caso del orden 2 es una lista de valores singulares (SVD se llama descomposición de Schmidt en este contexto). Para pedidos superiores hay todo un zoológico de posibilidades. Preguntas como qué estados pueden transformarse en otros estados a través de operaciones locales terminan siendo muy difíciles (desde un punto de vista teórico, no necesariamente computacional).
Dan Stahlke

5

La bisección angular con regla y brújula es simple, la trisección angular es en general imposible.



4

Aquí hay uno de optimización: el algoritmo del Método de Multiplicación de Dirección Alternante (ADMM).

Dada una función objetiva no acoplada y convexa de dos variables (las variables mismas podrían ser vectores) y una restricción lineal que une las dos variables:

minf1(x1)+f2(x2)
s.t.A1x1+A2x2=b

Lρ(x1,x2,λ)=f1(x1)+f2(x2)+λT(A1x1+A2x2b)+ρ2||A1x1+A2x2b||22

Lρ(x1,x2,λ)x1x2,λLρ(x1,x2,λ)x2x1,λλ. Este ciclo continúa hasta que se alcanza un criterio de detención.

(Nota: algunos investigadores como Eckstein descartan la vista de división de Gauss-Siedel a favor de los operadores proximales, por ejemplo, consulte http://rutcor.rutgers.edu/pub/rrr/reports2012/32_2012.pdf )

Para problemas convexos, se ha demostrado que este algoritmo converge para dos conjuntos de variables. Este no es el caso de tres variables. Por ejemplo, el problema de optimización

minf1(x1)+f2(x2)+f3(x3)
s.t.A1x1+A2x2+A3x3=b

fxiλ

https://web.stanford.edu/~yyye/ADMM-final.pdf


3

Doblar un trozo de papel por la mitad sin herramientas es fácil. Doblarlo en tercios es difícil.

Factorizar un polinomio con dos raíces es fácil. Factorizar un polinomio con tres raíces es significativamente más complicado.


3
Su primer ejemplo no se ajusta al espíritu de la cita. La idea es que a medida que sube más allá de las dos es más difícil, sin embargo, al doblar un papel, el cuarto es casi tan fácil como la mitad. La cita aquí sería "Incluso es más fácil que impar". Creo que el segundo es bueno, ¡y no importa tratar de simplificarlo con el papel!
Bill K

3

f(x,y)=0f

Esta diferencia tiene varias implicaciones:

  • En el grado 2 hay algoritmos para encontrar todos los puntos racionales (soluciones en números racionales), en el grado 3 no se conoce dicho algoritmo.
  • f(x)ff
  • El problema del logaritmo discreto es manejable en curvas de grado 2, por lo tanto, no es adecuado para aplicaciones criptográficas, mientras que la dureza asumida del mismo problema en las curvas elípticas está en la base de algunos de los criptosistemas de clave pública más populares.

1

La TREEfuncion.

Podemos calcular TREE(2) = 3, pero TREE(3)no es calculable en la vida del universo, solo sabemos que es finito.


TREE(3)es "calculable" dado el tiempo suficiente. Por ejemplo, para cadanorte podrías generar todos los árboles de color de tamaño nortey verifique si cada uno cumple con los criterios necesarios hasta que no existan tales árboles. Pero tomaría una cantidad inimaginable de espacio y tiempo.
Restablece a Mónica

Bien, perdón por el error. Se arregló mi declaración. Gracias solomonoff!
justo

1
Video de Numberphile relacionado sobre Tree (3): youtube.com/watch?v=3P6DWAwwViU
Novato C

1

En un espacio bidimensional, puede introducir una estructura compleja, que se puede utilizar para resolver con elegancia muchos problemas (por ejemplo , problemas de flujo potencial ), pero no existe un análogo en 3 dimensiones.


0

En la física cuántica de muchos cuerpos, estudiamos diferentes redes de n giros en el marco de diferentes modelos (por ejemplo, modelo de Heisenberg, modelo de Bose-Hubbard, modelo de Ising, ...). Por supuesto, tiene diferentes métodos numéricos para estudiarlos (DMRG, diagonalización exacta, redes neuronales, ...) y una de las razones por las que tratamos de desarrollar métodos diferentes es porque no puede resolver estos modelos cuando n es demasiado "alto" y, por supuesto, es peor si estudias en dimensiones superiores. Por ejemplo, para el modelo de Ising, la diagonalización exacta funciona bien en 1d para n no superior a 20. Entonces, para n superior, intente con otro método: DMRG. Pero estos últimos funcionan bien para n superior (como n = 70 pero no para n superior). Nuevamente, desea otro método para n superior: redes neuronales (es decir, inteligencia artificial). Y además con las redes neuronales, puede estudiar "más fácilmente" (es decir, con n relativamente más alto) estos modelos en dimensiones más altas (pero para la dimensión = 3 y n pequeña, por ejemplo, todavía se necesitan muchas horas (varios días) para obtener el estado fundamental o el observable que querías ...). Bref, cuando n se vuelve "demasiado alto" para sus métodos numéricos (pero también la capacidad de su computadora) necesita realizar nuevos métodos (y si puede, usar una supercomputadora) y es el mismo problema con la dimensión de su computadora sistema pero peor, por supuesto, ya que está atascado rápidamente (dimensión = 4 es difícil de obtener, excepto si espera mucho tiempo ...). todavía lleva muchas horas (varios días) obtener el estado fundamental o el observable que deseaba ...). Bref, cuando n se vuelve "demasiado alto" para sus métodos numéricos (pero también la capacidad de su computadora) necesita realizar nuevos métodos (y si puede, usar una supercomputadora) y es el mismo problema con la dimensión de su computadora sistema pero peor, por supuesto, ya que está atascado rápidamente (dimensión = 4 es difícil de obtener, excepto si espera mucho tiempo ...). todavía lleva muchas horas (varios días) obtener el estado fundamental o el observable que deseaba ...). Bref, cuando n se vuelve "demasiado alto" para sus métodos numéricos (pero también para la capacidad de su computadora) necesita realizar nuevos métodos (y si puede, usar una súper computadora) y es el mismo problema con la dimensión de su computadora sistema pero peor, por supuesto, ya que está atascado rápidamente (dimensión = 4 es difícil de obtener, excepto si espera mucho tiempo ...).
Por supuesto, aquí hay más información adicional a su pregunta porque en realidad, en la física cuántica de muchos cuerpos, n = 3 no es alto (pero si toma una red que es un hipercubo, no puede tomar n = 3 de curso (debido a las condiciones)).


-3

Mundo real:

Automatización%: por ejemplo, es fácil automatizar algo en 30% o 50% u 80%, mientras que es difícil superar, por ejemplo, más del 95% e increíblemente difícil o incluso casi imposible alcanzar el 100%.


2
¿Puede proporcionar referencias para sus reclamos?
nicoguaro

No puedo, pero eche un vistazo a, por ejemplo, autos sin conductor. Aprender a conducir un auto en línea recta y controlar la velocidad es probablemente más fácil que aprender a conducir como una persona normal. El proceso más complejo es, luego aparecen más casos de borde cuando desea que sea completamente automatizado
Joelty

Entonces, creo que su pregunta no es apropiada para este sitio.
nicoguaro
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.