Algoritma HHL - mengapa bukan pengetahuan yang diperlukan tentang eigenspectrum kelemahan utama?

9

Pertanyaan ini merupakan kelanjutan dari estimasi fase Quantum dan algoritma HHL - diperlukan pengetahuan tentang nilai eigen? .


Dalam pertanyaan yang dikaitkan di atas, saya bertanya tentang perlunya HHL untuk memiliki informasi tentang eigenspectrum dari matriks dipertimbangkan. Ternyata algoritma HHL membutuhkan sebuah matriks dengan nilai eigen agar berfungsi dengan benar.λ j[ 0 , 1 )SEBUAHλj[0,1)

Setelah kondisi ini, diberikan matriks , untuk menerapkan algoritma HHL kita perlu memeriksa salah satu kondisi di bawah ini:SEBUAH

  1. Nilai eigen dari matriks semuanya berada dalam .[0,1)
  2. Sepasang yang terikat (dari bawah untuk dan dari atas untuk ) nilai eigen dari matriks . Batas ini kemudian dapat digunakan untuk mengubah skala matriks sehingga kondisi 1. divalidasi. L M λ j A A(L.,M.)R2L.M.λjSEBUAHSEBUAH

Kelompok pertanyaan pertama: Saya membaca banyak makalah tentang HHL dan tidak satupun dari mereka yang menyebutkan batasan ini. Mengapa? Apakah pembatasan ini diketahui tetapi dianggap lemah (yaitu, mudah untuk memiliki informasi semacam ini)? Atau batasannya tidak diketahui? Apakah ada makalah penelitian yang menyebutkan batasan ini?


Mari kita bicara tentang analisis kompleksitas HHL. Dari algoritma sistem linear Quantum: primer (Dervovic, Herbster, Mountney, Severini, Usher & Wossnig, 2018) , kompleksitas HHL (dan beberapa perbaikan) ditulis dalam gambar di bawah ini.

kompleksitas HHL

Analisis kompleksitas tidak memperhitungkan (setidaknya saya tidak menemukannya) pengetahuan yang diperlukan pada eigenspectrum.

Kasus di mana matriks dianggap memiliki sifat yang cukup baik untuk memperkirakan nilai eigennya secara analitis tidak umum (setidaknya untuk matriks dunia nyata) dan diabaikan.

