Bài giảng Trí tuệ nhân tạo: Chương 5 do Nguyễn Văn Hòa biên soạn nhằm mục đích phục vụ cho việc giảng dạy. Nội dung bài giảng gồm: Phép toán mệnh đề, biểu diễn sự kiện đơn giản, biểu diễn: isa và instance, các hàm và vị từ khả tính toán, luật phân giải, phân giải mệnh đề, phân giải mệnh đề, đưa về clause form.
Trang 1Ch ươ ng 5:
và v ị t ừ
1
Trang 2Bi ể u di ễ n tri th ứ c nh ờ logic v ị t ừ
Tri thức được thể hiện dưới dạng lớp của các biểu thức logic và cơ sở tri thức giải bài toán được thiết lập trên cơ
sở lớp của các biểu thức logic này
Luật suy diễn và thủ tục chứng minh tri thức được lập
luận trên cơ sở toán học logic với các yêu cầu đặt ra của bài toán
Với phương pháp biểu diễn này cung cấp ý tưởng để tiếp cận với ngôn ngữ lập trình Prolog trong lĩnh vực trí tuệ nhân tạo
2
nhân tạo
Biểu diễn tri thức nhờ logic vị từ còn được gọi là một
ngôn ngữ biểu diễn dùng để mã hóa tri thức dưới dạng
sao cho dễ lập trình với ngôn ngữ lập trình Prolog
Trang 3N ộ i dung
Phép toán mệnh đề
Biểu diễn sự kiện đơn giản
Biểu diễn sự kiện đơn giản
Biểu diễn: isa và instance
Trang 4Phép toán m ệ nh đề
Mệnh đề: là các câu khẳng định về thế giới
Mệnh đề có thể đúng (true) hoặc sai (false)
Mệnh đề có thể đúng (true) hoặc sai (false)
Ký hiệu chân lý: true, false
Các phép toán logic: ∧∧∧∧ (hội), ∨∨∨∨ (tuyển), ¬ (phủ định),
⇒ (kéo theo) , = (tương đương)
Trang 5Phép toán m ệ nh đề …
Định nghĩa câu trong phép tính mệnh đề:
Mỗi ký hiệu mệnh đề, ký hiệu chân lý là một câu
Mỗi ký hiệu mệnh đề, ký hiệu chân lý là một câu
Phủ định của một câu là một câu
Hội, tuyển, kéo theo, tương đương của hai câu là một câu.
Ký hiệu ( ), [ ] được dùng để nhóm các ký hiệu vào các
biểu thức con
Một biểu thức mệnh đề được gọi là một câu (hay công
thức dạng chuẩn- WFF:Well-Formed Formula) ⇔ nó có
5
thức dạng chuẩn- WFF:Well-Formed Formula) ⇔ nó có thể được tạo thành từ những ký hiệu hợp lệ thông qua một dãy các luật trên
Ví dụ: ( (P ∧ Q) ⇒ R) = ¬ P ∨ ¬ Q ∨ R
Trang 7Phép toán m ệ nh đề …
Các luật suy diễn
Luật Modus Ponens (MP)
Trang 8Bi ể u di ễ n s ự ki ệ n đơ n gi ả n: VD1
8
Trang 9Bi ể u di ễ n s ự ki ệ n đơ n gi ả n: VD2
9
Trang 11Bi ể u di ễ n s ự ki ệ n đơ n gi ả n…
Suy diễn
11
Trang 12Bi ể u di ễ n s ự ki ệ n đơ n gi ả n…
Biểu diễn vị từ cho các câu sau đây:
Marcus was a man
Marcus was a man
Macus was a Pompeian
All Pompians were Romans
Caesar was a ruler
All Romans were either loyal to Caesar or hated hime
Everyone is loyal to someone
Trang 13Bi ể u di ễ n: Isa và instance
Biểu diễn instance: a1 là thanh viên của A
13
Trang 17Các hàm và v ị t ừ kh ả tính toán …
Dùng hàm và vị từ tính toán được (VD)
5 All Pompeian died when the vocano erupted in 79 AD.
erupted(vocano, 79) ^ ∀ X: [Pompeian(X) → died(X, 79)]
erupted(vocano, 79) ^ ∀ X: [Pompeian(X) → died(X, 79)]
6 No mortal lives longer then 150 years.
Trang 18Các hàm và v ị t ừ kh ả tính toán …
Dùng hàm và vị từ tính toán được (VD):
→ Cơ sở tri thức không chứa mối quan hệ giữa alive và
→ Cơ sở tri thức không chứa mối quan hệ giữa alive và dead
Trang 19Các hàm và v ị t ừ kh ả tính toán …
19
Trang 20Clause Form = clause ^ clause ^ clause ^ …
Clause = term v term v term
¬Roman(X) v hate(X, Ceaser)
Luật phân giải:
Mệnh đề
Vị từ
Trang 21Lu ậ t phân gi ả i …
Để chứng minh P từ tập F của các mệnh đề:
1 Chuyển F sang clause form
2 Lập ¬P, chuyển ¬P sang clause form Thêm vào các
2 Lập ¬P, chuyển ¬P sang clause form Thêm vào các
2 Thêm vào tập clauses dòng:
(C1 – a) v (C2 – ¬a ) Dấu “–” nghĩa là loại bỏ a khỏi C1 và ¬a khỏi C2
Trang 22Lu ậ t phân gi ả i: ví d ụ
22
Trang 23Lu ậ t phân gi ả i: ví d ụ
Chứng minh
23
Trang 24Lu ậ t phân gi ả i: ví d ụ
Ví dụ: Chứng minh hình thức bằng luật phân giải cho
đoạn văn sau đây:
“ Nam hoặc là chuyên gia hoặc là người cá biệt Nếu Nam
là chuyên gia thì Nam có nhiều báo cáo có tiếng và được đồng nghiệp tin cậy Nếu Nam có nhiều báo cáo có tiếng thì hộp thư của Nam có nhiều thư Nếu Nam là người cá biệt thì Nam không được bạn bè tôn trọng Quan sát thấy rằng, hộp thư của Nam không có nhiều thư “
24
rằng, hộp thư của Nam không có nhiều thư “
chứng mính: “Nam không được bạn bè tôn trọng.“
Trang 25Lu ậ t phân gi ả i: ví d ụ …
Các mệnh đề:
P1 = “Nam là chuyên gia”
P2 = “Nam là người cá biệt”
P2 = “Nam là người cá biệt”
P3 = “Nam có nhiều báo cáo có tiếng”
P4 = “Nam được đồng nghiệp tin cậy”
P5 = “Hộp thư của Nam có nhiều thư”
P6 = “Nam được bạn bè tôn trọng”
Trang 26Lu ậ t phân gi ả i: ví d ụ …
26
Trang 27Lu ậ t phân gi ả i: ví d ụ …
Chứng minh
27
Trang 28Đư a v ề claus form
Câu sau được dùng làm ví dụ trong thủ tục đưa về clause form.
“All Romans who know Marcus either hate Caesar
or think that anyone who hates anyone is crazy”
∀ X: [roman(X) ^ know(X, Marcus)] →
[hate(X, Ceasar) v(∀ Y: ∃ Z: hate(Y,Z) → thinkcrazy(X,Y))]
28
(∀ Y: ∃ Z: hate(Y,Z) → thinkcrazy(X,Y))]
Trang 29Đư a v ề claus form…
1 Loại bỏ →
dùng tương đương: a → b = ¬a v b
dùng tương đương: a → b = ¬a v b
Ví dụ
∀ X: [roman(X) ^ know(X, Marcus)] →
[hate(X, Ceasar) v(∀ Y: ∃ Z: hate(Y,Z) → thinkcrazy(X,Y))]
∀ X: ¬[roman(X) ^ know(X, Marcus)] v
29
∀ X: ¬[roman(X) ^ know(X, Marcus)] v
[hate(X, Ceasar) v(∀ Y: ∃ Z: hate(Y,Z) → thinkcrazy(X,Y))]
Trang 30Đư a v ề claus form…
2 Thu giảm tầm vực của ¬ vào đến mức term.
Áp dung cho ví dụ trước
∀ X: [¬roman(X) v ¬know(X, Marcus)] v
[hate(X,Ceasar) v
(∀ Y: ∃ Z: ¬hate(Y,Z) v thinkcrazy(X,Y))]
Trang 31Đư a v ề claus form…
3 Chuẩn hoá các biến để các lượng từ chỉ ràng buộc
Trang 32Đư a v ề claus form…
5 Loại bỏ lượng từ tồn tại : Sử dụng hàm skolem
của lượng từ với mọi trước nó
Bỏ qua các lượng từ (với mọi) còn lại ở bước 5 xem như mọi biến đều bị tác động bởi lượng từ với mọi (∀ )
Trang 33Đư a v ề claus form…
7 Chuyển hội chuẩn (Conjunctive Normal Form - CNF)
Mỗi mệnh đề có dạng một tuyển OR (v) của các biến mệnh
¬roman(X) v ¬know(X, Marcus) v
hate(X, Ceasar) v ¬hate(Y,Z) v thinkcrazy(X,Y)
Trang 34Đư a v ề claus form…
8 Tách riêng các clause trong CNF ở trên
Nếu có clause form:
Trang 35Đư a v ề claus form…
BT: đưa về clause form các câu sau: