Problema resuelto al detalle
-
Dos iteraciones para encontrar un elemento marcado entre 8 5 pasos
El algoritmo de Grover encuentra un elemento marcado entre 8 en dos iteraciones. Deduzca de dónde sale ese dos y qué ocurre si se ejecuta una tercera.
-
Antes de ejecutar nada, el estado es una superposición uniforme: cada elemento es igualmente probable, por lo que el marcado contiene 1/8 de la probabilidad. Eso equivale a una estimación aleatoria clásica, y el panel muestra ambas para dejarlo claro.
-
Cada iteración de Grover es una rotación según un ángulo fijo en un plano bidimensional generado por el estado marcado y todo lo demás. El ángulo proviene de la amplitud, y para N = 8 es de unos 20,7°.
-
Así pues, la probabilidad no es una curva que asciende y se estabiliza: es un seno al cuadrado, y asciende de forma pronunciada: 12,5%, luego 78,1% y después 94,5%.
-
El punto de parada óptimo es la rotación que queda más cerca de los 90°, que es π/4 veces la raíz cuadrada de N. Para ocho elementos eso es 2,22, y como no se puede realizar una iteración fraccionaria, queda en 2.
-
Si se ejecuta una tercera, la rotación sobrepasa el objetivo. La probabilidad cae al 33,0%, peor que tras una iteración, y vuelve hacia el punto de partida.
Respuesta
La herramienta muestra 12,50 % tanto para la superposición inicial como para el caso clásico de 1 entre N, y detiene la ejecución automática en 2, aunque los controles para avanzar un paso o saltar al final permiten llegar hasta 5. Lo que suele sorprender es el exceso: hacer más iteraciones empeora el resultado, porque la amplificación de amplitud es una rotación y, al seguir girando, se vuelve al punto de partida. Por eso la aceleración de Grover es cuadrática, no exponencial: hacen falta unas √N rotaciones para alcanzar 90°; con 8 elementos bastan 2 y con un millón se necesitan 785. Es una mejora considerable, pero dista mucho de la ventaja exponencial que parece prometer la expresión «búsqueda cuántica».
-
Referencias (1)
- The algorithm this tool steps through: L. K. Grover, "A fast quantum mechanical algorithm for database search." Proceedings of the 28th Annual ACM Symposium on Theory of Computing, 212–219, 1996.