Máy ảo thực hịên tính toán lượng tử bởi SQL Server

Một phần của tài liệu Tài liệu Đồ án tốt nghiệp - Sơ đồ mạch lượng tử pptx (Trang 29 - 36)

Được xây dựng trên Stored Procedure, máy ảo này cung cấp tất cả các thủ tục cho phép hệ thống dùng để thực hiên các cổng lượng tử cơ bản và phéo đo. Nhờ sử dụng môi trường cơ sở dữ liệu và những điểm mạnh của SQL Server nên các Stored Procedure thực hiện các tính toán với tốc độ rất nhanh và có khả năng thực hiện với dữ liệu lớn. Nhờ sử dụng phương pháp này, chúng tôi đã giải quyết được vấn đề rất cơ bản trong lập trình là kiểm soát dữ liệu lớn với độ an toàn cao.

Kết lun chung

+ Với những mục tiêu đã đặt ra, VQS thực sự trở thành một bộ công cụ hữu ích phục vụ cho việc nghiên cứu, giảng dạy và học tập về lĩnh vực tính toán lượng tử, đóng vai trò là công cụ đắc lực để trợ giúp cho việc hoạt động một labo nghiên cứu về máy tính lượng tử trong các viện khoa học, các trường đại học ở Việt Nam.

+ Do được thiết kế mở, VQS sẽ được hoàn thiện từng bước trong tương lai để thích hợp cho việc nghiên cứu nhiều hướng khác nhau của tính toán lượng tử.

+ Thời gian tới, nhóm sẽ tiếp tục hoàn thiện chương trình với nhiều tính năng mới, thực hiện khả tính toán trên môi trường song song cho VQS (chỉ cần thay đổi hệ quản trị CSDL thích hợp chẳng hạn Oracle,…), đồng thời tiếp tục nghiên cứu lý thuyết, sử dụng VQS để tìm tòi các thuật toán mới.

+ Tài liệu kỹ thuật này cũng sẽ hữu ích cho những nhóm khoa học, đặc biệt là sinh viên ngành toán tin khi quan tâm đến các ứng dụng công nghệ của SQL trong những lĩnh vực hoàn toàn mới của tính toán khoa học ngoài những mục đích quản lý cơ sở dữ liệu truyền thống, gợi ý khả năng tăng cường sức mạnh của SQL cho các mục tiêu mới của khoa học tính toán.

31

1. D.Aharonov, Quantum Computation, arXiv: quant-Ph/9810237, 12/1998.

2. Phan Hoàng Anh, Ứng dụng phương pháp truy vấn dữ liệu trong tính toán

khoa học, công trình nghiên cứu khoa học khoa Toán Tin ứng dụng, trường

ĐHBKHN, 2001 (giải nhì bộ, nhì VIFOTEC).

3. A.Barenco, C.H.Bennett, R.Cleve, D.P.D.Divicenzo, N.Margolus,

P.W.Shor, T.Sleator, J.Smolin, H.Weinffurter, Elementary Gates For

Quantum Computation, arXiv: quant-Ph/950316, 3/1995.

4. A. Ekert, P. Hayden, H. Inamori, Basic Concepts In Quantum Computation,

11/2000, arXiv: quant-ph/0011013.

5. R. Feynman, Quantum Mechanical Computers, Foundations of Physics, 16,

No.6. March 1985.

6. L. Grover, A Fast Quantum Mechanical Algorithm For Database Search,

Proceedings, STOC 1996.

7. Phạm Hữu Khang, Kỹ thuật lập trình ứng dụng C#. Net toàn tập, tập 1, 2, 3,

NXB Lao Động - Xã Hội, 2000.

8. A. Yu. Kitaev, A.H. Shen, M.N. Vyalyi, Classical And Quantum

Computation, Graduate Studies in Mathematics volume 47.

9. Damian P. Menscher, Modeling The Quantum Computer On The Classical

Computer, 8/1997, PhD program in physics. Univ. Illinois. Honor Thesis.

10.K.Obenland, A. Despain, Simulation Of Factoring On a Quantum Computer

Architecture, Proc. of physics of Compitation 1996.

11.Dương Thế Quang, Ngôn ngữ của các hệ quản trị cơ sở dữ liệu- S.Q.L.-Structred Query Language, NXB Thống Kê, Hà Nội 1995.

12.B.V.Sabat, Giải tích phức, NXB Đại Học Và Trung Học Chuyên Nghiệp,

1974. (adsbygoogle = window.adsbygoogle || []).push({});

13.Peter W. Shor, Polynomial-Time Algorithms For Prime Dacotrization And

Disrete Logarithms On a Quantum Computer, arXiv: quant-ph/ 050802 v2 25

Jan 1996.

14.Lại Đức Thịnh, Bài giảng số học, NXB Giáo Dục, 1970.

15.R.Allen Wyke, Sultan Renman, Brad Leupen, XML Programming,

32

4.1.Tổng quan

+ Phần mềm được xây dựng nhằm mô phỏng mạch lượng tử có khả năng thực thi nhằm trợ giúp nghiên cứu các thuật toán lượng tử trên nền máy tính truyền thống hiện có. Bước đầu phần mềm này cung cấp những đối tượng cơ bản của lý thuyết tính toán lượng tử như : thanh ghi lượng tử, qubit, các cổng cơ bản ... Đồng thời, chương trình với giao diện thân thiện cho phép người dùng dễ dàng thiết kế một mạch bất kỳ với những thao tác kéo thả rất quen thuộc.

