Computación Cuántica

Anuncio
Computación
Cuántica
Su verdadero poder de
cómputo y limitaciones
Andrés Abeliuk
Se podría decir que uno de los
grandes profetas, y
seguramente el único en el
ámbito de las tecnologías, es
Gordon Moore, creador de la ley
que pronostica la evolución de Figura 1: Ley de Moore
la tecnología digital, en
particular aquella basada en transistores, componente principal de los microprocesadores.
Dicha ley sostiene que el número de transistores en un microprocesador continuará
doblándose cada 18 meses, es decir, a una tasa exponencial. La ley que fue anunciada en
1965 se pudo constatar empíricamente hasta el año 2000 (figura 1). A partir de ese momento
se desaceleró la continua reducción del tamaño de los transistores. Estando cada día más
cerca de la barrera física de la escala atómica, no pueden seguir reduciéndose. ¿Qué se
puede esperar de la tecnología a partir de este punto? Moore anunció que a menos que la
tecnología de microprocesadores cambie drásticamente, se llegará al límite en el año 2017.
Para los creyentes de Moore no quedaba otra solución que cambiar y lo lógico era pensar
que el siguiente paso sería el computador cuántico; modelo ya conocido desde los „90 que
rompe los actuales paradigmas de la computación determinista, introduciendo el azar.
Mientras en el modelo clásico de computación el bit es la unidad básica de información, en la
cuántica se introduce el análogo llamado qubit (quantum bit) gobernado por las leyes
cuánticas que rigen el mundo subatómico. Dichas leyes son bastante distintas a aquellas que
rigen el mundo macro, a las cuales todos estamos acostumbrados, por lo tanto es difícil
comprender el comportamiento de las partículas subatómicas. Aún así, el eminente físico
Erwin Schrödinger, a finales de los años „20, ideó un experimento imaginario para exponer
los extraños fenómenos que genera la mecánica cuántica.
El conocido experimento del gato de Schrödinger consiste en suponer un sistema compuesto
por una caja opaca cerrada que en su interior contiene a un gato, un recipiente de gas tóxico,
una partícula radioactiva con 50 por ciento de probabilidad de desintegrarse y un dispositivo
capaz de romper el recipiente si la partícula se desintegra. Nótese que el destino final del
gato, morir o sobrevivir, depende del comportamiento de la partícula regido por la mecánica
cuántica. En tanto, el espectador que observa la caja desde afuera, como no ve al gato, sólo
puede asegurar que éste tiene una probabilidad de 50 por ciento de estar vivo y 50 por ciento
de estar muerto. En otras palabras, el estado del gato es simultáneamente vivo y muerto, es
decir, en una superposición de estados. Pero si se abre la caja el estado del gato se
modifica, ya que se sabrá con certeza (100 por ciento) si el animal está vivo o no. Este
fenómeno es conocido como superposición cuántica y caracteriza el hecho de que una
partícula subatómica puede estar en varios estados a la vez, pues no se puede determinar su
comportamiento salvo de manera probabilística.
Ahora bien, si en vez de un gato tenemos una partícula que puede tener dos estados, por
ejemplo el spin de un electrón, se tiene un sistema cuántico binario que representa un qubit:
la unidad mínima de información cuántica que puede estar en los estados 0 y 1
simultáneamente. Y si se decide medir el qubit (lo que equivale a abrir la caja del gato), se
obtiene un resultado al azar de los dos posibles estados, en tal caso se dice que colapsa la
superposición. El qubit puede ser representado como la superposición cuántica lineal de
estados de un bit clásico. Es decir, con un sólo qubit almacenamos al mismo tiempo el valor
binario 0 y 1, con dos registros los valores 00, 01, 10 y 11 y así sucesivamente. En general,
un registro de n qubits almacena al mismo tiempo 2n valores. ¡Gran noticia! Significa que se
tiene procesamiento paralelo de 2n inputs con sólo n qubits. Pero no todo es bueno. ¿Qué
pasa cuando abrimos la caja? Si medimos los qubits colapsa la superposición de estados a
sólo uno al azar y no es posible acceder a toda la cantidad exponencial de posibles estados.
Claramente entonces el bit es un caso particular de un qubit por lo que un computador
cuántico es al menos tan poderoso como un computador clásico. La diferencia radica en la
superposición de posibles estados en el computador cuántico. ¿Será posible entonces
ocupar esa naturaleza con tal de ganar poder sobre la computación clásica?
La respuesta ha mostrado ser relativamente positiva. La
intuición detrás de esto es la siguiente: De acuerdo a las
probabilidades de cada uno de los estados superpuestos (por
ejemplo 50 por ciento vivo, 50 por ciento muerto), conocido
como amplitud del estado cuántico, se puede obtener cierta
información extra. La aplicación de una función sobre estados
cuánticos puede procesar una cantidad exponencial de
posibles inputs en una sola evaluación de la función. Ya
Figura 2
sabemos que al medir, solo obtendremos el resultado de uno
de estos inputs (figura 2). Pero conociendo la amplitud del estado resultante, algunas
propiedades globales de la función pueden ser deducidas. En otras palabras, la información
está “oculta” en las amplitudes de los estados y no es accesible directamente. A continuación
formalizamos esta intuición.
Dado que los qubits se representan como un vector de dos dimensiones de números
complejos que a su vez representan las probabilidades, podemos naturalmente pensar en la
posibilidad de una transformada de Fourier cuántica (TFQ), análoga de la transformada de
Fourier clásica; herramienta matemática usada en la ingeniería para diversas aplicaciones
(por ejemplo, para encontrar el período de una función). Actualmente el mejor algoritmo
clásico para computar la transformada toma un tiempo del orden de NlogN para un input de
tamaño N, mientras que la transformada cuántica, que basa su implementación en el
conocimiento de las amplitudes de estado, toma Log2N. Si N es de la forma N=2n, los valores
respectivamente son n2n y n2, evidenciándose una ganancia de tiempo exponencial. Eso
aclara que cualquier algoritmo que use como subrutina la transformada será
considerablemente más rápido en un computador cuántico, por lo que una de las clases
fundamentales de algoritmos cuánticos son los basados en la TFQ.
Dentro de estos algoritmos ya existen varios conocidos. Uno
que destaca por ser de los primeros creados es el algoritmo
de Shor (ideado por Peter Shor), para el milenario problema
de „factorizar‟ números en sus factores primos, que hasta hoy
no se sabe cómo resolver de manera eficiente en un
computador tradicional (razón por la cual se ocupa en los
sistemas de seguridad criptográficos). El algoritmo se basa en
un teorema clásico que dice que el problema de „factorizar‟
puede ser reducido al de encontrar el "orden" de un número
(bosquejado en la figura 3), donde la reducción es realizada
en tiempo esperado polinomial usando aleatoriedad. Lo
anterior es cierto para la computación clásica, sin embargo, el
problema de encontrar el "orden" de un número es difícil en el
modelo clásico pero no así en el modelo cuántico. De hecho,
El orden de x mod N es el menor
positivo r tal que xr mod N = 1
El algoritmo para encontrar el orden
de X mod N consiste en encontrar
el período de la función:
f ( x)  x y (mod N )
Es decir el mínimo r talque:
f ( x)  f ( x  r )
 x y  x y  r (mod N )
 1  x r mod N
