Ứng dụng máy Turing để đo độ phức tạp thuật toán

Một phần của tài liệu (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 (Trang 29 - 30)

Với phần sơ lược về thuật toán ở trên ta có thể thấy với một thuật toán tính ưu việt được thể hiện ở hai thông số đó là thời gian xử lí (số bước hay còn gọi là số xung làm việc của máy tính) và không gian bộ nhớ (là số ô nhớ phải sử dụng trong quá trình đưa input thành output).

Khi Alan Turing phát biểu máy Turing thì ông đã chứng minh được mọi thuật toán đều có thể mô tả được bằng máy Turing, chính vì thế việc dùng máy Turing làm thước đo độ phức tạp của thuật toán là điều có thể làm được.

Hiện nay trên thế giới có nhiều cách để đánh giá độ phức tạp của thuật toán nhưng xét cho cùng thì chưa có thước đo chuẩn nào.

Máy Turing, là một máy ảo, hoàn toàn có thể trở thành một thước đo chính xác vì máy không phụ thuộc vào cấu hình phần cứng, máy chỉ dựa vào số bước chuyển đầu đọc và số lượng ô nhớ cần dùng.

Mặt khác vì mọi câu lệnh đều có thể chuyển về hàm chuyển của máy Turing nên hoàn toàn có thể đánh giá chính xác cách làm việc của một thuật toán.

Hơn nữa phát hiện của Turing rằng "phần mềm luôn có thể thay cho phần cứng" là then chốt của "ảo hóa" - công nghệ nền tảng của làn sóng hợp nhất đang định hình lại hệ thống IT của các công ty lớn. Khi chi phí cho năng lực tính toán và dung lượng lưu trữ tiếp tục đà rơi tự do từ chục năm nay, thì

NPC

P NP

ngày càng có thể biến càng nhiều phần cứng thành chương trình phần mềm - dùng một máy tính thật mạnh để chạy nhiều máy ảo.

Tất cả thiết bị phần cứng gắn vào các trung tâm dữ liệu doanh nghiệp - không chỉ server mà còn cả các ổ đĩa lưu trữ, thiết bị cân bằng tải, tường lửa, chuyển mạch và thậm chí cả cáp nối - thực chất là để thực hiện các lệnh. Ảo hóa đơn giản là biến các lệnh phần cứng thành mã lệnh chương trình (phần mềm) và loại bỏ cỗ máy vật lý. Điều này không chỉ tiết kiệm hàng đống tiền mà còn giúp hiện thực việc tự động hóa những qui trình CNTT thủ công trước đây. Một khi hạ tầng CNTT biến thành phần mềm, nó có thể được lập trình, dễ dàng và từ xa. Như thường lệ, chương trình phần mềm thay thế nhân công.

Một phần của tài liệu (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 (Trang 29 - 30)

Tải bản đầy đủ (PDF)

(74 trang)