1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán

74 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN ANH TÙNG CÀI ĐẶT MÁY TURING VÀ ỨNG DỤNG MÁY TURING ĐÁNH GIÁ ĐỘ PHỨC TẠP THUẬT TOÁN LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUN - 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN ANH TÙNG CÀI ĐẶT MÁY TURING VÀ ỨNG DỤNG MÁY TURING ĐÁNH GIÁ ĐỘ PHỨC TẠP THUẬT TỐN Chun ngành: KHOA HỌC MÁY TÍNH Mã số: 60480101 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học: PGS.TSKH NGUYỄN XUÂN HUY THÁI NGUYÊN - 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com i LỜI CAM ĐOAN Tơi xin cam đoan luận văn tơi thực hiện, hướng dẫn khoa học PGS.TSKH Nguyễn Xuân Huy, số liệu kết nghiên cứu luận văn hoàn toàn trung thực chưa sử dụng để bảo vệ cơng trình khoa học nào, thơng tin, tài liệu trích dẫn luận văn rõ nguồn gốc Mọi giúp đỡ cho việc hoàn thành luận văn cảm ơn Nếu sai tơi hồn tồn chịu trách nhiệm Thái Nguyên, tháng năm 2015 Tác giả Nguyễn Anh Tùng Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com ii LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành đến thầy giáo PGS.TSKH Nguyễn Xuân Huy định hướng nhiệt tình hướng dẫn, giúp đỡ em trình làm luận văn Em xin gửi lời biết ơn sâu sắc đến quý thầy cô giáo trường Đại học Công nghệ thông tin truyền thông, thầy giáo, cô giáo Viện công nghệ thông tin Hà Nội truyền đạt kiến thức kinh nghiệm quý báu cho chúng em thời gian học tập Xin chân thành cảm ơn bạn bè, đồng nghiệp, bạn học viên lớp cao học CK12I, người thân gia đình động viên, chia sẻ, tạo điều kiện giúp đỡ suốt trình học tập làm luận văn Thái Nguyên, tháng năm 2015 Học viên Nguyễn Anh Tùng Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com iii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ii MỤC LỤC iii DANH MỤC BẢNG BIỂU, HÌNH VẼ v MỞ ĐẦU Chƣơng TỔNG QUAN MƠ HÌNH MÁY TURING 1.1 Giới thiệu chung 1.2 Cấu trúc máy Turing 1.3 Hoạt động máy Turing 1.4 Trạng thái sơ đồ trạng thái máy Turing 1.5 Máy Turing định nghĩa thuật toán 14 1.5.1 Độ phức tạp thuật toán 14 1.5.2 Ứng dụng máy Turing để đo độ phức tạp thuật toán 20 1.6 Kết luận 21 Chƣơng CÀI ĐẶT MÁY TURING NGUYÊN THỦY VÀ MỘT SỐ CẢI TIẾN 22 2.1 Cài đặt Máy Turing 22 2.1.1 Giao diện chương trình 27 2.1.2 Cấu trúc liệu đầu vào 30 2.1.3 Các hàm xử lí liệu 34 2.2 Phát triển nhớ máy Turing 37 2.2.1 Máy Turing nhiều băng 37 2.2.2 Cài đặt cấu trúc ngăn xếp (Stack) 37 2.2.3 Cài đặt cấu trúc hàng đợi (Queue) 39 2.2.4 Cài đặt nhớ imem cmem 40 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com iv 2.4 Kết luận 42 Chƣơng MỘT SỐ CHƢƠNG TRÌNH ỨNG DỤNG MÁY TURING ĐO ĐỘ PHỨC TẠP THUẬT TOÁN 44 3.1 Bài toán trừ vào số tự nhiên 44 3.2 Biểu diễn số thập phân n thành (n+1) vạch | 47 3.3 Biểu diễn (n+1) vạch | thành số tự nhiên n 50 3.4 Cộng hai số tự nhiên lớn 53 3.5 Kết luận 62 KẾT LUẬN 64 TÀI LIỆU THAM KHẢO 65 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com v DANH MỤC BẢNG BIỂU, HÌNH VẼ Bảng Bảng 1.1 So sánh câu lệnh cách viết thông thường cách viết gộp Bảng 1.2 Trạng thái máy Turing 10 Hình vẽ Hình 1.1 Mơ hình máy Turing Hình 1.2 Mối quan hệ lớp P NP 18 Hình 1.3 Minh hoạ phép dẫn tốn 1 thành 2 thời gian đa thức 19 Hình 1.4 Mối quan hệ lớp P, NP NPC 20 Hình 2.1 Giao diện máy Turing 27 Hình 2.2 Chọn tệp mặc định 28 Hình 2.3 Chọn chương trình người dùng tạo 28 Hình 2.4 Nhập liệu từ bàn phím 29 Hình 2.5 Hiển thị kết 29 Hình 2.6 Hiển thị kết trung gian chương trình 30 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com MỞ ĐẦU Thuật toán khái niệm quan trọng tin học Thuật toán xuất phát từ nhà khoa học Arập Abu Ja’far Mohammed ibn Musa al Khowarizmi Chúng ta xem thuật tốn cơng cụ dùng để giải tốn xác định trước Việc nghiên cứu thuật toán độ phức tạp thuật tốn có vai trị quan trọng khoa học máy tính máy tính giải vấn đề có hướng dẫn giải xác phù hợp với điều kiện thực tế (điều kiện cơng nghệ chi phí nhớ, thời gian) Nếu hướng dẫn giải sai không phù hợp máy tính khơng thể giải tốn lãng phí tài ngun Trong khoa học máy tính, thuật tốn định nghĩa dãy hữu hạn thao tác xếp theo trình tự định cho sau thực dãy thao tác ấy, từ input toán, ta nhận output cần tìm Đối với thuật tốn điều quan tâm đến độ phức tạp nó, đánh giá xác độ phức tạp thuật tốn giúp cho q trình lựa chọn sử dụng Trước có máy tính điện tử Alan Turing trình bày mơ hình máy Turing vào năm 1936 dành cho thí nghiệm tưởng tượng để tìm hiểu giới hạn tính tốn máy móc Tuy khơng trực tiếp ảnh hưởng tới việc chế tạo máy tính điện tử máy Turing cơng cụ đo hiệu thuật tốn toán cụ thể Bỏ qua yếu tố phần cứng cơng nghệ hành tốn giải máy tính phải có thuật tốn để xử lý theo Alan Turing, tất thuật tốn mơ tả lại mơ hình máy Turing, việc đánh giá thuật toán máy Turing cho kết xác cơng Độ phức tạp thuật toán đánh giá máy Turing theo hai tiêu chí là: thời gian (số nhịp làm việc máy Turing) nhớ (số nhớ cần sử dụng q trình máy làm việc) Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com Thời gian (số nhịp làm việc máy Turing): số lần dịch chuyển đầu đọc băng Bộ nhớ (số ô nhớ cần sử dụng trình máy làm việc): số ô bang mà máy Turing ghi kí tự xử lý Vì học viên chọn đề tài: “Cài đặt máy Turing ứng dụng máy Turing đánh giá độ phức tạp thuật toán” với mục đích nghiên cứu cơng cụ đánh giá thuật tốn Nội dung luận văn bao gồm: Chương 1: Luận văn trình bày tổng quan máy Turing vấn đền liên quan đến thuật toán Chương 2: Luận văn cài đặt máy Turing ngôn ngữ C++ cải tiến số nhớ tăng hiệu làm việc máy Chương 3: Luận văn sử dụng máy Turing để giải số toán đánh giá độ phức tạp cụ thể Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com Chƣơng TỔNG QUAN MƠ HÌNH MÁY TURING Trong chương luận văn học viên giới thiệu lại số định nghĩa máy Turing thuật tốn Trong có mơ tả máy Turing học viên cài đặt, từ quan hệ máy Turing độ phức tạp thuật toán 1.1 Giới thiệu chung Máy Turing mơ hình thiết bị xử lý kí tự, đơn giản, thực tất thuật tốn máy tính Các máy Turing Alan Turing trình bày năm 1936 Các máy Turing không dành cho việc trực tiếp tạo máy tính thực tế mà dành cho thí nghiệm tưởng tượng để tìm hiểu giới hạn việc tính tốn máy móc Việc nghiên cứu tính chất máy Turing cho nhiều kiến thức quan trọng lĩnh vực khoa học máy tính lý thuyết độ phức tạp thuật toán [2] Trong luận đề Church-Turing khẳng định hàm toán học tính dùng máy Turing để tính tốn có phép định nghĩa khái niệm tính hàm thuật tốn Máy Turing có nhiều dạng đồng khả năng, tức có nhiều mơ hình định nghĩa cho máy Turing chúng tương đương Về mô hình máy Turing gồm phần sau: - Một điều khiển hữu hạn - Một băng chia thành - Một đầu đọc-ghi, lần đọc duyệt qua ô băng để đọc hay viết ký hiệu.[2] Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn download by : skknchat@gmail.com ... THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN ANH TÙNG CÀI ĐẶT MÁY TURING VÀ ỨNG DỤNG MÁY TURING ĐÁNH GIÁ ĐỘ PHỨC TẠP THUẬT TỐN Chun ngành: KHOA HỌC MÁY TÍNH Mã số: 60480101 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH... thuật toán 14 1.5.1 Độ phức tạp thuật toán 14 1.5.2 Ứng dụng máy Turing để đo độ phức tạp thuật toán 20 1.6 Kết luận 21 Chƣơng CÀI ĐẶT MÁY TURING NGUYÊN THỦY VÀ MỘT... (số ô nhớ cần sử dụng trình máy làm việc): số ô bang mà máy Turing ghi kí tự xử lý Vì học viên chọn đề tài: ? ?Cài đặt máy Turing ứng dụng máy Turing đánh giá độ phức tạp thuật toán? ?? với mục đích

Ngày đăng: 09/04/2022, 10:09

Xem thêm:

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Mô hình máy Turing - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 1.1. Mô hình máy Turing (Trang 11)
Bảng 1.1. So sánh câu lệnh giữa cách viết thông thƣờng và cách viết gộp  - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Bảng 1.1. So sánh câu lệnh giữa cách viết thông thƣờng và cách viết gộp (Trang 15)
Hàm chuyển δ được cho trong bảng sau: - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
m chuyển δ được cho trong bảng sau: (Trang 19)
+ Các phép chuyển hình thái của T MM trên input 0011: - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
c phép chuyển hình thái của T MM trên input 0011: (Trang 20)
Hình 1.2. Mối quan hệ giữa lớ pP và NP - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 1.2. Mối quan hệ giữa lớ pP và NP (Trang 27)
Hình 1.3. Minh hoạ một phép dẫn bài toán 1 thành 2 - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 1.3. Minh hoạ một phép dẫn bài toán 1 thành 2 (Trang 28)
Hình 1.4. Mối quan hệ giữa lớp P, NP và NPC - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 1.4. Mối quan hệ giữa lớp P, NP và NPC (Trang 29)
Hình 2.1. Giao diện máy Turing - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 2.1. Giao diện máy Turing (Trang 36)
Hình 2.2. Chọn tệp mặc định - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 2.2. Chọn tệp mặc định (Trang 37)
Hình 2.3. Chọn chƣơng trình do ngƣời dùng tạo - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 2.3. Chọn chƣơng trình do ngƣời dùng tạo (Trang 37)
Hình 2.4. Nhập dữ liệu từ bàn phím - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 2.4. Nhập dữ liệu từ bàn phím (Trang 38)
Hình 2.5. Hiển thị kết quả - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 2.5. Hiển thị kết quả (Trang 38)
Hình 2.6. Hiển thị kết quả trung gian của chƣơng trình - (LUẬN văn THẠC sĩ) cài đặt máy turing và ứng dụng máy turing đánh giá độ phức tạp thuật toán
Hình 2.6. Hiển thị kết quả trung gian của chƣơng trình (Trang 39)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN