BO GIAO DUC VA DAO TAO DAI HOC HUE
TRUONG DAI HOC KHOA HOC
BUI NGOC DUYEN
TIM HIEU MOT SO THUAT TOAN SUY LUAN TRONG LOGIC MO TA ALC
CHUYEN NGANH: KHOA HOC MAY TINH MA SO: 8480101
LUAN VAN THAC SI KHOA HOC
ĐỊNH HƯỚNG NGHIÊN CỨU
NGUOI HUONG DAN KHOA HOC TS TRAN THANH LUONG
Thừa Thiên Huế, 2020
Trang 2
LOI CAM DOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn của Thầy giáo, TS Trần Thanh Lương Các số liệu, kết quả trình bày trong luận văn là trung thực Mọi thông tin tham khảo đều được trích dẫn đầy đủ
Tôi xin chịu hoàn toàn trách nhiệm về cam đoan này
Học viên
Trang 3LOI CAM ON
Trong suốt quá trình học tập chuyên ngành Khoa học Máy tính dưới sự dẫn
dắt của quý thay, cô Trường Đại học Khoa học, Đại học Huế, đến nay, học viên đã hoàn thành luận văn tốt nghiệp của mình Bản thân học viên luôn nhận được sự
quan tâm, giúp đỡ rất nhiều của quý thầy, cô, gia đình, bạn bè và đồng nghiệp Đầu tiên, học viên xin bày tỏ lòng biết ơn sâu sắc đến Thầy giáo, TS Trần Thanh Lương, là người đã tận tình hướng dẫn trong suốt quá trình học tập và làm
luận văn tốt nghiệp Bằng sự tận tâm, nhiệt huyết và có trách nhiệm của mình Thầy
đã giúp học viên rất nhiều điều để học viên có thể vượt qua những khó khăn và hoàn thành luận văn đúng thời gian quy định Nếu không có sự truyền đạt kiến thức
và hướng dẫn tận tình của Thầy thì luận văn của học viên rất khó để hoàn thành
Thứ hai, học viên muốn bày tỏ lòng biết ơn chân thành tới tất cả quý thầy, cô những người đã giảng đạy cho học viên nhiều kiến thức hay về Khoa học Máy tính
và các lĩnh vực khác, cũng như các kiến thức bể trợ cho luận văn tốt nghiệp của
mình trong suốt hai năm học qua Đồng thời, học viên cũng muốn gửi lời cảm ơn
chân thành đến Ban Giám hiệu, Phòng Đào tạo Sau Đại học và Ban Chủ nhiệm Khoa Công nghệ Thông tin đã tạo những điểu kiện thuận lợi nhất cho học viên cũng
như cả lớp trong suốt thời gian học tập vừa qua
Cuối cùng, học viên xin gửi lời tri ân sâu sắc đến gia đỉnh, bạn bè và đồng
nghiệp đã luôn động viên, khích lệ, giúp đỡ và tạo mọi điều tốt nhất cho học viên trong suốt thời gian học tập và thực hiện luận văn Mặc dù đã cố gang, song chắc chắn luận văn không thể tránh khỏi những thiếu sót Học viên rất mong được sự
thông cảm và những ý kiến đóng góp quý báu của quý thầy, cô và bạn bè cũng như những ai quan tâm đến lĩnh vực trong luận văn này
Thừa Thiên Huế, ngày 20 tháng 02 năm 2020
Học viên
Bùi Ngọc Duyên
Trang 4DANH MUC CAC KY HIEU Ký hiệu Diễn giải ý nghĩa In 3 °C II | Các thuộc tính/tên khái niệm Các khái niệm Các tên vai trò Các vai trò Các cá thể Các tập tên cá thể Bộ tiên để vai trò Bộ tiên dé thuật ngữ Bộ khẳng định cá thể Co so tri thirc trong logic mé ta Bao ham Tương đương Phép hợp Phép giao Phép phủ định Lượng từ với mọi Lượng từ tổn tại Khái niệm đỉnh
Khái niệm đáy Miễn của diễn dịch J Hàm diễn dịch của I
Trang 5
DANH MUC CAC CHU VIET TAT
Ký hiệu Diễn giải ý nghĩa
ABox Assertion Box - Bộ khang định cá thể RBox Role Box - Bộ điên đề vai trò
TBox Terminology Box - Bộ ứiên đề thuật ngit
Trang 6
MO DAU
Với sự phát triển vượt bậc của khoa học nói chung và công nghệ thông tin nói riêng đã đem lại cho chúng ta nhiều hình thức biểu điễn tri thức cũng như những phương pháp trong việc khám phá tri thức, tìm kiếm thông tin, lập luận và ra quyết
định Tuy nhiên, sự phát triển của xã hội cũng đem lại một lượng lớn thông tin phát
sinh kèm theo Điều đó gây ra nhiều khó khăn trong việc khám phá tri thức trên lượng đữ liệu không lồ đang có Để xử lý vấn để này, một hướng nghiên cứu đã
được tập trung xem xét đó là xử lý dữ liệu một cách có hiệu quả, trong đó có việc
xây dựng, biểu diễn và suy luận tri thức thông qua các hệ thống Web ngữ nghĩa với hạt nhân cơ bản là các ontology dựa trên nên tảng của logic mô tả
Logic m6 ta (Description Logics —- DLs) là một họ các ngôn ngữ hình thức
được sử dụng để biểu diễn và suy luận tri thức trong một miễn ứng dụng cụ thể [5]
[7] Tùy theo phạm vi biểu diễn, miền ứng dụng mà người ta có thể sử dụng các logic mô tả khác nhau vào các ứng dụng Bắt đầu từ các khái niệm nguyên tử, vai trò nguyên tử, logic mô tả cho phép xây đựng các khái niệm phức, vai trò phức bằng cách sử dụng các khái niệm nguyên tử, vai trò nguyên tử cùng với tập các tạo tử đã cho Một hệ thống logic mô tả cho phép mô tả các khái niệm có liên quan với nhau và các tri thức tiềm ấn Các tri thức tiềm ấn này có thể được suy luận từ những tri
thức đã được biểu diễn thông qua các dịch vụ suy luận hoặc các bộ suy luận [ I], [2] Để có được nhiễu thông tin chính xác, nhanh chóng tại một thời điểm nào đó nhằm
trợ giúp cho việc ra quyết định, những câu hỏi mang tính chất định tính cần trả lời dựa trên dữ liệu đã có với các thông tin chưa rõ ràng hoặc không đầy đủ là hết sức
cân thiết
Để phục vụ cho các hệ thống Web ngữ nghĩa và truy vấn dựa trên ontology thì việc phát triển các logic mô tả và xây đựng các thuật toán suy luận trong logic mô tả là một vấn đề rất quan trọng Các logic mô tả là nén tang dé xAy dung ontology va các thuật toán suy luận trong logie mô tả sẽ được áp đụng vào các hệ thống Web ngữ nghĩa để trả lời các truy vấn của người dùng trên các hệ thống này Độ chính xác, tốc độ trả lời truy vấn trên các hệ thống ngữ nghĩa phụ thuộc rất lớn vào các thuật toán suy luận trên logic mô tả Với mong muốn tìm hiểu sâu hơn về các thuật
Trang 7© ConNguoi NaAcoCon.t: khai niém chi cac déi trong là người có con, e ConNguoi NaAcoCon 1: khải niệm chỉ những người không có con 1.1.2 Biểu diễn tri thức
Từ các cá thể, các khái niệm và các vai trò, người ta có thể xây dựng một hệ
thống để biểu diễn và suy luận tri thức đựa trên logic mô tả Thông thường, một hệ thống biểu diễn và suy luận tri thức gồm có các thành phần sau: H KB - CƠ SỞ TRI THỨC E đt G H I RBox - Bộ tiên đề vai trò O A E—— N oO G TBox - Bộ tiên đề thuật ngữ : a 28 ales D Logic mô ta Y I ‘ L E ABox - Bộ khăng định U N A N
a Bộ tiên đề vai tro (Role Box - RBox)
Bộ tiên để vai trò chứa các tiên để về vai trò Thông qua bộ tiên để vai trò,
chúng ta có thể xây dựng các vai trò phức từ các vai trò nguyên tố và các tạo tử vai trò mà logie mô tả được phép sử dụng cũng như cho chúng ta nhận biết mối quan hệ
giữa các vai trò Ví dụ sau đây là một minh họa đơn giản cho một bộ tiên dé vai tro
Vi dụ 1.2 Từ các vai trò đã cho trong Vi dụ 1.1, chúng ta có thê xây dựng bộ tiên
để vai trò sau:
e coChaMe = coCon ,
e coCon E coHauDue,
e Sym(ketHon),
e coHauDue ° coHauDue © coHauDue
Phat biéu dau tién dé dinh nghĩa vai trò mới coChaMe là một vai trò nghịch
Trang 8coCon la vai trò được bao hàm trong vai trò coHauDue, nghĩa là nếu một đối
tượng này là con của đối tượng kia thì nó cũng là con cháu của đối tượng kia; phát biểu thir ba dé chỉ rằng vai trò ketHon là một vai trò đối xứng, nghĩa là nếu một đối
tương này kết hôn với đối tượng kia thì đối tượng kia cũng kết hôn với đối tượng
này và phát biểu thứ ba là một tiên đề thê hiện rằng coHawDue là một vai trò bắc cầu, nghĩa là đối tượng thứ nhất có con cháu là đối tượng thứ hai và đối tượng thứ hai có con cháu là đối tượng thứ ba thì đối tượng thứ nhất cũng có con cháu là đối tượng thứ ba Trường hợp này, người ta còn ký hiệu theo dạng Tra(coHauDue) b B6 tién dé thuat ngir (Terminology Box - TBox)
Bộ tiên dé thuật ngữ chứa các tiên dé vé thuật ngữ Thông qua bộ tiên dé thuật
ngữ, chúng ta có thể xây dựng các khái niệm phức từ những khái niệm nguyên tố và vai trò nguyên tố, đồng thời cho chúng ta biết mối quan hệ giữa các khái niệm Ví
dụ sau đây là một minh họa đơn giản cho một bộ tiên dé thuật ngữ
Ví dụ 1.3 Từ các khái niệm, vai trò đã cho trong Ví dụ 1.1, chúng ta có thể xây
dựng bộ tiên dé thuật ngữ sau:
e ConNguoi =T,
e GiongDuc = 4GiongCai,
Chong = ConNguoi N GiongDuc N AketHon GiongCai, ChaMe = ConNguoi NAcoCon ConNguoi,
Chong © VketHon GiongCai, e GiongDuc N GiongCai = 1
Phát biêu đầu tiên của bộ tiên đề thuật ngữ dùng để nói lên rằng miền quan tâm chỉ gồm các đối tượng là con người: phát biểu thứ hai để định nghĩa khái niệm mới GiongDuc đê chỉ những đối tượng không phải là giống cái, nghĩa là dé chỉ những đối
tượng là giống được; phát biểu thứ ba để định nghĩa khái niệm mới Chong dé chi
những đối tượng con người, giống đực và kết hôn với đối tượng là giống cái; phát
biéu thứ tư để định nghĩa khái niệm mới ChaMe đề chỉ những đối tượng là người có
con và con là những con người; phát biêu thứ năm yêu cầu mọi thể hiện của Chong
phải là thể hiện của khái niệm VketHon GiongCai và phát biêu cuối cùng để thé
Trang 9Tên cá thé Tên khái niệm Tên vai trò XEN AEN TE Np mE Po
Hinh 1.1 Dién dich cia logic mé ta ALC
Ta ni rang C! la dién giai của khái niệm € và r! là diễn giải của vai trò r
trong diễn dịch I Nếu một đối tượng x € Cl lúc đó ta nói x là một thể hiện của khái niệm € trong diễn dịch J
Ví dụ 1.5 Cho tập các cá thể, khái niệm và vai trò như trong Ví dụ 1.1 Xét diễn dịch I như sau:
LAN! = LAN, HAI! = HAI, HUNG' — =HUNG,
AI = {LAN, HAI, HUNG}, ConNguoi! = {LAN, HAI, HUNG},
GiongCai! = {LAN}, GiauCo! = {HUNG},
coCon' ={(LAN,HUNG), (HAI,HUNG))
ketHon! = {(LAN,HAI), (HAI, LAN)
Với diễn dịch được xây dựng như trên, chúng ta có diễn dịch của các khái
niệm phức như sau:
Trang 10(ConN guoi 1 GiongCai)! = {LAN},
(AGiongCai)! = {HAI, HUNG},
(¬GiauCo)! = {LAN, HAI},
(ConN guoi N AGiongCai)! = {HAI, HUNG},
(ConN guoi NAcoCon.GiongCai)! = 0,
(ConN guoi nN AketHon ConNguoi)! = {LAN, HAI},
(GiongDuc nN GiongCai)! = @,
coChaMe! = {(HUNG, LAN), (HUNG, HAI)} Qua ví dụ này, chúng ta có thé thay rằng, vai trò ketHon là một vai trò đối
xứng thể hiện ở diễn dịch của vai trò ketHom! vừa có thể hiện (LAN, HAI) vừa có
thê hiện (HAI, LAN): vai trò coChaMe là vai trò nghịch đảo của vai tro coCon thé
thể hiện ở thứ tự xuất hiện của các cá thể trong diễn dịch coCon! va dién dich
coChaMe! ngược nhau Với tiên đề thuật ngữ GiongDuc N GiongCai = 1, tic là
khái niệm GíongDuc và khái niệm GiongCai rời nhau, thì thể hiện của khái niệm
GiongDuc N GiongCai sé bang rong, nghia la (GiongDuc N GiongCai)! = @ 1.3.2 Cac bài toán suy luận
Mục đích của các hệ thống biểu diễn tri thức ngoài việc lưu trữ các tiên đề vai trò, tiên để thuật ngữ, định nghĩa khái niệm và các khẳng định còn có việc thực hiện các suy luận để tìm ra những tri thức tiém ấn Có nhiễu bài toán suy luận được đặt
ra trong các hệ thống biểu diễn tri thức dựa trên logic mô tả Trong luận văn này,
chúng ta tìm hiểu một số bài toán suy luận dựa trên cơ sở tri thức #€® như sau:
e Tính nhất quán của cơ sở tri thức: ?CЮ được gọi là nhất quán nêu tồn tại
diễn dịch I là mô hình của KB
e Tính thỏa mãn của khái niệm: Một khái niệm € được goi 1a thoa man dựa trên #C® nếu tồn tại một mô hình J cua KB sao cho C! # @
® Bao hàm khái niệm: Khái niệm C duoc bao ham trong khái niệm D dựa trén KB, ky hidulaKBECED, nếu C! G D! v6éi moi mé hinh J cba KB
e Tuong đương khái niệm: Khái niệm C trong duong voi khai niém D dua
Trang 11Vi du 1.7 Cho A và B là các tên khái niệm, r va s 1a cac tén vai tro va khai niém
€ = ¬är.(¬A n(B LIVs.4)) Lúc đó, dạng chuẩn phủ định của khái niệm C 1a khái niệm €' = Vr (A LI (—¬B TI 3s ¬ 4)) và dạng chuẩn lưu trữ khái niệm của € là C” = Vr.LI{A,1{¬B, 3s ¬ 4}
1.5 Suy luận trong logic mô tả
Vì độ phức tạp tính toán của các thuật toán suy luận đối với logic mô tả rất
cao, thường là NEXPTIME [5] [7] Do đó, khi phát triển một thuật toán suy luận,
một trong những vấn đề được quan tâm nhất là độ phức tạp tính toán Mục đích là hướng đến việc tối ưu thuật toán sao cho nó có thê chạy trong thời gian chấp nhận được và từ đó có thê ứng dụng vào trong thực tế Các thuật toán suy luận trên logic mô tả được cộng đồng các nhà khoa học quan tâm nghiên cứu trong những năm gần đây Đến nay, nói chung, có bốn hướng tiếp cận chính đối với bài toán suy luận trong logic mô tả Mỗi hướng tiếp cận có những đặc điểm khác nhau và thích hợp cho những logic mô tả cụ thể Trong phần này, chúng tôi nêu khái quát các thuật toán dựa trên cấu trúc, thuật toán Tableaux, tiếp cận chuyền đổi và các phương pháp
dựa trên Automata
1.5.1 Thuật toán bao hàm theo cấu trúc
Những hệ thống logic mô tả đầu tiên như KL-ONE (1985), BACK (1990), K-
REP (1991) và LOOM (1991) sử dụng thuật toán dựa trên cấu trúc để giải quyết
một số bài toán suy luận Thuật toán này dựa trên việc so sánh cấu trúc của các khái
niệm ở dạng chuân để giải bài toán bao hàm Thuật toán này hiệu quả đối với các ngôn ngữ logie mô tả đơn giản có khả năng biểu diễn chủ yéu nhu FLo, FL, /1£W' Với các ngôn ngữ logie mô tả giàu ngữ nghĩa hơn, như ‹4/€, ALCI,
ALCIQ, SHIQ, SHOIQ, , thuat ton bao hàm theo cấu trúc không thể giải quyết
được các bài toán suy luận như đã đề cập
Thuật toán bao hàm theo cấu trúc thực hiện theo hai pha Pha thứ nhất, chuyền
các khái niệm về dạng chuẩn tương ứng với từng loại ngôn ngữ Pha thứ hai, so sánh cấu trúc cú pháp của các khái niệm
1.5.2 Thuật toán Tableaux
Đề khắc phục những nhược điểm của thuật toán bao hàm theo cấu trúc, năm 1991, Schmidt-SchauB và Smolka để xuất thuật toán Tableaux đề kiểm tra tính thỏa
Trang 121.6 Tiéu két Chuong 1
Trong chương này, chúng tôi đã giớ ệu khái quát về logiemôtả nang ê ễ ứ ủa các logic mô tả Thông qua cú pháp và ngữ nghĩa củ
mô tả 4n văn đã trình bày về cơ sở ứ, các tên để Š ậ t, cdc kha di Š cá thể, mô hình của cơ sở ức trong logic mô tả, các bài toán suy lua
trong logic m6 ta và các hướ é 4 é oa ết các bài toán suy luậ đã nêu Bên cạnh đó, luận văn còn trình bày ngôn ngữ logic mô tả ng quát dự
Trang 13e DanOng = ¬PhuNu,
e Chong = DanØng r1 1ketHon.PhuNu, e Chong © VmarriedTo.Woman,
e DanOng Nn PhuNu = 1
Để thuận tiện trong làm việc với bộ thuật ngữ, người ta thường thực hiện chuẩn hóa các tiên để trong bộ thuật ngữ Một tiên dé trong bộ thuật ngữ TBox
được gọi là khái niệm định nghĩa khi về trái là một khái niệm mới xuất hiện không
quá một lần ở về trái của các tiên đề trong TBox và về phải là một biểu thức các
khái niệm Đề chuẩn hóa một TBox, ta thay bao hàm khái niệm bằng khái niệm
định nghĩa Đối với một TBox không chứa chu trình, quá trình chuẩn hóa sẽ dừng sau mỗi số hữu hạn bước và quá trình này gọi là quá trình mở rộng bộ thuật ngữ Ví dụ 2.2 Chuẩn hóa một số tiên để thuật ngữ đã cho trong Vi dụ 2.1
e DanOng = ¬PhuNu được chuân hoa thanh DanOng = ConNguoin
¬(Œ€onNguoi T1 GiongCai)
e Chong = DanOng n3ketHon.PhuNu được chuẩn hóa thành Chong =
ConNguoi 1 ¬(ConNguoi 1 GiongCai) nN 3ketHon PhụNu
2.2.2 Bộ khẳng định cá thể
Một bộ khăng định có thể chứa hai dạng tiên để, dạng thứ nhất là tiên để khẳng định khái niệm (khẳng định một cá thể là thể hiện của một khải niệm đã cho), dạng thứ hai là tiên để khẳng định vai trò (khẳng định một cặp cá thê là thê hiện của
một vai trò đã cho)
Định nghĩa 1.5 Cho N; là một tập hợp các tên cá thể Một tiên đề khẳng định cá thể là một tiên đề có dạng C(+) (fiên đẻ khẳng định khái niệm) hoặc r(, y) (tiên
đề khẳng định vai trò), trong đó € là một khái niệm của ALC, r là một vai trò của ALC va x,y la cac tén ca thé Mét tập hữu hạn các tiên dé khang định cá thể được
gọi là một bộ khẳng định
Định nghĩa 1.6 Một diễn địch 7 là mô hình của tiên đề C(a) néu a € C!, ky hiệu là J C(a); dién dich 7 là mô hình của tiên đề r(a, b) néu (a,b) € r', ký hiệu
là! Er(a,b): diễn dịch ï là mô hình của ABox 4 nếu nó là mô hình của mọi tiên
dé trong A, ký hiệu là I E ô1
Trang 14â MN (unqualified number restrictions) la han ché sé luong khéng định tính nghĩa là hạn chế số lượng các vai trò nhưng không chỉ ra tinh chat cia cdc déi trong cần hạn chế theo dạng > nr hoặc < nr để xây dựng các khái niệm phức Chẳng
han, chúng ta có thể biểu điễn khái niệm GiangVien N > 2 banBe
© Q (qualified number restrictions) là hạn chế số lượng có định tính nghĩa là
hạn chế số lượng các vai trò có chỉ ra tính chất của các đối tượng cần hạn chế theo dạng > rr € hoặc < m7 € để xây dựng các khái niệm phức Ví dụ, chúng ta có thể
xây dựng khái niệm TienSi r1 > 2 huongDan NCS 2.3.2 Logic mé ta ALCN
Tạo tử hạn chế số lượng không định tính (unqualified Number restrictions),
ký hiệu bởi chữ cái ' và được viết là > nr (hạn chế ít nhất) và < nr (hạn chế
nhiều nhất), trong đó n là một số nguyên không âm Với những hạn chế này, ngữ nghĩa của hàm diễn dịch sẽ như sau:
Œœ m3 = {x € A' | #y | (œ,y) €r!} >m}' và
(< mr} = {x € Af | #{y | œ,y) €r1} <n)
Do đó, với tính chất hạn chế số lượng không định tính, chúng ta có thể mô tả
số lượng các mối quan hệ theo dạng đã chỉ ra mà cá thê phải thỏa mãn Với tạo tử hạn chế số lượng, ta có thể xây dựng khái niệm để biểu diễn cho phát biêu “nøbững người có i† nhất là 4 người bạn” như sau:
ConNguoi 1> 4 banBe
Tương tự ta biểu diễn khái niệm đại diện cho “những người hướng dẫn nhiều nhất 3 người khác” như sau:
ConNguoin < 3 huongDan 2.3.3 Logic m6 ta ALCQ
Tạo tử hạn chế số luong co dinh tinh (Qualified number restrictions), ky hiệu
1 Ký hiệu #T là để chỉ lực lượng của tập hợp ÏF
Trang 15bởi chữ cái Q va được viết là > nr.C (hạn chế ít nhất) và < nr.C (hạn chế nhiễu
nhấp), trong do n là một số nguyên không âm, € là một khái niệm Với hạn chế số lượng có định tính, ngữ nghĩa hàm diễn dịch như sau:
(> mr.C}! = {x € AI | #{y | (x,y) €rTAy€ec13>n}
và
(> mr.C}! = {x € AI | #{y | (x,y) €rFAy€ec13<n}
Ví dụ, chúng ta có thể định nghĩa thêm một khái niệm Giao SuGioi là “người
hướng dân it nhất la Š nghiên cứu sinh” như sau:
GiaoSuGioi = ConN guoi 1> 5 huongDan NCS 2.3.4 Logic m6 ta ALCI
Logic m6 ta ALCI cho phép su dung tao tw nghịch dao vai tro (role Inverse) va ky hiệu bởi chữ cái 7 Một vai trò 7 có vai trò nghịch đảo la r~ với ngữ nghĩa
được xác định như sau:
(r3 = {Œ,*) | (,y) er}
Với tạo tử nghịch dao vai trò, chúng ta có thê xây dựng các vai trò nghịch đảo từ các vai trò đang có Giả sử chúng ta có huongDan là vai trò đại diện cho một đối tượng này hướng dẫn là đối tượng kia Chúng ta có thê định nghĩa vai trò nghịch
dao duocHuongDanBoi = huongDan~ là vai trò để đại diện cho một đối tượng
này được hướng dẫn bởi đối tượng kia
2.3.5 Logic mô tả S
Một vai trò r7 được gọi là vai trò bắc cầu (transitive role) néurorEr Nghia
là, với r là vai trò bắc cầu, nếu ta có (x, y) € r! va (y,z) € 1! thi (x,z) Er’ Logic
m6 ta ALC cé cdc vai tro bac cau (tran Sitive role) được ký hiệu là /4£Œp+ hoặc S
Trong logic S, goi Np © Ne Ia tap cac vai trò bắc cầu Lúc đó với mọi r € Nz ta co rorEr
Với tạo tử vai trò bắc cầu, xét vai trò coHauDue chỉ đối tượng nảy có con
cháu là đối tượng kia Ta thay vai tro coHauDue 1a vai trò bắc cầu vì nếu (x,y) € coHauDue! va (y,z) € coHauDue! thi (x,z) € coHauDue! Nghĩa là nếu đối
tượng z có con cháu là đối tượng y và đối tượng y có con cháu là đối tượng Z thì
Trang 16CHUONG 3 SUY LUAN TRONG LOGIC MO TA ALC
3.1 Giới thiệu bài toán suy luận 3.1.1 Các bài toán suy luận
Có nhiều bài toán suy luận khác nhau cần phải giải quyết trong thực tế đề tìm ra các trị thức tiềm ân Như đã để cập trong Chương l, từ cơ sở tri thire KB = (JT, A), ching ta có các bài toán suy luận như sau:
a Bài toán kiểm tra tính nhất quán của cơ sở tri thức
Cho co s6 tri thire KB, kiém tra xem cơ sở tri thức #€® có nhất quán hay
không, nghĩa là kiểm tra xem có tổn tại một diễn dịch ¡ là mô hình của #€® hay
khơng
b Bài tốn kiểm tra tính thỏa mãn của khái niệm
Cho cơ sở tri thức #CØ® và khái niệm C, kiểm tra xem khái niệm € có thỏa mãn hay không dựa trên cơ so tri thie KB, nghĩa là kiểm tra xem có tổn tại một mô hình
I cua KB sao cho C! # @ hay khéng c Bai toan kiém tra bao ham khai niém
Cho co sé tri thức #C®, khái niệm C va D, kiém tra xem khái niệm € có được
bao hàm trong khái niệm D dựa trên cơ sở tri thire KB hay khéng, nghia la kiểm tra xem với mọi mô hình J cia KB thi C’ G Dĩ hay không
d Bài toán kiểm tra tương đương khái niệm
Cho cơ sở tri thức ØC®, khái niệm Œ và D, kiểm tra xem khái niệm € có tương
đương với khái niệm D dựa trên cơ sở tri thức 2Ø hay không, nghĩa là kiểm tra xem với mọi mô hình của #Ø® thì CÍ = DĨ hay khơng
e Bài tốn kiểm tra khái niệm rời nhau
Cho cơ sở tri thức KB, khai niém € và D, kiểm tra xem khái niệm € và khái
niệm D có rời nhau dựa trên cơ sở tri thtte KB hay không, nghĩa là kiểm tra xem với mọi mô hình J cia KB thi C! n D! = @ hay khong
Trang 17f Bai toan kiém tra thể hiện của khái niệm
Cho cơ sở tri thite KB, khai niém C va ca thé x, kiém tra xem cA thé x 6 phai là thể hiện của khái niệm € dựa trén co sé tri thc KB hay không, nghĩa là kiểm tra
xem với mọi mô hình J cia KB thi x € C’ hay khong g Bai toán kiểm tra thể hiện của vai trò
Cho cơ sở tri thite KB, vai tro r va hai ca thé x, y, kiém tra xem cap ca thé
x,y cé phải là thể hiện của vai tro r dua trên cơ sở tri thire KB hay khéng, nghia là kiêm tra xem với mọi mô hình I của #2? thì (a,b) € r! hay không
3.1.2 Chuyển đổi giữa các bài toán suy luận
Trong các bài toán suy luận quan trọng nhất là bài toán kiểm tra tính nhất quán của một cơ sở tri thức Lý do bài toán này được xem là quan trọng bởi vì thuật toán để giải bài toán này tương đối đầy đủ Hầu hết các bài toán suy luận khác đều có thể được chuyển đổi tương đương về bài toán kiểm tra tính nhất quán của một cơ sở tri thức
a Chuyển đổi thành bài toán bao hàm
Từ các bài toán khác nhau, chúng ta có chuyển bài toán đó về bài toán bao hàm để giải quyết một cách có hiệu quả hơn bằng cách như sau:
Cho hai khái niệm € và D, ta có:
e Bài toán kiểm tra khái niệm € không thỏa trên cơ sở tri thức #€® có thể
chuyển về bài toán kiểm tra khái niệm € được bao hàm bởi L trên cơ sở tri thức
KB,
e Bài toán kiểm tra hai khái niệm € và D là tương đương nhau trên cơ sở tri
thức #® có thể chuyển về bài toán kiểm tra khái niệm C duoc bao ham bởi D va D
được bao hàm bởi € trên cơ sở tri thc KB;
e Bài toán kiểm tra hai khái niệm € và D không giao nhau trên cơ sở tri thức
KB o6 thé chuyén về bài toán kiểm tra khái niém C MD duoc bao ham béi L trén
co so tri thie KB
Bên cạnh đó, chúng ta cũng có thê chuyển ngược lại các bài toán trên Nghĩa là các bài toán trên được xem là tương đương nhau
Trang 18Trước khi mô tả chỉ tiết thuật toán Tableaux, chúng ta cùng tìm hiểu một minh họa về Ý tưởng thuật toán được thể hiện qua ví dụ sau:
Vi du 3.2 Cho A và là các tên khái niệm, 7 là một tên vai trò Kiểm tra xem khái
niệm (3r 4) II (r B) có được bao hàm bởi khái niệm 3r7 (A r1) hay không?
Để kiểm tra khái niệm (3r.4) ïI(3r.B) có được bao hàm bởi khái niệm
dr.(AnB) hay không, chúng ta kiểm tra khái niệm Œạ = (3r.4) r (r.B) n ¬(r (A IB)) thỏa hay không thỏa
Đầu tiên, chúng ta chuyển khái niệm Œạ sang dạng chuẩn phủ định bằng cách sử dụng De Morgan và phép biến đổi tương đương của lượng từ tồn tại, lượng từ với mọi Kết quả là:
Cy = (ar A) n (ar B) n (Wr (4A U B))
Tiếp theo, chúng ta xây dựng một diễn dịch hữu hạn ï sao cho Cj # Ø Tức là
phải tổn tại một cá thể x € Gi
Vi Cy c6 duoc ti giao của ba khái niệm 37 A, 3r B và Vr (¬A LI ¬B), do đó + phải thỏa mãn cả ba ràng buộc này, nghĩa là x € (3r.A)!, x € (r.B)Ï và x €
(Vr (¬A u ¬B))!
Với x € (3r.A)!, chúng ta suy ra tồn tại của một cá thê y sao cho (,y) € r!
và y € A! Tương tự x € (3r.B)!, thi sẽ tồn tại một cá thể z sao cho (x,z) € r! va
z€Bl, Và y và Z là hai cá thê khác nhau, vì còn có thể có nhiều ràng buộc khác nhau đối với x và y Từ đây, chúng ta có thể đưa ra kết luận:
Voi bat ky han chế tôn tại nào, thuật toán cần đưa ra một cá thê mới như một bộ lọc vai trò và cá thể mới đó phải thỏa mãn ràng buộc được biểu diễn bởi hạn chế
trong biểu thức tôn tại
Vì x € (Vr (¬A LI ¬B))!, cho nên tất cả các cá thể thuộc 7: b (tập các cá thể
có được thông qua bộ lọc r với điều kiện lọc là cá thể b) đều phải thuộc (¬4 LI
¬) nghĩa là y,z € (¬A LI ¬B)! Từ đây, chúng ta có thé đưa ra kết luận sau:
Với các hạn chế phổ quát, thuật toán sẽ sinh ra ràng buộc biểu thức phổ quát
cho tất cả các cá thê thuộc bộ lọc vai trò tương ứng
Từ rảng buộc y € (¬A LI AB)!, ta có y € (¬4)! hoặc y € (¬B)† và chúng ta
phải chọn một trong hai khả năng đó Giả sử y € (¬4)!, điều này mâu thuẫn với
Trang 19Thuật toán Tableaux được thực hiện theo ý tưởng là: Đề kiểm tra xem khái
niém Cy 6 dang chuẩn phú định có thỏa hay không, ta bắt đầu từ ABox 4g = {Œa()} và áp đụng các quy tắc chuyển đổi trong bảng trên Nếu quy tắc chuyển đổi được áp dụng là quy tắc hợp thì quá trình biến đổi sẽ sinh ra hai ABox mới và ABox cũ thỏa khi một trong hai ABox mới sinh ra là thỏa Đây là lý do ta cần xem
tính thỏa của tập hữu hạn các ABox Š = {Ao,4, , Ay} thay vì chỉ xem xét một
ABox đơn lẻ Tập ABox S théa khi tồn tại một ¡(1 < ¡ < k) sao cho ABox 4; thỏa Các quy tắc trong bảng trên áp dụng để cho ra một tập S gồm hữu hạn các ABox theo cách như sau: lấy một ABox «4 từ § sau đó thay thế ABox này bởi một ABox Al va A" ty thuộc vào việc áp dụng quy tắc chuyển đổi nào được chọn
Ví dụ 3.3 Áp dụng quy tắc chuyển đổi >, cho ABox «4 chứa khái niệm C =
(Vr.A LI 3s B) rI Gr A LI 3r B) đối với cá thé x
Ta có: ⁄2 = {((Vr.A LI 3s B) n Gr A Ll 3r B))(%)}
Áp dụng quy tắc chuyển đổi >„ cho ABox «4 ta được: ⁄# = 7U {dr.A Li3s B)(+), (Gr A LI 3r.B)(+)}
Ví dụ 3.4 Áp dụng quy tắc chuyển đổi >„ cho ABox «4 chứa khái niệm C =
(Vr.A LI 3s B) LI (r A LI 3r B) đối với cá thé x
Ta có: ⁄4 = {((Vr.A LI 3s B) Lì Gr A Ll 3r B))(%)}
Áp dụng quy tắc chuyển đổi —, cho ABox A ta duoc: e ⁄4=/1U{(Vr.ALI3s.B)(+)}
e A" =AU{Gr.Awu Sr B)(x)}
Dé dé theo đõi, chung ta ky hiéu F a tap các quy tắc chuyển đổi của một logic mô tả cụ thể Trong phần nay, F là tập các quy tắc được cho trong Bảng 3.l
Định nghĩa 3.3 [5| Một ABox «4 được gọi là hoàn chỉnh dựa trên tập các quy tắc 7 nếu không tồn tại một quy tắc chuyển đổi nào trong # có thể áp đụng được
cho nó
Định nghĩa 3.4 [5] Một ABox A duoc goi là mâu thuẫn nếu một trong các điêu kiện sau xảy ra:
e Tôn tại một tên cá thé x sao cho {L (x)} G «4;
Trang 20e Tôn tại một cá thê x và một khái niém C sao cho {C(x), nC(x)} © A
Định nghĩa 3.5 [5] Một ABox 1 được gọi là đóng nếu nó có chứa ít nhất một
mâu thuẫn, ngược lại ABox «4 được gọi là mở
Khái niệm Œạ thỏa nếu tập § các ABox sinh ra tt ABox {Cy} bang cach ap dụng hết các quy tắc trong Bang 3.1 có chứa một ABox mở, ngược lại thì khái niệm Co la không thỏa Tính đúng của thuật toán này được thê hiện qua bổ đề sau:
Bồ đề 3.1 [5] Cho Œ là một khái niệm ở dạng chuẩn phủ định trong logie mô ta ALC
e Không tồn tại một dãy vô hạn các quá trình chuyển đổi theo các quy tắc
{Co(%)} 2 Sy 7 5y 2 (1)
e Giả sử Š" có được từ tập hữu hạn các ABox § bằng cách áp dụng các quy tắc chuyển đổi Lúc đó, $ thỏa mãn khi Đ' tha món (2) Â Bat ky mét ABox déng A nao déu không thỏa mãn (3) e_ Bất kỳ một ABox hoàn chỉnh và mở «4 nào đều thỏa mãn (4) Chứng minh:
e Khẳng định (1) dễ dàng có được vì các khái niệm nguyên tử trong Œạ là hữu hạn và các tạo tử cũng hữu hạn Do đó quá trình chuyên đổi theo các quy tắc (hữu
hạn) cũng là hữu hạn
e Đối với khẳng định (2), gọi Š“ là tập hữu hạn ABox có được từ tập hữu hạn
Abox S thông qua việc áp dụng các quy tắc đã cho trong Bang 3.1
- Trường hợp áp dụng quy tắc —n: Gọi /#' € S’ la ABox có được từ ABox A € § bằng cách áp dụng quy tắc —n cho khái niệm phức € r1D đối với cá thê x
Ta thay (CM D)(x) € A va C(x), D(x) € A’, déng thoi A’ = AU {C(x), D(x)}
Giả sử S” thỏa mãn Khi đó tồn tai mét A* € S' thỏa mãn +Néu A* # A’ thi A* €S Do do S thỏa mãn
+ Nếu A* = A’ thi x la thể hiện của khái niệm C va D, suy ra x là thể hiện
ctia khai niém phtre (C MD) Do do A théa man dan dén S théa man
-_ Trường hợp áp dụng quy tic >,,: Goi A’, A” € S' là ABox có được từ ABox A € S bang cach ap dung quy tắc >,, cho khái niệm phức € LI D đối với cá thé x Ta
Trang 21e Xây dung dé thi Gp = ({x}, @, {((@r 44) Nr (A U B)),,}) va dit Sy = {Go}
e Áp dụng quy tắc —n: Š¡ = Sy U{G,}\{Go} với G, = ({x}, 8, {((ar 4A) n Vr (A LI B))x, (1r ¬4)x„, Vr (A LI B)x})
e Ap dụng quy tắc >3: Š;=Š¡U{G;}\{G¡} với đ; = (x,y)},{(,y)}, {(Œr ¬4) n Vr (AU B)),, (r ¬4)x„, Vr.(A LÍ B)x, ơAy,7+xy})
đ p dng quy tắc -y: Š;— Š;U({G}\(G;} với đ; = ((x,y},{Œ.y)},
{(Œr ¬4) nr (A U B)),, (Ar 44)x, Vr (A UB) x, aAy, %y, (A U B)y})
® Áp dụng quy tắc =ụ: Š„¿= Š; U{G„,6;}\{G;} voi Gy = ({,y},((,y)},
{(Œr ¬4) n Vr (A LI B))„, (r ¬4)x, Vr (A LÍ B)„, ¬4y, r„y, (4 LÍ B)y, Ay})
6; = ((x,y), {(œ,y)}, ((Gr 74) Nr (AU B)),, (Ar 44)y, Vr (AU B)x, ¬y,
Tey, (A U B)y, By})
Gs hoàn chỉnh, không chứa mâu thuẫn Do đó, khái niệm Cy thoa man Ching
ta có thể xây dựng mô hình ï = (A1, -) như sau: ° Al={x,y}: er = {yy}: eo Al=ŨÚ, © B= {y}: 3.6 Tiéu két Chuong 3
Trong chương này, chúng tôi đã trình bày một số thuật toán suy luận cho logic
mô tả bao gồm thuật toán bao hàm theo cấu trúc cho logic m6 ta FLy va FL,, thuat
ton Tableaux cho logic mé ta ALC va thuat toan Tableaux theo quan điểm lý thuyết đồ thị cho logic mé ta ALC (bao gdm ca TBox bang réng va khac réng)