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

Tiểu luận môn Nguyên lý và phương pháp lập trình Lập trình hướng ontology

37 842 2

Đ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

Thông tin cơ bản

Định dạng
Số trang 37
Dung lượng 3,46 MB

Nội dung

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 2

1 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 3

4.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 4

Hì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 5

Bả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 6

1 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 7

mô 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 8

hạ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 9

mụ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 10

trong đó 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 11

Hì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 12

Hì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 13

3 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 15

Giả 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 16

N 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 17

Bả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

Ngày đăng: 11/04/2015, 08:16

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nguyễn Văn Chương (2009), Web semantic: Kỳ 2 - Ontologoy và web ngữ nghĩa, My Opera, [Online] liên kết: http://my.opera.com/Alibobo/blog/2009/09/25/web-semantic-ky-2-tong-quan-web-semantic Sách, tạp chí
Tiêu đề: Web semantic: Kỳ 2 - Ontologoy và web ngữ nghĩa
Tác giả: Nguyễn Văn Chương
Năm: 2009
[2] Lê Thị Mỹ Hạnh, Giới thiệu về lập trình hướng đối tượng, Vietnam Open Web Course, [Online] liên kết: http://www.vocw.edu.vn/content/m10761/latest/ Sách, tạp chí
Tiêu đề: Giới thiệu về lập trình hướng đối tượng
[3] Wikipedia, Lập trình hướng đối tượng, [Online] liên kết: http://vi.wikipedia.org/wiki/L%E1%BA%ADp_tr%C3%ACnh_h%C6%B0%E1%BB%9Bng_%C4%91%E1%BB%91i_t%C6%B0%E1%BB%A3ng8.2 Tiếng Anh Sách, tạp chí
Tiêu đề: Lập trình hướng đối tượng
[4] Trương Hải Bằng, Dương Hoàng Thanh (2010), “Definitions overview of Fuzzy Ontology”, in: Proceeding of the Six International Conference on Information Technology for Education and Research, University of Information Technology, Vietnam, pages 226-235 Sách, tạp chí
Tiêu đề: Definitions overview of Fuzzy Ontology”, in: "Proceeding of the Six International Conference on Information Technology for Education and Research
Tác giả: Trương Hải Bằng, Dương Hoàng Thanh
Năm: 2010
[5] Alan Rector (2005), A Practical Introduction to Ontologies & OWL, The University Of Manchester, UK Sách, tạp chí
Tiêu đề: A Practical Introduction to Ontologies & OWL
Tác giả: Alan Rector
Năm: 2005
[7] Fernando Bobillo Ortega (2008), Managing Vagueness in Ontologies, Ph.D Dissertation, Universidad de Granada, Granda Sách, tạp chí
Tiêu đề: Managing Vagueness in Ontologies
Tác giả: Fernando Bobillo Ortega
Năm: 2008
[8] Ralf Mửller, Volker Haarslve, “Description Logics Systems”, The Description Logic Hanbook, Edited by Franz Baader, Deborah L.McGuinness, Dianiele Nardi, Peter F. Patel-Schneider Sách, tạp chí
Tiêu đề: Description Logics Systems”, "The Description Logic Hanbook
[9] Wikipedia, Object-oriented programming, [Online] available: http://en.wikipedia.org/wiki/Object-oriented_programming Sách, tạp chí
Tiêu đề: Object-oriented programming
[10] FaCT++, OWL Website, [Online] available: http://owl.man.ac.uk/ factplusplus/ Sách, tạp chí
Tiêu đề: FaCT++
[12] Seiji Koide, Jans Aasman, and Steve Haflich (2008), OWL vs. Object Oriented Programming Khác

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w