1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu ngữ nghĩa và phướng pháp định giá truy vấn đối với chương trình datalog mô tả

49 6 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 1

BO GIAO DUC VA DAO TAO

DAI HOC HUE

TRUONG DAI HOC KHOA HOC

LÊ MINH BÌNH

TÌM HIẾU NGỮ NGHĨA VÀ PHƯƠNG PHÁP

ĐỊNH GIA TRUY VAN DOI VOI CHUONG TRINH DATALOG MO TA

CHUYEN NGANH: KHOA HOC MAY TINH MA SO: 8 48 01 01

LUAN VAN THAC SI KHOA HOC

DINH HUONG NGHIEN CUU

NGUOI HUONG DAN KHOA HOC PGS.TS TRUONG CONG TUAN

Thừa Thiên Huế, 2020

Trang 2

LOI CAM DOAN

Tơi 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 khoa học của thầy giáo PGS TS Trương Cơng Tuấn

Các kết quả nêu trong luận văn là trung thực, cĩ nguồn gốc rõ ràng, được trích dẫn đầy đủ và chưa từng cơng bố trong bất kỳ cơng trình khoa học nào

Tơi xin chịu hồn tồn trách nhiệm về nội dung của luận văn này

Tác giả

Trang 3

LOI CAM ON

1, tơi xin gởi lời cảm ơn chân thành sâu sắc đến Quý thầy cơ giáo

Khoa Cơng nghệ thơng tin - Trường Đại học Khoa học Huế đã tận tình hướng dẫn,

truyền đạt kiển thức, tạo điều kiện thuận lợi trong quá trình học tập và thực hiện

luận văn tốt nghiệp

Tơi xin chân thành gửi lời biết ơn đến PGS.TS Trương Cơng Tuấn, người thầy đã hướng dẫn tận tình và cĩ những gĩp ý sâu sắc, hướng dẫn rất quý báu cho tơi trong suốt quá trình nghiên cứu, kịp thời cho tơi nhiều lời động viên cũng như những nhận xét đúng đắn để tơi cĩ thể hồn thành tốt được dé tai này

Trong quá trình thực hiện để tài, xin chân thành gửi lời cảm ơn đến sự giúp đỡ, những lời động viên từ phía gia đình, đồng nghiệp, bạn bè là động lực to lớn giúp tơi hồn thành tốt đề tài nghiên cứu của mình

Bản thân tơi đã cố gắng hết sức trong quá trình thực hiện để tài này nhưng chắc chắn sẽ khơng tránh khỏi những thiếu sĩt Kính mong quý thầy cơ và các bạn tận tình gĩp ý, chỉ bảo

Xin chan thanh cam on!

Thừa Thiên Huế, ngày 15 tháng 03 năm 2020

Học viên Lê Minh Bình

4

Trang 4

MUC LUC

DANH MUC CACHINE VE siesseoseesccrescsiesssservermsnncnnnnnnnmenccnnnmmnrnene i DANH MUC CAC CHU VIET TAT v MỞ ĐẦU -ce©cccccceccee 1

0:0019) t0 .4dẬÄä:£ŒÙHLỞ 3

TƠNG QUAN VỀ CHƯƠNG TRÌNH DATALOG 22 5< 5c scc<ccscse 3

VÀ LOGIC MƠ TTẢ 2-225°S22ecSC2eEEEEEE3221132114211112111211.111.111 11 xe 3 1.1 CHƯƠNG TRÌNH DATALOG -2-222222222222112221222212121212211 Eee 3

1.1.1 Cú pháp chương trình DafalOg St 212 1n hà he that 3 1.1.2 Ngữ nghĩa chương trình Dafalog - c2: 2c 2S nhe 6 1.2 TỎNG QUAN VẺ LOGIC MƠ TẢ . 1c 5222222122122 21a § 1.3 TIỂU KÉT CHƯƠNG l ©2222222221222122122121122122221222ee 11

0:09) 120157" -.- ƠỊƠ 12

NGỮ NGHĨA CỦA CHƯƠNG TRÌNH DATALOG MƠ TẢ 12 2.1.LOGIC MƠ TẢ Á/€Ở 225:22222222122121121121122112211222222 re 12 2.1.1 Cú pháp của logic mơ tả „Á/CC 5:55:52 St e 12 2.1.2 Ngữ nghĩa của logic mơ tả „Á/CC : 5:5: SE SE E112 re 13 2.1:3; :Cơ:sở'tri thức của:lòlic-mơ Tá Ữ toaonndanhntititioitioikitiiigiailinitiaisoigaygptoen 15

2.2 CHƯƠNG TRÌNH DATALOG MƠ TẢ -2-©22222222212221221221 22 z2e 18

2.2.1 Cú pháp 52-222 22112121221112211122111221221222222222rerre 18

/22.2suĐ[Ð iig lÏRtccsesseoacseszsoirdtoedirsthidiHgh8 000100860710 812E8E10 10 2ĐEES HEIĐLE4/9EĐH0EESEEUL01E050100108 21 2.3 TIEU KET CHUONG 2 25

0:0019) 9-05 -.4.Ag ,.)HDHAH , ƠỎ 26

PHƯƠNG PHÁP TRẢ LỜI CÂU TRUY VĂN VÀ ỨNG DUNG CUA

CHƯƠNG TRÌNH DATALOG MƠ TẢ 222c2©ccsecczeecrxeecrxeecrxee 26

Trang 6

DANH M C CAC HINH VE

Hình 3.1 Minh hoạt dẫn xuất

Trang 8

DANH MỤC CÁC KÝ HIỆU Giao Hoặc (phép tốn logic) Hợp Phủ định Và (phép hội logic)

Cơ sở Herbrand của chương trình logic P Vii tru Herbrand của chương trình logic P

Khái niệm đỉnh

Khái niệm đáy

Trang 9

DANH MUC CAC CHU VIET TAT AL Attribute Language

Trang 10

MO DAU

Trong những thập niên vừa qua, chương trinh Datalog va logic mơ tả là hai lĩnh vực nghiên cứu đã được nhiều người quan tâm và đã cĩ nhiều ứng dụng hữu ích trong các lĩnh vực khác nhau

Logic mơ tả là họ ngơn ngữ biểu diễn tri thức của một miền ứng dụng theo một cách thức cĩ cấu trúc Trong những ứng dụng cụ thể cĩ sử dụng logic mơ tả, tri thức của miền ứng dụng được đặc tả bằng các khái niệm và các vai trị Các ngơn ngữ DL cung cấp một tập các tạo tử để xây đựng các mơ tả khái niệm và vai trị từ các khái niệm và vai trị nguyên tố Các mơ tả như vậy cĩ thể được sử dụng trong

các tiên để, các quyết định của các cơ sở tri thức, và cĩ thể được suy diễn với các cơ

sở tri thức DL bằng các hệ thống DL

Logic mơ tả được ứng dụng đặc biệt hiệu quả trong việc xây dựng hệ thống Web thế hệ mới: Web ngữ nghĩa, với mục đích tăng khả năng liên kết giữa các tài nguyên và khả năng hiểu được thơng tin của máy

Bên cạnh các nghiên cứu về logic mơ tả, việc nghiên cứu chương trình Datalog và lập luận suy diễn bằng chương trình Datalog cũng đã đạt được nhiều thành tựu quan trọng cả về lý thuyết và ứng dụng thực tiễn Chương trình Datalog chủ yếu đựa trên ý tưởng lập trình khai báo, ở đĩ các chương trình khơng được tao ra

tử các câu lệnh cũng như từ các hàm mà được tạo ra chủ yếu dựa trên tập các vị từ

Trong những năm gần đây đã xuất hiện một hướng nghiên cứu mới nhằm kết hợp chương trình Datalog với logie mơ tả, và một trong những mục đích của việc nghiên cứu này là để hỗ trợ xử lý lập luận suy diễn trong Web ngữ nghĩa Ưu điểm của việc kết hợp này là đã tận dụng được những thành quả nghiên cứu trong hai lĩnh

vực nêu trên

Luận văn nghiên cứu về ngữ nghĩa và phương pháp định giá câu truy vấn đối với chương trình Datalog mơ tả Những nội dung nghiên cứu của luận văn cĩ ý nghĩa khoa học về mặt lý thuyết cũng như trong ứng dụng trong thực tiến

Cấu trúc luận văn gồm phần mở đầu, ba chương nội dung, phan kết luận và

Trang 11

Chương 1 trình bày về tổng quan về chương trình Datalog và logic mơ tả, trong đĩ tập trung vào một số khái niệm cơ sở ngơn ngữ logic bậc nhất, cú pháp và ngữ nghĩa của chương trình Datalog và giới thiệu về logic mơ tả

Chương 2 trình bày về chương trình Datalog mơ tả, trong đĩ tập trung vào logic mơ tả ,4Z€, cú pháp và ngữ nghĩa của chương trình Datalog mơ tả

