Thuật toán lượng tử cho các hệ phương trình tuyến tính (HHL09): Bước 1 - Số lượng qubit cần thiết


8

Đây là sự tiếp nối của thuật toán lượng tử cho các hệ phương trình tuyến tính (HHL09): Bước 1 - Nhầm lẫn về việc sử dụng thuật toán ước lượng pha

Câu hỏi (tiếp):

Phần 2: Tôi không chắc chắn chính xác sẽ cần bao nhiêu qubit cho Bước 1 của HHL09 .

Trong Nielsen và Chuang (phần 5.2.1, phiên bản kỷ niệm 10 năm) họ nói:

Do đó, để có được thành công chính xác đến bit với xác suất thành công ít nhất chúng tôi chọnn 1 - εφn1ϵ

t=n+log(2+12ϵ)

Vì vậy, giả sử chúng tôi muốn độ chính xác là tức là và độ chính xác bit cho hoặc chúng tôi sẽ nhu cầu1 - ε = 0,990%3 λ j t1ϵ=0.9ϵ=0.13 bước sóngjλjt2πλj

t=3+log2(2+12(0.1))=3+3=6

Ngoài ra, kể từ có thể được biểu diễn dưới dạng một khoản vector riêng tuyến tính không phụ thuộc vào một chiều ma trận , chúng tôi sẽ cần tối thiểu qubit để sản xuất một không gian vectơ có ít nhất - kích thước. Vì vậy, chúng tôi cần cho đăng ký thứ hai.N N × N Một log 2 ( N ) N log 2 ( N ) |bNN×NAlog2(N)Nlog2(N)

Bây giờ, đối với đăng ký đầu tiên, chúng tôi không chỉ qubit sẽ không đủ để đại diện cho eigenvalues , đó là bởi vì chúng tôi sẽ cần nhiều bit hơn để đại diện cho mỗi chính xác tối đa bit. N | λ j| λ jnlog2(N)N|λj|λjn

Tôi đoán chúng ta nên sử dụng lại công thức trong trường hợp này. Nếu chúng ta muốn mỗi giá trị riêng được thể hiện với độ chính xác bit và độ chính xác thì chúng ta sẽ cần cho lần đăng ký đầu tiên. Thêm vào đó, thêm một qubit cần thiết cho ancilla.| λi390%6×log2(N)

n+log(2+12ϵ)
|λi390%6×log2(N)

Vì vậy, chúng ta cần tổng cộng qubit cho Bước 1 của thuật toán HHL09 . Đó là khá nhiều!(6+1)log2(N)+1

Giả sử chúng tôi muốn giải hệ phương trình tuyến tính sao cho là Hermiti mà chính nó sẽ yêu cầu qubit! Trong trường hợp không phải là Hermiti, chúng tôi sẽ cần nhiều qubit hơn nữa. Tôi có đúng khôngMột 7 log 2 ( 2 ) + 1 = 8 Một2×2A7log2(2)+1=8A

Tuy nhiên, trong bài báo [ ] này ở trang 6, họ tuyên bố rằng họ đã sử dụng thuật toán HHL09 để ước tính giả của có kích thước ~ . Trong bài báo đó, được định nghĩa là: Một 200 × 200A200×200A

A:=(WγIdPP0)

trong đó , và đều là ma trận .W I d d × dPWIdd×d

nhập mô tả hình ảnh ở đây

Trong mô phỏng liên quan đến H1N1, Lloyd et al. đã tuyên bố đã thực hiện, . Và họ tiếp tục tuyên bố rằng họ đã sử dụng thuật toán HHL09 để ước tính nghịch đảo giả của (có kích thước ). Điều đó sẽ cần tối thiểu qubit để mô phỏng. Tôi không biết làm thế nào họ có thể làm điều đó bằng cách sử dụng các máy tính lượng tử hiện tại hoặc mô phỏng máy tính lượng tử. Theo như tôi biết, IBM Q Experience hiện tại hỗ trợ ~ qubit (điều đó cũng không linh hoạt như phiên bản bitbit của họ ).Một 200 × 200 7 log 2 ( 200 ) + 1 = 7 ( 8 ) + 1 = 57 15 5d=100A200×2007log2(200)+1=7(8)+1=57155

Am i thiếu cái gì ở đây? Bước 1 này có thực sự đòi hỏi số lượng qubit ít hơn so với những gì tôi đã ước tính không?

[ ]: Mạng thần kinh lượng tử Hopfield Lloyd et al. (2018)


@N006ee Điều đó xuất phát từ công thức . Nó biểu thị số lượng qubit trong "thanh ghi đầu tiên" cần thiết để đại diện cho mỗi hoặc với bit chính xác và với độ chính xác . 6t=3+log2(2+12(0.1))=3+3=6|λj|λjt2π390%
Sanchaya Dutta

