Publicado en
Autor
La teoría de la computación tiene una propiedad que es virtud y, posiblemente, también defecto: es una estructura construida exclusivamente sobre la base de la matemática. En otras palabras, las teorías de autómatas, de la computabilidad y de la complejidad no toman en cuenta las propiedades físicas de los dispositivos sobre los cuales, al final de cuentas, se ejecutan los algoritmos.
La característica enunciada en el párrafo anterior es una virtud por el rigor que define al pensamiento matemático, el cual es, en muy buena medida, responsable del descomunal éxito de la computación. Sin embargo, no tomar en cuenta las propiedades físicas de los sistemas sobre los que se ejecuta un algoritmo podría convertirse en un daño autoinfligido, debido a que dichas propiedades podrían ser empleadas en la formulación de algoritmos más eficientes. Pongo un ejemplo para provocar la discusión: la simulación del plegado de proteínas es un problema de optimización para el que no se conoce algoritmo eficiente (en el lenguaje de la teoría de la complejidad, este problema es NP-duro [1]) mas el cuerpo humano es capaz de plegar proteínas en milisegundos. ¿Cómo explicar esta diferencia abismal en tiempo de ejecución? Si nos atreviésemos a mirar al cuerpo humano como una máquina de procesamiento de datos, ¿podríamos aprender a construir mejores computadoras y algoritmos más poderosos? ¿Encontraríamos propiedades físico-químicas, minimalistas o emergentes [2], necesarias para aumentar la velocidad de procesamiento, propiedades que no tenemos en la máquina universal de Turing y otros modelos universales de computación?
Lo anterior invita a preguntarnos si tiene sentido replantear la relación entre la teoría de la computación y otras disciplinas para encontrar nuevas respuestas a problemas añejos y abiertos. Una de las fronteras de la investigación en ciencia computacional consiste en redefinir las nociones de información y computación sobre principios emanados de la física. Entre las ramas de la física que se han empleado en este propósito, la mecánica cuántica ocupa un lugar de privilegio.
La mecánica cuántica es el campo de la física que describe el comportamiento de la naturaleza a escalas muy pequeñas (por ejemplo, el comportamiento de los átomos), La computación cuántica es la disciplina científica e ingenieril cuyo objetivo es la construcción de computadoras y algoritmos empleando las propiedades cuánticas de la naturaleza.
El propósito que se persigue en el cómputo cuántico es incrementar sustancialmente la capacidad de los ordenadores para procesar información y resolver problemas. El cómputo cuántico no sólo adopta modelos matemáticos para la creación de algoritmos, también usa las propiedades de la materia con la que se procesa información.
El estudio formal de la computación cuántica comenzó con las preguntas que Richard Feynman planteó sobre dos temas: 1) la posibilidad de simular sistemas cuánticos, y 2) las leyes de la física que caracterizan al proceso de calcular [3,4]. A partir de ese trabajo, la computación cuántica ha avanzado a paso firme en el desarrollo de algoritmos, hardware y aplicaciones.
Hoy, la computación cuántica es una disciplina consolidada de alto valor con máquinas listas para correr algoritmos cuánticos (por ejemplo, el ordenador cuántico de IBM y la máquina D-Wave Two instalada en la NASA [5]) y con mercados en crecimiento (ver, por ejemplo [7,8]) . Universidades de prestigio mundial (Oxford, Cambridge, Caltech y MIT entre otras), gobiernos (EE.UU., China, Singapur, Alemania, Reino Unido, Australia y Japón, por ejemplo) y empresas (por ejemplo, Google, Lockheed Martin, Microsoft y D-Wave) hacen inversiones millonarias en esta área. Por lo anterior, científicos, ingenieros y un amplio abanico de profesionales relacionados con TICs tienen interés en aprender los fundamentos de la computación cuántica (para conocer problemas y aplicaciones de frontera de esta área, recomiendo ver los contenidos de [9]).
Por su importancia científica y amplio rango de aplicaciones así como la reciente existencia de hardware para experimentar [5,10], el desarrollo de algoritmos cuánticos para la solución de problemas de optimización es un tema de gran interés en la comunidad dedicada al cómputo cuántico. Dado que la búsqueda de valores mínimos o máximos de funciones de costo es un proceso frecuente en los algoritmos de aprendizaje computacional, el nacimiento del aprendizaje computacional cuántico no tardó mucho en suceder.
A pesar de su corta edad, el aprendizaje computacional cuántico tiene ya contribuciones importantes en las áreas de redes neuronales, máquinas de soporte vectorial, máquinas de Boltzmann y análisis de componentes principales. Para profundizar en las contribuciones ya hechas y temas de frontera, recomiendo revisar los contenidos de [11,12].
En México existe una comunidad dedicada a la investigación en computación cuántica (la mayoría de los investigadores de esta disciplina formamos parte de la División de Información Cuántica de la Sociedad Mexicana de Física [13]). En particular, el grupo de investigación que tengo el honor de dirigir ha hecho contribuciones en varias áreas del cómputo cuántico, entre ellas la creación de algoritmos cuánticos para resolver problemas de optimización en grafos [14,15], trabajo que en el futuro próximo aplicaremos en el aprendizaje computacional cuántico.
El futuro del cómputo cuántico, como área de la ciencia e industria emergente, es prometedor (de acuerdo con [16], el valor estimado del mercado de computación cuántica rondará los 900 millones de dólares estadounidenses). México está en la encrucijada de ser agente activo en esta revolución científica y tecnológica y así formar parte del selecto grupo de naciones que dominarán los mercados tecnológicos del futuro, o bien quedarse en la orilla y convertirse en simple consumidor del conocimiento y aplicaciones que hoy se gestan.
Referencias
[1] A. Fraenkel. Complexity of protein folding. Bulletin of Mathematical Biology, vol. 55(6), pp. 1199–1210 (1993).
[2] M. Mitchell. Complexity: a guided tour. Oxford University Press (2009).
[3] R.P. Feynman. Simulating physics with computers. International Journal of Theoretical Physics, vol. 21(6/7), pp. 467-488 (1982).
[4] R. P. Feynman. Feynman Lectures on Computation. Penguin Books (1999).
[5] https://www.nas.nasa.gov/projects/quantum.html
[6] https://quantumexperience.ng.bluemix.net/qx/experience
[7] R. Winiarczyk et al. Analysis of patent activity in the field of quantum information processing. Int. J. Quantum Inform. 11, 1350007 (2013)
[8] UK Intellectual Property Office Informatics Team. Eight great technologies. Quantum Technologies, a patent overview. UK Intellectual Property Office (2014).
[9] https://www.research.ibm.com/ibm-q/thinkq/
[10] https://www.dwavesys.com/
[11] M. Schuld et al. Contemporary Physics 56:2, 172-185 (2015)
[12] J. Biamonte et al. Nature 549, 195-202 (2017).
[13] http://optica.mty.itesm.mx/dicu/
[14] S.E. Venegas-Andraca et al. A cross-disciplinary introduction to quantum annealing-based algorithms. Submitted to Contemporary Physics (2018).
[15] W. Cruz-Santos et al. Quantum annealing approach for the Minimum Multicut problem in trees. In preparation.
[16] Industry Perspectives on Quantum Technologies. IEEE Communications Society (2015).
Salvador E. Venegas Andraca es Profesor del Tecnológico de Monterrey, donde dirige el Grupo de Procesamiento Cuántico de la Información. Doctor en física por la Universidad de Oxford, fundador de la computación cuántica en México y miembro de la Academia Mexicana de Ciencias, Salvador colabora con universidades y empresas en México y el extranjero para el desarrollo de algoritmos cuánticos. salvador@venegas-andraca.org
- Log in to post comments