Por lo tanto r corresponde al orden
de X.
es posible demostrar que el problema del orden se puede
Figura 3
reducir a encontrar el período de una función en particular, lo
cual sí se puede hacer eficientemente ocupando la TFQ en un computador cuántico. De
manera similar a lo anterior, Shor también describió un algoritmo para resolver
eficientemente el problema del logaritmo discreto.
Por otro lado existe otra clase de
algoritmos fundamentales en el
modelo de computación cuántico
que no se basan en la TFQ, sino
más bien en la búsqueda y
ordenamiento (figura 4). Estos
algoritmos ocupan a la vez la
superposición de estados y
aleatoriedad, por lo que tienen una
posibilidad arbitrariamente pequeña
de equivocarse. Lo sorprendente es
que, por ejemplo, el algoritmo de
Grover para búsqueda en una lista
no ordenada de N elementos toma
un tiempo esperado de N1/2. Es
decir, para su implementación
basta con mirar solo un pequeño
porcentaje de los elementos en la
lista, algo que parece imposible en
la computación clásica. Este
Figura 4
algoritmo también puede ser
utilizado, por ejemplo, para búsquedas exhaustivas en la resolución de problemas en clases
de complejidad consideradas intratables. Aunque en el peor caso estos algoritmos toman
tiempo exponencial, en el futuro podrían ser utilizados como una gran herramienta en la
implementación de heurísticas para problemas en estas clases.
Es evidente que la potencia de los computadores cuánticos radica en la naturaleza incierta
de la física cuántica, con lo cual es posible resolver eficientemente (tiempo polinomial)
algunos problemas que no se sabe cómo resolver de la misma forma utilizando una máquina
de Turing (MT) determinista (modelo teórico y ajustado a lo que se conoce como
computadora). Por otra parte, muchos de estos problemas también pueden ser resueltos
eficientemente por las máquinas de Turing no deterministas, es decir por las MTs que
pueden saltar no determinísticamente desde un estado hacia varios otros. Esto naturalmente
crea la pregunta de si los computadores cuánticos pueden simular a las máquinas de Turing
no deterministas y resolver eficientemente la clase de problemas denominados en teoría de
complejidad como NP-completos: NP de “Non-deterministic Polynomial time”, es decir, que
pueden ser resueltos en tiempo polinomial por una MT no determinista. Y completos pues
son problemas “duros” o “difíciles” para su clase (en particular, son problemas que no se
sabe cómo resolver eficientemente por una MT determinista, y además para los cuales
simplemente no se cree que esto se pueda hacer). Esta pregunta aún permanece abierta y
se considera como una de las fundamentales del área.
Nótese que todos los problemas que se sabe cómo resolver eficientemente en el mundo
cuántico pero no en el tradicional (e.g. factorizar, encontrar el orden o el logaritmo discreto)
pertenecen a la clase NP, pero no se sabe si son "completos" para esa clase. En particular,
es posible que todos ellos pudieran ser resueltos por una MT determinista en tiempo
polinomial. De hecho, esto es precisamente lo que los expertos creen actualmente: Que
todos los problemas que pueden ser resueltos eficientemente por un computador cuántico
también pueden ser resueltos eficientemente por uno tradicional (aunque probablemente los
algoritmos cuánticos en este caso sean más sencillos). Contrariamente, se cree que hay
problemas que son NP-completos y que no pueden ser resueltos en tiempo polinomial por
una MT determinista (esto corresponde a la conjetura de si la clase P, es decir la clase de los
problemas que pueden ser resueltos en tiempo polinomial por una MT determinista, es
diferente de NP, la que es una de las 7 conjeturas más importantes de la matemática). En
conclusión, la respuesta a la pregunta de si los computadores cuánticos entregan mayor
poder a los computadores tradicionales, al menos en términos de eficiencia, es solo
parcialmente positiva: Conocemos problemas que pueden ser resueltos eficientemente en el
modelo cuántico para los cuales no se sabe si pueden ser también resueltos eficientemente
en el modelo tradicional.
Si se le agrega la posibilidad de la aleatoriedad a
una máquina de Turing determinista, se obtiene
una nueva clase de problemas que pueden ser
resueltos eficientemente. Esta clase, llamada
BPP por “Bounded-error, Probabilistic,
Polynomial time”, corresponde a la clase de
problemas de decisión resueltos en tiempo
polinomial por una maquina de Turing
probabilística, con un porcentaje de error no
mayor a 1/3 (mediante repeticiones de la misma
instancia puede disminuirse el error).
Análogamente es posible definir la clase BQP,
(“Bounded error, Quantum, Polynomial time”), de
los problemas que pueden ser resueltos
eficientemente por un computador cuántico
probabilístico. Claramente BQP contiene a BPP,
pues un computador cuántico puede simular a
Figura 5: Mapa conceptual de algunas clases de
complejidad
uno clásico. Pero lo que no se conoce hasta hoy es la relación de BQP con NP. Hasta el
momento se cree que BQP está incluido en NP, pero todo parece indicar que BQP no
contiene problemas NP-completos pero sí contiene a todos los problemas en la clase P
(figura 5).
En conclusión, a pesar de que se cree que los algoritmos cuánticos no permiten colapsar
ninguna de las clases de complejidad conocidas, si permitirían realizar computaciones más
rápidas; es decir, bajan los tiempos de procesamiento, pero no los órdenes de magnitud. Sin
embargo, existen otros fenómenos cuánticos que sí muestran una potencialidad infinitamente
superior sobre los computadores clásicos, lo que radica en la propiedad de que dos
partículas pueden ligarse. Esto significa que a pesar de estar a kilómetros de distancia,
ambas partículas comparten el mismo estado, lo cual podría ser aplicado en la criptografía
para generar llaves de manera segura.
Por último, es alentador saber que ya se han creado varios prototipos reales de
computadores cuánticos que trabajan con una cantidad pequeña de qubits. Es más, hace
unos años ¡se logró factorizar el número 15 en sus factores primos con ayuda de la
computación cuántica! De a poco se han creado computadores con mayor cantidad de
qubits, ya se habla de 28 e inclusive existe una compañía comercial, "D-Wave Systems, Inc.”,
que creó un computador cuántico capaz de resolver un sudoku. Parece ser cosa de tiempo
entonces hasta que la tecnología y el conocimiento nos permitan manipular computadores
cuánticos de capacidades aceptables. Es de esperar que los próximos años estén
gobernados por la nueva ley de Moore Cuántica que prediga el crecimiento de los qubits por
computador.
Bibliografía sugerida:
Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a
Quantum Computer. Peter W. Shor (AT&T Research)
COMPUTATIONAL COMPLEXITY A Modern Approach ,SANJEEV ARORA
Princeton
University, BOAZ BARAK. Princeton University
Curso EE 520: Introduction to Quantum Information Processing, Todd A. Brun,
Communication Sciences Institute, University of Southern California
Quantum Complexity Theory, Ethan Bernstein and Umesh Vazirani, Proceedings of
Symposium on the Theory of Computing, 1993. Special issue on Quantum Computation of the Siam
Journal of Computing, Oct. 1997.
Descargar