Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa
Bạn đang xem tài liệu "Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- phat_trien_chuong_trinh_logic_mo_ta_cho_viec_tich_hop_cac_qu.pdf
Nội dung text: Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa
- TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học – Đại học Huế Tập 5, Số 1 (2016) PHÁT TRIỂN CHƯƠNG TRÌNH LOGIC MÔ TẢ CHO VIỆC TÍCH HỢP CÁC QUY TẮC VÀ CÁC ONTOLOGY CHO WEB NGỮ NGHĨA Hoàng Nguyễn Tuấn Minh Phòng Công tác Học sinh, Sinh viên, Trường Đại học Khoa học – Đại học Huế Email: hntminh83@yahoo.com TÓM TẮT Web ngữ nghĩa ngày càng phát triển, một yêu cầu quan trọng của kiến trúc được phân lớp của web ngữ nghĩa là tích hợp các các quy tắc và các ontology đang được nhiều nhà nghiên cứu quan tâm. Trong bài báo, chúng ta xem xét các vấn đề trong việc tích hợp các quy tắc và các ontology hiện nay và cũng như phân loại các đề xuất theo các phương pháp tiếp cận lý thuyết khác nhau. Ngoài ra chúng ta tập trung vào hướng tiếp cận chương trình logic mô tả trong việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa cùng các vấn đề liên quan của nó. Từ khóa : Lập trình logic, logic mô tả, ontology, Web ngữ nghĩa. 1. MỞ ĐẦU Web ngữ nghĩa [1,2,3] là một sự phát triển mới trên nền của Web hiện tại theo tiêu chuẩn và công nghệ có thể giúp máy tính hiểu các thông tin trên Web, chúng có thể hỗ trợ cho các công việc khám phá, tích hợp dữ liệu, chuyển hướng dữ liệu và tự động hóa các nhiệm vụ một cách giàu ngữ nghĩa hơn. Kiến trúc phân tầng của Web ngữ nghĩa ngày càng hoàn thiện, một yêu cầu quan trọng của kiến trúc được phân tầng này là để tích hợp tầng Rules và tầng Ontology, hướng đến việc tích hợp các quy tắc và các ontology trong Web ngữ nghĩa. Trong bài báo này tôi sẽ giới thiệu về các kỹ thuật kết hợp các quy tắc với các ontology và chương trình logic mô tả, nó gồm cơ sở tri thức L và một tập hữu hạn các quy tắc logic mô tả P. Các quy tắc này tương tự như quy tắc trong chương trình logic, nhưng chúng có thể chứa các truy vấn đến L trong thân của chúng. Một đặc điểm quan trọng là truy vấn như vậy cũng cho phép xác định một đầu vào từ P, nó như là một luồng thông tin từ P đến L, bên cạnh luồng thông tin từ L đến P được đưa ra bởi truy vấn bất kỳ đến L. Ta cũng sẽ xác định một bộ các ngữ nghĩa cho các lớp khác nhau của chương trình logic mô tả. Cụ thể hơn, chúng ta khái quát các lớp của các chương trình logic dương và chương trình logic phân tầng và xác định ngữ nghĩa mô hình Herbrand. 2. CÁC NGHIÊN CỨU LIÊN QUAN 2.1. Ontology: Thuật ngữ "Ontology" bắt nguồn từ triết học nó liên quan đến việc nghiên cứu của con người về sự tồn tại của tự nhiên. Các nhà nghiên cứu trong khoa học máy tính, đặc biệt 11
- Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa là trong Trí tuệ nhân tạo (AI) mượn thuật ngữ này nhằm mục đích hỗ trợ việc chia sẻ và tái sử dụng kiến thức trong hệ thống AI. Cách tiếp cận này đã được Neches và các cộng sự đề xuất “Một ontology định nghĩa các thuật ngữ và các mối quan hệ cơ bản gồm từ vựng của một chủ đề cũng như các quy tắc kết hợp các thuật ngữ và mối quan hệ để định nghĩa các mở rộng cho từ vựng”. Theo định nghĩa này một ontology không chỉ bao gồm các thuật ngữ được định nghĩa một cách tường minh trong nó mà còn có tri thức có thể suy diễn được từ ontology. Vào năm 1998, Studer và các cộng sự đã đưa ra định nghĩa ontology khá phù hợp và chính xác hơn. “Ontology là một đặc tả tường minh, mang tính hình thức của sự khái niệm hóa có thể chia sẽ được. Sự khái niệm hóa đề cập đến một mô hình trừu tượng của một số hiện tượng trong thế giới thực bằng cách xác định khái niệm liên quan đến hiện tượng đó. Tường minh có nghĩa là các khái niệm được sử dụng và các ràng buộc trên chúng được định nghĩa một cách rõ ràng. Hình thức đề cập đến máy có khả năng đọc và hiểu Ontology. Chia sẽ phản ánh quan điểm rằng một Ontology nắm bắt tri thức được chấp nhận bởi một cồng đồng.” 2.2. Chương trình logic chính tắc: 2.2.1. Cú pháp: Cho Φ =( , ) là một bộ từ vựng ngôn ngữ bậc nhất với là tập hữu hạn khác rỗng các hằng và là tập ký hiệu vị từ không chứa ký hiệu hàm. Cho là tập các biến. Một hạng thức là một biến từ hoặc một ký hiệu hằng từ Φ. Một nguyên tố là một biểu thức có dạng p(t1, t2, , tn) trong đó p là ký hiệu vị từ n ngôi, n≥0 từ Φ, và t1, t2, , tn là các hạng thức. Một literal l là một nguyên tố p (l là literal dương) hoặc nguyên tố phủ định p (l là literal âm). Phần bù của l dương là p và của l âm là p. Một literal phủ định ngầm (viết tắt NAF-literal) là một literal l hoặc một literal phủ định mặc định not l. Một quy tắc r là biểu thức có dạng : a b1, b2, , bk, not bk+1, , not bm với m ≥ k ≥ 0 (1) trong đó a là literal và b1, , bm là các literal hoặc các nguyên tố đẳng thức (bất đẳng thức) có dạng t1=t2 (t1≠t2) với t1 và t2 là các hạng thức. Literal a được gọi là đầu của quy tắc r và phép hội b1, b2, , bk, not bk+1, , not bm là thân của quy tắc r, trong đó b1, b2, , bk (hoặc, not bk+1, ,not bm) là thân dương (hoặc thân âm). + Người ta dùng H(r) để ký hiệu literal a đầu của quy tắc, và B(r) để ký hiệu tập tất cả literal B (r) - + - B (r) thân của quy tắc trong đó B (r) = { b1, b2, , bk} và B (r) = { bk+1, , bm}. Nếu thân của quy tắc r rỗng (trong trường hợp k = m = 0) thì r là một dữ kiện (Fact), chúng ta sẽ bỏ “” trong trường hợp này. Một chương trình chính tắc P là một tập hợp hữu hạn các quy tắc. P là một chương trình dương nếu mọi quy tắc của nó đều không chứa phủ định “not”. 2.2.2. Ngữ nghĩa: Một vũ trụ Herbrand của một chương trình P, ký hiệu HUP, là một tập hợp tất cả các ký hiệu hằng xuất hiện trong P. Nếu không có ký hiệu hằng trong P thì HUP = {c}, trong đó c là một ký hiệu hằng tùy ý trong Φ. Như thường lệ, các hạng thức, các nguyên tố, các literal, các quy tắc, các chương trình là nền nếu và chỉ nếu chúng không chứa biến nào. Một cơ sở Herbrand của một chương trình P được ký hiệu là HBP là tập tất cả các literal nền được xây dựng từ các ký hiệu vị từ xuất hiện trong P và các ký hiệu hằng trong HUP. Một hiện hành nền của một quy tắc r P nhận được từ quy tắc r bằng cách thay thế mỗi biến trong r bằng một ký hiệu hằng trong HUP, bằng cách sử dụng một phép thế q cho mỗi biến trong r và loại bỏ tất 12
- TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học – Đại học Huế Tập 5, Số 1 (2016) cả nguyên tố đẳng thức và bất đẳng thức t1 q =t2 q và t1 q ≠t2 q . Một hiện hành nền của một quy tắc r là nhất quán khi và chỉ khi nó không chứa các nguyên tố đẳng thức hoặc bất đẳng thức nào. Chúng ta ký hiệu ground(P) là một tập hợp tất cả các hiện hành nền nhất quán của các quy tắc trong P.Một tập X HB của các literal nhất quán khi và chỉ khi {p, p} X cho mọi P nguyên tố p HBP. Một diễn dịch I trong một chương trình P là một tập con nhất quán của HBP. Một mô hình của một chương trình dương P là một diễn dịch I HBP sao cho B(r) I dẫn đến H(r) I đối với mọi r ground(P). Phép chuyển đổi (hay phép chuyển đổi Gelfond- I Lifschitz) của một chương trình P liên quan đến một diễn dịch I HBP (ký hiệu là P ) là một chương trình dương nền nó được nhận được từ ground(P) bằng cách xóa đi tất cả các quy tắc r mà B-(r) I = và xóa đi phần thân phủ định trong các quy tắc còn lại. Một tập trả lời của một I chương trình P là một diễn dịch I HBP mà I là một tập trả lời của P . 2.3. Logic mô tả (D) và (D) : 2.3.1. Cú pháp. Cho tập E là các kiểu dữ liệu cơ bản và tập V gồm các giá trị dữ liệu. Một lí thuyết kiểu dữ liệu D = ( D, ·D) bao gồm một miền kiểu dữ liệu D và một ánh xạ ·D nó ánh xạ đến mỗi kiểu dữ liệu cơ bản một tập con của D và đến mỗi giá trị dữ liệu một phần tử của D. Cho = (ARARD, IV) là một bộ từ vựng, trong đó A, RA, RD, và I là lần lượt là các tập hợp (đếm được) đôi một phân biệt của các khái niệm nguyên tố, các vai trò tượng trưng, các vai - - trò kiểu dữ liệu, và các cá thể. Chúng ta ký hiệu RA là tập hợp các nghịch đảo R của tất cả R RA. - Vai trò là một phần tử của RA RA RD. Khái niệm được định nghĩa quy nạp như sau. Mỗi khái niệm nguyên tố C A là một khái niệm. Nếu o1, o2, là các cá thể thuộc I thì {o1, o2, } là một khái niệm. Nếu C và D là những khái niệm, thì (C D), (C D), và C cũng là những khái niệm (lần lượt được gọi là phép giao, phép giao, và phủ định). Nếu C là một khái niệm, R là một vai trò tượng trưng từ RA và n là một số nguyên không âm, thì R.C, R.C, nR, và ≥nR là những khái niệm (lần lượt được gọi là lượng từ tồn tại, lượng từ với mọi, giới hạn số lượng lớn nhất, và giới hạn số lượng nhỏ nhất). Nếu D là một kiểu dữ liệu, U là một vai trò kiểu dữ liệu từ RD, và n là một số nguyên không âm, thì U.D, U.D, nU, ≥nU là những khái niệm. Chúng ta sử dụng và để lần lượt viết tắt cho các khái niệm C C và C C. Một tiên đề là một biểu thức có một trong các dạng sau đây: (1) C D, được gọi là tiên đề bao hàm khái niệm, trong đó C và D là những khái niệm; (2) R S, được gọi là tiên đề bao hàm vai trò, với hoặc R, S RA hoặc R, S RD; (3) Trans(R), gọi là tiên đề bắc cầu, trong đó R RA; (4) C(a) được gọi là tiên đề thành viên khái niệm, trong đó C là một khái niệm và a I; (5) R(a,b) (hoặc U(a,v)), được gọi là tiên đề thành viên vai trò, trong đó R RA (hoặc U RD) và a,b I (hoặc a I và v là một giá trị dữ liệu); (6) a = b (hoặc a ≠ b), gọi là tiên đề đẳng thức (hoặc bất đẳng thức), trong đó a, b I. 13
- Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa Ta cũng sử dụng F ≡ G để rút gọn hai tiên đề khái niệm hoặc vai trò F G và G F. Một cơ sở tri thức logic mô tả L là một tập hữu hạn các tiên đề. Ví dụ 1. Giả sử chúng ta muốn phân công người phản biện các bài báo, dựa trên một số thông tin đã biết về các bài báo và những người đã biết trước, được mã hóa trong cơ sở tri thức logic mô tả LS. LS phân loại các bài 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ề một khái niệm Linhvuc. Một Baibao được phân loại tùy thuộc vào thông tin từ khóa. Vai trò tukhoa và trongLinhvuc kết hợp với mỗi bài báo thông qua các từ khóa và các lĩnh vực mà nó được phân loại vào. Một bài báo thuộc về một lĩnh vực nếu nó kết hợp với một từ khóa của lĩnh vực đó. Vai trò chuyengia liên quan đến những người mà lĩnh vực của họ rất thành thạo. Để đơn giản, một người là một chuyên gia trong một lĩnh vực nếu người đó đã viết một bài báo trong lĩnh vực đó. Khái niệm Trongtai gồm tất cả các trọng tài. Vai trò baogom kết hợp từng lĩnh vực với một nhóm các từ khóa, trong khi đó vai trò coThanhvien liên quan đến các nhóm từ khóa có liên quan đến nhau. Sau đây là một số tiên đề trong LS: Baibao Anban; Trongtai Nguoi; Baibao(anban1);Trongtai(nguoi1);Trongtai(nguoi2); coThanhvien(C1,SemanticWeb); Tacgia(anban1,nguoi2); Linhvuc(A);Linhvuc(B);Linhvuc(C);Linhvuc(D);Linhvuc(E); baogom(A,Tactu); tukhoa(anban1,Tactu); trongLinhvuc.{c} ≡ tukhoa. ( baogom - .{c}), với mọi c {A,B,C,D,E} chuyengia.{c} ≡ tacgia - . ( trongLinhvuc.{c}), với mọi c {A,B,C,D,E} 2.3.2. Ngữ nghĩa: Bây giờ chúng ta định nghĩa ngữ nghĩa dựa vào phép diễn dịch bậc nhất và chúng ta cũng xem lại một và vấn đề suy luận quan trọng trong các logic mô tả. D Một diễn dịch = ( , ) đối với một lý thuyết kiểu dữ liệu D = ( D , D . ) bao gồm một miền không rỗng phân biệt với miền D và một ánh xạ nó ánh xạ mỗi khái niệm nguyên tố C A với một tập con của , mỗi cá thể o I với một phẩn tử của , mỗi vai trò tượng trưng R RA với một tập con của x , và mỗi vai trò kiểu dữ liệu U D RD với một tập con của x D . Ánh xạ được mở rộng cho tất cả các khái niệm và vai trò như sau: Tính thỏa mãn của một tiên đề logic mô tả F trong diễn dịch = ( , ) đối với D = ( , . ) ký hiệu F được định nghĩa như sau : (1) khi và chỉ khi 14
- TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học – Đại học Huế Tập 5, Số 1 (2016) (2) khi và chỉ khi (3) Trans(R) khi và chỉ khi có tính bắc cầu. (4) C(a) khi và chỉ khi (5) R(a,b) khi và chỉ khi (hoặc U(a,v) khi và chỉ khi ) (6) a = b khi và chỉ khi = (hoặc a ≠ b khi và chỉ khi ≠ ) Phép diễn dịch thỏa mãn một tiên đề F hay là một mô hình của F khi và chỉ khi F. Một diễn dịch thỏa mãn một cơ sở tri thức logic mô tả L hay là một mô hình của L, ký hiệu là L khi và chỉ khi F với mọi F L. Ta nói L là thỏa mãn (hoặc không thỏa mãn) khi và chỉ khi L có (hoặc không) mô hình. Một tiên đề F là một hệ quả logic của L, ký hiệu F L khi và chỉ khi mọi mô hình của L thỏa mãn F. Một tiên đề phủ định F là một hệ quả logic của L, ký hiệu là L F khi và chỉ khi mọi mô hình của L không thỏa mãn F. 3. CHIẾN LƯỢC KẾT HỢP CÁC QUY TẮC VÀ ONTOLOGY Có hai chiến lược để kết hợp các quy tắc và các ontology phố biến hiện nay là: tích hợp chặt chẽ ngữ nghĩa và tích hợp linh hoạt ngữ nghĩa.Bây giờ chúng ta sẽ phân tích các nguyên tắc của hai chiến lược và đánh giá công việc liên quan đến chúng. 3.1. Tích hợp chặt chẽ ngữ nghĩa : Trong chiến lược này, các quy tắc được giới thiệu trực tiếp trong lớp ontology, tức là các tên khái niệm và vai trò có thể được sử dụng như là các tên vị từ trong các quy tắc. Cách tiếp cận như vậy có thể dễ dàng dẫn đến khả năng không quyết định được, ví dụ CARIN và SWRL. Mặt khác, DPL được đề xuất bởi Grosof (2003) bảo tồn khả năng quyết định rất hạn chế trong cú pháp của nó, do đó hạn chế khả năng biểu diễn. SWRL và DLP có thể được xem như hướng đi cho phép một số lượng lớn cho cách tiếp cận khác để phù hợp, chẳng hạn như -log, các quy tắc DL-safe, r-hybrid KBs, và +log. Những cách tiếp cận, để duy trì khả năng quyết định và mở rộng khả năng diễn đạt, đòi hỏi các ràng buộc điều kiện an toàn của các biến trong các quy tắc.[7] 3.2. Tích hợp linh hoạt ngữ nghĩa: Trong phương pháp này, các quy tắc và các ontology (OWL/RDF) đóng vai trò trong các lĩnh vực khác nhau. Trong khi các quy tắc tập trung vào công việc lý luận thì OWL/RDF nhằm tăng mục đích của chúng trong vai trò là ngôn ngữ mô tả. Hai thành phần này không bị buộc bởi bất kỳ ràng buộc cú pháp nào, miễn là bên riêng mỗi chúng có khả năng quyết định, và sau đó chúng giao tiếp với nhau thông qua một "giao diện an toàn". Nhìn từ quan điểm lớp các quy tắc, các ontology phục vụ như một nguồn thông tin mở rộng với một ngữ nghĩa độc lập có thể được cập nhật hoặc truy vấn thông qua một vị từ đặc biệt. Cách tiếp cận như vậy là chương trình logic mô tả [Eiter và cộng sự, 2005, 2007, Łukasiewicz, 2005, Eiter và cộng sự, 2008] và công cụ thực thi các quy tắc TRIPLE [SINTEK và Decker, 2002] chúng gọi các bộ suy luận logic mô tả bên ngoài.Chiến lược này thu hút sự quan tâm rất 15
- Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa lớn của các nhà nghiên cứu trong những năm gần đây, trong nội dung của báo cáo chúng ta sẽ tập trung vào các vấn đề của việc tích hợp này bằng cách tiếp cận chương trình logic mô tả [4]. Hình 1. Tích hợp chặt chẽ. Hình 2. Tích hợp linh hoạt. 4. CHƯƠNG TRÌNH LOGIC MÔ TẢ 4.1. Cú pháp : Một chương trình logic mô tả chứa một cơ sở tri thức logic mô tả L và một chương trình chuẩn tắc tổng quát P. P là một tập hợp hữu hạn các quy tắc tổng quát có thể chứa các truy vấn đến L trong phần thân của chúng. Trong một truy vấn như vậy sẽ hỏi liệu tiên đề logic mô tả đã chắc chắn chưa hoặc phủ định của nó có hợp logic theo L không. Một cơ sở tri thức mô tả L được định nghĩa thông qua một bộ từ vựng = (ARARD, IV) và chương trình chuẩn tắc tổng quát P được định nghĩa thông qua một bộ từ vựng Φ = ( , ) đã được giới thiệu ở mục trên, chúng tả giả sử rằng ARARD rời trong trong khi IP IV trong đó IP là tập tất cả các ký hiệu hằng xuất hiện trong P. Bây giờ ta định nghĩa các khái niệm truy vấn logic mô tả (dl-queries) và nguyên tố logic mô tả (dl-atoms), hai đối tượng này được sử dụng trong thân quy tắc để biểu diễn các truy vấn trong cơ sở tri thức mô tả L. Một truy vấn logic mô tả (dl—query) Q(t) thuộc một trong các dạng sau : (a) hoặc là một tiên đề bao hàm khái niệm F hoặc phủ định của nó F; (b) hoặc có dạng biểu thức C(t) hoặc C(t) trong đó C là một khái niệm và t là hạng thức; (c) hoặc là có dạng R(t1,t2) hoặc R(t1,t2) trong đó R là vai trò và t1, t2 là các hạng thức; (d) hoặc là có dạng biểu thức =(t1,t2) hoặc ≠(t1,t2) trong đó t1, t2 là các hạng thức; Ở đây chú ý rằng t là một danh sách tham số mà nó rỗng trong (a), t = t trong (b), t = (t1, t2) trong (c) và (d); và các hạng thức được định nghĩa tương tự ở trên. Một nguyên tố logic mô tả có dạng: DL[S1op1p1, , Smopmpm; Q](t) với m≥0 (4) Trong đó mỗi Si hoặc là một khái niệm hoặc là một vai trò hoặc là một ký tự đặc biệt {=,≠}; opi { ,⩁,⩀}, pi là ký hiệu vị từ một ngôi khi Si là một khái niệm và một ký hiệu vị từ 2 ngôi trong trường hợp khác và Q(t) là một dl-query. Chúng ta gọi pi, .,pm là các ký hiệu vị từ đầu vào của chúng. Ta có opi = (hoặc opi =⩁) tăng Si (hoặc Si) bằng việc thêm pi trong khi opi =⩀ ràng buộc Si với pi. Một dl-rule r có dạng (a b1, b2, , bk, not bk+1, , not bm với m≥k≥0) trong đó bất kỳ literal b1, b2, , bm B(r) có thể là một dl-atom. Một chương trình logic mô tả KB = (L, P) gồm một cơ sở tri thức mô tả L và một tập hữu hạn các quy tắc logic mô tả P. 16
- TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học – Đại học Huế Tập 5, Số 1 (2016) 4.2. Ngữ nghĩa: Trước khi xác định ngữ nghĩa của các chương trình logic mô tả, đầu tiên chúng ta đưa ra một ví dụ trực quan sau đó chúng ta giới thiệu các mô hình Herbrand của chương trình logic mô tả.Nói chung chương trình logic mô tả là một phương tiện để nối hai nguồn tri thức, cụ thể là một cơ sở kiến thức logic mô tả và một chương trình logic Ví dụ 2: (Lựa chọn người phản biện) Cho KBS = (LS, PS) là chương trình logic mô tả bao gồm cơ sở tri thức logic mô tả LS được mô tả trong ví dụ 1, và chương trình logic mô tả PS: (1) Baibao(p1); kw(p1, SemanticWeb); (2) Baibao(p2); kw(p2, Bioinformatics); (3) kw(p2, Answer_Set_Programing); (4) kw(P,K2) kw(P,K1), DL[coThanhvien](S,K1), DL[coThanhvien](S,K2); (5) baibaoLinhvuc(P,A DL[tukhoa kw;trongLinhvuc](P, A); (6) ungcuvien(X, P) baibaoLinhvuc(P,A), DL[Trongtai](X), DL[chuyengia](X, A). (7) phancong(X,P) ungcuvien(X, P), not phancong(X,P); (8) phancong(Y,P ungcuvien(Y, P), phancong(X,P), X≠Y; (9) a(P) phancong(X,P); (10) loi(P) Baibao(P), not a(P). Các ngữ nghĩa hình thức kết hợp KBS với một bộ của các tập trả lời, giống như đối với trường hợp của các chương trình logic thông thường. Mục đích của PS là để xác định làm thế nào các tập câu trả lời sẽ giống như thế. Các dữ kiện (1) đến (3) mô tả hai bài báo p1 và p2 để được đăng ký những người phản biện với những từ khóa của chúng. Quy tắc (4) chúng ta lấy thông tin từ khóa từ LS. Cụ thể hơn vị từ kw được bổ sung thông qua các nguyên tố logic mô tả bằng các từ khóa của chúng trong LS mà chúng chia sẽ cùng lĩnh vực. Một cách trực quan, nguyên tố logic mô tả nền DL[coThanhvien](s,k) đúng cho tất cả các cặp (s,k) mà LS coThanhvien(s,k). Quy tắc (5) chứa loại nguyên tố logic mô tả giàu ngữ nghĩa hơn, đầu tiên chúng làm giàu vai trò tukhoa trong LS bằng mở rộng của vị từ kw trong PS thông qua toán tử . Sau đó ta truy vấn vai trò trongLinhvuc thông qua phiên bản đã được sửa đổi L’S của LS (tức là chúng ta lấy từ L’S những lĩnh vực mà mỗi bài báo được phân lớp vào trong đó) Ở đây thông tin mới đến từ kw có thể kích hoạt thông tin mới trong L’S. Trong quy tắc (6), chúng ta định nghĩa các ứng cử viên là người phản biện cho một bài báo. Cụ thể hơn, một người phản biện x là một ứng cử viên phản biện cho bài báo p, nếu x được biết đến trong LS như là một trongtai và là một chuyengia trong lĩnh vực tài liệu tham khảo a của p. Quy tắc (7) và (8) mã hóa một sự lựa chọn không đơn định. Như chúng ta sẽ thấy, ngữ nghĩa của chúng ta đưa ra một ý nghĩa đặc biệt với các quy tắc mà nó xuất hiện trong các quy tắc đệ quy và liên quan đến việc phủ định. Một cách trực quan, cho bất kỳ cặp ứng cử viên ungcuvien(x, p) có thể nào, chúng ta đoán liệu phancong(x, p) là đúng hay không, có nghĩa là p phải được gán cho x phản biện hay không. Như vậy, có những câu trả lời mà phancong(x, p) là đúng, và có câu trả lời khác là sai. Cuối cùng, quy tắc (9) và (10) kiểm tra xem bài báo đã được 17
- Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa đăng ký, nếu không một lỗi sẽ được đánh dấu; các câu trả lời loi(p) là đúng cho một p được cho thể được lọc ra. Lưu ý rằng các quy tắc (4) đến (6) các tri thức chuyển từ LS đến PS. Trong quy tắc (5), tri thức cũng được chuyển từ PS đến LS. Do đó, thông tin di chuyển theo cả hai hướng giữa cơ sở tri thức logic mô tả LS và chương trình tổng quát PS. Ý nghĩa trực quan của toán tử ⩁ là để bổ sung thông tin từ PS các khẳng định có tính phủ định. Ví dụ, tukhoa ⩁ kw có nghĩa là LS được mở rộng với các khẳng định tukhoa(k) cho bất kỳ kw(k) đúng nào. 4.3. Mô hình của chương trình logic mô tả: Trước hết ta định nghĩa các diễn dịch Herbrand và tính thỏa của chương trình logic mô tả trong các diễn dịch Herbrand. Sau đó ta định nghĩa tính đúng đắn của các nguyên tố logic mô tả nền trong các diễn dịch Herbrand. Trong các khái niệm sau ta đều xét đến KB = (L, P) là chương trình logic mô tả với bộ từ vựng Φ = ( , ) trong đó là tập các ký hiệu hằng và là tập các ký hiệu vị từ. Cơ sở Herbrand của P, ký hiệu là HBP, là tập tất cả các literal nền được xây dựng bằng các ký hiệu vị từ trong xuất hiện trong P và các ký hiệu hằng trong . Một diễn dịch I liên quan với P là một tập con nhất quán của HBP. Ta gọi I la một mô hình của một literal nền hay nguyên tố logic mô tả nền l (hay I thỏa l) theo L, ký hiệu P L l nếu những điều sau đây thỏa : Nếu l HBP thì I L l khi và chỉ khi l I; Nếu l là một nguyên tố logic mô tả nền DL[;Q](c), =S1op1p1, , Smopmpm thì I L l khi và chỉ khi L(I; ) Q(c) trong đó L(I; )=L và 1 i m, trong đó Ai = nếu op = hoặc = nếu op =⩁ hoặc = {Si (e)| pi (e) ÎI} i {ØSi (e)| pi (e) ÎI} i {ØSi (e)| pi (e) ÏI} nếu opi=⩀ (trong đó e = t1, , tk với tj là hằng và k là bậc của vị từ pi). Ta nói phép diễn dịch I là mô hình của quy tắc logic mô tả nền r nếu và chỉ nếu I L l + - với mọi l B (r) và I L l với mọi l B (r) dẫn đến I L H(r). Chúng ta nói phép diễn dịch I là mô hình của chương trình logic mô tả KB=(L, P) hay I thỏa mãn KB, ký kiệu I KB nếu I L r với mọi r ground(P). Ta nói KB là thỏa mãn (hoặc không thỏa mãn) nếu KB có (hoặc không có) mô hình. Để ý rằng tính thỏa mãn ở trên của nguyên tố logic mô tả a trong phép diễn dịch I cũng liên quan đến các phủ định tiên đề bao hàm khái niệm (C D), phủ định tiên đề thành viên khái niệm C(a) và phủ định tiên đề thành viên vai trò R(a,b) và U(a, v). Với lí do này, ta mở rộng thêm một ít cú pháp và ngữ nghĩa thông thường của (D) và (D) bằng cách cho phép những tiên đề phủ định như trên. Các khái niệm tính thỏa mãn, và tính kế thừa được mở rộng một cách hiển nhiên để xử lý các tiên đề như trên. Đặc biệt, phép diễn dịch thỏa mãn (C D) (hoặc C(a), R(a,b), U(a, v)) khi và chỉ khi (hoặc , , ). Tính kế thừa (cho nguyên tố logic mô tả) trong các mở rộng yếu của (D) và (D) có thể được rút gọn lần lượt thành tính kế thừa của (D) và (D) tương ứng như sau. Đầu tiên ta chú ý, tính kế thừa của một bao hàm khái niệm, thành viên khái 18
- TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học – Đại học Huế Tập 5, Số 1 (2016) niệm, thành viên vai trò, hoặc tiên đề đẳng thức F (hoặc phủ định của nó F) từ một cơ sở tri thức mô tả L là tương đương với tính không thỏa mãn L{F} (hoặc L{F}) Ở đây, phủ định tiên đề bao hàm khái niệm (C D) là tương đương với tiên đề thành viên khái niệm (C D)(a) (trong đó a là một các thể mới), và phủ định tiên đề thành viên khái niệm (C(a)) là tương đương với tiên đề thành viên khái niệm (C)(a). Sau đó, mỗi phủ định tiên đề thành viên vai trò trừu tượng trong một cơ sở tri thức logic mô tả L có thể được loại bỏ bằng cách sử dụng : L'È{ØR(a,b)} không thỏa mãn nếu và chỉ nếu không thỏa mãn (trong đó A và B là hai khái niệm nguyên tố mới và L’ là một cơ sở tri thức mô tả bất kỳ) [6]. Các phủ nhận tiên đề vai trò kiểu dữ liệu thành viên có thể được loại bỏ trong một cách tương tự. 4.4. Ngữ nghĩa mô hình nhỏ nhất của chương trình logic mô tả dương: Bây giờ chúng ta định nghĩa chương trình mô tả dương, đó là chương trình logic mô tả không chứa phủ định mặc định và có liên quan đến nguyên tố logic mô tả đơn điệu. Cũng giống như các chương trình dương thông thường, mọi chương trình logic mô tả dương thỏa mãn có một mô hình nhỏ nhất duy nhất, đó cũng là đặc trưng ngữ nghĩa của nó. Một nguyên tố logic mô tả nền a liên quan KB = (L,P) là đơn điệu khi và chỉ khi I L a thì I’ L a với mọi I I’ HBP; ngược lại a không đơn điệu. Chú ý rằng nguyên tố logic mô tả chỉ chứa toán tử và ⩁ luôn luôn đơn điệu. Một chương trình logic mô tả KB = (L, P) dương khi và chỉ khi không có quy tắc nào trong P có chứa “not” và mọi nguyên tố logic mô tả nền trong ground(P) đều đơn điệu trong KB. Với chương trình dương P thông thường, phép giao hai mô hình của P cũng là một mô hình của P. Định lý sau chỉ ra kết quả tương tự đối với chương trình logic mô tả dương. Định lý 1. Cho KB =(L,P) là chương trình logic mô tả dương. Nếu diễn dịch I1, I2 HBP là các mô hình của KB thì I1 I2 cũng là mô hình của KB. Chứng minh: Do I1, I2 HBP là các mô hình của KB nên Ii L r với mọi r ground(P) và i {1,2}. Chúng ta chỉ ra rằng I = I1 I2 là một mô hình của KB tức là I L r với mọi r + ground(P). Xét r ground(P) bất kỳ, giả sử I L l với mọi l B (r)=B(r). Lúc đó, I L l cho mọi literal l B(r) và I L a cho mọi nguyên tố logic mô tả a B(r). Vì vậy, Ii L l với mọi l B(r) và i Î{1,2}.Hơn thế nữa ta có mọi nguyên tố logic mô tả trong ground(P) là đơn điệu trong KB, điều này dẫn đến, Ii L a với mọi a B(r) và i {1,2}. Do I1, I2 là các mô hình của KB nên, Ii L H(r) với mọi i {1,2} dẫn đến I L H(r). Điều này chỉ ra rằng I L r. Vậy I là mô hình của KB. Ta sẽ có một quy tắc hệ quả tất yếu. Hệ quả 2. Cho KB =(L,P) là một chương trình logic mô tả dương. Nếu KB thỏa mãn thì tồn tại một mô hình duy nhất I HBP của KB sao cho I J với mọi mô hình J HBP của KB, tức I là mô hình nhỏ nhất duy nhất của KB. Mô hình đặc biệt này được xem là ngữ nghĩa của KB. 19
- Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa Định nghĩa 3. Với mỗi chương trình logic mô tả thỏa mãn KB = (L,P), chúng ta ký hiệu mô hình nhỏ nhất duy nhất của KB là MKB. Ví dụ 3. Cho KB là kết quả của chương trình logic mô tả KBS trong ví dụ 3 bằng cách loại bỏ đi các quy tắc (7) – (10). Rõ ràng KB không chứa phủ định. Mặt khác vì các nguyên tố nền logic mô tả không chứa ⩀ nên chúng đơn điệu. Vì vậy KB dương cho nên nó có mô hình nhỏ nhất duy nhất MKB chứa tất cả các ứng cử viên người phản biện cho các bài báo p1 và p2 được cho. 4.5. Ngữ nghĩa mô hình nhỏ hồi quy nhất của chương trình logic mô tả phân tầng: Chương trình logic mô tả phân tầng được cấu tạo từ các lớp có phân cấp của chương trình logic mô tả dương. Giống như các chương trình phân tầng thông thường, một mô hình cực tiểu chính tắc của chương trình logic mô tả phân tầng có thể được chỉ ra bởi một số các mô hình hồi quy nhỏ nhất cung cấp cho một số mô hình tồn tại. Chúng ta có thể thực hiện điều này với các nguyên tố logic mô tả không đơn điệu bằng cách xử lý tương tự như literal phủ định ngầm. Điều này đặc biệt hữu ích, bởi vì nói chung ta không biết liệu một nguyên tố logic mô tả được cho là đơn điệu hay không, và việc xác định này có thể là tốn chi phí nhiều hay không. Tuy nhiên chú ý rằng, sự vắng mặt của toán tử ⩀ trong (4) là một tiêu chuẩn cú pháp đơn giản dẫn đến tính đơn điệu của một nguyên tố logic mô tả (Ví dụ 3).Với chương trình logic mô tả KB=(L,P) bất kì, ta ký hiệu DLP là tập tất cả các nguyên tố logic môt tả nền trong ground(P). Ta giả thiết rằng KB được kết + ? + hợp bởi tập DLP DLP của các nguyên tố nền đơn điệu và DLP = DLP \ DLP là tất cả các nguyên tố logic mô tả khác. Một literal đầu vào của một số nguyên tố logic mô tả a DLP là một literal nền với một vị từ đầu vào của a và các ký hiệu hằng trong Φ. Khái niệm về một phân tầng đối với chương trình logic mô tả định nghĩa là một phân hoạch có thứ tự tập hợp của tập hợp tất cả các nguyên tố nền và các nguyên tố logic mô tả nền như sau : Định nghĩa 4. Cho KB =(L,P) là một chương trình logic mô tả. Phép phân tầng của KB + (xét trong DLP ) là là một ánh xạ m : HBP DLP {0, 1, , k} sao cho (i) với r ground(P), thì + - (H(r)) ≥ m (l’) với mọi l’ B (r) và (H(r)) > (l’) với mọi l’ B (r) (ii) (a) ≥ (l) với mỗi + ? literal đầu vào l của mỗi a DLP và (a) > (l) với mỗi literal đầu vào l của mỗi a DLP . Ta gọi k ≥ 0 là độ dài của . Với mỗi i {0, , k}, ta định nghĩa chương trình logic mô tả KBi là * (L,Pi) = (L,{r ground(P) | H(r))= i}) và HB (hoặc HB ) là tập tất cả các l HBP sao cho Pi Pi (l)=i (hoặc (l) i). Ta nói một chương trình logic mô tả KB = (L,P) là phân tầng nếu và chỉ nếu nó có một phép phân tầng với độ dài k≥0. Mô hình chính tắc của nó được xác định như sau. Định nghĩa 5. Cho KB= (L, P) là một chương trình logic mô tả với phép phân tầng có độ dài k≥0. Ta định nghĩa các mô hình hồi quy nhỏ nhất của nó Mi HBP với i {0, , k} bằng: (i) M0 là mô hình nhỏ nhất của KB0; (ii) nếu i > 0 thì Mi là tập con nhỏ nhất M của HBP sao cho * * M là mô hình của KBi và M HB = Mi-1 HB Pi-1 Pi-1 20
- TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học – Đại học Huế Tập 5, Số 1 (2016) Ta gọi KB là nhất quán nếu mọi Mi với i {0, , k} tồn tại và KB không nhất quán nếu ngược lại. Nếu KB nhất quán thì MKB ký hiệu mô hình chính tắc là MK. Chú ý rằng MKB là xác định đúng đắn, nó không phụ thuộc vào . Định lý 6. Cho KB = (L,P) là một chương trình logic mô tả phân tầng, thì MKB là mô hình cực tiểu của KB. Chứng minh : Cho m : HBP DLP {0, 1, , k} là một phân tầng của KB=(L,P) trong + DLP . Ta có M0 là mô hình nhỏ nhất của KB0 = (L0,P0) và với mọi i {0, , k} . Ta có Mi là mô * * hình nhỏ nhất của KBi = (Li,Pi) có Mi HB = Mi-1 HB . Do đó Mk = MKB là mô hình của Pi-1 Pi-1 KB. Tiếp theo chúng ta sẽ chỉ ra rằng Mk là mô hình nhỏ nhất của KB. Để dẫn đến mâu thuẫn, ta giả sử rằng tồn tại một ô hình J HBP của KB mà J Mk. Do đó, tồn tại i {0, , k} sao cho J * * HBP ≠ Mi-1 HBP . Cho j là một nhỏ nhất như i. Lúc đó J là mô hình của KBj . Hơn nữa nếu j i * i >0 ta có J HB =Mk . Điều này mâu thuẫn với Mj là mô hình nhỏ nhất của KBj có Pj-1 Mj =Mj-1 . Điều này chỉ ra rằng Mk là mô hình nhỏ nhất của KB. Ví dụ 4. Cho KB là chương trình logic mô tả được rút ra từ KBS trong ví dụ 3 bằng cách loại bỏ đi các quy tắc (11) và (12). Chương trình này có phép phân tầng với độ dài là 2 với tập + thành phần DLP gồm tất cả các nguyên tố logic mô tả có trong P. Mô hình nhỏ nhất của P chứa tất cả các ứng cử viên làm người phê bình của các bài báo đã cho, cùng với các cờ lỗi của chúng bởi vì không có bài báo nào được đăng ký trước đó. 5. KẾT LUẬN Chúng ta đã trình bày các chiến lược tích hợp các quy tắc và các ontology phổ biến hiện nay và đi sâu vào hướng tiếp cận chương trình logic mô tả, trong đó bao gồm một cơ sở tri thức logic mô tả L và một tập các quy tắc logic mô tả P mà chúng cũng có thể chứa các truy vấn đến L trong thân của chúng và cho phép sử dụng của phủ định không đơn điệu. Điều này tạo điều kiện như một cầu nối liên kết thế giới rất đa dạng của logic mô tả và lập trình logic và hơn nữa cung cấp một cơ sở ngữ nghĩa cho một sự kết hợp của các công cụ lý luận có sẵn từ các lập trình logic với các các cộng đồng logic mô tả. Với tinh thần của lập trình logic, chúng ta đã xác định các mô hình Herbrand cho chương trình logic mô tả, và chúng ta tổng quát hóa nhiểu khái niệm trong lập trình logic vào trong chương trình logic mô tả, bao gồm mô hình nhỏ nhất, phép phân tầng và tập trả lời. Sau đó chúng ta đã khái quát các lớp của các chương trình logic dương và chương trình logic phân tầng và xác định ngữ nghĩa một mô hình Herbrand cho chúng. Chúng ta cũng chỉ ra rằng tính thỏa mãn của chương trình logic mô tả dương có một mô hình Herbrand nhỏ nhất, và tính thỏa mãn của một chương trình logic mô tả phân tầng có thể được kết hợp với duy nhất một mô hình Herbrand cực tiểu, mà nó được đặc trưng thông qua một số hữu hạn các mô hình Herbrand hồi quy nhỏ nhất. Ngoài ra chúng ta cũng đã chứng minh giao của hai diễn dịch là mô hình nếu bản thân các diễn dịch là mô hình trong chương trình mô tả dương. 21
- Phát triển chương trình logic mô tả cho việc tích hợp các quy tắc và các ontology cho web ngữ nghĩa TÀI LIỆU THAM KHẢO [1]. T. Berners-Lee (1999). Weaving the Web, Harper, San Francisco, CA. [2]. T. Berners-Lee, J. Hendler, O. Lassila (2001). The Semantic Web, Scientific American 34–43. [3]. D. Fensel, W. Wahlster, H. Lieberman, J. Hendler (2002). Spinning the Semantic Web: Bringing the World Wide Web to Its Full Potential, MIT Press. [4]. I. Horrocks, P.F. Patel-Schneider (2003). Reducing OWL entailment to description logic satisfiability, in: Proceedings ISWC-2003, in: LNCS, vol. 2870, Springer, pp. 17–29. [5]. Thomas Eiter, Thomas Lukasiewicz, Roman Schindlauer, and Hans Tompits (2004). Combining Answer Set Programming with Description Logics for the Semantic Web. In Didier Dubois, Christopher Welty, and Mary-Anne Williams, editors, Proceedings of the 9th International Conference on Principles of Knowledge Representation and Reasoning (KR 2004), Whistler, British Columbia, Canada, pages 141-151. AAAI Press. [6]. T. Lukasiewicz (2007). A novel combination of answer set programming with description logics for the Semantic Web, in: Proceedings ESWC-2007, vol. 4519, Springer, pp. 384–398. [7]. Thomas Eiter, Giovambattista Ianni, Axel Polleres, Roman Schindlauer, Hans Tompits (2006). Reasoning with Rules and Ontologies, Lecture Notes in Computer Science, vol. 4126, Springe, pp 93-127. DEVELOPING DESCRIPTION LOGIC PROGRAMS FOR INTEGRATING RULES AND ONTOLOGIES IN SEMANTIC WEB Hoang Nguyen Tuan Minh Office for Student Affairs, Hue University College of Sciences Email: hntminh83@yahoo.com ABSTRACT An important requirement of the layered architecture of the Semantic Web is to integrate the rules and ontologies in development of Semantic Web. This issue has attracted researchers of the semantic web community in recent years. In the article, we consider the technical issues in the integration of rules and the current ontologies as well as classify representative proposals for different theoretical integration approaches. Furthermore, we focus on description logic programs approach underlying the integration of the rules and ontologies for semantic Web with its related problems. Keyworks: Logic programing, Description logics, Ontology, Semantic Web. 22