TRƯỜNG ĐẠI HỌC BÁCH KHOA TPHCM KHOA KHOA HỌC VÀ KỸ THUẬT MÁY TÍNH co m MON TRÍ TUE NHÂN TÂO BÂÍ TÂP LỚN 2014-2015 ROBOCODE TOURNÂMENT Mục tiêu on e Củng cố kiến thức môn học Trí Tuệ Nhân Tạo (AI) Rèn luyện thêm kỹ lập trình, đặc biệt Java Rèn luyện cách đọc tài liệu (document) cách viết báo cáo (report) Tăng cường khả nghiên cứu nZ Giới thiệu nh V ie Theo wikipedia (http://vi.wikipedia.org/wiki/Robocode), Robocode chương trình trò chơi mà mục tiêu tạo robot, robot mô xe tăng đấu trường chiến đấu để tìm tiêu diệt robot khác, trang bị với hệ thống radar Si Một robot di chuyển tới, lui tốc độ khác di chuyển qua trái, qua phải Các radar tháp pháo chuyển sang trái sang phải độc lập với so với phần lại xe tăng Khẩu súng bắn Khi cài đặt trận đấu, ta xem trận đấu từ bên ngồi hình chơi Người chơi lập trình viên, người khơng ảnh hưởng trực tiếp vào trò chơi mà thay vào người chơi phải lập trình cho robot thơng minh xử lý phản ứng tất kiện xảy lĩnh vực chiến đấu Khi robot đối thủ lọt vào radar, kiện sinh hành động phù hợp robot thực Robot lấy thông tin đối thủ vùng quét radar tốc độ, heading, lượng lại, tên gốc heading với robot đối thủ, khoảng cách với đối thủ Dựa vào thông tin mà robot đưa hành động phù hợp Ví dụ, phát đối thủ vòng radar, robot dùng súng để bắn Các robot viết ngôn ngữ lập trình Java trò chơi Robocode chạy bất kz hệ điều hành có hỗ trợ tảng Java, bao gồm tất hệ thống phổ biến Windows, Mac OS X, Linux SinhVienZone.com https://fb.com/sinhvienzonevn Yêu cầu Phần lập trình Sinh viên lập thành nhóm người, tạo cho robot thơng minh để chiến đấu với nhóm sinh viên khác Để chiến đấu được, robot nhóm phải vượt qua vòng sơ tuyển với robot nhóm TA (Teaching Assistant, submit trước qua Sakai) Những robot vượt qua vòng sơ tuyển với robot nhóm TA thơng báo Sakai tiếp tục chuẩn bị để bước vào vòng đấu loại sau, chi tiết sau: Si nh V ie nZ on e co m Vòng sơ tuyển: đấu với robot nhóm TA Vòng sơ loại: Trong lớp thực hành, chọn nhóm lớp để bước vào vòng Tổng cộng có lớp thực hành, số nhóm tổng cộng vòng 36 nhóm Vòng bảng 1: Trong 36 nhóm vượt qua vòng trước chia thành bảng, bảng 4-5 nhóm Kết chia bảng lịch thi đấu công bố sau Mỗi bảng chọn nhóm nhì bảng để tiếp tục vào vòng Như vậy, sau vòng có * = 16 nhóm tiếp Vòng bảng 2: Trong 16 nhóm vượt qua vòng trước, chia thành bảng A, B, C, D, bảng nhóm Kết chia bảng lịch thi đấu công bố sau Mỗi bảng chọn nhóm nhì bảng để tiếp vào vòng sau Vòng tứ kết đến chung kết: Theo thể thức vòng loại trực tiếp World Cup: Vòng tứ kết: nhóm có trận đấu: Nhất bảng A – Nhì bảng B (trận 1) Nhất bảng B – Nhì bảng A (trận 2) Nhất bảng C – Nhì bảng D (trận 3) Nhất bảng D – Nhì bảng C (trận 4) Vòng bán kết: Thắng trận – Thắng trận (trận 5) Thắng trận – Thắng trận (trận 6) Vòng chung kết: Thắng trận – Thắng trận Cách đánh giá phần lập trình: SinhVienZone.com Khơng vượt vòng sơ tuyển: điểm Chỉ vượt qua vòng sơ tuyển: điểm Vượt qua vòng sơ loại, khơng vượt qua vòng bảng 1: điểm Vượt qua vòng bảng 1, khơng vượt qua vòng bảng 2: điểm Vượt qua vòng bảng 2, khơng vượt qua vòng tứ kết: điểm Vượt qua vòng tứ kết, khơng vượt qua vòng bán kết: điểm Vượt qua vòng bán kết, thua trận chung kết: 9.5 điểm Vô địch: 10 điểm https://fb.com/sinhvienzonevn Phần báo cáo Bài báo cáo viết MS Word (xuất file pdf) Latex (xuất file pdf) in bảng giấy nộp lại cho TA vào cuối mơn học Các phần cần có báo cáo: Liệt kê dẫn nguồn javadoc phương thức (method) mà nhóm sử dụng từ mã nguồn robocode Trình bày javadoc phương thức (method) mà nhóm tự tạo Các giải thuật, kiến thức mơn AI mà nhóm sử dụng Các giải thuật, kiến thức khác mà nhóm sử dụng Trình bày chi tiết giải thuật, chiến thuật mà nhóm sử dụng để tạo robot (Lưu { phải có ví dụ cụ thể số trường hợp) m co Tham khảo http://robowiki.net/wiki/Robocode http://robocode.sourceforge.net/ nZ on e Sinh viên tham khảo trang web sau để đọc tài liệu (document) – lưu {, để tránh trường hợp không đọc tài liệu trang web không hoạt động, sinh viên phải có nhiệm vụ lưu trang cần thiết trang web để đọc offline cần thiết, khơng viện l{ liên quan đến nguồn tài liệu không hoạt động để làm không được, thời điểm 13/4/2015, trang web hoạt động bình thường: nh V ie Để thống lúc chấm chạy chương trình, nhóm sử dụng mã nguồn tài liệu tham khảo ứng với phiên robocode-1.9.2.4-setup.jar đính kèm, lưu { để cài đặt được, cần nhấn chuột phải, chọn property, unblock Cách đánh giá Si Như nói trên, có vòng sơ tuyển trực tiếp với robot nhóm TA, vượt qua vòng này, nhóm viết báo cáo nộp bài, thức tính điểm Nếu khơng vượt qua vòng này, nhóm bị nhận điểm cho tập lớn Sau vượt qua vòng sơ tuyển, nhóm tùy ý chỉnh sửa robot để tối ưu chiến đấu vòng sau Mỗi trận đấu có hiệp, nhóm thắng hiệp nhóm chiến thắng, trường hợp hòa, dựa vào tổng điểm (total score xem thêm đây: http://robowiki.net/wiki/Robocode/Scoring) Luật chơi theo trang web Đối với vòng trước vòng tứ kết, TA ghi nhận lại kết trận đấu tổng hợp danh sách đội vào vòng cách chia bảng, thời gian thi đấu Đối với vòng tứ kết, bán kết chung kết tổ chức vào buổi riêng biệt vào cuối học kz, dự kiến tuần dự trữ SinhVienZone.com https://fb.com/sinhvienzonevn Điểm tổng kết đánh sau: Tổng điểm = Điểm số tối đa mà đội nhận – + điểm làm báo cáo Số điểm báo cáo đánh giá từ đến sau: 0: báo cáo tệ, không đáp ứng yêu cầu 1: báo cáo sơ sài, ghi chung chung, không hiểu { nghĩa thật 2: báo cáo được, đáp ứng yêu cầu 3: báo cáo tốt, đáp ứng yêu cầu bản, trình bày rõ ràng, hợp lý, dễ hiểu m Nộp co sinh viên lớp thực hành (không lớp khác) bắt cặp với để tạo nhóm Rồi submit để TA tổng hợp được: http://goo.gl/forms/ufxQ90FMPy e Nhóm sinh viên nộp lần vào Sakai, lưu {, nhóm cần người nộp đủ on Đợt file jar Java package robot nhóm (cách đặt tên sau: vn.edu.hcmut.ai.tennhom_spring2015) xem thêm cách package robot nhóm đây: http://robowiki.net/wiki/Robocode/Package_Robot để sơ tuyển với robot TA nZ Deadline đợt 1: 10/05/2015 nh V Deadline đợt 2: 24/05/2015 ie Đợt file zip bao gồm file jar Java package robot nhóm file pdf báo cáo sau hoàn thành xong mùa giải Xử lý gian lận Si Xử theo luật nhà trường SinhVienZone.com https://fb.com/sinhvienzonevn ... vn.edu.hcmut.ai.tennhom_spring2015) xem thêm cách package robot nhóm đây: http://robowiki.net/wiki /Robocode/ Package_Robot để sơ tuyển với robot TA nZ Deadline đợt 1: 10/05 /20 15 nh V Deadline đợt 2: 24 /05 /20 15 ie Đợt... không được, thời điểm 13/ 4 /20 15, trang web hoạt động bình thường: nh V ie Để thống lúc chấm chạy chương trình, nhóm sử dụng mã nguồn tài liệu tham khảo ứng với phiên robocode- 1.9 .2. 4-setup.jar đính... với robot nhóm TA, vượt qua vòng này, nhóm viết báo cáo nộp bài, thức tính điểm Nếu khơng vượt qua vòng này, nhóm bị nhận điểm cho tập lớn Sau vượt qua vòng sơ tuyển, nhóm tùy ý chỉnh sửa robot