Vì sao sửa lỗi lượng tử là nút thắt lớn của máy tính lượng tử?

Trong mọi hệ thống tính toán, lỗi là điều không thể loại bỏ hoàn toàn. Máy tính thông thường xử lý vấn đề này bằng các cơ chế như bit dự phòng, mã sửa lỗi và kiểm tra tính toàn vẹn của dữ liệu. Máy tính lượng tử cũng cần sửa lỗi, nhưng bài toán khó hơn nhiều. Một bit cổ điển chỉ có thể ở trạng thái 0 hoặc 1 tại một thời điểm, trong khi qubit có thể tồn tại trong trạng thái chồng chập và liên kết với các qubit khác thông qua rối lượng tử. Việc quan sát trực tiếp để kiểm tra qubit vì thế có thể làm thay đổi chính thông tin mà hệ thống đang xử lý.

Đây là một trong những lý do số lượng qubit được công bố không đủ để đánh giá năng lực thực tế của một máy tính lượng tử. Một thiết bị có nhiều qubit vật lý nhưng mỗi qubit dễ mất trạng thái hoặc tạo ra phép tính sai chưa chắc hữu ích hơn một hệ thống nhỏ hơn nhưng kiểm soát tốt hơn. Muốn thực hiện các thuật toán dài và đáng tin cậy, ngành này cần xây dựng qubit logic, tức đơn vị thông tin lượng tử được bảo vệ bằng nhiều qubit vật lý. Con đường từ qubit vật lý đến qubit logic chính là trọng tâm của sửa lỗi lượng tử.

Qubit có thể sai theo những cách nào?

Qubit là một hệ vật lý rất nhạy cảm. Tùy công nghệ, nó có thể được tạo ra từ mạch siêu dẫn, ion bị giữ, nguyên tử trung hòa, photon hoặc các nền tảng khác. Dù cách triển khai khác nhau, các hệ này đều phải đối mặt với nhiễu từ môi trường và sai số trong quá trình điều khiển. Nhiệt, dao động điện từ, tương tác ngoài ý muốn với thiết bị đo hoặc sự không chính xác của xung điều khiển đều có thể làm thay đổi trạng thái qubit.

Có thể hình dung một số lỗi cơ bản như việc đảo trạng thái của qubit, làm mất pha lượng tử hoặc khiến trạng thái bị suy giảm dần. Trong tính toán cổ điển, một bit bị lật thường có thể được phát hiện bằng cách so sánh với bản sao. Với qubit, việc sao chép hoàn toàn một trạng thái lượng tử không phải là giải pháp hợp lệ. Hơn nữa, thông tin lượng tử thường được mã hóa trong chồng chập, nên phép đo toàn bộ qubit sẽ làm sụp đổ trạng thái và loại bỏ phần thông tin cần bảo vệ.

Lỗi cũng không chỉ xuất hiện ở từng qubit riêng lẻ. Một cổng lượng tử có thể thực hiện sai một phần, việc đọc kết quả có thể thiếu chính xác, và các lỗi giữa nhiều qubit có thể liên quan với nhau. Vì vậy, một hệ thống sửa lỗi phải theo dõi nhiều nguồn sai lệch cùng lúc mà vẫn giữ được đặc tính lượng tử của phép tính.

Từ qubit vật lý đến qubit logic

Ý tưởng cốt lõi của sửa lỗi lượng tử là phân tán thông tin của một qubit logic lên một nhóm qubit vật lý. Qubit logic không phải là một linh kiện riêng biệt theo nghĩa thông thường. Nó là trạng thái được mã hóa trong một cấu trúc gồm nhiều qubit, trong đó các quan hệ giữa chúng giúp hệ thống nhận biết liệu lỗi đã xảy ra hay chưa.

Thay vì đo trực tiếp thông tin logic, bộ điều khiển thực hiện những phép đo phụ trợ gọi là đo hội chứng lỗi. Các phép đo này không cho biết trạng thái lượng tử đầy đủ của qubit logic, nhưng cung cấp dấu hiệu về loại hoặc vị trí tương đối của lỗi. Hệ thống có thể lặp lại quá trình kiểm tra, phân tích các dấu hiệu thu được rồi áp dụng thao tác hiệu chỉnh, hoặc tính đến lỗi khi giải mã kết quả cuối cùng.

