La computación cuántica
¿Qué es la computación cuántica? La computación cuántica nace con el objetivo de combinar las propiedades de la física y las ciencias computacionales para solucionar problemas de computación. La base teórica de la computación tradicional está basada en saber usar unos y ceros para resolver problemas. Se utilizan los transistores como elemento principal, de forma que las diferencias de energía que existan en él son unos y ceros lógicos. Sin embargo, en la computación cuántica, se reduce la escala del elemento primario, lo que conlleva una serie de efectos cada vez más obvios. Una parte básica de la computación cuántica es estudiar las consecuencias de dichos efectos en la computación tradicional. Dichos estudios fueron los que llevaron a los científicos a emplearlos para sacar provecho, de tal manera que físicos y computó logos (principalmente teóricos) comenzaron a crear diversas hipótesis basadas en la afirmación de que a partir de las leyes de la mecánica cuántica se podrían desarrollar nuevos planteamientos en la teoría y procesamiento de la información. Resulta obvio pensar que para poder aplicar estas teorías cuánticas necesitaremos obtener una computadora cuántica. Hasta hoy día, los componentes de hardware han estado siendo miniaturizados hasta llegar a conseguir nano circuitos. Sin embargo, vamos a alcanzar un punto en el que esta miniaturización sea tal que no se pueda avanzar más en este aspecto. En ese momento tendrá que entrar en juego la mecánica cuántica. Origen de la computación cuántica A medida que evoluciona la tecnología, aumenta la escala de integración y caben más transistores en el mismo 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 túnel.
Una partícula clásica, si se encuentra con un obstáculo, no puede atravesarlo y rebota. Pero con 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 son demasiado finas; de esta manera la señal puede pasar 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 ha llegado a escalas de sólo algunas decenas de nanómetros. Surge entonces la necesidad de descubrir nuevas tecnologías y es ahí donde entra la computación cuántica en escena. 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 0 y 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 (millones de millones de operaciones en coma flotante por segundo), cuando actualmente las computadoras trabajan en el orden de gigaflops (miles de millones de operaciones).
Características Mientras que en la computación que usamos hoy en día, cada bit puede presentarse en estados alternativos y discretos a la vez, en la computación cuántica cada bit llega a estar en múltiples estados en un mismo instante.
Gracias a esto, podremos llegar a reducir exponencialmente el tiempo empleado por los algoritmos actuales. Existe una arquitectura muy parecida a las que tenemos actualmente, que ha tenido mucho éxito en el ámbito teórico y cuya realización depende de la futura implementación de una computadora cuántica. Los científicos cuánticos han logrado enormes avances teóricos al conseguir demostrar que es factible la reducción drástica de los recursos computacionales que se requieren en la ejecución de algoritmos, algunos de los cuales requieren muchísimo poder de cómputo en las computadoras más avanzadas que existen hoy en día. Algunos ejemplos desarrollados teóricamente con mucho éxito son la anteriormente mencionada búsqueda de factores de números primos, o la búsqueda en bases de datos no ordenadas. La base teórica de la computación cuántica se basa en las interacciones del mundo atómico, así como en futuras implementaciones de computadoras cuánticas, obteniéndose por el momento resultados muy alentadores. Además, es uno de los métodos con mayor futuro debido a que ofrece una gama de prestaciones enormes, pudiendo llegar a duplicar los dispositivos de almacenamiento más avanzados. Para entender esto último hemos de tener en cuenta que los qubits pueden representar cuatro números al mismo tiempo (en lógica binaria sólo se permite un 1 o un 0 para un único bit), de ahí esta duplicación de capacidad, no sólo de las memorias o dispositivos de almacenamiento secundario, sino también del resto de componentes como microprocesadores, tarjetas de sonido, de video… lo que conllevaría además un aumento de la velocidad de estos microprocesadores. El qubit Es el elemento básico de la computación cuántica. Su nombre viene dado por sus siglas: quantum bit, y representa ambos estados (0 y 1) simultáneamente, dos estados ortogonales de una subpartícula atómica. Un vector de n qubits representa a la vez 2n estados, de forma que un vector de dos qubits representaría los estados 00, 01, 10 y 11. Con dos estados discretos distintos, cualquier sistema cuántico puede servir como qubit, un spin de electrón que apunta arriba o abajo, o un spin de fotón con polarización horizontal o vertical. Entanglement Debido a este fenómeno, si dos partículas son generadas en el mismo proceso, permanecen relacionadas entre sí, (por ejemplo, la
desintegración en un positrón y un electrón), de tal forma que no se pueden describir de forma aislada los subsistemas que forman. En el momento en el que una de las dos partículas cambia de estado, repercute en la otra. Esto se produce al intentar medir el estado de una de ellas. Tele transportación cuántica Fue descrita por Stean como “la posibilidad de transmitir qubits sin enviar qubits?. Mientras que en la computación tradicional para transmitir bits estos son clonados/copiados y posteriormente enviados por diversos medios de transmisión… en la computación cuántica esto no es posible. A la hora de enviar un qubit, el receptor no llegará a saber cuál era su estado anterior con certeza, pues como hemos comentado anteriormente, cualquier intento de medirlo produce una modificación en dicho estado, de tal manera que se pierde, siendo ya imposible recuperarlo. Sin embargo, podemos solucionar este problema a través del fenómeno del “entanglement? Para ello, lo que se hace es enredar los qubits del emisor y el receptor, de tal modo que el qubit del emisor se transmite desapareciendo del emisor, y llegando al receptor el qubit teletransportado. Dicha teletransportación se produce por el denominado efecto EPR, mediante el cual tras enredar los dos qubits en el emisor (junto al bit cuántico original que deseamos transmitir) y receptor, y posteriormente separarlos, al realizar la lectura del estado original, estos cambian su estado a otro cualquiera, de tal manera que la información es enviada al receptor, que la utiliza para tratar su bit, de forma que éste acaba siendo idéntico al original. El paralelismo cuántico Gracias a la superposición cuántica, utilizando puertas lógicas cuánticas, podemos llegar a conseguir un paralelismo, en cálculos, exponencial. Esto es debido a que a diferencia de los bits convencionales, los bits cuánticos pueden existir en un estado de superposición. Arquitectura cuántica Límites de los circuitos electrónicos Con el paso de los años, la densidad de los circuitos electrónicos ha aumentado de forma imparable sobre todo debido a la miniaturización del tamaño de los componentes. Esto ha llevado a los físicos a plantearse si existe un límite al proceso de miniaturización, viendo la solución a éste cuestión en la mecánica cuántica.
En los dispositivos actuales la corriente obedece a la física clásica. El gran torrente de electrones que la componen hace que se tienda a considerarla como un fluido homogéneo, más si tenemos en cuenta que las distancias entre corrientes son demasiado grandes para que suceda nada ajeno a la teoría newtoniana. Aun así, tras pasar un tamaño mínimo los electrones muestran su carácter individual y el comportamiento cuántico propio de las partículas atómicas de forma que, sin importar los aislantes que se utilicen, algunos electrones se moverán, gracias al "efecto túnel", entre las distintas líneas de corriente, dándose lugar a fugas que interfieren en el correcto funcionamiento del circuito. Esto hace que, de momento, el uso de la mecánica cuántica en los microcircuitos no sea muy productivo. Por otra parte se habla de algunos dispositivos atómicos y moleculares basados en nuevas tecnologías: memorias basadas en átomos excitados individualmente y medidos por laser, nanomáquinas que actuan como pequeñas calculadoras agregadas a moléculas… La reducción de tamaño de estos dispositivos ofrece una mayor densidad de información y velocidad, aunque no son aquellos en los que se basa la computación cuántica. El secreto de la computación cuántica radica en la lógica implementada en los dispositivos, no en su estructura física. Esta lógica no se basa en la física newtoniana clásica, sino que usa propiedades cuánticas. A fin de realizar una implementación cuántica correcta, se deben cumplir cinco preceptos: • Es necesario un sistema de qubits. • Estos deben ser direccionables individualmente, interactuando entre si para formar compuertas lógicas de propósito general. • Se debe poder inicializar las compuertas. • Se debe tener la posibilidad de extraer los resultados computacionales. • Es necesario un tiempo de coherencia duradero. La arquitectura de estos computadores es similar a la de las computadoress tradicionales, aunque incluyendo algunos elementos de la computación cuántica. Oskin et al propone una arquitectura formada por una ALU cuántica, memoria cuántica, y un planificador dinámico. Memoria cuántica En el tipo de computadoras que tratamos, la memoria es un elemento vital. A fin de que su funcionamiento no de lugar a fallos, Oskin et al idearon una unidad especial situada en cada bando de memoria que se
encarga de actualizarlo. Esta unidad actualiza periódicamente los bits individuales mediante algoritmos de detección y corrección de errores. Tele transportadora de código La teletransportadora de código de memoria a ALU ofrece nuevos usos a la teletransportación cuántica convencional, proporcionando un mecanismo general para ejecutar operaciones de forma simultánea a la vez que se transportan los datos cuánticos. Esto se usa para corrección de errores en los codificadores de código de origen y destino. En ese momento. El emisor y el receptor ejecutan qubits lógicos equivalentes en la operación de teletransportación en cada terminal del par "enredado" (entangled). Planificador dinámico Un procesador clásico dedicado, el elemento principal del planificador dinámico, fue propuesto por Oskin et al. Su funcionamiento comienza con la ejecución de un algoritmo de planificación dinámico, parte de operaciones cuánticas lógicas junto con construcciones clásicas de control de flujo y las traduce dinámicamente a operaciones individuales de qubits físicos. La definición de computadoras cuánticas con un mayor nivel de aceptación es la expuesta por Beth, acogida de forma positiva por la mayoría de la comunidad científica. Este la concibe como un sistema de circuitos cuánticos que actua en un espacio complejo 2n-dimensional de Hilbert, un espacio de estados. El circuito es una secuencia de conversiones unitarias seguido por una medición. Las conversiones, denominadas compuertas cuánticas, son controladas por un computador convencional. El espacio de estados de una computadora cuántica posee una estructura similar a aquella de los espacios de un vector Hermitian. Esto permite la superposición simultánea de estados básicos ortogonales (los cuales corresponden a estados clásicos "0" y "1") con posibilidad de interferencia constructiva y destructiva entre diferentes rutas de computación. Este principio permite el uso de los estados entrelazados. Algoritmos y aplicaciones Clasificación de problemas La definición que le podríamos asignar a la ciencia de la computación es: disciplina que se encarga de la búsqueda de algoritmos para la resolución de problemas, con independencia del hardware en el que se implementen estos algoritmos. Ya intentamos darle una definición a algoritmo en una de las clases de Lógica y Computabilidad, fundamentalmente lo podemos ver como una receta (una serie de pasos ordenados y concretos) con la
que cocinamos los datos de entrada con el fin de obtener una solución a nuestra pregunta. Para comprender las ventajas que proporciona la computación cuántica, debemos partir de si el problema que nos estamos planteando es posible hacerlo y cuánta dificultad conlleva, antes de pasar a cómo hacer las cosas. Primeramente realizaremos una clasificación basada en el proceso de resolución, de tal forma que obtendremos la solución en un número variable de pasos, dependiendo de la dificultad del problema. En cuanto al tiempo que le llevará no dependerá únicamente de la dificultad del problema, sino también de la información que proporcionan los datos de entrada. Veamos a continuación dos algoritmos expresados mediante una fórmula que calcula el número de pasos necesarios para la obtención de la solución mediante la información proporcionada por los datos iniciales. El primer algoritmo que comentaremos es el de multiplicación de dos números (algoritmo de tipo polinómico). Donde utilizando el paso base de multiplicación de números de una cifra, cuando tenemos una entrada de C cifras, el número de pasos necesarios para calcular la solución será de C2, T(C) = C2, como la fórmula es un polinomio decimos que este es un problema de tipo Polinómico o de tipo P. El segundo algoritmo es el de factorización de un número (algoritmo de tipo no polinómico). Cuya objetivo es la de encontrar todos y cada uno de los factores primos de un número (útil para la fabricación de claves y métodos criptográficos). Para ello, dado un número N dividiremos por todos los enteros entre 2 y la raíz del número (N1/2). Esta estrategia, que es la más directa pero no la mas rápida, implica realizar un número de pasos igual a T=N1/2. Expresándolo en función de la cantidad de cifras C del número N, y usando el hecho de que N≈10C, obtenemos por tanto, T(C)=10C/2. Donde podemos observar una diferencia fundamental respecto al algoritmo anterior, la función encargada de expresar el número de pasos necesarios es una exponencial, por ello decimos que este tipo de problemas se denomina no polinómico o exponencial (tipo NP o EXP). La propiedad que diferencia a los polinomios y las exponenciales la usaremos como criterio de clasificación, es decir, la velocidad con la que crecen, siempre es mucho más rápida en una exponencial que una potencia, sin importar lo grande que sea el exponente. Aunque puede que inicialmente los valores de una potencia sean mayores que los de una exponencial, llegará un punto en que esta tendencia cambiará.
Algoritmos cuánticos Los primeros problemas que se intentaron dar solución mediante la computación cuántica, aunque sencillos, permitieron comprobar las diferencias que existen entre los modelos de computación clásico y cuántico. Posteriormente aportaron técnicas algorítmicas que permitieron obtener algunos algoritmos importantes como el de Shor o el de Grover. Comentemos cada uno de ellos. Algoritmo de Shor La computación cuántica ofrece, además de su enorme potencial operativo, una nueva forma de cálculo basada en principios cuánticos. En el año 1994, Peter Shor ideó un nuevo algoritmo destinado a computadores cuánticos que permitía factorizar numeros grandes en factores primos en un tiempo mucho menos que los computadores tradicionales. El algoritmo de Shor puede ser estructurarlo en dos fases, la primera que explota el paralelismo masivo de la computación cuántica para calcular en una sola iteración todas las potencias modulares, y la segunda, realizando interferencias destructivas para hallar el periodo. Si desea ver una descripción mas formal de los pasos a seguir diríjase a Algoritmo de Shor. La Geogebra GeoGebra es un software matemático interactivo libre para la educación en colegios y universidades. Su creador Markus Hohenwarter, comenzó el proyecto en el año 2001 en la Universidad de Salzburgo y lo continúa en la Universidad de Atlantic, Florida. GeoGebra está escrito en Java y por tanto está disponible en múltiples plataformas. Es básicamente un procesador geométrico y un procesador algebraico, es decir, un compendio de matemática con software interactivo que reúne geometría, Álgebra y cálculo, por lo que puede ser usado también en física, proyecciones comerciales, estimaciones de decisión estratégica y otras disciplinas. Su categoría más cercana es software de geometría dinámica. Es una herramienta computacional de cálculo visual que facilita y apoya la enseñanza y análisis matemático a través de una interfaz gráfica, que
permite la representación de conceptos matemáticos tales como: puntos, líneas, circunferencias, funciones cuadráticas y en general cualquier función de grado n. Cuenta con un conjunto herramientas para el cálculo de ángulos, pendientes, longitudes y áreas a través de las cuales se facilita la demostración gráfica de teoremas y propiedades geométricas y trigonométricas de figuras planas regulares e irregulares. Funcionamiento
Ejecutado desde un sistema operativo linux
Ejecutado desde un sistema operativo Windows xp.
Dibujo de Polígonos: Para dibujar un polígono cualquiera, basta con seleccionar la herramienta correspondiente e ir estableciendo la posición en la Vista Gráfica, de cada uno de sus puntos vértices, volviendo a señalar el primero después del último. Si se prefiriera un polígono regular, hay que recurrir a la herramienta que aparece bajo la anterior, a la que se tiene acceso con un clic sobre el triangulito al pie a la derecha de la primera. Esta maniobra despliega, en cada caso, todas las herramientas disponibles bajo la que encabeza las de cada tipo. Con la herramienta para el trazado de polígonos regulares activada, basta con establecer en la Vista Gráfica la posición de los puntos vértices de uno de los lados y luego indicar el número de puntos vértices en la caja de diálogo que se despliega. Transferencia de Medidas: Trazamos un segmento AB de medida a, esta medida se puede transferirse a partir de cualquier punto de la Vista Gráfica, libre o de otra figura (recta, segmento, semirrecta, vector). Lo usual con útiles geométricos convencionales es emplear el compás: haciendo centro en el punto desde el que se quiere establecer el segmento para trazar la circunferencia de radio a y decidir cuál de sus puntos será el otro extremo del segmento que se procura -uno u otro de los puntos de intersección de la recta sobre la que se quiere dibujar, por
ejemplo - para trazar el segmento desde el centro a tal punto. Esta misma maniobra puede llevarse adelante con GeoGebra, ocultando, al finalizar, los elementos auxiliares como la circunferencia o dándole un estilo adecuado, punteado, y/o de color más pálido-. De hecho, GeoGebra cuenta con herramientas ajustadas a la trasferencia de la medida de un segmento en estos términos: Compás - si se cuenta con el segmento cuya longitud se desea transferir y se decide luego el centro - y Circunferencia dados su Centro y Radio - si se desea dejar establecido el punto centro y se conoce el valor de la medida o se puede indicar el nombre del segmento cuya longitud se desea transferir. Posibles implicaciones en la enseñanza • Herramientas como Geogebra permiten cuestionar: o El actual contenido curricular o Los actuales métodos pedagógicos o Las actuales estrategias e evaluación • Geogebra, al igual que otras herramientas de cálculo visual, ayudan en el salón de clases en la siguiente forma: o Desarrollando con rapidez, exactitud y flexibilidad cálculos aritméticos, simbólicos y visuales o Relevando al profesor y al estudiante de tareas repetitivas/ tediosas (como ejemplos: la información proporcionada para la graficación de una ecuación cuadrática, solución de matrices, raíces de una función polinomial o graficar una función cualquiera). Con este tiempo liberado es posible profundizar en un concepto, analizar un mayor número de ejemplos o de casos problemáticos o Sirviendo de "amplificadores"/ "reforzadores" de conceptos matemáticos o Proporcionando múltiples representaciones de conceptos matemáticos: tablas, trazado de curvas, acercamientos/ ampliaciones en puntos críticos de la gráfica (esto permite procesar información de múltiples maneras significativas) Catalizando el de pensamiento crítico. El tiempo disponible que dejan estas herramientas permiten al profesor/ estudiante realizar preguntas del tipo ¿qué pasa si? Esto permite armar/ crear conjeturas sobre
situaciones matemáticas o identificar patrones en la solución de problemas Integrando/ reuniendo dinámicamente: o Matemática con matemática: álgebra con geometría, trigonometría con cálculo, trigonometría con Geometría, etc. o Matemática con física, química o Matemática con el mundo real
Amia lo de la geogebra lo cambias un poco por q también ese fue mi trabajo te lo estoy mandando lo que hice. Solo de geogebra. Bibliografías http://campusvirtual.unex.es/cala/epistemowikia/index.php?title=Computaci%C3%B3n_cu%C3 %A1ntica
http://es.wikipedia.org/wiki/GeoGebra http://espanol.free-ebooks.net/ebook/Introducci-n-a-la-matem-ticadiscreta-ingenier-a-inform-tica http://www.slideshare.net/luisacosta5toc/geogebra-presentacion