Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 58 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
58
Dung lượng
530,82 KB
Nội dung
Giáo trình TRÍ TUỆ NHÂN TẠO ARTIFICIAL INTELLIGENCE Phạm Thọ Hồn, Phạm Thị Anh Lê Khoa Cơng nghệ thơng tin Trường Đại học Sư phạm Hà Nội Hà nội, 2011 MỤC LỤC Chương – Giới thiệu Error! Bookmark not defined. 1. Trí tuệ nhân tạo gì? Error! Bookmark not defined. 2. Lịch sử Error! Bookmark not defined. 3. Các lĩnh vực AI Error! Bookmark not defined. 4. Nội dung môn học .Error! Bookmark not defined. Chương – Các phương pháp tìm kiếm lời giải Error! Bookmark not defined. 1. Hình thành toán .Error! Bookmark not defined. 2. Tìm kiếm có hệ thống Error! Bookmark not defined. 3. Tìm kiếm có sử dụng hàm đánh giá Error! Bookmark not defined. Chương – Các giải thuật tìm kiếm lời giải cho trị chơi Error! Bookmark not defined. 1. Cây trò chơi đầy đủ .Error! Bookmark not defined. 2. Giải thuật Minimax .Error! Bookmark not defined. 3. Giải thuật Minimax với độ sâu hạn chế Error! Bookmark not defined. 4. Hàm đánh giá Error! Bookmark not defined. 5. Giải thuật Minimax với cắt tỉa alpha-beta Error! Bookmark not defined. Chương – Các phương pháp lập luận logic mệnh đề 5 1. Lập luận Logic 5 2. Logic mệnh đề: cú pháp, ngữ nghĩa 5 3. Bài toán lập luận giải thuật lập luận logic mệnh đề 8 4. Câu dạng chuẩn hội luật phân giải 10 5. Câu dạng Horn tam đoạn luận 13 6. Thuật toán suy diễn dựa bảng giá trị chân lý 14 7. Thuật toán suy diễn dựa luật phân giải 15 8. Thuật toán suy diễn tiến, lùi dựa câu Horn 17 9. Kết chương 20 Chương – Các phương pháp lập luận logic cấp .22 Chương – Các phương pháp lập luận logic cấp .22 1. Cú pháp – ngữ nghĩa 24 2. Lập luận logic vị từ cấp 28 3. Phép đồng hai vị từ, thuật giải đồng 30 4. Câu dạng chuẩn hội, luật phân giải tổng quát 32 5. Câu dạng Horn tam đoạn luận tổng quát logic cấp 34 6. Giải thuật suy diễn phân giải 36 7. Thuật toán suy diễn tiến dựa câu Horn 39 8. Thuật toán suy diễn lùi dựa câu Horn 41 Chương – Prolog 42 1. Lập trình logic, mơi trường lập trình SWI Prolog 42 2. Ngôn ngữ Prolog bản, chương trình Prolog 45 3. Câu truy vấn 46 4. Vị từ phi logic (câu phi logic) 47 5. Trả lời truy vấn, quay lui, cắt, phủ định 48 6. Vị từ đệ qui 54 7. Cấu trúc liệu Prolog 55 8. Thuật toán suy diễn Prolog 56 Chương – Lập luận với tri thức không chắn .57 Chương – Học mạng nơron nhân tạo 58 Chương – Các phương pháp lập luận logic mệnh đề Lập luận Logic Lồi người thơng minh biết lập luận Liệu máy tính có khả lập luận (như người) không? Để trả lời câu hỏi này, trước hết cho biết lập luận Lập luận hành động sinh phát biểu từ phát biểu có trước Hay nói cách khác, người hệ thống gọi biết lập luận phát biểu có (true) cho trước tập phát biểu hay không? Các phát biểu phải tuân theo tập qui tắc định (ngữ pháp) cách xác định phát biểu (true) sai (false) Một tập qui tắc qui định ngữ pháp cách xác định ngữ nghĩa đúng/sai phát biểu gọi logic Như logic ngôn ngữ mà câu ngôn ngữ có ngữ nghĩa (giá trị) sai, cho phép lập luận, tức câu có giá trị khơng cho câu trước hay không Các câu cho trước gọi sở tri thức (Knowledge base - KB), câu cần chứng minh biết KB gọi câu truy vấn (query - q) Nếu q KB ta nói KB suy diễn q (ký hiệu KB ╞ q) Trong chương chương tiếp theo, xây dựng thuật giải cho phép lập luận tự động logic khác Các thuật giải giúp máy tính lập luận, rút phát biểu từ phát biểu cho trước Logic mệnh đề: cú pháp, ngữ nghĩa Logic đơn giản logic mệnh đề Các phát biểu (câu) logic mệnh đề hình thành từ ký hiệu mệnh đề (mỗi ký hiệu có nghĩa mệnh đề nhận giá trị sai tùy theo mệnh đề hay sai giới thực) ký hiệu liên kết ¬ (với ngữ nghĩa phủ định), ∧ (và), ∨ (hoặc), ⇒ (kéo theo), ⇔ (tương đương) Cú pháp ngữ nghĩa logic mệnh đề sau: 2.1 Cú pháp: ¾ Các ký hiệu: Hằng: true, false Ký hiệu: P, Q, … Mỗi ký hiệu gọi ký hiệu mệnh đề mệnh đề Các kết nối logic: ¬, ∧, ∨ Các ký hiệu “(“ ”)” ¾ Qui tắc xây dựng câu: Có hai loại câu: câu đơn câu phức true false câu (true câu đơn đúng, false câu sai) Mỗi ký hiệu mệnh đề câu, ví dụ P, Q câu (Câu đơn) Nếu A B câu công thức sau câu (các câu phức): ¬A (A ∧ B) (A ∨ B) (A ⇒ B) (A ⇔ B) ¾ Các khái niệm qui ước khác: Sau này, gọn, ta bỏ dấu “(“, “)” khơng cần thiết Nếu câu có ký hiệu mệnh đề ta gọi câu câu đơn câu phân tử Các câu câu đơn gọi câu phức Nếu P ký hiệu mệnh đề P ¬P gọi literal, P literal dương cịn ¬P literal âm Các câu phức dạng A1 ∨ A2 ∨…∨An, Ai literal, gọi câu tuyển (clause) 2.2 Ngữ nghĩa: Qui định cách diễn dịch cách xác định tính (true) hay sai (false) cho câu ¾ true câu ln có giá trị đúng, false câu ln có giá trị sai ¾ Mỗi ký hiệu biểu diễn (ánh xạ với) phát biểu/mệnh đề giới thực; ký hiệu mệnh đề có giá trị (true) phát biểu/mệnh đề đúng, có giá trị sai (false) phát biểu/mệnh đề sai, có giá trị chưa xác định (true false) ¾ Các câu phức biểu diễn (ánh xạ với) phủ định, mối quan hệ mối liên kết mệnh đề/phát biểu/câu phức giới thực Ngữ nghĩa giá trị câu phức xác định dựa câu thành phần nó, chẳng hạn: ¬A có nghĩa phủ định mệnh đề/ câu A, nhận giá trị true A false ngược lại A ∧ B có nghĩa mối liên kết “A B”, nhận giá trị true A B true, nhận giá trị false trường hợp lại A ∨ B biểu diễn mối liên kết “A B”, nhận giá trị true A B true, nhận giá trị false A B false (A ⇒ B) biểu diễn mối quan hệ “A kéo theo B”, nhận giá trị false A true B false; nhận giá trị true trường hợp khác (A ⇔ B) biểu diễn mối quan hệ “A kéo theo B” “B kéo theo A” Như vậy, việc xác định tính đúng/sai ký hiệu mệnh đề (mệnh đề đơn) dựa tính sai kiện thơng tin mà ám chỉ, cịn việc xác định tính sai mệnh đề phức phải tuân theo qui tắc Trong nhiều trường hợp, (cần chỉ) biết tính đúng/sai câu phức, cịn tính đúng/sai câu đơn khơng cần biết lập luận từ các câu phức biết đúng/sai qui tắc chuyển đổi tính đúng/sai câu đơn câu phức theo qui tắc 2.3 Các ví dụ: Gọi A mệnh đề “tơi chăm học”, B mệnh đề “tôi thông minh”, C mệnh đề “tơi thi đạt điểm cao mơn Trí tuệ nhân tao”; Ta biểu diễn câu sau logic mệnh đề: - “Nếu tơi chăm học tơi thi đạt điểm cao mơn Trí tuệ nhân tạo”: A ⇒ C - “Tôi vừa chăm học lại vừa thông minh”: A ∧ B - “Nếu chăm học tơi thơng minh tơi thi đạt điểm cao mơn Trí tuệ nhân tạo”: A ∨ B ⇒ C 2.4 Các câu đúng: Trong logic mệnh đề, ta có: ¬¬A ⇔ A (luật phủ định kép) A ∨ ¬A (luật loại trừ) (A ⇔ B) ⇔ (A⇒B) ∧ (B⇒A) (A⇒B) ⇔ ¬A ∨ B ¬ (A∨B) ⇔ ¬A ∧ ¬B (luật DeMorgan phép ∨) ¬ (A∧B) ⇔ ¬A ∨ ¬B (luật DeMorgan phép ∧) C ∨ (A∧B) ⇔ (C∨A) ∧ (C∨B) (luật phân phối phép ∨ phép ∧) C ∧ (A∨B) ⇔ (C∧A) ∨ (C∧B) (luật phân phối phép ∧ phép ∨) (A ∧ (A⇒B)) ⇒B (Tam đoạn luận) Luật phân giải (xem mục 4) Bài toán lập luận giải thuật lập luận logic mệnh đề Như nói phần Chương này, lập luận trả lời câu hỏi câu q có cho sở tri thức (là câu phức hội tập câu cho trước) hay không (KB╞ q)? Một cách đơn giản lập bảng giá trị chân lý cho KB cho q kiểm tra xem tất trường hợp làm cho KB nhận giá trị true làm cho q nhận giá trị true không? Nếu có ta kết luận KB╞ q, ngược lại kết luận khơng Phương pháp suy luận gọi phương pháp liệt kê thuật tốn hóa (chi tiết xem mục Chương này) Một cách tiếp cận khác để trả lời cho câu hỏi KB╞ q sử dụng luật logic mệnh đề (xem mục 2.4) Ban đầu KB bao gồm tập câu (hội câu), áp dụng luật logic mệnh đề tập câu để sinh câu mới, bổ sung câu vào KB, lặp lại áp dụng luật logic sinh câu mới, v.v., đến xuất câu q KB dừng lại (khi KB╞ q) sinh câu từ KB (khi ta kết luận KB không suy q) Lời giải cho toán suy diễn theo cách đường từ trạng thái đầu đến trạng thái đích tốn tìm đường sau: Trạng thái đầu: KB Các phép chuyển trạng thái: luật logic mệnh đề, luật x áp dụng cho KB sinh câu x(KB), bổ sung câu vào KB trạng thái KB ∧ x(KB) Trạng thái đích: trạng thái KB chứa q Chi phí cho phép chuyển: Vì số luật logic mệnh tương đối lớn nên nhân tố nhánh toán lớn (tất cách áp dụng luật tập tất câu KB), khơng gian tìm kiếm lời giải tốn lớn Để hạn chế khơng gian tìm kiếm lời giải toán, biểu diễn KB q câu dạng chuẩn hội (xem mục 4), cần áp dụng loại luật luật phân giải KB phép chuyển phép phân giải hai câu có chứa literal phủ định KB, kết phép phân giải hai câu dạng chuẩn hội lại câu dạng chuẩn hội bổ sung vào KB, lặp lại áp dụng luật phân giải KB đến KB chứa câu q dừng Chi tiết thuật tốn suy diễn dựa luật phân giải KB╞ q trình bày mục Chương (thực tế thuật tốn suy diễn phân giải trả lời tốn tương đương (KB ∧ ¬q)╞ [].) Giải thuật suy diễn phân giải giải thuật đầy đủ logic mệnh đề, tức với câu q mà kéo theo từ KB (q KB đúng) sử dụng giải thuật suy diễn phân giải suy diễn KB ╞ q (tức câu kéo từ KB khơng suy diễn phân giải được); câu logic mệnh đề biểu diễn câu dạng chuẩn hội (xem mục 4) Do liên tục phải bổ sung câu vào KB lặp lại tìm kiếm cặp câu phân giải với nên nhân tố nhánh tìm kiếm lời giải tăng dần theo độ sâu tìm kiếm Vì khơng gian thời gian giải thuật tăng nhanh, giải thuật phân giải làm việc không hiệu Để khắc phục nhược điểm này, người ta tìm cách biểu diễn KB dạng câu Horn áp dụng loại luật (tam đoạn luận, xem mục 5) để suy diễn (tam đoạn luận áp dụng câu dạng Horn sinh câu câu dạng Horn) Thuật giải suy diễn tiến/lùi sở tri thức dạng Horn trình bày chi tiết mục 8, có độ phức tạp tuyến tính số câu KB Tuy nhiên thuật giải suy diễn tiến/lùi lại không đầy đủ logic mệnh đề, có câu logic mệnh đề biểu diễn dạng Horn để áp dụng giải thuật suy diến tiến/lùi Câu dạng chuẩn hội luật phân giải ¾ Câu dạng chuẩn hội câu hội câu tuyển (clause) Như nói, câu tuyển câu dạng A1 ∨ A2 ∨…∨An, Ai ký hiệu mệnh đề phủ định ký hiệu mệnh đề Vậy câu dạng chuẩn hội có dạng: (A11 ∨ A12 ∨…∨A1n) ∧ (A21 ∨ A22 ∨…∨A2m) ∧ …∧ (Ak1 ∨ Ak2 ∨…∨Akr) clause clause clause