Simulación de Circuitos Cuánticos

Trabajo de Fin de Máster — Carlos Garrido Junco

Resumen

Este documento explica las diferencias entre diferentes simuladores cuánticos que se disponen actualmente.

También se hace un breve repaso de la historia de la computación cuántica, narrando sus logros y su proyección a futuro.

Como necesidad impiedosa, será necesario fundamentar la base matemática en la que se basan los computadores cuánticos y sus mecanismos físicos y cómo son posibles.

Para comparar los diferentes simuladores mencionados en el texto, no solo se tiene en cuenta un mero punto de rendimiento comparando con dichos algoritmos, sino también la experiencia de usuario, la cuesta de aprendizaje de estos y sus aplicaciones a futuro en entornos reales.

Palabras clave: Computación cuántica, algoritmos cuánticos, emulación, qubit, puerta lógica cuántica.

Abstract

This document explains the differences between various quantum simulators currently available.

It also briefly reviews the history of quantum computing, describing its achievements and future prospects.

As a matter of urgency, it will be necessary to establish the mathematical foundation on which quantum computers are based, their physical mechanisms, and how they are possible.

To compare the different simulators mentioned in the text, we take into account not only a mere performance point compared to these algorithms, but also the user experience, the learning curve, and their future applications in real-world environments.

Keywords: Quantum computing, quantum algorithms, emulation, qubit, quantum logic gate.

Introducción

En algún momento, todo se va al carajo. Entonces puedes aceptarlo, o puedes ponerte a trabajar. Así es como sobreviví: resolviendo un problema, y luego otro, y luego el siguiente. Si resuelves los suficientes, puedes volver a casa.

— Andy Weir, The Martian (adaptación cinematográfica, 2015) Presentación {#sec:presentacion}

La posibilidad de aprovechar las propiedades cuánticas de la materia para poder realizar cómputos, si bien ya era conocida previamente, fue definitivamente propuesta por David Deutsch en 1985 (Deutsch 1985). Desde entonces cobró vigor la iniciativa de diseñar algoritmos que pudieran ejecutarse sobre tal tipo de computadores.

Puesto que tecnológicamente son posibles solamente versiones de baja capacidad, a las que no es fácil acceder, la forma más sencilla de probar tales algoritmos es ejecutarlos sobre simuladores que se computen clásicamente. En este trabajo se propone estudiar y comparar los distintos simuladores que han ido apareciendo con el tiempo, especialmente en lo concerniente a su capacidad y eficiencia.

En cuanto a los antecedentes, el concepto de aprovechar los fenómenos cuánticos surge en la década de los ochenta, con Richard Feynman (Feynman 1982) y Yuri Manin, que fueron los que sugirieron que los sistemas cuánticos podían resolver problemas matemáticos de forma más eficiente que los computadores clásicos, y David Deutsch lo formalizó con la creación del primer algoritmo cuántico.

Este modelo introduce el concepto de Qubit, un bit que puede estar en una superposición cuántica de estados (Lloyd 1996). Se pueden emplear para el diseño de algoritmos como el algoritmo de Deutsch-Jozsa, el algoritmo de Shor y el de Grover.

Debido a que el hardware cuántico aún está en una fase muy temprana y con recursos limitados, la simulación de estos en computadoras clásicas ha sido clave para poder probarlos. Algunas plataformas para simular algoritmos cuánticos son las siguientes: Qiskit (IBM), Cirq (Google), Microsoft QDK y QuEST (Quantum Exact Simulation Toolkit) (Microsoft Learn 2025c).

Estas simulaciones son necesarias; se necesitan para poder desarrollar algoritmos cuánticos de forma eficiente, para poder adelantar el trabajo de diseño y desarrollo. Además, permiten optimizar el diseño de la arquitectura del hardware. También sirven para probar, entre otros, los siguientes conceptos: machine learning cuántico, química cuántica y aplicaciones en criptografía.

Por último, el hardware actual para realizar computación cuántica se encuentra en la fase NISQ (Noisy Intermediate-Scale Quantum), donde dichos sistemas están en un estado de desarrollo estancado debido al ruido.

Objetivos y campo de aplicación

El objetivo de este TFM es ahondar en los conceptos previamente descritos, centrándose en los diferentes simuladores, analizando cuáles son sus diferencias y evaluando sus capacidades y limitaciones. A través de dicho estudio se busca:

  • Explicar el estado actual de los ordenadores cuánticos y por qué son importantes los simuladores cuánticos.

  • Explicar la base teórica en que se fundamentan los ordenadores cuánticos.

  • Investigar aplicaciones prácticas de los simuladores en áreas como optimización, criptografía, química cuántica y machine learning cuántico.

  • Probar algunos algoritmos cuánticos en los diferentes simuladores seleccionados.

  • Evaluar y comparar los diferentes simuladores, determinando sus ventajas y desventajas en términos de rendimiento y otros factores.

Historia

La historia es como un polvo suspendido en el aire: en cuanto se levanta un poco de viento, todo se remueve

— Liu Cixin Las ciencias de la computación derivan de las matemáticas discretas y de la lógica computacional, las cuales involucran muchos siglos de evolución de las matemáticas. Estas se remontan al siglo XXX antes de Cristo (hace 5000 años) en el Antiguo Egipto y Babilonia, aunque las demostraciones matemáticas comienzan con los griegos; cabe destacar que Aristóteles en el siglo IV antes de Cristo desarrolla la lógica formal, que determina la forma de ver el mundo desde Occidente. Dicho conocimiento estuvo a punto de perderse durante la Edad Media si no hubiera sido por los árabes. Este conocimiento vuelve a Occidente durante el Renacimiento. La lógica formal se ve rejuvenecida gracias a matemáticos como Descartes y Leibniz, y en el siglo XIX surge la lógica booleana en la que se sustentan las computadoras clásicas.Entre los siglos XIX y XX surgen figuras como David Hilbert, que promueve la idea de que cualquier problema puede ser resuelto a través de la lógica matemática. Sin embargo, Kurt Gödel, con su teorema de incompletitud (Da Silva 2014), demostró que lo que pretendía Hilbert era imposible. Esto significó un nuevo quiebre en las matemáticas que, como respuesta, impulsaron y crearon las ciencias de la computación en las que destaca Alan Turing. Alan Turing basándose en los trabajos de Gödel con el problema de decisión planteado por David Hilbert y Wilhelm Ackermann (1928). En dicho problema se busca determinar un procedimiento matemático y determinista (algoritmo) que indique si una sentencia matemática es verdadera o falsa. Si se lograse un algoritmo que determina si una sentencia es verdadera o no, Hilbert tendría razón. Alan Turing, inspirado en el teorema de incompletitud de Gödel, demostró mediante el problema de parada (Alfonseca 2000) (determinar si un algoritmo termina o no) que las matemáticas no son un sistema completo como pretendía Hilbert. Esto sentó las bases teóricas de los ordenadores clásicos, los cuales se basan en la lógica de Aristóteles, muy diferente a la forma de ver el mundo en Oriente.La lógica de Aristóteles ve el mundo de manera bivalente (verdadero/falso). Esto ha contribuido enormemente a todo el desarrollo científico que se vivió en Occidente. Se fundamenta en tres principios que están en la base de todo razonamiento lógico correcto:

  • Principio de identidad: A es A.

  • Principio de no contradicción: Una proposición no puede ser al mismo tiempo verdadera y falsa.

  • Principio del tercero excluido: Toda proposición es falsa o verdadera, no hay otra opción.

Con estos tres principios desarrolló las reglas del silogismo (Wikipedia 2025b), que es un razonamiento que parte de dos premisas y extrae una conclusión. Es un método deductivo: con premisas verdaderas se obtiene un resultado verdadero.

  • Premisa 1: Todos los hombres son mortales.

  • Premisa 2: Sócrates es hombre.

  • Conclusión: Sócrates es mortal.

Esta forma de ver el mundo se contrapone de manera intuitiva a como es la realidad cuántica, ya que principios como el principio de no contradicción se contraponen con el principio de superposición, en el cual un sistema puede estar en dos estados simultáneamente al mismo tiempo. Este choque tan grande entre el pensamiento de Aristóteles, que fue la base de todo el pensamiento occidental, y la mecánica cuántica hizo que científicos como Albert Einstein negaran la naturaleza probabilística de los sistemas cuánticos y sostuvieran que debían existir variables ocultas que no conocíamos (Wikipedia 2025c)

Con el cambio de enfoque a principios de la década de los 60, Rolf Landauer se preguntaba si las leyes físicas imponían alguna limitación al proceso de cómputo, sobre todo relacionado con la disipación de calor por los ordenadores, y si este proceso era inherente a la física o debido a la eficiencia de la tecnología disponible. Este concepto lo relacionó con la entropía de un sistema de la siguiente forma: “En toda operación lógicamente irreversible que manipula información, como la reinicialización de memoria, hay aumento de entropía, y una cantidad asociada de energía es disipada como calor”. Este principio es relevante en informática reversible y en informática cuántica. Landauer demostró que, para hacer computadoras más eficientes en cuanto a energía, sus operaciones tienen que ser reversibles para que no se pierda la información en forma de calor. Esto hace que, en teoría, las computadoras cuánticas sean más eficientes, aunque actualmente, en la práctica, el consumo de energía es mucho mayor por las limitaciones técnicas (Bonillo 2013).

Otra idea germen de la computación cuántica es el efecto túnel. Dicho efecto se lleva a especificar de la siguiente manera: si el canal de un transistor, que es la distancia que separa su colector y su emisor, debido a que los electrones son partículas cuánticas y se comportan como onda y partícula, son capaces de atravesar dicho canal (Bonillo 2013) si la distancia en el canal llega a ser menor que  nm. El efecto túnel es un problema en la computación clásica, aunque en la cuántica no es un problema, sino todo lo contrario, ya que se utiliza en sistemas de qubits basados en túneles cuánticos, por ejemplo, los quantum dot o dispositivos Josephson. La búsqueda de superar dicha limitación o incluso aprovecharla impulsó o hizo interesante la creación de computadoras cuánticas.

Como hemos mencionado anteriormente, aunque Feynman y Yuri Manin en la década de los 80 sugirieron sistemas que podían aprovechar dichos fenómenos cuánticos, no fue hasta que en 1985 David Deutsch formaliza dicha propuesta con la creación de un algoritmo que lleva su nombre. En este deja claro que utilizando principios como el entrelazamiento cuántico y el principio de superposición, pueden resolverse ciertos problemas de una manera más eficiente que en un ordenador clásico. También formalizó el concepto de máquina de Turing cuántica (QTM) (Wikipedia contributors 2025b). Es una extensión de la máquina de Turing tradicional incorporando operaciones cuánticas. Ambas máquinas, al ser completas, pueden realizar los mismos problemas en términos que son computables, pero no significa que todos los problemas los hagan con el mismo nivel de eficiencia. Hay problemas en los que los ordenadores cuánticos son más eficientes y en otros los ordenadores clásicos muestran un mejor desempeño. Para clarificar, una máquina de Turing es una cinta en la cual se pueden realizar ciertas operaciones y tiene una serie de símbolos; una QTM es una extensión en la cual se incorpora el principio de superposición y el entrelazamiento cuántico(Bonillo 2013).

En los 90 la teoría empezó a plasmarse y aparecen algoritmos cuánticos como el algoritmo de Shor (1994), un algoritmo para la factorización de números grandes. Este algoritmo es famoso porque consigue factorizar números en tiempo polinómico, lo cual es mucho más rápido que los mejores algoritmos clásicos conocidos, tales como el algoritmo de Pollard o el algoritmo paso de gigante paso de enano para hallar el logaritmo discreto. La importancia de este algoritmo radica en que la factorización de números grandes es la base de la seguridad de muchos sistemas criptográficos clásicos, como el algoritmo RSA o el algoritmo de curvas elípticas. Con este algoritmo, los ordenadores cuánticos dejaron de verse como algo de nicho(Bonillo 2013).

En 1998 fue desarrollado el primer ordenador cuántico experimental por un equipo de investigadores del MIT (Massachusetts Institute of Technology) y científicos de la Universidad de Oxford, con lo cual dichos ordenadores dejaron de ser algo hipotético. Este dispositivo utilizaba resonancia magnética nuclear (RMN) para manipular moléculas líquidas. Utilizaba como qubit el espín de los núcleos atómicos. El espín es una propiedad cuántica fundamental que describe el momento angular intrínseco de una partícula subatómica, como un electrón o un núcleo atómico. En términos simples, el espín puede ser visualizado como una especie de “imán cuántico”: si está arriba, es un 1, y si está abajo, representa un 0. Para manipular dicho espín se utiliza un campo electromagnético extremadamente fuerte, mediante pulsos de ondas calibrados en frecuencia y duración. El proceso de medición se consigue mediante los ecos que devuelven dichos núcleos atómicos (eco cuántico). Estos ordenadores, como el resto que sucederán, tienen el mayor problema hasta la actualidad: la decoherencia cuántica. Cuando el sistema se mide, la función de onda colapsa de forma probabilística. La medición no tiene que ser algo intencionado y de ahí el problema: cualquier ruido electromagnético va a conseguir que se pierda esa coherencia cuántica y, por lo tanto perder la superposición, con lo cual se pierden las ventajas que tienen frente a un ordenador clásico. Solo interesa hacer dicha medición al final del algoritmo para saber el resultado(Bonillo 2013).

En 2001, IBM consiguió un hito importante en la computación cuántica al factorizar el número 15 utilizando 7 qubits; dicho logro se obtuvo mediante resonancia magnética nuclear (RMN). IBM fue pionero en el uso de superconductores, pero fue D-Wave (2007) el que sacó el primer ordenador(D-Wave One) cuántico que utilizaba superconductores; aunque era un quantum annealing (técnica de optimización para encontrar el mínimo de una función de coste), no era una máquina cuántica universal. Lo interesante es el uso de superconductores, ya que dicha tecnología a día de hoy es la dominante porque pueden comportarse como qubits controlados con alta fidelidad, operan en frecuencias de microondas y es más fácil la lectura de sus estados cuánticos. En 2011, D-Wave, basado en los superconductores, lanzó la primera computadora cuántica comercial; aunque su diseño también era para problemas específicos, no era una QTM completa(Jones 2013).

Google consiguió lograr la supremacía cuántica (2019) con su procesador cuántico Sycamore. Este chip cuántico, compuesto por 53 qubits superconductores, realizó una tarea que tomaría a un supercomputador 10 000 años en tan solo 200 segundos. Dicha tarea consistía en generar y verificar una secuencia de números aleatorios. Aunque IBM refutó algunas de las estimaciones de Google, sugiriendo que podría tomar “solo” unos pocos días en lugar de milenios (CUÁNTICA and FLORES, n.d.).

El objetivo es lograr el santo grial: 1000 qubits lógicos; esto permitiría resolver problemas aún más complejos que no son factibles para los ordenadores cuánticos actuales, abriendo la puerta a nuevas aplicaciones en áreas como la simulación de materiales, la criptografía cuántica y la optimización de procesos en diversos campos. Esto es muy difícil actualmente, porque controlar estados de forma que evolucione exactamente como queremos sin que caiga en la decoherencia es muy difícil, porque sería controlar más estados que partículas que tiene el universo, ya que (partículas que hay en el espacio)(Dyakonov 2019).

Google Sycamore quantum computer

Estudio teórico

¡Qué follón!

— Juan Cuesta, *Aquí no hay quien viva* Introducción {#sec:introduccion-teoria}

En este apartado se describe el estado del arte de los simuladores cuánticos y se explica la base teórica de su funcionamiento, explicando las matemáticas que subyacen detrás de ellos.

Estado del Arte

Los simuladores cuánticos son una herramienta esencial para comprender y explorar los sistemas cuánticos complejos que resultan intratables para ordenadores clásicos. Existen dos grandes enfoques de simuladores: los simuladores cuánticos digitales, que utilizan puertas cuánticas y algoritmos para emular el comportamiento de un sistema cuántico (estos son los que trataremos en dicho TFM), y los simuladores analógicos, que recrean la dinámica del sistema utilizando otro sistema cuántico controlado.

Este concepto se lo debemos a Richard Feynman, quien argumentó que los ordenadores clásicos no podrían simular eficientemente la física debido al crecimiento exponencial del espacio de Hilbert (Feynman 1982).

Los simuladores analógicos han mostrado resultados pioneros como la observación del magnetismo cuántico, la localización de Anderson y la dinámica de fases cuánticas.

Los simuladores cuánticos analógicos son bastante útiles para estudiar modelos concretos de materia condensada, física de partículas o química cuántica. Algunos ejemplos son átomos ultrafríos en redes ópticas que sirven para simular modelos de Hubbard, iones atrapados que se usan para emular modelos de Ising y Heisenberg, defectos en diamantes que simulan dinámica de espines cuánticos y decoherencia, y cavidades ópticas que simulan la interacción luz-materia y efectos QED cuántica.

Los simuladores digitales son realmente útiles para el desarrollo y la prueba de conceptos de algoritmos cuánticos sin tener un sistema real con que probarlos.

Plataformas como Qiskit y Cirq han sido fundamentales para el desarrollo de dichas pruebas, permitiendo simular y desplegar estos algoritmos en hardware cuántico real o simulador.

Estas plataformas utilizan la nube, por lo cual se pueden hibridar dichos sistemas entre sistemas clásicos y sistemas cuánticos, permitiendo que los computadores cuánticos sean servicios solicitados por aplicaciones que son ejecutadas en sistemas tradicionales.(Microsoft 2025)

Por otro lado, aunque se habla de procesadores que tienen cientos, incluso miles de qubits, se refieren a qubits físicos, que no son lo mismo que qubits lógicos, y los ordenadores cuánticos, lo máximo que manejan actualmente es un número de 50 qubits lógicos hasta 2025. El número permitido de qubits en simuladores cuánticos está en la mayoría de los casos rondando los 30 qubits; por lo tanto, son una alternativa gratuita que casi está a la par en número de qubits.

Fundamentos de la computación cuántica

Principios matemáticos de la computación cuántica

La computación cuántica difiere de la computación clásica en que su elemento mínimo no es el bit, es el qubit. Se explicarán más adelante en profundidad, pero resumiendo, un qubit puede adquirir dos estados: o bien un uno, o un cero, o una superposición de ambos estados, siendo bastante útil para nuevos algoritmos que se aprovechan de dicha superposición, haciendo que algoritmos que serían inabarcables en un computador clásico vuelvan dichos problemas en problemas de tiempo polinómico. Estos computadores disponen de diferentes puertas lógicas, que, dichas puertas lógicas, no son las habituales en la computación clásica a la que estamos acostumbrados, ya que deben ser reversibles, deben ser pulsos que cambian el estado cuántico del sistema sin perder la coherencia del sistema, es decir, sin que los qubits colapsen.

La computación cuántica se trata de una combinación de tres características ligadas a la mecánica cuántica: superposición, entrelazamiento e interferencia (Wikipedia contributors 2025a).

Otra diferencia fundamental: la computación clásica se centra en el álgebra de Boole; en cambio, la computación cuántica se fundamenta en el álgebra lineal, en el estudio de espacios vectoriales, matrices y operaciones lineales en dichos espacios.

Para lograr un entendimiento claro, se necesita un dominio del álgebra lineal. En este TFM, no profundizaremos mucho, pero daremos unas bases para que el lector pueda comprender más o menos el funcionamiento de las puertas lógicas y la construcción de dichos algoritmos.

Espacios vectoriales. Notación de Dirac

Un espacio vectorial es un conjunto de vectores que conforma un espacio en el cual se pueden sumar y multiplicar por ellos mismos y por números escalares.

El espacio vectorial que nos interesa es el , que es el espacio de las -tuplas de números complejos. Los vectores pueden ser vectores fila o columna. La traspuesta de un vector es una operación reversible que vuelve un vector columna a un vector fila y viceversa.(Castillo Gómez 2024)

undefined