Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
257,5 KB
Nội dung
QUY HOẠCH ĐỘNG Trường THPT Chuyên Biên Hòa – Hà Nam Bài toán quy hoạch động Trong toán học khoa học máy tính, quy hoạch động (dynamic programming) phương pháp hiệu giải toán tối ưu có ba tính chất sau đây: Bài tốn lớn phân rã thành tốn đồng dạng, tốn phân rã thành toán nhỏ … (recursive form) Lời giải tối ưu tốn sử dụng để tìm lời giải tối ưu toán lớn (optimal substructure) Hai tốn q trình phân rã có chung số tốn khác (overlapping subproblems) Tính chất thứ thứ hai điều kiện cần tốn quy hoạch động Tính chất thứ ba nêu lên đặc điểm toán mà cách giải phương pháp quy hoạch động hiệu hẳn so với phương pháp giải đệ quy thơng thường Với tốn có hai tính chất đầu tiên, thường nghĩ đến thuật toán chia để trị đệ quy: Để giải tốn lớn, ta chia thành nhiều toán đồng dạng giải độc lập tốn Khác với thuật tốn đệ quy, phương pháp quy hoạch động thêm vào chế lưu trữ nghiệm hay phần nghiệm tốn giải xong nhằm mục đích sử dụng lại, hạn chế thao tác thừa q trình tính toán Cách giải toán quy hoạch động Việc giải toán quy hoạch động phải qua nhiều bước, ta hình dung: Quy hoạch động = Chia để trị + Cơ chế lưu trữ nghiệm để sử dụng lại (Dynamic Programming = Divide and Conquer + Memoization) Khơng có “thuật tốn” cho biết tốn giải phương pháp quy hoạch động hay không? Khi gặp tốn cụ thể, phải phân tích tốn, sau kiểm chứng ba tính chất tốn quy hoạch động trước tìm lời giải phương pháp quy hoạch động Lớp tốn giải quy hoạch động là: • Bài tốn tối ưu: Max / Min • Bài tốn đếm – Đếm số cấu hình – Thứ tự từ điển • Bài toán lập bảng phương án – Xây dựng cấu hình – Trị chơi Nếu tốn đặt tốn quy hoạch động việc phải làm phân tích xem tốn lớn phân rã thành tốn đồng dạng nào, sau xây dựng cách tìm nghiệm tốn lớn điều kiện biết nghiệm toán - tìm cơng thức truy hồi Sau xây dựng cơng thức truy hồi, ta phải phân tích xem bước tính nghiệm tốn, cần lưu trữ toán với tốn cần lưu trữ tồn nghiệm hay phần nghiệm Từ xác định lượng nhớ cần thiết để lưu trữ, lượng nhớ cần huy động vượt dung lượng cho phép, cần tìm cơng thức khác chí, cách giải khác khơng phải quy hoạch động Một điều không phần quan trọng phải toán cần phải giải trước tốn nào, chí khái niệm toán nhỏ toán nghĩa nào, xác định tập tốn nhỏ giải trực tiếp, nghiệm chúng sau dùng làm sở giải toán lớn Trong đa số tốn quy hoạch động, bạn tìm công thức truy hồi xác định tập tốn sở coi phần lớn cơng việc xong Việc cài đặt chương trình giải cơng thức truy hồi: Cuối nghiệm toán ban đầu Nếu bảng phương án lưu trữ tồn nghiệm tốn việc đưa nghiệm tốn ban đầu, bảng phương án lưu trữ phần nghiệm, q trình tính cơng thức truy hồi, ta để lại “manh mối” (gọi vết) để kết thúc q trình giải, ta truy vết tìm tồn nghiệm Sau tơi trình bày số tốn quy hoạch động cụ thể mà giáo viên dùng trình giảng dạy thực tế trường cho học sinh: Một số toán giải quy hoạch động 3.1 Sub3Sequences Dãy dãy A cho trước dãy thu cách xóa số phần tử dãy A Mỗi dãy số dãy Dãy rỗng dãy dãy Cho trước dãy số A, B, C Ta nói X dãy chung A, B, C X dãy dãy • u cầu: Cho trước dãy số A, B, C Tìm dãy chung có chiều dài lớn dãy • Dữ liệu vào: Cho file Sub3Sep.inp gồm dòng, dịng mơ tả dãy số Dịng ghi số nguyên (|ai|