Dalam jawaban ini , @DaftWullie menggunakan teorema lingkaran Gershgorin untuk memperkirakan batas atas dan bawah eigenspectrum. Masalah dengan pendekatan ini adalah bahwa dibutuhkan operasi ( jika amplifikasi amplitudo berlaku). Jumlah operasi ini menghancurkan kompleksitas logaritmik dari HHL (dan itu hanya keuntungan dari algoritma klasik dalam waktu yang bersamaan).O ( HAI(N)HAI(N)

Kelompok pertanyaan kedua: Apakah ada algoritma yang lebih baik dalam hal kompleksitas? Jika tidak, lalu mengapa algoritma HHL masih disajikan sebagai peningkatan eksponensial dari pada algoritma klasik?

Awal
sumber
Saya kira cara terbaik untuk mengatasi ini adalah dengan menanyakan konteks apa algoritma HHL akan diterapkan. Setelah Anda tahu konteksnya, itu membantu menentukan apa yang Anda ketahui tentang matriks.
DaftWullie
3
Ngomong-ngomong, batasannya tentu diketahui. Dalam pengantar makalah HHL (versi arXiv saat ini), dikatakan "Algoritma kami umumnya akan mengasumsikan bahwa nilai singular A terletak antara 1 / κ dan 1"
DaftWullie
2
Makalah Scott Aaronson tentang "membaca cetak halus" untuk algoritma pembelajaran mesin kuantum mungkin sangat menarik bagi siapa pun yang tertarik dengan pertanyaan ini. scottaaronson.com/papers/qml.pdf
Jalex Stark
Sumber daya yang sangat berguna! Terima kasih atas tautannya @JalexStark
Nelimee

Jawaban:

5

Pembatasan nilai eigen biasanya diberikan dalam bentuk nomor kondisi . Ini adalah κ yang Anda lihat di semua runtimes di tabel Anda. κ=|λmSebuahx/λmsayan|di mana λmSebuahx dan λmsayan adalah nilai eigen maksimum dan minimum masing-masing.

Di semua runtime yang tercantum dalam tabel Anda, diasumsikan bahwa nomor kondisi diketahui. Orang biasanya tidak berpikir "menghitung angka kondisi" sebagai bagian dari algoritma untuk menyelesaikan , misalnya. Jika nomor kondisi lebih besar, sistem lebih sulit untuk dipecahkan, dan jika lebih kecil sistem lebih mudah untuk dipecahkan (dengan asumsi semua parameter lain, termasuk kesalahan maksimum yang diinginkan dipertahankan tetap). SEBUAHx=bϵ

Dalam hal perlu mengetahui bahwa dan , ada banyak contoh di mana kita dapat mengetahui batasan pada nilai eigen tanpa benar-benar melalui upaya menghitung nilai eigen. Dengan cara ini, HHL bisa menjadi cara yang bagus untuk menemukan keadaan yang Anda cari, tanpa biaya menghitung nomor kondisi atau nilai eigen apa pun.λmSebuahx<M.λmsayan>L.

Izinkan saya memberikan satu contoh dunia nyata. Katakanlah saya ingin menemukan keadaan getaran molekul sehingga setelah ps berevolusi di bawah Hamiltonian , molekul berakhir pada keadaan . Ini dapat dijelaskan dengan persamaan:|ψt=10H|b

e-sayaHt|ψ=|b

di mana memenuhi persamaan ini adalah apa yang ingin Anda ketahui. Anda dapat menemukan Anda inginkan dengan menggunakan algoritma HHL dengan dan .|ψ|ψSEBUAH=e-sayaHt|ψ=|x

Memperoleh nilai eigen terkecil dan terbesar dari molekul Hamiltonian hingga presisi yang sewenang-wenang sangat mahal pada sebuah pengomputer klasik, tetapi mengetahui bahwa mereka berada dalam kisaran dapat ditentukan tanpa biaya sama sekali. Misalnya, jika molekulnya adalah dimer nitrogen, kita tahu keadaan getaran terendah dan tertinggi memiliki energi (nilai eigen) antara 0 dan 10 eV dan karena kita memiliki dan . Anda dapat mengonversi eV ke Hz, dan ps ke detik untuk mengevaluasi(L.,M.)e0=1L.=1M.=e-saya10eV10halsM.secara numerik, dan kemudian Anda bisa mendapatkan batas bawah dan atas yang perlu Anda gunakan saat menskalakan matriks Anda seperti yang Anda jelaskan dalam pertanyaan sebelumnya. Pada titik mana pun saya perlu menghitung nilai eigen dari Hamiltonian molekul 14-elektron (yang akan sangat sulit dan akan mengalahkan tujuan menggunakan HHL, karena jika saya bisa menghitung nilai eigen saya hanya bisa menghitung dan membalikkannya untuk mendapatkan ). Saya hanya menggunakan energi disosiasi molekul untuk menghasilkan batasan pada energi vibrasinya. Saya bisa membuat batasan yang lebih baik dengan menggunakan pendekatan semi klasik WKB , juga dengan biaya yang jauh lebih sedikit daripada benar-benar menghitung nilai eigen, tetapi contoh pertama sudah cukup.SEBUAH|ψ

Jadi sekarang mari kita menjawab semua pertanyaan pribadi Anda:

Kelompok pertanyaan pertama: Saya membaca banyak makalah tentang HHL dan tidak satupun dari mereka yang menyebutkan batasan ini. Mengapa? Apakah pembatasan ini diketahui tetapi dianggap lemah (yaitu, mudah untuk memiliki informasi semacam ini)? Atau batasannya tidak diketahui? Apakah ada makalah penelitian yang menyebutkan batasan ini?

Dari 539 makalah yang telah (saat ini) mengutip makalah HHL asli, banyak dari mereka tidak akan mengetahui detail yang lebih baik seperti ketergantungan kinerjanya pada jumlah kondisi atau nilai eigen. Beberapa makalah tentu akan tahu bahwa kinerja algoritma akan tergantung pada nomor kondisi atau nilai eigen dari matriks, yaitu, makalah yang tercantum dalam tabel Anda tentang peningkatan algoritma HHL. Robin Kothari juga menyebutkannya, misalnya, di awal pembicaraannya pada tahun 2016 tentang algoritma CKS (yang disebutkan dalam tabel Anda).

Kelompok pertanyaan kedua: Apakah ada algoritma yang lebih baik dalam hal kompleksitas? Jika tidak, lalu mengapa algoritma HHL masih disajikan sebagai peningkatan eksponensial dari pada algoritma klasik?

Algoritme yang Anda sebutkan, disarankan oleh DaftWulie, untuk memperkirakan batasan pada nilai eigen, tidak akan ditingkatkan melebihi karena biaya dominan dalam algoritma tersebut adalah dalam menelusuri semua baris untuk nilai maksimum dan minimum. Biaya segala sesuatu yang lain adalah kecil karena matriks diasumsikan memiliki sparsity dari . Tidak ada cara untuk melakukan pencarian ini lebih cepat dalam waktu yang lebih cepat dari (kecuali Anda memiliki pengetahuan ekstra lain tentang sistem) karena algoritma Grover telah terbukti optimal.HAI(N)NsNHAI(N)

Anda benar, orang harus menyebutkan peringatan algoritma lebih sering di makalah mereka. Dalam hal pertanyaan spesifik Anda "mengapa algoritma HHL masih disajikan sebagai peningkatan eksponensial atas algoritma klasik," Saya pikir penulis asli HHL melakukan uji tuntas mereka dalam menjelaskan algoritme dan peringatannya, dalam hal mereka mengatakan bahwa ada eksponensial scaling tetapi biaya tumbuh kuadratik dengan jumlah kondisi dan sparsity dan berbanding terbalik dengan ukuran kesalahan yang bersedia Anda toleransi. Mengapa kebanyakan orang lain setelah HHL tidak menyebutkan semua peringatan? Yah banyak dari mereka tidak tahu peringatan, dan mereka yang mungkin merasa itu tidak perlu karena menghitung angka kondisi bukan bagian dari algoritma. Mengetahui nomor kondisi akan memberi tahu Anda seberapa baik algoritma akan bekerja,

pengguna1271772
sumber
1
+1, ditangani dengan baik.
Niel de Beaudrap
2
Kesimpulannya adalah "Kasus di mana matriks yang dipertimbangkan memiliki sifat yang cukup baik untuk memperkirakan nilai eigennya (atau batas bawah / atas) secara analitis tidak umum (setidaknya untuk matriks dunia nyata) tetapi merupakan satu-satunya yang dapat kita tangani saat ini jika kami ingin menerapkan HHL. " Pertanyaan saya mungkin terlalu sempit untuk dijawab dengan batasan pada kasus analitis "sederhana". Terima kasih! Kasus penggunaan khusus Anda menarik dan juga akan baik-baik saja di sini: quantumcomputing.stackexchange.com/questions/2697/…
Nelimee
@NieldeBeaudrap: Merupakan suatu kehormatan untuk mendapatkan komentar itu dari Anda, karena Anda adalah pria yang dikenal menyukai hal-hal yang tepat dan keras. Saya tahu banyak jawaban saya yang lain memiliki celah, yang Anda tunjukkan pertama kali, seperti kasus di mana jawaban saya hanya berfungsi untuk kondisi ortogonal.
user1271772