Ontology đã được sử dụng thành công trong các hệ thống chuyên gia, mạng ngữ nghĩa… Do hình thức lý thuyết là logic mô tả, ontology có lợi thế cả về diễn đạt ngữ nghĩa lẫn cơ chế suy luận
Trang 1Đại học Quốc gia Thành Phố Hồ Chí Minh Trường Đại học Công nghệ Thông tin
Học viên: Dương Hoàng Thanh
Mã số: CH0901050 Lớp Cao học CNTTQM – Khóa 4 Giảng viên: TS Nguyễn Tuấn Đăng
Tháng 10/2010
Trang 21 GIỚI THIỆU 1
2 TỔNG QUAN VỀ ONTOLOGY 1
2.1 Khái niệm Ontology (bản thể) 1
2.2 Các dạng Ontology 3
2.2.1 Ontology chuyên môn 3
2.2.2 Ontology thượng tầng 4
2.3 Ứng dụng của Ontology 5
2.3.1 Mạng ngữ nghĩa 5
2.3.2 Hệ chuyên gia 7
3 TỔNG QUAN VỀ LOGIC MÔ TẢ 8
3.1 Giới thiệu 8
3.2 Cơ sở tri thức 9
3.3 Một vài logic mô tả đáng chú ý 10
3.4 Suy diễn với logic mô tả 12
3.5 Các hệ logic mô tả 15
3.5.1 Thế hệ thứ nhất 16
3.5.2 Thế hệ thứ hai của các hệ thống logic mô tả 18
3.5.3 Thế hệ mới: F AC T, D LP và R ACER 20
4 SƠ LƯỢC VỀ LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG 20
4.1 Các thành phần cơ bản 20
4.1.1 Lớp 20
4.1.2 Thực thể 21
4.1.3 Phương thức 21
Trang 34.2.3 Tính đa hình 22
4.2.4 Tính kế thừa (inheritance) 22
4.3 Các ngôn ngữ và ứng dụng của OOP 23
5 Ý TƯỞNG VỀ LẬP TRÌNH HƯỚNG ONTOLOGY 23
5.1 Khái niệm 25
5.2 Các thành phần của OnOP 26
5.2.1 Lớp 27
5.2.2 Cá thể 27
5.2.3 Quan hệ 28
5.2.4 Tiên đề 29
5.2.5 Bộ suy diễn 29
5.3 Các bước xây dựng chương trình 29
5.3.1 Khai báo tri trức 29
5.3.2 Khởi tạo tri thức 29
5.3.3 Viết mã lệnh 29
5.4 Ngôn ngữ lập trình 29
5.5 Ưu điểm và thách thức 30
5.5.1 Ưu điểm của OnOP 30
5.5.2 Thách thức 30
6 HƯỚNG PHÁT TRIỂN 30
7 TỔNG KẾT 31
8 TÀI LIỆU THAM KHẢO 31
8.1 Tiếng Việt 31
8.2 Tiếng Anh 31
Trang 4Hình 1: Ontology về bánh Pizza 3
Hình 2: Mô hình Ontology Chuyên môn 4
Hình 3: Một mô hình mạng ngữ nghĩa 6
Hình 4: Mạng ngữ nghĩa dùng để giải toán tam giác 7
Hình 5: Kiến trúc hệ logic mô tả 16
Hình 6: Các thành phần của ngôn ngữ OWL 25
Hình 7: Kiến trúc của OnOP 26
Hình 8: Lớp là hình thức phân loại các cá thể 28
Hình 9: Sự đa dạng trong quan hệ của OnOP 28
Trang 5Bảng 1: Một vài phương thức khởi tạo trong Logic Mô tả 11 Bảng 2: Độ phức tạp của suy diễn trong một vài logic mô tả quan trọng 12 Bảng 3: Các bộ suy diễn logic mô tả, logic và giao diện DIG được hỗ trợ 15
Trang 61 GIỚI THIỆU
Theo xu thế phát triển của khoa học máy tính, các hệ thống phần mềm ngày càng phát triển theo xu hướng thông minh hơn và do đó có khả năng tự xử lý công việc nhiều hơn Ngành nghệ phần mềm cũng vậy, việc thiết và lập trình hệ thống phần mềm ngày càng đòi hỏi phải thật tự nhiên và thuận tiện, như chính cách con người tổ chức, xử lý, và truyền đạt thông tin mỗi ngày Với sự phát những thành tựu vượt bậc của phần cứng cũng như phần mềm máy tính, ước mơ
về một hệ thống có khả năng tiếp nhận tri thức và tự đưa ra quy trình xử lý công việc đang trở nên gần hơn bao giờ hết
Trong một vài năm gần đây, việc áp dụng ontology như một hình thức biểu diễn tri thức trong các lĩnh vực ứng dụng khác nhau đã có những bước tiến quan trọng Ontology mô tả không chỉ khái niệm và thuộc tính mà còn cung cấp các quan hệ cũng như các tiên đề phục vụ cho việc suy luận Ontology có rất nhiều lợi thế như cho phép thêm ngữ nghĩa vào dữ liệu, quản lý và cập nhật tri thức, tích hợp dữ liệu cũng như tái sử dụng các thành phần dễ dàng hơn Nhờ đó, ontology là mô tả chính thức của một số bộ từ vựng chuyên môn
Công dụng quan trọng nhất của ontology là biểu diễn tri thức Ontology đã được sử dụng thành công trong các hệ thống chuyên gia, mạng ngữ nghĩa… Do hình thức lý thuyết là logic mô tả, ontology có lợi thế cả về diễn đạt ngữ nghĩa lẫn cơ chế suy luận
Do đó, nội dung chủ yếu của đề tài này là phác thảo nên những ý tưởng ban đầu về một nguyên lý lập trình lấy Ontology và việc mô tả cơ sở tri thức làm
trọng tâm, đó là Nguyên lý Lập trình Hướng Ontology
2 TỔNG QUAN VỀ ONTOLOGY
2.1 Khái niệm Ontology (bản thể)
Việc biểu diễn tri thức và lập luận là vấn đề then chốt cho quá trình xử lý thông tin tự động trong các hệ thống thông minh Trong thời gian gần đây, một vấn đề quan trọng đã và đang được nhiều nhà nghiên cứu quan tâm đó là biểu diễn và xử lý tri thức trên Web Năm 1998, Tim Berners-Lee đã nghiên cứu và phát triển Semantic web (web ngữ nghĩa), theo cách này các trang web không chỉ thực hiện chức năng nhận và hiển thị thông tin mà còn có khả năng tự động
Trang 7mô tả (Description Logic – DLs) và xem nó như là ngôn ngữ biểu diễn cho tri thức trên web ngữ nghĩa Từ đó việc nghiên cứu quá trình biểu diễn và lập luận trong web ngữ nghĩa được quan tâm tuy nhiên chỉ dừng lại đối với tri thức chắc chắn Năm 2006, Umberto Straccia dựa vào nền tảng của logic mô tả và lý thuyết tập mờ của Zadeh (đưa ra năm 1965) đã đưa ra logic mô tả mờ (Fuzzy Description Logic) nhằm phục vụ cho việc xử lý tri thức không chắc chắn trên web ngữ nghĩa
Ontology là một thuật ngữ mượn từ triết học nhằm chỉ khoa học mô tả các loại thực thể trong thế giới thực và cách chúng liên kết với nhau Trong khoa học máy tính, một cách khái quát, Ontology là "một biểu diễn của sự khái niệm hoá chung được chia sẻ" của một miền nhất định Nó cung cấp một bộ từ vựng chung bao gồm các khái niệm, các thuộc tính quan trọng và các định nghĩa về các khái niệm và các thuộc tính này Ngoài bộ từ vựng, Ontology còn cung cấp các ràng buộc, đôi khi các ràng buộc này được coi như các giả định cơ sở về ý nghĩa mong muốn của bộ từ vựng, nó được sử dụng trong một miền mà có thể được giao tiếp giữa người và các hệ thống ứng dụng phân tán khác
Định nghĩa 1:
Thông thường, ontology được định nghĩa như một cấu trúc bao gồm những thành phần sau (Gruber 1993; Fensel 2001):
C – tập các khái niệm (Concept);
I – tập các thể hiện của khái niệm;
R – tập các quan hệ hai ngôi được định nghĩa trên C;
Z – tập các tiên đề, là các công thức logic biểu diễn các ràng buộc
toàn vẹn trong tập các thể hiện và khái niệm
Định nghĩa 2:
Một ontology là một bộ tứ O = (C, P, R, A), trong đó:
C là một tập các khái niệm được định nghĩa trong một miền Một khái
niệm thường được xem như một lớp của ontology
P là một tập các thuộc tính Một thuộc tính p ∈ P được định nghĩa như
một thể hiện của một quan hệ ba ngôi có dạng p(c, v, f), trong đó c ∈ C
là một khái niệm ontology, v là một giá trị thuộc tính gắn với c và f định nghĩa các mặt giới hạn trên v Một vài mặt giới hạn bao gồm loại (ft), lực lượng (fc) và phạm vi (fr) Mặt giới hạn ft có thể là bất kỳ kiểu
dữ liệu nào được hỗ trợ bởi trình soạn thảo ontology, ví dụ như ft ∈ {boolean, integer, float, string, symbol, instance, class, …} Mặt giới
Trang 8hạn lực lượng fc định nghĩa cận trên và cận dưới của số lượng giá trị
thuộc tính Mặt giới hạn phạm vi fr chỉ định một phạm vi các giá trị có
thể gán cho thuộc tính
R = {r | r C × C × Rt} là một tập các quan hệ ngữ nghĩa hai ngôi
được định nghĩa giữa các khái niệm trong C Rt = {một-một, một-nhiều, nhiều-nhiều} là tập các kiểu quan hệ
A là một tập các tiên đề Mỗi tiên đề là một chân lý hoặc luật suy diễn
Hình 1: Ontology về bánh Pizza
2.2 Các dạng Ontology
2.2.1 Ontology chuyên môn
Một Ontology chuyên môn mô hình hóa một lĩnh vực chuyên môn, hay một phần của thế giới Ontology chuyên môn thể hiện những ý nghĩa riêng của các vấn đề khi áp dụng vào lĩnh vực đó Ví dụ, từ “card” có nhiều rất nghĩa Một ontology chuyên về bài pocker sẽ mô phỏng nghĩa
“playing card” (lá bài) của thế giới, trong khi một ontology lĩnh vực về máy tính lại mô phỏng ý nghĩa “puched card” (thẻ đục lỗ) và “video card” (card màn hình)
Định nghĩa 3:
Trang 9mục tiêu Ontology chuyên môn được định nghĩa qua bốn tầng, bao gồm tầng lĩnh vực, tầng phân hệ, tầng sự kiện, và tầng chứa các lớp Một ontology chuyên môn thể hiện tên lĩnh vực của một ontology và bao gồm nhiều phân hệ khác nhau được định nghĩa bởi các chuyên gia trong lĩnh vực đó Mỗi phân hệ được tổ hợp bởi các tập sự kiện, kế thừa từ những bản thông tin bởi các chuyên gia Mỗi sự kiện bao gồm một vài khái niệm của tầng chứa lớp Trong tầng chứa lớp, mỗi khái niệm chứa một tên khái niệm, một tập thuộc tính và một tập tóa tử cho một ứng dụng lĩnh vực Ontology lĩnh vực có ba loại quan hệ, bao gồm khái quát hóa, quy nạp và liên đới Quan hệ giữa lĩnh vực và các phân hệ tương ứng là sự khái quát hóa, thể hiện quan hệ “thuộc loại” Quan hệ giữa mỗi phân hệ và những sự kiện tương ứng là sự quy nạp Quan hệ quy nạp diễn tả quan hệ “là một phần của” Liên đới là một quan hệ ngữ nghĩa giữa các lớp trong một tầng
1 1
11, C2, , C q
A
1 1
11, C2, , C q
O
2 2
21, C2, , C q
A
2 2
21, C2, , C q
O
3 3
31, C 2, , C q
A
3 3
3 1 , C 2 , , C q
O
4 4
41, C2, , C q
O
4 4
41, C2, , C q
5 5
51, C2, , C q
O
m m
A 1, 2, ,
m m
Trang 10trong đó mô tả những đối tượng thuật ngữ thuộc một tập hợp các lĩnh vực
Có rất nhiều ontology được chuẩn hóa có thể sử dụng được, bao gồm Dublin Core, GFO, OpenCyc/ResearchCyc, SUMO, và DOLCE WorldNet, đôi khi được xem như một ontology thượng tầng, thực ra không hoàn toàn là một ontology Mặc dù vậy, WorldNet được cài đặt như là một công cụ ngôn ngữ để nghiên cứu ontology chuyên môn
2.3 Ứng dụng của Ontology
2.3.1 Mạng ngữ nghĩa
Người đặt nền tảng cho mạng thông tin toàn cầu Tim Berners-Lee đã nhiều lần đề cập đến mạng ngữ nghĩa (Sematic Web) Trong đó, các hệ thống có thể giao tiếp với nhau, phân tích và diễn giải ý nghĩa của mọi dữ liệu trên site, rồi tập hợp nội dung liên quan từ nhiều nguồn khác nhau Nhờ đó, một công ty du lịch sẽ biết khách hàng của họ có bao nhiêu đứa con, công việc, sở thích riêng để tìm ra điểm nghỉ mát lý tưởng nhất cho
cả gia đình
Ý tưởng trọng tâm của là tạo ra những "metadata": chuỗi các cơ sở dữ liệu nối tiếp nhau, có nhiệm vụ bổ sung cho thông tin trên web để các máy tính có thể hiểu và giải quyết những vấn đề ngữ nghĩa phức tạp
Mạng ngữ nghĩa được tổ chức dưới dạng một đồ thị, trong đó các nút biểu diễn các đối tượng và cung biểu diễn quan hệ giữa các đối tượng
Trang 11Hình 3: Một mô hình mạng ngữ nghĩa
Không chỉ thuận lợi cho việc tìm kiếm thông tin, mạng ngữ nghĩa còn hỗ trợ cơ chế suy diễn khá hiệu quả mà điển hình là bài toán tam giác tổng quát
Trang 12Hình 4: Mạng ngữ nghĩa dùng để giải toán tam giác
Việc tiếp cận ngữ nghĩa tài nguyên Web thông qua các Ontology thì mềm dẻo hơn vì người sử dụng có thể lựa chọn bộ từ vựng và các ràng buộc trong các Ontology Ví dụ, các ứng dụng trong các miền khác nhau có thể
sử dụng các Ontology khác nhau Đặc biệt, các Ontology có thể được sử dụng để đặc tả ý nghĩa của các tài nguyên Web (thông qua các chú thích) bằng cách xác nhận các tài nguyên như các trường hợp cụ thể của một số khái niệm quan trọng và hay hoặc khẳng định các tài nguyên có quan hệ với các tài nguyên khác thông qua một số thuộc tính quan trọng đã định nghĩa trong các Ontology
2.3.2 Hệ chuyên gia
Với khả năng biểu diễn tri thức và cơ chế suy luận dựa trên logic mô tả, ontology là mô hình tuyệt vời cho các hệ chuyên gia So với phương pháp biểu diễn bằng luật sinh vốn chỉ hỗ trợ quan hệ nếu… thì…, ontology cho phép biểu diễn tri thức của chuyên gia một cách đa dạng và phong phú hơn qua nhiều loại quan hệ khác nhau mà người dùng có thể tự định nghĩa
Trang 133 TỔNG QUAN VỀ LOGIC MÔ TẢ
3.1 Giới thiệu
Logic mô tả là họ logic dùng để biểu diễn tri thức có cấu trúc
Theo một quan điểm lịch sử, logic mô tả (Description Logics – DLs) được sinh ra nhằm cung cấp ngữ nghĩa cho các công cụ và khung ngữ nghĩa, hai mô hình truyền thống trong việc diễn đạt tri thức có cấu trúc Người ta đã phát hiện rằng những công cụ và khung này có thể được khắc phục sự thiếu sót về ngữ nghĩa bằng cách sử dụng logic vị từ Tuy nhiên, do trong hầu hết các trường hợp, khung và mạng ngữ nghĩa không cần đến diễn đạt đầy đủ của logic vị từ, logic mô tả đã ra đời như một tập con của logic vị từ, giới hạn mức độ diễn đạt
để đổi lấy sự đơn giản trong suy diễn Mặc dù vậy, có một số logic mô tả không phải là tập con của logic vị từ
Ban đầu, những hệ thống như ở trên được gọi là hệ thống thuật ngữ, với
mục đích nhấn mạnh việc chúng được sử dụng để định nghĩa hệ thống thuật ngữ
cơ bản của một ứng dụng chuyên môn Sau đó, tên gọi logic mô tả được khám
phá, phản ảnh sự thật rằng chuyên ngành đó được diễn đạt bằng cách sử dụng
khái niệm phức hợp: các mô tả và rằng chúng có ngữ nghĩa dựa trên logic
Các phương thức khởi tạo khác nhau được hỗ trợ trong một logic mô tả dẫn đến các phân mảnh khác nhau của logic vị từ với độ phức tạp tính toán khác nhau Các logic khác nhau trong họ có quan hệ với nhau thông qua nguyên lý sau: ngôn ngữ càng mang tính diễn đạt cao thì càng khó suy diễn
Lịch sử của logic mô tả có thể được tóm tắt qua những giai đoạn sau:
Giai đoạn 0 (1965-1980) Logic mô tả chưa ra đời và các mô hình khác được dùng để biểu diễn tri thức có cấu trúc (ví dụ như mạng ngữ nghĩa
và khung), cho đến khi việc thiếu sót ngữ nghĩa chính quy của các mô hình đó được phát hiện
Giai đoạn 1 (1980-1990) bao gồm các hệ thống chưa hoàn chỉnh dựa trên những thuật toán có cấu trúc Hệ thống logic mô tả đầu tiên ra đời trong giai đoạn này và có tên là KL-ONE
Giai đoạn 2 (1990-1995) bao gồm sự phát triển của các thuật toán tableau và việc nghiên cứu tính phức tạp của logic, quan hệ của chúng với logic hình thức và các kỹ thuật tối ưu hoá
Trang 14 Giai đoạn 3 (1995-2000) bao gồm sự phát triển của các thuật toán tableau cho logic mô tả giàu tính diễn đạt và việc cài đặt các bộ suy luận được tối ưu hóa như RACER hay FACT
Giai đoạn 4 (2000-…) Giai đoạn này bao gồm việc cài đặt hoàn chỉnh
và thương mại hóa của các bộ suy luận (như là RACERPRO, PELLET hoặc FACT++) và các công cụ, ứng dụng đa dạng Các logic mô tả kém hơn
về khả năng diễn đạt nhưng lại dễ kiểm soát ngày càng được quan tâm nhiều hơn
3.2 Cơ sở tri thức
Một logic mô tả bao gồm một cơ sở tri thức và một vài khả năng suy diễn
Bộ từ vựng của một logic mô tả bao gồm 3 loại nhân tố: cá thể, khái niệm
và vai trò Khái niệm bao hàm các tập một ngôi của các cá thể và vai trò bao
hàm các quan hệ hai ngôi giữa các cá thể
Một cơ sở tri thức gồm có hai loại tri thức, được nhóm lại trong hai thành phần khác nhau:
Tri thức mở rộng, hay tri thức đặc thù về một tình huống xác định nào
đó Loại tri thức này mang tính ngẫu nhiên (tùy thuộc vào một vài tính huống và có thể thay đổi) và được lưu trữ trong hộp khẳng định (Assertional Box – Abox)
Tri thức hẹp, hay tri thức tổng quát về một chuyên ngành ứng dụng, thường không thể thay đổi Loại tri thức này được cấu trúc trong hộp thuật ngữ (Terminological Box – Tbox) với thông tin về các khái niệm
và hộp vai trò (Role Box – Rbox) với thông tin về các vai trò
Các logic mô tả có ngữ nghĩa chính quy dựa trên ý niệm về sự diễn dịch, nơi mà miền diễn dịch có thể được lựa chọn tùy ý (và có thể hữu hạn) Khác với
các mô hình khác như cơ sở dữ liệu, logic mô tả dựa trên Giả định Thế giới mở
(Open World Assumption) Ví dụ minh họa cho sự khác biệt giữa hai hình thức trên:
Ví dụ 1: Theo truyền thuyết Hy Lạp, Oedipus giết cha, cưới mẹ của ông ta
là Iokaste, và có con với bà, một trong số đó là Polyneikes Cuối cùng, Polyneikes cũng có con, một trong số đó là Thersandros, người mà được biết là không giết cha
Trang 15Giả sử người đó muốn biết Iokaste có hay không một đứa con mà (i) là một
kẻ giết cha và (ii) có một đứa con không giết cha
Dưới giả định thế giới đóng, chúng ta không biết rằng Polyneikes không phải là kẻ giết cha, do đó câu trả lời là không Mặt khác, dưới giả định thể giới
mở, cho dù Polyneikes có là kẻ giết cha hay không, câu trả lời vẫn là có Trong trường hợp đầu, đứa con là Polyneikes, trong khi trong trường hợp sau, đứa con
là Oedipus
3.3 Một vài logic mô tả đáng chú ý
Trong phần này, chúng ta sẽ điểm lại một vài logic mô tả quan trọng mà không đi quá sâu vào chi tiết của cú pháp và ngữ nghĩa đặc thù Mỗi logic mô tả được thể hiện bằng một chuỗi các ký tự hoa dùng để xác định các phương thức khởi tạo của logic, và do đó xác định độ phức tạp của nó Đầu tiên, chúng ta sẽ trình bày về bộ khởi tạo của logic AL (Atrributive Language - Ngôn ngữ thuộc
tính) và sau đó sẽ mô tả một vài mở rộng
Các phương thức khởi tạo khái niệm của AL bao gồm:
Các khái niệm đỉnh và đáy
Các khái niệm nguyên tố
Phủ định của các khái niệm nguyên tố
Giao của khái niệm
Các lượng hóa toàn thể
Các ràng buộc tồn tại, nhưng chỉ giới hạn cho các khái niệm đỉnh
AL có thể được mở rộng với một vài phương thức khởi tạo khái niệm và
vai trò như trong bảng sau:
U Khái niệm hợp (concept Union)
E Ràng buộc tồn tại không giới hạn (unrestricted Existential
restriction)
C Phần bù, phủ định khái niệm (Complement, concept negation)
R + Vai trò bắc cầu (transitive Roles)
H Vai trò phân cấp (role Hierarchies)
O Định danh (nOminals)
I Vai trò nghịch đảo (Inverse roles)
F Vai trò chức năng (Funtional roles)
Trang 16N Giới hạn số (lực lượng không điều kiện) (Number (unqualified
cardnality) restrictions)
(D) Kiểu dữ liệu (Datatypes)
R Phương thức khởi tạo vai trò bổ sung (additional Role constructors) (○) Tích của vai trò (role composition)
Q Giới hạn số có điều kiện (Qualified number restrictions)
Bảng 1: Một vài phương thức khởi tạo trong Logic Mô tả
Sau đây là một vài loại logic mô tả đáng chú ý:
ALC được xem như logic mô tả chuẩn Loggic này mở rộng AL với
khái niệm phủ định (không chỉ giới hạn trong khái niệm nguyên tố) Logic này tương đương với logic hình thức K và logic mô tả ALUE (vì
một khi phủ định khái niệm được thêm vào trong ngôn ngữ, ta có thể mô phỏng phương thức khởi tạo U và E)
FL
là tập con của AL nhưng không có khái niệm phủ định
E L là tập con của ALE nhưng không có khái niệm đáy, phủ định khái
niệm nguyên tố và lượng hóa toàn thể
E L++ mở rộng EL với khái niệm đáy, định danh, miền rời rạc và GCIs
DL-Lite là tập con của ALIF, được thiết kế đặc biệt để hiệu quả trong
việc quản lý số lượng lớn các cá thể Mở rộng n-ngôi (n-ary) của Lite có gọi là DLR-Lite
DL- S là viết tắt của logic ALCR +, do nó tương với logic hình thức S4
SHIF(D) là logic được sử dụng trong ngôn ngữ OWL Lite
SHOIN(D) là logic được sử dụng ngôn ngữ OWL DL
SROIQ(D) là logic được sử dụng trong ngôn ngữ OWL 2
Bảng sau thể hiện độ phức tạp của suy diễn trong một vài logic mô tả quan trọng Một kết quả gần đây cho thấy SROIQ(D) có độ phức tạp số mũ cao hơn SHOIN(D), do phức hợp RIAs, và trong trường hợp đặc biệt là do khả năng
liên kết các vai trò có số lượng mũ
Logic Phân lớp độ phức tạp
Trang 17Bảng 2: Độ phức tạp của suy diễn trong một vài logic mô tả quan trọng
3.4 Suy diễn với logic mô tả
Một logic mô tả không chỉ chứa tiên đề và khẳng định mà còn cung cấp dịch vụ suy diễn Hầu hết các tác vụ thông dụng được liệt kê sau đây:
Thỏa mãn hay nhất quán cơ sở tri thức: Kiểm tra xem có tồn tại một mô hình logic thỏa mãn tất cả các tiên đề trong cơ sở tri thức hay không
Thỏa mãn khái niệm: Kiểm tra xem khái niệm có định nghĩa một tập rỗng không cần thiết hay không
Gắn kết: Kiểm tra một nhân tố cho trước có phải là một hệ quả logic bắt nguồn từ các tiên đề trong cơ sở tri thức hay không Nếu lập luận này là
một khẳng định khái niệm, tác vụ suy diễn còn được gọi là kiểm tra thực
thể
Gộp khái niệm: Kiểm tra khái niệm C có thể được xem là tổng quát hơn khái niệm D hay không, nghĩa là D có phải là một tập con của C hay không
Phân lớp: Tính toán một phân cấp khái niệm dựa trên quan hệ của gộp khái niệm Về bản chất, phân lớp kiểm tra gộp cho mỗi cặp khái niệm có thể trong cơ sở tri thức
Mặc dù vậy, nếu một logic mô tả bị đóng dưới hình thức phủ định, tất cả tác
vụ suy diễn liên quan đến khái niệm có thể được tinh giản thành thỏa mãn cơ sở tri thức, do đó đây cũng thường là tác vụ duy nhất được xem xét
Ví dụ 2: Những tác vụ sau đây có thể được tinh giản thành thỏa mãn cơ sở
tri thức:
Thỏa mãn khái niệm: C có thể được thỏa mãn đối với cơ sở tri thức K nếu K {x : C } có thể được thỏa mãn, với x là một cá thể mới, nghĩa
là một cá thể không xuất hiện trong K
Gắn kết: Một khẳng định khái niệm a : C được gắn với cơ sở tri thức K (ký hiệu K |= a : C ) nếu K {a : C } không thể thỏa mãn
Một khẳng định vai trò (a, b) : R được gắn với một cơ sở tri thức K (ký hiệu K |= (a, b) : R ) nếu K {b : C } |= {a : R C }, cho một khái niệm mới C
Nếu logic mô tả chứa các khẳng định vai trò phủ định, thì phát biểu
K |= (a, b): R nếu K {a, b}: R } không thể thỏa mãn là đúng
Trang 18 Gộp khái niệm: D gộp C (ký hiệu C ⊑ D ) đối với một cơ sở tri thức
K nếu C ⊓ D không thể thỏa mãn
Phân lớp: Phân lớp được tính toán để thực hiện một phép kiểm tra gộp
cho mỗi cặp các khái niệm trong cơ sở tri thức, vì thế nó có thể được tinh giản thành thỏa mãn cơ sở tri thức
Có một vài cách tiếp cận để suy diễn với logic mô tả, thông dụng nhất là:
Các thuật toán Tableau: Các thuật toán tableau giải quyết các vấn đề của thỏa mãn khái niệm và cơ sở tri thức Do Giả định Thế giới Mở, những thuật toán này cố gắng xây dựng một mô hình trừu tượng cho cơ sở tri thức, đó là một thông dịch logic thỏa mãn từng tiên đề Thuật toán tableau đầu tiên được đề xuất cho ALC Các thuật toán tableau còn
được dùng cho logic mô tả SHOIQ và SROIQ
Nói một cách chính xác hơn, các thuật giải tableau cố gắng tạo một đồ thị hoàn chỉnh cho cơ sở tri thức, với các nốt đại diện cho các cá thể và các cung nối biểu diễn quan hệ hai ngôi giữa hai cá thể Mỗi nốt được gán nhãn với một tập khái niệm mà các cá thể thỏa mãn trong mô hình đặc thù này Xuất phát từ cơ sở tri thức ban đầu, đồ thị được xây dựng bằng cách áp dụng lặp đi lặp lại một loạt các luật mở rộng, thứ chuyển hóa các diễn giải khái niệm phức tạp thành những cái đơn giản hơn (theo đó ngữ nghĩa được lưu trữ) cho đến khi không có luật nào có thể dùng được hoặc một xung đột (một mâu thuẫn hiển nhiên trong nhãn) xuất hiện Nếu không có xung đột nào, khái niệm hay cơ sở tri thức là có thể thỏa mãn và thuật toán đã tìm ra được một mô hình cho cơ sở tri thức đó Nếu không tồn tại một đồ thì hoàn chỉnh không xung đột thì cơ
sở tri thức là không thể thỏa mãn
Mặc dù những thuật toán này có độ phức tạp tính toán cao trong trường hợp xấu nhất, chúng thể hiện rất tốt trong thực tế, chủ yếu do sự tồn tại của rất nhiều kỹ thuật tối ưu hóa
Các thuật toán dựa trên phân giải: Các thuật toán phân giải diễn dịch cơ
sở tri thức thành logic vị từ, căn cứ vào việc trong hầu hết trường hợp, logic mô tả là các tập con của logic vị từ Điều này cho phép các thuật toán suy diễn hiện có và các cài đặt của chúng có thể được sử dụng Cách tiếp cận này hữu ích theo một quan điểm lý thuyết, cung cấp một