Chương 3 trình bày phương pháp để trả lời câu truy vấn đối với chương trình Dafalog mơ tả, biểu diễn một số bài tốn bằng chương trình Datalog mơ tả và cài đặt, thực thi bằng hệ thống lập trinh logic DLV két hop với hệ thống lập luận OWL RACER

Trang 12

CHUONG 1

TONG QUAN VE CHUONG TRINH DATALOG

VA LOGIC MO TA

Chương một trình bày về cú pháp, ngữ nghĩa của chương trình Datalog và giới thiệu tổng quan về logic mơ tả Các nội dung này làm tiền để cho các nghiên cứu trong các chương tiếp theo

1.1 CHUONG TRINH DATALOG 1.1.1 Ca phap chuong trinh Datalog

Chương trình Datalog sử dụng các ký tự trong bộ ký tự được định nghĩa sau đây:

Định nghĩa 1.1 (Bộ ký tự) Bộ &ý # bao gồm lớp các ký hiệu:

e_ Các ký hiệu hằng: thường ký hiệu là các chữ cái thường a,b,e

e Các ký hiệu biến: thường ký hiệu là các chữ cái in hoa X,Ÿ,Z, e Cac ký hiệu vị từ: thường ký hiệu bởi p, g, 7

e_ Các hằng vị từ: rue, ƒaise

e_ Các ký hiệu kết nối: ¬ (phủ định), v (tuyển), A (hội), (kéo theo) e_ Các ký hiệu lượng từ: V (với mọi), 3 (tồn tại)

e_ Dấu ngoặc đơn trái: (, dấu ngoặc đơn phải: ), dấu phẩy:

Định nghĩa 1.2 (Hang thức) ỦJạng thức được định nghĩa đệ qui như sau: ()_ Mỗi hằng là một hạng thức

(ii) Mỗi biến là một hạng thức

(ii)Hạng thức chỉ được sinh ra bởi các quy tắc trên

Định nghĩa 1.3 (Nguyên tố) Cho 4 bộ ký tự và 7 là tập các hạng thức trên 44 Nếu p là ký hiệu vị từ ø-ngơi trong 4 và í¿, .,f„€ 7 thì pứu, .,f„) được gọi là nguyên tổ Định nghĩa 1.4 (Cơng thức) Cho 41 bộ ký tự và 7 là tập các hạng thức trên A Cong

thức được định nghĩa đệ qui như sau:

() Nguyên tố là một cơng thức

Trang 13

(iii) Nếu # và Ƒ là các cong thie thi: FEAF, WE, EVE, EOF, Eo Fila các

cơng thức

(v) Nếu Z là cơng thức, X là biến thì WX(), 1X(#) là các cơng thức và phạm vi của biến X là E Biến X xuất hiện trong # gọi là biến ràng buộc và các biến trong E nhưng khác tên với X gọi là biến tự do

(v) Cơng thức chỉ được sinh ra bởi một số hữu hạn các quy tắc trên Cơng thức/hạng thức khơng chứa biến được gọi là cơng thức/hạng thức nên

Định nghĩa 1.5 (Literal) 7z/era! là một nguyên tố hoặc phủ định của một nguyên tố Với p là một nguyên tố thì p được gọi là literal dương và ¬p là literal âm

Định nghĩa 1.6 (Quy tắc Datalog) Một quy tắc Dafalog là một cơng thức cĩ dạng: PETA An (n= 0)

d)

trong đĩ p, gi(i=0, ,n) la cdc nguyén t6 c6 déi là hằng hoặc biến

Khi n = 0 thì (1) trở thành p < và được gọi là quy tắc đơn vi, ky hiéu < cé thé bd qua Định nghĩa 1.7 (Chương trình Datalog) Một chương trình Datalog là một tập hữu hạn khác rỗng các quy tắc Datalog Ví dụ 1.1 Xem chương trình Datalog sau đây gồm các quy tắc để mơ tả mối quan hệ “tổ tién” (ancester): r.: ancesfer(X,Y) — parenf(X, Y)

r2: ancesfer(X,Y) <— parent(X,Z) A ancesfer(Z, Y)

Trong ví dụ này thi ancester, parent la các vị từ 2-ngơi, X, Y là các biến Quy tắc 11 cĩ nghĩa là: “Nếu X là cha/mẹ của Y thì X là tổ tiên của Y” Quy tắc rz cĩ nghĩa là:

“Nếu X là cha/mẹ của Z và Z là tổ tiên của Ƒ thì XY là tổ tiên của Y”

Trong chương trình Dafalog, các vị từ chỉ xuất hiện trong thân quy tắc được

gọi là các vị /ừ EDB, các vị từ xuất hiện ở đầu quy tắc được goi la cac wi tir IDB, cac

vi tr IDB ciing cé thể xuất hiện trong thân các quy tắc

Ngồi các vị từ EDB va vi từ 7DB, các quy tắc của chương trình Datalog cĩ thể

Trang 14

<>, >, <} Nếu 0 là một vị từ xây dựng trong thi ta viét YOY thay cho cach viết 9(X}) Ví dụ 1.2 Xét chương trình Datalog ở ví dụ 1.1, ancester la vi tu IDB, parent \a vi tu EDB Dinh nghĩa 1.8 (Vũ trụ Herbrand và Cơ sở Herbrand) Cho P la chvong trinh Datalog

1 Vũ trụ Herbrand của P, ký hiệu U;j, là tập tất cả các hằng cua P

2 Co sé Herbrand cia P, ky hiéu By, la tập tất cả các nguyên tố nền của P

Méi phan tử thuộc B, dugc goi 1a mot su kién

Vi du 1.3 Xét chương trình Datalog P gồm các quy tắc sau: rụ: parenf(a,b) —

r›: parent(b,c) <—

73: ancesfer(Y, Y) < parent(X,Y)

14: ancester(X, Y) < parent(X,Z) A ancester(Z,Y) Vũ trụ Herbrand của ? là p = {a, b, c}

Cơ sở Herbrand của P là

Bp = {ancester(a,a), ancester(a,b), ancester(a,c), ancester(b,a), ancester(b,b),

ancester(b,c), ancester(c,a), ancester(c,b), ancester(c,c), parent(a,a), parent(a,b),

parent(a,c), paren(b,a), parení(b,b), _ parent(b,c),parent(c,a), paremtc,b),

parenf(c.€)}

Định nghĩa 1.9 (Thể hiện Herbrand) Cho P là một chương trình Datalog Một /»ể

hiện Herbrand I cua P |a tap con cua Bp

Vi du 1.4 Xét chương trình Datalog P ở ví dụ 1.3 Một số thể hiện Herbrand của P:

I, = {ancester(a,a), ancester(a,b), ancester(a,c)},

In = {ancester(a,a), ancester(a,b), parent(b,a), parent(b,b)}, I3 = {ancester(b,a), ancester(b,b), ancester(b,c), ancester(c,a),

ancester(c,b), ancester(c,c), parent(b,a), parent(b,b)}

Trang 15

hang trong Up

Ký hiệu Ground(P) dé chi tập tất cả các hiện hành nền của các quy tắc xuất hiện trong P

Định nghĩa 1.11 Cho P là một chương trình Datalog P và 7 là một thể hiện Herbrand của P Ta nĩi rằng nguyên tố nên 4 là đứng trong 7 nếu 4 e 7 và 4 là sai trong 7 nếu 4 ¢ 1

Định nghĩa 1.12 (Mơ hình Herbrand) Giả sử P là chương trình Datalog Lúc đĩ:

() Một thể hiện Herbrand 7 được gọi là mơ hình Herbrand (hoặc là mơ hình)

của P nếu mọi quy tắc trong P là đúng theo thể hiện 7

(1) Mơ hình 7 của P được gọi là mơ hình nhỏ nhất nêu với mọi mơ hình J của P ta luơn cĩ ƒ c7 Vi du 1.5 Cho chương trình Datalog P: rd) <— s(1.2) <© PX) 4%) WX) — 1X) A XY) Co so Herbrand cua P la Bp = {?(1), z7) s(1.2) (2,1), s(1.1) s(2.2) PQ).p2), 4(1.2).q4Œ.L) ạ(1,1), a2.2)) Ta cĩ 7 = ƒz{1), s(1,2), 4(1.2) p(1)}là mơ hình nhỏ nhất của P 1.1.2 Ngữ nghĩa chương trình Datalog

Ngữ nghĩa chương trình Datalog thường được thực hiện theo quan điểm của lý thuyết mơ hình Các quy tắc trong chương trình được xem là cơng cụ đề xác định

mơ hình Để một thể hiện là mơ hình của một tập các quy tắc, nĩ phải làm cho các

quy tắc đúng với mọi phép gán trị cho các biến trong mỗi quy tắc được lấy từ miền giá trị đã cho

Ta cĩ định nghĩa sau :

Định nghĩa 1.13 (Ngữ nghĩa chương trình Datalog) Ngữ nghĩa của chương trình Daialog P là mơ hình nhỏ nhất của P, ký hiệu Ä⁄z

Trang 16

định nghĩa như sau:

Định nghĩa 1.14 Cho ? là chương trình Datalog, Bp la co so Herbrand cua P Ky hiệu 2Plà tập các tập con của B; Tốn tử hệ quả trực tiếp đối với chương trình

Datalog P là một ánh xạ Tp:23? 23? được định nghĩa như sau:

Với mỗi ï e2,

Tp?) = { A eBp| 3 hiện hành nền 4 Bị AB› A A B„ của P sao cho B;

€ Li=1,2, , n}

Dinh ly 1.1 [2] Cho ? là chương trình Datalog Lúc đĩ:

() Tốn tử 7? là đơn điệu tăng và cĩ điểm bất động nhỏ nhất

(ii) Diém bất động nhỏ nhất của tốn tử 7 chính là mơ hình nhỏ nhất của P Mệnh đề sau đây được suy ra trực tiếp từ định lý trên:

Mệnh đề 1.1 [3] Cho P là chương trình Datalog Mơ hình nhỏ nhất của P là giới hạn của dãy Trtn,n EN, trong do Trt0 = @, Tet (+1) = Tr(Teti)

Từ mệnh dé này ta cĩ thuật tốn tìm mơ hình nhỏ nhất:

Thuật tốn 1.1 Tìm mơ hình nhỏ nhất của chương trình Datalog Vao: Chuong trinh Datalog P va DB la CSDL EDB da cho

Ra: Mơ hình nhỏ nhất của P

Trang 17

Gia st CSDL EDB D của chương trình được cho là : D = {parent(a,b), parent(b,c), parent(c,d), parent(d,e)}

Các bước lặp dé tính mơ hình nhỏ nhất của P:

1s = T;Ầ0 = Ø

T= Tet l= Tro) = {parent(a,b), parent(b,c), parent(c,d), parent(d,e)} Tn= Tpl2 = Te) = hw {ancester(a,b), ancester(b,c), ancester(c,d), ancester(d,e)} 1= Tp3 = T; ?›) = l›\2 {ancester(a,c), ancesfer(b,a), ancesfer(c,e)} 1= Tp4 = Tp) = v2 {ancester(a,d), ancester(b,e)} 1s= TpẦ5 = T2) = Iau {ancester(a,e)} 1= TpẦ6 = Tp) = Như vậy điểm bất động nhỏ nhất của 7p chính là 7(7s), đĩ cũng chính là mơ hình nhỏ nhất của P

1.2 TONG QUAN VE LOGIC MO TA

Logic mé ta la mét ho cdc ngơn ngữ hình thức rất thích hợp cho việc biểu diễn và suy luận tri thức trong một miền quan tâm cụ thê

Trong logic mơ tả, miền quan tâm được mơ tả thơng qua các thuật ngữ về cá

thể, khái niệm, vai trị và các tạo tử Một cá thể đại diện cho một đối tượng, một khái niệm đại diện cho một tập các đối tượng cĩ chung tính chất và một vai trị đại

diện cho một quan hệ hai ngơi giữa các đối tượng hoặc giữa các đối tượng và các

giá trị dữ liệu Các khái niệm phức được xây dựng từ các khái niệm, tên vai trị và

tên cá thể bằng cách kết hợp với các tạo tử

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

Logic mơ tả được xây đựng dựa vào ba thành phần cơ bản gồm tập các cá thê, tập các khái niệm nguyên tố (cĩ thể hiểu như các lớp, các vị tử một ngơi) và tập các vai trị nguyên tố Các logic mơ tả khác nhau được đặc trưng bởi tập cdc tao tir khdi

Trang 18

phức, vai trị phức từ khái niệm nguyên tố và vai trị nguyên tố

Đề biểu diễn tri thức bằng logic mơ tả, cơng việc trước tiên ta phải làm là xây dựng các khái niệm bằng các quy tắc khái niệm từ các khái niệm nguyên tố, các vai trị nguyên tố Hệ thống khái niệm mà ta cĩ được gọi là hộp thuật ngữ (TBox) Đây là một trong hai thành phần chính của hệ cơ sở tri thức dựa vào logie mơ tả Cịn

một thành phần chính khác của hệ cơ sở tri thức trên là hộp khẳng định (ABox) ABox là tập hợp các khẳng định thể hiện mối quan hệ giữa khái niệm với cá thể

hoặc giữa hai cá thể với nhau Bên cạnh việc biểu diễn tri thức phần quan trọng

khác của hé logic m6 ta la cung cap các dịch vụ suy luận dựa trên tri thức đã được

biểu điễn Phần lớn các thủ tục suy luận bằng logic mơ tả là các thủ tục quyết định

với các câu trả lời “đúng” hoặc “sai” Đề xây dựng một hệ thống cơ sở tri thức dựa

trên logIc mơ tả người ta đã đúc rút thành ba bước quan trọng là:

Œ)_ Xác định các khái niệm nguyên tố, các vai trị nguyên tố và các cá thé ban đầu; đi) Sử dụng một ngơn ngữ logic mơ tả để xây dựng lên các khái niệm phức hợp; (iii) St dung cdc thủ tục suy luận để rút ra những tri thức đúng đắn về các khái

niệm và các cá thể nếu cĩ thẻ

Hiện nay logic mơ tả được xem là nền tảng quan trọng để xây dựng Ontology trong Web ngữ nghĩa với mục đích tăng khả năng liên kết giữa các tài nguyên và khả năng “hiểu” thơng tin trong máy tính

Các loại ngơn ngữ logic mơ tả được phân biệt bởi các tạo tử mà chúng cung cấp

Trong các ngơn ngữ logic mơ tả, ngồi thành phần cơ bản là các &Ưáï riệm nguyên tổ (chẳng hạn Nguoi, Bacsi, Bome, ) các vai frị nguyên fố (chang han

Cocon, Yeuthuong, ), các cá thể (chẳng hạn Dung, Minh, Thinh, ), logic m6 ta

su dung cac ky hiéu sau:

T: Gọi là khái niệm đỉnh, T để chỉ tất cả các đối trong,

L: Gọi là khái niệm đáy, _L khơng chỉ một đối tuong nao cả ¬ : Phủ định của khái niệm

Trang 19

In : Bao ham khai niém : Hạn chế tổn tại A V : Hạn chế phố đụng © : Hợp các vai trị IV : Lớn hơn hoặc bằng <_: Nhỏ hơn hoặc bằng

Các ký hiệu thường dùng trong logic mơ tả:

Tính bắc cầu của vai trị, nếu vai trị R cé tính bắc cầu thì với R(a,ð) và R(b,e) ta sẽ

c6 R(a,c) Đối với một logie mơ tả cụ thể, ta ký hiệu một vai trị # cĩ tính bắc cầu là Trans(R)

N Han ché sé lượng khơng định tính, là hạn chế số lượng trên các vai trị nhưng

khơng chỉ ra tính chất của các đối tượng cần hạn chế .\ cho phép xây dựng các

khái niệm về hạn chế số lượng cĩ dạng >w, <nĐ Chẳng hạn, để biểu diễn “người

cĩ ít nhất 2 con” ta cĩ thể viết Ngưoi T1 2 Cocon) Sau vai trị Cocon khơng chỉ ra tính chất cần thỏa mãn

9_ Hạnchếsố lượng định tính, là hạn chế số lượng trên các vai trị và cĩ chỉ ra tính

chất của các đối tượng cần hạn chế Ĩ cho phép xây dựng các khái niệm về hạn chế

số lượng cĩ dạng >wR.C, < nR.C Chẳng hạn, để biểu diễn “người cĩ 2 con trở lên và

đều là con gái” ta cĩ thể viết Ngươi T1 ©2Coeon.Nu) Khái niệm nữ (ẤNu) đặt sau vai trị cĩ con (Cocon) dé chỉ tính chất mà nĩ cần định tính thơng qua vai trị

H Bao ham vai tro, tinh chat bao ham vai trị cho phép một vai trị được bao hàm

trong vai trị khác theo dang RE S

Z — Vai trị nghịch đảo Tính chất vai trị nghịch đảo cho phép sử đụng nghịch dao

của vai trị Với ® là vai trị, ký hiệu R~ là nghịch đảo của #8, nghĩa là R~ = {(0,a) |

(a,b) € R} Lic dé néu R(a,b) thỏa mãn thì R~(b, a) thỏa mãn Chẳng hạn, với vai trị Cocon để chỉ đối tượng này cĩ con là đối tượng kia, ta cĩ thể định nghĩa vai trị nghịch đảo Cocow- đê chỉ đối tượng này cĩ cha/mẹ là đối tượng kia Lúc đĩ nếu đối

Trang 20

tượng ¿ cĩ con là đối tượng , nghĩa là Cocon(a,b) thỏa mãn thì Coeow(b,a) thỏa mãn và ngược lại

@ Định danh Tạo tử định danh cho phép xây dựng khái niệm dang {a} tir ca thể đơn lẻ z và khái niệm dạng {z;, , đ„} từ danh sách các cá thé ay, , a„ Khái niệm

{a} biéu diễn cho tập cĩ thể hiện chỉ là một cá thé a {a1, , an} biểu diễn cho khái

niệm gồm chính xác các thể hiện là những cá thé ay, , dn

#Z _ Tính chất hàm Tính chất hàm là một dạng đơn giản của hạn chế số lượng định tính (©), nĩ cho phép các thể hiện của khái niệm cĩ quan hệ tối đa với một cá thể khác thơng qua vai trị đã chỉ định, chang han “mot déi tượng chi cĩ thể kết hơn với

một đối tượng khác” cĩ thể biểu diễn bởi T & <1 Kethon

R Bao hàm vai trị phức, cho phép biểu diễn các tiên đề bao hàm cĩ dạng RoŠ E R hoặc RoS E S Chẳng hạn, với các vai trị Cocøn (cĩ con) và Cochau (cĩ cháu), giả sử đối trong a cĩ con là đối tượng ở, đối tượng ở cĩ con là đối tượng e thì a cĩ

cháu là đối tượng c, lúc đĩ ta cĩ CoconoCochau E Cochau

Hiện nay cĩ nhiều loại logie mơ tả được xây dựng đề đáp ứng các yêu cầu trong thực tế về biểu diễn tri thức và lập luận Dé thống nhất các tên gọi người ta

thường lấy logic mé ta ALC lam nén tang va str dung cac ky tu S, H, Z, O, N, Q, F, R để biểu diễn cho các tính chất được mở rộng Chẳng han ACLCT, nghia la logic

m6 ta ALC cong thém tinh chat nghịch dao vai tro, SHOTN Ia logic m6 ta ALC co

thêm các tính chất bắc cầu của vai trị, phân cấp vai trị, định danh, nghịch đảo vai trị và hạn chế số lượng khơng định tính

1.3 TIEU KET CHUONG 1

Chương I đã trình bày cú pháp và ngữ nghĩa của chương trình Datalog cùng với việc giới thiệu tổng quan về logic mơ tả Trong chương 2 sẽ trình bày việc kết hợp logic mơ tả 42€ và chương trình Datalog để tạo ra chương trình Datalog mơ

tả

Trang 21

CHUONG 2

NGU NGHIA CUA CHUONG TRINH DATALOG MO TA

Trong chương này, chúng ta sẽ trình bay về cú pháp và ngữ nghĩa của chương trình Datalog mơ tả Lớp chương trình này là sự kết hợp của chương trình Datalog

va logic mơ tả 4€ Trước hết, ta sẽ trình bay tong quan vé logic mé ta ALC

2.1 LOGIC MO TA ALC

2.1.1 Cú phap cia logic mé ta ALC

Logic mé ta ALC [4] cho phép xay dung cac khái niệm phức từ các khái niệm nguyên tố và vai trị nguyên tố bằng cách sử dụng các tao tử r1 (phép giao các khái

niệm), LI (phép hợp các khái niệm) và ¬ (phép phủ định của khái niệm) Hơn nữa,

các khái niệm cịn được xây đựng thơng qua các lượng từ V (hạn chế phổ dụng) và

lượng từ 3 (hạn chế tổn tại) đối với các vai trị

Định nghĩa 2.1 Gọi Xe là tập các khái niệm nguyên tố và Đa là tập các tên vai trị nguyên tố Các khái niệm trong 4C€ được định nghĩa một cách đệ quy như sau:

e T là một khái niệm của 4/C€, gọi là khái niệm đỉnh;

e L là một khái niệm của 4£€, gọi là khái niệm đáy;

e Nếu 4 là khái niệm nguyên tố thì ⁄4 là một khái niệm của 4€; e Nếu C, D là các khái niệm của 4/€ và r là vai trị nguyên tố thì:

CTD,CLID,—C, 3R.C, Vr.C là các khái niệm của 4£C

Ví dụ 2.1 Giả sử ta cĩ các cá thể, khái niệm nguyên tố và vai trị nguyên tố như sau: Trung, Huong, Dung là các cá thê

Nguoi là khái niệm chỉ các đối trong là người

Bacsi là khái niệm chỉ các đối tượng là bác sĩ

Giangvien là khái niệm chỉ các đối tượng là giảng viên

Trang 22

Kysu là khái niệm chỉ các đối tượng là kỹ sư GTNam là khái niệm chỉ các đối tượng cĩ giới tính nam GTNu là khái niệm chỉ các đối tượng cĩ giới tính nữ Cocon là vai trị chỉ đối tượng này cĩ con là đối tượng kia Kethon là vai trị chỉ đối tượng này kết hơn với đối tượng kia

Với những khái niệm nguyên tố, vai trị nguyên tố đã cho, dùng các tạo tử: T1,

LI, 3, V ta cĩ thể xây dựng các khái niệm phức sau:

Ngùi TI GTNam là khái niệm phức chỉ các đối tượng là nam Nguoi TI (1Kethon.Nguơi) là khái niệm phức chỉ người đã kết hơn

Nguoi (VCocon.GTNam) là khái niệm phức chỉ người cĩ con đều là con trai

Nguoi N GTNam nN (AKethon.Bacsi) N (WCocon.(Bacsi U Kysu)) la khai niém

phức để chỉ một người nam mà kết hơn với một bác sĩ và tất cả con của họ là bác sĩ

hoặc kỹ sư

Nguoi 1Cocon.T là khái niệm phức chỉ các đối tượng là người cĩ con

Nguoi I VCocon.L là khái niệm phức chỉ các đối tượng là người khơng cĩ con

Giangvien T1 WVDay.Khoahocnangcao là khái niệm phức chỉ Giảng viên chỉ dạy các khĩa học nâng cao

Nguoi 1 Day.Khoahoc N ¬Kysu là khái niệm để chỉ những người dạy các khĩa học và khơng phải là Kỹ sư

2.1.2 Ngữ nghĩa của logic mơ tả ,ACC

Ngữ nghĩa của các khái niệm trong các logic mơ tả 4C được thể hiện thơng qua phép thể hiện và được định nghĩa như sau:

Định nghĩa 2.2 (Thể hiện cia logic mé ta) [4] Mot thé hién cua logic mé ta ALC, ky

hiệu 7, la mot cap (A’, -7), trong dé A’ 1a mot tap khac rong, goi la mién cia Z va 71a một ánh xạ, gọi là hàm thể hiện của 7; cho phép ánh xạ:

Trang 23

e Moéica thé athanh mot phan tr ae A’

e Méi khai niém A thành một tập A? G A7:

e Méi vai tro r thành một quan hé hai ng6i 77 c AXA’ Thể hiện của các khái niệm phức được xác định như sau: Tr = A7 41"=Ø (Œƒ= A7T\Œ (CnDY=C AD? (CL Đƒ=CfÙ

(VR.CY ={aeAT | Wb eA’, (a, b) ER’ >beC?

(AR.C/ = {a eAf | 3b EA’, (a, b) ER’ADECY

Ta nĩi rằng C7 là thê hiện của khái niệm C trong thể hiện 7 va 7” 1a thé hién

của vai trị r trong thể hiện 7 Nếu một đối tượng xeC', lúc đĩ ta nĩi x là một thể hiện của C trong thể hiện 7“

Ví dụ 2.2 Cho tập các cá thể, các khái niệm và vai trị như trong vi du 2.1 Xét thể hiện 7 như sau:

Af= {Trung, Huong, Dung} NguofỨ= {Trung, Huong, Dung}

Nam’ = {Trung} G AT

Cocon’ = {(Trung, Dung), (Huong, Dung)} G ATxAT Kethon’ = {(Trung, Huong), (Huong, Trung)} & A7 xAT

Lúc đĩ ta cĩ:

Trang 24

(Nguoi 1 Nam)? = {Trung}

(Nam)? = {Huong, Dung}

(Nguoi Nn ¬Nam)”= {Huong, Dung}

(Nguoi 1 ACocon.Namy' = @

(Nguoi N AKethon.Nguoi)’ = {Trung, Huong> 2.1.3 Cơ sở trỉ thức ca logic mé ta ALC

Một cơ sở tri thire cia logic m6 ta ALC bao gém hai thanh phan: TBox va

ABox, ta cĩ các định nghĩa như sau:

Định nghĩa 2.3 (Bao hàm) [4] Khái niệm C goi la duoc bao ham trong khái niệm D, ký hiệu ŒE D nếu Cf G Д với mọi thê hiện 7, và C tương đương D, ký hiệu €

=D,nếu CED và DEC

Định nghĩa 2.4 (TBox - Hộp thuật ngữ) [4]

(i) Mét tién đề thuật ngit trong logic mé ta ALC là một biểu thức cĩ dang CE D,

trong đĩ C va D 1a cac khai niém cha ALC

(1) Một định nghĩa khái niệm là một khẳng định co dang A = C, trong do A la tén của một khái niệm nguyên tố và C là một khái niệm

(11) Một hộp thuật ngữ TBox trong ,4£C là một tập hữu hạn các tiên dé thuật ngữ

hoặc các định nghĩa khái niệm trong 4£€

Định nghĩa khái niệm dùng một tên tượng trưng để mơ tả một khái niệm phức

tap

Ví dụ 2.3 Xem TBox gồm các khái niệm về mối quan hệ trong gia đình: Phunu = Nguoi 1 GTNu

Danong = Nguoi N = Phunu Me = Phunu N 3Cocon.Nguoi

Trang 25

Cha = Danong T1 3Cocon.Nguoi Chame = Cha LI Me

Ba = Me II 3Cocon.Chame

Mekhongcocongai = Me [1 WCocon.—Phunn

Trong hộp khẳng định cá thê ABox sau đây, chúng ta mơ tả một phát biểu cụ thê về vấn để nào đĩ của miền ứng dụng dưới dạng các biểu thức của các khái niệm và vai trị Một vài khái niệm và vai trị nguyên tố trong ABox cĩ thể là các tên đã định nghĩa trong TBox Chúng ta giới thiệu các cá thể bằng cách đưa ra tên của chúng và khẳng định thuộc tính của các cá thể này Tên cá thể được ký hiệu bằng

các ký tu nhu a, b, c Su dung cac khái niệm C và vai trị Ư#, cĩ thể tạo ra các khẳng định ở hai dạng sau trong ABox: C(ø2), R(a,b) Ta cĩ định nghĩa sau:

Định nghĩa 2.5 (ABox - Hộp khẳng định) [4] Một khẳng định cá thê là một biểu

thức cĩ dạng C(2) (cịn được viết a:C) hoặc một khẳng định vai trị co dang R(a,b) (cịn được viết (a,b):R), trong đĩ C là khái niệm, RF 1a vai tro, a, Ð là các cá thể Một hộp khẳng định ABox là một tập hữu hạn các khẳng định cá thể Ví dụ 2.4 Giả sử ta cĩ tên cá thé: Hoa, Long, Tan, Lap, Hue ABox thé hiện mối quan hệ gia đình: Hoa:Me Long:Cha (Hoa, Lap):Cocon, (Long, Lap):Cocon, (Lap, Tan):Cocon Trong đĩ các khẳng định cá thể cĩ ý nghĩa:

Hoa:Me Hoa là một người mẹ

Long:Cha Long là một người cha (Hoa, Lap):Cocon — Hoa cĩ con là Lạp (Long, Lap):Cocon Long cĩ con la Lap (Lap, Tan):Cocon Lap co con la Tan (Lap, Hue): Vo Lap co vo là Hue (Hue,Tan):Cocon Hue co con 1a Tan

Định nghĩa 2.6 [4] Một thể hiện 7 là mơ hình của ménh dé bao ham CE D néu

C†G D1 Thể hiện 7 là mơ hình của TBox 7 nếu nĩ là thỏa tất cả các khẳng định

Trang 26

bao ham trong J Ménh dé bao ham y gọi là được suy diễn logic tir TBox T, ky hiéu Z7 Ey, nếu y thỏa mãn mọi mơ hình của 7:

Định nghĩa 2.7 [4| Một thể hiện 7 thỏa mãn khẳng dinh a:C néu đa” eC”, và thỏa

man (a, ):R nếu (4', bÐ eR” Thể hiện 7 được gọi là mơ hình của ABox A néu

7 thỏa tất cả các khẳng định trong A

Định nghĩa 2.8 (Mơ hình) [4] Cho cơ sở tri thức 5= (TJ, A) Lic do: (i) Mot thể hiện 7 là mơ hình của Ð nếu 7 là mơ hình của cả 7 và 4; (1) Š là thỏa mãn được nêu Ð cĩ mơ hình

Cơ sở trí thức Ð là nhất quán nếu tồn tại một thể hiện 7 là mơ hình của 3

Ngược lại Ð gọi là khơng nhất quán

Ví dụ 2.5 Cho cơ sở tri thức © gm TBox T va ABox A sau: 7= {GTNam E ¬GTNu}

A = { GTNu(Ha), GTNu(Hoa), GTNu(Lan), GTNam(Vinh), GTNam(Manh), GTNam(Phuoc), Chame(Vinh, Ha), Chame(Vinh, Hoa), Chame(Manh, Phuoc), Chame(Ha, Lan)}

Xét thể hiện 7 như sau:

At = {Ha, Hoa, Lan, Vinh, Manh, Phuoc}

GTNant’ = {Vinh, Manh, Phuoc © At GTNu! = {Ha, Hoa, Lan} G A7

Chame? = {(Vinh, Ha), (Vinh, Hoa), (Manh, Phuoc), (Ha, Lan)} © ATxAt la

một thể hiện và cũng là mơ hình của cơ sở tri thức > vì thể hiện 7 đều thỏa mãn

TBox 7 và ABox A

Trang 27

2.2 CHUONG TRINH DATALOG MO TA 2.2.1 Cú pháp

Một cách khơng hình thức, một chương trình Datalog mơ tả bao gồm một cơ sở tri thức logic mé ta L và một chương trình Datalog thơng thường P được mở rộng P sẽ bao gồm một tập hữu hạn các quy tắc Datalòg mở rộng, trong thân các quy tắc này cĩ thể chứa các câu truy vấn đến cơ sở tri thức 7 Một truy vấn như vậy hỏi liệu các tiên dé logic mơ tả cụ thê cĩ thê suy ra bởi 7 hay khơng

Trước hết chúng ta định nghĩa các khái niệm #y vấn logic mé ta và nguyên tổ logic mé ta, chiang duoc ding trong than cdc quy tắc để biểu diễn các truy vấn đến cơ sở tri thức logic mơ tả

Định nghĩa 2.9 (Truy vấn logic mơ tả, Nguyên tố logic mơ tả) [5] 1 Một ruy vấn logie mơ ta, ky hiéu Q(t) la:

(a) Mot tiên đề bao hàm khái niệm C E D, hoặc

(b) cĩ dạng C(, trong đĩ C là một khái niệm và / là một hạng thức, hoặc (c) co dang R(h, 72), trong đĩ ® là một vai trị và ứ, 72 là hạng thức

2 Một nguyên tổ logic mơ tả là biểu thức cĩ đạng :

DL[SiW pi, Sm pm, QO] ứn >0) ()

trong đĩ mỗi S; là một khái niệm hoặc vai trị trong cơ sở tri thức Ù„ ø; là vị từ một

ngơi nếu Š; là khái niệm và ø; là vị từ hai ngơi nếu S; 1a vai trị; Ĩ(£) là một truy vấn logic m6 ta Ta goi p; la vi tr input, \J la phép tốn hai ngơi với ý nghĩa là gia tăng S; bang cdc mé réng ctia py

Ví dụ 2.6 Giả sử trong một cơ sở tri thức logic mơ tả, ta cĩ vai tro keyword dé chi

các từ khĩa của một bài báo nghiên cứu khoa học và vai tro inArea để chỉ lĩnh vực

nghiên cứu của bài báo và &w là vị từ 2-ngơi trong một chương trình Datalog dé chỉ quan hé “Ja tir khĩa” Lúc đĩ nguyên tố logic mơ ta

DL[keyword \J kw; inArea|(P, A)

sẽ truy vấn đến vai tro inArea sau khi da gia tăng thêm các từ khĩa cho #eyword bằng các sự kiện của vị từ #w trong chương trình Datalog đã cho

Tiếp theo ta định nghĩa quy tắc logie mơ tả và chương trình Datalog mơ tả Định nghĩa 2.10 (Quy tắc logic mơ tả, Chương trình Datalog mơ tả) [5]

Trang 28

Một quy tắc logie mơ tả r là cơng thức cĩ dạng:

a <&— bị, by, not bys, ., not bn (m>k>0)

trong đĩ z là một nguyên tố, mỗi ở; cĩ thể là nguyên tố hoặc nguyên tổ logic mơ ta Dat H(r) = {a}, B(r) = B () U Bn), trong đĩ B†(Œ) = {ư\, , Đx}, BŒ) = {ben, , b„} Néu B(r) = @ va H(r) # © thi r được gọi là một sự kiện Quy ắc Dafalog mơ tả là quy tắc Datalog nếu nĩ khơng chứa nguyên tố logic mơ tả

Một chương trình Dafalog mơ tả bao gồm một cơ sở tri thức logic mé ta L va mét tập hữu hạn P các quy tắc logic mơ tả, ky hiéu KB = (L, P)

Trong chương trình Datalog mơ tả KB = (1, P), P chứa các truy vấn logic mơ tả trong thân quy tắc của nĩ và truy cập đến cơ sở tri thức logic mơ tả 7 Vì vậy nhờ các truy vấn đĩ cĩ thể xác định thơng tin vào từ P vào L và những luồng thơng tin

từ „ đến P

Ta dùng ví dụ sau minh họa cho các khái niệm ở trên

Ví dụ 2.7 Giả sử ta muốn gán các người phản biện cho các bài báo dựa trên thơng tin về các bài báo và những người cĩ thể tham gia phản biện, bằng cách dùng một cơ sở tri thức logic mơ tả ⁄z như sau:

Lr phan loai các bai báo vào các lĩnh vực nghiên cứu Một lĩnh vực nghiên cứu thuộc vào khái niệm Area Mét bài báo được phân loại phụ thuộc thơng tin từ khĩa

Vai trị keyword liên kết mỗi bài báo với các từ khĩa và vai trị #4rea liên kết mỗi

bài báo với các lĩnh vực mà bài báo thuộc vào Một bài báo ở trong một lĩnh vực

nếu nĩ liên kết với một từ khĩa của lĩnh vực đĩ Ngồi ra, vai trị exper gắn liền những người với các lĩnh vực mà họ là chuyên gia Để đơn giản, một người là chuyên gia trong một lĩnh vực nếu người đĩ cĩ viết một bài báo trong lĩnh vực đĩ Khái niệm Re/eree bao gồm tất cả những người cĩ thể tham gia phản biện Vai trị confain liên kết mỗi lĩnh vực với một nhĩm các từ khĩa Cuối cùng, vai trị /opicOƒ

liên kết các cụm các từ khĩa cĩ liên quan với nhau (chang hạn, cĩ thể đặt vào cụm

C1 cdc từ khéa “Semantic Web”, “Ontologies” Sau đây là các tiên đề của Lr: Paper © Pupblication, Referee © Person,

Paper(pub1), Referee(per1), Referee(per2); topicOf (C1, Semantic_Web), Author(pub1, per2);

Trang 29

Area(A), Area(B);, Area(C), Area(D), Area(E); Contain(A, Agents), keyword(pub1, Agents);

dinArea.{c} = Akeyword.Acontain — {c}), với mọi c e {A, B, C, D, F}; dexperf.{c} =3Author — (3inArea.{c}), với mọi c € {A, B, C, D, F} Chương trình Datalog mơ tả ?z gồm các quy tắc sau đây:

(1) paper(p1), kw(p1, Semantic_Web)

(2) paper(p2), kw(p2, Bioinformatics), kw(p2, Answer Set Programming) (3) kw(P, K2) <— kw(P, K1), DL[topicOf\(S, K1) DL[topicOf\(S, K2) (4) paperArea(P, A) — DL[keyword \J kw; inArea](P, A)

(5) cand(X, P) < paperArea(P, A), DL[Referee|(X), DL[expert]|(X, A)

(6) assign(X, P) < cand(X, P), not sassign(X, P) (7) = assign(Y, P) < cand(Y, P), assign(X, P), X != Y

Giải thích ý nghĩa các quy tắc:

Các sự kiện từ (1) đến (2) chỉ ra pl, ø2 là hai bài báo cùng với các từ khĩa của chúng

Quy tắc (3) cho phép lấy thơng tin về từ khĩa từ cơ sơ tri thức logic mơ tả La Cụ thé, vị từ 2-ngơi #w được gia tăng thơng qua nguyên tố logic mơ tả bởi những từ khố trong 7a cĩ cùng lĩnh vực Về trực giác, nguyên tổ nền DL[/opieO/l(S K) đúng với tat cả các cap (S, K) sao cho Lr topicOftS, K)

Quy tắc (4) truy vấn cơ sở tri thức logie mơ tả La đã được gia tăng để nhận được các lĩnh vực mà mỗi bài báo được phân vào Cụ thể, trước hết gia tăng vai trị keyword trong Lp bằng các sự kiện của vị tử 2-ngơi #w trong chương trình Pa Sau đĩ truy vấn vai trị 4rea trên phiên bản sửa đổi Lig của Le (nghia la ta nhận tử hg cac linh

vực mà bài báo được phân vào) Ở đây, thơng tin mới đến từ # cĩ thể kích hoạt

thơng tin mới cĩ trong La

Quy tắc (5) sẽ dựa vào thơng tin này và từ chuyên gia trong lĩnh vực của bài báo để

xác định các ứng viên phản biện (thê hiện boi vi ttr cand) cho bài báo Cụ thể hơn, X là một ứng viên để phản biện bài báo P, nếu bài báo P thuộc lĩnh vực 44 và X được

Trang 30

biết đến trong như một người cĩ thể phản biện và là một chuyên gia trong lĩnh

vực 4

Quy tắc (6), (7) để chọn ra một người phản biện cho một bài báo trong số các ứng viên

Chú ý rằng, các quy tắc từ (3) đến (5) truyền thơng tin từ La đến Pa Trong quy tắc (4) thơng tin cũng được truyền từ Pa đến La Vì vậy thơng tin được truyền theo cả hai hướng giữa cơ sở tri thức logic mơ tả Ƒx và tri thức được biểu diễn bởi chương trình Datalog mơ tả ở trên

2.2.2 Ngữ nghĩa

Trước hết ta định nghĩa thê hiện Herbrand và giá trị chân lý của chương trình Datalog mơ tả trong các thể hiện Herbrand Giả sử KP = (L, P) là chương trình Datalog mơ tả

Cơ sở Herbrand của P, ký hiệu là HBp, 1a tap tất cả các literal nền xây dựng từ các ký hiệu vị từ và các ký hiệu hằng trong P Một thể hiện Herbrand 7 của P (hoặc đơn giản là thể hiện) là một tập con của HBp

Định nghĩa 2.11 Cho Kð = (L, P) là một chương trình Datalog mơ tả và 7 là thé

hiện cua P Luc đĩ:

e7 là mé hinh cua literal nén 1 © HBp (hay I thoa man J) L, ky hiéu 1a TEu T khi và chỉ khi ? e 7

e 7là mơ hình của một nguyên tổ logic mơ tả nên

a~ DL[Sì Wp ở Sm W pani O|(c),

ky hiéu J Fra, khi va chi khi LU UJ 4,7) -O(c)

i=l

trong đĩ: 41/0) = {S(©) | p(e) e1}

e 7 là mơ hình của quy tắc Dafalog mơ tả nên r ký hiệu là 7 Eu r nếu và chỉ nêu 7 Fy, J với mọi / thuộc P{) và 7Ï Eu Ï với mọi 7 € Br) kéo theo I=, Hr)

e J 1a mé hinh của chương trinh Datalog mé ta KB = (L, P) (hoac I thoa man

Trang 31

KP), ký hiệu 7 EKB nếu và chỉ nếu 7 Eu z với mọi re ground(P) Ta nĩi KB là

thỏa mãn được nêu KB cĩ mơ hình và KB khơng thỏa mãn được néu KB

khơng cĩ mơ hình

22.21 Ngữ nghĩa chương trình Datalog mơ tả dương

Trước hết phần này sẽ trình bày cú pháp của chương trình Dafalog mơ tả dương, trong đĩ khơng cĩ chứa phép phủ định not trong thân các quy tắc Tương tự chương trình Dafalog, mỗi chương trình Datalog mơ tả dương cũng cĩ duy nhất một mơ hình Herbrand và được xem là ngữ nghĩa của nĩ

Định nghĩa 2.12 (Chương trình Datalog mơ tả dương) [5] Một chương trình Datalog mơ tả KB = (L, P) được gọi là chương trình Dafalog mơ tả đương nếu khơng cĩ quy tắc nào trong P cĩ chứa phép phủ định not

Ví dụ 2.8 Xem chương trình Datalog mơ tả dương KB = (L, P) là với Ù là cơ sở tri thức logic mơ tả chỉ gồm một tiên đề 9 E C, trong đĩ Š và € là các khái niệm và P là chương trình Datalog bao gồm các quy tắc:

m:b<— DL[ŠS tJ p: C](a)

72: p(4) —

Đối với chương trình Datalog dương P, phép giao hai mơ hình của P là một mơ hình Ta cĩ định lý sau:

Dinh ly 2.1 [5] Cho KB = (L, P) là chương trình Datalog mơ tả dương Nếu thể hiện

1, 5C HPb là các mơ hình của Kð thì 7¡ đ 72 cũng là mơ hình của KB

Hệ qua 2.1 [5] Cho KB = (L, P) là một chương trình Datalog mơ tả đương Nếu KB

thỏa mãn thì tổn tại một mơ hình duy nhất 7 c Bp của KP sao cho 7 G J với mọi mơ hình J c Bp của KP, tức 7 là mơ hình nhỏ nhất duy nhất của KB

Mơ hình đặc biệt này chính là ngữ nghĩa của KP.Ta ký hiệu mơ hình nhỏ nhất duy nhat cha KB 1a Mrs

Tương tự chương trình Datalog, mơ hình nhỏ nhất của K cũng cĩ thé tinh nhờ vào tốn tử hệ quả trực tiếp 7x của chương trình Datalog mơ tả dương, được

định nghĩa như sau:

Định nghĩa 2.13 [5] Cho KB = (Z, P) la một chương trình Datalog mơ tả Tốn tử

Trang 32

hệ qua trực tiếp Tx; là một ánh xạ Tkg: 2”? —› 2”?* xác định như sau:

H(r)|r € ground(P),I E,IVIe P(r)} nếu I nhất quán

Bp nếu J khéng nhat quan

Tp) = {

Mệnh đề 2.1 [5] Nếu KB = (1P) là một chương trình Datalog mơ tả đương thì tốn tử 7k; đơn điệu

Định lý sau chỉ ra rằng mơ hình nhỏ nhất của KP là điểm bất động nhỏ nhất của tốn tử hệ quả trực tiếp 7xz và cĩ thể được tính bằng một quá trình lặp để xác định điểm bất động

Dinh lý 2.2 [5] Cho KB = (L, P) la mot chương trình Datalog mơ tả dương Ký hiệu điểm bất động nhỏ nhất cia Txz 1a lfp(Tk) Lúc đĩ:

1 lfp(Txs) là mơ hình nhỏ nhất Ä⁄«; của KB nếu KB thỏa mãn; 2 lfp(Tks) = HBp nêu KB khơng thỏa mãn;

3 lfp(Txs) = Tzp(Ø)= UTi,@) Trong đĩ 7„(Ø)=Ø: va

i=0

Tip(O) =Txp (Tgp (Ø)) với i > 0

Ví dụ 2.9 Xét trở lại chương trinh Datalog m6 ta KB = (L, P) trong Vi du 2.8, KB la chương trình Datalog mơ tả dương với 7 là tiên đề 9 E C và P bao gồm các quy tac:

nib <©DI|Stlp: C](a) 72: p(4) — Ta cĩ các bước lặp đề tính mơ hình nhỏ nhất Ä⁄; của Kð: Tp) =; Trp() = Teal) = {pa}: Tế;(Ø) = Tia(Txy(Ø)) = {p(4), b): Tế;(Ø) = Txs(Tếy(Ø)) = {p(a), By Vay Mxz = {p(a), 5}

2.2.2.4 Ngit nghia chuong trinh Datalog mơ tả

Trong phần này, chúng ta sẽ trình bày về ngữ nghĩa tập trả lời của chương trình Datalog mơ tả Ngữ nghĩa này được thực hiện dựa vào một phép biến đổi để loại bỏ

Trang 33

tất cả các literal âm và nguyên tố logic mơ tả của chương trình Datalog mơ tả

Định nghĩa 2.14 [5] Cho KB = (7, P) là một chương trình Datalog mơ tả và thé hiện ICHP; Phép biến đổi của P theo 7 và thể hiện 7, biến đổi chương trình P thành

một chương trình ký hiệu là P bằng cách loại bỏ khỏi ground(P) :

(i) Tat cả quy tắc logic mé ta r sao cho hoặc 7 lu ø đối với a € BY(r) hoặc Ƒ Eu 1 déi voi Je B-(r); va

(ii) Tất cả các nguyên tố logic mơ tả trong BY(r) va tat ca cac literal trong B-(r) từ những quy tắc cịn lại

Dé ý rằng P là chương trình Datalog đương nền (vì nĩ khơng chứa nguyên tố logic mơ tả và cũng khơng chứa literal âm) nên P luơn cĩ mơ hình nhỏ nhất Ta cĩ định nghĩa sau:

Định nghĩa 2.15 (Tập trả lời) Cho Kð = (L, P) là một chương trình Datalog mơ tả

Tập trả lời của KB là một thể hiện 7 œ //Bp sao cho 7 là mơ hình nhỏ nhất của

chương trình Datalog dương Be Ký hiệu ans(KP) là tập tất cả các tập trả lời của KB

Kết quả sau chỉ ra rằng ngữ nghĩa tập trả lời của chương trinh Datalog mé ta KB khơng chứa nguyên tố logic mơ tả thì sẽ trùng với ngữ nghĩa mơ hình nhỏ nhất của P

Định ly 2.3 [5] Cho KB = (LZ, P) là chương trình Datalog mơ tả khơng chứa nguyên tố logic mơ tả Lúc đĩ phép thé hiện 7 C 77Bp là mot tap tra loi của K khi và chỉ khi nĩ là mơ hình nhỏ nhất của chương trình Datalog P

Định lý sau chỉ ra rằng mọi tập trả lời của chương trình Datalog mơ tả KB cũng là mơ hình cua KB

Dinh lý 2.4 [5] Cho KB = (Z, P) la chương trình Datalog mơ tả Lúc đĩ, mọi tập trả

lời của KP đều là mơ hình của K5

Vi du 2.10 Xét chương trình Datalog mơ tả KB = (L, P) với L = {S E C} và P gồm các quy tắc sau:

pa) — DLS ¢:C](@)

Trang 34

qa) <— pa)

