Professional Documents
Culture Documents
Marcos Barreto
Add your company slogan
Algoritmo Cuántico de Búsqueda Paralelo
Agenda
1 Complejidad y el Problema 3 SAT
2 Computación Cuántica
3 Algoritmo de Shenvi
4 Algoritmo de Shenvi con vecindad
5 Algoritmo de Shenvi paralelo híbrido
6 Resultados y Conclusiones
Algoritmo Cuántico de Búsqueda Paralelo
Complejidad Algorítmica
● Clases de complejidad
● Se caracterizan a los problemas por el tiempo necesario para resolverlos
● Clase P
● Clase de complejidad de los problemas resolubles en tiempo polinomial
● Clase NP
● Clase de complejidad de los problemas no resolubles en tiempo polinomial,
pero para los cuales la verificación de una solución puede realizarse en
tiempo polinomial.
● Clase NPCompleto
● Subconjunto de los problemas NP tal que todo problema NP se puede
reducir a uno NPCompleto en orden polinomial.
● ¿ P ≠ NP ?
● Es la principal conjetura de la informática teórica
Algoritmo Cuántico de Búsqueda Paralelo
El Problema 3 SAT
● K SAT
● Dado un conjunto {x1, ..., Xn} de variables que pueden tomar el valor
booleano 0 o 1 y un conjunto de cláusulas {C1, ..., Cm} donde cada
cláusula es la diyunción de un conjunto de K literales o negación de
literales
● Para K=3, la siguiente cláusula sería válida
● C1 = X1 ν ¬X2 ν X4
● El problema consiste en encontrar un conjunto de valores para las
variables xi tal que haga verdadera simultaneámente a todas las
cláusulas.
● Siendo la fórmula F = C1 AND … AND Cm, el problema de K SAT
consiste en encontrar una distribución de variables tal que F
evalue verdadero.
Algoritmo Cuántico de Búsqueda Paralelo
El Problema 3 SAT
● Perteneciente a la clase de complejidad NPCompleto
● Interesante por ser NPCompleto ya que de resolverlo eficientemente
implícitamente se estarían resolviendo todos los problemas NP
eficientemente.
●
● Mejor algoritmo que lo resuelve
● Algoritmo de Schöning
● O(1.33^N)
● Realiza un sorteo aleatoreo y de no ser solución realiza una búsqueda
local. En caso de no encontrar solución salta a otro lugar en el espacio
de soluciones.
Algoritmo Cuántico de Búsqueda Paralelo
Computación Cuántica
● Bit : Unidad básica clásica
● Posibles valores: 0 o 1
● Qubit : Unidad básica cuántica
● Sea {|0>, |1>} una base ortonormal, un ket |ψ> queda definido por |ψ>= α|0> + β|
1>, tal que α²+β²=1.
● α y β son amplitudes del estado cuántico y su cuadrado es la probabilidad que al
realizar una “medida” sobre el estado cuántico, obtener el correspondiente estado
de la base.
● |ψ> puede ser a una superposición de estados clásicos!
● Contra intuitivo
● Los humanos tenemos percepción macroscópica del mundo
● Los efectos cuánticos ocurren a nivel microscópico
Algoritmo Cuántico de Búsqueda Paralelo
Computación Cuántica
Motivación
● Un sistema de N qubits se representa en espacio lineal de
dimensión 2ⁿ.
● Clásicamente esta operación se debe realizar sobre los 2ⁿ
estados
● Cuánticamente esta operación se realiza simultáneamente
sobre las 2ⁿ dimensiones.
● Motivación
● Utilizar el paralelismo instrínseco proporcionado por la
mecánica cuántica para crear un algoritmo cuántico mas
eficiente que el mejor algoritmo clásico para resolver el 3SAT.
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
● Caminata Clásica
● Proceso de Markov en donde cada desición es estocástica
● En un espacio de dimensión 2, el caminante tira una moneda y se mueve a la
izquierda o derecha
● Restricciones de búsqueda espacial: en cada paso o se tira la moneda o se
mueve a una posición vecina.
● Caminata Cuántica (Quantum Walk)
● Proceso reversible
● Se sustituye la moneda por un estado cuántico que determina las
probabilidades de moverse en diferentes direcciones.
● En espacio de dimensión 2
● En cada paso se mueve “simultáneamente” hacia la izquierda y derecha ya
que la moneda es una superposición de cara y número
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
● Algoritmo de Shenvi
● Busca un elemento en una base de datos no ordenada de dimensión N=2ⁿ,
con restricciones de búsqueda espacial en el plano
● Cuadráticamente mas rápido que su contraparte clásica
● En O(√N) pasos se obtiene el estado buscado con probabilidad 1/2.
● La técnica utilizada se llama “amplificación de amplitud” y amplifica la
probabilidad de que al medir el estado cuántico el mismo “colapse” al
estado marcado
● Algoritmo:
● Preparar una superposición uniforme en posición y moneda
● Aplicar un quantum walk U' modificado (π/2)√N veces
● Medir el estado del quantum walk
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Paralelización del algoritmo
No se cuenta con computadoras cuánticas con lo cual se
Problema necesita simular el algoritmo cuántico en una computadora
clásica.
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Paralelización del algoritmo
No se cuenta con computadoras cuánticas con lo
No se cuenta con computadoras cuánticas con lo cual se
Problema
Problema necesita simular el algoritmo cuántico en una computadora
cual se necesita simular el algoritmo cuántico en
clásica.
una computadora clásica.
La mecánica cuántica tiene un paralelismo intrínsico que
Costo de clásicamente no existe y debe ejecutarse secuencialmente,
con lo cual una simulación siempre tiene un costo
simulación exponencial
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Paralelización del algoritmo
No se cuenta con computadoras cuánticas con lo cual se
Problema necesita simular el algoritmo cuántico en una computadora
clásica.
La mecánica cuántica tiene un paralelismo intrínsico que
Costo de clásicamente no existe y debe ejecutarse secuencialmente,
con lo cual una simulación siempre tiene un costo
simulación exponencial
Utilizar técnicas de programación paralela para
Solución optimizar la ejecución de un algoritmo cuántico.
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Resultado Experimental
● El algoritmo de Shenvi “amplifica la amplitud” del estado marcado,
con alta probabilidad se obtiene el estado buscado
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Resultado Experimental de tiempo de ejecución
● Resultado comparativo de aplicar paralelización con memoria no
distribuida en la sección de codigo de la simulación cuántica
15 78 23 3.39
16 316 76 4.15
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Resultado Experimental de tiempo de ejecución
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Con vecindad
● Mejor algoritmo Clásico
● El algoritmo de Schöning realiza un sorteo de un elemento al azar
y luego una búsqueda local de 3n pasos, de no encontrar
solución salta a otro lugar en el espacio de soluciones.
● Idea:
● Aplicar Shenvi a localmente a una “vecindad”
● Definir la “vecindad” como un subconjunto de cubits y aplicar
Shenvi a los mismos, realizando una búsqueda por el elemento
buscado.
● Aplicar la idea de Schöning de búsqueda local.
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Con vecindad
● Algoritmo:
Sortear un elemento x al azar
● Sortear una vecindad al azar desde q_init a q_fin
● Verificar que dicha solución parcial pueda generar soluciones factibles *
● Aplicar Shenvi desde q_init a q_fin
● El algoritmo va a evaluar si un estado es “marcado” globalmente.
● Relizar una medida del estado cuántico y con probabilidad ½ se obtiene el estado
marcado si el mismo pertenece a dicha “vecindad”
● Si el estado resultado no es el buscado, apliar nuevamente el algoritmo.
Algoritmo Cuántico de Búsqueda Paralelo
Algoritmo de Shenvi
Con vecindad Paralelo con memoria distribuida
● IDEA:
● Paralelizar el algoritmo cuántico para obtener mayores beneficios de
ejecutar en un cluster de computadores.
● Comunicación: Master Slave
● El master envia datos a los esclavos para que ejecuten en algoritmo
“Shenvi con vecindad” para diferentes vecindades
● Si un esclavo encuentra una solución inmediatamente se lo comunica al
Master, éste finaliza la ejecución en los esclavos y el algoritmo finaliza.
● Si el Master encuentra solución, éste finaliza a todos los esclavos y el
algoritmo finaliza.
Slave3
Master
Slave1
Slave2
Algoritmo Cuántico de Búsqueda Paralelo
Resultados y Conclusiones
● Algoritmo de Shenvi con vecindad es más eficiente que la aplicación del
algoritmo de Shenvi al problema
● El costo computacional de la simulación es menor pues se aplica la
simulación a una menor cantidad de cubits
● Cuanto menor es la vecindad, menor el tiempo de ejecución pues el costo
computacional mas grande es de la simulación cuántica.
● Dificil desagregar el costo del algoritmo del costo de la simulación
cuántica.
Algoritmo Cuántico de Búsqueda Paralelo
Resultados y Conclusiones
●
El algoritmo paralelo híbrido fue probado con 2 y 3 máquinas, cada uno de
ellos ejecutando con 8 nucleos
●
Para vecindades muy pequeñas, el algoritmo paralelo pasa mas tiempo
enviando datos y recibiendo que realizando cuentas debido a que el costo
de simular el algoritmo con pocos cubits es pequeño.
●
A medida que se incrementa la vecindad (mayor a 10 cubits) el speedup
crece
●
Para 3 núcleos llego a obtener un speedup mayor a 5 para instancias de
prueba de 23 variables con vecindades de 16
●
Para instancias de prueba chicas, (menor a 18 variables) el speedup no
llega a 2
●
Para vecindades menores a 10, el speedup es menor a 0.
Algoritmo Cuántico de Búsqueda Paralelo
Add your company slogan
Algoritmo Cuántico de Búsqueda Paralelo