Construyendo un ordenador cuántico

Santiago Rodríguez Sordo    20 febrero, 2020
Ordenador cuántico

La Computación Cuántica es el siguiente gran paso en computación desde la aparición de los procesadores de la década de 1950. En aquel entonces se empezaron a hacer de material semiconductor empleando los avances más punteros en ciencia e ingeniería. En la construcción del ordenador cuántico está ocurriendo algo similar sumando además una revisión a como se representa y procesa la información. Y es que al bit, el componente de información más pequeño y fundamental para la industria tecnológica, ahora le acompaña el qubit, “igual de pequeño” pero infinitamente más poderoso. Con los bits, los ordenadores clásicos han refinado casi al extremo componentes y aplicaciones. Ahora, la computación cuántica abre puertas a nuevas capacidades imposibles de simular hoy día e inimaginables. 

Promesas tan altas explican la altísima expectación, sin embargo el estado del arte de esta tecnología deja ver que aún queda mucho trabajo para poder extraer todo su potencial. Incluso las personas más escépticas afirmarán que los computadores cuánticos no tendrán una aplicación comercial o doméstica.

Nos quedaremos en mente con la mítica frase atribuida a Thomas J. Watson, (Presidente de la Junta Directiva de IBM en los años 40):

“Pienso que hay mercado en el mundo como para unos cinco ordenadores”

Procesadores, bits y qubits

Los aparatos electrónicos que manejamos cada día representan a mayor o menor escala un computador u ordenador: reciben, procesan, almacenan y envían información. Por supuesto, hablamos de ordenadores y móviles; pero también de smartwatches, televisiones y coches. Han sido diseñados para manejar información y hacerla accesible para nosotros; como herramientas que hacen un tarea muy específica.

De entre las partes que los componen, la pieza central donde se ejecutan instrucciones y se “procesa” la información es el procesador. 

Figura 1: El procesador es el componente encargado de ejecutar instrucciones para realizar cálculos.
Figura 1: El procesador es el componente encargado de ejecutar instrucciones para realizar cálculos.

Para que los procesadores “procesen” la información, ésta se fragmenta en partes lo más simples posible. El procesador representa estas partes simples con el estado de sus partes internas, que va haciendo variar según las instrucciones que tenga programadas. Al finalizar la ejecución, el resultado del programa se recupera leyendo el estado de las partes internas. Si hacemos la analogía con un semáforo, los colores serían los estados posibles y cambiar de uno a otro la instrucción programada.

El tipo de fragmentación más extendido para representar información es el bit. Éste tiene 2 estados, que se pueden entender como “algo” y “lo contrario”. Por sencillez, estos estados se representan como “1” y “0”, y , físicamente, con voltaje alto o bajo. En el contexto de un procesador clásico, de bits, las operaciones que realiza para ir cambiando de estado, es decir los voltajes, se ajustan al Álgebra de Boole, implementándose con puertas lógicas como NAND o XOR.

(Otro ejemplo, aunque anecdótico, es el procesador ternario , que puede beneficiarse de los recientes materiales 2d )

Como los anteriores, el qubit (acortamiento de “quantum-bit”) es una manera de representar información. Se diseña a partir de reglas descritas en la Mecánica Cuántica (rama de la Física que describe sucesos en escala muy pequeña – del tamaño del átomo y menores – donde lo que ocurre difiere de lo que nos dicta la intuición). Al igual que al bit, al qubit se le trata como un objeto matemático y así se puede separar el procesamiento de la física del dispositivo que lo implemente. Si quieres saber más sobre qubits pásate por este otro post de nuestro blog.

Programando un computador cuántico

Una vez elegido del algoritmo que queramos, tendremos que describir la secuencia de pasos en diagramas llamados Circuitos Cuánticos. Estos representan la secuencia de operaciones que se realizan sobre los qubits incluyendo la medición. 

 Transformada de Fourier cuántica en 3 qubits, en un Circuito Cuántico.
Figura 2: Transformada de Fourier cuántica en 3 qubits, en un Circuito Cuántico. (fuente)

La información se almacena en los estados de qubits y bits de soporte y el procesamiento se realiza con operadores cuánticos. Estos operadores distan bastante de los que se utilizan en los computadores clásicos.

Se trata de operaciones que alteran el estado de los qubits y están sustentadas en la mecánica cuántica. Desde un punto de vista práctico se interpretan como reorientaciones del estado de superposición en la Esfera de Bloch para cada qubit. Con esta simplificación podemos hacernos una idea de las modificaciones que transformarán los qubits según se ejecutan sucesivas puertas cuánticas.

