Bài giảng Trí tuệ nhân tạo - Bài 10: Chứng minh bằng logic vị từ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Trí tuệ nhân tạo - Bài 10: Chứng minh bằng logic vị từ", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_tri_tue_nhan_tao_bai_10_chung_minh_bang_logic_vi_t.pdf
Nội dung text: Bài giảng Trí tuệ nhân tạo - Bài 10: Chứng minh bằng logic vị từ
- TRÍ TUỆ NHÂN TẠO Bài 10: Chứng minh bằng logic vị từ
- Nội dung 1. Hạn chế của logic mệnh đề 2. Logic vị từ 3. Chứng minh trong logic vị từ 4. Bài tập TRƯƠNG XUÂN NAM 2
- Phần 1 Hạn chế của logic mệnh đề TRƯƠNG XUÂN NAM 3
- Hạn chế của logic mệnh đề . Trong phần trước chúng ta đã đề cập đến logic mệnh đề sử dụng để mô tả hệ thống tri thức . Hệ thống sự kiện . Các phép toán logic thể hiện mối quan hệ giữa các sự kiện . Các cơ chế chứng minh: . Chứng minh bằng bác bỏ . Suy diễn tiến (đi từ tập sự kiện) . Suy diễn lùi (dò ngược từ tập kết luận) . Các cơ chế trên cũng được con người sử dụng trong quá trình học tập, suy lý TRƯƠNG XUÂN NAM 4
- Hạn chế của logic mệnh đề . Vấn đề lớn nhất của logic mệnh đề là chỉ tập trung vào sự kiện mà không thể hiện được sự tương quan giữa cá thể và thế giới . Khả năng diễn đạt hạn chế . Biểu diễn các sự kiện . Không thể mô tả đầy đủ thế giới các đối tượng, tính chất và mối quan hệ giữa các đối tượng . Ví dụ 1. Nam là một sinh viên của Thủy Lợi 2. Mọi sinh viên của Thủy Lợi đều phải học tin đại cương 3. Vì Nam là sinh viên của Thủy Lợi nên Nam học tin đại cương • Trong logic mệnh đề: 3 không thể suy ra từ 1 và 2 TRƯƠNG XUÂN NAM 5
- Phần 2 Logic vị từ TRƯƠNG XUÂN NAM 6
- Logic vị từ . Tiếng Anh: First Order Logic (FOL), còn gọi là logic bậc nhất hoặc logic tân từ cấp một . Vị từ là các phát biểu có chứa biến . TL(x): x là sinh viên Thủy Lợi • TL(Nam): Nam là sinh viên Thủy Lợi . TinDC(x): x học Tin Đại Cương • TinDC(Nam): Nam học Tin Đại Cương . ∀x: TL(x) → TinDC(x): Mọi sinh viên Thủy Lợi đều học Tin Đại Cương . Chứng minh “Nam học Tin Đại Cương” thực chất là tìm quá trình suy luận {TL(Nam), ∀x: TL(x) → TinDC(x)} →* TinDC(Nam) TRƯƠNG XUÂN NAM 7
- Thành phần của logic vị từ . Hằng: các đối tượng cụ thể trong miền nào đó . a, b, c, Mai, Nam, John, . Biến: chỉ đối tượng tổng quát hóa . x, y, z, u, v, w, . Hàm: thuộc tính của đối tượng hoặc nhóm đối tượng . best_friend(x), father(x), distance(x,y), . Vị từ: các mối quan hệ giữa các đối tượng hoặc tính chất của đối tượng . friend(x,y), father(x,y), love(x,y), good(x), . Phép lượng tử: với mọi (∀), tồn tại (∃) TRƯƠNG XUÂN NAM 8
- Lượng tử logic “với mọi” . ∀ (biến1, biến2, , biếnn): . Ví dụ: . An là bạn của tất cả mọi người • ∀x: friend(An, x) . Tất cả những người nuôi động vật đều yêu động vật • ∀x, ∀y: rear(x, y) ᴧ animal(y) → love_animal(x) . Tất cả sinh viên công nghệ thông tin Thủy Lợi đều chăm học • ∀x: tlu_cntt_student(x) → chăm(x) TRƯƠNG XUÂN NAM 9
- Lượng tử logic “với mọi” . Mệnh đề (∀x: P) đúng khi và chỉ khi P đúng với mọi đối tượng trong thế giới . Ví dụ: . An là bạn của tất cả mọi người đúng khi nó xảy ra với mọi người: • friend(An, Nam) ᴧ friend (An, Mai) ᴧ friend(An, Son) . Tất cả các sinh viên công nghệ thông tin Thủy Lợi đều chăm học đúng khi nó xảy ra với mọi sinh viên: • tlu_cntt_student(Vân) → chăm(Vân) ᴧ tlu_cntt_student(Hùng) → chăm(Hùng) ᴧ tlu_cntt_student(Bình) → chăm(Bình) TRƯƠNG XUÂN NAM 10
- Lượng tử logic “Tồn tại” . ∃ (biến1, biến2, , biếnn): . Ví dụ: . Có một người là bạn của An • ∃x: friend(An, x) . Tồn tại một người nuôi một con động vật nào đấy nhưng lại không yêu động vật • ∃x, ∃y: rear(x,y) ᴧ animal(y) ᴧ ¬love_animal(x) . Tồn tại một sinh viên công nghệ thông tin Thủy Lợi chăm học • ∃x: tlu_cntt_student(x) ᴧ chăm(x) . Tồn tại một sinh viên học tất cả các môn học của ngành công nghệ thông tin • ∃x, ∀y: student(x) ᴧ learn(x, y) ᴧ it_subject(y) TRƯƠNG XUÂN NAM 11
- Lượng tử logic “Tồn tại” . Mệnh đề (∃x:P) đúng khi P đúng với ít nhất một đối tượng trong thế giới . Ví dụ: . An là bạn của ít nhất 1 người đúng khi • friend(An, Nam) v friend (An, Mai) v friend(An,Son) v . Ít nhất một sinh viên công nghệ thông tin Thủy Lợi chăm học đúng khi: • tlu_cntt_student(Vân) → chăm(Vân) v tlu_cntt_student(Hùng) → chăm(Hùng) v tlu_cntt_student(Bình)→chăm(Bình) v TRƯƠNG XUÂN NAM 12
- Đặc điểm của logic lượng tử . Tính hoán vị (∀x ∀y) ≡ (∀y ∀x) (∃x ∃y) ≡ (∃y ∃x) . Tuy nhiên, (∃x ∀y) không tương đương với (∀x ∃y) . ∃x ∀y know(x, y): tồn tại 1 người biết tất cả các lĩnh vực . ∀x ∃y know(x, y): tồn tại 1 lĩnh vực mà mọi người đều biết . Đưa các phép lượng tử vào từng vị từ . ∀x ((G(x) ᴧ H(x)) ≡ (∀x G(x)) ᴧ (∀x H(x)) . ∃x ((G(x) v H(x)) ≡ (∃x G(x)) v (∃x H(x)) . Loại bỏ ∀: ∀x G(x) ≡ G(x) TRƯƠNG XUÂN NAM 13
- Đặc điểm của logic lượng tử . Đặt lại tên biến ∀x G(x) ≡ ∀y G(y) ∃x G(x) ≡ ∃y G(y) . Loại bỏ ¬ ¬(∀x G(x)) ≡ ∃x (¬G(x)) ¬(∃x G(x)) ≡ ∀x (¬G(x)) . Mỗi lượng tử (∀, ∃) đều có thể biểu diễn bởi lượng tử kia . ∀x friend(An, x) ≡ ¬(∃x ¬friend(An, x)) . An là bạn của mọi người ≡ không có ai An không là bạn . ∃x friend(An, x) ≡ ¬(∀x ¬friend(An, x)) . Có 1 người là bạn của An ≡ không phải tất cả mọi người đều không là bạn của An TRƯƠNG XUÂN NAM 14
- Phần 3 Chứng minh trong logic vị từ TRƯƠNG XUÂN NAM 15
- Chứng minh trong logic vị từ . Tương tự logic mệnh đề + thêm phép gán giá trị . Phương pháp chứng minh bằng luật hợp giải (bác bỏ) . Giả sử kết luận sai . Chuẩn hóa về dạng chuẩn hội và tách dòng . Hợp giải: tìm 2 dòng để hợp giải cho đến khi gặp • Dòng i chứa G(x, ) • Dòng j chứa ¬G(A, ) • Bằng phép gán giá trị [x|A], hợp nhất 2 dòng i, j và triệt tiêu G . Cơ chế lựa chọn các cặp dòng để hợp giải • Vét cạn cứng nhắc • Mềm dẻo (chiến lược tìm kiếm hợp lý) TRƯƠNG XUÂN NAM 16
- Ví dụ 1: ai đã giết con mèo Bibi? . Cho cơ sở tri thức 1. Ông Ba nuôi một con chó 2. Ông Ba hoặc ông An đã giết con mèo Bibi 3. Mọi người nuôi chó đều yêu quý động vật 4. Ai yêu quý động vật cũng ko giết động vật 5. Chó mèo đều là động vật . Câu hỏi: ai đã giết Bibi? . Ông Ba giết Bibi? . Ông Ba không giết Bibi? . Ông An giết Bibi? . Ông An không giết Bibi? . Một ông nào khác? :D TRƯƠNG XUÂN NAM 17
- Ví dụ 1: ai đã giết con mèo Bibi? . Khai báo các vị từ . Rear(x, y): x nuôi y . Kill(x, y): x giết y . Animal(x): x là động vật . AnimalLover(x): x là người yêu động vật . Dog(x): x là loài chó . Cat(x): x là loài mèo TRƯƠNG XUÂN NAM 18
- Ví dụ 1: ai đã giết con mèo Bibi? . Biểu diễn tri thức của bài toán . Ông Ba nuôi một con chó Dog(D) ᴧ Rear(Ba, D) . Ông Ba hoặc ông An đã giết con mèo Bibi Cat(Bibi) ᴧ (Kill(Ba, Bibi) v Kill(An, Bibi)) . Mọi người nuôi chó đều yêu quý động vật ∀x (∀y Rear(x, y) ᴧ Dog(y) → AnimalLover(x)) . Ai yêu quý động vật cũng ko giết động vật ∀x (AnimalLover(x) → ∀y (Animal(y) → ¬Kill(x, y))) . Chó mèo đều là động vật (Dog(x) → Animal(x)) ᴧ (Cat(y) → Animal(y)) TRƯƠNG XUÂN NAM 19
- Ví dụ 1: ai đã giết con mèo Bibi? . Muốn chứng minh “Ông An giết con mèo Bibi”: thêm ¬Kill(An, Bibi) vào tập tri thức . Chuẩn hóa và tách: 1. Dog(D) 2. Rear(Ba, D) 3. Cat(Bibi) 4. Kill(Ba, Bibi) v Kill(An, Bibi) 5. ¬Rear(x, y) v ¬Dog(y) v AnimalLover(x) 6. ¬AnimalLover(x) v ¬Animal(y) v ¬Kill(x, y) 7. ¬Dog(x) v Animal(x) 8. ¬Cat(x) v Animal(x) 9. ¬Kill(An, Bibi) TRƯƠNG XUÂN NAM 20
- Ví dụ 1: ai đã giết con mèo Bibi? . Quá trình chứng minh (hợp giải): 10. Kill(Ba, Bibi) – Res(4, 9): hợp giải 4 và 9 11. ¬AnimalLover(Ba) v ¬Animal(Bibi) • Res (10, 6 | x = Ba, y = Bibi): hợp giải 10 và 6, trong dữ kiện 6, thế x = Ba, y = Bibi 12. ¬AnimalLover(Ba) v ¬Cat(Bibi) • Res (11, 8 | x = Bibi): hợp giải 11 và 8, trong 8 thế x = Bibi 13. ¬AnimalLover(Ba) – Res (12, 3): hợp giải 12 và 3 14. ¬Rear(Ba,y) v ¬Dog(y) • Res (13, 5 | x = Ba): hợp giải 13 và 5, trong 5 thế x = Ba 15. ¬Dog(D) • Res (14 | y = D, 2): hợp giải 14 và 2, trong 14 thế y = D 16. – Res (15, 1): hợp giải 15 và 1, xuất hiện vô lý TRƯƠNG XUÂN NAM 21
- Ví dụ 1: ai đã giết con mèo Bibi? . Muốn chứng minh “Ông Ba giết con mèo Bibi”: thêm ¬Kill(Ba, Bibi) vào tập tri thức . Phương pháp hợp giải không dẫn tới câu rỗng → không chứng minh được . Muốn chứng minh “Ông Ba không giết con mèo Bibi”: thêm Kill(Ba, Bibi) vào tập tri thức . Chứng minh được bằng phương pháp hợp giải (sinh viên tự chứng minh) TRƯƠNG XUÂN NAM 22
- Ví dụ 2: bịp bợm và nhút nhát . Cho cơ sở tri thức 1. Bất kì ai đi lừa dối người khác đều bị coi là bịp bợm 2. Dù vô tình hay cố ý, đã có lần đồng tình với bạn đi lừa dối người khác, cũng sẽ bị coi là bịp bợm 3. Do tính tình nhút nhát nên có thể có người trong 1 hoàn cảnh nào đó trót đồng tình với người khác để lừa dối. 4. Kết luận: Có thể thấy rằng không phải ai bị coi là bịp bợm cũng không nhút nhát TRƯƠNG XUÂN NAM 23
- Ví dụ 2: bịp bợm và nhút nhát . Khai báo các vị từ . Ld(x): x là người lừa dối . Bb(x): x là người bịp bợm . Dt(x, y): x đồng tình với y . Nn(x): x là người nhút nhát . Biểu diễn tri thức . Ld(x) → Bb(x) . Dt(x,y) ᴧ Bb(y) → Bb(x) . ∃x (Nn(x) ᴧ ∃y (Dt(x,y) ᴧ Ld(y))) . Kết luận: ¬(∀x Bb(x) → ¬Nn(x)) TRƯƠNG XUÂN NAM 24
- Ví dụ 2: bịp bợm và nhút nhát . Chuẩn hóa và tách 1. ¬Ld(x) v Bb(x) 2. ¬Dt(x,y) v ¬Bb(y) v Bb(x) 3. Nn(A) 4. Dt(A,B) 5. Ld(B) 6. ¬Bb(x) v ¬Nn(x) . Hợp giải??? TRƯƠNG XUÂN NAM 25
- Ví dụ 3: sở thích ăn uống . Cho cơ sở tri thức 1. Hùng thích tất cả các loại thực phẩm 2. Táo là thực phẩm 3. Gà là thực phẩm 4. Bất cứ thứ gì mọi người ăn và không bị hại đó là thực phẩm 5. Phong ăn đậu phọng và vẫn còn sống 6. Lan ăn bất cứ thứ gì Phong ăn . Sử dụng phương pháp hợp giải để: . Chứng minh Hùng thích đậu phọng . Trả lời câu hỏi “Lan ăn thực phẩm nào” TRƯƠNG XUÂN NAM 26