ra) — —4(4); ~s(a)

Taco li = {r(a)} va In = {p(a), q(a)} la cac tap tra loi cha KB

2.3 TIEU KET CHUONG 2

Trong Chương 2 đã trình bay vé cu phap, ngit nghia ctia logic mé ta ALC va chương trình Datalog mơ tả Các ví dụ minh họa cho các khái niệm cũng như ngữ nghĩa của logic mơ tả 4/€ và chương trình Datalog mơ tả được trình bày chỉ tiết Trong chương 3 sẽ tìm hiểu phương pháp trả lời câu câu truy vấn đối với chương trình Datalog mơ tả

Trang 35

CHUONG 3

PHƯƠNG PHÁP TRẢ LỜI CÂU TRUY VĂN

VÀ ỨNG DỤNG CỦA CHƯƠNG TRÌNH DATALOG MƠ TẢ

Chương 3 sẽ trình bày phương pháp để trả lời câu truy vấn đối với chương

trình Datalog mơ tả và tiến hành cài đặt, thực thi một số bài tốn minh họa bằng hệ

thống lập trình logic DLV kết hợp với hệ thống lập luận OWL RACER

3.1 PHUONG PHAP TRA LOI CAU TRUY VAN

Phần này trình bày một phương pháp để trả lời câu truy vấn đối với chương trình Datalog mơ tả [2] Định nghĩa 3.1 (Đích) 1 Một đích (hoặc #ruy vấn) G đơi với chương trình Datalog mơ tả KB = (L, P) là cơng thức cĩ dạng: false <— qI ,đm (1)

trong đĩ ø > 0, méi qi la một nguyên tố hoặc một ràng buộc khẳng định cá thể của logic mé ta (1) cĩ thể viết đơn giản:

“ái đm

2 Một câu trả lời đối với KB v2 G là một phép thế Ø đối với các biến của G Ta nĩi 6 là câu trả lời đúng đối với KB nếu G6 là hệ quả logic của KB

Định nghĩa 3.2 (Hợp giải) [2| Cho G là đích cĩ dạng: < qi đi đm

và Œ là quy tắc Datalog mở rộng cĩ dạng:

pe by, bn

Lúc đĩ việc hợp giải đích Œ với mệnh để C sẽ nhận được đích Œ' được dẫn xuất từ

G va C bằng cách dùng phép thế Ø nếu các điều kiện sau đây thỏa mãn: Œ) 4i e {ạ đ„} là một nguyên tố, gọi là nguyên tổ chọn trong đích G, (ii) Ø là phép thế tổng quát nhất sao cho øØ = qi,

(it) G’ 1a dich — (qi, git, Bi, ,bn, địn, đu)

Trang 36

Định nghĩa 3.3 (Dẫn xuất) [2] Cho (L, P) là chương trinh Datalog mé ta ALC va Go

1a mét dich Mét dan xudt déi v6i (L,P) U G bao gồm:

1 Một dãy các đích (cĩ thể hữu hạn hoặc vơ hạn): Ớn, ,Œn, 2 Một dãy các mệnh đề Datalog mở rộng của P: Cạ, ,C„,

3 Một dãy các phép thế 6i, ,Ø„, sao cho với mỗi Gi:i là hợp giải của Gi va C; bang cach ding O41

Một dẫn xuất cĩ thể kết thúc với đích cuối cùng cĩ dạng ci, ,c¿ trong đĩ đi

là ràng buộc khăng định cá thể của logie mơ tả, được gọi là mệnh đề rơng cĩ ràng

buộc hoặc đơn giản là mệnh đề rong Hình vẽ mơ tả dẫn xuất, xuất phat tr dich Go:

Go Co, 1

Gra Crt, On

'

Hình 3.1 Minh hoạt dẫn xuất

Định nghĩa 3.4 (Dẫn xuất thành cơng, dẫn xuất thất bại)

(i) Mét dan xuất thành cơng khi đích kết thúc bởi mệnh đề rỗng

(it) Mot dan xuất thất bại khi đích kết thúc khơng phải là mệnh đề rỗng, nguyên tố chọn trong đích này khơng thể hợp nhất với đầu của mọi mệnh đề trong chương trình

Định nghĩa 3.5 (Phép thế tinh câu trả lời) [2] Cho (Z, P) là chương trình Datalog mơ tả 4£Œ và G là một đích Một phép thé dé tính câu trả lời của dẫn xuất thành cơng đối với (7, P) t2 G là một phép thế Ø nhận được bằng cách thu hẹp phép hợp 646; 9, chỉ trên các biến của Ớ, trong đĩ Ø\,@, Ø„ là dấy các phép thế được dùng trong dẫn xuất thành cơng đối voi (L, P) UG

Trang 37

Vi du 3.1 Xét chương trình Datalog mơ ta KB = (L, P), trong do:

Cơ sở tri thức 4€ L bao gồm các khái niệm: GV = Giảng viên, GVQL = Giảng viên làm cơng tác quản lý, CBGD = Cán bộ giảng dạy, DAY = Giảng dạy, SV = Sinh viên, CHUDE = Chủ để, HP = Học phần, HPNC = Học phần nâng cao, HPCB = Học phần cơ bản

Gia st:

1) Giảng viên là cán bộ giảng dạy

