Pepenyahpepenjuruan kuantum berasaskan sampel (SQD)
Pakej ini melaksanakan pepenyahpepenjuruan kuantum berasaskan sampel (SQD) — satu teknik untuk mencari nilai eigen dan vektor eigen bagi pengendali kuantum, seperti Hamiltonian sistem kuantum [1–6]. Ia boleh menyasarkan Hamiltonian yang dinyatakan sebagai gabungan linear pengendali Pauli atau pengendali Fermionic terkuantum kedua. Aliran kerja berasaskan SQD boleh dijalankan pada komputer kuantum semasa dan telah ditunjukkan berskala kepada saiz masalah yang melebihi apa yang mungkin dengan kaedah variasi — malah melebihi jangkauan kaedah penyahpepenjuruanan klasik yang tepat.
Aliran kerja berasaskan SQD melibatkan penyediaan satu atau lebih keadaan kuantum pada peranti kuantum dan mensampelnya terlebih dahulu. Kemudian, pengkomputeran teragih klasik digunakan untuk memproses sampel bising tersebut. Pemprosesan ini berlaku secara berulang dalam dua langkah: pertama, langkah pemulihan konfigurasi membetulkan sampel bising menggunakan maklumat tentang masalah input; kedua, Hamiltonian diunjurkan dan dinyahpepenjuruankan dalam subruang yang direntangi oleh sampel tersebut. Langkah-langkah ini diulang secara konsisten-kendiri sehingga penumpuan. Hasilnya ialah anggaran nilai eigen terendah (tenaga) dan keadaan eigen bertenaga terendah bagi sesuatu Hamiltonian. SQD tahan terhadap sampel yang dicemari hingar kuantum; malah, selagi isyarat berguna dapat diperoleh daripada komputer kuantum, hasil SQD tidak akan peka terhadap rentetan bit yang bising.
qiskit-addon-sqd boleh digunakan untuk memproses secara klasik sampel yang diambil daripada pelbagai litar kuantum dalam praktiknya. Contohnya:
- Ansatz litar variasi dengan parameter yang dipilih supaya persampelan litar menghasilkan konfigurasi elektronik yang menjadikan fungsi gelombang sasaran (contohnya, keadaan asas) mempunyai sokongan ketara. Ini menarik untuk aplikasi kimia yang Hamiltoniannya boleh mempunyai berjuta-juta sebutan interaksi [1]. Untuk contoh pendekatan ini yang digunakan pada kimia menggunakan litar LUCJ, lihat tutorial untuk menghampiri tenaga keadaan asas molekul N2.
- Satu set keadaan asas Krylov disediakan pada sela masa yang meningkat. Dengan andaian keadaan awal yang baik dan kejarangan keadaan asas, pendekatan ini terbukti menumpu dengan cekap. Memandangkan seseorang perlu menyediakan litar evolusi masa Trotter pada peranti kuantum, pendekatan ini paling sesuai untuk aplikasi pada model kekisi [2] berbanding Hamiltonian jasad-banyak yang kompleks seperti yang digunakan dalam kimia kuantum. Untuk contoh pendekatan ini yang digunakan pada Hamiltonian kekisi Fermionic, lihat tutorial untuk menghampiri tenaga keadaan asas model Anderson satu-kekotoran yang dipermudah.
- Satu set keadaan asas Krylov yang dilaksanakan dengan kompilasi rawak qDRIFT bagi pengendali evolusi masa. Pendekatan ini menghasilkan litar berkedalaman lebih pendek berbanding penguraian evolusi masa berasaskan Trotter dan oleh itu boleh digunakan untuk Hamiltonian kimia kuantum. Teknik ini telah digunakan pada tenaga keadaan asas hidrokarbon aromatik polisiklik [6].
Bermula
Panduan ringkas untuk membantu anda bermula dengan pantas menggunakan pakej ini tersedia dalam panduan mula pantas.
Contoh kes penggunaan
Teknik pepenyahpepenjuruan kuantum berasaskan sampel boleh digunakan untuk melaksanakan pelbagai aliran kerja. Beberapa contoh tempat ia telah digunakan termasuk:
-
Pengiraan struktur elektronik bagi tenaga keadaan asas kluster besi-sulfur
-
Menganggar tenaga keadaan asas untuk meramal jurang jalur dielektrik
-
Menganggar keadaan teruja molekul bertenaga rendah
-
Mensimulasikan interaksi antara molekul
-
Mengkaji interaksi zat terlarut-pelarut dalam simulasi struktur elektronik
-
Analisis open-shell bagi pemisahan molekul
-
Memodelkan laluan tindak balas untuk masalah fotokimia
-
Menggabungkan dengan entanglement forging untuk mengkaji laluan tindak balas bagi degradasi bahan melalui pengabstrakan hidrogen
-
Membina subruang daripada keadaan asas Krylov kuantum untuk melaksanakan simulasi keadaan asas bagi model bendasing untuk sistem Fermionik
-
Menggunakan kompilasi rawak qDRIFT untuk mengurangkan overhead pelaksanaan keadaan asas Krylov bagi Hamiltonian kimia dan dengan aplikasi kepada molekul yang mempamerkan topologi elektronik separuh-Mobius
-
Menggunakan SQD sebagai penyelesai dalam konteks kaedah pembenaman dan pemecahan untuk sistem molekul, seperti mengira tenaga gelang hidrogen dan sikloheksana dan kompleks dwi- dan tri-logam, mengkaji tindak balas penurunan oksigen, menganggar tenaga protein dan kompleks protein–ligan, serta meramal spesiasi tritium.
Perbincangan teknikal
Saiz sistem dan keperluan pengiraan
Kos pengiraan SQD didominasi oleh panggilan penyelesai keadaan eigen. Pada setiap langkah lelaran pemulihan konfigurasi swakonsisten, n_batches panggilan penyelesai keadaan eigen dilaksanakan. Panggilan-panggilan yang berbeza ini adalah selari secara memalukan (embarrassingly parallel). Dalam tutorial ini, panggilan tersebut berada di dalam gelung for. Anda sangat disyorkan melaksanakan panggilan ini secara selari.
Fungsi qiskit_addon_sqd.fermion.solve_fermion() ialah berbilang-thread dan mampu mengendalikan sistem dengan ~25 orbital ruang dan ~10 elektron dengan dimensi subruang ~$10^7$, menggunakan ~10-30 teras.
Memilih dimensi subruang
Pilihan dimensi subruang mempengaruhi ketepatan dan masa jalan penyelesai keadaan eigen. Semakin besar subruang, semakin tepat pengiraan, dengan kos peningkatan masa jalan dan keperluan memori. Saiz subruang optimum bagi sesuatu sistem tidak diketahui; oleh itu, kajian penumpuan dengan dimensi subruang boleh dilakukan, seperti yang diterangkan dalam panduan ini.
Menghadkan dimensi subruang
Argumen samples_per_batch bagi qiskit_addon_sqd.fermion.diagonalize_fermionic_hamiltonian() menetapkan bilangan bitstring dalam setiap kelompok, dan dengan itu mengawal dimensi subruang secara tidak langsung: dalam kes aplikasi kimia kuantum, nilainya menetapkan had atas bagi dimensi subruang. Dimensi yang sebenarnya terhasil bergantung pada berapa banyak bitstring yang disampel adalah berbeza, dan ia bertambah sepanjang lelaran pemulihan konfigurasi swakonsisten, jadi ia tidak diketahui lebih awal. Lihat contoh ini untuk butiran lanjut.
Argumen max_dim bagi fungsi yang sama menghadkan dimensi secara langsung, dengan mengehadkan bilangan rentetan CI yang dikekalkan dalam setiap sektor spin. Memandangkan subruang dijanakan oleh hasil darab Cartesian bagi dua sektor spin, max_dim=d menghadkan dimensi subruang kepada d**2, manakala tuple max_dim=(d_a, d_b) mengehadkan sektor spin-alfa dan spin-beta secara berasingan, menghadkan dimensi subruang kepada d_a * d_b (dengan symmetrize_spin=True, kedua-dua had mesti sama). Apabila satu kelompok menghasilkan lebih banyak rentetan CI daripada yang dibenarkan oleh had, rentetan yang diminta melalui include_configurations dan yang dibawa daripada lelaran sebelumnya dikekalkan secara keutamaan, dan baki slot diisi dengan rentetan yang paling kerap disampel. Kerana ia menghadkan saiz pepenyahdiagonalan terbesar yang akan diminta daripada penyelesai keadaan eigen, max_dim ialah cara yang mudah untuk mengekalkan penyelesai dalam bajet masa jalan dan memori. Lihat panduan ini untuk butiran lanjut.
Penyelesai
Langkah unjuran dan pepenyahdiagonalan dilakukan oleh penyelesai klasik. Kami menyediakan di sini dua penyelesai generik, satu untuk sistem Fermionik dan satu lagi untuk sistem qubit. Penyelesai lain yang mungkin lebih cekap untuk sistem tertentu boleh disambungkan oleh pengguna.
Trim SQD
SQD standard mendiagonalkan setiap kelompok subsampel secara bebas dan mengekalkan hasil terbaik, jadi bilangan konfigurasi yang boleh dipertimbangkan terhad kepada apa yang boleh dimuatkan oleh satu subruang yang mampu milik. Trim SQD sebaliknya membahagikan bitstring kepada kelompok, melakukan pepenyahdiagonalan perantaraan bagi setiap kelompok, kemudian melakukan pepenyahdiagonalan yang lebih besar menggunakan determinan berpemberat tertinggi daripada setiap partisi. Kaedah ini berdasarkan penyelidikan bersama daripada Cleveland Clinic Foundation, RIKEN, dan IBM [7], dan boleh didayakan dengan menghantar objek TrimPolicy kepada fungsi diagonalize_fermionic_hamiltonian().
Menyumbang
Kod sumber tersedia di GitHub.
Panduan pembangun terletak di CONTRIBUTING.md dalam akar repositori projek ini. Dengan menyertai, anda dijangka menegakkan tatakelakuan Qiskit.
Kami menggunakan isu GitHub untuk menjejak permintaan dan pepijat.
Memetik pakej ini
Jika anda menggunakan pakej ini dalam penyelidikan anda, gunakan fail CITATION.bib dalam repositori projek ini untuk memetik rujukan yang sesuai.
Penghargaan
Pakej ini termasuk strategi pensampelan pilihan dalam gelung pemulihan konfigurasi swakonsisten yang memangkas determinan berdasarkan keputusan pepenyahdiagonalan perantaraan. Pelaksanaan ini berdasarkan penyelidikan bersama daripada Cleveland Clinic Foundation, RIKEN, dan IBM. Jika anda menggunakan ciri ini dalam penyelidikan anda, sila gunakan juga petikan bagi kertas kerja tersebut, yang boleh didapati dalam fail CITATION.bib dengan kunci petikan merz2026crossing. Pelaksanaan aliran kerja penuh daripada kertas kerja itu dijangka tersedia di GitHub tidak lama lagi.
Lesen
Dasar Penghentian Sokongan
Kami mengikut pengversian semantik. Kadangkala kami mungkin membuat perubahan yang memecahkan keserasian demi memperbaik pengalaman pengguna. Apabila boleh, kami akan mengekalkan antara muka lama dan menandakannya sebagai ditamatkan sokongan, selagi ia boleh wujud bersama yang baharu. Setiap peningkatan besar, perubahan yang memecahkan keserasian, atau penamatan sokongan akan didokumenkan dalam nota keluaran.
Rujukan
-
Javier Robledo-Moreno, et al., Chemistry Beyond Exact Solutions on a Quantum-Centric Supercomputer, arXiv:2405.05068 [quant-ph].
-
Jeffery Yu, et al., Quantum-Centric Algorithm for Sample-Based Krylov Diagonalization, arXiv:2501.09702 [quant-ph].
-
Keita Kanno, et al., Quantum-Selected Configuration Interaction: classical diagonalization of Hamiltonians in subspaces selected by quantum computers, arXiv:2302.11320 [quant-ph].
-
Kenji Sugisaki, et al., Hamiltonian simulation-based quantum-selected configuration interaction for large-scale electronic structure calculations with a quantum computer, arXiv:2412.07218 [quant-ph].
-
Mathias Mikkelsen, Yuya O. Nakagawa, Quantum-selected configuration interaction with time-evolved state, arXiv:2412.13839 [quant-ph].
-
Samuele Piccinelli, et al., Quantum chemistry with provable convergence via randomized sample-based Krylov quantum diagonalization, arXiv:2508.02578 [quant-ph].
-
Kenneth M. Merz Jr., et al., Crossing the 12,000-atom barrier with heterogeneous quantum-classical supercomputing: quantum chemistry of protein-ligand complexes, arXiv:2605.01138 [quant-ph].