Table of Contents

Credits

This article is translated from : Quantum Computing: An Introduction

Oringal author: AnkitSharma007

Introducción

Existe una gran variedad de puntos de vista con respecto a Cómputo Cuántico (Quantum Computing) y Microsoft ha anunciado oficialmente Quantum Development Kit y Q#, el lenguaje para el cómputo cuántico.

Este artículo cubre algunos de los conceptos básicos del Cómputo Cuántico (Quantum Computing) y también cómo configurar un entorno en nuestra máquina local con Visual Studio 2017 para comenzar con la programación de Quantum.

¿Qué es la Teoría Cuántica?

La teoría cuántica es la rama de la física que trata con el mundo de los átomos y las partículas más pequeñas (subatómicas) dentro de ellos. Las leyes de la física son diferentes a nivel atómico y las leyes clásicas de la física que podemos observar en nuestra vida diaria no se aplicarán aquí.

Limitantes de las computadoras clásicas

Las computadoras clásicas (las máquinas que utilizamos en nuestra vida diaria, incluidas nuestras computadoras portátiles, computadoras de escritorio, servidores, etc.) también han hecho nuestra vida muy simple y rápida. Hemos logrado muchas cosas y el mundo ha cambiado completamente con el advenimiento de las computadoras en el último siglo. Pero las computadoras clásicas también tienen algunas limitantes.

Una computadora clásica usa transistores para formar interruptores lógicos que permiten que la corriente eléctrica pase a través de ellos (encienda) o restrinja el flujo de corriente (apague). Con el tiempo, el tamaño de los transistores se ha reducido, lo que nos permite colocar millones de transistores en un chip pequeño, lo que da lugar a pequeñas computadoras portátiles con mayor potencia de computación (por ejemplo: teléfonos inteligentes) pero nos acercamos a un límite físico el transistor más pequeño.

Hoy, los transistores ya han alcanzado el tamaño de 1 nanómetro. En un rango atómico (menos de 1 nanómetro), los electrones se comportan de manera extraña y no siguen los principios de la física que normalmente se aplican a objetos más grandes. En la escala atómica, los electrones muestran efecto "Túnel Cuántico", es decir, a veces se comporta como una onda y pasa a través de interruptores lógicos cerrados, anulando así la presencia de un interruptor lógico.

Como no podemos tener un interruptor de transistor perfecto en tamaños tan pequeños, hemos alcanzado un límite final de la cantidad de transistores que podemos colocar en un área pequeña, manteniendo los transistores lo suficientemente grandes como para evitar el efecto de túnel cuántico. Esto, a su vez, nos impide aumentar el poder de cómputo de nuestras computadoras.

Hay muchos problemas que crecen exponencialmente en términos de cómputo y debido a la limitante de las computadoras clásicas, llevará años resolverlas. Entonces, debemos buscar una forma más eficiente de resolver estos problemas. Las respuestas se encuentran en Computadoras Cuánticas.

¿Qué es una Computadora Cuántica?

Las computadoras cuánticas son máquinas basadas en los principios de la mecánica cuántica, que adoptan un nuevo enfoque para procesar la información, lo que las hace súper potentes. Las computadoras cuánticas usan Qubits para procesar la información.

¿Qué es un Qubit?

La unidad fundamental de información de procesamiento en una computadora clásica es un bit que puede contener valores binarios ('0' o '1'). Lo análogo al bit es Qubit (abreviatura de "Quantum Bit") en computadoras cuánticas. Los Qubits tienen propiedades especiales que ayudan a resolver problemas complejos mucho más rápido que los bits clásicos. Una de estas propiedades es la superposición que establece que, en lugar de mantener un valor binario ("0" o "1") como un bit clásico, un qubit puede contener simultáneamente una combinación de "0" y "1". Cuando múltiples qubits interactúan de forma coherente, pueden explorar múltiples opciones y procesar información en una fracción del tiempo en comparación con los sistemas clásicos, incluso los más rápidos, que no sean cuánticos.

Fig: - Representación de un Qubit (Fuente: - Wikipedia)

  

En realidad, los qubits deberían almacenarse mediante átomos, iones o incluso cosas más pequeñas, como electrones y fotones..

¿Qué es el principio de Superposición?

La Superposición es esencialmente la capacidad de un sistema cuántico para estar en múltiples estados al mismo tiempo, es decir, algo puede estar "aquí" y "allí", o "arriba" y "abajo" al mismo tiempo. Este comportamiento únicamente se observa a nivel atómico.

Un Qubit puede existir en Superposición de cero y uno, es decir, puede almacenar un cero, uno, ambos, cero y uno, o un número infinito de valores intermedios. También pueden crear una superposición compleja de 0 y 1 al interactuar con otros Qubits. El número total de superposiciones que son posibles con n Qubits es 2n

¿Qué es el Entrelazamiento Cuántico?

El Entrelazamiento Cuántico es una correlación extremadamente fuerte que existe entre las partículas cuánticas, tan fuerte, de hecho, que dos o más partículas cuánticas pueden estar inextricablemente unidas en perfecta armonía, incluso si están separadas por grandes distancias. Esto significa que un estado cuántico de cada partícula no puede describirse independientemente el uno del otro. Las partículas están tan intrínsecamente conectadas que se puede decir que "bailan" en unísono instantáneo y perfecto, incluso cuando se colocan en los extremos opuestos del universo.

Los estados de Qubits entrelazados no pueden describirse independientemente el uno del otro. Esto significa que si medimos un Qubit, también podremos obtener información sobre lo que sucederá si medimos otro Qubit.

La superposición y el entrelazamiento son dos principios fundamentales de la computación cuántica.

¿Qué es Qubit Topológico?

Los Qubits suenan interesantes pero son muy inestables e incluso una pequeña perturbación en el sistema puede provocar cambios en toda la operación. Por lo tanto, Microsoft está trabajando para crear un Qubit más estable llamado Qubit Topológico. Puede almacenar información en una forma más estable en comparación con otros Qubits. Un Qubit Topológico permitirá a la computadora Cuántica escalar con una tasa mucho más alta y nos permitirá construir una computadora cuántica grande y lo suficientemente estable como para resolver nuestros problemas más desafiantes.

¿Qué computadoras cuánticas son mejores que las computadoras ordinarias?

Un punto importante que debemos tener en cuenta es que las computadoras Cuánticas no son el reemplazo de las computadoras clásicas. Hay pocos problemas que la computadora Cuántica puede resolver a una velocidad tremenda en comparación con una computadora clásica. Uno de esos problemas es la factorización de un gran número, por ejemplo:

si m = p*q, tal que p y q son primos, entonces dado el valor de m, encuentre el valor de p y q.

Otro tipo de problema es cuando las computadoras clásicas son incapaces de dar resultados precisos, tales como encontrar la longitud de enlace en compuestos químicos como el fluoruro de calcio (CaF) y diátomo de sodio (Na2).

¿Cómo configurar el entorno de desarrollo de Quantum Computing en su máquina local?

Requerimientos previos

Necesita tener instalado Visual Studio 2017 en una máquina con Windows de 64 bits. No funcionará para la instalación de Windows de 32 bits o versiones inferiores de Visual Studio.

Descargar Quantum Development Kit

Puede comenzar a trabajar en cómputo cuántico desde su máquina local. Microsoft ha lanzado Quantum Development Kit, que puede descargar desde aquí.

Visual Studio

Una vez que haga clic en "Descargar", se descargará un archivo "QsharpVSIX.vsix". Solo necesita instalarlo como cualquier otro programa e integrará el kit de desarrollo en su Visual Studio 2017. Debe reiniciar Visual Studio para que los cambios surtan efecto.

Ahora abra VS 2017 y vaya a Archivo >> Nuevo >> Proyecto

Abrirá un cuadro de diálogo. Seleccione Visual C # en el menú de la izquierda y luego seleccione "Q# Application" desde la plantilla instalada. Dale un nombre a tu proyecto y haz clic en Aceptar.

 

En el explorador de soluciones, puede ver la estructura de archivos de la siguiente manera:

Aquí, Operation.qs es el archivo que contiene el código Q# y Driver.cs es nuestro archivo de código C# normal. Esto se debe a que una computadora Cuántica es como un procesador de código; llamaremos al código del archivo Q# de nuestro método principal que está en el archivo C#. Podemos escribir y simular un programa Quantum en este archivo de solución.

Simular la computación cuántica aportará mucha carga al hardware de su sistema. Por lo tanto, se recomienda utilizar un sistema que tenga una memoria RAM alta (8 GB o más). También puede usar Azure Quantum Simulator que está alojado en la nube y se puede usar para simular una gran cantidad de Qubits

¿Cuáles son los desafíos actuales para las computadoras cuánticas?

Actualmente, tenemos computadoras Cuánticas con la fuerza para manipular menos de 20 Qubits. Google, IBM y Microsoft son unos de los pocos que podemos nombrar que están trabajando para crear una computadora Cuántica a gran escala. IBM incluso ha anunciado un prototipo para 50 computadoras Qubits Quantum. Otro desafío es hacer que el sistema sea estable a medida que aumenta el número de Qubits.

El campo de la computadora Cuántica es vasto ya que incorpora los conceptos de Física Cuántica, Superconductores, nanotecnología y otros. Cada uno de estos es en sí mismo un campo sofisticado que todavía se está desarrollando completamente, por lo que construir un sistema físico que siga los principios de todos estos campos es un verdadero desafío.

Todavía tomará al menos 10 años o incluso más hasta que tengamos una computadora Cuántica lo suficientemente grande y estable como para resolver la mayoría de nuestros retos más grandes.

Conclusión

El potencial de la computadora Cuántica es tremendo y podemos lograr mucho que se pensaba que era casi imposible con las computadoras clásicas. Podemos sintetizar nuevos medicamentos, podemos desarrollar nuevos catalizadores, acelerar el desarrollo de la inteligencia artificial y mucho más. En este artículo, he cubierto algunos conceptos básicos del Cömputo Cuántico.

Referencias


Fuente: