viernes, 4 de julio de 2008

La simpleza de las computadoras cuanticas

Las computadoras cuánticas prometen ser fantásticamente rápidas y resolver problemas como el desciframiento de códigos y la búsqueda en grandes bases de datos, lo cual provee el incentivo necesario para superar los tremendos obstáculos involucrados en construirlas.
El componente básico de estas computadoras, el qubit, está formado a partir de un átomo o partícula subatómica, y las computadoras cuánticas cuánticas requieren que los qubits intercambien información, lo que significa que la interación entre estos objetos absurdamente pequeños debe ser controlada con precisión.
Los investigadores de la Universidad de Oxford y el Colegio de la Universidad de Londres, en Inglaterra propusieron un clase de computadora cuántica que puede simplificar la manera en que interactúan los qubits.
Este esquema permite a los qubits estar conectados contínuamente entre sí, en lugar de ser conectados y desconectados, y esto permite que los qubits de las computadoras sean controlados todos a la vez de forma de no tener que ser cableados separadamente.
Esta simplificación es posible gracias al uso de qubits que contienen tres electrones interactuando constantemente en lugar de dos electrones y un electrodo. Cuando el estado energético del electrón del medio coincide con los otros, los otros dos pueden intercambiar energía, produciéndose una señal de "on" (encendido).
Los investigadores generalmente concuerdan en que las computadoras cuánticas están aún a dos décadas de distancia. Sin embargo es posible que las primeras computadoras cuánticas, capaces de operaciones que las computadoras tradicionales no podrían, sean construidas en los próximos diez años, según los investigadores.

martes, 24 de junio de 2008

Algoritmos cuanticos

Un algoritmo es una sucesión de instrucciones para resolver un problema específico. Un algoritmo cuántico es como un algoritmo clásico con la diferencia que podemos aplicar y utilizar propiedad de la mecánica cuántica.
Como ya he mencionado antes, existen varios algoritmos que son relevantes en el campo, estos son el algoritmo de factorización de Shor y el de busqueda de Grover. El primero da una ganancia muy por encima de su contraparte clásica, mientras que el segundo da una ganancia cuadrática. Estos hacen creer que la computación cuántica tiene muchas posibilidades y mucho más poder de computo que su hermana la computación clásica.
Podemos clasificar los algoritmos cuánticos en tres clases principales y que son de gran interes:
Algoritmos basados en la Transformada de Fourier: estos se basan en que podemos formar la serie de Fourier en una superposición de estados, y poder operar con ella para obtener los resultados que deseamos. Es muy importante ya que muchos problemas actuales se resuelven a través de la Transformada de Fourier, y un algoritmo que provee de un cálculo aún más rápido emociona a muchos investigadores. Sin embargo existe un pero en el uso del algoritmo, por la naturaleza de la superposición no podemos obtener todos los valores de la transformada sino solo uno de sus terminos si la medimos; en cambio en los algoritmos nos enfocaremos en generar la transformada y utilizarla a nivel cuántico para luego extraer los resultados que nos interesen.
Algoritmos de búsqueda: estos algoritmos se basan en el algoritmo de Grover, el cual permite encontrar un ciertos valores que satisfacen una función en un conjunto de datos que no presentan una estructura definida. Se considera este tipo de algoritmos ya que muchos problemas pueden reducirse a una busqueda en un conjunto de datos. Además promete una eficiencia cuadrática en las busquedas. Uno de los beneficios de utilizar este tipo de algoritmos es que no destruye el conjunto de busqueda, sino que simplemente marca los valores que satisfacen la condición de busqueda. Lo cuál es muy bueno, ya que al no poder copiar cualquier qubit podría ser un trabajo tedioso el cuidar estos qubits.
Algoritmos de simulación: la computación cuántica es una gran candidata para realizar simulaciones en sistemas cuánticos y por consiguiente clásicos. En una computadora clásica se necesitan una cantidad exponencial de recursos para poder simular un sistema, sin embargo en una computadora cuántica la cantidad de recursos es lineal. Sin embargo, la eficiencia que se obtiene al simular el sistema no garantiza que se obtenga la información que se desea de la simulación ya que al medir obtenemos una cantidad lineal de datos y no toda la información del sistema. Entonces el reto esta en encontrar la manera de encontrar como extraer la información necesaria del sistema.
Otro de los retos con los que nos encontramos al desarrollar algoritmos cuánticos es que estamos acostumbrados a vivir un día a día en un mundo clásico, por lo que tenemos que forzarnos a pensar de manera cuántica y explotar de esa manera todos los beneficios que nos pueden brindar este tipo de algoritmos. Y es que aún falta mucho por explorar en ellos.

¿Una solucion milagrosa?


A pesar de lo que muchas personas creen la computación cuántica promete grandes soluciones, pero solo es eso -promesas- por ahora. La única manera de poder ver realmente lo que QC ofrece es estudiar las clase de complejidad en la que se encuentra.
La teoría de la complejidad computacional se encarga de estudiar los recursos (tiempo y espacio) necesarios para la solución de los problemas, tanto en el modelo clásico como en el cuántico, y como clasificarlos. Una clase de complejidad es el conjunto de problemas con características similares en cuanto al consumo de recursos para su resolución.
A pesar que se tienen sospechas que la computación cuántica es mucho más poderosa que la computación clásica por algunos ejemplos, como el algoritmo de factorización de Shor, estas aún son suposiciones. Ya que es posible que las computadoras cuánticas no sean más poderosas que las clásicas, de manera que cualquier problema que se pueda resolver en una computadora clásica se puede resolver en una computadora cuántica (esto también se ve por la implicación de la máquina de Turing cuántica, ya que puede emular una máquina Universal de Turing por lo que puede resolver cualquier problema que una computadora clásica pueda resolver).
Las clases más importantes son las denominadas P y NP. La clase P es el conjunto de problemas que se pueden resolver en tiempo polinomial en una computadora clásica (Máquina universal de Turing). Y la clase NP es el conjunto de problemas que se pueden revisar en una computadora clásica, pero no encontrar las soluciones. Existen subclases de la clase NP, por ejemplo esta el NP-completo que son aquellos problemas que no tienen solución en una computadora clásica.
Se puede ver que P esta contenido en NP, ya que cualquier problema que se pueda resolver puede también verificar las soluciones para el problema. Uno de los grandes problemas que han tenido los científicos es identificar si P y NP son distintos, es decir, si existen problemas en NP que no puedan estar en P. Si existe un algoritmo para resolver problemas NP-completos entonces podriamos utilizar alguna variante de este para resolver cualquier otro problema de la misma naturaleza. Por consiguiente, si en realidad P es un subconjunto de NP, entonces no existiría solución alguna en P para los problemas que sean NP-completos.
Es por esto que se cree que la computación cuántica puede ser más poderosa que la computación clásica. Como existe una solución eficiente a un problema que se cree es NP-completo, el algoritmo de factorización de Shor, entonces se tendrían soluciones a cualquier otro problema. Sin embargo, nadie a demostrado que la factorización de algún número sea un problema NP, pero nadie tampoco a demostrado lo contrario, por lo que existen personas que creen que es posible que la computación cuántica tiene esperanzas.

Origen de la computacion cuantica