Representación de la esfera de bloch. Las operaciones varían el estado de superposición alcanzando valores en la superficie de la esfera.
Figura 3: Representación de la esfera de bloch. Las operaciones varían el estado de superposición alcanzando valores en la superficie de la esfera.

Para extraer la salida de los circuitos cuánticos se exporta el estado de los qubits a bits de apoyo en el momento de la medida. La exportación se hace interpretando el estado cuántico observable en ese momento. Se interpreta el estado |0> como 0 y |1> como 1 o viceversa. Al tratarse de partículas cuánticas, la medición provoca la desaparición del estado de superposición.

El valor de estos circuitos reside principalmente en conocer los coeficientes del estado de superposición al finalizar la ejecución. Para lograr esto, se reproduce la ejecución muchas veces y de lo que se extrae en los bits de soporte se calculan los coeficientes por métodos estadísticos .

Requisitos de un computador cuántico

Existen muchos enfoques e ideas para desarrollar estos dispositivos. Esto hace difícil decidir qué es y que no es un procesador cuántico. David DiVincenzo, de IBM, redactó en 1996 unos criterios, que llevan su nombre, para la implementación de computadores cuánticos.

Sistema físico escalable con qubits bien caracterizados

Tener una cantidad relevante y escalable de qubits es una cualidad necesaria e indispensable, pero no suficiente. Desde hace años existen procesadores con (muchos qubits) motivados por la experimentación. Sin embargo no son potentes procesando información, por carecer de los otros criterios como veremos.

Podrá inicializar los qubits a un estado fiable fundamental, por ejemplo |000 …>

Tras ejecutar un proceso cuántico se medirá el estado final de los qubits. Es por ello que el estado inicial debe ser conocido, fiable y siempre el mismo. De lo contrario los resultados finales no serían fiables. Esto representa un reto técnico ya que en la naturaleza los estados cuánticos están en un estado desconocido.

Podrá implementar un conjunto universal de puertas cuánticas.

El catálogo de operaciones que podrá realizar será suficientemente universal. Este es un requisito para que resulte útil y se puedan exportar programas entre implementaciones. Además una misma puerta tendrá implementaciones distintas dependiendo del fundamento físico en el que se apoye.

Tendrá tiempos de decoherencia mucho mayores que el tiempo de operación de las puertas.

La decoherencia es el fenómeno cuántico que hace pasar al qubit del estado de superposición a un estado clásico observable. También es lo que se utiliza de manera controlada para realizar la medición. Al tiempo que lleva llegar a la decoherencia se le llama tiempo de decoherencia. Por lo tanto, se podrán realizar más operaciones consecutivas cuanto mayor sea este.

Tendrá capacidad de medida específica de los cubits.

De lo contrario el estado de los mismos será desconocido. Para medir el estado se tienen que realizar mediciones específicas para cada estado observable.

Máquinas de última Generación

Los mejores ordenadores actuales siguen siendo “clásicos” y tan grandes como los de los comienzos. El primer puesto en la lista TOP500 ), que hace el seguimiento de los ordenadores no distribuidos más potentes del mundo, lo ocupa SUMMIT. Este supercomputador (clásico, no cuántico) está formado por 4608 CPUs y GPUs con acceso cada uno a 600GB de RAM. Es capaz de realizar 200 mil billones (1 seguido de 15 ceros) de operaciones en coma flotante por segundo (FLOPS) con almacenamiento para 250 petabytes de datos. Pesa cerca de 350 toneladas, ocupa 5600 metros cuadrados (como 2 pistas de tenis) y tiene casi 300 kilómetros de fibra óptica. Con estas características en mente no esperemos que los nuevos ordenadores cuánticos vayan a instalarse en nuestros portátiles, móviles o relojes.

Figura 4: Los ordenadores más potentes de cada época ocupan habitaciones enteras. ENIAC (1948) (Wikipedia)
 Los ordenadores más potentes de cada época ocupan habitaciones enteras. SUMMIT (2018)
Figura 5: SUMMIT (2018)(Wikipedia)

Igualmente, cuando pensemos en ordenadores cuánticos debemos pensar en hacer dispositivos que resolverán tareas fuera de alcance para los clásicos. La manera de construirlos está en evolución en laboratorios a puerta cerrada, por cuestiones de patente y exclusividad. 

Figura 6: Laboratorio de IBM trabajando en un computador cuántico (fuente)

Tipos de ordenadores cuánticos

Como en los comienzos de la computación, los computadores cuánticos se crean pensando en la tarea concreta que van a afrontar. Actualmente se están dividiendo en 3 tipos,