2) Giảng viên làm cơng tác quản lý là Giảng viên và khơng dạy bất kỳ học phan nao

3) Tập các học phần được phân thành các học phần cơ bản và các học phần nâng cao

4) Hung là Giảng viên và Hung dạy học phần ##, Mai là Giảng viên và đạy các học phần nâng cao, Hoa là sinh viên, #ø là học phần nâng cao, cs# và /Jg là các chủ đề Lúc đĩ cơ sở tri thức 4£C L được mơ tả như sau: GV © CBGD GVOL = GV ¬VDAY.HP HPNC U HPCB = HP HPNC NAPCBE + Hung:GV, Hung DAY ttnt, Mai:GV nNVDAY.HPNC, Hoa: SV, ttnt: HPNC,

estt: CHUDE, Itig: CHUDE

Trang 38

huongdan(X,Y)<— X:SV, Y:GVQL

thidau(Hoa,ttnt), monhoc(ttnt,cstt), monhoc (tint, Itlg),

chuyengia (Hung, cstt), chuyengia(Mai, Itlg) Các nguyên tố trong P cĩ ý nghĩa như sau:

huongdan(Y,Y): Sinh viên X cĩ thể được Giảng viên Y hướng dẫn,

dahoc(X,Y): Sinh viên X đã học chủ dé Y trong chương trình học,

