Przegląd diagonalizacji kwantowej opartej na próbkowaniu (SQD)
Diagonalizacja kwantowa oparta na próbkowaniu (SQD, ang. Sample-based quantum diagonalization) to klasyczna technika post-processingu, która działa na próbkach uzyskanych z Circuit kwantowego po wykonaniu na QPU. Jest przydatna do znajdowania wartości własnych i wektorów własnych operatorów kwantowych, takich jak Hamiltonian układu kwantowego, i łączy obliczenia kwantowe z rozproszonymi obliczeniami klasycznymi. Ta technika post-processingu może być szczególnie użyteczna dla użytkowników symulujących układy chemiczne lub inne układy kwantowe.
Obliczenia klasyczne służą do przetwarzania próbek uzyskanych z procesora kwantowego, a także do rzutowania i diagonalizacji docelowego Hamiltonianu w podprzestrzeni przez nie rozpinanej. Dzięki temu SQD jest odporna na próbki skażone szumem kwantowym i pozwala zarządzać dużymi Hamiltonianami — takimi jak układy chemiczne z milionami oddziałujących wyrazów — wykraczającymi poza zasięg dokładnych metod diagonalizacji.
Narzędzie SQD może obsługiwać Hamiltoniany wyrażone jako kombinacje liniowe operatorów Pauliego lub operatorów fermionowych w drugiej kwantyzacji. Próbki wejściowe są uzyskiwane z Circuit kwantowych zdefiniowanych przez użytkownika, które mają być dobrą reprezentacją stanów własnych (np. stanu podstawowego) danego operatora docelowego. Szybkość zbieżności SQD w funkcji liczby próbek poprawia się wraz ze rzadkością docelowego stanu własnego.
Instalacja pakietu SQD
Pakiet SQD można zainstalować na dwa sposoby: przez PyPI lub budując ze źródeł. Zaleca się instalowanie tych pakietów w środowisku wirtualnym, aby zapewnić separację zależności pakietów.
Instalacja z PyPI
Najprostszym sposobem instalacji pakietu qiskit-addon-sqd jest użycie PyPI.
pip install qiskit-addon-sqd
Budowanie ze źródeł
Kliknij tutaj, aby dowiedzieć się, jak zainstalować ten pakiet ręcznie
Jeśli chcesz wnieść wkład do tego pakietu lub zainstalować go ręcznie, najpierw sklonuj repozytorium:
git clone git@github.com:Qiskit/qiskit-addon-sqd.git
a następnie zainstaluj pakiet przez pip. Repozytorium zawiera też przykładowe notebooki, które możesz uruchomić. Jeśli planujesz rozwijanie kodu w repozytorium, możesz zainstalować zależności dev.
Dostosuj opcje do swoich potrzeb.
pip install tox notebook -e '.[notebook-dependencies, dev]'
Podstawy teoretyczne
Przepływ pracy SQD z samospójnym odtwarzaniem konfiguracji jest szczegółowo opisany w [1]. Ta sekcja przedstawia przegląd techniki zilustrowanej na poniższym diagramie.

Tutaj to zbiór zaszumionych próbek, które — w kontekście symulowanego Hamiltonianu — zawierają fizyczne i niefizyczne konfiguracje (reprezentowane jako łańcuchy bitów) uzyskane w wyniku wykonania na QPU. Niefizyczne konfiguracje są skutkiem szumu i mogą być przetworzone przez metodę sqd.configuration_recovery.recover_configurations() w celu udoskonalenia próbek do nowego zbioru .
Z tego zbioru pobierane są partie konfiguracji zgodnie z rozkładem proporcjonalnym do empirycznych częstości każdego w . Każda partia pobranych konfiguracji rozpina podprzestrzeń, , w której Hamiltonian jest rzutowany i diagonalizowany:
gdzie jest Hamiltonianem danej podprzestrzeni.
Główna część przepływu pracy SQD polega właśnie na diagonalizacji każdego z tych Hamiltonianów podprzestrzeni. Stany podstawowe uzyskane z każdej z tych podprzestrzeni, , służą do wyznaczenia szacunkowego wektora referencyjnego obsadzeń uśrednionego po każdej z podprzestrzeni. Nowy zbiór konfiguracji jest następnie generowany przez probabilistyczne odwracanie pojedynczych bitów na podstawie tej średniej obsady i znanych całkowitych liczb cząstek (wagi Hamminga) w układzie. Ten proces odtwarzania konfiguracji jest następnie powtarzany przez przygotowanie nowego zestawu podprzestrzeni do diagonalizacji, uzyskanie nowych stanów własnych i uśrednionego obsadzenia orbitali oraz wygenerowanie nowego zestawu konfiguracji. Pętla ta jest iterowana aż do spełnienia kryterium określonego przez użytkownika, a cały proces jest analogiczny do filtrowania zaszumionego sygnału w celu poprawy jego wierności.
Następne kroki
- Przeczytaj stronę Pierwsze kroki z SQD.
- Przeczytaj samouczek dotyczący poprawy estymacji energii za pomocą SQD.
Referencje
[1] Robledo-Moreno, Javier, et al. "Chemistry beyond exact solutions on a quantum-centric supercomputer" arXiv preprint arXiv:2405.05068 (2024).