Los ordenadores cuánticos llegarán mucho antes de lo previsto
Hace décadas que científicos, ingenieros y medios de comunicación hablan de los ordenadores cuánticos, del enorme poder de computación que tendrán y de que serán capaces de realizar cálculos hoy en día inabordables, pero lo cierto es que los años han ido pasando y el silicio se ha seguido manteniendo como la punta de lanza indiscutible de los sectores de la informática, la electrónica y la microelectrónica. Este reinado, eso sí, podría llegar a su fin en los próximos años.
El poder de los computadores cuánticos reside en la extraña manera en que la materia se comporta a nivel subátomico. A esa escala, las partículas como los electrones se rigen por leyes que no responden a la física normal. Tanto es así, que en el mundo cuántico una partícula puede estar en dos lugares al mismo tiempo. Es más, puede estar en dos estados diferentes a la vez, ya sea como partícula o como onda.
Los ordenadores actuales trabajan con bits, que pueden tener un valor de 0 ó 1. En cambio, en la computación cuántica intervienen las leyes de la mecánica cuántica y la partícula puede estar en superposición coherente: es decir, puede ser 0 ó 1 pero puede ser también un 0 y un 1 al mismo tiempo. Tal circunstancia permite que se puedan realizar varias operaciones a la vez, según el número de qubits (bits cuánticos).
Les pongo un ejemplo muy sencillo para que veáis la potencia que tendrá la computación cuántica: en la actualidad, en un registro de 2 bits tenemos hasta 4 valores posibles (00, 01, 10, 11) pero sólo podemos utilizar uno de esos valores al mismo tiempo para realizar una operación. En cambio, si tenemos un vector de 2 qubits, la partícula puede tomar los 4 valores distintos a la vez.
De la misma manera, si tuviéramos un registro de 3 bits tendríamos 8 valores posibles (000, 001, 010, 011, 100, 101, 110, 111) pero seguiríamos pudiendo coger uno sólo, mientras que en el caso de los qubits tendríamos la posibilidad de trabajar con los 8 al mismo tiempo gracias a la superposición cuántica.
Un hipotético computador cuántico de 30 qubits equivaldría a un procesador convencional de 10 teraflops (1012 operaciones en punto flotante por segundo). Una enormidad si tenemos en cuenta que los microprocesadores más avanzados de la actualidad corren a "apenas" unos cuantos gigaflops (109 operaciones por segundo). Como veis, el poder de computación de los ordenadores cuánticos será bestial.
Los datos son impresionantes, pero... ¿cuándo se empezarán a comercializar los primeros computadores cuánticos? Anton Zeilinger, un físico cuántico de la Universidad de Viena, es de la opinión que muy pronto. Los avances logrados en los últimos tiempos han llevado a este investigador a afirmar que en 20 años utilizaremos los ordenadores cuánticos en nuestro día a día de manera habitual.
De la misma opinión es David Deutsch, un físico de la Universidad de Oxford, que, al igual que Zeilinger, no hace tanto pensaba que deberíamos esperar un número indeterminado de años para ver ordenadores cuánticos en funcionamiento, pero que ahora ha cambiado de forma de pensar y cree que en sólo unos años podremos contemplar los primeros modelos comerciales.
Así pues, si ambos investigadores están en lo cierto, los primeros ordenadores cuánticos estarán disponibles mucho antes de lo que podíamos imaginar. Será cuestión de comprobar entonces si su capacidad de cálculo es realmente tan descomunal como se muestra sobre el papel.
¿Qué es la computación cuántica?
La computación cuántica nace con el objetivo de combinar las propiedades de la física y las ciencias computacionales para solucionar problemas de computación.
La base teórica de la computación tradicional está basada en saber usar unos y ceros para resolver problemas. Se utilizan los transistores como elemento principal, de forma que las diferencias de energía que existan en él son unos y ceros lógicos. Sin embargo, en la computación cuántica, se reduce la escala del elemento primario, lo que conlleva una serie de efectos cada vez más obvios.
Una parte básica de la computación cuántica es estudiar las consecuencias de dichos efectos en la computación tradicional. Dichos estudios fueron los que llevaron a los científicos a emplearlos para sacar provecho, de tal manera que físicos y computólogos (principalmente teóricos) comenzaron a crear diversas hipótesis basadas en la afirmación de que a partir de las leyes de la mecánica cuántica se podrían desarrollar nuevos planteamientos en la teoría y procesamiento de la información. Resulta obvio pensar que para poder aplicar estas teorías cuánticas necesitaremos obtener una computadora cuántica.
Hasta hoy día, los componentes de hardware han estado siendo miniaturizados hasta llegar a conseguir nano circuitos. Sin embargo, vamos a alcanzar un punto en el que esta miniaturización sea tal que no se pueda avanzar más en este aspecto. En ese momento tendrá que entrar en juego la mecánica cuántica.
Origen de la computación cuántica
A medida que evoluciona la tecnología, aumenta la escala de integración y caben más transistores en el mismo espacio; así se fabrican microchips cada vez más pequeños, y es que, cuanto más pequeño es, mayor velocidad de proceso alcanza el chip. Sin embargo, no podemos hacer los chips infinitamente pequeños. Hay un límite en el cual dejan de funcionar correctamente. Cuando se llega a la escala de nanómetros, los electrones se escapan de los canales por donde deben circular. A esto se le llama efecto túnel.
Una partícula clásica, si se encuentra con un obstáculo, no puede atravesarlo y rebota. Pero con los electrones, que son partículas cuánticas 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 señal puede pasar por canales donde no debería circular. Por ello, el chip deja de funcionar correctamente.
En consecuencia, la computación digital tradicional no tardaría en llegar a su límite, puesto que ya se ha llegado a escalas de sólo algunas decenas de nanómetros. Surge entonces la necesidad de descubrir nuevas tecnologías y es ahí donde entra la computación cuántica en escena.
La idea de computación cuántica surge en 1981, cuando Paul Benioff expuso su teoría para aprovechar las leyes cuánticas en el entorno de la computación. En vez de trabajar a nivel de voltajes eléctricos, se trabaja a nivel de cuanto. En la computación digital, un bit sólo puede tomar dos valores: 0 ó 1. En cambio, en la computación cuántica, intervienen las leyes de la mecánica cuántica, y la partícula puede estar en superposición coherente: puede ser 0, 1 y puede ser 0 y 1 a la vez (dos estados ortogonales de una partícula subatómica). Eso permite que se puedan realizar varias operaciones a la vez, según el número de qubits.
El número de qubits indica la cantidad de bits que pueden estar en superposición. Con los bits convencionales, si teníamos un registro de tres bits, había ocho valores posibles y el registro sólo podía tomar uno de esos valores. En cambio, si tenemos un vector de tres qubits, la partícula puede tomar ocho valores distintos a la vez gracias a la superposición cuántica. Así, un vector de tres qubits permitiría un total de ocho operaciones paralelas. Como cabe esperar, el número de operaciones es exponencial con respecto al número de qubits.
Para hacerse una idea del gran avance, un computador cuántico de 30 qubits equivaldría 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).
Computadora cuántica
(quantum computer) Una computadora cuántica es un dispositivo informático que hace uso directo del fenómeno de la mecánica cuántica, como la superposición y el entrelazamiento cuántico, para realizar operaciones sobre datos.
Las computadoras cuánticas son diferentes de las computadoras tradicionales basadas en transistores. El principio básico detrás de la computación cuántica es que las propiedades cuánticas pueden ser usadas para representar datos y realizar operaciones sobre los mismos.
La computación cuántica se basa en el uso de qubits en lugar de bits, y da lugar a nuevas puertas lógicas que hacen posibles nuevos algoritmos. Una misma tarea puede tener diferente complejidad en computación clásica y en computación cuántica, lo que ha dado lugar a una gran expectación, ya que algunos problemas intratables pasan a ser tratables. Un modelo teórico es la máquina cuántica de Turing, también conocida como computadora cuántica universal.
Si se pudieran realizar computadoras cuánticas a gran escala, estas serán capaces de resolver ciertos problemas muchísimo más rápido que las actuales.
La computación cuántica está todavía "en pañales", habiendo más teorías que prácticas por el momento. De todas maneras los gobiernos de todo el mundo apoyan la investigación de la computación cuántica que, probablemente, será el futuro de la informática.
La base de la computación cuántica: qubits
En las computadoras clásicas, las memorias están hechas de bits, cada bit representa un uno o un cero. Una computadora cuántica mantiene una secuencia de qubits.
Un único qubit puede representar un uno, un cero o, crucialmente, cualquier superposición cuántica de estos; en tanto, dos qubits pueden estar en cualquiera de los cuatro estados de superposición cuántica, y tres qubits en cualquiera de las 8 superposiciones.
En general, una computadora cuántica con N qubits, puede estar en una superposición cuántica arbitraria de 2 elevado a la N estados simultáneamente (una computadora normal puede solo estar en uno de esos 2 a la N estados en un único momento). Una computadora cuántica opera manipulando esos qubits con una secuencia fija de puertas lógicas cuánticas. La secuencia de puertas a ser aplicadas es llamada algoritmo cuántico.
Arquitectura de una Computadora Cuántica
La arquitectura de una computadora cuántica es similar a la de las computadoras tradicionales, con ciertos elementos propios de la computación cuántica.
Oskin et al [Oskin02] propone una arquitectura de una computadora quántica que esta conformada por una ALU cuántica, memoria cuántica, y un planificador dinámico, tal como puede observarse en la figura 2.
La corrección de errores es un aspecto que debe ser tomado muy en cuenta en el diseño de una arquitectura cuántica.
ALU cuántica
La ALU cuántica tiene como funciones fundamentales la ejecución de operaciones cuánticas y la corrección de errores.
La ALU prepara los datos cuánticos, antes de ejecutar cualquier compuerta lógica, aplicando una secuencia de transformaciones cuánticas básicas, que incluyen:
•Hadamard (raíz cuadrada, transformada de Fourier de 1 qubit),
•I, Identidad (I, NOP cuántico),
•X, NOT cuántico,
•Z, cambia los signos de las amplitudes),
•Y = XZ,
•rotación por p /4 (S),
•rotación por p /8 (T), y
•NOT controlado (CNOT).
La ALU aplica esta secuencia de operaciones elementales para la corrección de errores, indispensable en la computación cuántica. Este procedimiento consume estados auxiliares adicionales, para la verificación de paridad. La ALU hace uso de hardware especializado estándar, que provee estados elementales estándares, para producir los estados auxiliares adicionales.
Memoria cuántica
Al igual que en las arquitecturas actuales en la arquitectura cuántica, la memoria cuántica es un elemento arquitectural muy importante. La memoria cuántica debe ser confiable, con el propósito de dotarla de tal característica Oskin et al [Oskin02] incluyen una unidad especializada de "actualización" en cada banco de memoria, cuya representación pictórica se puede apreciar en la figura 2. Una unidad especializada actualiza periódicamente los qubits lógicos individuales, ejecutando algoritmos de detección y corrección de errores.
Tele transportadora de código
La tele transportadora de código desde la memoria cuántica a la ALU, añade alguna funcionalidad adicional a la tele transportación cuántica convencional, proveyendo un mecanismo general para simultáneamente ejecutar operaciones mientras transporta los datos cuánticos.
Circuitos para la Computación Cuántica
El próximo sistema radicalmente distinto para el procesamiento de información será la computación cuántica.
Los investigadores afirman que en ella se usarán los principios de la mecánica cuántica, para realizar cálculos complejos en una fracción del tiempo necesario hoy en día en los superordenadores más veloces.
A medida que avanza la teoría al respecto, los expertos van proponiendo avances que permitirán que esta idea se haga realidad. Un reciente artículo publicado en Physical Review Letters, por ejemplo, propone un circuito realizable de forma experimental y una manera eficiente de implementar una computación cuántica escalable.
Es precisamente la habilidad de aumentar la escala de la tecnología, de aquella que permite realizar experimentos de 1 ó 2 qubits, habituales en el laboratorio, a la que nos proporcionará sistemas en los que participarán muchos qubits, lo que hará posible construir un ordenador cuántico. Franco Nori, de la University of Michigan, y sus colegas, han escrito un artículo en este sentido, titulado "Scalable quantum computing with Josephson charge qubits".
Para implementar esta tecnología, será necesario preparar, manipular y medir el frágil estado cuántico de un sistema. Esto no es fácil, y es por eso que hasta ahora nos hemos centrado en qubits individuales. Pero para disponer de un ordenador cuántico serán necesarios muchos qubits, y controlar la conectividad entre ellos. Estas son las principales dificultades a las que nos enfrentamos, que el método de Nori trata de solventar.
Espero que les haya interesado el tema... y aquí les dejo algunos de mi post...