Đã từ lâu, nhiều chuyên gia chorằng, máy tính lượng tử cấp độ phân tử sẽ ra đời để đưa ra giải pháp cho vấn đề này.Hiện nay máy tính lượng tử đã được ứng dụng khá nhiều vào các lĩnh vực
Trang 1Tr ườ Đ i ng ạ H c ọ Công Nghi p ệ Hà N i ộ
Khoa Công Ngh Thông Tin ệ - -
CÁC CHỦ ĐỀ HIỆN ĐẠI VỀ CÔNG NGHỆ
THÔNG TIN
Giáo viên h ướ d n: ng ẫ T.S Hà M nh ạ Đào
Nhóm SV th c ự hi n: ệ
Nguyễn Thành Đô Đào Lê Huy Hoàng Đức Anh Nguyễn Hải Lâm Nguyễn Văn chung
Hà N i, ộ 2023
Trang 2MỤC LỤC
MỤC LỤC 2
Danh sách hình ảnh 3
Giới thiệu 4
1 Máy tính lượng tử 5
1.1.Giới thiệu về máy tính lượng tử 5
1.2.Cấu trúc phần cứng của máy tính lượng tử 6
1.2.1.Qubit 6
1.2.2.Hệ thống làm lạnh siêu dẫn 7
1.2.3.Hệ thống điều khiển và đọc dữ liệu 8
1.3.Cổng lượng tử 9
2 Ứng dụng của máy tính lượng tử 10
2.1.Mô phỏng các hệ thống lượng tử 10
2.2.Giải mã và bảo mật thông tin 11
2.3.Trí tuệ nhân tạo 12
3 Thuật toán lượng tử 12
3.1.Khái niệm 12
3.2.So sánh thuật toán cổ điển và thuật toán lượng tử 13
3.3.Biến đổi Fourier lượng tử (QFT) 14
3.4.Các thuật toán lượng tử cơ bản 14
3.4.1.Thuật toán Shor 14
3.4.2.Thuật toán Grover 15
3.4.3.Thuật toán Deutsch-Jozsa 15
3.5.Bài toán minh hoạ ( thuật toán Shor ) 16
4 Mô phỏng thuật toán lượng tử 18
4.1.Các phần mềm hỗ trợ lập trình thuật toán lượng tử 18
Trang 34.2.Mô phỏng thuật toán lượng tử cơ bản bằng Qiskit 20
4.2.1.Cài đặt thư viện 20
4.2.2.Chạy thuật toán 21
4.2.3.Hoàn thành mô phỏng thuật toán 21
Tổng kết 24
Tài liệu tham khảo 25
Danh sách hình ảnh Hình 1: Phòng thí nghiệm máy tính lượng tử của Google đặt ở Santa Barbara (California, Mỹ) 5
Hình 2: Classical Bit vs Qubit 6
Hình 3: Xylanh (cylinder) lớn được dùng để giữ độ lạnh tuyệt đối cho hệ thống 8
Hình 4: Chip máy tính lượng tử Google Sycamore 9
Hình 5: Đường dẫn (line) điều khiển máy tính lượng tử 9
Trang 4Giới thiệu
Công nghệ ngày càng phát triển kéo theo đó là tốc độ phát triển thần tốc củacông nghệ máy tính Các máy tính hiện đại ngày nay có bộ xử lý trung tâm là CPU(hay còn gọi là Chip) đang dần đạt đến giới hạn vật lý có thể đạt được Hiện tại, mọingười sẽ thường được nghe tới các thuật ngữ như tiến trình “7nm" thuộc tiến trình sảnxuất mới nhất của TSMC, được dùng để sản xuất các CPU thế hệ mới củaAMD và chip A12X của Apple hay “10nm" là tiến trình sản xuất CPU mới nhất củaIntel được đưa vào vận hành ở quý IV năm 2019
Tương lai các CPU chỉ còn 2nm thậm chị là 1nm Khi các bóng bán dẫn đạt tớimức này, việc thu nhỏ thêm là vô cùng khó khăn Đã từ lâu, nhiều chuyên gia chorằng, máy tính lượng tử (cấp độ phân tử) sẽ ra đời để đưa ra giải pháp cho vấn đề này.Hiện nay máy tính lượng tử đã được ứng dụng khá nhiều vào các lĩnh vực khácnhau bao gồm tài chính, chăm sóc sức khỏe, an ninh mạng,… Tuy nhiên tính lượng tử
có thể là một lĩnh vực còn khá xa lạ đối với nhiều người
Trong bài nghiên cứu này, chúng tôi sẽ trình bày những nghiên cứu của mình về
“Máy tính lượng tử và ứng dụng trong tính toán hiệu năng cao” để hiểu rõ hơn về lĩnhvực hứa hẹn sẽ là tương lai của công nghệ trên toàn thế giới
Trang 51 Máy tính lượng tử
1.1 Giới thiệu về máy tính lượng tử
H nh 1: Phòng thí nghiệm máy tính lượng tử của Google đặt ở Santa Barbara (California, Mỹ)Máy tính lượng tử là một loại máy tính sử dụng các hiệu ứng của cơ học lượng
tử để thực hiện các phép toán trên dữ liệu Máy tính lượng tử có thể xử lý nhanh hơn
và hiệu quả hơn các máy tính kỹ thuật số truyền thống trong một số bài toán phức tạp,như phân tích mã, mô phỏng hệ lượng tử, tối ưu hóa, học máy và trí tuệ nhân tạo Máytính lượng tử sử dụng các qubit (bit lượng tử) để biểu diễn dữ liệu, thay vì các bit (chữ
số nhị phân) như máy tính kỹ thuật số Các qubit có thể ở trong trạng thái chồng chậplượng tử, tức là có thể mang cả hai giá trị 0 và 1 cùng một lúc, và có thể tương tác vớinhau qua hiệu ứng vướng víu lượng tử Điều này cho phép máy tính lượng tử thựchiện nhiều phép toán song song và giảm thiểu số bước cần thiết để giải quyết một bàitoán
Máy tính lượng tử là một lĩnh vực nghiên cứu mới mẻ và đầy thách thức, vì nóđòi hỏi sự kết hợp giữa vật lý, toán học, tin học và kỹ thuật Hiện nay, các máy tínhlượng tử vẫn đang ở giai đoạn thử nghiệm và phát triển, và chỉ có thể hoạt động ởnhiệt độ rất thấp để bảo vệ các qubit khỏi bị nhiễu Các máy tính lượng tử cũng cần cócác thuật toán lượng tử phù hợp để khai thác được tiềm năng của chúng Một số công
ty và
Trang 6tổ chức đã sản xuất và cung cấp các máy tính lượng tử cho mục đích nghiên cứu vàthương mại, như IBM, Google, Microsoft, Amazon, Intel và D-Wave.
1.2 Cấu trúc phần cứng của máy tính lượng tử
Cấu trúc phần cứng của máy tính lượng tử phức tạp và đặc biệt, sử dụng
các thiết bị và công nghệ dựa trên cơ học lượng tử để thực hiện tính toán Dưới đây làmột phần cấu trúc phần cứng chung của máy tính lượng tử:
1.2.1 Qubit
Không giống với các máy tính kỹ thuật số thông dụng ngày nay, dữ liệu được
mã hóa thành số nhị phân (bit) và gán cho nó 2 giá trị TẮT và MỞ tương ứng là 0 và
1 Và nó chỉ có thể nhận được 1 trong 2 giá trị 0 hoặc 1
Còn các máy tính lượng tử sử dụng đơn vị là “qubits” (quantum bits, bits lượng
tử ) với các giá trị nằm trong khoảng từ 0 tới 1 Nó có thể nhận được cả 2 giátrị và cùng một lúc.0 1
Các qubit có thể ở trong trạng thái chồng chập lượng tử, tức là có thể mang cảhai giá trị 0 và 1 cùng một lúc, và có thể tương tác với nhau qua hiệu ứng vướng víulượng tử Các qubit được sắp xếp theo dạng bàn cờ vua trên nhân chip Các qubit đượclàm từ các vi tụ điện bằng chất liệu niobium, một nguyên tố hóa học có độ cứng ngangvới titan
H nh 2: Classical Bit vs Qubit
Trang 7Kết Nối Giữa Qubit:
Entanglement (Liên Kết): Liên kết lượng tử là hiện tượng trong đó trạng thái của hai qubit trở nên hoàn toàn liên kết và không thể được mô tả độclập Điều này cho phép qubit này ảnh hưởng đến qubit kia ngay cả khi chúng ở xa nhau, một tính năng quan trọng trong các thuật toán và ứng dụng lượng tử như mã hóa lượng tử
Quantum Teleportation (Chuyển Đổi Lượng Tử): Quantum teleportationcho phép trạng thái lượng tử của một qubit được chuyển đổi và tái tạo ởmột vị trí xa mà không cần truyền trạng thái đó qua khoảng cách vật lý
Duy Tr Trạng Thái Lượng Tử: Ở nhiệt độ cao hơn, qubit có thể bị xao lượng tử, tức là
nó có thể thoát khỏi trạng thái lượng tử mong muốn và trở thành trạng thái cổ điển Nhiệt độthấp giúp qubit duy trì tính lượng tử của nó, cho phép máy tính lượng tử thực hiện các phéptính lượng tử một cách chính xác
Giảm Thiểu Nhiễu Lượng Tử: Tại nhiệt độ thấp, nhiễu lượng tử (quantum noise) trở nên
ít đáng kể hơn Nhiễu lượng tử bao gồm các biến đổi ngẫu nhiên trong trạng thái của qubit, và
nó có thể làm mất thông tin hoặc gây lỗi trong tính toán lượng tử Nhiệt độ cực thấp giúpgiảm nhiễu lượng tử này
Tiếp Xúc Với Môi Trường: Ở nhiệt độ cao, tiếp xúc với môi trường có thể làm cho qubitmất trạng thái lượng tử Nhiệt độ thấp giúp giảm thiểu tiếp xúc này và duy trì tính ổn địnhcủa qubit
Tránh Lỗi Lượng Tử: Máy tính lượng tử cần đảm bảo rằng các lỗi lượng tử (quantumerrors) được giảm thiểu Nhiệt độ thấp có thể giúp làm giảm tần suất xảy ra các lỗi này.ColdQuanta, công ty có trụ sở tại Mỹ đã hợp tác với Cơ quan Chỉ đạo Dự ánNghiên cứu Quốc phòng Tiên tiến (DARPA) để tạo ra máy tính lượng tử có khả năngđịnh vị máy bay chiến đấu trong trường hợp hệ thống radar của quân đội bị phá hủymột phần
Trang 8Theo BBC, các nguyên tử trong máy tính có thể tính toán với tốc độ rất nhanhsau khi tập hợp dữ liệu dưới dạng qubit (quantum bit) - đơn vị trong máy tính lượng
tử, giống như bit ở máy tính cổ điển
Để làm được điều này, các nguyên tử trong máy tính phải ở trạng thái cực kỳlạnh Nói cách khác, đây là chiếc máy tính lạnh nhất thế giới
Nếu các nguyên tử ion trong máy tính lượng tử siêu dẫn của Google hay IBMđược đặt ở 0,001 độ kelvin thì nguyên tử trung hòa trong máy tính của ColdQuantađược làm lạnh ở 0,000001 độ kelvin Nhiệt độ này lạnh hơn bất cứ thứ gì lạnh nhất màchúng ta từng biết Để dễ hình dung, trạng thái nhiệt độ không tuyệt đối tức 0 độkelvin tương đương -273,15 độ C
H nh 3: Xylanh (cylinder) lớn được dùng để giữ độ lạnh tuyệt đối cho hệ thống
1.2.3 Hệ thống điều khiển và đọc dữ liệu
Đây là một thiết bị dùng để gửi các tín hiệu điện từ bên ngoài vào nhân chiplượng tử để thực hiện các phép toán trên các qubit, và đọc kết quả từ các qubit rangoài
Trang 9Hệ thống điều khiển và đọc dữ liệu có
thể sử dụng các sóng điện từ hoặc các
tia laser để giao tiếp với các qubit
H nh 4: Chip máy tính lượng tử Google SycamoreDưới đây là ảnh minh họa cho các đường dẫn (line) điều khiển máy tính lượng
tử Những sợi cáp đồng này khá đắt, khoảng 1.000 USD cho mỗi đoạn có hai chân nối
H nh 5: Đường dẫn (line) điều khiển máy tính lượng tử
Mỗi đường (line) truyền tín hiệu điện từ để kiểm soát tính toán và đọc dữ liệu từcác qubit xử lý thông tin
Cấu trúc phần cứng của máy tính lượng tử đang tiếp tục phát triển và cải thiệnqua thời gian, và có nhiều công ty và tổ chức nghiên cứu trên khắp thế giới đang thamgia vào cuộc đua để xây dựng máy tính lượng tử mạnh mẽ hơn và ứng dụng chúngvào nhiều lĩnh vực trong cuộc sống
1.3 Cổng lượng tử
Cổng lượng tử: Để thực hiện phép tính lượng tử, máy tính lượng tử sử dụng
các cổng lượng tử, tương tự như cổng logic trong máy tính cổ điển Các cổng này chophép
Trang 10thực hiện các phép quay và nối qubit lại với nhau để thực hiện các phép tính phức tạp Một số cổng lượng tử quan trọng:
Cổng Hadamard (H-Gate): là một trong những cổng quan trọng nhất trongmáy tính lượng tử Nó được biểu diễn bằng ma trận Hadamard và chuyển đổi trạng thái cơ bản |0 thành trạng thái superposition: H|0 = (|0 + |1 ) /⟩ ⟩ ⟩ ⟩
√2 Nó cho phép qubit tồn tại ở nhiều trạng thái đồng thời
Cổng Pauli-X (X-Gate):Cổng X thực hiện một phép quay 180 độ xung quanh trục x trên biểu diễn Bloch của qubit Nó hoạt động như cổng NOTtrong máy tính cổ điển và thay đổi |0 thành |1 và ngược lại: X|0 = |1⟩ ⟩ ⟩ ⟩ vàX|1⟩ = |0⟩
Cổng Pauli-Y (Y-Gate):Cổng Y thực hiện một phép quay 180 độ xung quanh trục y trên biểu diễn Bloch của qubit Nó kết hợp phép quay và phépđảo dấu, nó không giữ nguyên cả hai trạng thái cơ bản |0 và |1 ⟩ ⟩
Cổng Pauli-Z (Z-Gate):Cổng Z thực hiện một phép quay 180 độ xung quanh trục z trên biểu diễn Bloch của qubit Nó làm thay đổi dấu của trạngthái |1 : Z|0 = |0 và Z|1 = -|1 ⟩ ⟩ ⟩ ⟩ ⟩
Cổng CNOT (Controlled-NOT):Cổng CNOT hoạt động trên hai qubit: một
là qubit kiểm soát (control) và một là qubit được kiểm soát (target) Nếu qubit kiểm soát là |1 , thì qubit được kiểm soát sẽ trải qua phép quay X ⟩(NOT): CNOT(|0 , |1 ) = |0 , CNOT(|1 , |1 ) = |0 ⟩ ⟩ ⟩ ⟩ ⟩ ⟩
Cổng Toffoli (CCNOT): Cổng Toffoli hoạt động trên ba qubit, hai là qubitkiểm soát và một là qubit được kiểm soát Nó thực hiện phép quay X (NOT) trên qubit được kiểm soát nếu cả hai qubit kiểm soát là |1 ⟩
2 Ứng dụng của máy tính lượng tử
2.1 Mô phỏng các hệ thống lượng tử
Một trong những ứng dụng quan trọng của máy tính lượng tử là mô phỏng các
hệ thống lượng tử, như các phân tử, vật liệu hay quá trình hóa học Máy tính lượng tử
có thể giúp các nhà khoa học nghiên cứu và thiết kế các chất mới, các loại thuốc mớihay các nguồn năng lượng mới
Trang 11Máy tính lượng tử cũng có thể giải quyết các bài toán tối ưu hóa, phân loại hayhọc sâu một cách hiệu quả hơn so với máy tính cổ điển Mô phỏng hệ thống lượng tử
là một bài toán khó nhằn cho máy tính cổ điển, vì số lượng trạng thái của hệ thốngtăng theo cấp số mũ với số lượng các hạt lượng tử
Ví dụ, để mô phỏng một phân tử gồm 50 electron, ta cần khoảng 10^15 bit đểbiểu diễn trạng thái của nó³ Điều này vượt quá khả năng của bộ nhớ và xử lý của máytính cổ điển Tuy nhiên, máy tính lượng tử có thể biểu diễn trạng thái của hệ thốnglượng tử bằng cách sử dụng các qubit, với khả năng chồng chất và rối lượng tử Ví dụ,
để mô phỏng cùng một phân tử gồm 50 electron, ta chỉ cần khoảng 50 qubit
Điều này giúp tiết kiệm đáng kể bộ nhớ và tăng tốc độ xử lý Một số thuật toánlượng tử đã được đề xuất để mô phỏng các hệ thống lượng tử, như thuật toán Trotter-Suzuki, thuật toán phase estimation hay thuật toán variational quantum eigensolver.⁵Các thuật toán này có thể giúp tính toán các đặc trưng của hệ thống lượng tử, nhưnăng lượng, liên kết hay phổ Các thuật toán này cũng có thể được kết hợp với cácthuật toán cổ điển để tạo ra các kỹ thuật hybrid quantum-classical
2.2 Giải mã và bảo mật thông tin
Máy tính lượng tử có nhiều ứng dụng trong lĩnh vực giải mã và bảo mật thôngtin Một số ứng dụng chính là:
Giải mã các mã hóa dựa trên việc phân tích số nguyên tố, như thuật toán RSA :Máy tính lượng tử có thể sử dụng thuật toán Shor để tìm ra các thừa số nguyên tố củamột số rất lớn một cách nhanh chóng, trong khi máy tính cổ điển mất rất nhiều thờigian để làm được Điều này có nghĩa là máy tính lượng tử có thể phá vỡ các hệ thống
mã hóa hiện tại mà dựa trên việc bảo mật khóa bí mật
Tạo ra các mã hóa an toàn hơn dựa trên các nguyên lý lượng tử: Máy tínhlượng tử có thể sử dụng các tính chất của vật lý lượng tử, như chồng chất và rốilượng tử, để truyền và nhận các khóa bí mật mà không bị nghe lén hay thay đổi bởi
kẻ tấn công Đây là quá trình gọi là truyền khóa bí mật lượng tử, và đã được thựchiện thành công qua quang sợi hay không gian
Mô phỏng các hệ thống lượng tử, như các phân tử, vật liệu hay quá trình hóahọc: Máy tính lượng tử có thể giúp các nhà khoa học nghiên cứu và thiết kế cácchất
Trang 12mới, các loại thuốc mới hay các nguồn năng lượng mới Điều này cũng liên quanđến việc bảo mật thông tin, vì nhiều chất hay quá trình này có thể được sử dụngcho các mục đích quân sự hay an ninh.
2.3 Trí tuệ nhân tạo
Máy tính lượng tử dành cho trí tuệ nhân tạo là một lĩnh vực nghiên cứu kết hợpgiữa hai công nghệ tiên tiến nhất hiện nay: máy tính lượng tử và trí tuệ nhân tạo Mụctiêu của lĩnh vực này là tận dụng khả năng tính toán siêu nhanh và siêu hiệu quả củamáy tính lượng tử để giải quyết các bài toán trí tuệ nhân tạo phức tạp, như học sâu,học củng cố, học không giám sát, phân loại, nhận dạng, tối ưu hóa, v.v Một số ứngdụng tiềm năng của máy tính lượng tử dành cho trí tuệ nhân tạo là:
Tăng cường khả năng hiểu và tạo ngôn ngữ tự nhiên Máy tính lượng tử có thểgiúp huấn luyện các mô hình ngôn ngữ tự nhiên mạnh mẽ hơn, như GPT-31, với khảnăng xử lý đồng thời nhiều dữ liệu và tham số Điều này sẽ giúp cho trí tuệ nhân tạo
có thể giao tiếp và viết văn bản một cách tự nhiên và chính xác hơn
Tăng cường khả năng nhận biết và xử lý ảnh Máy tính lượng tử có thể giúp xâydựng các mô hình xử lý ảnh hiệu quả hơn, như QGAN2, với khả năng biểu diễn cácđặc trưng ảnh phức tạp bằng các qubit Điều này sẽ giúp cho trí tuệ nhân tạo có thểnhận diện, phân loại, phục hồi và tạo ra các ảnh chất lượng cao hơn
Tăng cường khả năng mô phỏng và tối ưu hóa Máy tính lượng tử có thể giúpgiải quyết các bài toán tối ưu hóa khó nhằn, như bài toán du khách3, với khả năng tìmkiếm không gian trạng thái rộng lớn Điều này sẽ giúp cho trí tuệ nhân tạo có thể môphỏng và tối ưu hoá các quá trình trong các lĩnh vực như kinh doanh, giao thông, y tế,v.v
3 Thuật toán lượng tử
Thuật toán là gì?
Trong toán học và khoa học máy tính, một thuật toán, còn gọi là giải thuật, làmột tập hợp hữu hạn các hướng dẫn được xác định rõ ràng, có thể thực hiện đượcbằng máy tính, thường để giải quyết một lớp vấn đề hoặc để thực hiện một phép tính.Các thuật toán luôn rõ ràng và được sử dụng chỉ rõ việc thực hiện các phép tính, xử lý
dữ liệu, suy luận tự động và các tác vụ khác