Tính toán lượng tử làm
việc như thế nào
và tại sao nó quan trọng?
Máy
tính đã làm thay đổi hoàn toàn xã hội của chúng ta. Ngay sau khi Chiến Tranh Thế
Giới II kết thúc, các nhà khoa học đã sử dụng máy tính để giải quyết tất cả các
loại vấn đề. Quá trình này diễn ra nhanh chóng tới mức không tưởng. Vào những
năm 1970, máy tính dùng ở nhà ra đời.
Tuy
nhiên, bất chấp quá trình đó, vẫn còn những bài toán thực sự rất khó khăn. Dù
các máy tính có giỏi đến đâu đi chăng nữa, những thách thức khi nhân các số lớn
hoặc tối ưu hóa đường đi nhanh nhất vẫn còn đầy gian nan.
Nhưng
các bit không phải là cách duy nhất để tính toán. Cơ học lượng tử - những qui
luật thống trị thế giới các hạt nguyên tử và phân tử - cũng có thể được sử dụng
để tính toán. Và các tính toán đó được thực hiện theo một cách thức hoàn toàn
khác biệt.
Hy
vọng một ngày nào đó các “máy tính lượng tử” (quantum computer) này có khả năng
giải quyết những bài toán khó. Nhưng các máy tính lượng tử thực sự là gì, và
chúng làm việc như thế nào?
Nhìn
chi tiết vào bên dưới lớp vỏ của một chiếc máy tính lượng tử để khám phá lý do
tại sao các nhà nghiên cứu lại đặt nhiều kỳ vọng rằng những máy tính này sẽ rất
mạnh – không phải kiểu mạnh như bộ vi xử lý thế hệ mới của Intel. Không, một
chiếc máy tính lượng tử thực sự có khả năng thay đổi thế giới. Các công ty như
D-Wave, IBM, và Google, cùng với các phòng nghiên cứu trên khắp thế giới, đang
cùng chạy đua nhằm tạo ra những chiếc máy tính lượng tử thực sự đầu tiên.
Điều gì khiến chiếc máy tính lượng tử trở nên khác biệt?
Để
minh họa sự khác nhau giữa tính toán lượng tử và tính toán truyền thống, Daniel
Lidar – giáo sư chuyên ngành hóa học lý thuyết cơ bản của Đại Học Nam
California – đã sử dụng mô hình tương tự sau (mà tôi đã sửa lại).
Hãy tưởng tượng
rằng mình đang tìm một quả bóng màu đen trong một cái hộp đầy bóng màu trắng,
và bạn không thể nhìn vào bên trong hộp. Để tìm quả bóng đen, bạn mò mẫm bắt được
một quả bóng, kiểm tra màu sắc, nếu nó không phải màu đen thì ném đi. Bạn có thể
vớ được quả bóng màu đen ngay lần thử đầu tiên, hoặc có thể ở tận lần cuối
cùng.
Kết
quả khả thi nhất: bạn phá tan cái hộp trong thất vọng.
Nào, giờ hãy
chuyển sang thuật toán lượng tử. Bàn tay lượng tử của bạn đưa vào cái hộp,
nhưng không tóm lấy quả bóng nào. Thay vào đó, những bàn tay này nắm giữ xác suất
tóm được một quả bóng – bao gồm cả quả bóng đen. Nếu cái hộp có 10 quả bóng,
bàn tay lượng tử sẽ giữ 10 xác suất như nhau.
Tiếp
theo, bạn chạy một thuật toán lượng tử nhằm làm tăng khả năng quả bóng tóm được
là màu đen. Sau đó, bạn kiểm tra bàn tay: Thật thất vọng, quả bóng lại màu trắng.
Bạn quay trở lại trong hộp. Nhưng lần này, các xác suất không còn như nhau: xác
suất tìm thấy quả bóng màu đen giờ đã cao hơn các quả bóng khác.
Nó
cũng giống như việc ném đi quả bóng màu trắng mà bạn tìm được lúc trước. Hành động
này xảy ra đều đặn mỗi lần, vì thế khả năng tìm thấy quả bóng màu đen sẽ tăng
lên rất nhanh. Chìa khóa cho cách các xác suất thay đổi nằm ở các trạng thái lượng
tử - hay trong tính toán gọi là “qubit” - được vận hành như thế nào.
Các trạng thái chồng chất của lượng tử
Chúng
ta hãy cùng mổ xẻ câu chuyện cái hộp bóng ở trên để xem cách nó hoạt động ra sao.
Bàn
tay lượng tử đưa vào trong hộp và nắm giữ các xác suất. Trong tính toán truyền
thống, thông tin được lưu trong các bit có giá trị xác định rõ ràng. Một bit chỉ
có thể là 1 hoặc 0. Hơn nữa việc kiểm tra giá trị của một bit không làm thay đổi
nó.
Nhưng
qubit không trực tiếp biểu diễn giá trị của bit; nó nắm giữ xác suất mà qubit
là 1 hoặc 0. Điều này gọi là một “trạng thái chồng chất lượng tử - quantum
superposition state”.
Tuy
nhiên khi chúng ta kiểm tra giá trị của qubit, chúng ta sẽ không nhận được xác
suất này. Phép đo sẽ phát hiện ra đó là 1 hay 0 – lựa chọn xác định ngẫu nhiên
từ các xác suất chồng chất. Làm phép đo sẽ đặt giá trị cho qubit. Nếu chúng ta
đo qubit và nhận được giá trị 1, kiểm tra lại cũng sẽ vẫn cho kết quả là 1.
Khi
chúng ta cho tay vào trong hộp, chúng ta thực ra đang lấy ra một tập các qubit –
đủ để đại diện cho toàn bộ số bóng. Các qubit được đặt vào một trạng thái chồng
chất, nắm giữ các xác suất tìm thấy mỗi một quả bóng. Vì việc tìm kiếm này hoàn
toàn ngẫu nhiên, mỗi quả bóng được biểu diễn bằng một xác suất tương đương
nhau.
Giờ
chúng ta chạy một giải thuật làm tăng xác suất tìm thấy quả bóng đen.
Bạn
có thể hỏi: làm sao có thể tăng xác suất khi nó không hề bị lộ ra? Câu trả lời
nằm ở cách một qubit nắm giữ các xác suất. Một xác suất được biểu diễn bởi một
số từ 0 đến 1. Nhưng qubit nắm giữ các biên độ xác suất, nên nó có thể âm hoặc
dương.
Lidar
nói: “Đó chính là sự khác nhau thực sự. Không có định nghĩa về xác suất âm [trong
vật lý cổ điển], nó vô nghĩa… Nhưng trong lượng tử, chúng ta có thể có biên độ
[xác suất] âm hủy được các biên độ [xác suất] dương. Chính nhờ thông qua các hoạt
động nhiễu loạn của chúng mà chúng ta có thể bắt đầu hiểu được tính toán lượng
tử có lợi thế ra sao.”
Hai
điểm chính bị che dấu đi trong lời trích dẫn trên. Khi biên độ âm gặp biên độ
dương, kết quả tổng hợp sẽ gần 0 hơn, do đó xác suất của đầu ra cụ thể này sẽ
giảm xuống; nếu hai biên độ dương gặp nhau, khả năng là đầu ra sẽ tăng lên. Như
vậy, chúng ta có thể thao tác với xác suất của một đầu ra cụ thể mà không cần
đo qubit. (Nhớ rằng, thực hiện một phép đo sẽ phá hủy trạng thái chồng chất.)
Quan
trọng hơn, qubit có thể được tạo ra để tự thực hiện điều này. Khi chúng ta nói
một biên độ dương gặp một biên độ âm, các biên độ này có thể đến từ cùng một
qubit. Và nếu điều đó không khiến bạn bận tâm hay kêu ca chút xíu thì chả sao cả.
Kết
quả là, máy tính lượng tử có thể nhanh chóng giảm xác suất đạt được kết quả
không chính xác và tăng vận may nhận được kết quả đúng. Đây chính là mánh khôn
lanh mà một máy tính lượng tử sử dụng để gia tăng xác suất tìm thấy quả bóng
đúng.
Qui trình “dễ lỗi”
Để
thực hiện tính toán, trạng thái chồng chất của nhiều qubit bị sửa lại. Giữa các
sửa đổi định trước, môi trường cũng thay đổi trạng thái chồng chất. Nhiễu này
là kẻ thù của tính toán lượng tử, phá hủy các trạng thái chồng chất gần như
nhanh bằng lúc chúng ta tạo ra chúng.
Kết
quả là qubit không đáng tin và dễ sinh lỗi. Và những lỗi này phải được phát hiện
và sửa chữa.
Điều
đó không phải là quan trọng. Lidar nói: “Chúng ta cần sử dụng một cấp độ dự
phòng cao để đảm bảo tính toán lượng tử có thể vận hành đúng. Nếu vậy thì, những
cái này khó mà hiểu được nếu mã hóa phải không? Phải, đây là vấn đề hoàn toàn
nghiêm túc, nó có thể là hệ số của 1000 hay 1000000.”
Nói
cách khác, mỗi bit thông tin được mã hóa thành một tập qubit nhỏ thay vì một
qubit đơn lẻ.
Xây dựng một máy tính lượng tử như thế nào?
Có
vài hướng căn bản để xây dựng một máy tính lượng tử. Hướng phổ biến nhất giống
như cách chúng ta xây dựng các máy tính ngày nay, gọi là mô hình mạch điện toán
lượng tử.
Mỗi
chương trình chia nhỏ thành một chuỗi các phép toán logic cụ thể, phần lớn sửa
đổi các biên độ xác suất của một qubit, phụ thuộc vào biên độ xác suất của
qubit thứ hai. Máy tính lượng tử dùng bảng mạch dựa trên một tập qubit khởi đầu
và thực hiện mỗi phép toán trong chương trình một cách tuần tự. Sau khi chạy
chương trình, các trạng thái qubit được đọc để thu được câu trả lời.
IBM
xây dựng các máy tính lượng tử theo dạng này, và bạn thậm chí còn có thể chơi với
chúng. Cũng chẳng có gì chắc chắn liệu máy của IBM hay bất kỳ mô hình bảng mạch
nào khác sẽ thành chuẩn mực hay không. Tăng số lượng qubit và kéo dài vòng đời
tới một con số hữu ích là một nhiệm vụ không hề dễ dàng.
Các
công ty khác, như D-Wave và Google, cũng có ưu điểm riêng. Hướng đi của họ hoàn
toàn khác với hướng của IBM và hầu hết các phòng nghiên cứu. Hướng phổ biến nhất
để xây dựng một máy tính lượng tử là gắn chặt với các ý tưởng từ máy tính bình
thường: các cổng logic thực hiện các phép toán tuần tự. Nhưng cũng có khả năng
làm các máy tính này hoạt động mà không cần các phép toán logic trực tiếp.
Khác biệt giữa
hai hướng đi rất sâu sắc. Trong máy tính sử dụng logic tuyến tính, nền tảng vật
lý của máy tính tương đối đơn giản, nhưng chuỗi phép toán (hay chương trình) có
thể rất dài và phức tạp. Khi bỏ qua logic tuyến tính, chương trình trở nên rất
đơn giản – thực tế, hầu như không còn khái niệm lập trình – nhưng nền tảng vật
lý lại trở nên rất thách thức, vì mọi qubit đều phải được kết nối với tất cả
các qubit khác.
D-Wave,
một công ty khởi nghiệp từ Canada, đã đưa ra một dạng hạn chế của tính toán lượng
tử cho vài tình huống, nhưng tại một thời điểm, các bộ vi xử lý của nó vẫn quá
nhỏ để giải quyết các bài toán thực tế. Nền tảng bộ vi xử lý D-Wave không kết nối
toàn bộ qubit với nhau. Kết quả là, nó chỉ có thể được sử dụng để giải quyết
vài dạng bài toán nhất định.
Với
các bài toán phức tạp, từ hiệu năng máy tính, không thể biết được đó là máy
tính lượng tử hay không. Trong trường hợp này, một máy tính truyền thống cực hiệu
quả cũng có thể thay thế được. Google và Lidar (người không làm việc cho Google)
đều đang sử dụng hướng đi tương tự D-Wave; tuy nhiên sự khác biệt là, họ nhắm
vào việc điều khiển cách các qubit tác động lẫn nhau. Từ đó, họ hy vọng sẽ chứng
minh được hướng đi đó sẽ dẫn tới một máy tính lượng tử.
Bài toán tìm kiếm giải pháp lượng tử
Hầu
hết mọi người, nếu họ nhận thức được về máy tính lượng tử, sẽ gắn nó với bẻ
khóa. Mã hóa thời hiện đại phụ thuộc thực tế rằng, cực kỳ khó tìm ra các hệ số
chính của một số lượng các số vô cùng lớn.
Một
máy tính lượng tử thực sự sẽ gần như đặt dấu chấm hết cho điều này. Nhưng có
các ứng dụng ít lỗi hơn.
Ứng
dụng thú vị nhất đang được phát triển là dùng máy tính lượng tử giải quyết các
bài toán cơ lượng tử. Đây chính là ứng dụng có khả năng sẽ thay đổi thế giới.
Cơ
lượng tử mô tả các thuộc tính của các vật liệu, từ cotton trong vải vóc quần áo
của bạn tới quang hợp của cây xanh. Thậm chí với cả các máy tính truyền thống mạnh
nhất, chúng cũng hoàn toàn không thể tính toán được các thuộc tính của bất kỳ
phân tử nào chứa nhiều hơn 30 nguyên tử. Thay vào đó, chúng ta lấy bản ngắn gọn
mà chúng thường chẳng phải lúc nào cũng làm việc ngon lành.
Máy
tính lượng tử có thể cực kỳ chính xác, vì vậy chúng ta có thể tin tưởng hơn vào
các tính toán kiểu này. Các nhà khoa học có thể tưởng tượng ra nhiều thuộc tính
kỳ lạ hơn, chẳng hạn như các vật chất làm mát khi tiếp xúc với ánh sáng mặt trời,
rồi sau đó sử dụng máy tính lượng tử xác định cấu trúc yêu cầu. Các thuộc tính
kỳ dị thực sự bất khả thi có thể được loại bỏ nhanh hơn rất nhiều.
Chúng ta đang gần đến mức nào?
Các
máy tính lượng tử xuất hiện dưới dạng lý thuyết được trình diễn đầu tiên vào những
năm 1990. Các bí mật của bạn vì thế vẫn an toàn, và bạn sẽ không thấy máy tính
lượng tử làm những điều bất chính với tài khoản ngân hàng của mình. Các nhà
nghiên cứu như Lidar chưa kỳ vọng một máy tính lượng tử thực sự trong thực tế
vào thời điểm cụ thể nào.
Lidar
nói rằng, với 100 qubit trong một thế giới không cần sửa lỗi lượng tử “Chúng ta
có khả năng bắt đầu tiến hành mô phỏng các hệ thống lượng tử sử dụng các máy
tính lượng tử trong phạm vi nhất định mà vẫn vượt trội những máy tính truyền thống
mạnh nhất.”
Nhưng
các nhà nghiên cứu cũng có một mục tiêu, gọi là siêu lượng tử (quantum
supremacy). Bỏ qua tên gọi rất hùng vĩ của nó, thực chất, siêu lượng tử chỉ cho
thấy rằng, bất kỳ bài toán nào vượt quá khả năng của một máy tính truyền thống,
thậm chí không có giá trị thực dụng, vẫn có thể giải quyết được trong một máy
tính lượng tử.
Mô
phỏng các máy tính lượng tử có thể thực hiện được như tiên đoán là một bước
quan trọng, nhưng không ai có thể chắc chắn tuyệt đối là nó có thể thành hiện
thực. Chỉ khi chúng ta thực sự tin rằng các máy tính lượng tử của tương lai có
thể cho ra các kết quả như hứa hẹn.
Lidar
hy vọng nhìn thấy một máy tính có khả năng thành siêu lượng tử trong 12 tháng tới.
Cụ thể hơn, Google dường như đang nhắm tới xây dựng thành công siêu lượng tử
càng nhanh càng tốt, còn IBM cũng đang theo đuổi một hướng đi thận trọng hơn.
Sau
cùng, một tương lai mù mờ nhưng thú vị đang chờ đợi chúng ta.
Chris Lee