Sari la conținutul principal
Acest proiect este în versiune beta. Ai găsit o eroare? Deschide un issue pe GitHub. Ai o întrebare sau o idee? Întreabă în Discussions — ne-ar plăcea să aflăm părerea ta!
Cum este calitatea traducerii pe această pagină?

Algoritmi variaționali

Acest curs acoperă specificul algoritmilor variaționali și al algoritmilor hibrizi cuantic-clasici pentru dispozitivele pe termen scurt (near-term), bazați pe teorema variațională a mecanicii cuantice. Acești algoritmi pot valorifica utilitatea oferită de computerele cuantice actuale, non-tolerante la erori, făcându-i candidați ideali pentru a obține avantaj cuantic.

Pe parcursul acestui curs, vom explora:

  • Fiecare pas din fluxul de lucru al designului algoritmului variațional

  • Compromisurile asociate cu fiecare pas

  • Cum să folosești primitivele IBM Quantum pentru a optimiza viteza și acuratețea

Deși acest curs este menit să fie un punct de plecare pentru cercetători și dezvoltatori care doresc să exploreze utilitatea computerelor cuantice, nu ezita să explorezi cunoștințele teoretice și fundamentale despre calculul cuantic în general în Bazele informației și calculului cuantic (disponibil și ca o serie de videoclipuri YouTube).

Flux hibrid simplificat​

Flow of a variational algorithm showing steps: initialize problem, prepare ansatz, evaluate cost function, optimize parameters. Algoritmii variaționali includ mai multe componente modulare care pot fi combinate și optimizate pe baza progreselor algoritmice, software și hardware. Aceasta include o funcție de cost care descrie o problemă specifică cu un set de parametri, un ansatz pentru a exprima spațiul de căutare cu acești parametri și un optimizer pentru a explora iterativ spațiul de căutare. La fiecare iterație, optimizatorul evaluează funcția de cost cu parametrii curenți și selectează parametrii pentru iterația următoare până când converge spre o soluție optimă. Natura hibridă a acestei familii de algoritmi provine din faptul că funcțiile de cost sunt evaluate folosind resurse cuantice și optimizate prin resurse clasice.

  1. Inițializarea problemei: Algoritmii variaționali încep prin inițializarea computerului cuantic într-o stare implicită ∣0⟩|0\rangle, apoi transformând-o într-o stare dorită (neparametrizată) ∣ρ⟩|\rho\rangle, pe care o vom numi stare de referință.

    Această transformare este reprezentată de aplicarea unui operator de referință unitar URU_R asupra stării implicite, astfel încât UR∣0⟩=∣ρ⟩U_R|0\rangle = |\rho\rangle.

  2. Pregătirea ansatz-ului: Pentru a începe optimizarea iterativă de la starea implicită ∣0⟩|0\rangle la starea țintă ∣ψ(θ⃗)⟩|\psi(\vec\theta)\rangle, trebuie să definim o formă variațională UV(θ⃗)U_V(\vec\theta) pentru a reprezenta o colecție de stări parametrizate pe care algoritmul nostru variațional să le exploreze.

    Ne referim la orice combinație particulară de stare de referință și formă variațională ca ansatz, astfel încât: UA(θ⃗):=UV(θ⃗)URU_A(\vec\theta) := U_V(\vec\theta) U_R. Ansatze vor lua în cele din urmă forma unor circuite cuantice parametrizate capabile să ducă starea implicită ∣0⟩|0\rangle la starea țintă ∣ψ(θ⃗)⟩|\psi(\vec\theta)\rangle.

    În total, vom avea:

    ∣0⟩→URUR∣0⟩=∣ρ⟩→UV(θ⃗)UA(θ⃗)∣0⟩=UV(θ⃗)UR∣0⟩=UV(θ⃗)∣ρ⟩=∣ψ(θ⃗)⟩\begin{aligned} |0\rangle \xrightarrow{U_R} U_R|0\rangle & = |\rho\rangle \xrightarrow{U_V(\vec{\theta})} U_A(\vec{\theta})|0\rangle \\[1mm] & = U_V(\vec{\theta})U_R|0\rangle \\[1mm] & = U_V(\vec{\theta})|\rho\rangle \\[1mm] & = |\psi(\vec{\theta})\rangle \\[1mm] \end{aligned}
  3. Evaluarea funcției de cost: Putem codifica problema noastră într-o funcție de cost C(θ⃗)C(\vec\theta) ca o combinație liniară de operatori Pauli, rulată pe un sistem cuantic. Deși aceasta poate fi informație despre un sistem fizic, cum ar fi energia sau spinul, putem codifica și probleme non-fizice. Putem folosi primitivele IBM Quantum pentru a aborda zgomotul cu supresie și mitigare a erorilor în timp ce evaluăm funcția noastră de cost.

  4. Optimizarea parametrilor: Evaluările sunt transmise unui computer clasic, unde un optimizator clasic le analizează și alege următorul set de valori pentru parametrii variaționali. Dacă avem o soluție optimă preexistentă, o putem seta ca punct inițial θ⃗0\vec\theta_0 pentru a porni optimizarea noastră. Utilizarea acestei stări inițiale ∣ψ(θ⃗0)⟩|\psi(\vec\theta_0)\rangle ar putea ajuta optimizatorul nostru să găsească o soluție validă mai rapid.

  5. Ajustarea parametrilor ansatz-ului cu rezultatele și reluarea procesului: Întregul proces este repetat până când criteriile de finalizare ale optimizatorului clasic sunt îndeplinite și se returnează un set optim de valori ale parametrilor θ⃗∗\vec\theta^*. Starea soluției propuse pentru problema noastră va fi atunci ∣ψ(θ⃗∗)⟩=UA(θ⃗∗)∣0⟩|\psi(\vec\theta^*)\rangle = U_A(\vec\theta^*)|0\rangle.

