Algoritmos Cuánticos

Ya sabiendo las interesantes propiedades de la física computacional cuántica, ahora la verdadera pregunta sería, ¿Cómo aplicar estas propiedades a problemas computacionales actuales? De igual forma se viene a la cabeza la cuestión de sí es verdaderamente necesario la aplicación de estas propiedades; vale la pena el esfuerzo? 

En el siguiente blog exploraremos las posibilidades de los algoritmos cuánticos, cuando es buena idea y cuando no hacer uso de estos, y de igual forma, ejemplos prácticos y algoritmos ya desarrollados y el uso de estos en el mundo real.


Posibilidades

Como sabemos (y si no, en este blog te puedes informar más) las propiedades más relevantes de la física computacional cuántica son la superposición y el entrelazamiento. Además de esto, una de las diferencias fundamentales entre la computación cuántica y la clásica es el tipo de respuesta que se da. 

Con las computadoras clásicas, los procesos son completamente determinísticos. Esto significa que con la misma entrada siempre se va a obtener la misma salida. Las computadoras cuánticas, a diferencia, dan respuestas probabilísticas, indicando que respuesta es más probable a ser verdadera. 

Aunque esto pueda sonar desalentador para las computadoras cuánticas, ya se han desarrollado varios métodos para poder "filtrar" la respuesta deseada, haciendo uso de la transformada de Fourier para poder agrupar las frecuencias deseadas (dándole así una probabilidad mayor al resultado correcto) y destruyendo las erróneas. 



Cuando si, Cuando no

Dependiendo del problema en cuestión, una opción será mejor que la otra. Por ejemplo, debido a que las computadoras cuánticas-gracias a la superposición-pueden evaluar varios estados en un mismo momento, su mayor fuerte será en las situaciones donde existan varias entradas, independientes unas de las otras, que puedan ser evaluadas simultáneamente. En estos casos, las computadoras tradicionales no sobresalen tanto ya que únicamente pueden evaluar entrada por entrada. Esto es extremadamente engorroso en casos como el descifrado de RSA, ya que para poder evaluar todas las posibles posibilidades tomaría décadas, siglos e incluso milenios dependiendo del número a descifrar.

Por otro lado, como se mencionó en la sección anterior, debido a las características de la física cuántica, no es verdaderamente posible saber el resultado de un qubit ya que cuando se intenta realizar esto, este va a colapsar en uno de los dos estados disponibles, perdiendo así su mayor fuerte. Es por esto que los algoritmos desarrollados para la computación cuántica tienen que ser desarrollados con esto en mente.

Ya teniendo en cuenta lo anterior, y aparte sumándole los costos y la dificultad del desarrollo de sistemas computacionales cuánticos, se puede decir que el uso de estos va a ser mayor en problemáticas donde las computadoras normales sean extremadamente inferiores, y tengan que usar demasiados recursos; pero para tareas más sencillas del día a día, su uso no será tan necesario ni justificable.

Algoritmos Relevantes

Al día de hoy ya se han realizado varios algoritmos que hacen uso de la computación cuántica y también son diseñados con las necesidades de esta en cuenta. Estos hacen uso de la superposición y pueden reducir los tiempos de cálculo sustancialmente.

El primero y uno de los más importantes es el algoritmo de Shor. Este algoritmo es usado para el descifrado de sistemas RSA y puede reducir los tiempos de esto exponencialmente. Este algoritmo hace uso de la transformación cuántica de Fourier y de la superposición. Al día de hoy no se ha podido demostrar mucho de su uso ya que requiere de una cantidad grande de qubits (por lo menos 400) para ser funcional en números de varios dígitos, y en la actualidad, la mayor cantidad que se ha podido obtener es por parte de Google, con un total de 72.

El segundo de estos algoritmos es el algoritmo de Grover, usado para búsquedas en un espacio de tamaño N. Generalmente eso toma un mínimo de O(n)=N/2, pero con el algoritmo de Grover esto se reduce a únicamente √N.

Como se puede ver, la computación cuántica puede ser de gran ayuda para diferentes necesidades, y también es importante decir que a medida que se hagan más avances en la tecnología de la física cuántica, más posibilidades van a existir para aplicar la computación cuántica a situaciones del día a día.




0 Comentarios