Tendencias Computación distribuida Paralelismo masivo Computación cuántica Biocomputación Sistemas hardware reconfigurables Nuevas técnicas de programación Algoritmos autoevolutivos Algoritmos genéticos
Computación cuántica I Usamos qubits La unidad básica de información no está en uno de dos estados (0, 1) si no en una combinación lineal de ellos a|0 > +b|1 > (Estado de un qubit) Dimensionalidad + superposición = Paralelismo cuántico Dimensionalidad: 2n (n: número de qubits)
Computación cuántica II Un grupo de varios qubits NO puede describirse atendiendo sólo a los qubits individuales El todo es más que la suma de las partes Estados entrelazados (entangled) Ejemplo: Describir |00 > +|11 > en términos de cada uno de los qubits de forma separada. (a0|0 > +a1|1 >) (b0|0 > +b1|1 > ) = |00 > +|11>
Curiosidades Teleportación de qubits Creación de puertas lógicas Transmisión SEGURA de datos Factorización de números Búsqueda de datos
Distribución de claves Idea básica: Si algo se mide, queda afectado El cliente envía una secuencia de qubits con una base aleatoria El banco lo recibe y lo mide usando una base cualesquiera (elegida aleatoriamente) El cliente envía la base al banco, y éste usa los que coinciden y descarta los demás. La tasa de error es del 50%. Si el jeiker mira lo que se transmite, lo hace el 50% de las veces mal => Modifica los qubits. Se detecta mediante paridad.
MAC es fácil 😛 P QP Una máquina de Turing sufre una penalización exponencial al emular una máquina de Turing cuántica Unsorted search: Clásicamente O(N) Cuánticamente O(N1/2) Nuevas clasificaciones de complejidad
Factorización de números Algoritmo diseñado por Peter W. Shor Resuelve en tiempo polinómico un problema NP completo Clásicamente: exp(c(log n)1/3 (log log n)2/3) Cuánticamente O((log n)2 (log log n) (log log log n))
Bibliografía An introduction to Quantum Computing for Non-Physicists (quant-ph/9809016) Shor: quant-ph/9508027 http://www.research.att.com/~shor/papers/index.html Encriptación cuántica: http://www.qubit.org/intros/cryptana.html
http://www.sees.bangor.ac.uk/~schmuel/comp/comp.html
Evolución artificial No podemos entenderlo todo, así que dejemos a la naturaleza hacer el trabajo duro. Podemos explotar la física del mundo real, cosa que no podemos realizar en simulaciones.
Evolución artificial II Los algoritmos genéticos se basan en la capacidad de poder sobrevivir en un sistema complejo, interactuando con sus vecinos. A través de las generaciones, los algoritmos mejor adaptados son los que sobreviven, llegando incluso a crear relaciones tan complejas como las reales.
Evolución Artificial III Los algoritmos genéticos se usan en sistemas muy cambiantes, ya que se adaptan mejor a las exigencias. También podemos asociarlos con redes neuronales, creando sistemas de vida artificial pensantes.
Hardware reconfigurable FPGA Sistemas de propósito general cuya arquitectura puede ser modificada mediante programación. Se basan en bloques lógicos predefinidos, que pueden ser interconectados de infinitas maneras.
Página siguiente |