chuyengia(Y,Y): Giảng viên X là một chuyên gia về chủ đề Y,

thidau(X,Y): Sinh viên X đã thị đậu kỳ thị của học phần Y,

monhoc(Y,Y): Chủ đề Y được nghiên cứu trong học phần X

Xét dich Go: <— huongdan(Hoa,Hung) với ý nghĩa là “Hoa khơng được giảng viên Hung hướng dẫn”

Với đích Go, tìm được mệnh đề trong P cĩ ký hiệu vị từ đầu là huongdan:

huongdan(X,Y) <— dahoc(X,Z), chuyengia(Y,Z), X: SV, Z: CHUDE,Y: CBGD n ADAY.HPNC

Hợp nhất huongdan(Hoa,Hung) va huongdan(X,Y) nhận được phép thế 6; = {X/Hoa, Y/Hung } Bước dẫn xuất đầu tiên sinh ra đích Gi:

Gi:< dahoc(Hoa,Z), chuyengia(Hung,Z), Hoa: SV, Z CHUDE, Hung: CBGD ni

ADAY.HPNC

Với đích Gi, nguyên tố chọn đahoc(Hoa,Z2), lúc này ta tìm được mệnh đề trong P la:

dahoc(X,Z) € thidau(X,Y), monhoc(Y,Z), X: SV, Y: HP, Z:

CHUDE Trong buéc hop giai thir hai, nhan duoc Ø; = {X/Hoa} Bước dẫn xuất thứ hai sinh ra đích G2:

G2: < thidau(Hoa,Y), monhoc(¥,Z), chuyengia(Hung,Z), Hoa: SV, Y: HP, Z:

CHUDE, Hung:CBGD n ADAY.HPNC

V6i dich G2, nguyén tố chọn thidau(Hoa,Y), ta tim duoc su kién: thidau(Hoa, tint)

Phép thế nhận được ở bước này là 63 = {Y/z:sz} Bước dẫn xuất thứ ba sinh ra dich G3:

G3:< monhoc(ttnt,Z), chuyengia(Hung,Z), Hoa: SV, tint: HP, Z: CHUDE, Hung:

CBGD nN ADAY.HPNC

Trang 39

Voi dich Gs, nguyén tố chọn monhoc(ttnt,Z), tim được sự kiện monhoc(mt,csft)

Phép thế nhận được ở bước này là Ø; = {Z/es#} Bước dẫn xuất thứ tư sinh ra đích Ga:

Ga: < chuyengia(Hung,cstt), Hoa: SV, tint: HP, cstt CD, Hung: CBGD Nn ADAY.HPNC

Với dich Ga, nguyên tố chọn chuyengia(Hung,csff) ta tìm được mệnh dé đơn vị

chuyengia (Hung, cstt) dé hop giải vì vậy ta nhận được mệnh đề rỗng:

< Hoa: SV, tint HP, cstt CHUDE, Hung: CBGD n ADAY.HPNC

Nhu vay dẫn xuất đối với (L,P) © Go là thành cơng và nhận được câu trả lời đúng

đối với đích

Go: — huongdan(Hoa, Hung)

nghĩa là sinh vién Hoa duoc huéng dan béi giang vién Hung 3.2 CAI DAT VA THUC THI MOT SO BAI TOAN

Phần này sẽ trình bày một số bài tốn được biểu diễn bằng chương trình Datalog mơ tả và được thực thi bằng hệ thống lập trình logie DLV kết hợp với hệ thống lập luận OWL RACER

Bài tốn 1 (Cơ sở dữ liệu sản phẩm) Một cửa hàng máy tính nhận các thiết bị phần cứng từ một số nhà cung cấp để bán Ta dùng cơ sở tri thức logic mơ tả Ls:

- Mỗi nhà cung cấp (các thành viên của khái niệm Cang) cung ứng một số loại thiết bị phần cứng (được mã hĩa thơng qua vai trị Nacungcap)

- Cửa hàng máy tính cĩ hợp đồng nhận hàng cung cấp đối với một số thiết bị từ các nhà cung cấp (được mã hĩa thơng qua vai tro hopdong)

- 1s chứa thơng tin về phạm vi sản phẩm được cung cấp bởi mỗi nhà cung cấp và về các điều kiện giảm giá cĩ thể (chúng ta giả sử rằng việc mua hai hoặc nhiều thiết bị phần cứng từ cùng một người bán sẽ được giảm giá)

Lúc đĩ ta cĩ thê minh họa cơ sở tri thức logie mơ tả Ls nhw sau: > 1 nhacungcap © Cuahang, T&V nhacungcap.Thietbi, hopdong E nhacungcap, > 2 hopdong © Giamgia,

Cuahang(sl); Cuahang(s2), Cuahang(s3),

Trang 40

Thietbi(hardisk), Thietbi(cpuy, Thietbi(case),

Thietbi(memory), Thietbi(soundcard), Thietbi(dvdrom), nhacungcap(sl, cpu), nhacungcap(sl, case);

nhacungcap(s2, soundcard),

nhacungcap(s3, memory), nhacungcap(s3, cpu); nhacungcap(s3, dvdrom), hopdong (s3, case)

Ở đây, hai tién dé dau tién xac dinh khai niém Cuahang va Thietbi lần lượt là miền và phạm vi của vai trị nhacungap Tién dé thứ ba chỉ ra mối quan hệ giữa hopdong va nhacungcap, trong khi tiên đề thứ tư tạo ra khái niệm Giamgia (Giam giá) bằng cách đặt một ràng buộc bản số đối với hopdong

Ngày đăng: 11/01/2024, 22:46

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN