TRÍ TUỆ NHÂN TẠO. Nguyễn Nhật Quang. Viện Cơng nghệ Thông tin Truyền thông Trường Đại học Bách Khoa Hà Nội

46 6 0
TRÍ TUỆ NHÂN TẠO. Nguyễn Nhật Quang. Viện Cơng nghệ Thông tin Truyền thông Trường Đại học Bách Khoa Hà Nội

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trí Tuệ Nhân Tạo Nguyễn Nhật Quang quangnn-fit@mail.hut.edu.vn Viện Cơng nghệ Thông tin Truyền thông Trường Đại học Bách Khoa Hà Nội Năm học 2009-2010 Nội dung môn học: „ Giới thiệu Trí tuệ nhân tạo „ Tác tử „ Giải vấn đề: Tìm kiếm, Thỏa mãn ràng buộc „ Logic suy diễn ‰ Lập trình logic Prolog (Dựa giảng csc.villanova.edu/ dmatusze/8310summer2001/index.html/prolog1.ppt) csc.villanova.edu/~dmatusze/8310summer2001/index.html/prolog1.ppt) „ Biểu diễn tri thức „ Suy diễn với tri thức không chắn „ Học máy „ Lập kế ế hoặch Trí tuệ nhân tạo Lập p trình logic g „ Một chương trình logic biểu diễn sở tri thức (một tập mệnh đề logic) „ Các mệnh đề logic phải dạng chuẩn Horn p1 ∧ p2 ∧ … ∧ pn → q1 ∨ q2 ∨ … ∨ qm „ „ „ Nếu n=0, m=1, q1 kiện (fact) Nếu n≥1, m m=1, 1, (p1 ∧ p2 ∧ … ∧ pn → q1) luật (rule) Nếu n≥1, m>1, tương đương với luật (p1 ∧ p2 ∧ … ∧ pn ∧ ¬q1 ∧ ¬q2 ∧ … ∧ ¬qm-1 → qm) Trí tuệ nhân tạo Ngơn g ngữ g lập p trình logic g Prologg „ Prolog = Programming Logic „ Một ột ngôn gô ngữ gữ lập ập ttrình logic og c sử dụ dụng g ất p phổ ổb biến ế „ Trong ngôn ngữ Prolog ‰ ‰ Các luật kiện tiên đề (axioms) Câ hỏi, Câu hỏi đ đ đưa người ời dùng, dù định đị h lý cần ầ chứng minh i h „ Prolog áp dụng phương pháp suy diễn quay lui (Back Chaining) để chứng minh „ Để chứng minh P(a) ‰ ‰ ‰ ‰ Tìm kiện P(t) luật (Q1 ∧ Q2 ∧ … ∧ Qn → P(t)) Nếu tìm kiện P(t), P(t) thay tt=a a, định lý chứng minh Nếu tìm luật (Q1 ∧ Q2 ∧ … ∧ Qn → P(t)), cần tiếp tục chứng minh giả thiết Nếu có biến, tìm cách thay biến giá trị, cho đích chứng minh thỏa mãn Trí tuệ nhân tạo Phần mềm SWI-Prologg „ SWI-Prolog cơng cụ lập trình Prolog sử dụng phổ biến, biến có phiên chạy hệ điều hành Windows, MacOS, Linux „ Bản quyền sử dụng phần mềm SWI SWI-Prolog Prolog miễn phí cho mục đích học tập nghiên cứu „ SWI Prolog tải từ địa chỉ: http://www.swi SWI-Prolog http://www.swiprolog.org/ Trí tuệ nhân tạo Ví dụ chươngg trình Prologg (1) „ „ Suy diễn logic ‰ T ấ Tuấn ột sinh i h viên iê ủ HUT ‰ Mọi sinh viên HUT học mơn Tốn rời rạc ‰ Tuấn có học mơn Tốn rời rạc khơng? Chương trình Prolog ‰ studentHUT(tuan) studentHUT(tuan) ‰ studDiscretMath(X) :- studentHUT(X) ‰ ?- studDiscretMath(tuan) ( ) Trí tuệ nhân tạo Ví dụ chươngg trình Prologg (2) „ Sự kiện: Tuấn sinh viên HUT ‰ „ Luật: Mọi sinh viên HUT học mơn Tốn rời rạc ‰ „ studDiscretMath(X) :: studentHUT(X) studentHUT(X) Câu hỏi (của người dùng): Tuấn có học mơn Tốn rời rạc khơng? ‰ „ studentHUT(tuan) t d tHUT(t ) ?- studDiscretMath(tuan) Các câu hỏi có dạng kiện Trí tuệ nhân tạo Chạy chươngg trình Prologg (1) „ Sử dụng chương trình soạn thảo (vd: Notepad) để tạo chương trình (cơ sở tri thức) „ Ghi lại chương trình tập tin định dạng văn (text only) sử dụng tập tin pl „ Ví dụ chương trình Prolog: studentHUT(tuan) studDiscretMath(X) :- studentHUT(X) Trí tuệ nhân tạo Chạy chươngg trình Prologg (2) „ Để chạy chương trình Prolog: ‰ ‰ (Với hệ điều điề hành hà h Windows), Wi d ) kích kí h đúp đú lên lê tập tậ tin ti chương h tì h trình, Chạy phần mềm SWI-Prolog, tham vấn (consult) tới tập tin chương h tì h trình ?- consult('C:\\PrologPrograms\\myPrologProg.pl') „ Sau đó, đưa câu hỏi mong muốn ?- studDiscretMath(tuan) „ Prolog o og đưa a câu ttrả ả lời Yes Trí tuệ nhân tạo Prologg – Chứngg minh định lý „ Prolog trả giá trị Yes có nghĩa “chứng minh được” „ Prolog P l trả t ả ề giá iá trị t ị No N có ó nghĩa hĩ “không “khô thể chứng minh” ? stud_DiscretMath(hai) ?stud DiscretMath(hai) No „ Closed world assumption: Chương trình Prolog biết tất ả ề hữ gìì ó cần ầ biết „ Prolog cung cấp giá trị cho biến cần, để hồn chỉnh chứng minh ?- stud_DiscretMath(X) X = tuan Trí tuệ nhân tạo 10

Ngày đăng: 08/04/2022, 10:09

Tài liệu cùng người dùng

Tài liệu liên quan