30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
AIw06_Exercises.pptx
1. Bài tập tuần 06
Link nộp, hạn nộp và hướng dẫn: xem “Exercise guidance.docx”
2. 0 1 2 3 4 5 6 7 8 9
Bài tập 1: Chạy tay thuật toán A* search để tìm đường đi trong 10x10 grid world như hình
dưới. Sử dụng straight-line distance heuristic hoặc một consistent heuristic khác (phải chứng
minh nó consistent trước khi dùng).
Yêu cầu: Chạy ít nhất 10 vòng lặp đầu. Tính giá trị f(n) cho tất cả frontier nodes ở từng bước
chạy (tương tự như demo trong bài giảng). Các node có thể ghi tên bằng tọa độ (hàng, cột) của
nó, ví dụ node goal là (8, 9).
0
1
2
3
4
5
6
7
8
9
3. 0 1 2 3 4 5 6 7 8 9
Bài tập 2: Cài đặt A* search để tìm đường đi trong 10x10 grid world như hình dưới.
Yêu cầu: sử dụng ngôn ngữ Python, solution ghi dưới dạng chuỗi tọa độ, ví dụ: [(0, 0), (0, 1), (1,
2), (2, 3), (3, 3)…] hoặc xuất dạng đồ họa (animation).
0
1
2
3
4
5
6
7
8
9
4. Gợi ý cho bài tập 2:
Chứa grid world map: có thể dùng 2D list, hoặc numpy array.
Animation: có thể dùng matplotlib.animation
Giao diện đồ họa: có thể dùng tkinter (có thể dùng với QtDesigner).
Có thể dùng code trong file week06_exercise.py và chỉnh sửa lỗi như mô tả trong file.
Khuyến khích thêm các chức năng như GUI, animation…
Lưu ý:
Nếu tham khảo code của người khác thì cần phải:
1. Ghi rõ nguồn trong file code, ví dụ # Nguồn phần giao diện: https://...
2. Đọc hiểu code được dùng, thể hiện bằng các comments giải thích của bạn.
3. Có đóng góp, cải tiến, ví dụ thêm GUI, animation nếu code tham khảo chưa có.
Có thể làm cá nhân hoặc làm nhóm nếu làm bài tập 2. Nếu làm nhóm thì cần tạo một file
excel ghi MSSV, họ tên các thành viên THAM GIA LÀM (thực làm chứ không ghi hết
nhóm cuối kỳ), và công việc từng thành viên làm. Khi nộp bài chỉ cần một thành viên
nhóm đại diện nộp.