El CiTIUS desarrolla protocolos y un lenguaje nuevo de programación para facilitar el trabajo conjunto de computadores cuánticos y clásicos
Mientras los computadores cuánticos sigan siendo pequeños, han de operar conjuntamente mediante sistemas distribuidos para ofrecer buenos resultados. Lo que parece claro es que, trabajando solos o en grupo, convivirán a largo plazo con los computadores clásicos en una especie de simbiosis. Este modelo híbrido y distribuido necesita de herramientas que permitan extraer todo su potencial de manera eficiente y accesible para los programadores y programadoras. El CiTIUS está contribuyendo a este reto mediante el desarrollo de protocolos de conexión entre dispositivos y de un lenguaje intermedio de programación
Con tan solo 24 años, Ferdinand Porsche creó el que se considera el primer coche híbrido de la historia, propulsado por un motor eléctrico octogonal. El Lhoner-Porsche Electromobile fue la sensación en la Exposición Universal de París y, aunque su producción comercial quedó aparcada durante cerca de un siglo por el exceso de peso y la falta de autonomía, sentó las bases de lo que hoy es la gran promesa de la movilidad limpia. En 1997, la industria de la automoción japonesa resucitaba la idea de Porsche lanzando al mercado el Toyota Prius. A finales del siglo XX, la tecnología había avanzado lo suficiente para ofrecer un modelo híbrido al mercado de masas, aunque no tanto como para desarrollar un vehículo totalmente eléctrico.
La transición hacia una movilidad libre de combustibles fósiles es un ejemplo de cómo en ocasiones las tecnologías disruptivas necesitan integrarse inicialmente con sus predecesoras hasta que se desarrollan las condiciones necesarias para tomar el relevo.
Este modelo híbrido es el que está permitiendo aprovechar ya algunas ventajas cuánticas en el ámbito de la computación, solo que, según los expertos y expertas, no está previsto que la computación cuántica vaya a sustituir a la clásica, al menos en un futuro próximo. Existe consenso en que habrá una convivencia a largo plazo y por eso es necesario desarrollar las mejores fórmulas posibles para sacar partido del binomio computación clásica-computación cuántica.
Sistemas híbridos y distribuidos
Mientras los ordenadores cuánticos sigan siendo pequeños y ruidosos –término que hace referencia a que son propensos a cometer errores–, además de integrarlos en sistemas híbridos es necesario conectarlos en red –en lo que se denomina un sistema distribuido– para obtener la capacidad de cómputo suficiente. Este es el campo de investigación al que quiere contribuir el proyecto en el que trabaja Javi Cardama en el Centro Superior de Investigación en Tecnologías Inteligentes de la Universidade de Santiago de Compostela (CITiUS).
“Aunque el término cuántico suene atractivo, estos ordenadores no superan a los clásicos en todo. Sin embargo, hay tareas específicas donde son más eficientes e incluso pueden resolver problemas que los clásicos no podrían abordar”, explica Cardama. “El objetivo es aprovechar las fortalezas de cada tipo de computación en las tareas donde son más eficientes”.
La colaboración entre ordenadores clásicos y cuánticos puede ser muy útil en el entrenamiento de modelos de machine learning –como ChatGPT–, la criptografía, la simulación molecular –con aplicación en biotecnología y farmacología– y la optimización de problemas complejos –como la planificación urbana o la gestión de tráfico aéreo–. Son solo algunos ejemplos, pero lo suficientemente relevantes como para justificar un esfuerzo investigador y tecnológico como el que se está desarrollando en el CiTIUS.
“Conectar dispositivos heterogéneos de manera eficiente no es algo sencillo. Es necesario desarrollar herramientas que permitan al programador ejecutar tareas en cada nodo de cómputo de forma sencilla, al tiempo que se explotan las características particulares de cada modelo de computación”, afirma Cardama.
Su trabajo busca ampliar las herramientas que ya se han desarrollado para programar –como es el caso de las tarjetas gráficas– con el objetivo de incluir ordenadores cuánticos en el ecosistema de computación. “Esto permitirá que los desarrolladores puedan interactuar con distintos tipos de hardware, incluidos los dispositivos cuánticos, de una manera unificada y eficiente”, destaca el investigador.
Para que computadores clásicos y cuánticos trabajen juntos es necesario que se comuniquen de forma eficiente. El enfoque que está utilizando el proyecto del CiTIUS es usar la comunicación clásica únicamente para lanzar los programas cuánticos. “Esto significa que la computadora clásica inicia el proceso, pero, una vez que el programa cuántico comienza a ejecutarse, todo el procesamiento cuántico se lleva a cabo de manera autónoma, sin interferencias clásicas hasta que el resultado está listo”, expone Cardama para ilustrar que este tipo de abordaje busca maximizar la eficiencia y minimizar las interrupciones.
Este trabajo conjunto entre computadores clásicos y cuánticos implica que estos últimos sean varios y estén conectados en red. “Actualmente, no somos capaces de construir dispositivos con una gran cantidad de cúbits. Por eso es crucial poder conectar varios ordenadores cuánticos para resolver problemas a gran escala”, aclara el investigador. Es decir, para que los computadores cuánticos aporten su poder de aceleración a los clásicos por el momento han de hacerlo en grupo, a la espera de que se desarrolle un computador cuántico lo suficientemente potente para colaborar de forma autónoma con otro clásico.
Por lo que se refiere a los protocolos para este modelo distribuido, están trabajando en la definición de un lenguaje de programación intermedio para procesadores cuánticos distribuidos. “De manera sencilla, lo que buscamos con este lenguaje es establecer un idioma común que permita que los distintos dispositivos cuánticos puedan entenderse entre sí, sin importar sus diferencias de arquitectura”, explica Cardama.
Este idioma que están desarrollando se llama NetQIR (Net Quantum Intermediate Representation) y esperan que facilite el desarrollo de nuevas herramientas. Por ahora cuentan con una versión beta, con el reto de lograr que sea sencillo de manejar y se pueda traducir a las instrucciones específicas que utilizan las computadoras cuánticas. “Los próximos pasos incluyen la integración de este lenguaje intermedio en herramientas de programación heterogénea que ya son ampliamente utilizadas por los programadores clásicos. Este enfoque tiene como objetivo facilitar la transición a la computación cuántica y hacer que los desarrolladores puedan incorporar esta tecnología de manera más natural en los entornos con los que ya están familiarizados”, afirma el investigador del CiTIUS.
Visión a corto y largo plazo
Este proyecto, enmarcado en el Plan Complementario de Comunicación Cuántica (PCCC), cuenta con la colaboración del Centro de Supercomputación de Galicia (CESGA) para realizar una contribución relevante al avance de la tecnología. “Queremos estar preparados para cuando la computación cuántica alcance un nivel de eficiencia adecuado”, asegura Cardama. “El objetivo es que, cuando esto ocurra, nuestras herramientas y lenguajes estén lo suficientemente desarrollados para facilitar una transición fluida y permitir que los programadores puedan aprovechar el potencial de la computación cuántica sin enfrentarse a grandes barreras técnicas o de aprendizaje”, dice, en referencia a que en este momento no existe el nivel de abstracción suficiente en el lenguaje para programar sin tener un conocimiento profundo sobre el funcionamiento físico de los procesadores cuánticos.
A corto plazo, el proyecto busca reducir la curva de aprendizaje para el uso de la computación cuántica, haciendo que la tecnología sea más accesible para programadores y programadoras sin conocimiento en profundidad sobre mecánica cuántica.
En el largo plazo, el equipo del CiTIUS prevé que estas herramientas faciliten la incorporación de la computación cuántica en sectores donde puedan ofrecer ventajas claras, como la optimización de procesos industriales o la simulación de sistemas físicos complejos.
El futuro cuántico
Javi Cardama asegura que es complicado predecir el futuro en un ámbito en el que todavía existen muchas limitaciones que no pueden resolverse con los materiales y tecnologías disponibles. “Aun así, creo que en los próximos cinco años podremos contar con una infraestructura de software estándar para programar los ordenadores cuánticos actuales y estar preparados para los futuros. Esta estandarización reducirá la complejidad del desarrollo cuántico, permitiendo que los investigadores se concentren en innovar y optimizar algoritmos, sin tener que preocuparse tanto por las particularidades técnicas del hardware subyacente”.
Este escenario de avance tecnológico debería, a criterio del investigador del CiTIUS, ser diferente al de la computación clásica, cuyo desarrollo estuvo impulsado en gran medida por industrias privadas. “Creo que en el caso de la computación cuántica esto debería cambiar. El desarrollo de un ordenador cuántico lo suficientemente potente plantea un problema de seguridad, ya que podría vulnerar los sistemas criptográficos actuales, lo que sería catastrófico si cayese en las manos equivocadas. Por eso considero crucial que las instituciones públicas tomen un papel activo e inviertan en estas tecnologías. Es una oportunidad para que los gobiernos aseguren que los beneficios de la computación cuántica se distribuyen equitativamente y no queden concentrados en manos privadas con fines puramente comerciales”.
En la misma línea, Cardama apunta a otro problema que debería abordarse en esta área de investigación: la dificultad para retener talento. “El perfil de una persona con conocimientos en computación cuántica requiere una amplia formación en matemáticas, física e informática, lo que hace que este tipo de investigador sea muy escaso y, en muchas ocasiones, acabe derivándose a la industria privada, que ofrece mejores condiciones que el entorno universitario”, afirma, con la petición de que se resuelva la precariedad de la investigación en el ecosistema público.
Contacto: javier.cardama@usc.es
Web: https://citius.gal/team/francisco-javier-cardama-santiago/
Publicaciones:
Barral, D., Cardama, F.J., Díaz, G., Faílde, D., Llovo, I.F., Mussa Juane, M., Vázquez-Pérez, J., Villasuso, J., Piñeiro, C., Costas, N., Pichel, J. C., Pena, T. F., Gómez, A. (2024) Review of Distributed Quantum Computing. From single QPU to High Performance Quantum Computing. https://arxiv.org/pdf/2404.01265
Vázquez-Pérez, J., Cardama, F. J., Piñeiro, C., Pena, T. F., Pichel, J. C., Gómez, A. (2024) NetQIR: An Extension of QIR for Distributed Quantum Computing. https://arxiv.org/pdf/2408.03712
Vázquez-Pérez, J., Piñeiro, C., Pichel, J.C. et al. QPU integration in OpenCL for heterogeneous programming. J Supercomput 80, 11682–11703 (2024). https://link.springer.com/article/10.1007/s11227-023-05879-9