Quantum Annealing

Pensado para resolver problemas de optimización. Esto es buscar la combinación más eficiente de parámetros para un problema concreto. Es el tipo menos potente y de aplicación más estrecha. De hecho los expertos afirman que los supercomputadores modernos están a la par en eficiencia con estos

Quantum Simulation

Busca simular escenarios de física cuántica de tal complejidad que quedan fuera de alcance de los supercomputadores. Encuentra especial aplicación en el estudio de estimulación de moléculas en Química, en concreto en el plegamiento de proteínas. Simulaciones detalladas de estos fenómenos ayudará en la lucha de enfermedades relacionadas como el Parkinson o el Alzheimer.

Universal Quantum Computer

El tipo más general y potente, y también el más complicado de construir. Se podría programar para resolver tareas extremadamente complejas, incluyendo las anteriores, y obtener una solución rápidamente. Está llamado a revolucionar lo que conocemos de Machine Learning e Inteligencia Artificial. Aunque esté resultando difícil construir uno de estos ya se han publicado más de 50 algoritmos que podrá ejecutar. Por ejemplo el algoritmo de Shor. Este algoritmo encuentra factores primos de un número y que de implementarse quedaría obsoletos muchos sistemas de criptografía como RSA.

Nuevo mundo, nuevos retos

Los retos que enfrenta la computación cuántica son especialmente nuevos. El primer nuevo reto resulta evidente, los dispositivos físicos que implementan qubits son extremadamente pequeños. En general más pequeños que los bits. Estaríamos hablando de tamaños del orden de iones, núcleos y electrones.

Otro de los retos es la extremada sensibilidad de estos sistemas. Son sensibles a todo tipo perturbación eléctrica o magnética en el entorno, que pueda alterar de manera impredecible el estado. Otra fuente de ruido son las vibraciones, que obliga a crear entornos extremadamente fríos con temperaturas cercanas a 0K (-273ºC). Y por supuesto, extremadamente limpio, ya que cualquier partícula suelta podría dar al traste con la fiabilidad de los resultados. 

Con todo esto, el mayor freno es la decoherencia, que limita el tiempo de ejecución y puede provocarla el ruido del entorno. A cálculos más complejos se necesita de más tiempo de coherencia. Para ello se ha trabajado en entornos más aislados y en teorías de corrección de errores como el QEC (Quantum Error Correction).

Figura 7: Captura del componente central de un procesador cuántico con 5 qubits. (fuente)
Figura 7: Captura del componente central de un procesador cuántico con 5 qubits. (fuente)

¿Invierno Cuántico?

Ahora mismo se está dando una carrera tecnológica a nivel mundial, con una meta indefinida, parecida a la “locura del oro”. En 2018 se invirtieron aproximadamente 173M US$, encabezados por China y Estados Unidos, como recogen en Nature: Quantum gold rush: the private funding pouring into quantum start-ups. Se trata de empresas del sector como IBM, Google, Intel, Alibaba, Hewlett Packard, Baidu and Huawei. Y startups cómo D-Wave, Rigetti o Multiverse Computing.

Si tratamos de mirar hacia adelante, hacia donde avanza todo esto, vemos bastante incertidumbre. Podemos fijarnos en el afamado estudio sobre la evolución de las tecnologías de Gartner. En 2018 ubicaba la computación cuántica justo al comienzo del periodo de las “expectaciones infladas”. Antes del periodo de máxima expectación, que da paso a años de “desilusión”.

Sin embargo no todas las tecnologías se comportan así, por ejemplo Big Data tomó impulso y salió del esquema. Pero en este caso puede ser peor. Y es que al retraso en la estabilidad de los primeros computadores se suma la falta de aplicaciones prácticas. Esto extiende la idea de que el avance esta a punto de detenerse en lo que viene a llamarse “Invierno Cuántico”.

No sería el primer invierno en IA

Este fenómeno no es nuevo. Es comparable a lo que ha experimentado la Inteligencia Artificial durante décadas. Solo recientemente con la explosión del Big Data, Machine Learning, vehículos autónomos y otras aplicaciones ha encontrado su hueco en el mercado. Y es posible que con la computación cuántica esté ocurriendo lo mismo. De no encontrar aplicaciones de negocio, la enorme expectación que ha llevado al interés e inversión actual provocaría una enorme decepción de los inversores que reduciría su avance de manera dramática.

Para mantenerte al día con LUCA visita nuestra página web suscríbete a LUCA Data Speaks o síguenos en TwitterLinkedIn YouTube.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *