Professional Documents
Culture Documents
C3 - Logic Vị Từ Cấp 1
C3 - Logic Vị Từ Cấp 1
• 1 trong các mục tiêu của TTNT là thiết kế các tác nhân thông minh như
con người (có khả năng nhận thức được thế giới và đưa ra các hành động
hợp lý để đáp ứng lại)
• Các tác nhân thông minh có thể nhận thức được môi trường thông qua các
bộ cảm biến (sensor), tuy nhiên để có thể suy luận như con người, tác
nhân thông minh cần có tri thức về thế giới thực và bộ suy diễn trên tri
thức ấy (cơ sở tri thức - CSTT)
• Mỗi khi tiếp nhận được các sự kiện từ môi trường, thủ tục suy diễn thực
hiện quá trình liên kết các sự kiện đó với các tri thức trong CSTT để rút ra
các câu trả lời, các hành động hợp lý cần thực hiện
• Để máy tính có thể sử dụng và xử lý tri thức, chúng ta cần biểu diễn tri
thức dưới dạng thuận tiện cho máy tính → ngôn ngữ biểu diễn tri thức
NGÔN NGỮ BIỂU DIỄN TRI THỨC
Ngôn ngữ biểu diễn tri thức = Cú pháp + Ngữ nghĩa + Cơ chế
suy diễn
• Cú pháp bao gồm các ký hiệu và các quy tắc liên kết các ký
hiệu (các luật cú pháp) để tạo thành các câu (công thức) trong
ngôn ngữ
• Ngữ nghĩa xác định ý nghĩa của các câu trong một miền nào
đó của thế giới hiện thực
• Cơ chế suy diễn để từ các tri thức trong cơ sở tri thức và các
sự kiện ta nhận được các tri thức mới
LOGIC
• Trong đó:
• Mỗi câu trong logic mệnh đề đều có thể viết dưới dạng CNF
3.1. LOGIC MỆNH ĐỀ
Muốn
• Áp chứng
dụng: minh
Chứng cơ sở
minh tri bỏ
bác thức (KB)
bằng , chúng
→phân
luật giải: ta chứng minh
điều ngược lại KB → là sai
3.1. LOGIC MỆNH ĐỀ
G’
3.1. LOGIC MỆNH ĐỀ
• Cú pháp:
• Các kí hiệu được sử dụng trong logic vị từ cấp 1
• Các ký hiệu hằng: a, b, c, An, Ba, John,...
• Các ký hiệu biến: x, y, z, u, v, w,...
• Các ký hiệu vị từ: P, Q, R, S, Like, Havecolor, Prime...
• Các ký hiệu hàm: f, g, cos, sin, mother, husband, distance...
• Các ký hiệu kết nối logic: (hội), (tuyển), (phủ định),
(kéo theo), (kéo theo nhau – tương đương)
• Các ký hiệu lượng tử: (với mọi), (tồn tại)
• Các ký hiệu ngăn cách: dấu phẩy, dấu mở ngoặc và dấu đóng
ngoặc
3.2. SỬ DỤNG LOGIC VỊ TỪ CẤP 1
ĐỂ BIỂU DIỄN TRI THỨC
• Cú pháp:
• Hạng thức
• Các hạng thức (term) là các biểu thức mô tả các đối tượng
• Các hạng thức được xác định đệ quy như sau
• Các ký hiệu hằng và các ký hiệu biến là hạng thức
• Nếu t1, t2, t3, ..., tn là n hạng thức và f là một ký hiệu hàm n
biến thì f(t1, t2, ..., tn) là hạng thức
• Một hạng thức không chứa biến được gọi là một hạng thức cụ thể
(ground term)
• Ví dụ: mother(x) là một hạng thức và mother(An) là một hạng
thức cụ thể
3.2. SỬ DỤNG LOGIC VỊ TỪ CẤP 1
ĐỂ BIỂU DIỄN TRI THỨC
• Cú pháp:
• Câu trong logic vị từ cấp 1
• Cú pháp:
• Câu đơn
• Dùng để biểu diễn các tính chất của đối tượng, hoặc các quan
hệ của đối tượng
• Là các công thức phân tử được xác định đệ quy như sau:
• Các ký hiệu vị từ không biến (các ký hiệu mệnh đề) là câu
đơn
• Nếu t1, t2,...,tn là n hạng thức và P là vị từ của n biến thì
P(t1,t2,...,tn) là câu đơn
• Ví dụ: Love (Hoa, husband(Hoa)) là một câu đơn do
Hoa là một ký hiệu hằng, husband là hàm của một biến → hạng
thức Love là một vị từ của hai biến
3.2. SỬ DỤNG LOGIC VỊ TỪ CẤP 1
ĐỂ BIỂU DIỄN TRI THỨC
• Cú pháp:
• Câu phức hợp
• Từ công thức phân tử (câu đơn), sử dụng các kết nối logic
và các lượng tử, ta xây dựng nên các công thức (các câu)
• Ngữ nghĩa:
• Ý nghĩa của các công thức trong một thế giới hiện thực nào đó
(còn gọi là một minh họa)
• Ngữ nghĩa của các câu đơn
• Các ký hiệu vị từ sẽ được gắn với một thuộc tính, hoặc một
quan hệ cụ thể nào đó của đối tượng
• Khi thay thế các biến trong vị từ bởi một đối tượng cụ thể
ta được một mệnh đề và mệnh đề này sẽ chỉ định một sự
kiện cụ thể nào đó, có thể là đúng (True) hoặc sai (False)
Lan ứng với một cô gái cụ thể nào đó, còn công thức
Student(x) ứng với thuộc tính “x là sinh viên” thì câu
• Ví dụ: Student(Lan) có giá trị chân lý là True hoặc False tuỳ
thuộc trong thực tế Lan có phải là sinh viên hay không
3.2. SỬ DỤNG LOGIC VỊ TỪ CẤP 1
ĐỂ BIỂU DIỄN TRI THỨC
• Ngữ nghĩa:
• Ngữ nghĩa của các câu phức
• Khi đã xác định được ngữ nghĩa của các câu đơn, ta có thể
xác định được ngữ nghĩa của các câu phức
• Ví dụ:
• Câu Student(Lan) Student(An) nhận giá trị True nếu
cả hai câu Student(Lan) và Student(An) đều có giá trị
True, tức là cả Lan và An đều là sinh viên
• Câu Like(Lan, Rose) Like(An, Tulip) là đúng nếu câu
Like(Lan, Rose) là đúng hoặc câu Like(An, Tulip) là
đúng
3.2. SỬ DỤNG LOGIC VỊ TỪ CẤP 1
ĐỂ BIỂU DIỄN TRI THỨC
• Ngữ nghĩa:
• Ngữ nghĩa của các lượng tử
• Lượng tử phổ dụng (với mọi - )
• Cho phép mô tả tính chất của cả một lớp đối tượng mà
không cần phải liệt kê ra tất cả các đối tượng một cách cụ thể
• Ví dụ:
Giả sử có hai vị từ:
Elephant(x) (đối tượng x là con voi)
Color(x, Gray) (đối tượng x có mầu xám)
Câu “tất cả các con voi đều có màu xám” có thể biểu diễn
bởi công thức
x (Elephant(x) Color(x, Gray))
3.2. SỬ DỤNG LOGIC VỊ TỪ CẤP 1
ĐỂ BIỂU DIỄN TRI THỨC
• Ngữ nghĩa:
• Ngữ nghĩa của các lượng tử
• Lượng tử tồn tại ():
• Khẳng định có một đối tượng nào đó trong lớp đối
tượng thỏa mãn tính chất hoặc một quan hệ nào đó
• Ví dụ:
Giả sử có hai vị từ:
Student(x) (x là sinh viên)
Inside(x, P301) (x ở trong phòng 301)
Câu “Có một sinh viên ở phòng 301” bởi công thức:
x (Student(x) Inside(x,P301)
BÀI TẬP:
BIỂU DIỄN TRI THỨC TRONG LOGIC VỊ TỪ CẤP 1
2. Biểu diễn các phát biểu sau dựa trên các vị từ cơ sở:
BÀI TẬP:
BIỂU DIỄN TRI THỨC TRONG LOGIC VỊ TỪ CẤP 1
3. Biểu diễn các phát biểu sau dựa trên các vị từ cơ sở:
BÀI TẬP:
BIỂU DIỄN TRI THỨC TRONG LOGIC VỊ TỪ CẤP 1
3. Biểu diễn các phát biểu sau dựa trên các vị từ cơ sở:
• Từ các câu đơn bằng cách sử dụng các kết nối logic và các lượng
tử ta có thể tạo ra các câu phức có cấu trúc rất phức tạp
• Ví dụ: (bài trước)
• Để dễ dàng cho việc biểu diễn và thuận lợi cho việc xây dựng các
thủ tục suy diễn, chúng ta cần chuẩn hóa các câu bằng cách đưa
chúng về dạng chuẩn tắc hội (hội của các câu tuyển)
3.3. CHUẨN HÓA CÔNG THỨC
Một cách tổng quát, giả sử $y(G) là một công thức con của công thức
đang xét và nằm trong miền tác dụng của lượng tử "x1,...,"xn. Khi đó ta có thể
xem y là hàm của n biến x1,…, xn, chẳng hạn f(x1,…, xn), sau đó thay các
xuất hiện của y trong công thức G bởi hạng thức f(x1,…, xn) và loại bỏ các
lượng tử tồn tại
Các hàm f được đưa vào để loại bỏ các lượng tử tồn tại được gọi là hàm Skolem
3.3. CHUẨN HÓA CÔNG THỨC
• Ví dụ:
Cho câu “x Like(x, Football)” (mọi người đều thích bóng đá)
Thay x bởi An ta suy ra câu:
Like(An,Football) (An thích bóng đá)
3.4. CÁC LUẬT SUY DIỄN
• Ví dụ:
Giả sử có hai câu:
Friend(x,Ba) Ù Good(x)
Friend(Lan,y)
Sử dụng phép thế [x/Lan,y/Ba], ta nhận được hai câu:
Friend(Lan,Ba) Ù Good(Lan)
Friend(Lan,Ba)
Theo luật suy diễn Modus Ponens, ta suy ra câu:
Good(Lan) (Lan là người tốt)
3.4. CÁC LUẬT SUY DIỄN
• Một phép thế θ là một dãy các cặp xi/ti , θ = [x1/t1 x2/t2.... xn/tn]
trong đó:
• xi là các biến khác nhau
• ti là các hạng thức và các xi không có mặt trong ti
Nếu áp dụng phép thế θ vào công thức G, ta nhận được công thức
Gθ
3.4. CÁC LUẬT SUY DIỄN
Trong đó:
• Pi, Pi’(i= 1,..,n) và Q là các công thức phân
tử
• Các cặp câu Pi, Pi' hợp nhất được bởi phép
Ví dụ: thế θ, tức là P’i=Piθ
• Giả sử ta có 2 câu:
• Q' = Qθ
(Student (x) Ù Male (x) → Like (x,Football))
Student(Anh), Male(Anh)
• Với phép thế θ = [x|Anh], ta suy ra câu:
3.5. LUẬT PHÂN GIẢI
What?
Trong đó: Ai (i =1,..,m) và Bj (j=1,..,n) là các công
thức phân tử trong logic vị từ cấp 1
Ví dụ: • C và D có thể hợp nhất được bởi phép thế θ, Cθ= Dθ
• Giả sử ta có hai câu: • Ai'=Aiθ (i=1,..,m) và Bj'=Bjθ (j=1,..,n)
A = Hear(x,Music) Ú Play(x,Tennis)
B = ØPlay(An,y) Ú Study (An)
• Với phép thế θ=[x|An,y|Tennis], suy ra câu:
Hear(An,Music) Ú Study (An)
3.5. LUẬT PHÂN GIẢI
P1^P2^…^Pm ⇒ Q
trong đó: Pi(i =1,...,m; m ≥ 0) và Q là các câu phân tử
P1Ù…Ù Pm Ù S Q
T
P1'Ù…Ù Pm' Q'
trong đó Pi' = Piθ (i = 1,...,m) và Q' = Qθ
Xét hai câu
Student(x) ∧ Male(x) ⇒ Play(x,Football)
Male(Ba)
• Ví dụ: Sử dụng phép thế [x|Ba], ta suy ra:
Student (Ba) ⇒ Play (Ba, Football)
3.6. CHỨNG MINH BẰNG
LUẬT PHÂN GIẢI
• Chương minh bằng luật phân giải trong logic vị từ cấp 1 (sử
dụng thêm phép thế)
• Chương minh bác bỏ bằng luật phân giải trong logic vị từ cấp
1 (sử dụng thêm phép thế)
Bài tập:
CHỨNG MINH BẰNG LUẬT PHÂN GIẢI
2.
2.
Bài tập:
CHỨNG MINH BẰNG LUẬT PHÂN GIẢI
3.
Kill(t,Bibi) ?
3.7. CƠ SỞ TRI THỨC DỰA TRÊN LUẬT
• Cơ sở luật
Nếu Mother(Lan,Hoa), Mother(Lan,Ngoc) thì Sister(Hoa,Ngoc)
3.8. THỦ TỤC SUY DIỄN TIẾN
• Forward chaining
• Tư tưởng:
• Áp dụng các luật suy diễn Modus Ponen tổng quát vào suy diễn (đối với
CSTT dựa trên luật, áp dụng luật phân giải trên câu Horn)
• Trong mỗi bước của thủ tục, xét các điều kiện của luật, nếu tất cả các
điều kiện được thỏa mãn thì sự kiện trong phần kết luận của luật được
cho là đúng
• Nếu sự kiện này là mới (chưa có trong FB) thì nó được thêm vào FB
• Quá trình trên được lặp lại cho tới khi không có luật nào sinh ra các sự
kiện mới
• Chú ý: lập luận tiến không hướng tới giải quyết một vấn đề nào cả, chỉ
đơn giản là quá trình suy ra các sự kiện mới từ các sự kiện đã có
3.8. THỦ TỤC SUY DIỄN TIẾN
• Tư tưởng:
• Sử dụng luật suy diễn sau
Ý nghĩa của luật suy diễn:
- Từ một luật có m điều
kiện, một trong các điều
kiện đó “khớp” với một
sự kiện nào đó thì suy ra
một luật mới có m – 1
điều kiện
- Nếu luật có m điều kiện,
Trong đó: Pi hợp nhất với S bởi phép thế , thì áp dụng suy diễn m lần
(nếu có thể) ta suy ra
tức là:
được một sự kiện
3.8. THỦ TỤC SUY DIỄN TIẾN
• Ví dụ:
• Bước 1: biểu diễn tri thức
• Tìm các vị từ biểu diễn cho các đối tượng, tính chất và quan hệ
giữa các đối tượng trong CSTT
Ngựa(x), Mẹ(x,y), Nhanh(y), Giá(x)
• Biểu diễn lại CSTT cho FB và RB
Ngua(Tom) (1) Me(Tom,Bin) (5)
Ngua(Ken) (2) Me(Tom,Ken) (6)
Ngua(Kit) (3) Me(Bin,Kit) (7)
Ngua(Bin) (4) Nhanh(Kit) (8)
Nhanh(Bin) (9)
Ngua(x) Ù Me(x,y) Ù Nhanh(y) =>
Gia(x)
3.8. THỦ TỤC SUY DIỄN TIẾN
• Ví dụ:
• Bước 2: áp dụng thủ tục suy diễn tiến vào CSTT mới
Áp dụng thủ tục For_chain cho luật và FB gồm các sự kiện từ (1) đến (9) có:
(1) khớp với điều kiện Ngua(x) của luật bởi phép thế [x/Tom]:
Me(Tom,y) Ù Nhanh(y) => Gia(Tom)
(5) hợp nhất với Me(Tom,y) bởi phép thế [y/Bin], suy ra:
Nhanh(Bin) => Gia(Tom)
Nhanh(Bin) (9) của luật: suy ra Gia(Tom)
(6) hợp nhất với Me(Tom,y) bởi phép thế [y,Ken], suy ra:
Nhanh(Ken) => Gia(Tom) ?????
+ Tương tự: hợp nhất các sự kiện (2),(3),(4) vào luật suy ra được Gia(Bin)
3.9. THỦ TỤC SUY DIỄN LÙI
• Backward chaining
• Ý tưởng: Đưa ra các giả thuyết cần được đánh giá, sử dụng
lập luận để chứng minh hoặc bác bỏ giả thuyết
• Quá trình suy diễn:
So sánh giả thuyết đưa ra với các sự kiện trong Nếu các giả thuyết được sinh ra đều
CSTT có trong FB → giả thuyết đã đưa ra
Nếu có một sự kiện khớp với giả thuyết → giả được xem là đúng
thuyết là đúng Nếu giả thuyết không có trong FB
Nếu không có sự kiện nào khớp với giả thuyết, ta và không thể quy giả thuyết này về
đi lùi lại phần điều kiện của luật. Các điều kiện các giả thuyết mới khác → giả
của luật được xem như các giả thuyết mới. Với thuyết đã đưa ra được xem là sai
giả thuyết mới, lặp lại quá trình trên
3.9. THỦ TỤC SUY DIỄN LÙI
• Ví dụ: cho CSTT với các sự kiện và các luật như sau
Câu hỏi:
Con ngựa nào có giá?
3.9. THỦ TỤC SUY DIỄN LÙI
•Ví dụ:
•Giả thuyết Hyp = [Gia(w)] và = []
•Gia(w) hợp nhất với kết luận của luật (10) bởi phép thế 1 = [w/x] → danh sách các giả thuyết mới:
Hyp = [Ngua(x), Me(x,y), Nhanh(y)] và q = [w/x]
•Ngua(x) hợp với sự kiện (1) bởi phép thế q1 = [x/Tom], → danh sách các giả thuyết mới: Hyp =
[Me(Tom,y), Nhanh(y)] và q = [w/x][x/Tom] = [w/Tom]
•Me(Tom,y) hợp nhất với sự kiện (5) bởi phép thế q 1 = [y/Bin], → danh sách các giả thuyết mới: Hyp
= [Nhanh(Bin)] và q = [w/Tom][y/Bin] = [w/Tom,y/Bin]
•Nhanh(Bin) hợp nhất với kết luận của luật (11) bởi phép thế q 1 = [z/Bin], do đó ta có: Hyp =
[Thangcuoc(Bin)] Và q = [w/Tom, y/Bin, z/Bin]
•Thangcuoc(Bin) trùng với sự kiện (9) (hợp nhất với phép thế q 1= []) → danh sách giả thuyết trở
thành rỗng với phép thế = [w/Tom, y/Bin, z/Bin]
•Như vậy với phép thế này thì giả thuyết Gia(w) trở thành đúng, hay nói cách khác, Tom là con ngựa
có giá
•Me(Tom,y) hợp nhất với sự kiện (6)…
BÀI TẬP ÁP DỤNG
SUY DIỄN TIẾN, SUY DIỄN LÙI
• BÀI 1:
Cho cơ sở tri thức:
1. a => c
2. d^c => e
3. b => d
Áp dụng thuật toán suy diễn lùi vào cơ
4. a^b => f
5. a^h => i sở tri thức trên để chứng minh: g
6. e^f => g
7. a
8. b
BÀI TẬP ÁP DỤNG
SUY DIỄN TIẾN, SUY DIỄN LÙI
• BÀI 4:
• BÀI 5:
• BÀI 6: