Optimización de pulsos
La optimización de pulsos es el esculpido numérico de formas de onda de control mediante descenso de gradiente sobre la infidelidad de puerta C = 1 − F — desde los gradientes analíticos de GRAPE (2005) hasta los modernos optimizadores diferenciables de sistema abierto, donde el gradiente fluye a través del propio ruido.
Qué significa
Una vez que una puerta se entiende como una envolvente de control ε(t), encontrar la mejor puerta se convierte en un problema de optimización: minimizar el coste C = 1 − F, donde F es la fidelidad entre la evolución realizada y la unitaria objetivo.El descenso de gradiente actualiza los parámetros del pulso θ en contra del gradiente: θ_{k+1} = θ_k − η∇_θC(θ_k).GRAPE (Khaneja et al., 2005) introdujo gradientes analíticos para este problema; la diferenciación automática lo generaliza — construir toda la evolución temporal (por ejemplo, un propagador de Lindblad dividido por Trotter) con operaciones de PyTorch significa que una sola pasada hacia atrás entrega gradientes exactos de TODOS los parámetros a la vez, mientras que las diferencias finitas necesitan una simulación por parámetro.Esto importa porque los pulsos modernos tienen de cientos a miles de parámetros.La frontera es la optimización de sistema abierto: en lugar de optimizar en una simulación de Schrödinger sin ruido y descontar la puntuación después (multiplicando por e^{−T/T1}), los optimizadores diferenciables como GradPulse ponen la relajación T1, el desfase puro (Tφ) y la fuga dentro de la pasada hacia adelante mediante la ecuación maestra de Lindblad — el optimizador camina sobre el marcador real y ruidoso.El coste es alto — una matriz densidad es d×d, así que un modelo de acoplador explícito de 27 dimensiones tiene 729 elementos — y reescribir el propagador exige validación cruzada con solucionadores independientes (exponencial de matriz exacta, ODE adaptativa de QuTiP) hasta un acuerdo de ~10⁻¹⁴, impuesto en CI.Analogía cotidiana
Errores comunes
- La optimización sin gradiente NO escala — con cientos a miles de parámetros de pulso, métodos como Nelder-Mead se ralentizan drásticamente al crecer la dimensión, mientras que la retropropagación entrega todos los gradientes en un solo rebobinado. La diferenciabilidad es un requisito de supervivencia a gran escala, no una preferencia.
- Que dos simuladores coincidan NO prueba nada si comparten código o la misma familia de aproximaciones — una discretización temporal tipo Trotter compartida produce errores de modo común invisibles en su comparación. Solo la reimplementación independiente (exponencial de matriz exacta vs división de Trotter vs ODE adaptativa) convierte el acuerdo en evidencia.
Puntos clave
- GRAPE (2005) introdujo los gradientes analíticos para el diseño de pulsos; el autograd los generaliza a cualquier simulación diferenciable.
- La retropropagación entrega los gradientes de TODOS los parámetros del pulso en una sola pasada hacia atrás — las diferencias finitas necesitarían una simulación por parámetro.
- Coste del sistema abierto: una matriz densidad es d×d, así que un modelo de acoplador explícito de 27 dimensiones tiene 729 elementos — el modelado honesto del ruido es caro.
- Los optimizadores diferenciables de sistema abierto ponen T1, Tφ y la fuga dentro de la pasada hacia adelante en lugar del descuento posterior e^{−T/T1} — el gradiente fluye a través del ruido.
- La validación cruzada de triple solucionador (Trotter de PyTorch vs exponencial de matriz exacta de NumPy vs ODE adaptativa de QuTiP) hasta ~10⁻¹⁴ de acuerdo atrapa errores de transcripción; una puerta de CI hace fallar la compilación si dos solucionadores divergen.
Comprueba tu comprensión
¿Por qué la diferenciabilidad es un requisito de supervivencia (y no solo una preferencia) para la optimización de pulsos a gran escala?
- A.Porque el hardware analógico solo acepta formas de onda diferenciables
- B.Porque con cientos a miles de parámetros, solo la única pasada hacia atrás de la retropropagación hace viable el cálculo del gradiente
- C.Porque los métodos sin gradiente no pueden representar envolventes gaussianas
- D.Porque el código diferenciable corre en GPUs y las GPUs son obligatorias
Ver la respuesta
Respuesta: B. Porque con cientos a miles de parámetros, solo la única pasada hacia atrás de la retropropagación hace viable el cálculo del gradiente
Por qué: Las diferencias finitas necesitan una simulación por parámetro y la búsqueda sin gradiente se ralentiza drásticamente con la dimensión. La retropropagación da gradientes exactos de todos los parámetros en un solo rebobinado — el único camino realista a la escala de cientos a miles de segmentos de pulso.
¿Qué significa exactamente que 'el gradiente fluye a través del ruido' en un optimizador diferenciable de sistema abierto?
- A.El optimizador añade ruido aleatorio al gradiente para escapar de mínimos locales
- B.El gradiente se promedia sobre muchas ejecuciones ruidosas del hardware
- C.El camino de la pérdida incluye los términos de ruido de Lindblad (T1, Tφ, fuga) dentro del grafo de autograd, de modo que ∂C/∂θ refleja el efecto del ruido
- D.El ruido se cancela en el gradiente porque es aleatorio
Ver la respuesta
Respuesta: C. El camino de la pérdida incluye los términos de ruido de Lindblad (T1, Tφ, fuga) dentro del grafo de autograd, de modo que ∂C/∂θ refleja el efecto del ruido
Por qué: Toda la evolución de Lindblad — incluidos los términos de relajación, desfase y fuga — está construida con operaciones diferenciables, así que el gradiente calculado ya tiene en cuenta cómo cada parámetro cambia la fidelidad en el mundo ruidoso, a diferencia del descuento posterior e^{−T/T1}.
Se apoya en
GRAPE gradient core is established (Khaneja 2005); the differentiable open-system tooling landscape incl. GradPulse case study (PureStateLabs/gradpulse, existence+claims verified on GitHub 2026-07-03) is current-state, hence timebound.
Apréndelo con la práctica
Este concepto forma parte de un plan de 46 niveles, con un simulador interactivo y Lumen, un tutor cuyas respuestas se verifican antes de mostrarse. Los niveles 1–5 son gratuitos.