Mặc dù câu trả lời của tôi bây giờ có vẻ tầm thường, nhưng thực sự tôi đã mất 3 ngày để tìm ra mọi thứ bởi vì, trong số những thứ khác, các giấy tờ không rõ ràng. Tôi tin rằng hiện tại tôi có số lượng qubit phù hợp và con số kết quả cho thấy khá rõ lý do tại sao các tác giả của bài viết này có thể dễ dàng mô phỏng số lượng qubit cần thiết (ít nhất là cho "bước 1").
1271772

Câu trả lời:


2

Tính toán nghịch đảo của ma trận có thể được thực hiện bằng cách áp dụng HHL với khác nhau (cụ thể, HHL được áp dụng lần, một lần cho mỗi vectơ cơ sở tính toán được sử dụng làm ).N×NNbiNbi

Trong mỗi trường hợp, việc ước tính pha phải được thực hiện cho ma trậnN×N

Số lượng qubit cần thiết cho ước tính pha được viết trên trang 249 của phiên bản kỷ niệm 10 năm của N & C:

"Thủ tục ước lượng pha lượng tử sử dụng hai thanh ghi. Thanh ghi đầu tiên chứa qubit."t

"Thanh ghi thứ hai [...] chứa càng nhiều qubit cần thiết để lưu trữ ", trong đó là một vectơ -chiều.|u|uN

Vì vậy, bạn đã đúng rằng chúng ta sẽ cần qubit cho đăng ký đầu tiên và qubit cho đăng ký thứ hai.6logN=8

Tổng cộng có 14 qubit để thực hiện phần esitmation pha của mỗi lần lặp HHL liên quan đến việc tính toán nghịch đảo của ma trận. 14 qubit cũng nằm trong khả năng của máy tính xách tay.


Tôi không có nhiều kinh nghiệm với các mô phỏng ngoài việc chơi một chút với Trải nghiệm lượng tử của IBM. Bạn sẽ sử dụng gì để mô phỏng 14 qubit? Cho đến bây giờ, tôi chưa bao giờ thấy mô hình mạch cho ma trận lớn hơn . Mô phỏng Hamilton trông giống như phần khó nhất của HHL. 4×4
Sanchaya Dutta

Trong bình luận của bạn, hai ý nghĩa khác nhau của "mô phỏng" được sử dụng. "Mô phỏng Hamilton" là một phần của HHL, được thực hiện với các qubit, ví dụ như trong Phần 4.2 của điều này . "Bạn sẽ sử dụng cái gì để mô phỏng 14 qubit" đề cập đến một loại mô phỏng khác, mặc dù không sử dụng qubit nhưng bit cổ điển, và đây là những gì các tác giả của bài báo H1N1 đã làm. Họ đã tạo ra các ma trận (có thể trong MATLAB sử dụng hàm KRON có chức năng tenor) và mô phỏng QC theo cách bạn và tôi làm cho 4 214×214
x 4

Vâng, tôi biết rằng mô phỏng Hamilton là một phần của HHL. Tuy nhiên, tôi đã tự hỏi liệu họ đã sử dụng một máy tính lượng tử thực tế như phiên bản 16 qubit của IBM hay IBM 20 qubit. Hàm KRON trong MATLAB nghe có vẻ thú vị (nhưng nó là cổ điển), nhưng tôi đã nghĩ đến khả năng thực hiện nó trong IBM 16 qubit (điều không may là không có tất cả các cổng cần thiết), và do đó, chúng tôi sẽ cần phải ước chừng các cổng (tôi không hoàn toàn chắc chắn làm thế nào).
Sanchaya Dutta

Hơn nữa, tôi nghĩ có một vấn đề khác với ước tính của bạn về số lượng qubit: "Ở đây, vấn đề xuất phát từ độ chính xác cố định so với kích thước không cố định N. Vì anh ta có độ chính xác cố định, (hoặc ) qubit là đủ để mã hóa các giá trị riêng cho độ chính xác đã cho, nhưng anh ta có thể có nhiều hơn (hoặc ) giá trị riêng "(xem phần thảo luận trong trò chuyện liên quan đến vấn đề này). 6 2 3 2 6362326
Sanchaya Dutta

Nếu họ sử dụng IBM, nó sẽ nói như vậy trong bài báo. Nếu bạn tìm kiếm "IBM", không có gì xuất hiện. Khi bạn đọc nhiều giấy tờ hơn và có nhiều kinh nghiệm hơn, nó sẽ ngày càng rõ ràng hơn với bạn khi ai đó sử dụng máy tính lượng tử hoặc chỉ mô phỏng. Tại đây họ đã mô phỏng nó trên một máy tính cổ điển (có lẽ sử dụng MATLAB). Đối với "vấn đề trong ước tính số lượng qubit" của tôi, thật không may là tôi không thể hiểu vấn đề là gì. Tôi vừa đưa ra số lượng qubit cần thiết cho ước tính pha của ma trận 200 x 200. N & C nói rằng đó là t qubit cho đăng ký 1 và log_2 (N) cho đăng ký 2.
user1271772
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.