Teorema variațională​

Un obiectiv comun al algoritmilor variaționali este de a găsi starea cuantică cu cea mai mică sau cea mai mare valoare proprie a unei anumite observabile. O perspectivă cheie pe care o vom folosi este teorema variațională a mecanicii cuantice. Înainte de a intra în enunțul ei complet, hai să explorăm câteva intuiții matematice din spatele acesteia.

Intuiție matematică pentru energie și stări fundamentale​

În mecanica cuantică, energia apare sub forma unui observabil cuantic denumit de obicei Hamiltonian, pe care îl vom nota cu H^\hat{\mathcal{H}}. Să considerăm descompunerea sa spectrală:

H^=∑k=0N−1λk∣ϕk⟩⟨ϕk∣\hat{\mathcal{H}} = \sum_{k=0}^{N-1} \lambda_k |\phi_k\rangle \langle \phi_k|

unde NN este dimensionalitatea spațiului stărilor, λk\lambda_{k} este a kk-a valoare proprie sau, fizic, al kk-lea nivel de energie, iar ∣ϕk⟩|\phi_k\rangle este starea proprie corespunzătoare: H^∣ϕk⟩=λk∣ϕk⟩\hat{\mathcal{H}}|\phi_k\rangle = \lambda_k |\phi_k\rangle, energia așteptată a unui sistem în starea (normalizată) ∣ψ⟩|\psi\rangle va fi:

⟨ψ∣H^∣ψ⟩=⟨ψ∣(∑k=0N−1λk∣ϕk⟩⟨ϕk∣)∣ψ⟩=∑k=0N−1λk⟨ψ∣ϕk⟩⟨ϕk∣ψ⟩=∑k=0N−1λk∣⟨ψ∣ϕk⟩∣2\begin{aligned} \langle \psi | \hat{\mathcal{H}} | \psi \rangle & = \langle \psi |\bigg(\sum_{k=0}^{N-1} \lambda_k |\phi_k\rangle \langle \phi_k|\bigg) | \psi \rangle \\[1mm] & = \sum_{k=0}^{N-1} \lambda_k \langle \psi |\phi_k\rangle \langle \phi_k| \psi \rangle \\[1mm] & = \sum_{k=0}^{N-1} \lambda_k |\langle \psi |\phi_k\rangle|^2 \\[1mm] \end{aligned}

Dacă ținem cont că λ0≤λk,∀k\lambda_0\leq \lambda_k, \forall k, avem:

⟨ψ∣H^∣ψ⟩=∑k=0N−1λk∣⟨ψ∣ϕk⟩∣2≥∑k=0N−1λ0∣⟨ψ∣ϕk⟩∣2=λ0∑k=0N−1∣⟨ψ∣ϕk⟩∣2=λ0\begin{aligned} \langle \psi | \hat{\mathcal{H}} | \psi \rangle & = \sum_{k=0}^{N-1} \lambda_k |\langle \psi |\phi_k\rangle|^2 \\[1mm] & \geq \sum_{k=0}^{N-1} \lambda_0 |\langle \psi |\phi_k\rangle|^2 \\[1mm] & = \lambda_0 \sum_{k=0}^{N-1} |\langle \psi |\phi_k\rangle|^2 \\[1mm] & = \lambda_0 \\[1mm] \end{aligned}

Deoarece {∣ϕk⟩}k=0N−1\{|\phi_k\rangle \}_{k=0}^{N-1} este o bază ortonormată, probabilitatea de a măsura ∣ϕk⟩|\phi_{k} \rangle este pk=∣⟨ψ∣ϕk⟩∣2p_k = |\langle \psi |\phi_{k} \rangle |^2, iar suma tuturor probabilităților este astfel încât ∑k=0N−1∣⟨ψ∣ϕk⟩∣2=∑k=0N−1pk=1\sum_{k=0}^{N-1} |\langle \psi |\phi_k\rangle|^2 = \sum_{k=0}^{N-1}p_k = 1. Pe scurt, energia așteptată a oricărui sistem este mai mare decât energia cea mai mică sau energia stării fundamentale:

⟨ψ∣H^∣ψ⟩≥λ0.\langle \psi | \hat{\mathcal{H}} | \psi \rangle \geq \lambda_0.

Argumentul de mai sus se aplică oricărei stări cuantice (normalizate) valide ∣ψ⟩|\psi\rangle, deci este perfect posibil să considerăm stări parametrizate ∣ψ(θ⃗)⟩|\psi(\vec\theta)\rangle care depind de un vector de parametri θ⃗\vec\theta. Aici intervine partea „variațională". Dacă considerăm o funcție de cost dată de C(θ⃗):=⟨ψ(θ⃗)∣H^∣ψ(θ⃗)⟩C(\vec\theta) := \langle \psi(\vec\theta)|\hat{\mathcal{H}}|\psi(\vec\theta)\rangle și dorim să o minimizăm, minimul va satisface întotdeauna:

min⁡θ⃗C(θ⃗)=min⁡θ⃗⟨ψ(θ⃗)∣H^∣ψ(θ⃗)⟩≥λ0.\min_{\vec\theta} C(\vec\theta) = \min_{\vec\theta} \langle \psi(\vec\theta)|\hat{\mathcal{H}}|\psi(\vec\theta)\rangle \geq \lambda_0.

Valoarea minimă a lui C(θ⃗)C(\vec\theta) va fi cea mai apropiată aproximare a lui λ0\lambda_0 folosind stările parametrizate ∣ψ(θ⃗)⟩|\psi(\vec\theta)\rangle, iar egalitatea va fi atinsă doar dacă există un vector de parametri θ⃗∗\vec\theta^* astfel încât ∣ψ(θ⃗∗)⟩=∣ϕ0⟩|\psi(\vec\theta^*)\rangle = |\phi_0\rangle.

Teorema variațională a mecanicii cuantice​

Dacă starea (normalizată) ∣ψ⟩|\psi\rangle a unui sistem cuantic depinde de un vector de parametri θ⃗\vec\theta, atunci aproximarea optimă a stării fundamentale (adică starea proprie ∣ϕ0⟩|\phi_0\rangle cu valoarea proprie minimă λ0\lambda_0) este cea care minimizează valoarea medie a Hamiltonianului H^\hat{\mathcal{H}}:

⟨H^⟩(θ⃗):=⟨ψ(θ⃗)∣H^∣ψ(θ⃗)⟩≥λ0\langle \hat{\mathcal{H}} \rangle(\vec\theta) := \langle \psi(\vec\theta) |\hat{\mathcal{H}}| \psi(\vec\theta) \rangle \geq \lambda_0

Motivul pentru care teorema variațională este enunțată în termeni de minime ale energiei este că include o serie de ipoteze matematice:

  • Din motive fizice, trebuie să existe o limită inferioară finită a energiei E≥λ0>−∞E \geq \lambda_0 > -\infty, chiar și pentru N→∞N\rightarrow\infty.

  • Limitele superioare nu există în general.

Cu toate acestea, din punct de vedere matematic, nu există nimic special în legătură cu Hamiltonianul H^\hat{\mathcal{H}} dincolo de aceste ipoteze, astfel că teorema poate fi generalizată la alți observabili cuantici și stările lor proprii, cu condiția să urmeze aceleași constrângeri. De asemenea, observă că dacă există limite superioare finite, aceleași argumente matematice s-ar putea face pentru maximizarea valorilor proprii prin înlocuirea limitelor inferioare cu limite superioare.

Rezumat​

În această lecție ai obținut o imagine de ansamblu asupra algoritmilor variaționali. În lecțiile următoare, vom explora fiecare pas mai în detaliu, împreună cu compromisurile asociate.