TRƢỜNG ĐẠI HỌC CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc ===================== ------------ ĐỀ CƢƠNG CHI TIẾT MÔN HỌC: TRÍ TUỆ NHÂN TẠO 1. Thông tin về các giảng viên môn học Chức STT Họ và tên danh, học vị PGS. Phạm Bảo Sơn 1 Nguyễn Thanh 2 Thuỷ Nguyễn Văn Vinh 3 Địa chỉ liên hệ Điện thoại/Email Ghi chú Trưởng môn TS. PTN TTNM sonpb@vnu.edu.vn GS. TS. BM KHMT nguyenthanhthuy@vnu.edu.vn Giảng viên TS BM KHMT vinhnv@vnu.edu.vn học Giảng viên 2. Thông tin chung về môn học - Tên môn học Trí tuệ nhân tạo - M s môn học INT3401 - S tín ch 3 - Giờ tín ch đ i với các hoạt động (LT/ThH/TH): 45/0/0 - Môn học tiên quyết: INT2203 – Cấu trúc dữ liệu và giải thuật - Các yêu cầu đ i với môn học (nếu có) Sinh viên có kiến thức t t về cấu trúc dữ liệu và giải thuật, logic, kỹ năng lập trình t t. - Bộ môn, Khoa phụ trách môn học Bộ môn KHMT, Khoa CNTT 3. Mục tiêu môn học Cung cấp cho sinh viên các kiến thức nền tảng nhập môn trí tuệ nhân tạo các phương pháp biểu diễn vấn đề, các phương pháp tìm kiếm, các phương pháp biểu diễn tri thức, các thuật toán suy diễn tự động, các phương pháp lập luận không chắc chắn. Sinh viên có khả năng áp dụng các kiến thức vào giải quyết các bài toán thực tế. Sinh viên biết cách đưa ra biểu diễn thích hợp cho 1 vấn đề cụ thể, biết cách biểu diễn tri thức và có thể đề xuất các phương pháp tìm kiếm, lập luận thích hợp. 4. Chuẩn đầu ra Mục tiêu Nội dung 1. Kiến thức Bậc 1 Bậc 2 Bậc 3 Bậc 4 Mục tiêu Nội dung 1.3.1 Hiểu và vận dụng được các kiến thức liên quan đến cấu trúc dữ liệu về mảng, danh sách liên kết, hàng đợi, ngăn xếp, cây nhị phân, bảng băm; 1.3.2 Vận dụng được các thuật toán cơ bản liên quan đến sắp xếp, tìm kiếm và các thuật toán khác trên các cấu trúc dữ liệu; 1.3.4 Hiểu và vận dụng được các khái niệm cơ bản của lý thuyết xác suất; 1.4.1 Hiểu và vận dụng được các kiến thức cơ bản về Toán rời rạc để xây dựng các thuật toán, t i ưu các giải pháp trong công nghệ; 1.5.1 Lập trình thành thạo một s ngôn ngữ lập trình thông dụng; 1.5.2 Vận dụng các kiến thức về phân tích thiết kế để xây dựng yêu cầu, tiến hành phân tích và thiết kế các hệ th ng phần mềm; 1.5.3 Vận dụng được các kiến thức về trí tuệ nhân tạo, học máy, xử lý ngôn ngữ tự nhiên, v.v. để xây dựng các chương trình có khả năng xử lý thông minh cho nhiều loại dữ liệu khác nhau như văn bản, tiếng nói, ảnh, sinh học. 1.5.7 Biết cách cập nhật các kiến thức hiện đại trong ngành Khoa học máy tính 1.6.2 Biết nghiên cứu, xây dựng sản phẩm phục vụ cho mục đích khoa học hoặc đời s ng 2. Kỹ năng (nếu có) 2.1.1.2 Lập trình thành thạo và biết sử dụng các công cụ phần mềm hỗ trợ; 2.1.1.5 Biết tìm kiếm, cập nhật, tổng hợp, khai thác thông tin; 2.1.1.6 Đọc hiểu tài liệu tiếng Anh chuyên ngành; 2.1.1.8 Biết sử dụng các kiến thức chuyên môn một cách linh hoạt 2.1.2.1 Có kỹ năng phát hiện vấn đề 2.1.2.2 Có kỹ năng đánh giá và phân tích vấn đề 2.1.2.3 Có kỹ năng giải quyết vấn đề chuyên môn 2.1.2.4 Có kỹ năng mô hình hóa. 2.1.3.4 Có kỹ năng áp dụng kiến thức vào thực tế 2.1.4.1 Có tư duy logic 2.1.4.2 Có tư duy phân tích, tổng hợp 2.1.4.3 Có tư duy toàn cục 2.2.1.1 Có tư duy sáng tạo 2.2.1.3 Biết đề xuất sáng kiến 2.2.2.1 Biết hợp tác với các thành viên khác trong nhóm, 2.2.2.2 Biết cách chia sẻ thông tin trong nhóm 2.2.4.1 Biết cách lập luận, sắp xếp ý tưởng 5. T m t t nội dung môn học Bậc 1 Bậc 2 Bậc 3 Bậc 4 X X X X X X X X X X X X X X X X X X X X X X X X X X Môn học cung cấp các kiến thức nền tảng trong lĩnh vực trí tuệ nhân tạo bao gồm các phương pháp giải quyết vấn để sử dụng phương pháp tìm kiếm, các chiến lược tìm kiếm có kinh nghiệm, tìm kiếm thỏa m n ràng buộc, tìm kiếm có đ i thủ trong trò chơi, các phương pháp biểu diễn tri thức và lập luận tự động, lập luận không chắc chắn. Người học được giới thiệu các khái niệm và kỹ thuật cơ bản về học máy. Môn học cũng giới thiệu với người học ngôn ngữ lập trình logic và một s công cụ để xây dựng các hệ th ng thông minh. 6. Nội dung chi ti t môn học Chƣơng 1. Mở đầu 1.1. Giới thiệu môn học 1.2. Tổng quan lịch sử của lĩnh vực trí truệ nhân tạo Chƣơng 2. Các chi n lƣợc tìm ki m 2.1. Giải quyết vấn đề bằng tìm kiếm 2.2. Các tính chất của phương pháp tìm kiếm 2.3. Các chiến lược tìm kiếm mù Chƣơng 3. Các chi n lƣợc tìm ki m c kinh nghiệm 3.1. Các phương pháp tìm kiếm t t nhất trước 3.2. Thuật toán tìm kiếm A* 3.3. Các hướng dẫn để xây dựng cận chấp nhận được cho A* Chƣơng 4. Các chi n lƣợc tìm ki m nâng cao 4.1. Tìm kiếm thỏa m n các ràng buộc 4.2. Tìm kiếm cục bộ 4.3. Tìm kiếm mô phỏng luyện kim Chƣơng 5. Tìm ki m c đối thủ trong trò chơi 5.1. 5.2. 5.3. 5.4. Cây trò chơi Minimax Phương pháp cắt cụt alpha-beta Ứng dụng thực tế Chƣơng 6. Logic mệnh đề 6.1. 6.2. 6.3. 6.4. Biểu diễn tri thức Cú pháp và ngữ nghĩa Dạng chuẩn tắc Luật suy diễn và luật phân giải Chƣơng 7. Logic vị từ cấp một 7.1. 7.2. 7.3. 7.4. Biểu diễn tri thức Cú pháp và ngữ nghĩa Luật suy diễn Luật phân giải và các chiến lược phân giải Chƣơng 8. Lập trình sử dụng logic 8.1. Prolog 8.2. Luật phân giải và chiến lược tìm kiếm trong Prolog 8.3. Các ứng dụng Chƣơng 9. Tri thức và lập luận không ch c ch n 9.1. 9.2. 9.3. 9.4. Biểu diễn tri thức không chắc chắn Một s khái niệm cơ bản Định lý Bayes Mạng xác suất Chƣơng 10. Giới thiệu về học máy 10.1. Giới thiệu 10.2. Cây quyết định 10.3. Phân loại Naïve Bayes 7. Học liệu 7.1. Học liệu b t buộc [1] Đinh Mạnh Tường. Trí tuệ nhân tạo. NXB Khoa học & Kỹ thuật, 2002 [2] Russel S. and Norvig P. Artificial Intelligence: A modern approach. Prentice Hall 2008. 7.2 Học liệu tham khảo [3] Ben Coppin. Artificial Intelligence Illuminated. Jones and Bartlett Publishers, 2004. 8. Hình thức tổ chức dạy học 8.1. Phân bổ lịch trình giảng dạy trong 1 học kỳ (15 tuần) Hình thức dạy Lý thuyết Số ti t/tuần Từ tuần …đ n tuần… 3 1-15 Thực hành 0 Tự học bắt buộc 0 Địa điểm Giảng đường (Vd.Phòng máy/ Phòng thí nghiệm) 8.2 Lịch trình dạy cụ thể Tuần Nội dung giảng dạy lý thuyết/thực hành Nội dung sinh viên tự học 1 Giới thiệu về Trí tuệ nhân tạo 2 Giải quyết vấn đề bằng tìm kiếm và các Đệ quy trong vét cạn chiến lược tìm kiếm mù 3 Các chiến lược tìm kiếm có kinh nghiệm 4 Ứng dụng các chiến lược tìm kiếm trong Làm bài tập ở nhà. Tìm hiểu giải thuật giải quyết vấn đề di truyền cho bài toán tìm kiếm. Các hệ th ng Trí tuệ nhân tạo thực tế Tìm kiếm hai chiều trong bài toán đ i xứng 5 Tìm kiếm thoả mãn các ràng buộc Ứng dụng vào giải quyết bài toán n con hậu 6 Tìm kiếm có đ i thủ trong trò chơi Ứng dụng trong bài toán chơi cờ vua 7 Làm bài tậo về tìm kiếm thoả mãn các ràng Làm bài tập ở nhà buộc và tìm kiếm có đ i thủ 8 Logic mệnh đề 9 Logic vị từ cấp 1 10 Làm bài tập về biểu diễn tri thức sử dụng Làm bài tập ở nhà logic 11 Lập trình logic sử dụng Prolog Cài đặt và sử dụng swi-prolog 12 Làm bài tập về Prolog Lập trình sử dụng swi-prlog 13 Tri thức và lập luận không chắc chắn Mạng sắc xuất 14 Giới thiệu về học máy Ứng dụng của học máy trong thực tế 15 Ôn tập và tổng kết Thực hành biểu diễn tri thức sử dụng logic mệnh để Thực hành biểu diễn tri thức sử dụng logic vị từ 9. Chính sách đối với môn học và các yêu cầu khác của giảng viên - Sinh viên ngh quá 20% s buổi học lý thuyết (3 buổi học) sẽ không được thi cu i kỳ. Mỗi buổi học sẽ có điểm danh. - Sinh viên tích cực làm bài tập trên lớp, tham gia thảo luận, trả lời câu hỏi (ở lớp hoặc trên diễn đàn của trang web môn học) sẽ được tính vào điểm chuyên cần. - Với các nội dung liên quan đến lập trình (ví dụ bài tập lớn) nếu sinh viên sao chép code của bạn hoặc cho bạn sao chép code sẽ bị điểm 0. 10. Phƣơng pháp, hình thức kiểm tra, đánh giá k t quả học tập môn học 10.1. Mục đích và trọng số kiểm tra, đánh giá Hình thức Chuyên cần Bài tập lớn Phƣơng pháp Điểm danh, đóng góp ý kiến trao đổi trên lớp, forum, làm bài tập trên lớp. Dự án lập trình nhỏ làm việc theo nhóm hoặc cá nhân. Thi viết Kiểm tra giữa kỳ Mục đích Đánh giá thái độ, ý thức họp tập trong su t kỳ Đánh giá kỹ năng lập trình, xây dựng hệ th ng thực tế vận dụng kiến thức đ học Đánh giá kiến thức, kỹ năng sinh viên đạt được sau nửa học kỳ Trọng số 10% 20% 10% Hình thức Phƣơng pháp Thi viết Mục đích Đánh giá kiến thức, kỹ năng sinh viên đạt được khi kết thúc môn học Thi kết thúc môn học Tổng Trọng số 60% 100% 10.2. Tiêu chí đánh giá - Tiêu chí đánh giá cụ thể với từng đầu điểm của môn học: + Bài tập lớn: Lập trình giải quyết các bài toán thực tế sử dụng các giải thuật tìm kiếm có kinh nghiệm hoặc biểu diễn tri thức sử dụng logic và giải quyết vấn đề sử dụng prolog. + Kiểm tra giữa kỳ nắm được kiến thức đ học trong tuần 1 đến tuần 7; khả năng vận dụng kiến thức về các giải thuật tìm kiếm mù và có kinh nghiệm, tìm kiếm thoả m n các ràng buộc và tìm kiếm có đ i thủ. + Kết thúc môn nắm được kiến thức, kỹ năng đ học trong cả 15 tuần của học kỳ. - Cụ thể việc đánh giá kiến thức, kỹ năng của sinh viên theo các mức đáp ứng được chuẩn đầu ra, mức khá, mức giỏi: Tùy vào mức độ hoàn thành các bài kiểm tra trên mà sinh viên sẽ được phân loại thành trung bình, khá, và giỏi. - Giỏi hoàn thành hết các bài tập được giao với mức độ hoàn thiện cao - Khá hoàn thành được các bài tập cơ bản, chưa làm được các bài tập nâng cao hoặc làm chưa hoàn thiện - Trung bình còn một s nội dung chưa làm được. 10.3. Lịch thi và kiểm tra Hình thức thi và kiểm tra Chuyên cần Kiểm tra giữa kỳ Bài tập lớn Thi cu i kỳ Duyệt Thời gian Hàng tuần Tuần 8 Tuần 7 Theo lịch của Trường Chủ nhiệm Khoa Chủ nhiệm bộ môn