THUẬT TOÁN ỨNG DỤNG Quy hoạch động Nội dung 1 Ý tưởng quy hoạch động 2 Bài toán đoạn con lớn nhất 3 Bài toán dãy con chung dài nhất 4 Bài toán đếm số dãy con có tổng cho trước 5 Bài toán xếp ba lô 6 P[.]
THUẬT TOÁN ỨNG DỤNG Quy hoạch động Nội dung Ý tưởng quy hoạch động Bài toán đoạn lớn Bài toán dãy chung dài Bài toán đếm số dãy có tổng cho trước Bài tốn xếp ba lơ Phân tích quy hoạch động Bài tập TRƯƠNG XUÂN NAM Phần Ý tưởng quy hoạch động TRƯƠNG XUÂN NAM Top-down vs Bottom-up TRƯƠNG XUÂN NAM Top-down Fibo(5) Fibo(4) Fibo(3) Fibo(2) Fibo(1) Fibo(3) Fibo(2) Fibo(1) Fibo(1) Fibo(0) Fibo(2) Fibo(1) Fibo(1) Fibo(0) Fibo(0) TRƯƠNG XUÂN NAM Bottom-up Fibo(1) Fibo(0) Fibo(2) Fibo(1) Fibo(1) Fibo(3) Fibo(0) Fibo(2) Fibo(4) Fibo(1) Fibo(0) Fibo(2) Fibo(1) Fibo(3) Fibo(5) TRƯƠNG XUÂN NAM Top-down vs Bottom-up ▪ Top-down: ▪ Nhìn theo hướng từ xuống ▪ Chia toán lớn thành toán nhỏ ▪ Tiếp cận chia để trị ▪ Bottom-up: ▪ Nhìn theo hướng từ lên ▪ Giải toán nhỏ trước ▪ Tổ hợp lời giải nhỏ thành lời giải toán lớn ▪ Quy hoạch động: ▪ Dynamic programming (Richard Bellman, 1953) ▪ Thường dùng cho toán tối ưu ▪ Nguyên tắc: lời giải tối ưu toán lớn sử dụng kết tối ưu toán TRƯƠNG XUÂN NAM Phần Bài toán đoạn lớn TRƯƠNG XUÂN NAM Bài toán đoạn lớn ▪ Đã giới thiệu từ buổi học ▪ Cho dãy A = (a1, a2, an-1, an), tìm đoạn (dãy liên tiếp) A có tổng phần tử lớn ▪ Giải: ▪ Đặt Si tổng lớn đoạn kết thúc ▪ Kết cần tìm = max(S1, S2, Sn-1, Sn) ▪ Tính Sk: • 𝑆1 = 𝑎1 𝑎 • 𝑆𝑘 = ቊ 𝑘 𝑎𝑘 + 𝑆𝑘−1 𝑛ế𝑢 𝑆𝑘−1 ≤ 𝑛ế𝑢 𝑆𝑘−1 > ▪ Quy hoạch động: tính giá trị Sk sử dụng kết tính Sk-1 ▪ Cài đặt: dễ TRƯƠNG XUÂN NAM Phần Bài toán dãy chung dài TRƯƠNG XUÂN NAM 10 ... tưởng quy hoạch động Bài toán đoạn lớn Bài toán dãy chung dài Bài toán đếm số dãy có tổng cho trước Bài tốn xếp ba lơ Phân tích quy hoạch động Bài tập TRƯƠNG XUÂN NAM Phần Ý tưởng quy hoạch động TRƯƠNG... giải toán lớn ▪ Quy hoạch động: ▪ Dynamic programming (Richard Bellman, 1953) ▪ Thường dùng cho toán tối ưu ▪ Nguyên tắc: lời giải tối ưu toán lớn sử dụng kết tối ưu toán TRƯƠNG XUÂN NAM Phần Bài. ..