A medida que evoluciona la tecnología, aumenta la escala de integración y caben más transistores en un espacio, así se fabrican microchips cada vez más pequeños, y es que, cuanto más pequeño es, mayor velocidad de proceso alcanza el chip. Sin embargo, no podemos hacer los chips infinitamente pequeños. Hay un límite en el cual dejan de funcionar correctamente. Cuando se llega a la escala de nanómetros, los electrones se escapan de los canales por donde deben circular. A esto se le llama efecto tunel.Una partícula, si se encuentra con un obstáculo, no puede atravesarlo y rebota. Pero los electrones, que son partículas cuánticas y se comportan como ondas, existe la posibilidad de que una parte de ellos pueda atravesar las paredes si es que estas son demasiado finas, de esta manera la señal pasaria por canales donde no debería circular. Por ello, el chip deja de funcionar correctamente. En consecuencia, la computación digital tradicional, no tardaría en llegar a su límite, puesto que ya se han llegado a escalas de cientos de nanómetros. Surge entonces la necesidad de descubrir nuevas tecnologías y es ahí donde entra la computación cuántica.
La idea de computación cuántica surge en 1981 cuando Paul Benioff expuso su teoría para aprovechar las leyes cuánticas en el entorno de la computación. En vez de trabajar a nivel de voltajes eléctricos, se trabaja a nivel de cuanto. En la computación digital, un bit sólo puede tomar dos valores: 0 ó 1. En cambio, en la computación cuántica, intervienen las leyes de la mecánica cuántica, y la partícula puede estar en superposición coherente: puede ser 0, 1 y puede ser un 0 y un 1 a la vez (dos estados ortogonales de una partícula subatómica). Eso permite que se puedan realizar varias operaciones a la vez, según el número de qubits.
El número de qubits indica la cantidad de bits que pueden estar en superposición. Con los bits convencionales, si teníamos un registro de tres bits, había ocho valores posibles y el registro sólo podía tomar uno de esos valores. En cambio, si tenemos un vector de tres qubits, la partícula puede tomar ocho valores distintos a la vez gracias a la superposición cuántica. Así un vector de tres qubits permitiría un total de ocho operaciones paralelas. Como cabe esperar, el número de operaciones es exponencial con respecto al número de qubits. Para hacerse una idea del gran avance, un computador cuántico de 30 qubits equivaldría a un procesador convencional de 10 teraflops (billones de operaciones en punto flotante por segundo) cuando actualmente las computadoras trabajan en el orden de gigaflops (miles de millones de operaciones).

Historia de las computadoras

Esfera de Bloch


La esfera de Bloch es una representación de un qubit,el bloque de construcción fundamental de los computadores cuánticos.

viernes, 20 de junio de 2008

Tecnología Siglo XXI: computación cuántica


Hans Mooij, de la Universidad Tecnológica de Delft en los Países Bajos y Raymond Simmons del Instituto Nacional de Estándares y Tecnología en Boulder, Colorado, EE.UU., figuran entre los científicos que están abriendo un nuevo camino hacia el desarrollo de los ordenadores del futuro. Su enfoque se basa en asumir que los superconductores, materiales que conducen la electricidad sin ninguna resistencia eléctrica, pueden aprovechar las capacidades ofrecidas por la física cuántica para incrementar de manera espectacular la potencia de los ordenadores.Las denominadas computadoras cuánticas
se han convertido en uno de los temas de mayor interés general de la física en los últimos diez años. Con la computación cuántica no se pretende mejorar el potencial del silicio haciendo los componentes más pequeños, sino aprovecharse de los exóticos principios de la mecánica cuántica, la teoría generalmente utilizada para comprender cómo se comportan los objetos en la escala de los átomos y de las partículas subatómicas.Los objetos gobernados por la teoría cuántica pueden estar en varios estados diferentes simultáneamente, como si un interruptor de la luz estuviera abierto y cerrado al mismo tiempo. Esta "superposición" de estados no se corresponde con nada familiar de nuestro mundo cotidiano, pero innumerables experimentos han demostrado que esas superposiciones pueden existir siempre que los objetos cuánticos no se perturben, por ejemplo, al hacer una medida sobre ellos.
En una computadora cuántica los equivalentes de los bits que contienen la información binaria como el 0 y el 1 en los ordenadores de hoy, serán bits cuánticos o qubits, en los cuales también pueden existir superposiciones de 0 y 1. Esto incrementa masivamente la cantidad de información que puede ponerse codificada en la memoria de una computadora cuántica. El problema es que esas superposiciones son sumamente delicadas y difíciles de mantener, sobre todo en memorias que contengan grandes cantidades de qubits interactuando entre ellos.Están siendo explorados varios candidatos para formar los qubits, como átomos magnéticamente atrapados o burbujas semiconductoras de escala nanométrica. Pero se sabe desde mucho tiempo atrás que también es posible colocar aros de material superconductor en estados de superposición cuántica y hacer así que actúen como qubits. Aquí los estados cuánticos pueden corresponder con una corriente eléctrica que circula en el anillo en una dirección o en la otra. (En los superconductores esta circulación puede continuar más o menos indefinidamente sin agotarse, porque no hay ninguna resistencia eléctrica.)La primera demostración de transmisión de información entre dos de tales qubits superconductores ha revelado que los elementos de este tipo pueden actuar como una memoria para computación cuántica y como un "bus" para la comunicación entre los qubits, un requisito esencial de cualquier ordenador en funcionamiento.

Computación Cuántica


Uno de los principales problemas de la computación cuántica son las grandes dificultades técnicas, son necesarias grandes cantidades de qubits para cualquier cálculo que implica la corrección de errores; para ninguno de los sistemas actualmente propuestos es trivial un diseño capaz de manejar un número lo bastante alto de qubits para resolver problemas interesantes. Además hay que tener en cuenta el fenómeno de decoherencia: la superposición cuántica (capacidad de existir un qubit en dos universos paralelos) es difícil de obtener y mantener ya que cualquier interacción con el exterior obligará al qubit a adoptar un valor definido.
Otro problema es que no se ha encontrado el hardware ideal para tales computadoras cuánticas; simplemente se han definido una serie de condiciones que debe cumplir, por ejemplo, el sistema debe ser escalable ya que cuanto mayor sea el problema, mayor número de qubits debe tener; también debe de seguir una coherencia cuántica…
En cuanto a las ventajas, no necesariamente el computador cuántico hará mejor las cosas que las computadoras actuales, por ejemplo, las computadoras actuales son muy buenas para multiplicar grandes números, sin embargo para realizar operaciones repetitivas las computadoras cuánticas pueden hacer uso del cómputo en paralelo: la factorización de grandes números, la búsqueda en bases de datos.
Estudios recientes nos hablan de los nanotubos de carbono de pared sencilla (SWCNT), que resultan interesantes en este tema ya que se vuelven metálicos y semiconductores en función de cómo se enrollen y se podrían aplicar a varios dispositivos, como transistores de efecto campo ultrapequeños, dispositivos de un solo electrón, dispositivos de informática cuántica y dispositivos emisores de luz.
Un grupo de investigación del Instituto Japonés de Investigaciones Físicas y Químicas ha realizado amplios esfuerzos experimentales para aplicar los SWCNT a dispositivos de un solo electrón y dispositivos de informática cuántica (qubit) con un solo punto cuántico como estructura básica.

La primera computadora cuántica


Una empresa comercial afirma que en pocos días lanzará lo que ellos han dado en llamar la primera computadora cuántica de la historia. D-Wave, la empresa de la Columbia Británica, ha prometido realizar una demostración de este ordenador cuántico esta próxima semana. Según sus afirmaciones, esta máquina es capaz de realizar 64.000 cálculos al mismo tiempo en "universos paralelos". Este ordenador es capaz de acelerar de forma crítica las búsquedas y la optimización de cálculos.
Si realmente lo han logrado, esta máquina podría hacer que los sistemas de seguridad actuales quedasen obsoletos, ya que la computación cuántica es capaz de romper la protección de los esquemas de cifrado actuales gracias a sus prestaciones a la hora de procesar un número ilimitado de hilos de ejecución simultáneamente.
La máquina que D-Wave quiere vender dispone solo de 16 qubits, pero sistemas con cientos de qubits serán capaces de procesar más entradas que el número de átomos que existen en el universo.
Los científicos se preguntan si esta empresa dispone en realidad de un ordenador cuántico, ya que nadie esperaba un lanzamiento de este tipo hasta dentro de 20 años. Claro que también puede haber ocurrido que al lidiar con "universos paralelos", la máquina se haya inventado a sí misma en el futuro y luego se haya enviado al pasado. Ya puestos...

Computadoras cuánticas


Si bien, hasta el momento, las computadoras y la tecnología de la información cuánticas se encuentran lejos de liberarse al mercado, sus obstáculos están siendo removidos por los científicos.Así, este enfoque emergerá con dispositivos computacionales superiores que algún día tornarán a las modernas computadoras actuales en obsoletas. Como en otros casos, temas que tuvieron sus orígenes en campos altamente especializados de la Física Teórica, en el futuro, sin dudas, tendrán un profundo efecto en la vida de toda la humanidad.