Přeskočit na hlavní obsah

Přehled diagonalizace kvantových systémů na základě vzorků (SQD)

Diagonalizace kvantových systémů na základě vzorků (SQD, z anglického Sample-based quantum diagonalization) je klasická technika následného zpracování, která pracuje se vzorky získanými z kvantového Circuit po jeho spuštění na QPU. Je užitečná pro hledání vlastních hodnot a vlastních vektorů kvantových operátorů, jako je Hamiltonián kvantového systému, a kombinuje kvantové a distribuované klasické výpočty. Tato technika následného zpracování může být obzvláště užitečná pro uživatele simulující chemické nebo jiné kvantové systémy.

Klasické výpočty se využívají ke zpracování vzorků získaných z kvantového procesoru, k projekci cílového Hamiltoniánu a jeho diagonalizaci v podprostoru jimi rozepnutém. To umožňuje SQD být odolnou vůči vzorkům poškozeným kvantovým šumem a zvládat rozsáhlé Hamiltoniány, jako jsou chemické systémy s miliony interagujících členů, které jsou mimo dosah metod přesné diagonalizace.

Nástroj SQD může zpracovávat Hamiltoniány vyjádřené jako lineární kombinace Pauliho operátorů nebo fermionových operátorů druhé kvantizace. Vstupní vzorky jsou získány z kvantových Circuit definovaných uživatelem, o nichž se předpokládá, že jsou dobrou reprezentací vlastních stavů (například základního stavu) cílového operátoru. Rychlost konvergence SQD v závislosti na počtu vzorků se zlepšuje s řídkostí cílového vlastního stavu.

Instalace balíčku SQD

Balíček SQD lze nainstalovat dvěma způsoby: z PyPI nebo sestavením ze zdrojového kódu. Doporučuje se instalovat tyto balíčky ve virtuálním prostředí, aby byly závislosti balíčků odděleny.

Instalace z PyPI

Nejjednodušší způsob, jak nainstalovat balíček qiskit-addon-sqd, je přes PyPI.

pip install qiskit-addon-sqd

Sestavení ze zdrojového kódu

Klikni sem a zjisti, jak nainstalovat tento balíček ručně

Pokud chceš do tohoto balíčku přispívat nebo ho chceš nainstalovat ručně, nejprve naklonuj repozitář:

git clone git@github.com:Qiskit/qiskit-addon-sqd.git

a nainstaluj balíček přes pip. Repozitář také obsahuje ukázkové notebooky, které lze spustit. Pokud plánuješ vývoj v repozitáři, můžeš nainstalovat závislosti dev.

Upravte možnosti podle svých potřeb.

pip install tox notebook -e '.[notebook-dependencies, dev]'

Teoretické pozadí

Postup SQD využívající samo-konzistentní obnovu konfigurací je podrobně vysvětlen v [1]. Tato sekce poskytuje přehled techniky zobrazené v následujícím diagramu.

Diagram SQD zobrazující obnovu konfigurací, sběr podvzorků a získávání vlastních stavů z těchto podvzorků

Zde Xˉ\bar{\mathcal{X}} je sada zašuměných vzorků, které v kontextu simulovaného Hamiltoniánu obsahují fyzikální a nefyzikální konfigurace (reprezentované jako bitové řetězce) získané spuštěním na QPU. Nefyzikální konfigurace jsou způsobeny šumem a lze je zpracovat metodou sqd.configuration_recovery.recover_configurations(), čímž se vzorky zpřesní do nové sady XR\mathcal{X}_R.

Z této sady jsou dávky konfigurací S(1)... S(K)\mathcal{S}^{(1)}...\ \mathcal{S}^{(K)} sbírány podle rozdělení úměrného empirickým četnostem každého x\mathbf{x} v XR\mathcal{X}_R. Každá dávka vzorkovaných konfigurací rozepíná podprostor, S(k):k=1,...,K\mathcal{S}^{(k)}: k = 1, ..., K, ve kterém je Hamiltonián projektován a diagonalizován:

H^S(k)=P^S(k)H^P^S(k), with P^S(k)=xS(k)xx, \hat{H}_{S^{(k)}} = \hat{P}_{\mathcal{S}^{(k)}}\hat{H}\hat{P}_{\mathcal{S}^{(k)}}\text{, with } \hat{P}_{\mathcal{S}^{(k)}} = \sum_{\mathbf{x} \in \mathcal{S}^{(k)}} |\mathbf{x}\rangle\langle\mathbf{x}|,

kde H^S(k)\hat{H}_{\mathcal{S}^{(k)}} je Hamiltonián daného podprostoru.

Jádro postupu SQD spočívá v diagonalizaci každého z těchto podprostorových Hamiltonánů. Základní stavy získané z každého z těchto podprostorů, ψ(k)|\psi^{(k)}\rangle, se využívají k vytvoření odhadu referenčního vektoru obsazenosti n(K)\mathbf{n}^{(K)} průměrovaného přes každý z KK podprostorů. Nová sada konfigurací XR\mathcal{X}_R je poté vygenerována pravděpodobnostním překlopením jednotlivých bitů na základě této průměrné obsazenosti a známého celkového počtu částic (Hammingovy váhy) v systému. Tento proces obnovy konfigurací se poté opakuje přípravou nové sady podprostorů k diagonalizaci, získáváním nových vlastních stavů a průměrné orbitální obsazenosti a generováním nové sady konfigurací. Tato smyčka se iteruje, dokud není splněno uživatelem zadané kritérium, a celý proces je analogický filtrování zašuměného signálu za účelem zlepšení jeho věrnosti.

Další kroky

Doporučení

Reference

[1] Robledo-Moreno, Javier, et al. "Chemistry beyond exact solutions on a quantum-centric supercomputer" arXiv preprint arXiv:2405.05068 (2024).