Durante mucho tiempo la computación cuántica fue dominio exclusivo de laboratorios de investigación y de aspirantes al Premio Nobel de Física, pero hoy en día se ha convertido en una cuestión estratégica para empresas y gobiernos. Los ordenadores de este tipo pueden cambiar los límites de la informática actual; millones de veces más potentes e infinitamente más rápidos que los ordenadores clásicos, abren todo un nuevo campo de aplicaciones hasta ahora inaccesibles.
Si bien la teoría cuántica se formalizó hace ya casi un siglo, la idea de aprovechar las propiedades de esta nueva rama de la física para crear ordenadores más potentes es mucho más reciente, data de los años 70. Y, más recientemente, la computación cuántica ha salido poco a poco del ámbito de la investigación. Bien es cierto que, de momento, las primeras máquinas que han visto la luz en empresas como D-Wave, IBM, Google, Intel, Microsoft o Atos parecen más prototipos que equipos plenamente operativos, pero es que su desarrollo está permitiendo identificar los problemas a los que debe hacer frente la tecnología cuántica, así como probar software y experimentar con ellos.
Porque la computación cuántica significa reinventar y revolucionar los algoritmos. El dominio de un ordenador cuántico es la hipercomplejidad, un campo en el que su capacidad combinatoria explota en situaciones en las que la computación tradicional sólo puede proporcionar soluciones aproximadas. En el corazón de esta revolución está el concepto de superposición o, dicho de otra forma, de ‘combinación lineal compleja’. La superposición es una herramienta matemática que permite descomponer un problema -lineal o de otro tipo- en dos o más subproblemas más sencillos, de tal manera que el problema original se plantea como superposición o suma de estos subproblemas.
Probabilidades
Por eso la informática cuántica es un paradigma de computación distinto al de la clásica. Se basa en el uso de cúbits, una combinación especial de unos y ceros. Los bits de la computación clásica pueden estar en 1 o en 0, pero solo un estado a la vez; en tanto los cúbits pueden tener los dos estados simultáneos también. Esto abre nuevas puertas lógicas que hacen posibles nuevos algoritmos. Los cúbits que maneja la computación cuántica son, en realidad, bits que poseen un número complejo, llamado amplitud, ligado a la posibilidad de que sea 0 y una amplitud diferente unida a la posibilidad de que sea 1.
Estas amplitudes están estrechamente relacionadas con las probabilidades, en el sentido de que cuanto más lejos esté la amplitud de algún resultado de cero, mayor será la posibilidad de ver ese resultado. 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.
Pero no siempre es tan sencillo, porque las amplitudes no son siempre equivalentes a probabilidades. Siguen reglas diferentes. Por ejemplo, si algunas contribuciones a una amplitud son positivas y otras negativas, entonces las contribuciones pueden anularse mutuamente, de modo que la amplitud sea cero y nunca se observe el resultado correspondiente; del mismo modo pueden interferir de forma constructiva y aumentar la probabilidad de un resultado determinado. Por eso una de las grandes dificultades a la hora de diseñar un algoritmo para un ordenador cuántico es coreografiar un patrón de interferencias constructivas y destructivas de forma que para cada respuesta errónea a las contribuciones a su amplitud se anulen mutuamente, mientras que para la respuesta correcta las contribuciones se refuercen entre sí. Si, y sólo si, puedes arreglar eso, verás la respuesta correcta. Lo difícil es hacer esto sin conocer la respuesta de antemano y más rápido de lo que podría hacerse con un ordenador clásico.