Giải thuật quy hoạch động (Dynamic Programming) Giải thuật Quy hoạch động (Dynamic Programming) gì? Giải thuật Quy hoạch động (Dynamic Programming) giống giải thuật chia để trị (Divide and Conquer) việc chia nhỏ toán thành tốn nhỏ sau thành tốn nhỏ Nhưng khơng giống chia để trị, tốn khơng giải cách độc lập Thay vào đó, kết toán lưu lại sử dụng cho toán tương tự toán gối (Overlapping Sub-problems) Chúng ta sử dụng Quy hoạch động (Dynamic Programming) có tốn mà chia thành toán tương tự nhau, kết chúng tái sử dụng Thường giải thuật sử dụng cho tối ưu hóa Trước giải toán con, giải thuật Quy hoạch động cố gắng kiểm tra kết toán giải trước Các lời giải toán kết hợp lại để thu lời giải tối ưu Do đó, nói rằng: Bài tốn ban đầu nên phân chia thành toán gối nhỏ Lời giải tối ưu toán thu sử dụng lời giải tối ưu toán Giải thuật Quy hoạch động sử dụng phương pháp lưu trữ (Memoization) – tức lưu trữ lời giải toán giải, sau cần giải lại tốn lấy sử dụng kết tính tốn So sánh Giải thuật tham lam giải thuật qui hoạch động Giải thuật tham lam (Greedy Algorithms) giải thuật tìm kiếm, lựa chọn giải pháp tối ưu địa phương bước với hi vọng tìm giải pháp tối ưu tồn cục Giải thuật Quy hoạch động tối ưu hóa tốn gối Giải thuật chia để trị giải thuật Qui hoạch động: Giải thuật chia để trị (Divide and Conquer) kết hợp lời giải toán để tìm lời giải tốn ban đầu Giải thuật Quy hoạch động sử dụng kết tốn sau cố gắng tối ưu toán lớn Giải thuật Quy hoạch động sử dụng phương pháp lưu trữ (Memoization) để ghi nhớ kết toán giải Ví dụ giải thuật Qui hoạch động Dưới số tốn giải sử dụng giải thuật Qui hoạch động: Dãy Fibonacci Bài toán tháp Hà Nội (Tower of Hanoi) Bài tốn ba lơ Giải thuật Quy hoạch động sử dụng hai phương pháp Phân tích (Top-down) Qui nạp (Bottom-up) Và tất nhiên dựa vào vòng đời làm việc CPU việc tham chiếu tới kết lời giải trước tốn việc giải lại toán ...Giải thuật Quy hoạch động sử dụng kết tốn sau cố gắng tối ưu toán lớn Giải thuật Quy hoạch động sử dụng phương pháp lưu trữ (Memoization) để ghi... hoạch động: Dãy Fibonacci Bài toán tháp Hà Nội (Tower of Hanoi) Bài toán ba lơ Giải thuật Quy hoạch động sử dụng hai phương pháp Phân tích (Top-down) Qui nạp (Bottom-up) Và tất nhiên dựa