+ Phần mềm được thiết kế dưới sự phân tích kỹ lưỡng về sự tương thích giữa những khái niệm lý thuyết và sức mạnh của những công cụ hiện có như : ngôn ngữ lập trình Visual C#, hệ quản trị cơ sở dữ liệu SQL Server 2000, ngôn ngữ định dạng mở rộng XML .

+ Phần mềm là một nỗ lực của nhóm nhằm phục vụ mục đích lâu dài nên chúng tôi thực hiện thiết kế theo hướng mở, do đó sẽ dễ dàng được mở rộng cho các công cụ mới sau này.

+ Chúng tôi đang và sẽ tiếp tục nâng cấp để ở những phiên bản sau, sản phẩm có khả năng trợ giúp nhiều tính năng như: đóng gói một cổng phức hợp do người dùng xây dựng, thiết kế một mạch mới từ những mạch đã có.

+ Xây dựng tài liệu đóng gói để có thể bàn giao, tạo cơ sở cho ứng dụng tính toán của một labo về tính toán lượng tử có qui mô.

4.2.Chức năng chính

+ Người dùng có thể sử dụng những công cụ đã được cung cấp sẵn trên ToolBox để xây dựng mạch theo ý muốn bằng những thao tác kéo, thả quen thuộc và điền thông tin đầu vào thông qua những DialogBox.

+ Toàn bộ quá trình làm việc trên một mạch được quản lý bởi một đối tượng mạch. Trên nền đối tượng đó ta mới đi xây dựng những thành phần cơ bản như: thanh ghi, qubit, cổng ...

+ Song song với quá trình xây dựng mạch qua các đối tượng đồ hoạ chương trình có 2 chức năng:

- Người dùng có thể ghi lại nội dung cấu trúc mạch dưới định dạng file *.xml sau khi xây dựng mạch xong mà sau này chính chương trình có thể sử dụng những file này để dựng lại mạch, theo nội dung file.

- Những thông tin về khởi tạo mạch sẽ được đọc từ file *.xml để truyền vào CSDL. Sau đó những thủ tục được xây dựng trong SQL sẽ đảm nhận vai trò xử lý tính toán, biến đổi và cập nhật trạng thái.

+ Quá trình thực thi mô phỏng trên máy ảo có thể được thực hiện ở 2 chế độ: - Thực thi bởi bộ nhớ trong

Tools -> Options -> Memory Virtual Machine - Thực thi trên SQL Serverr :

Tools -> Options -> SQL Server Virtual Machine. + Theo dõi kết quả thực hiện:

Sau khi thực hiện mô phỏng ta có thể xem các kết quả bằng cách đọc dữ liệu từ cơ sở dữ liệu để thấy được tác động và hiệu quả của mạch mà ta đã xây dựng thông qua các phép đo qubit.

+ Có chức năng cho phép người dùng tạo, sử dụng và sử dụng lại các cổng Oracle: sử dụng các cổng Oracle là một phương pháp mang lại nhiều sức mạnh cho các thuật toán lượng tử. Chính vì vậy để tận dụng được điểm mạnh này vào trong các mạnh lượng tử, công trình tập trung xây dựng nhìêu tính năng hỗ trợ các

33

xác đinh, hỗ trợ phương pháp nhập hàm theo biểu thức nhờ bộ phân tích biểu thức số học được biểu diễn dưới dạng cấu trúc dữ liệu cây nhị phân.

4.3.Tương tác giao diện

+ Muốn mở một Project mới để thực hiện :

Chọn File->New->Project ->Nhập tên Project mới.

Nhấn Tab BasicGate, nó sẽ cho ta thấy những công cụ đã được cung cấp. Từ đây ta có thể tuỳ chọn: thanh ghi, qubit, các cổng cơ bản... theo yêu cầu

của mình bằng thao tác kéo và thả quen thuộc từ ToolBox xuống vùng Client của ta. (adsbygoogle = window.adsbygoogle || []).push({});

Kết thúc thiết kế, nếu ta muốn ghi lại nội dung: chọn File -> Save All thì toàn bộ cấu trúc mạch đó sẽ được lưu lại dưới file cùng tên với Project của ta. + Muốn dựng lại một mạch từ file đã có sẵn (chẳng hạn file ta vừa tạo ra và ghi lại ở trên ), thực hiện:

Chọn File->Open->Project.

Sau đó chọn tên file mà ta muốn mở.

Nhấn GateType trong cửa sổ Project Explorer.

Nhấn vào dấu “+” trong cửa sổ Project Explorer đến tên file cuối cùng thì nhấp đúp vào biểu tượng ấy ta sẽ có mạch mô phỏng lại.

34 Hình 1

b. Tạo một mạch mới:( hình 2)

Hình 2

Kéo thả các cổng cơ bản vào mạch, thiết lập các thông số cho các cổng đó (hình 3)

35 Hình 3

c. Mở một mạch đã có (Mạch cộng 2 qubit) (hình 4)

Hình 4

d. Mô phỏng với máy ảo SQL Server: thiết lập cấu hình máy ảo SQL

Server

36 Kết quả mô phỏng (hình 6)

Một phần của tài liệu Tài liệu Đồ án tốt nghiệp - Sơ đồ mạch lượng tử pptx (Trang 29 - 36)