Bài giảng Thuật toán ứng dụng: Thuật toán Tham lam cung cấp cho người học những kiến thức như: Ý tưởng tham lam; Bài toán đổi tiền; Bài toán lập lịch; Tóm lược về tiếp cận tham lam; Bài tập. Mời các bạn cùng tham khảo! | THUẬT TOÁN ỨNG DỤNG Thuật toán Tham lam Nội dung 1. Ý tưởng tham lam 2. Bài toán đổi tiền 3. Bài toán lập lịch 4. Tóm lược về tiếp cận tham lam 5. Bài tập TRƯƠNG XUÂN NAM 2 Phần 1 Ý tưởng tham lam TRƯƠNG XUÂN NAM 3 Ý tưởng tham lam Bài toán tối ưu tìm cực trị theo hàm mục tiêu hoặc ҧ Quay lui Duyệt toàn bộ mọi cấu hình x Ghi nhận cực trị của hàm f x Nhánh cận Vẫn là quay lui Quay lui sớm nếu đánh giá thấy nhánh hiện tại không đủ tốt Vấn đề thời gian thực hiện vẫn quá lớn do độ phức tạp tính toán vẫn là hàm mũ TRƯƠNG XUÂN NAM 4 Ý tưởng tham lam Cấu hình đầu tiên là rỗng A Tìm cách xây dựng dần dần các phần tử a1 a2 . aN Quy tắc xây dựng phần tử ak Nếu k gt N cấu hình A đã hoàn chỉnh ghi nhận và kết thúc Xây dựng tập Sk chứa mọi giá trị có thể của ak Chọn một giá trị trong Sk đem lại lợi ích lớn nhất cho hàm mục tiêu gán cho ak nhận giá trị này Lặp lại quá trình để xây dựng phần tử ak 1 Như vậy tham lam dựa trên quay lui nhưng Không có bước quay lui Không cần viết đệ quy Thế nào là lợi ích lớn nhất Phần 2 Bài toán đổi tiền TRƯƠNG XUÂN NAM 6 Bài toán đổi tiền Một cửa hàng bán lẻ sử dụng các đồng xu 1 5 10 25 100 cents để trả lại tiền thừa cho khách. Đưa ra cách thức trả cho khách sử dụng số lượng đồng tiền là ít nhất. Ví dụ - Cần đổi 34 cents thì sử dụng 1 đồng 25 cents 1 đồng 5 cents và 4 đồng 1 cent - Khách cần đổi 2 usd 89 cents - 2 đồng 1 usd - 3 đồng 25 cents - 1 đồng 10 cents - 4 đồng 1 cent TRƯƠNG XUÂN NAM 7 Bài toán đổi tiền N là giá trị tiền lẻ phải trả lại khách Đặt số đồng xu loại 100 25 10 5 1 cent cần trả lại khách lần lượt là a1 a2 a3 a4 a5 N 100 x a1 25 x a2 10 x a3 5 x a4 1 x a5 Bài toán trở thành tìm cấu hình A a1 a2 a3 a4 a5 có F A a1 a2 a3 a4 a5 nhỏ nhất Có thể giải bằng quay lui xét mọi cấu hình A và ghi nhận cấu hình tốt nhất Nhưng ta nhận thấy giá trị a1 càng lớn càng tốt Vì nếu a1 bớt đi một thì phải thay thế đồng xu 100 bằng các loại khác nhỏ hơn. Chẳng hạn 4 đồng xu 25 cents hoặc 10 đồng xu 10 cents hoặc 20 đồng xu 10 cent hoặc 100 đồng xu 1