Cơ chế này giống như kiểm tra một mạng lưới bằng các điểm giám sát thay vì mở toàn bộ dữ liệu bên trong. Nếu một số quan hệ giữa các qubit không còn phù hợp, bộ giải mã có thể suy ra chuỗi lỗi có khả năng đã xảy ra. Điều quan trọng là các phép đo hội chứng được thiết kế để không tiết lộ trực tiếp giá trị của qubit logic. Nhờ vậy, việc kiểm tra có thể diễn ra mà không nhất thiết phá hủy phép tính.

Một mã sửa lỗi được sử dụng rộng rãi trong nghiên cứu là mã bề mặt. Trong cách tiếp cận này, qubit được sắp xếp trên một cấu trúc liên kết và liên tục được kiểm tra thông qua các quan hệ lân cận. Mã bề mặt hấp dẫn vì có thể vận hành với các tương tác tương đối cục bộ, phù hợp với một số kiến trúc phần cứng. Tuy nhiên, nó cũng đòi hỏi nhiều qubit vật lý, các phép đo lặp lại ổn định và một bộ giải mã đủ nhanh để xử lý dữ liệu lỗi.

Vì sao thêm qubit chưa chắc đã giảm lỗi?

Trong tính toán thông thường, tăng dung lượng dự phòng thường là cách khá trực tiếp để nâng độ tin cậy. Trong máy tính lượng tử, thêm qubit chỉ có ý nghĩa khi các qubit bổ sung đủ tốt và có thể phối hợp theo đúng mã sửa lỗi. Nếu mỗi qubit mới lại mang theo nhiều sai số, hệ thống có thể trở nên phức tạp hơn mà không tạo ra qubit logic đáng tin cậy hơn.

Khái niệm ngưỡng lỗi giúp mô tả điều kiện này. Một số mã sửa lỗi có thể làm giảm xác suất lỗi của qubit logic nếu lỗi ở các thành phần vật lý nằm dưới một mức nhất định và các giả định về loại lỗi được đáp ứng. Khi đó, việc tăng quy mô mã có thể đem lại độ tin cậy cao hơn. Ngược lại, nếu chất lượng phần cứng chưa đạt điều kiện cần thiết, mở rộng mã có thể không đủ để bù đắp các lỗi phát sinh trong quá trình đo, điều khiển và kết nối.

Ngưỡng lỗi không phải một con số áp dụng giống nhau cho mọi máy tính lượng tử. Giá trị này phụ thuộc vào kiến trúc phần cứng, mô hình nhiễu, cách triển khai cổng lượng tử, chất lượng phép đo và chiến lược giải mã. Một thiết kế có thể có lợi thế ở khả năng kết nối nhưng gặp khó trong việc đọc qubit; thiết kế khác có thể giữ trạng thái lâu hơn nhưng cần nhiều bước điều khiển để thực hiện một phép toán. Vì vậy, đánh giá sửa lỗi phải nhìn vào toàn bộ chuỗi vận hành thay vì chỉ xem một chỉ số riêng lẻ.

Những khó khăn nằm ngoài bản thân mã sửa lỗi

Thách thức đầu tiên là tạo ra qubit vật lý đủ ổn định. Qubit phải được cô lập khỏi nhiễu nhưng vẫn có thể điều khiển và đo khi cần. Hai yêu cầu này có phần đối nghịch: liên kết với thiết bị điều khiển giúp thực hiện phép tính, nhưng cũng mở thêm đường để nhiễu xâm nhập. Trong một hệ thống lớn, việc duy trì điều kiện vận hành đồng đều cho nhiều qubit là bài toán kỹ thuật đáng kể.

Thách thức thứ hai là mở rộng hệ thống mà không làm mất khả năng kiểm soát. Các dây dẫn, bộ phát xung, thiết bị làm lạnh, phần tử quang học hoặc hệ thống bẫy đều phải phối hợp với nhau. Khi số qubit tăng, số phép đo hội chứng cũng tăng và dữ liệu cần xử lý trở nên lớn hơn. Bộ điều khiển cổ điển phải thu thập thông tin, phát hiện mẫu lỗi và đưa ra quyết định đủ nhanh để không trở thành điểm nghẽn của toàn bộ máy.

Thách thức thứ ba là lỗi có thể không độc lập. Nhiều lý thuyết sửa lỗi thuận lợi hơn khi các lỗi xảy ra riêng rẽ và với xác suất thấp. Trong phần cứng thực tế, một sự cố ở bộ điều khiển hoặc một nguồn nhiễu chung có thể tác động đến nhiều qubit cùng lúc. Các lỗi tương quan như vậy có thể làm giảm hiệu quả của mã, bởi thông tin dự phòng không còn phân tán một cách lý tưởng.

Ngoài ra, phép đo và cổng lượng tử cũng cần được sửa lỗi. Không thể giả định rằng chỉ trạng thái qubit mới mắc lỗi còn mọi thao tác xung quanh đều hoàn hảo. Một hệ thống có thể có qubit lưu trữ tốt nhưng phép đo không ổn định, hoặc có phép đo chính xác nhưng các cổng giữa qubit tạo ra quá nhiều sai số. Thiết kế thực tế phải cân bằng nhiều loại lỗi trong cùng một kiến trúc.

Tác động đến cách đánh giá máy tính lượng tử

Sửa lỗi lượng tử làm thay đổi câu hỏi về tiến bộ công nghệ. Thay vì chỉ hỏi một thiết bị có bao nhiêu qubit, cần xem mỗi qubit có chất lượng ra sao, hệ thống có thể thực hiện bao nhiêu chu kỳ tính toán trước khi lỗi tích lũy, và bao nhiêu qubit vật lý có thể kết hợp thành một qubit logic hiệu quả. Cũng cần phân biệt giữa việc trình diễn một kỹ thuật trong điều kiện kiểm soát và khả năng vận hành một chương trình dài với độ tin cậy có thể dự đoán.

Qubit logic là một thước đo quan trọng hơn trong các ứng dụng đòi hỏi phép tính sâu. Tuy nhiên, ngay cả số lượng qubit logic cũng chưa nói lên toàn bộ năng lực. Các qubit logic cần được kết nối theo cách phù hợp, thực hiện được những cổng cần thiết và duy trì trạng thái trong đủ thời gian. Một thuật toán có thể yêu cầu ít qubit nhưng rất nhiều bước, trong khi thuật toán khác cần nhiều qubit hơn nhưng độ sâu thấp hơn. Khả năng sửa lỗi phải được đánh giá cùng với đặc điểm của thuật toán.

Điều này cũng giải thích vì sao các công bố về máy tính lượng tử thường cần được đọc thận trọng. Một kết quả thử nghiệm có thể cho thấy mã sửa lỗi hoạt động trong một cấu hình nhất định, nhưng chưa đồng nghĩa với một máy tính lượng tử chịu lỗi hoàn chỉnh. Khoảng cách giữa việc quan sát xu hướng giảm lỗi và việc vận hành một hệ thống quy mô lớn còn liên quan đến phần cứng, phần mềm điều khiển, giải mã và quy trình bảo trì.

Vì sao sửa lỗi vẫn là hướng đi cần thiết?

Có thể đặt câu hỏi liệu các thuật toán lượng tử có thể được thiết kế để tự tránh lỗi hay không. Việc tối ưu thuật toán và chọn bài toán phù hợp chắc chắn có thể giảm yêu cầu phần cứng, nhưng không loại bỏ hoàn toàn sự suy giảm trạng thái. Những tính toán dài, nhiều lớp cổng hoặc yêu cầu độ chính xác cao vẫn cần một cơ chế bảo vệ có nguyên tắc.

Sửa lỗi lượng tử không nhằm biến qubit thành một phiên bản hoàn toàn bất tử. Mục tiêu thực tế là làm cho xác suất sai của qubit logic giảm khi hệ thống được mở rộng đúng cách. Đây là sự chuyển đổi quan trọng: thay vì cố giữ từng qubit vật lý hoàn hảo, người thiết kế chấp nhận rằng các thành phần nhỏ có thể mắc lỗi và xây dựng một tầng logic có khả năng phát hiện, cô lập và xử lý những lỗi đó.

Con đường này đòi hỏi sự phối hợp giữa vật lý, kỹ thuật điện, khoa học máy tính, lý thuyết thông tin và điều khiển. Không có một mã sửa lỗi duy nhất phù hợp với mọi nền tảng. Mỗi kiến trúc phải tìm ra sự cân bằng giữa số lượng qubit, khả năng kết nối, thời gian đo, chi phí điều khiển và mức độ nhiễu. Những tiến bộ ở một lớp có thể chỉ phát huy tác dụng khi các lớp còn lại cũng theo kịp.

Vì thế, nút thắt của máy tính lượng tử không chỉ nằm ở việc tạo ra nhiều qubit hơn. Nút thắt lớn hơn là biến các qubit dễ tổn thương thành những đơn vị logic có thể hoạt động ổn định trong một phép tính đủ dài. Khi nhìn từ góc độ đó, sửa lỗi lượng tử không phải một tính năng bổ sung được đưa vào sau cùng, mà là nền tảng quyết định liệu máy tính lượng tử có thể vượt qua giai đoạn trình diễn để trở thành công cụ tính toán đáng tin cậy hay không.