Google ha superado uno de los mayores impedimentos para que la computación cuántica sea realmente posible.
Lo han logrado gracias al desarrollo de un nuevo sistema que mantiene bajo control la gran tasa de errores inherentes a esta tecnología debido a que los bits cuánticos solo mantienen su estado y fase durante un instante de tiempo.
Además de lo susceptibles que son sus componentes físicos a cualquier injerencia ambiental.
Aunque la tecnología es posible únicamente en la teoría o en situaciones muy limitadas y controladas en un laboratorio, Google acaba de encontrar la forma de acotar la tasa de errores a medida que se aumenta el tamaño del sistema.
Algo que hasta ahora era imposible.
En la informática clásica, todo son unos y ceros. Cada bit solo puede ser “0” o “1”, verdadero o falso.
Y con ese almacenamiento y modo de operar, hemos logrado crear desde lenguajes de programación a videojuegos.
Sin embargo, existe otra forma de hacer informática, al menos sobre el papel: la computación cuántica, donde los bits no son binarios.
Un bit cuántico (qubit) puede ser “0” o “1”, pero también ser los dos estados a la vez.
Esto permite que se opere con nuevos tipos de puertas lógicas que permiten el desarrollo de nuevos algoritmos.
Estos harían posible abordar tareas que, hasta ahora, son imposibles de ser tratadas por la computación clásica.
De ahí que el planteamiento haya suscitado una gran expectación en las universidades, compañías y prensa.
Pero hay un problema: los computadores cuánticos no son capaces de operar correctamente a escala porque los qubits sólo mantienen su estado cuántico durante un instante.
Es decir, para cuando el computador está realizando un cálculo, el estado de esos qubits ya ha cambiado y generan errores.
Corregir esto es el desafío más importante de la industria.
La sensibilidad de los qubits es tan alta que, incluso la luz parásita, puede provocar errores de cálculo, y para ejecutar aplicaciones útiles se requiere que las tasas de error sean mucho más bajas que las actuales.
Por eso se usan métodos de corrección cuántica para limpiar el “ruido” generado codificando la información almacenada mientras el computador realiza la operación matemática.
Varias startups y grandes compañías han intentado atajar el problema sin grandes éxitos, lo que he provocado un entusiasmo cada vez más comedido.
Pero Google dice haber logrado un hito crucial al haber hallado la forma de distribuir información procesada entre varios qubits, de forma que el computador pueda retener la información el tiempo suficiente como para completar el cálculo, aunque los qubits individuales hayan salido de su estado cuántico.
Es decir, prescinden de muchos qubits buenos por uno excelente.
La información se codifica en varios qubits físicos para construir un único lógico más resistente, fiable y capaz de ejecutar algoritmos cuánticos a gran escala.
«En las condiciones adecuadas, cuantos más qubits físicos se utilicen para construir un qubit lógico, mejor será ese qubit lógico», explicó Hartmut Neven, vicepresidente de Ingeniería en Google.
«Sin embargo, esto no funcionará si los errores añadidos de cada qubit físico adicional superan los beneficios de la QEC.
Hasta ahora, siempre se han impuesto las altas tasas de error físico».
El equipo ha logrado desarrollar un código de corrección de errores que por primera vez reduce la tasa de errores cuantos más qubits se usen dentro de un qubit lógico.
Julian Kelly, investigador de Google, asegura que estas mejoras dependen del propio hardware, el software empleado y de su sistema de refrigeración criogénica para mantener la temperatura cerca del cero absoluto y así reducir la tasa de fallos.
Es el primer paso para poder aumentar el tamaño del sistema sin que el aumento de errores lo hagan inservible o no mejor que un computador tradicional.
Para Google es el segundo pilar de los seis a edificar antes de que los computadores cuánticos sean prácticos o útiles para la humanidad.
El siguiente paso será lograr crear un qubit lógico con solo 1.000 qubits físicos. Es el objetivo para 2025.
Imaginemos un ejemplo de computación clásica propenso al error.
Si uno envía un “1” a través de un cable mal aislado, es probable que al receptor le llegue un “0”.
Si envía 5 “1” seguidos, es más probable que el receptor logre recibir el mensaje adoptando el estado de la mayoría si uno de ellos falla.
Esto es una técnica muy primitiva de corrección de errores.
Pero sirve para explicar la corrección de errores cuántica que, lamentablemente, no es tan sencilla.
Primero porque el código no solo ha de corregir estados erróneos, sino los cambios de estado.
Esto es algo propio de la computación cuántica, ya que no es binaria, sino que almacena la combinación de ambos estados (superposición cuántica).
Es decir, cuenta el estado y el cambio de fase del mismo.
El qubit es algo abstracto propio de las matemáticas que no puede ser concretado físicamente, como el bit digital, a través de una señal eléctrica (0 voltios = 0 en binario / 5 voltios = 1 en binario, por ejemplo).
Por si este problema no fuese suficiente, hay que tener en cuenta otro más: comprobar el estado de los qubits destruiría su estado de superposición cuántica, por lo que hay que detectar los errores sin comprobar su estado de forma directa.
Lo que plantea Google es disponer un conjunto de qubits como si se tratara de un tablero de ajedrez.
En los vértices se sitúan los qubits que contienen la información y constituyen el qubit lógico, mientras que los del centro, los qubits de medida, se usan para medir la estabilidad del conjunto.
Estas medidas dicen si todos los qubits son iguales, que es el estado obviamente deseado y sin errores, o si se ha producido un error en él sin tener que verificar los qubits individuales.
Las mediciones de estabilidad se colocan en una matriz como la de un tablero de ajedrez para proteger los datos y el cambio de fase de cada qubit.
Cuando se registra un error, se correlaciona con la medida de estabilidad para identificar qué ha pasado.
En teoría, esto serviría para que este código permitiera resolver errores de información y cambio de fase mientras el número de ellos sea menor que la mitad del tablero.
En teoría, porque cada qubit individual es propenso al error.
A más qubits, más errores.
La protección ofrecida por este código ha de compensar las mayores oportunidades de error a medida que aumentamos el número de qubits.
Para que esto ocurra, los qubits físicos deben tener errores por debajo del llamado «umbral de tolerancia a fallos».
Para el código de superficie, este umbral es bastante bajo.
Tan bajo que no ha sido experimentalmente factible hasta hace poco, como ha indicado Kelly.
Google probó las mejoras realizando un experimento para comparar la tasa de errores lógicos del código sobre una matriz de 17 qubits y una de 49 qubits.
El resultado fue que la matriz más grande sea un 4 % menos propensa al error.
Podría parecer una mejora ínfima, pero es la primera vez que se logra disminuir la tasa de errores al aumentar el número de qubits empleado.
El próximo paso es crear qubits lógicos de 1.000 unidades, y el próximo es enlazar 1.000 qubits lógicos en un sistema único.
Fuente: Nature