Beruflich Dokumente
Kultur Dokumente
TECNOLOGICA DE
PANAM
COMPUTACION CUANTICA
Computacin cuntica
La computacin cuntica es un paradigma de computacin distinto al de la
computacin clsica. Se basa en el uso de qubits en lugar de bits, y da lugar a
nuevas puertas lgicas que hacen posibles nuevos algoritmos.
Una misma tarea puede tener diferente complejidad en computacin clsica y en
computacin cuntica, lo que ha dado lugar a una gran expectacin, ya que
algunos problemas intratables pasan a ser tratables. Mientras que un computador
clsico equivale a una mquina de Turing,1 un computador cuntico equivale a
una mquina de Turing cuntica.
Origen de la computacin cuntica
A medida que evoluciona la tecnologa, aumenta la escala de integracin y caben
ms transistores en el mismo espacio; as se fabrican microchips cada vez ms
pequeos, y es que, cuanto ms pequeo es, mayor velocidad de proceso alcanza
el chip. Sin embargo, no podemos hacer los chips infinitamente pequeos. Hay un
lmite en el cual dejan de funcionar correctamente. Cuando se llega a la escala de
nanmetros, los electrones se escapan de los canales por donde deben circular. A
esto se le llama efecto tnel.
Una partcula clsica, si se encuentra con un obstculo, no puede atravesarlo y
rebota. Pero con los electrones, que son partculas cunticas y se comportan
como ondas, existe la posibilidad de que una parte de ellos pueda atravesar las
paredes si son demasiado finas; de esta manera la seal puede pasar por canales
donde no debera circular. Por ello, el chip deja de funcionar correctamente.
En consecuencia, la computacin digital tradicional no tardara en llegar a su
lmite, puesto que ya se ha llegado a escalas de slo algunas decenas de
nanmetros. Surge entonces la necesidad de descubrir nuevas tecnologas y es
ah donde entra la computacin cuntica en escena.
La idea de computacin cuntica surge en 1981, cuando Paul Benioff expuso su
teora para aprovechar las leyes cunticas en el entorno de la computacin. En
vez de trabajar a nivel de voltajes elctricos, se trabaja a nivel de cuanto. En la
computacin digital, un bit slo puede tomar dos valores: 0 1. En cambio, en la
computacin cuntica, intervienen las leyes de la mecnica cuntica, y la partcula
puede estar en superposicin coherente: puede ser 0, 1 y puede ser 0 y 1 a la vez
(dos estados ortogonales de una partcula subatmica). Eso permite que se
puedan realizar varias operaciones a la vez, segn el nmero de qubits.
El nmero de qubits indica la cantidad de bits que pueden estar en superposicin.
Con los bits convencionales, si tenamos un registro de tres bits, haba ocho
valores posibles y el registro slo poda tomar uno de esos valores. En cambio, si
tenemos un vector de tres qubits, la partcula puede tomar ocho valores distintos a
la vez gracias a la superposicin cuntica. As, un vector de tres qubits permitira
un total de ocho operaciones paralelas. Como cabe esperar, el nmero de
operaciones es exponencial con respecto al nmero de qubits.
Para hacerse una idea del gran avance, un computador cuntico de 30 qubits
equivaldra a un procesador convencional de 10 teraflops (10 millones de millones
de operaciones en coma flotante por segundo), cuando actualmente las
computadoras trabajan en el orden de gigaflops (miles de millones de
operaciones).
Problemas de la computacin cuntica
Uno de los obstculos principales para la computacin cuntica es el problema de
la decoherencia cuntica, que causa la prdida del carcter unitario (y, ms
especficamente, la reversibilidad) de los pasos del algoritmo cuntico. Los
tiempos de decoherencia para los sistemas candidatos, en particular el tiempo de
relajacin transversal (en la terminologa usada en la tecnologa de resonancia
magntica nuclear e imaginera por resonancia magntica) est tpicamente entre
nanosegundos y segundos, a temperaturas bajas. Las tasas de error son
tpicamente proporcionales a la razn entre tiempo de operacin frente a tiempo
de decoherencia, de forma que cualquier operacin debe ser completada en un
tiempo mucho ms corto que el tiempo de decoherencia. Si la tasa de error es lo
bastante baja, es posible usar eficazmente la correccin de errores cuntica, con
lo cual s seran posibles tiempos de clculo ms largos que el tiempo de
decoherencia y, en principio, arbitrariamente largos. Se cita con frecuencia una
tasa de error lmite de 10-4, por debajo de la cual se supone que sera posible la
aplicacin eficaz de la correccin de errores cunticos.
Otro de los problemas principales es la escalabilidad, especialmente teniendo en
cuenta el considerable incremento en qubits necesarios para cualquier clculo que
implica la correccin de errores. Para ninguno de los sistemas actualmente
propuestos es trivial un diseo capaz de manejar un nmero lo bastante alto de
qubits para resolver problemas computacionalmente interesantes hoy en da.
Condiciones a cumplir
donde x va de 0 a N - 1.
2. Construya f(x) como funcin cuntica y aplquela al estado antedicho, para
obtener
Aplicaciones
Aunque el propsito del algoritmo es, como ha sido indicado, la bsqueda en una
secuencia, se podra describir de una manera ms adecuada como la "inversin
de una funcin". As, si tenemos la funcin y=f (x), que puede ser evaluada en un
computador cuntico, este algoritmo nos permite calcular el valor de x cuando se
nos da como entrada el valor de y. Invertir una funcin puede relacionarse con la
bsqueda en una secuencia, si consideramos que la misma es una funcin que
produce el valor de y como la posicin ocupada por el valor x en dicha secuencia.
El algoritmo de Grover tambin se puede utilizar para el clculo de la media y la
mediana de un conjunto de nmeros, y para resolver otros problemas de
naturaleza anloga. Tambin se puede utilizar para resolver algunos problemas de
naturaleza NP-completa, por medio de inspecciones exhaustivas en un espacio de
posibles soluciones. Esto resulta en una apreciable mejora sobre soluciones
clsicas.
Descripcin
Inicializacin
Se considera una secuencia desordenada con N componentes. El algoritmo
requiere un espacio de estados N-dimensional H, que puede ser modelado con
log2N qubits.
Numeremos las entradas de la secuencia con 0, 1,... (N-1); y seleccionemos un
observable , actuando sobre H, con N autovalores distintos conocidos. Cada uno
de los autovalores de codifica una de las entradas de la secuencia, de una
forma que se describir ms adelante. Denotaremos los autoestados utilizando la
notacin bra-ket en la forma:
Ahora tomamos un operador unario, U, que acta como una subrutina que
compara las diferentes entradas de acuerdo al criterio de bsqueda. El algoritmo
no especifica como funciona la subrutina, pero debe ser una subrutina cuntica
que trabaje bajo una superposicin de estados. Adems, debe actuar de manera
especial sobre uno de los autoestados, |>, que corresponder con la entrada que
satisface el criterio de bsqueda. Ms precisamente, requeriremos U con los
siguientes efectos:
En concreto,
.
.
.
.
Nuestro objetivo es identificar el autoestado |>, o de manera equivalente, el
autovalor , tal que U acta especialmente sobre l.
Iteraciones del algoritmo
Los pasos del algoritmo de Grover son los siguientes:
1. Inicializar el sistema al estado