fuzzy ontology and fuzzy-owl(9)

104
ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA KHOA HỌC MÁY TÍNH ĐỒ ÁN TỐT NGHIP ĐỀ TÀI: TÌM HIỂU FUZZY ONTOLOGY VÀ FUZZY- OWL Giáo viên hường dn: ThS. TRƢƠNG HẢI BNG Sinh viên thực hin: TRN THANH TON PHẠM ĐÌNH ÂN Lp: KHOA HỌC MÁY TÍNH Khóa: 01 TP.HCHÍ MINH, 5-2010

Upload: trung-kien-ho

Post on 24-Jun-2015

1.465 views

Category:

Documents


15 download

TRANSCRIPT

Page 1: Fuzzy Ontology and Fuzzy-OWL(9)

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA KHOA HỌC MÁY TÍNH

ĐỒ ÁN TỐT NGHIỆP

ĐỀ TÀI: TÌM HIỂU FUZZY ONTOLOGY VÀ FUZZY-

OWL

Giáo viên hường dẫn: ThS. TRƢƠNG HẢI BẰNG

Sinh viên thực hiện: TRẦN THANH TOẢN

PHẠM ĐÌNH ÂN

Lớp: KHOA HỌC MÁY TÍNH

Khóa: 01

TP.HỒ CHÍ MINH, 5-2010

Page 2: Fuzzy Ontology and Fuzzy-OWL(9)
Page 3: Fuzzy Ontology and Fuzzy-OWL(9)

MỞ ĐẦU

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 trích rút thông tin, truy vấn, Lập Luận trong cơ sở

tri thức để có thể cho ra các thông tin một cách tự động, chính xác.

Năm 2003, F-Baader đã phát triển Logic mô tả (Description Logic – DLs)

([11],[20],[19]) và xem nó như Là ngôn ngữ biểu diễn 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 xây dựng Logic mô tả mờ (Fuzzy Description Logic) ([9]) 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. Từ đó việc nghiên cứu và phát

triển Logic mô tả mờ như là một cơ sở cho việc biểu diễn tri thức và lập luận được đặt ra.

Vấn đề then chốt của web ngữ nghĩa Là xây dựng các cơ sở tri thức (OntoLogy mờ)

[10] từ đó tạo ra cơ chế Lập Luận trên cơ sở tri thức đó cho ra các thông tin cần thiết. Bài

báo đề cập việc sử dụng Logic mô tả mờ F-SHIN[10] cho Lập Luận trên (Fuzzy

Ontology) [11],[19].

Trong thời gian qua em đã có điều kiện được tiếp xúc nghiên cứu về Fuzzy Ontology. Từ

những nghiên cứu này, trong đồ án em sẽ nêu lên các vấn đề cơ bản của Fuzzy Ontology

và các kiến thức có lien quan. Do vậy các nội dung của luận văn sẽ được trình bày theo

các nội dung sau:

Chương 1. Ontology: Chương này giới thiệu một số kiến thức cơ bản về ontology

và các vấn đề liên quan. Trong chương này chúng ta sẽ tìm hiểu về các thành phần

cơ bản của Ontology cũng như các bước xây dựng Ontology. Các kiến thức trong

phần này kết hợp với Logic mô tả được giới thiệu trong chương tiếp theo là kiến

thức cơ bản đề xây dựng Ontology mờ.

Chương 2. Logic mô tả: Đây là chương giới thiệu về những nội dung cơ bản của

logic mô tả như khái lược về logic mô tả, các ngôn ngữ của logic mô tả, kiến trúc

của một hệ cơ sở tri thức dựa trên logic mô tả, các bài toán quyết định.

Chương 3. Fuzzy Ontology and fuzzy OWL: Đây là chương trình bày nghiên cứu

về việc sử dụng Logic mô tả mờ cho lập luận trên Ontology mờ.

Page 4: Fuzzy Ontology and Fuzzy-OWL(9)
Page 5: Fuzzy Ontology and Fuzzy-OWL(9)

Trên đây là những phần chính sẽ được trình bày trong đồ án. Trên thực tế vẫn còn

nhiều vấn đề cần phải tìm hiểu về Ontology mờ. Em hy vọng mình sẽ có điều kiện để tiếp

tục đi sâu hơn vào việc nghiên cứu ứng dụng của logic mô tả trong thời gian tới.

Cuối cùng, em xin được gửi lời cám ơn của mình tới thầy giáo hướng dẫn thạc sỹ

Trương Hải Bằng đã dìu dắt, hỗ trợ và giúp đỡ em hoàn thành đề tài này. Phần trình bày

của em chắc chắn còn nhiều thiếu sót, em rất mong được sự góp ý của thày để có thể

hoàn thiện tốt hơn đề tài.

Page 6: Fuzzy Ontology and Fuzzy-OWL(9)
Page 7: Fuzzy Ontology and Fuzzy-OWL(9)

LỜI CẢM ƠN

Chúng em xin chân thành cám ơn các thầy cô trong khoa Khoa Học Máy Tính –

Trường Đại Học Công Nghệ Thông Tin đã hỗ trợ tạo nhiều điều kiện thuận lợi cho chúng

em trong quá trình học tập cũng như quá trình thực hiện đồ án tốt nghiệp.

Chúng em xin ghi nhận lòng biết ơn sâu sắc đến Th.S Trương Hải Bằng là người trực

tiếp hướng dẫn em làm đồ án. Cám ơn thầy đã tận tình hướng dẫn, truyền đạt cho em

những kiến thức quí báu để em có thể hoàn thành đồ án này.

Chúng em cũng xin chân thành cám ơn quý thầy cô trong Khoa Khoa Học Máy Tính

đã tận tình giảng dạy, trang bị cho chúng em những kiến thức cần thiết trong suốt quá

trình học tập và nghiên cứu tại khoa.

Cuối cùng chúng tôi xin gởi lời cảm ơn đến bạn bè đã hỏi thăm, động viên và giúp đỡ

chúng tôi trong quá trình thực hiện đồ án.

Mặc dù chúng em đã nỗ lực hết sức để hoàn thành tốt đề tài của mình nhưng dù sao

những sai sót trong đồ án là những điều không thể tránh khỏi. Em rất mong nhận được

sự thông cảm và những ý kiến đóng góp tận tình của các thầy, cô giáo và các bạn cũng

như những ai quan tâm tới lĩnh vực trong đồ án này.

Tp.Hồ Chí Minh, ngày 30 tháng 8 năm 2010

Page 8: Fuzzy Ontology and Fuzzy-OWL(9)
Page 9: Fuzzy Ontology and Fuzzy-OWL(9)

NHẬN XÉT

(Của giảng viên hƣớng dẫn)

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

Page 10: Fuzzy Ontology and Fuzzy-OWL(9)
Page 11: Fuzzy Ontology and Fuzzy-OWL(9)

NHẬN XÉT

(Của giảng viên phản biện)

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

...............................................................................................................................................

Page 12: Fuzzy Ontology and Fuzzy-OWL(9)
Page 13: Fuzzy Ontology and Fuzzy-OWL(9)

MỤC LỤC

CHƢƠNG 1. TỔNG QUAN VỀ ONTOLOGY. ....................................................... 1

1.1. Giới thiệu. .............................................................................................................. 1

1.2. Quá trình hình thành. ............................................................................................. 1

1.3. Khái niệm về ontology. .......................................................................................... 3

1.4. Các phần tử trong ontology. ................................................................................... 4

1.4.1. Các cá thể (Individuals) – Thể hiện. ............................................................... 4

1.4.2. Các Lớp (Classes) - Khái niệm. ...................................................................... 4

1.4.3. Các thuộc tính (Properties). ............................................................................. 5

1.4.4. Các mối quan hệ (Relation). ............................................................................ 5

1.5. Phân loại: ................................................................................................................ 7

1.6. Vai trò của Ontology. ............................................................................................. 9

1.7. Phương Pháp xây dựng ontology. ........................................................................ 10

1.8. Ngôn ngữ Web Ontology (OWL). ....................................................................... 15

1.9. Một vài mô hình ontology. ................................................................................... 18

1.10. Ngôn ngữ ontology. .......................................................................................... 19

1.11. Tổng kết chương ............................................................................................... 21

CHƢƠNG 2. LOGIC MÔ TẢ (DESCRIPTION LOGIC) ................................... 21

2.1. Giới thiệu. ............................................................................................................ 21

2.2. Ngôn ngữ thuộc tính AL. ..................................................................................... 23

2.2.1. Ngôn ngữ mô tả cơ bản AL. .......................................................................... 24

2.2.2. Ngữ nghĩa của các khái niệm AL .................................................................. 24

2.2.3. Họ ngôn ngữ logic mô tả AL. ....................................................................... 25

2.2.4. Ngôn ngữ mô tả là tập con của logic vị từ bậc nhất. ..................................... 26

2.3. Hệ cơ sở tri thức ................................................................................................... 27

2.3.1. Kiến trúc hệ logic mô tả. ............................................................................... 27

2.3.2. Bộ thuật ngữ (TBox) ..................................................................................... 27

Page 14: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 1 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

2.3.2.1. Tiên đề thuật ngữ .................................................................................... 28

2.3.2.2. Định nghĩa khái niệm ............................................................................. 28

2.3.2.3. Mở rộng bộ thuật ngữ. ............................................................................ 29

2.3.2.4. Đệ quy .................................................................................................... 31

2.3.2.5. Thuật ngữ với các tiên đề bao hàm......................................................... 31

2.3.3. Bộ khẳng định (ABox). ................................................................................. 32

2.3.4. Cá thể ............................................................................................................. 33

2.3.5. Suy luận. ........................................................................................................ 34

2.3.5.1. Loại trừ TBox. ........................................................................................ 35

2.3.5.2. Lập luận đối với ABox. .......................................................................... 36

2.3.5.3. Ngữ nghĩa “đóng”, ngữ nghĩa “mở”. ...................................................... 37

2.4. Các thuật toán suy luận. ....................................................................................... 38

2.4.1. Thuật toán bao hàm cấu trúc. ........................................................................ 38

2.4.2. Thuật toán tableau. ........................................................................................ 40

2.5. Mở rộng ngôn ngữ mô tả ..................................................................................... 44

2.5.1. Các constructor vai trò .................................................................................. 45

3.5.2. Biểu diễn các giới hạn số .............................................................................. 45

2.6. Tổng kết chương .................................................................................................. 46

CHƢƠNG 3. FUZZY ONTOLOGY AND FUZZY OWL. .................................. 46

3.1. Logic mô tả mờ. ................................................................................................... 46

3.1.1. Giới thiệu. ...................................................................................................... 46

3.1.2. Cú pháp và ngữ nghĩa của logic mô tả mờ. ................................................... 47

3.1.2.1. Toán tử mờ. ............................................................................................ 47

3.1.2.2. Concrete Fuzzy Concepts. ...................................................................... 48

3.1.2.3. Fuzzy Numbers. ...................................................................................... 48

3.1.2.4. Truth constants. ...................................................................................... 49

3.1.2.5. Concept modifiers (bổ ngữ khái niệm). .................................................. 49

3.1.2.6. Features (chức năng). ............................................................................. 49

3.1.2.7. Datatype restrictions (giới hạn kiểu dữ liệu). ......................................... 49

Page 15: Fuzzy Ontology and Fuzzy-OWL(9)

2 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

3.1.2.8. Diễn giải các khái niệm. ......................................................................... 50

3.1.2.9. Tiên đề. ................................................................................................... 51

3.1.3. Một số ngôn ngữ logic mô tả mờ. ................................................................. 52

3.1.3.1. Logic mô tả mờ F-SHIN : ...................................................................... 52

3.1.3.1.1. Cú pháp ................................................................................................ 52

3.1.3.1.2. Ngữ nghĩa ............................................................................................. 53

3.1.3.2. Logic mô tả mờ SHOIN (D) ................................................................... 54

3.1.3.2.1. Nhắc lại logic mô tả SHOIN (D). ......................................................... 54

3.1.3.2.2. logic mô tả mờ SHOIN (D). ................................................................ 57

3.1.3.2.3. Logic mô tả mờ SROIQ. ...................................................................... 63

3.2 OntoLogy mờ ....................................................................................................... 66

3.2.1. Nhắc lại định nghĩa ontology. ....................................................................... 66

3.2.2. Định nghĩa ontology mờ. .............................................................................. 67

3.2.2.1. Định nghĩa 1. .......................................................................................... 67

3.2.2.2. Định nghĩa 2. .......................................................................................... 68

3.2.2.3. Định nghĩa 3. .......................................................................................... 70

3.2.2.4. Định nghĩa 4. .......................................................................................... 71

3.2.2.5. Định nghĩa 5. .......................................................................................... 71

3.2.2.6. Định nghia 6. .......................................................................................... 71

3.2.2.7. Định nghĩa 7. .......................................................................................... 72

3.2.3. Những lợi thế của fuzzy ontology. ................................................................ 74

3.2.4. Cơ sở tri thức trong ontology mờ. ................................................................. 75

3.3. Fuzzy OWL. ......................................................................................................... 77

CHƢƠNG 4. VÍ DỤ ÁP DỤNG. ................................................................................ 82

Page 16: Fuzzy Ontology and Fuzzy-OWL(9)
Page 17: Fuzzy Ontology and Fuzzy-OWL(9)

DANH MỤC CÁC SƠ ĐỒ, HÌNH

Trang

Hình 1.1 Cây Brentano về các phạm trù của Aristotle 2

Hình 1.2 Cây Porphyry 2

Hình 1.3 Một Ontology biểu diễn quan hệ của xe cộ. 6

Hình 1.4 Cấu trúc lớp phân cấp 13

Hình 1.5 Ràng buộc 14

Hình 1.6 sơ đồ ánh xạ các thành phần của mô hình thực thể kết hợp và dữ

liệu sang ontology và thể hiện.

19

Hình 1.7 kiến trúc logic mô tả. 21

Hình 2.1 Kiến trúc hệ logic mô tả 27

Hình 2.2 TBox với các khái niệm về quan hệ gia đình 29

Hình 2.3 Khai triển TBox quan hệ gia đình trong Hình 30

Hình 2.4 Bộ khẳng định (ABox) 32

Hình 2.5 ABox Aoe về câu truyện Oedipus 38

Hình 2.6 Luật biến đổi của thuật toán tableau giải bài toán thỏa 43

Hình 2.7 Ví dụ chứng minh Mother ⊑ Parent 44

Hình 3.1. (a) Crisp value; (b) L-function; (c) R-function; (d) (b) Triangular

function; (e) Trapezoidal function; (f) Linear hedge.

48

Hình 3.2. (a) Trapezoidal function; (b) Triangular function; (c) L-function;

(d) R-function

58

Hình 3.3 Cấu trúc của một ontology mờ 68

Hình 3.4 Ba lớp cấu trúc ontology 70

Hình 3.5 Sơ đồ một fuzzy ontology 73

DANH SÁCH CÁC BẢNG

Trang

Bảng 1.1 Các mô tả thuộc tính đối tượng OWL 15

Bảng 1.2 Các mô tả thuộc tính đối tượng OWL 16

Bảng 1.3 Các tiên đề và các sự kiện của OWL 16

Bảng 2.1 Cú pháp của ngôn ngữ AL 24

Bảng 2.2 Ngữ nghĩa của logic mô tả 25

Bảng 3.1 Toán tử mờ 48

Bảng 3.2 Giới hạn kiểu dữ liệu. 50

Bảng 3.3 Diễn giải các khái niệm. 51

Bảng 3.4 Các tiên đề trong logic mô tả mờ. 52

Page 18: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 1 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Bảng 3.5 Cú pháp của các khái niệm và phương thức trong F-SHIN 53

Bảng 3.6 Ngữ nghĩa của các khái niệm và phương thức trong F-SHIN 54

Bảng3.7 mở rộng các khái niệm trong SHOIN(D) 55

Bảng 3.8 ABox, TBox và RBox trong SROIQ. 64

Bảng 3.9 Mở rộng các khái niệm trong SROIQ. 65

Bảng 3.10 phân biệt sự khác nhau giữa fuzzy ontology và Crisp ontology. 75

Bảng 3.11 Số Lượng giới hạn mờ. 77

Bảng 3.12 Tiên đề mờ 79

Bảng 3.13 Ràng buộc mờ 80

Bảng 3.14 Tiên đề của fuzzy OWL. 81

Page 19: Fuzzy Ontology and Fuzzy-OWL(9)

KÍ HIỆU CÁC CỤM TỪ VIẾT TẮT

OWL Web Ontology Language

CGs Conceptual Graphs

KIF Knowledge Interchange Format

CGIF Conceptual Grap Interchange Form

DLs Description logic

F-OWL Fuzzy OWL

Page 20: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 1 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

CHƢƠNG 1. TỔNG QUAN VỀ ONTOLOGY.

1.1. Giới thiệu.

Chương này giới thiệu một số kiến thức cơ bản về ontology và các vấn đề liên quan.

Trong nền tảng Web ngữ nghĩa mới, ontology đóng một vai trò quan trọng do đây là

phương tiện giúp cung cấp ngữ nghĩa cho các trang web. Do đó các nghiên cứu về

ontology cần thiết được hoàn thiện để phục vụ cho nhu cầu của chuẩn web mới và nó

đang thu sự quan tâm rộng lớn từ giới nghiên cứu. Kỹ nghệ ontology là lĩnh vực mới

trong khoa học máy tính và khoa học thông tin, nghiên cứu các phương pháp và phương

pháp luận để xây dựng các ontology. Mục tiêu của nó nhằm làm rõ nghĩa các tri thức

chứa đựng trong một lĩnh vực cụ thể. Kỹ nghệ ontology đưa ra một phương hướng nhắm

tới việc giải quyết các vấn đề hoạt động tương tác xuất hiện bởi các rào cản ngữ nghĩa,

các rào cản liên quan đến các định nghĩa của các thuật ngữ hay các khái niệm. Kỹ nghệ

ontology là một tập hợp các nhiệm vụ liên quan đến việc phát triển các ontology cho một

lĩnh vực cụ thể. Bài toán so khớp ontology là một trong những nhiệm vụ như thế.

1.2. Quá trình hình thành.

Ontology bắt nguồn từ Hy Lạp, từ ontos có nghĩa là sự tồn tại (being), từ logos nghĩa

là diễn đạt (word); có nghĩa là diễn đạt sự tồn tại. Nó ảnh hưởng một thời gian trong nền

triết học của Hy Lạp. Aristotle (384-332 trước CN) giới thiệu 10 phạm trù cơ bản nằm ở

mức lá của cây ở hình 1.1, các phạm trù của ông có ảnh hưởng mạnh mẽ đến các

ontology sau này. Sau đó Brentano bổ sung các phạm trù còn lại hình thành cây

Brentano, là một hình thức của ontology.

Page 21: Fuzzy Ontology and Fuzzy-OWL(9)

2 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Hình 1.1 Cây Brentano về các phạm trù của Aristotle.

Hình 1.2 Cây Porphyry.

Một ontology khác được biết đến là cây Porphyry do triết gia Hy Lạp Porphyry, sống vào

thế kỷ 3 sau Công Nguyên, vẽ ra dựa trên tư tưởng của Ariseoele được minh họa ở hình

Page 22: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 3 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

1.2. Theo cây này vật chất là khái niệm cao nhất không thể tìm thấy khái niệm nào cao

hơn. Còn nhân loại là khái niệm thấp nhất, dưới nhân loại chỉ có cá nhân như: Socrates,

Plato, Aristotle… Bên cạnh việc định nghĩa các phạm trù để biểu diễn ontology, Aristotle

còn xây dựng nên tam đoạn luận làm nền móng cho logic học.

1.3. Khái niệm về ontology.

Theo triết học thì ontology được định nghĩa như sau: “ontology là một siêu hình học

nghiên cứu về sự tồn tại và hiện thân của tự nhiên” [Aristoteles]

Theo tin học thì ontology có những định nghĩa sau:

- Gruber (1993), “Ontology là một thuyết minh hình thức, rõ ràng của một nhận

thức chung”. Định nghĩa của ông được phân làm 4 khái niệm chính: mô tả trừu

tượng của hiện tượng (nhận thức ), diễn đạt rõ ràng bằng toán học (hình thức), các

khái niệm và quan hệ giữa chúng phải được định nghĩa một cách chính xác và rỏ

ràng, tồn tại một sự đồng thuận của những người sử dụng ontology (chung).

- Rusell & Norving (1995), “Ontology là một mô tả hình thức của các khái niệm và

quan hệ có thể tồn tại trong một cộng đồng cụ thể”.

- Swartout (1996), “Ontology là một tập thuật ngữ có cấu trúc và bậc để diễn tả

một phạm vi cụ thể và có thể được sử dụng như là bộ khung của cơ sở tri thức”.

- Fensel (2000), “Ontology là mô tả một cách phổ biến, có khả năng dùng chung và

hình thức của các khái niệm quan trọng trong một phạm vi cụ thể”.

- John F.Sowa (2000), “Ontlogy là một bản liệt kê các kiểu của những gì mà tồn tại

trong miền D từ khía cạnh mà người sử dụng ngôn ngữ L để mô tả D. Các kiểu

của Ontology bao gồm: vị tử, ý nghĩa từ, hay khái niệm và quan hệ của ngôn ngữ

L khi mô tả về D”.

- Noy & Mc.Guinness (2001), “Ontology là một mô tả hình thức và rõ ràng của các

khái niệm trong phạm vi cụ thể, các thuộc tính của khái niệm mô tả đặc tính và

tính chất của khái niệm, các ràng buộc của thuộc tính”.

- Fonseca (2002), “Ontology là một lý thuyết mà sử dụng một bộ từ vựng cụ thể để

mô tả thực thể, thuộc tính và các thao tác trong một phạm vi cụ thể”.

- Enrico Franconi (2003), “Ontology là một nhận thức hình thức về thế giới”.

- Starlap (2003), “Ontology bao hàm các thuật ngữ, xác định ý nghĩa của và mối

quan hệ giữa chúng”.

- A.Maedche & B.Motik & L.Stojanvic (2003), “Ontology là mô hình khái niệm

trong phạm vi ứng dụng nhất định, có thể chia sẻ và thực thi trên máy tính”.

Theo các định nghĩa trên một Ontology phải có những tính chất sau:

Page 23: Fuzzy Ontology and Fuzzy-OWL(9)

4 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Được sử dụng để mô tả một phạm vi ứng dụng cụ thể.

Các khái niệm và quan hệ được định nghĩa rõ ràng trong phạm vi ứng dụng đó.

Có cơ chế tổ chức các khái niệm (thường là phân cấp).

Có sự đồng thuận về mặt ý nghĩa các khái niệm của những người cùng sử dụng

ontology.

1.4. Các phần tử trong ontology.

Các ontology hiện nay đều có nhiều điểm tương tự về mặt cấu trúc, bất kể ngôn ngữ

được dùng để biểu diễn. Hầu hết các ontology đều mô tả các đối tượng (thể hiện), lớp

(khái niệm), thuộc tính và các quan hệ.

1.4.1. Các cá thể (Individuals) – Thể hiện.

Cá thể (hay thể hiện) là thành phần cơ bản, “mức nền” của một ontology. Các cá thể

trong một ontology có thể bao gồm các đối tượng rời rạc như con người, con thú, xe,

nguyên tử, hành tinh, trang web, cũng như các đối tượng trừu tượng như con số và từ

(mặc dù có một vài khác biệt về ý kiến liệu các con số và từ là lớp hay là đối tượng). Nói

đúng ra, một ontology không cần chứa bất cứ cá thể nào, nhưng một trong những mục

đích chung của ontology là cung cấp một phương tiện để phân loại các đối tượng, ngay cả

khi các đối tượng này không phải là một phần rõ ràng của ontology.

1.4.2. Các Lớp (Classes) - Khái niệm.

Lớp – khái niệm – có thể được định nghĩa theo cách bên ngoài hay bên trong. Theo

định nghĩa bên ngoài, chúng là những nhóm, bộ hoặc tập hợp các đối tượng. Theo định

nghĩa bên trong, chúng là các đối tượng trừu tượng được định nghĩa bởi giá trị của các

mặt ràng buộc khiến chúng phải là thành viên của một lớp khác. Lớp có thể phân loại các

cá thể, ác lớp khác, hay một tổ hợp của cả hai. Một số ví dụ của lớp:

Person, lớp của tất cả con người, hay các đối tượng trừu tượng có thể được mô tả

bởi các tiêu chuẩn làm một con người.

Vehicle, lớp của tất cả xe cộ, hay các đối tượng trừu tượng có thể được mô tả bởi

các tiêu chuẩn làm một chiếc xe.

Car, lớp của tất cả xe hơi, hay các đối tượng trừu tượng có thể được mô tả bởi các

tiêu chuẩn làm một chiếc xe hơi.

Class, biểu diễn lớp tất cả các lớp, hay các đối tượng trừu tượng có thể được mô

tả bởi các tiêu chuẩn để làm một lớp.

Page 24: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 5 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Thing, biểu diễn lớp tất cả mọi thứ, hay các đối tượng trừu tượng có thể được mô

tả bởi các tiêu chuẩn để làm một thứ gì đó (và không phải không-là-gì cả).

Một lớp có thể gộp nhiều lớp hoặc được gộp vào lớp khác; một lớp xếp gộp vào lớp

khác được gọi là lớp con (hay kiểu con) của lớp gộp (hay kiểu cha). Ví dụ, Vechicle gộp

Car, bởi vì bất cứ thứ gì là thành viên của lớp sau cũng đều là thành viên của lớp trước.

Quan hệ xếp gộp được dùng để tạo nên một cấu trúc phân cấp các lớp, thông thường có

một lớp tổng quát lớn nhất chẳng hạn Anything nằm ở trên cùng và những lớp rất cụ thể

như 2002 Ford Explorer nằm ở dưới cùng. Hệ quả cực kỳ quan trọng của quan hệ xếp

gộp là tính kế thừa của các thuộc tính từ lớp cha đến lớp con. Do vậy, bất cứ thứ gì hiển

nhiên đúng với một lớp cha cũng hiển nhiên đúng với các lớp con của nó. Trong một số

ontology, một lớp chỉ được cho phép có một lớp cha, nhưng trong hầu hết các ontology,

các lớp được cho phép có một số lượng lớp cha bất kỳ và trong trường hợp sau tất cả các

thuộc tính hiển nhiên của từng lớp cha được kế thừa bởi lớp con. Do đó một lớp cụ thể

của lớp thú (HouseCat) có thể là một con của lớp Cat và cũng là một con của lớp Pet.

1.4.3. Các thuộc tính (Properties).

Các đối tượng trong một ontology có thể được mô tả bằng cách liên hệ chúng với

những thứ khác, thường là các mặt hay bộ phận. Những thứ được liên hệ này thường

được gọi là thuộc tính, mặc dù chúng có thể là những thứ độc lập. Một thuộc tính có thể

là một lớp hay một cá thể. Kiểu của đối tượng và kiểu của thuộc tính xác định kiểu của

quan hệ giữa chúng. Một quan hệ giữa một đối tượng và một thuộc tính biểu diễn một sự

kiện đặc thù cho đối tượng mà nó có liên hệ. Ví dụ đối tượng Ford Explorer có các thuộc

tính như:

<có tên> Ford Explorer

<có bộ phận> door (với số lượng tối thiểu và tối đa: 4)

<có một trong các bộ phận> {4.0L engine, 4.6L engine}

<có bộ phận> 6-speed transmission

Giá trị thuộc tính có thể thuộc kiểu dữ liệu phức; trong ví dụ này, động cơ liên hệ chỉ

có thể là một trong số các dạng con của động cơ, chứ không phải là một cái đơn lẻ. Các

ontology chỉ mang đầy đủ ý nghĩa nếu các khái niệm có liên hệ với các khái niệm khác

(các khái niệm đều có thuộc tính). Nếu không rơi vào trường hợp này, thì hoặc ta sẽ có

một phân loại (nếu các quan hệ bao hàm tồn tại giữa các khái niệm) hoặc một từ điển có

kiểm soát. Những thứ này đều hữu ích nhưng không được xem là ontology.

1.4.4. Các mối quan hệ (Relation).

Page 25: Fuzzy Ontology and Fuzzy-OWL(9)

6 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Quan hệ giữa các đối tượng trong một ontology cho biết các đối tượng liên hệ với đối

tượng khác như thế nào. Thông thường một quan hệ là của một loại (hay lớp) cụ thể nào

đó chỉ rõ trong ngữ cảnh nào đối tượng được liên hệ với đối tượng khác trong ontology.

Ví dụ trong ontology chứa khái niệm Ford Explorer và khái niệm Ford Bronco có thể

được liên hệ bởi một quan hệ loại <được định nghĩa là một con của>. Phát biểu đầy đủ

của sự kiện như sau:

Ford Explorer được định nghĩa là một con của : Ford Bronco

Điều này cho ta biết Explorer là mô hình thay thế cho Bronco. Ví dụ này cũng minh

họa rằng quan hệ có cách phát biểu trực tiếp. Phát biểu ngược biểu diễn cùng một sự kiện

nhưng bằng một ngữ nghịch đảo trong ngôn ngữ tự nhiên.

Phần lớn sức mạnh của ontolgy nằm ở khả năng diễn đạt quan hệ. Tập hợp các quan

hệ cùng nhau mô tả ngữ nghĩa của domain. Tập các dạng quan hệ được sử dụng (lớp quan

hệ) và cây phân loại thứ bậc của chúng thể hiện sức mạnh diễn đạt của ngôn ngữ dùng để

biểu diễn ontology.

Hình 1.3 Một Ontology biểu diễn quan hệ của xe cộ.

asuperclass- of, hay ngược lại, „là dạng con của‟ – is-a-subtype-of – hay „là lớp con

của‟ – is-a-subclass-of). Nó định nghĩa đối tượng nào được phân loại bởi lớp nào.

Ví dụ, ta đã thấy lớp Ford Explorer là lớp con của 4-Wheel Drive Car và lớp 4- Wheel

Drive Car lại là lớp con của Car.

Sự xuất hiện của quan hệ „là lớp con của‟ tạo ra một cấu trúc phân cấp thứ bậc; dạng

cấu trúc cây này (hay tổng quát hơn, là tập có thứ tự từng phần) mô tả rõ ràng cách thức

các đối tượng liên hệ với nhau. Trong cấu trúc này, mỗi đối tượng là „con‟ của một „lớp

cha‟ (Một số ngôn ngữ giới hạn quan hệ là lớp con của trong phạm vi một cha cho mọi

nút, nhưng đa số thì không như thế).

Page 26: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 7 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Một dạng quan hệ phổ biến khác là quan hệ meronymy, gọi là „bộ phận của‟, biểu diễn

làm thế nào các đối tượng kết hợp với nhau đề tạo nên đối tượng tổng hợp. Ví dụ, nếu ta

mở rộng ontology trong ví dụ để chứa thêm một số khái niệm như Steering Wheel (vô

lăng), ta sẽ nói rằng “Vô lăng được định nghĩa là một bộ phận của Ford Explorer” vì vô

lăng luôn luôn là một trong những bộ phận của xe Ford Explorer. Nếu đưa quan hệ

eronymy vào ontology này, ta sẽ thấy rằng cấu trúc cây đơn giản và nhẹ nhàng trước đó

sẽ nhanh chóng trở nên phức tạp và cực kỳ khó hiểu. Điều này không khó lý giải; một lớp

nào đó được mô tả rằng luôn luôn có một thành viên là bộ phận của một thành viên thuộc

lớp khác thì lớp này cũng có thể có một thành viên là bộ phận của lớp thứ ba. Kết quả là

các lớp có thể là bộ phận của nhiều hơn một lớp. Cấu trúc này được gọi là đồ thị chu trình

có hướng.

Ngoài những quan hệ chuẩn như „là lớp con của‟ và „được định nghĩa là bộ phận của‟,

ontology thường chứa thêm một số dạng quan hệ làm trau chuốt hơn ngữ nghĩa mà chúng

mô hình hóa. Ontology thường phân biệt các nhóm quan hệ khác nhau. Ví dụ nhóm các

nquan hệ về:

Quan hệ giữa các lớp

Quan hệ giữa các thực thể

Quan hệ giữa một thực thể và một lớp

Quan hệ giữa một đối tượng đơn và một tập hợp

Quan hệ giữa các tập hợp.

Các dạng quan hệ đôi khi đặc thù chuyên ngành và do đó chỉ sử dụng để lưu trữ các

dạng sự kiện đặc thù hoặc trả lời cho những loại câu hỏi cụ thể. Nếu định nghĩa của dạng

quan hệ được chứa trong một ontology thì ontology này định ra ngôn ngữ định nghĩa

ontology cho chính nó. Một ví dụ về ontology định nghĩa các dạng quan hệ của chính nó

và phân biệt các nhóm quan hệ khác nhau là ontology Gellish.

Ví dụ, trong lĩnh vực xe ô tô, ta cần quan hệ „được sản xuất tại‟ để cho biết xe được

lắp ráp tại chỗ nào. Như vậy, Ford Explorer được sản xuất tại Louisville. Ontology có thể

cũng biết được Louisville „tọa lạc tại‟ Kentucky và Kentucky „được định nghĩa là‟ một

bang và „là bộ phận của‟ Hoa Kỳ. Phần mềm sử dụng ontology này sẽ có thể trả lời một

câu hỏi như „những xe hơi nào được sản xuất tại Hoa Kỳ?”.

1.5. Phân loại:

Theo cách phân loại của John F.Sowa, có 2 loại.

Page 27: Fuzzy Ontology and Fuzzy-OWL(9)

8 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Ontology hình thức (formal ontology): là ontology mô tả các khái niệm một

cách chi tiết đến các tiên đề và định nghĩa mà không quan tâm đến các mô tả náy

có thực hiện dễ dàng trên máy tính hay không. Ontology hình thức thường có xu

hướng nhỏ, nhưng các tiên đề và định nghĩa thường rất phức tạp trong suy luận và

tính toán. Những ontology này thường do các nhà triết học thiết kế.

Ontology thuật ngữ (terminological ontology): là ontology mô tả các khái niệm

theo hướng tiên đề và định nghĩa được phát biểu dạng logic hoặc trong một vài

ngôn ngữ hướng đối tượng để cho máy tính thực hiện việc chuyển đổi theo dạng

logic. Dạng logic này không có sự hạn chế về việc phát biểu các tiên đề và định

nghĩa và cho máy tính thực hiện đễ dàng. Các tiên đề và định nghĩa chỉ mô tả đến

các vấn đề mà ứng dụng quan tâm. Ontology thuật ngữ lớn nhưng các tiên đề và

định nghĩa thường rất dễ dàng trong suy luận và tính toán. Những ontology này

thường do các nhà tin học thiết kế.

Theo cách phân loại của D.Fensel, có 7 loại:

Knowledge Representation ontology: dựa trên các cách biểu diễn tri thức truyền

thống.

Ví dụ: Frame-Ontology.

General/Common ontology: Từ vựng liên quan đến mọi thứ, sự kiện, thời gian,

không gian,…

Ví dụ: ontology về bảng trao đổi giữa meter và inch.

Meta-ontology: định nghĩa các ontology.

Ví dụ: Registry Ontology, dùng để quản lý các ontology khác.

Domain ontology: từ vựng của các khái niệm trong một phạm vi.

Ví dụ: ontology về lý thuyết hoặc các nguyên lý cơ bản của một miền.

Task ontology: hệ thống các từ vựng của các thuật ngữ để giải quyết các vấn đề

kết hợp liên quan đến nhiệm vụ mà có thể cùng hoặc không cùng phạm vi ứng

dụng cụ thể.

Ví dụ: ontology về kế hoạch phân công nhiệm vụ.

Domain-task ontology: task ontology được sử dụng lại trong một ứng dụng cụ

thể.

Ví dụ: ontology về phân công nhiệm vụ của các chuyến bay.

Application ontology: chứa các kiến thức cần thiết của một ứng dụng trong phạm

vi ứng dụng nhất định.

Ví dụ: ontology hình học.

Page 28: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 9 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

1.6. Vai trò của Ontology.

Với ý nghĩa và cấu trúc như trên, Ontology đã trở thành một công cụ quan trọng trong

lĩnh vực Web ngữ nghĩa. Có thể kể ra một số lợi ích của Ontology như:

Để chia sẻ những hiểu hiểu biết chung về các khái niệm, cấu trúc thông tin giữa

con người hoặc giữa các hệ thống phần mềm: đây là vai trò quan trọng nhất của

một Ontology, không những trong lĩnh vực Web ngữ nghĩa mà còn trong nhiều

ngành và lĩnh vực khác. Về phương diện này, có thể hình dung Ontology giống

như một cuốn từ điển chuyên ngành, cung cấp và giải thích các thuật ngữ cho

người không có cùng chuyên môn khi được yêu cầu. Không chỉ được sử dụng bởi

con người, Ontology còn hữu ích khi cần sự hợp tác giữa các hệ thống phần mềm.

Lấy ví dụ, Open Biological là bộ Ontology nổi tiếng được phát triển bởi trường

đại học Stanford nhằm cung cấp các thuật ngữ một cách đầy đủ trong ngành sinh

vật học. Ontology này hiện đã được tích hợp vào một số ứng dụng Web trên

Internet. Sau đó, một phần mềm tra cứu hoặc dạy sinh học trên máy tính có thể

kết nối với các ứng dụng Web trên để lấy thông tin cho mục tiêu chú giải.

Cho phép tái sử dụng tri thức: đây là một vấn đề khó và là mục tiêu nghiên cứu

quan trọng trong những năm gần đây. Nó liên quan đến bài toán trộn hai hay

nhiều Ontology thành một Ontology lớn và đầy đủ hơn. Nhưng vấn đề ở đây là

tên các khái niệm được định nghĩa trong các Ontology này có thể giống nhau

trong khi chúng được dùng để mô tả các loại vật hoàn toàn khác nhau. Tuy nhiên

cũng có thể có trường hợp ngược lại, khi tên các khái niệm khác nhau nhưng cùng

mô tả một sự vật. Ngoài ra, làm thế nào để bổ sung các quan hệ, thuộc tính có sẵn

vào một hệ thống mới càng làm cho vấn đề trở nên phức tạp.

Cho phép tri thức độc lập với ngôn ngữ: đây cũng là vấn đề liên quan đến lĩnh

vực tái sử dụng tri thức đã nói ở trên, tuy nhiên bài toán của nó là làm thế nào để

một hệ thống Ontology có thể được dùng bởi các ngôn ngữ của các quốc gia khác

nhau mà không phải xây dựng lại. Giải pháp mà Ontology mang lại là cho phép

tên các khái niệm và quan hệ trong Ontology mới tham khảo các khái niệm, định

nghĩa của một hệ thống Ontology chuẩn thường được xây dựng bằng tiếng Anh.

Điều này có thể sẽ phá vỡ phần nào rào cản về mặt ngôn ngữ khi mà kết quả tìm

kiếm sẽ không bó gọn trong từ khóa và ngôn ngữ mà nó sử dụng. Ngoài ra,

Ontology có thể sẽ trở thành hướng đi mới cho một lĩnh vực đã quen thuộc là dịch

tài liệu tự động. Có thể nói như vậy, bởi ngữ nghĩa các từ vựng trong văn bản sẽ

được dịch chính xác hơn khi được ánh xạ vào đúng ngữ cảnh của nó.

Cho phép tri thức trở nên nhất quán và tường minh: các khái niệm khác nhau

trong một hay nhiều lĩnh vực cụ thể có thể cùng tên và gây nhập nhằng về ngữ

Page 29: Fuzzy Ontology and Fuzzy-OWL(9)

10 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

nghĩa, tuy nhiên khi được đưa vào một hệ thống Ontology thì tên mỗi khái niệm

là duy nhất. Một giải pháp cho vấn đề này là Ontology sẽ sử dụng các tham khảo

URI làm định danh thật sự cho khái niệm trong khi vẫn sử dụng các nhãn gợi nhớ

bên trên để thuận tiện cho người dùng.

Cung cấp một phương tiện cho công việc mô hình hóa: Ontology là một tập các

khái niệm phân cấp được liên kết với nhau bởi các quan hệ. Cơ bản mỗi khái niệm

có thể xem như là một lớp, mà đối tượng của lớp đó cùng các quan hệ đã góp

phần tạo nên cấu trúc của bài toán hay vấn đề cần giải quyết.

Cung cấp một phương tiện cho việc suy luận: hiện nay, một số ngôn ngữ

Ontology đã tích hợp lớp Ontology suy luận (Ontology Inference Layer) bên

trong cho mục đích suy luận logic trên tập quan hệ giữa các đối tượng trong hệ

thống.

1.7. Phƣơng Pháp xây dựng ontology.

Có nhiều phương pháp khác nhau để xây dựng một Ontology, nhưng nhìn chung các

phương pháp đều thực hiện hai bước cơ bản là: xây dựng cấu trúc lớp phân cấp và định

nghĩa các thuộc tính cho lớp. Trong thực tế, việc phát triển một Ontology để mô tả miền

cần quan tâm là một công việc không đơn giản, phụ thuộc rất nhiều vào công cụ sử

dụng, tính chất, quy mô, sự thường xuyên biến đổi của miền cũng như các quan hệ phức

tạp trong đó. Những khó khăn này đòi hỏi công việc xây dựng Ontology phải là một quá

trình lặp đi lặp lại, mỗi lần lặp cải thiện và tinh chế dần sản phẩm chứ không phải là một

quy trình khung với các công đoạn tách rời nhau.

Ngoài ra, công việc xây dựng Ontology cũng cần phải tính đến khả năng mở rộng

miền quan tâm trong tương lai, khả năng kế thừa các hệ thống Ontology có sẵn, cũng như

tính linh động để Ontology có khả năng mô tả tốt nhất các quan hệ phức tạp trong thế

giới thực. Nội dung chương này sẽ đề cập đến một số nguyên tắc cơ bản của việc xây

dựng Ontology qua các các công đoạn cụ thể sau đây (Quy trình phát triển gồm 7 bước

do Stanford Center for Biomedical Informatics Research đưa ra, đây là hóm phát triển

phần mềm Protégé để trình diễn và xoạn thảo Ontology ):

Xác định miền quan tâm và phạm vi của Ontology.

Xem xét việc kế thừa các Ontology có sẵn.

Liệt kê các thuật ngữ quan trọng trong Ontology.

Xây dựng các lớp và cấu trúc lớp phân cấp.

Định nghĩa các thuộc tính và quan hệ cho lớp.

Định nghĩa các ràng buộc về thuộc tính và quan hệ của lớp.

Page 30: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 11 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Tạo các thực thể cho lớp.

Bƣớc 1: Xác định miền quan tâm và phạm vi của Ontology.

Giống như mọi công đoạn đặc tả khác, đặc tả Ontology bắt đầu bằng việc trả lời

những câu hỏi mang tính phân tích để nhận diện chính xác các yêu cầu. Thông thường,

các yêu cầu đối với một hệ thống Ontology là mô tả miền quan tâm nhằm phục vụ cơ sở

tri thức trong việc giải quyết những mục đích chuyên biệt. Do đó, những câu hỏi này

thường là:

Ontology cần mô tả miền nào?

Ontology phục vụ cho mục đích chuyên biệt gì?

Cơ sở tri thức trong Ontology sẽ trả lời những câu hỏi gì?

Ontology nhằm vục vụ đối tượng nào?

Ai là người sẽ xây dựng, quản trị Ontology?

Nhìn chung, câu trả lời cho các câu hỏi dạng này có thể sẽ thường xuyên thay đổi

trong suốt quá trình lặp xây dựng một Ontology. Nhất là khi có sự thay đổi về mục đích

hoặc cần bổ sung tính năng trong việc sử dụng cơ sở tri thức. Tuy nhiên, việc trả lời

chính xác các câu hỏi trên tại mỗi bước lặp sẽ giúp giới hạn phạm vi thực sự của mô hình

cần mô tả và dự trù các kỹ thuật sẽ sử dụng trong quá trình phát triển. Lấy ví dụ, nếu dự

trù khả năng xảy ra sự khác biệt về ngôn ngữ giữa người phát triển và người sử dụng thì

Ontology phải được bổ sung cơ chế ánh xạ (mapping) qua lại các thuật ngữ giữa các ngôn

ngữ khác nhau. Hoặc giả sử Ontology cần xây dựng có chức năng xử lý ngôn ngữ tự

nhiên, ứng dụng dịch tài liệu tự động thì cũng cần thiết phải có kỹ thuật xác định từ đồng

nghĩa chẳng hạn.

Sau khi đã phát thảo phạm vi Ontology dựa trên việc trả lời những câu hỏi trên, người

thiết kế sẽ trả lời các câu hỏi mang tính đánh giá, qua đó tiếp tục tinh chỉnh lại phạm vi

của hệ thống cần xây dựng. Các câu hỏi dạng này thường dựa trên cơ sở tri thức của

Ontology và được gọi là câu hỏi kiểm chứng khả năng (competency question):

Ontology đã có đủ thông tin để trả lời cho các câu hỏi được quan tâm trên cơ sở

tri thức hay không?

Câu trả lời của cơ sở tri thức đã đáp ứng được mức độ, yêu cầu nào của người sử

dụng?

Các ràng buộc và quan hệ phức tạp trong miền quan tâm đã được biểu diễn hợp lý

chưa?

Bƣớc 2: Xem xét việc kế thừa các Ontology có sẵn

Page 31: Fuzzy Ontology and Fuzzy-OWL(9)

12 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Đây là một công đoạn thường hay sử dụng để giảm thiểu công sức xây dựng một

Ontology. Bằng cách kế thừa các Ontology tương tự có sẵn, người xây dựng có thể thêm

hoặc bớt các lớp, quan hệ giữa các lớp, thực thể.. để tinh chỉnh tùy theo mục đích của

mình. Ngoài ra, việc sử dụng lại các Ontology có sẵn cũng rất quan trọng khi cần sự

tương tác giữa các ứng dụng khác nhau. Lý do là các ứng dụng sẽ cần phải hiểu các lớp,

thực thể, quan hệ.. của nhau để thuận tiện trong việc trao đổi hoặc thông nhất thông tin.

Vấn đề xây dựng một Ontology mới bằng cách kế thừa các hệ thống có sẵn liên quan

đến một bài toán rất phức tạp là trộn (merging) các Ontology. Như đã nói trong mục

trước, tên các khái niệm được định nghĩa trong các Ontology này có thể giống nhau trong

khi chúng được dùng để mô tả các loại vật hoàn toàn khác nhau. Trong khi đó, cũng có

thể xảy ra trường hợp ngược lại, khi tên các khái niệm khác nhau nhưng cùng mô tả một

sự vật. Và một vấn đề nữa là làm thế nào để bổ sung các quan hệ, thuộc tính có sẵn vào

một hệ thống mới. Tuy nhiên, hầu hết các Ontology sử dụng trong ngành khoa học máy

tính nói chung và Web ngữ nghĩa nói riêng đều được xây dựng trên các hệ thống xây

dựng và quản trị Ontology. Có thể kể tên một số công cụ, chẳng hạn: Sesame, Protégé,

Ontolingua, Chimaera, OntoEdit, OidEd.. Hiện nay, đa số các phần mềm này đều hỗ trợ

chức năng tự động trộn các Ontology cùng hoặc thậm chí khác định dạng với nhau. Mặc

dù vậy, ở mức nào đó, người xây dựng cũng cần phải kiểm tra lại một cách thủ công,

nhưng đây có lẽ cũng không phải là một công việc phức tạp.

Hiện có rất nhiều Ontology được chia sẻ trên Web. Có thể kể ra một số Ontology nổi

tiếng như: UNSPSC (www.unspsc.org) do Chương trình phát triển của Liên Hiệp Quốc

hợp tác với tổ chức Dun & Bradstreet nhằm cung cấp các thuật ngữ của các sản phẩm và

dịch vụ thương mại. Các Ontology trong lĩnh vực thương mại khác như: RosettaNet

(www.rosettanet.org), DMOZ (www.dmoz.org), eClassOwl,.. Open Biological, BioPax

trong lĩnh vực sinh vật học, UMLS trong lĩnh vực mạng ngữ nghĩa, GO (Gene

Ontology), WordNet (đại học Princeton)..

Bƣớc 3: Liệt kê các thuật ngữ quan trọng trong Ontology.

Ontology được xây dựng trên cơ sở các khái niệm trong một lĩnh vực cụ thể, vì vậy

khi xây dựng ontology cần bắt đầu từ các thuật ngữ chuyên ngành để xây dựng thành các

lớp trong ontology tương ứng. Tất nhiên không phải thuật ngữ nào cũng đưa vào

ontology, vì chưa chắc đã định vị được cho thuật ngữ đó. Do đó cần phải liệt kê các

thuật ngữ, để xác định ngữ nghĩa cho các thuật ngữ đó, cũng như cân nhắc về phạm vi

của ontology. Việc liệt kê các thuật ngữ còn cho thấy được phần nào tổng quan về các

khái niệm trong lĩnh vực đó, giúp cho các bước tiếp theo được thuận lợi.

Bƣớc 4: Xác định các lớp và phân cấp của các lớp.

Page 32: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 13 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Hình 1.4: Cấu trúc lớp phân cấp

Công việc xác định các lớp không

chỉ đơn giản là tiến hành tìm hiểu về

ngữ nghĩa của các thuật ngữ đã có để

có được các mô tả cho thuật ngữ đó,

mà còn phải định vị cho các lớp mới,

loại bỏ ra khỏi ontology nếu nằm ngoài

phạm vi của ontology hay hợp nhất với

các lớp đã có nếu có nhiều thuật ngữ

có ngữ nghĩa như nhau (đồng nghĩa,

hay đa ngôn ngữ). Ngoài ra không phải

thuật ngữ nào cũng mang tính chất như

một lớp.

Một công việc cần phải tiến hành

song song với việc xác định các lớp là

xác định phân cấp của các lớp đó. Việc này giúp định vị các lớp dễ dàng hơn.

Có một số phương pháp tiếp cận trong việc xác định phân cấp của các lớp:

Phương pháp từ trên xuống (top-down): bắt đầu với định nghĩa của các lớp tổng

quát nhất trong lĩnh vực và sau đó chuyên biệt hóa các khái niệm đó. Ví dụ:

Trong Ontology về quản lý nhân sự, ta bắt đầu với lớp Người, sau đó chuyên biệt

hóa lớp Người đó bằng cách tạo ra các lớp con của lớp Người như : Kỹ sư, Công

nhân, Bác sỹ,… Lớp Kỹ sư cũng có thể chuyên biệt hóa bằng cách tạo ra các lớp

con như Kỹ sư CNTT, Kỹ sư điện, Kỹ sư cơ khí, …

Phương pháp từ dưới lên (bottom-up): bắt đầu với định nghĩa của các lớp cụ thể

nhất, như các lá trong cây phân cấp. Sau đó gộp các lớp đó lại thành các khái

tổng quát hơn. Ví dụ: ta bắt đầu với việc định nghĩa các lớp như: nhân viên lễ

tân, nhân viên vệ sinh, nhân viên kỹ thuật. Sau đó tạo ra một lớp chung hơn cho

các lớp đó là lớp nhân viên.

Phương pháp kết hợp: kết hợp giữa phương pháp từ trên xuống và từ dưới lên:

bắt đầu từ định nghĩa các lớp dễ thấy trước và sau đó tổng quát hóa và chuyên

biệt hóa các lớp đó một cách thích hợp. Ví dụ ta bắt đầu với lớp nhân viên trước,

là thuật ngữ hay gặp nhất trong quản lý nhân sự. Sau đó chúng ta có thể chuyên

biệt hóa thành các lớp con: nhân viên lễ tân, nhân viên vệ sinh,… hoặc tổng quát

hóa lên thành lớp Người.

Bƣớc 5: Định nghĩa các thuộc tính và quan hệ cho lớp:.

Lớp gốc

Lớp trung

gian

Lớp lá

Page 33: Fuzzy Ontology and Fuzzy-OWL(9)

14 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Hình 1.5: Ràng buộc

Bản thân các lớp nhận được ở bước trên chỉ mới là những thuật ngữ phân biệt với

nhau bằng tên gọi. Về cơ bản, chúng chưa đủ để phục vụ cho việc biểu diễn tri thức.

Muốn như vậy, các thuộc tính của lớp cần được định nghĩa. Thuộc tính của lớp là các

thông tin bên trong của lớp, mô tả một khía cạnh nào đó của lớp và được dùng để phân

biệt với các lớp khác. Thuộc tính được chia làm nhiều loại khác nhau:

Về mặt ý nghĩa, các thuộc tính có thể được chia làm hai loại: thuộc tính bên

trong (intrinsic property) và thuộc tính bên ngoài (extrinsic property). Thuộc

tính bên trong mô tả các tính chất nội tại bên trong sự vật, ví dụ: chất, lượng, cấu

tạo.. Trong khi đó, thuộc tính bên ngoài mô tả phần biểu hiện của sự vật, ví dụ:

màu sắc, hình dạng..

Về mặt giá trị, các thuộc tính cũng được chia làm hai loại: thuộc tính đơn (simple

property) và thuộc tính phức (complex property). Thuộc tính đơn là các giá trị

đơn ví dụ: chuỗi, số.., còn thuộc tính phức có thể chứa hoặc tham khảo đến một

đối tượng khác.

Một chú ý quan trọng nữa trong bước này là việc một lớp sẽ kế thừa toàn bộ các thuộc

tính của tất cả các cha nó. Do đó, cần phải xem xét một thuộc tính đã được định nghĩa ở

các lớp thuộc mức cao hơn hay chưa. Thuộc tính chỉ nên được định nghĩa khi nó là tính

chất riêng của lớp đang xét mà không được biểu hiện ở các lớp cao hơn.

Bƣớc 6: Định nghĩa các ràng buộc về thuộc tính và quan hệ của lớp.

Các ràng buộc giới hạn giá trị

mà một thuộc tính có thể nhận.

Hai ràng buộc quan trọng nhất

đối với một thuộc tính là lượng

số (cardinality) và kiểu (type).

Ràng buộc lượng số quy định số

giá trị mà một thuộc tính có thể

nhận. Hai giá trị thường thấy của

ràng buộc này là đơn trị (single)

và đa trị (multiple). Nhưng một số phần mềm còn cho phép định nghĩa chính xác khoảng

giá trị của lượng số. Ràng buộc thứ hai là về kiểu.

Về cơ bản, các kiểu mà một thuộc tính có thể nhận là: chuỗi, số, boolean, liệt kê và

kiểu thực thể. Riêng kiểu thực thể có liên quan đến hai khái niệm gọi là: miền (domain)

và khoảng (range). Khái niệm miền được dùng để chỉ lớp (hay các lớp) mà một thuộc

tính thuộc về. Trong khi đó, khoảng chính là lớp (hay các lớp) làm kiểu cho giá trị thuộc

tính kiểu thực thể.

Ràng buộc

Page 34: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 15 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Bƣớc 7: Tạo các thực thể cho lớp.

Đây là bước cuối cùng khép lại một vòng lặp xây dựng Ontology. Công việc chính

lúc này là tạo thực thể cho mỗi lớp và gán giá trị cho các thuộc tính. Nhìn chung, các thực

thể sẽ tạo nên nội dung của một cơ sở tri thức và là vấn đề được quan tâm trong lĩnh vực

Web ngữ nghĩa.

1.8. Ngôn ngữ Web Ontology (OWL).

Web Ontology Language (OWL) là ngôn ngữ đánh dấu được sử dụng để xuất bản và

chia sẻ dữ liệu sử dụng các ontology trên Internet. OWL là một bộ từ vựng mở rộng của

khung mô tả tài nguyên (RDF) và được kế thừa từ ngôn ngữ DAML+OIL Web ontology

– một dự án được hỗ trợ bởi W3C.

OWL biểu diễn ý nghĩa của các thuật ngữ trong các từ vựng và mối liên hệ giữa các

thuật ngữ này để đảm bảo phù hợp với quá trình xử lý bởi các phần mềm.

OWL được xem như là một kỹ thuật trọng yếu để cài đặt cho Semantic Web trong

tương lai. OWL được thiết kế đặc biệt để cung cấp một cách thức thông dụng trong việc

xử lý nội dung thông tin của Web. Ngôn ngữ này được kỳ vọng rằng sẽ cho phép các hệ

thống máy tính có thể đọc được thay thế cho con người. Vì OWL được viết bởi XML,

các thông tin OWL có thể dễ dàng trao đổi giữa các kiểu hệ thống máy tính khác nhau, sử

dụng các hệ điều hành và các ngôn ngữ ứng dụng khác nhau. Mục đích chính của OWL

là sẽ cung cấp các chuẩn để tạo ra một nền tảng để quản lý tài sản, tích hợp mức doanh

nghiệp và để chia sẻ cũng như tái sử dụng dữ liệu trên Web. OWL được phát triển bởi nó

có nhiều tiện lợi để biểu diễn ý nghĩa và ngữ nghĩa hơn so với XML, RDF và RDFS, và

vì OWL ra đời sau các ngôn ngữ này, nó có khả năng biểu diễn các nội dung mà máy có

thể biểu diễn được trên Web.

Cú pháp trừu tƣợng Cú pháp DL Ngữ nghĩa

ObjectProperty(R) R RI

I

I

ObjectProperty(S inverseOf(R)) R- (R-)I

I

I

Bảng 1.1. Các mô tả thuộc tính đối tượng OWL

Cú pháp trừu tƣợng Cú pháp DL Ngữ nghĩa

Class(A)

Class(owl:Thing)

Class(owl:Nothing)

A

Т

AI

I

Т I

=I

I =

intersectionOf(C1, C2, ...) C1⊓C2 (C1⊓C2)I = C1

I ⋂ C2 I

Page 35: Fuzzy Ontology and Fuzzy-OWL(9)

16 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

unionOf(C1, C2, ...) C1⊔C2 (C1⊔C2)I = C1

I ⋃ C2 I

complementOf(C) C (C)I =

I\ C

I

oneOf(o1, o2, ...) {o1}⊔{o2} ({o1}⊔{o2})I = {o1

I, o2

I}

restriction(R someValuesFrom(C))

restriction(R allValuesFrom(C))

restriction(R hasValue({o}))

restriction(R minCardinality(m))

restriction(R maxCardinality(m))

R.C

R.C

R.{o}

mR

mR

{xI | y.<x,y> R

I yC

I}

{xI |y.<x,y> R

I yC

I}

(R.{o})I=(x

I| <x, o

I>R

I)

{xI |(# y.<x,y> R

I) m}

{xI |(# y.<x,y> R

I) m}

Bảng 1.2. Các mô tả thuộc tính lớp OWL

Cú pháp trừu tƣợng Cú pháp DL Ngữ nghĩa

Class(A partial C1 ... Cn) A ⊐ C1⊓...⊓Cn AI C1

I⋂ ... ⋂Cn I

Class(A complete C1 ... Cn) A C1⊓...⊓Cn AI = C1

I⋂ ... ⋂Cn I

EnumeratedClass(A o1 ... on) A {o1}⊓...⊓{o}n AI = {o1

I, ..., on

I}

SubClassOf(C1,C2) C1 ⊐ C2 C1I C2

I

EquivalentClasses(C1...Cn) C1...Cn C1I = ... = Cn

I

DisjointClasses(C1 ...Cn) Ci⊐Cj,

(1i<jn)

CiI ⋂ Cj

I =

(1i<jn)

SubPropertyOf(R1, R2) R1 ⊐ R2 R1I R2

I

EquivalentProperties(R1... Rn) R1...Rn R1I = ... = Rn

I

ObjectProperty(R

super(R1)...super(Rn)

domain(C1)... domain(Ck)

range(C1) ... range(Ch)

[Symmetric]

[Functional]

[InverseFunctional]

[Transitive])

R ⊐ Ri

1R ⊐ Ci

Т⊐R.Ci

RR-

Func(R)

Func(R-)

Trans(R)

RI Ri

I

RI Ci

I

I

RI

I Ci

I

RI =(R

-)

I

{<x,y> |(# y.<x,y> R

I)1}

{<x,y> |(# y.<x,y>(R

-)

I)1}

RI =(R

I)

+

AnnotationPropety(R)

Individual(o type(C1) ... type(Cn)

value(R1,o1)... value(Rn,on))

o:Ci, 1 i n

<o,oi>:Ri, 1 i n

oICi

I, 1 i n

<oI,oi

I>Ri

I, 1 i n

SameIndividual(o1 ...on) o1 = ... = on o1I = ... = on

I

DifferentIndividuals(o1 ...on) oi oj,1i<jn oiI oj

I,1i<jn

Bảng 1.3. Các tiên đề và các sự kiện của OWL

Ví dụ: Một phần của Ontology "ThuVien" trong cú pháp trừu tượng OWL.

Page 36: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 17 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Namespace(elp=<http://example.org/Libary#>)

Ontology(elp:Ontology

Class(elp:Sach)

Class(elp:Nguoi)

Class(elp:TacGia partial exp:Nguoi)

Class(elp:NguyenDuy partial exp:TacGia )

Class(elp:HoChiMinh partial exp:TacGia )

Class(elp:PhanThiTuoi partial exp:TacGia )

ObjectProperty(elp:viet)

Class(elp:TacGia Complete elp: Nguoi

restriction(elp:viet allValuesFrom(

unionOf (elp:Sach))

)

)

Class(elp: VN-KIMChoWebVietCoNguNghia partial exp:Sach)

Individual(elp: VN-KIMChoWebVietCoNguNghia type(elp:CaoHoangTru)

value(elp:viet)

)

)

Các phiên bản của OWL

OWL được chia làm ba phiên bản ngôn ngữ con: OWL Lite, OWL DL, và OWL Full:

OWL Lite: hỗ trợ cho những người dùng chủ yếu cần sự phân lớp theo thứ

bậc và các ràng buộc đơn giản. Ví dụ: Trong khi nó hỗ trợ các ràng buộc về

tập hợp, nó chỉ cho phép tập hợp giá trị của 0 hay 1. Điều này cho phép cung

cấp các công cụ hỗ trợ OWL Lite dễ dàng hơn so với các bản khác.

Page 37: Fuzzy Ontology and Fuzzy-OWL(9)

18 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

OWL DL (OWL Description Logic): hỗ trợ cho những người dùng cần sự

diễn cảm tối đa trong khi cần duy trình tính tính toán toàn vẹn (tất cả các kết

luận phải được đảm bảo để tính toán) và tính quyết định (tất cả các tính toán

sẽ kết thúc trong khoảng thời gian hạn chế). OWL DL bao gồm tất cả các cấu

trúc của ngôn ngữ OWL, nhưng chúng chỉ có thể được sử dụng với những

hạn chế nào đó (Ví dụ: Trong khi một lớp có thể là một lớp con của rất nhiều

lớp, một lớp không thể là một thể hiện của một lớp khác). OWL DL cũng

được chỉ định theo sự tương ứng với logic mô tả, một lĩnh vực nghiên cứu

trong logic đã tạo nên sự thiết lập chính thức của OWL.

OWL Full muốn đề cập tới những người dùng cần sự diễn cảm tối đa và sự

tự do của RDF mà không cần đảm bảo sự tính toán của các biểu thức. Ví dụ,

trong OWL Full, một lớp có thể được xem xét đồng thời như là một tập của

các cá thể và như là một cá thể trong chính bản thân nó. OWL Full cho phép

một ontology gia cố thêm ý nghiã của các từ vựng được định nghĩa trước

(RDF hoặc OWL).

Các phiên bản này tách biệt về các tiện ích khác nhau, OWL Lite là phiên bản dễ hiểu

nhất và phức tạp nhất là OWL Full.

Mối liên hệ giữa các ngôn ngữ con của OWL.

Mọi ontology hợp lệ dựa trên OWL Lite đều là ontology hợp lệ trên OWL DL.

Mọi ontology hợp lệ dựa trên OWL DL đều là ontology hợp lệ trên OWL Full.

Mọi kết luận hợp lệ dựa trên OWL Lite đều là kết luận hợp lệ trên OWL DL.

Mọi kết luận hợp lệ dựa trên OWL DL đều là kết luận hợp lệ trên OWL Full.

1.9. Một vài mô hình ontology.

Hiện nay có rất nhiều ontology được ứng dụng rộng rãi, ta khảo sát một vài mô hình

sau:

Mô hình thực thể kết hợp: đây có thể xem như một ontology đơn giản đã được phát

triển lâu đời. Chúng ta có thể ánh xạ mô hình này sang các thành phần của ontology như

hình 1.6.

Page 38: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 19 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Hình 1.6 sơ đồ ánh xạ các thành phần của mô hình thực thể kết hợp và dữ liệu sang

ontology và thể hiện.

Ontology của protégé: (trình bày trong [21]) bao gồm class (lớp), slot (thuộc tính),

facet (ràng buộc), axiom (tiên đề). Mô hình này cũng là ontology đơn giản thường dùng

trong các chương trình đơn giản không phức tạp. Như các ứng dụng tra cứu thông tin đơn

giản, các ứng dụng về web…

Ontology KAON: (trình bày trong [22],[23]) được xây dựng nhằm mục đích giải

quyết các vấn đề ngữ nghĩa trên các ứng dụng web. Dựa trên mô hình này nhóm tác giả

cũng đề xuất các phương pháp xử lý các thông tin phân tán. Hình thành nên hệ thống

ontology phân tán trên mạng.

1.10. Ngôn ngữ ontology.

Ngôn ngữ ontology là ngôn ngữ dùng để mô tả các thành phần của ontology .

Để mô tả mọi thứ về các khái niệm của ontology đòi hỏi phải có một ngôn ngữ chung

để diễn đạt. Có 2 loại ngôn ngữ chung nhất:

Ngôn ngữ tự nhiên: Mọi thứ kinh nghiệm của con người đều có thể diễn đạt bằng

một ngôn ngữ tự nhiên. Nó là một siêu ngôn ngữ có thể diễn đạt các ngôn ngữ

khác như: ký số toán học, ngôn ngữ lập trình…

Page 39: Fuzzy Ontology and Fuzzy-OWL(9)

20 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Ngôn ngữ dựa trên logic: Mọi thứ được phát biểu chính xác, rõ ràng trong bất kỳ

ngôn ngữ tự nhiên nào đều co thể biểu diễn được trong logic. Nhiều thứ khó có thể

nắm được ý nghĩa một cách rõ ràng thì khó có thể biểu diễn được trong logic (ví

dụ: tình yêu, thơ ca, câu nói đùa…). Tuy nhiên bất cứ thứ gì được thực hiện trên

máy tính bằng ngôn ngữ lập trình thì đều có thể biểu diễn trong logic. Và để giảm

thiểu tính hình thức của logic người ta sử dụng một số ngôn ngữ lập trình dựa trên

logic.

Các ontology thường dùng cách biểu diễn các khái niệm bằng ngôn ngữ dựa trên

logic.

Các ngôn ngữ biểu diễn thường được dùng trong ontology:

Conceptual Graphs (CGs): (trình bày trong [24]) được thiết kế nhằm biểu diễn ngôn

ngữ tự nhiên vào ngôn ngữ được trình bày như logic mà con người có thể đọc dễ dàng.

Knowledge Interchange Format (KIF): (trình bày trong [24]) được thiết kế nhằm

dễ dàng phân tách cú pháp và một tập kí tự giới hạn để có thể trao đổi dược trong các hệ

máy tính khác nhau.

Conceptual Grap Interchange Form (CGIF): (trình bày trong [24]) là mức trung

gian của CGs và KIF. Giúp cho CGs và KIF được chuyển đổi dễ dàng thông qua CGIF..

Các ngôn ngữ biểu diễn web ngữ nghĩa: (trình bày trong [12]. [13], [14], [15], [16])

XML, XML Schema, RDF, RDF Schema, OIL, DAML+OIL, OWL.

Logic mô tả (description logic): (trình bày trong [17], [18]) được trình bày cụ thể ở

phần tiếp theo, đây là dạng logic dùng để mô tả các khái niệm trong phạm vi ứng dụng

nhất định. Lý thuyết của logic mô tả tập trung chủ yếu vào 2 thành phần:

Tbox (terminological Box): mô tả các khái niệm.

Abox (Assertional Box): mô tả các thể hiện

Page 40: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 21 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Hình 1.7: kiến trúc logic mô tả.

Đa số các ngôn ngữ ontology hiện nay đều sử dụng các luật của logic mô tả.

UML: (trình bày trong [19]) được sử dụng nhằm biểu diễn các phân tích thiết kế của

chương trình ứng dụng để tạo một CSDL cụ thể.

1.11. Tổng kết chƣơng

Chương này đã giới thiệu một số kiến thức cơ bản về ontology và các vấn đề liên

quan. Trong nền tảng Web ngữ nghĩa mới, ontology đóng một vai trò quan trọng do đây

là phương tiện giúp cung cấp ngữ nghĩa cho các trang web. Do đó các nghiên cứu về

ontology cần thiết được hoàn thiện để phục vụ cho nhu cầu của chuẩn web mới và nó

đang thu sự quan tâm rộng lớn từ giới nghiên cứu. Kỹ nghệ ontology là lĩnh vực mới

trong khoa học máy tính và khoa học thông tin, nghiên cứu các phương pháp và phương

pháp luận để xây dựng các ontology. Mục tiêu của nó nhằm làm rõ nghĩa các tri thức

chứa đựng trong một lĩnh vực cụ thể. Kỹ nghệ ontology đưa ra một phương hướng nhắm

tới việc giải quyết các vấn đề hoạt động tương tác xuất hiện bởi các rào cản ngữ nghĩa,

các rào cản liên quan đến các định nghĩa của các thuật ngữ hay các khái niệm. Kỹ nghệ

ontology là một tập hợp các nhiệm vụ liên quan đến việc phát triển các ontology cho một

lĩnh vực cụ thể. Bài toán so khớp ontology là một trong những nhiệm vụ như thế.

CHƢƠNG 2. LOGIC MÔ TẢ (DESCRIPTION LOGIC)

2.1. Giới thiệu.

“Logic mô tả” là thuật ngữ mới nhất trong họ biểu diễn tri thức (KR), trước khi cụm

từ “logic mô tả” phổ biến như hiện nay, người ta nói đến logic mô tả dưới những cụm từ

Page 41: Fuzzy Ontology and Fuzzy-OWL(9)

22 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

như “ngôn ngữ biểu diễn tri thức thuật ngữ” hay “ngôn ngữ khái niệm”. Logic mô tả lược

ứng dụng rất hiệu quả trong các hệ thống trí tuệ nhân tạo, hệ thống biểu diễn tri thức ngữ

nghĩa. Các hệ thống này hoạt động dựa vào khả năng suy luận theo cách của con người

thường làm. Đó là phân lớp các khái niệm và các cá thể. Việc phân lớp các khái niệm xác

định mối quan hệ (mà người ta gọi là quan hệ bao hàm) giữa các khái niệm của các thuật

ngữ cho trước, và như vậy cho phép người ta xây dựng thuật ngữ theo dạng ấu trúc. Cấu

trúc này cung cấp những thông tin hữu ích trong kết nối giữa các khái niệm khác nhau và

nó có thể được dùng để tăng tốc các dịch vụ lập luận khác. Việc phân lớp các cá thể thực

chất là xác định cá thể cho trước có luôn luôn là một thể hiện (instance) của một khái

niệm nào đó hay không. Vì vậy nó cung cấp những thông tin hữu ích về tính chất của cá

thể.

Cú pháp: bao gồm

Một tập các ký hiệu mệnh đề dùng để ký hiệu các tên khái niệm (concept name);

Một tập các ký hiệu mệnh đề đôi để ký hiệu các tên vai trò (role name);

Một định nghĩa đệ quy để định nghĩa các thuật ngữ khái niệm từ các tên khái

niệm và tên vai trò bằng cách sử dụng các tạo tử (constructor).

Trong lôgic mô tả, các tên khái niệm được xem là các khái niệm nguyên tử, các tên

vai trò được coi là các vai trò nguyên tử. Nhìn chung, một khái niệm đại diện cho tập các

cá thể thuộc về nó, và một vai trò đại diện cho một quan hệ giữa các khái niệm.

Cú pháp của một thành viên trong gia đình lôgic mô tả được đặc trưng bởi định nghĩa

đệ quy của nó, các định nghĩa đệ quy này định nghĩa các tạo tử có thể được dùng để tạo

các thuật ngữ khái niệm.

Một số tạo tử thông dụng bao gồm các tạo tử lôgic trong logic bậc nhất như phép giao

(intersection) hay tuyển (conjunction) của các khái niệm, phép hợp (union) hay hội

(disjunction) của các khái niệm, phép phủ định (negation) hay lấy phần bù (complement)

của các khái niệm, hạn chế giá trị (hạn chế với mọi - universal restriction), hạn chế tồn tại

(existential resctriction), v.v.. Các tạo tử khác có thể còn bao gồm các hạn chế đối với các

vai trò thường thấy trong các quan hệ nhị phân, ví dụ, tính đảo (inverse), tính bắc cầu

(transitivity), chức năng (functionality), v.v.. Đặc biệt đối với phép giao và phép hợp,

lôgic mô tả sử dụng các ký hiệu và để phân biệt chúng với ⊓ và ⊔ trong lôgic bậc nhất.

Dưới đây là một ví dụ về định nghĩa cú pháp của lôgic mô tả:

một khái niệm nguyên tử là một khái niệm;

khái niệm đỉnh (⊤) là một khái niệm;

Page 42: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 23 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

khái niệm đáy (⊥) là một khái niệm;

phần bù của một khái niệm C cũng là một khái niệm (ký hiệu là ¬C);

giao của hai khái niệm C và D cũng là một khái niệm (ký hiệu là C D);

nếu C là một khái niệm và R là một tên vai trò, thì ∀R.C (hạn chế giá trị) cũng là

một khái niệm;

nếu R là một tên vai trò, thì R.⊤(hạn chế tồn tại) cũng là một khái niệm.

Để 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 từ các khái niệm nguyên tố, các vai trò nguyên tố và bằng các luật khái

niệm. Hệ thống khái niệm mà ta có được gọi là bộ 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 logic mô tả. Còn một thành phần

chính khác của hệ cơ sở tri thức nêu trên là bộ khẳng định (ABox). Bộ này 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ể hay 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 mô tả là cung cấp các

dịch vụ suy luận dựa trên tri thức đã được biểu diễ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.

Sử dụng một ngôn ngữ khái niệm để xây dựng lên các khái niệm phức hợp.

Sử dụng các 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ể.

Để chi tiết hơn, ta sẽ lần lượt tìm hiểu từng vấn đề trong logic mô tả. Trước hết là các

ngôn ngữ định nghĩa khái niệm, tiếp theo là về cơ sở tri thức được xây dựng bằng logic

mô tả và các thủ tục suy diễn cho các bài toán quyết định.

2.2. Ngôn ngữ thuộc tính AL.

Những khái niệm phức tạp trong logic mô tả được xây dựng bằng ngôn ngữ thuộc tính

AL (Attributive Language) hoặc các ngôn ngữ mở rộng của AL. Ta gọi các ngôn ngữ này

là các “ngôn ngữ mô tả”. Xuất phát từ những “mô tả cơ sở” bằng các luật xây dựng khái

niệm mà ngôn ngữ mô tả hỗ trợ ta hình thành nên các khái niệm mới.

Thành phần cơ bản của ngôn ngữ mô tả AL là các khái niệm và các vai trò nguyên tố.

Các mô tả phức tạp được xây dựng bằng việc kết hợp các thành phần cơ bản đó thông

qua các bộ tạo (constructor). Người ta thường dùng ký tự A và B để biểu diễn các khái

Page 43: Fuzzy Ontology and Fuzzy-OWL(9)

24 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

niệm nguyên tố, ký tự R và P để biểu diễn các vai trò, ký tự C và D để biểu diễn các khái

niệm phức hợp.

2.2.1. Ngôn ngữ mô tả cơ bản AL.

AL là ngôn ngữ có luật cú pháp đơn giản nhất. Những luật cú pháp của ngôn ngữ mô

tả AL thể hiện như sau:

C, D → A Khái niệm nguyên tố

⊤ Khái niệm đỉnh

Khái niệm đáy

A Phủ định khái niệm

C ⊓ D Giao khái niệm

∀R.C Lượng từ với mọi

∃R.T Lượng từ tồn tại

Bảng 2.1: Cú pháp của ngôn ngữ AL

Ví dụ: Giả sử ta có các khái niệm nguyên tố PERSON và MALE thì PERSON ⊓

MALE và PERSON ⊓ MALE là các mô tả khái niệm. Ta thấy rằng các mô tả trên là

“Người đàn ông” và “Người không phải là đàn ông”.

Giả sử ta có một vai trò nguyên tố hasChild biểu thị rằng một cá thể có con. Ta có thể

tạo ra các mô tả khái niệm: PERSON ⊓ ∃hasChild.⊤ để biểu diễn người có con và

PERSON ⊓ ∀hasChild. MALE để biểu diễn người có toàn con gái.

Sử dụng khái niệm đáy ta có thể biểu diễn người không có con như sau:

PERSON ⊓ ∀hasChild.

2.2.2. Ngữ nghĩa của các khái niệm AL

Bên cạnh việc xây dựng các khái niệm, ta cũng cần phải hiểu từng khái niệm được tạo

ra. Ngữ nghĩa của các khái niệm trong logic mô tả được thể hiện thông qua phép diễn

dịch.

Định nghĩa 1 [18]: Mỗi diễn dịch, ký hiệu là T, là một cặp (T

, .T

). Trong đó, miền diễn

dịch T

là một tập không rỗng, còn .T

là một hàm dịch. Hàm dịch .T

chuyển mỗi khái

niệm A thành một tập AT

T , chuyển mỗi vai trò R thành một quan hệ R

T

T ×

T

Hàm diễn dịch được mở rộng cho khái niệm phức hợp như sau:

Page 44: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 25 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

⊤T =

T

T =

( AT ) =

T \ A

T

(C ⊓ D)T

= CT

⋂ DT

(R.C)T = {a

T | b. (a, b) R

T → b C

T }

(R.T)T

= { a T

| b. (a, b) RT

}

Bảng 2.2: Ngữ nghĩa của logic mô tả

Ta nói rằng hai khái niệm C và D là tương đương nhau, viết là C ≡ D nếu CT = D

T với

mọi diễn dịch T.

Ví dụ: Quay trở lại định nghĩa ngữ nghĩa của các khái niệm, ta dễ dàng thấy rằng hai mô

tả khái niệm:

∀hasChild.Male ⊓ ∀hasChild.Student và ∀hasChild.(Male ⊓ Student)

là tương đương nhau.

2.2.3. Họ ngôn ngữ logic mô tả AL.

Khi ta thêm các bộ tạo (constructor) vào ngôn ngữ AL cơ bản ta được một ngôn ngữ

AL mở rộng có khả năng biểu diễn linh hoạt hơn. Các constructor đó bao gồm:

Hợp khái niệm (ký hiệu bằng chữ U) được viết là C ⊔ D, và được diễn dịch là:

(C ⊔ D)T

= CT

⋃ DT

Ví dụ: mô tả nhạc công là nhạc sỹ hoặc nghệ sỹ:

Composer ⊔ Performer

Lượng tử tồn tại (ký hiệu bằng chữ E) viết là ∃R.C, và được dịch là:

(∃R.C)T

= {a ∈ T

| ∃b.(a,b) ∈ RT

b ∈ CT

}

Giới hạn số lượng (ký hiệu bằng chữ N) được viết là nR (giới hạn nhỏ nhất) và là

≤nR (giới hạn lớn nhất), n là một số nguyên không âm. Nó được diễn dịch như

sau:

(nR)T

= {a ∈ T

| |{b|{(a,b) ∈ RT

}| ≥ n}

Page 45: Fuzzy Ontology and Fuzzy-OWL(9)

26 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

(nR)T

= {a ∈ T

| |{b|{(a,b) ∈ RT

}| n}

Ví dụ: Person ⊓ (≤1 hasChild ⊔ ≥3 hasChild)

Phủ định khái niệm (ký hiệu bằng chữ C) viết là C, diễn dịch là:

(C)T

= T

\ CT

Ví dụ: ta có Female là bù của Male: Male

Ngôn ngữ AL mở rộng là ngôn ngữ AL khi ta thêm vào một hoặc vài constructor vừa

nêu. Ta đặt tên cho từng ngôn ngữ mở rộng bằng cách thêm các ký tự:

AL[U][E][N][C]

Ví dụ về mô tả khái niệm bằng AL mở rộng như sau:

Person ⊓ (1 hasChild ⊔ (≥3 hasChild ⊓ ∃hasChild.Male)

Ví dụ nêu trên mô tả khái niệm người có nhiều nhất 1 con hoặc ít nhất 3 con, một

trong số đó là con trai.

Ngôn ngữ mở rộng ALU có thể biểu diễn bằng ALC thông qua dạng phủ định vì:

C ⊔ D và (D ⊓ D) là tương đương nhau

hoặc ALE cũng có thể biểu diễn bằng ALC vì:

∃R.C và ∀R. C là tương đương nhau.

Vì vậy ta có thể viết ALC thay vì viết ALUE và viết ALCN thay vì viết ALUEN.

2.2.4. Ngôn ngữ mô tả là tập con của logic vị từ bậc nhất.

Ngữ nghĩa của các khái niệm xác định ngôn ngữ mô tả là phân đoạn của logic vị từ

bậc nhất. Khi diễn dịch T lần lượt áp vào tất cả các khái niệm và vai trò nguyên tố ta

được các vị từ không ngôi từ các khái niệm và vị từ hai ngôi từ các vai trò. Khái niệm C

bất kỳ được diễn dịch vào công thức logic vị từ C(x) bằng một biến x.

Một khái niệm nguyên tố A được chuyển thành công thức A(x), các phép giao, hợp,

phủ định được diễn dịch vào φC(x) và R là một vai trò nguyên tố thì các lượng từ tồn tại,

với mọi được chuyển theo dạng công thức:

∃R.C(y) = ∃x.R(y,x) C(x)

Page 46: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 27 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

∀R.C(y) = ∀x.R(y,x) → C(x)

ở đây y là một biến mới; giới hạn số lượng được biểu diễn theo công thức:

( ) ( ) ( )⋀

( ) ( ) ( ) ⋁

2.3. Hệ cơ sở tri thức

2.3.1. Kiến trúc hệ logic mô tả.

Như ta biết rằng hệ logic mô tả là các hệ thống thông tin có sử dụng logic mô tả để

biểu diễn tri thức. Các hệ này sử dụng khả năng biểu diễn mạnh mẽ của logic mô tả, kết

hợp với các thủ tục suy diễn để tạo nên tính linh hoạt của chúng. Nhờ vào logic mô tả

người ta thiết lập lên những hệ thống khái niệm của lĩnh vực ứng dụng.

Một hệ cơ sở tri thức được biểu diễn bằng logic mô tả chứa đựng hai thành phần

chính. Thành phần thứ nhất đó là “bộ thuật ngữ” (TBox), nơi chứa đựng các khái niệm

được xây dựng bằng ngôn ngữ mô tả; thành phần thứ hai đó là “bộ khẳng định” (ABox)

là nơi chứa các khẳng định hay nói cụ thể hơn là các mô tả về thế giới. Bên cạnh đó, bằng

các dịch vụ suy luận ta có thể nhận được những tri thức đúng đắn. Hình 3.1 minh hoạ

kiến trúc chung của hệ logic mô tả.

Hình 2.1: Kiến trúc hệ logic mô tả

2.3.2. Bộ thuật ngữ (TBox)

Page 47: Fuzzy Ontology and Fuzzy-OWL(9)

28 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Bộ thuật ngữ (TBox) được sử dụng để lưu các thuật ngữ. Đó là các khái niệm phức được

định nghĩa thông qua các khái niệm và các vai trò nguyên tố dựa trên các constructor của

ngôn ngữ AL mà hệ thống sử dụng.

2.3.2.1. Tiên đề thuật ngữ

Trường hợp thông dụng nhất tiên đề thuật ngữ có dạng:

C ⊑ D (R ⊑ S ) hoặc C D (R S)

Trong đó C, D là các khái niệm; R,S là các vai trò. Tiên đề thứ nhất (C ⊑ D (R⊑ S))

được gọi là bao hàm; tiên đề thứ hai (C D (R S) được gọi là tương đương.

Ngữ nghĩa của các tiên đề được xác định như sau: Một diễn dịch T thoả mãn một bao

hàm C ⊑ D nếu CT

DT

, và nó thoả mãn một tương đương C D nếu CT

= DT

. Nếu T

là một tập các tiêu đề thì I thoả mãn T khi và chỉ khi I thoả mãn từng thành phần của T.

Nếu I thoả mãn một tiên đề thì ta nói rằng nó là mô hình của tiên đề này. Hai tiên đề hoặc

hai tập tiên đề là tương đương nếu chúng có cùng mô hình.

2.3.2.2. Định nghĩa khái niệm

Một tương đương mà vế bên trái là một khái niệm nguyên tố, là một định nghĩa khái

niệm. Đị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 tạp.

Ví dụ:

Mother Woman ⊓ ∃hasChild.Person

Father Man ⊓ ∃hasChild.Person

Ta ngụ ý mô tả ở vế bên phải người đàn bà (đàn ông) có con bằng tên là Mother và

Father.

Các tên tượng trưng có thể đượng coi như là sự rút gọn trong các mô tả khác. Từ hai

ví dụ trên ta có thể định nghĩa Parent là:

Parent Mother ⊔ Father.

Tập các định nghĩa phải rõ ràng. Ta gọi tập hữu hạn các định nghĩa T là Tbox nếu

không có tên tượng trưng nào được định nghĩa nhiều hơn một lần.

Woman Person ⊓ Female

Man Person ⊓ Woman

Mother Woman ⊓ ∃hasChild.Person

Page 48: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 29 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Father Man ⊓ ∃hasChild.Person

Parent Father ⊔ Mother

Grandmother Mother ⊓ ∃hasChild.Parent

MotherWithManyChildren Mother ⊓ ≥3 Children

MotherWithoutDaughter Mother ⊓ ∀hasChild. Woman

Wife Woman ⊓ ∃hasHusband.Man

Hình 2.2: TBox với các khái niệm về quan hệ gia đình

Giả sử T là một thuật ngữ. Ta chia các khái niệm nguyên tố xuất hiện trong T thành

hai tập: tập tên NT xuất hiện bên trái của các tiên đề, và tập cơ sở BT xuất hiện bên phải

của các tiên đề. Tập tên NT được gọi là các khái niệm được định nghĩa, tập cơ sở BT gọi

là các khái niệm nguyên thuỷ.

Một diễn dịch cơ sở đối với T là một diễn dịch chỉ dịch các khái niệm cơ sở. Cho J là

một diễn dịch cơ sở, một diễn dịch T mà dịch cả các khái niệm được định nghĩa là một

mở rộng của J nếu nó có cùng miền là J, có nghĩa là T

= J.

Ta nói rằng J không nhập nhằng nếu tất cả các diễn dịch cơ sở có chính xác một mở

rộng là mô hình của J. Nói cách khác, nếu ta biết tập cơ sở nói về cái gì và T không nhập

nhằng thì nghĩa của khái niệm được định nghĩa (tên) hoàn toàn xác định. Rõ ràng, nếu

một thuật ngữ là không nhập nhằng, thì cả các thuật ngữ tương đương cũng không nhập

nhằng.

Câu hỏi đặt ra là một thuật ngữ có nhập nhằng hay không? ví dụ thuật ngữ chứa tiên

đề sau:

Human’ ≡ Animal ⊓ ∀hasParent.Human’

Ví dụ trên bao gồm một chu trình. Thông thường, chúng ta định nghĩa trong thuật ngữ

T như sau: Cho A, B là các khái niệm nguyên tố xuất hiện trong T. Ta nói rằng A sử dụng

trực tiếp B trong T nếu B xuất hiện bên phải thuật ngữ của A, T chứa chu trình khi và chỉ

khi tồn tại một khái niệm nguyên tố trong T mà sử dụng lại chính khái niệm đó. Ngược

lại ta gọi thuật ngữ đó là không có chu trình.

2.3.2.3. Mở rộng bộ thuật ngữ.

Nếu một thuật ngữ T không có chu trình thì nó xác định. Ta có thể mở rộng các định

nghĩa trong T thông qua việc thay thế các khái niệm được định nghĩa xuất hiện ở bên phải

của các tiên đề bằng các mô tả tạo ra chúng. Mục đích của việc mở rộng là nhằm đạt

được bộ thuật ngữ T với hai tính chất sau:

Page 49: Fuzzy Ontology and Fuzzy-OWL(9)

30 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Mọi thuật ngữ đều ở dạng định nghĩa khái niệm;

Vế trái của mọi thuật ngữ là một tên tượng trưng, còn vế phải chỉ chứa các khái

niệm nguyên thuỷ.

Woman Person ⊓ Female

Man Person ⊓ (Person ⊓ Female)

Mother (Person ⊓ Female) ⊓ hasChild.Person

Father (Person ⊓ (Person ⊓ Female)) ⊓ hasChild.Person

Parent ((Person ⊓ (Person ⊓ Female)) ⊓

hasChild.Person) ⊔ ((Person ⊓ Female) ⊓

hasChild.Person)

Grandmother ((Person ⊓ Female) ⊓ hasChild.Person) ⊓

hasChild. (((Person ⊓ (Person ⊓ Female)) ⊓

hasChild.Person) ⊔ ((Person ⊓ Female) ⊓

hasChild.Person))

MotherWithManyChildre

n

((Person ⊓ Female) ⊓ hasChild.Person) ⊓ ≥3

hasChild

MotherWithoutDaughter ((Person ⊓ Female) ⊓ hasChild.Person) ⊓

hasChild.((Person ⊓ Female))

Wife (Person ⊓ Female) ⊓ hasHusband.(Person ⊓

(Person ⊓ Female))

Hình 2.3: Khai triển TBox quan hệ gia đình trong Hình 2.2

Mệnh đề 1.1. [18] Gọi T là một bộ thuật ngữ không chứa chu trình và T' là bộ thuật ngữ

mở rộng của nó, khi đó:

T và T ' có cùng các tên định nghĩa (symbol tên) và khái niệm cơ sở (Symbol cơ

sở).

T và T ' tương đương nhau.

Cả T và T ' đều xác định.

Chứng minh: Cho T1 là một thuật ngữ. Giả sử A ≡ C và B ≡ D là các định nghĩa trong

T1 để B xuất hiện trong C. Cho C‟ là một khái niệm thu được bằng việc thay thế các sự

kiện của B trong C bằng D, cho T2 là thuật ngữ thu được bằng việc thay thế định nghĩa A

≡ C với A ≡ C‟ trong T1, khi đó cả hai thuật ngữ có cùng symbol tên và symbol cơ sở.

Hơn nữa thu được T2 bằng việc thay thế tương đương T1, vậy cả hai thuật ngữ có cùng

mô hình, khi đó ta thu được T' từ T thông qua việc thay thế nói trên.

Page 50: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 31 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Giả sử J là một diễn dịch của các symbol cơ sở. Ta mở rộng J thành một diễn dịch I

tác động lên symbol tên theo cách thiết lập AI ≡ C‟

J, nếu A ≡ C‟ là định nghĩa của A trong

T'. Rõ ràng, I là một mô hình của T' đồng thời cũng là mở rộng của J. Điều đó có nghĩa là

T được xác định. Hơn nữa, T hoàn toàn xác định khi đó T tương đương T '.

Tất nhiên cũng có các thuật ngữ có chu trình mà vẫn xác định. Ví dụ:

A ≡ ∀R.B ⊔ ∃R.(A ⊓ A)

Tuy nhiên, ∃R.(A ⊓ A) tương đương với khái niệm đáy nên ví dụ trên tương đương

với tiên đề không có chu trình: A ≡ ∀R.B

2.3.2.4. Đệ quy

Giả sử ta muốn mô tả khái niệm về người đàn ông chỉ có con cháu trai (Man who has

only male offspring) viết ngắn gọn là Momo. Trường hợp đặc biệt ông ta chỉ có con trai

(Man who has only son) viết tắt là Mos. Mos được định nghĩa không có chu trình như

sau:

Mos ≡ Man ⊓ ∀hasChild.Man

Còn đây là định nghĩa đệ quy khái niệm người đàn ông chỉ có con cháu trai:

Momo ≡ Man ⊓ ∀hasChild.Momo

Chu trình xuất hiện khi ta muốn mô hình hoá cấu trúc đệ quy như trên. Ta xem xét

tiếp ví dụ đệ quy trong biểu diễn cây nhị phân: Giả sử có tập các đối tượng là các cây

(Tree) và các quan hệ nhị phân có cây con (has-Branch) giữa các đối tượng liên quan

giữa một cây và cây con ta có:

BinaryTree ≡ Tree ⊓ ≤ 2 has-Branch ⊓ ∀has-Branch.BinaryTree.

2.3.2.5. Thuật ngữ với các tiên đề bao hàm.

Có nhiều khái niệm mà chúng ta không thể định nghĩa chúng một cách hoàn thiện.

Trong trường hợp như vậy, ta vẫn có thể biểu diễn các trạng thái cần thiết bằng việc sử

dụng bao hàm. Ta còn gọi bao hàm là tổng quát hoá.

Ví dụ: Nếu một người xây dựng tri thức nghĩ rằng định nghĩa “Woman” trong ví dụ ở

Hình 3.2 là không thoả đáng (Woman ≡ Person ⊓ Female), nhưng anh ta cũng cảm thấy

rằng không thể định nghĩa khái niệm “Woman” một cách chi tiết hơn, anh ta có thể quy

định rằng tất cả phụ nữ trên đời này là người bằng sự tổng quát hoá:

Page 51: Fuzzy Ontology and Fuzzy-OWL(9)

32 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Woman⊑ Person

Một tập tiên đề T là một thuật ngữ được tổng quát hoá nếu vế bên trái của nó là một

khái niệm nguyên tố và với tất cả các khái niệm nguyên tố thì có nhiều nhất một tiên đề

xuất hiện ở bên trái.

Ta sẽ chuyển thuật ngữ bị tổng quát hoá T sang thuật ngữ thường T chỉ chứa các định

nghĩa để T tương đương với T theo nghĩa sau: Ta thu được T từ T bằng cách lựa chọn

symbol cơ sở cho tất cả các phép chuyên biệt hoá A ⊑ C trong T , và bằng việc thay

thế chuyên biệt hoá A ⊑ C bằng định nghĩa A ≡ A ⊓ C. Thuật ngữ T là chuẩn hoá của T.

Nếu một TBox chứa chuyên biệt hoá như ví dụ: Woman ⊑ Person, thì chuẩn hoá

chứa định nghĩa là: Woman ≡ ⊓ Person.

Mệnh đề 1.2. [18] Cho T là một thuật ngữ khái quát hoá và T là chuẩn hoá của T, khi đó:

Tất cả mô hình của là mô hình của T

Đối với tất cả mô hình I của T có một mô hình của mà có cùng miền như I,

khớp với I về các khái niệm và vai trò nguyên tố trong T.

2.3.3. Bộ khẳng định (ABox).

Ngoài bộ thuật ngữ TBox vừa trình bày, thành phần thứ hai của cơ sở tri thức là bộ

khẳng định ABox. Bằng bộ khẳng định người ta biểu diễn các cá thể. Ta ký hiệu các cá

thể là những ký tự a, b, c. Dùng các khái niệm C, D và vai trò R ta có thể tạo ra các khẳng

định theo hai loại ABox là:

C(a), R(b,c)

Loại thứ nhất C(a) được gọi là khẳng định khái niệm; loại thứ hai R(b,c) được gọi là

khẳng định vai trò.

Khẳng định khái niệm cho biết một cá thể thuộc vào khái niệm nào, còn khẳng định

vai trò thể hiện mối quan hệ giữa hai cá thể (c gọi là Filler của vai trò R đối với b).

Ví dụ: Nếu ta có PETER, PAUL, MARY, HARRY là tên các cá thể và ta có ABox sau:

MotherWithoutDaughter (MARY)

Father (PETER)

hasChild (MARY, PETER)

hasChild (PETER, HARRY)

hasChild (MARY, PAUL)

Hình 2.4: Bộ khẳng định (ABox)

Page 52: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 33 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

ABox trong hình 2.4 biểu diễn rằng: MARY là một người mẹ không có con gái,

PETER là một người cha, MARY có các con là PETER và PAUL, PETER có con là

HARRY.

Xem xét một cách đơn giản ta thấy, ABox có thể xem như một minh dụ (instance) của

cơ sở dữ liệu quan hệ với các quan hệ chỉ là một ngôi hoặc hai ngôi.

Ta xác định nghĩa của ABox bằng việc mở rộng các diễn dịch đến tên cá thể. từ giờ

trở đi, một diễn dịch I = ( ∆I, .

I ) không chỉ ánh xạ các khái niệm và vai trò nguyên tố, mà

còn ánh xạ từng tên cá thể a vào phần tử aI ∈ ∆

I. Giả sử rằng tên các cá thể là khác nhau

và biểu diễn các đối tượng khác nhau, thì phép ánh xạ này ánh xạ giả định tên duy nhất

(UNA). Nếu a, b là tên khác nhau thì aI ≠ b

I. Diễn dịch I thoả mãn khẳng định khái niệm

C(a) nếu aI ∈ C

I, và thoả mãn khẳng định vai trò R(a,b) nếu (a

I, b

I) ∈ R

I.

Một diễn dịch thoả mãn ABox A nếu nó thoả mãn từng khái niệm trong A. Trong

trường hợp như vậy ta nói rằng I là mô hình của bộ khẳng định ABox.

Khi I thoả mãn một khẳng định α hoặc một ABox A đối với TBox T, nếu nó là mô

hình của α hay của A thì nó là mô hình của T.

Như vậy, một mô hình của A và T là một trừu tượng của thế giới cụ thể, ở đó các khái

niệm được diễn dịch thành các tập con của miền xác định bởi TBox.

2.3.4. Cá thể

Đôi khi, các cá thể không những được dùng trong ABox mà còn trong ngôn ngữ mô

tả, vì vậy người ta đưa ra các bộ tạo khái niệm (constructor) dùng các cá thể xuất hiện

trong hệ thống. Một trong những constructor cơ bản đó là “tập hợp”, viết là:

{a1 , ... , an}

trong đó a1,..., an là tên các cá thể. Tập cá thể được diễn dịch là:

{ a1 , ... , an}I = {

, … , }

Ví dụ, bằng tập hợp trong ngôn ngữ mô tả ta có thể định nghĩa khái niệm các thành viên

thường trực hội đồng bảo an liên hiệp quốc là {CHINA, FRANCE, RUSSIA, UK, USA}.

Từ diễn dịch trên ta thu được các khái niệm {a1, ... , an} và {a1} ⊔ ... ⊔ {an} là tương

đương nhau.

Một contructor khác xử lý tên cá thể đó là constructor “fill” cho các vai trò, viết là:

Page 53: Fuzzy Ontology and Fuzzy-OWL(9)

34 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

R : a,

Ngữ nghĩa của constructor này được định nghĩa là:

(R : a)I = {d ∈ ∆

I | (d, a

I) ∈ R

I},

nghĩa là R : a đại diện cho tập các đối tượng mà a là Filler của vai trò R. Từ công thức

trên ta thấy rằng, nếu với tập hợp đơn thì R : a và ∃R.{a} là tương đương.

Lưu ý rằng “fill” cho phép ta biểu diễn các khẳng định vai trò thong qua các khẳng

định khái niệm: một diễn dịch thoả mãn R(a,b) khi và chỉ khi nó thoả mãn (∃R.{b})(a).

2.3.5. Suy luận.

Khi mô hình một miền ứng dụng, ta xây dựng TBox gọi là T bằng cách định nghĩa các

khái niệm mới, kiểm tra “bài toán thoả” của các khái niệm đó được coi là suy luận mấu

chốt. Một số suy luận quan trọng khác có thể rút gọn về “bài toán thoả”. Chẳng hạn để

xác định mô hình là đúng hoặc để tối ưu hoá câu hỏi được thiết lập là những khái niệm, ta

cần biết khái niệm nào bao quát hơn khái niệm nào, ta gọi đó là “bài toán bao hàm”. Một

khái niệm C được bao hàm bởi khái niệm D nếu trong tất cả các mô hình của T có tập ký

hiệu bởi C là một tập con của tập ký hiệu bởi D. Tiếp đến ta quan tâm đến mối quan hệ

giữa các khái niệm là “bài toán tương đương” và “bài toán không giao”. Các bài toán này

được định nghĩa một cách hình thức như sau:

Cho T là một TBox:

Bài toán thoả: Một khái niệm C là thoả mãn theo T nếu như tồn tại một mô hình I

của T mà CI ≠ . Ta cũng nói rằng khi đó I là mô hình của C.

Bài toán bao hàm: Một khái niệm C bị bao hàm bởi khái niệm D theo T, nếu CI

DI với mọi mô hình I của T. Khi đó ta ký hiệu là C ⊑T D hoặc T |= C ⊑ D.

Bài toán tƣơng đƣơng: Hai khái niệm C và D là tương đương theo T nếu CI = D

I

với mọi mô hình I của T . Khi đó ta ký hiệu là C ≡T D hoặc T |= C ≡ D.

Bài toán không giao: Hai khái niệm C và D là không giao nhau theo T nếu như CI

⋂ DI = với mọi mô hình I của T.

Xét ví dụ trong Hình 3.2, Person bao hàm Woman, cả Woman và Parent bao hàm

Mother, Mother bao hàm Grandmother. Hơn nữa, các cặp Woman và Man, Father và

Mother là không giao nhau.

Mệnh đề 1.3. [18] Chuyển về bài toán bao hàm.

Xét hai khái niệm C và D:

Page 54: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 35 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

C không thoả mãn ↔ C bị bao hàm bởi .

C và D tương đương ↔ C bị bao hàm bởi D đồng thời D bị bao hàm bởi C.

C và D không giao nhau ↔ C ⊓ D bị bao hàm bởi .

Mệnh đề 1.4. [18] Chuyển về bài toán không thoả.

Xét hai khái niệm C và D:

C bị bao hàm bởi D ↔ C ⊓ D là không thoả mãn.

C và D là tương đương ↔ (C ⊓ D) và (C ⊓ D) là không thoả mãn.

C và D không giao nhau ↔ (C ⊓ D) là không thỏa mãn.

Mệnh đề 1.5. [18] Xét hai khái niệm C và D, các trường hợp sau đây là tương đương

nhau:

C không thoả mãn;

C bị bao hàm bởi ;

C và là tương đương;

C và ⊤ không giao nhau.

2.3.5.1. Loại trừ TBox.

Vấn đề tiếp theo trong suy luận là loại trừ TBox, vì sự có mặt của bộ thuật ngữ trong

các thủ tục suy diễn chỉ làm phức tạp thêm cho các thủ tục này. Người ta loại bỏ ảnh

hưởng của TBox trong các bài toán quyết định bằng cách sử dụng TBox mở rộng. Vì như

ta đã biết, mở rộng của TBox chỉ chứa các tiên đề khái niệm với vế trái là các khái niệm

mới (các symbol tên), còn vế phải là các khái niệm nguyên thuỷ và α hoặc vai trò nguyên

thuỷ (các symbol cơ sở). Như vậy, với một khái niệm C cho trước, thông qua mở rộng

TBox, ta có được một biểu thức khái niệm đầy đủ của C chỉ chứa các khái niệm và vai trò

nguyên thuỷ. Xét ví dụ trong hình 3.2, khái niệm mở rộng của Father sẽ là:

Person ⊓ (Person ⊓ Female) ⊓ ∃hasChild.Person

Giả sử C‟ là mở rộng của C, ta có thể dễ dàng rút ra một số lập luận như sau:

C ≡T C‟;

C là thoả mãn theo T khi và chỉ khi C‟ thoả mãn;

Nếu D là một khái niệm khác thì ta cũng có D ≡T D’. Như vậy, C ⊑T D khi và chỉ

khi C’ ⊑T D’, và C ≡T D khi và chỉ chi C’ ≡T D’. Khi mà C‟ và D‟ chỉ chứa các

symbol cơ sở thì:

o T |= C ⊑ D khi và chỉ khi |= C’ ⊑ D’;

o T |= C ≡ D khi và chỉ khi |= C’ ≡ D’.

Page 55: Fuzzy Ontology and Fuzzy-OWL(9)

36 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

tương tự, nếu C và D không giao nhau khi và chỉ khi C‟ và D‟ không giao nhau.

Tóm lại, mở rộng khái niệm đối với một TBox không có chu trình cho phép ta loại trừ

Box trong vấn đề suy luận.

Ta xét ví dụ:

Để xác nhận rằng Man và Woman không giao nhau theo TBox Family, thì ta phải

kiểm tra Man u Woman là không thoả mãn. Bằng việc mở rộng khái niệm ta có:

Person ⊓ Female ⊓ Person ⊓ (Person ⊓ Female)

và ta dễ dàng thấy rằng khái niệm trên là không thoả mãn. Vì vậy Man và Woman không

giao nhau theo TBox Family.

2.3.5.2. Lập luận đối với ABox.

Ta nói rằng ABox chứa hai dạng khẳng định: khẳng định khái niệm có dạng C(a) và

khẳng định vai trò R(b,c). Tuy nhiên biểu diễn tri thức phải hợp lệ, bởi vì nếu không thì

từ quan điểm logic người ta có thể vẽ ra kết quả bất kỳ. Chẳng hạn, ABox chứa các

khẳng định Mother(MARY) và Father(MARY), hệ thống có thể cho rằng trong TBox

quan hệ gia đình, những câu lệnh trên là hợp lệ.

Theo ngữ nghĩa lý thuyết của mô hình chúng ta dễ dàng đưa ra định nghĩa hình thức về

sự hợp lệ. Một ABox A là hợp lệ đối với TBox T , nếu có một diễn dịch là mô hình của cả

A và T. Chúng ta nói một cách đơn giản rằng A là hợp lệ nếu nó hợp lệ đối với TBox

rỗng.

Ví dụ, tập các khẳng định {Mother(MARY), Father(MARY)} là hợp lệ đối với TBox

rỗng, bởi vì không có ràng buộc nào trên diễn dịch Mother và Father, hai khái niệm có

thể được diễn dịch trong cùng cách là chúng có cùng thành phần chung. Tuy nhiên, các

khẳng định là không hợp lệ đối với TBox quan hệ gia đình, khi mà trong mô hình của nó

khái niệm Mother và Father được diễn dịch là không giao nhau.

Tương tự như đối với khái niệm, việc kiểm tra tính hợp lệ của ABox đối với TBox

không có chu trình có thể quy về việc kiểm tra một ABox mở rộng. Ta xác định mở rộng

của A đối với T là một ABox A' thu được bằng việc thay thế các khẳng định khái niệm

C(a) trong A bằng các khái niệm C'(a), với C' là mở rộng của C đối với T. Trong tất cả

mô hình của T, một khái niệm C và mở rộng C' của nó được diễn dịch theo cùng cách

thức. Cho nên, A' hợp lệ khi và chỉ khi A hợp lệ. Tuy nhiên, khi A' không chứa tên được

định nghĩa trong T, thì nó hợp lệ đối với T khi và chỉ khi bản thân nó hợp lệ.

Page 56: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 37 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Tóm lại ta có kết luận:

A hợp lệ đối với T khi và chỉ khi mở rộng A' của nó hợp lệ.

A |= C(a) khi và chỉ khi A ⋃ {C(a)} không hợp lệ.

C thoả mãn khi và chỉ khi {C(a)} hợp lệ.

2.3.5.3. Ngữ nghĩa “đóng”, ngữ nghĩa “mở”.

Giữa cơ sở dữ liệu và cơ sở tri thức theo logic mô tả có sự tương đồng. Lược đồ của

cơ sở dữ liệu có thể so sánh với TBox trong logic mô tả, còn các minh dụ (instance) của

cơ sở dữ liệu thực có thể được so sánh với ABox. Tuy nhiên, ngữ nghĩa của ABox khác

với ngữ nghĩa thông thường của các minh dụ (instance) cơ sở dữ liệu. Các instance cơ sở

dữ liệu biểu diễn chính xác một diễn dịch, đó là các lớp và các quan hệ trong lược đồ

được biểu diễn bởi các đối tượng và các bộ (bản ghi) trong instance, còn một ABox biểu

diễn nhiều diễn dịch khác nhau, đó là tất cả các mô hình của nó. Khi diễn dịch những

thông tin vắng mặt của instance cơ sở dữ liệu ta được kết quả phủ định, còn khi diễn dịch

thông tin vắng mặt của ABox cho ta biết sự thiếu vắng tri thức.

Ví dụ: Nếu chỉ có khẳng định về PETER là hasChild(PETER, HARRY), thì trong cơ

sở dữ liệu được hiểu là một biểu diễn thực tế PETER chỉ có một người con là HARRY;

trong ABox khẳng định trên lại được hiểu là HARRY là con của PETER.

Tuy nhiên, ABox có nhiều mô hình, một trong những mô hình là HARRY là người

con duy nhất, mô hình khác thì HARRY có anh chị em. Để biểu diễn trong ABox

HARRY là con duy nhất ta thêm vào khẳng định (≤1 hasChild(PETER)); nghĩa là

PETER chỉ có nhiều nhất một người con.

Từ phần thảo luận vừa rồi, ta thấy nghĩa của ABox có đặc điểm là "mở" còn nghĩa

truyền thống của cơ sở dữ liệu có đặc điểm là "đóng".

Để nhìn nhận rõ hơn ngữ tính mở của ngữ nghĩa trong ABox ta xét một ví dụ dựa trên

câu truyện thần thoại Hy Lạp, Oedipus. Trong một ngôi làng nhỏ, câu chuyện kể lại

Oedipus đã giết cha và lấy người mẹ tên là Iokaste và có con tên là Polyneikes với bà ta

ra sao. Cuối cùng Polyneikes cũng có con tên là Thersandros.

Ta giả sử rằng ABox Aoe được biểu diễn trong Hình 2.5 biểu diễn sơ bộ sự thực này.

Trong ABox khẳng định rằng Oedipus là kẻ giết cha còn Thersandros không giết cha, nó

được biểu diễn bằng khái niệm nguyên tố Patricide.

hasChild(IOKASTE, OEDIPUS)

hasChild(OEDIPUS, POLYNEIKES)

Page 57: Fuzzy Ontology and Fuzzy-OWL(9)

38 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

hasChild(IOKASTE, POLYNEIKES)

hasChild(POLYNEIKES, THERSANDROS)

Patricide(OEDIPUS)

Patricide(THERSANDROS)

Hình 2.5: ABox Aoe về câu truyện Oedipus

Giả sử ta muốn biết xem Iokaste có con là kẻ giết cha và bản than người con này

không phải là kẻ giết cha. Ta có thể biểu diễn vấn đề đó như sau:

Aoe |= (∃hasChild.(Patricide⊓ ∃hasChild.Patricide))(IOKASTE)?

Ai đó có thể gợi ý suy luận như sau: Iokaste có hai người con trong ABox. Một người

là Oedipus là kẻ giết cha. Ông ta có một người con là Polyneikes. Nhưng không có gì cho

ta biết rằng Polyneikes không phải là kẻ giết cha. Như vậy, Oedipus không phải là người

con mà ta đang tìm. Người thứ hai là Polyneikes, nhưng không có gì cho ta biết

Polyneikes là kẻ giết cha. Như vậy Polyneikes cũng không phải là người con mà ta đang

tìm. Dựa vào lập luận này người ta cho là khẳng định về Iokaste không được kế thừa.

Tuy nhiên, lập luận đúng thì khác. Tất cả các mô hình của Aoe có thể được chia làm

hai lớp, một lớp trong đó nói Polyneikes là kẻ giết cha, và lớp còn lại nói Polyneikes

không giết cha. Trong mô hình của dạng thứ nhất, Polyneikes, con của Iokaste, là kẻ giết

cha và có con không phải là kẻ giết cha tên là Thersandros. Trong mô hình của dạng thứ

hai, Oedipus, con của Iokaste là kẻ giết cha và có con không phải là kẻ giết cha tên là

Polyneikes. Như vậy, trong tất cả các mô hình Iokaste có một người con là kẻ giết cha và

bản than kẻ này có một người con không phải là kẻ giết cha. Điều đó có nghĩa rằng khẳng

định: (∃hasChild.(Patricide ⊓ ∃hasChild.Patricide))(IOKASTE) thực sự được kế

thừa bởi Aoe.

Ví dụ trên cũng nói rằng, lập luận "mở" có thể cần phải phân tích các trường hợp.

2.4. Các thuật toán suy luận.

2.4.1. Thuật toán bao hàm cấu trúc.

Thuật toán bao hàm cấu trúc xuất phát trong hai pha. Trước hết, mô tả được kiểm tra

để bao hàm được chuẩn hoá, sau đó cấu trúc cú pháp của dạng chuẩn được so sánh. Để

đơn giản, ta giải thích ý tưởng trên bằng cách tiếp cận ngôn ngữ FL0 (ngôn ngữ chỉ cho

phép thực hiện phép hội (C ⊓ D) và lượng từ với mọi (∀R.C)). Tiếp đến ta xử lý đến các

khái niệm đáy và phép phủ định khái niệm.

Page 58: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 39 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Rõ ràng, FL0 và mở rộng bằng khái niệm đáy và phủ định khái niệm là ngôn ngữ con

của AL, một khái niệm mô tả FL0 là dạng chuẩn khi và chỉ khi nó có dạng:

A1 ⊓ ... ⊓ Am ⊓ R1.C1 ⊓ ... ⊓ Rn.Cn

Trong đó A1,..., Am là các khái niệm khác nhau, R1, ... Rn là các vai trò khác nhau, còn

C1,...,Cn là các mô tả khái niệm FL0 ở dạng chuẩn. Ta dễ dàng thấy rằng mô tả bất kỳ có

thể chuyển được về một mô tả ở dạng chuẩn. Thực tế, mô tả ∀R.(C ⊓ D) và (∀R.C) ⊓

(∀R.D) là tương đương nhau.

Mệnh đề 1.6. [18] Cho dạng chuẩn của mô tả khái niệm FL0:

A1 ⊓ ... ⊓ Am ⊓ ∀R1.C1 ⊓ ... ⊓ ∀Rn.Cn

và dạng chuẩn của mô tả khái niệm FL0 (D):

B1 ⊓ ... ⊓ Bk ⊓ ∀S1.D1 ⊓ ... ⊓ ∀Sl.Dl

thì C ⊑ D khi và chỉ khi phù hợp hai điều kiện sau:

1) Đối với mọi i, 1 ≤ i ≤ k, tồn tại j, 1 ≤ j ≤ m để Bi = Aj

2) Đối với mọi i, 1 ≤ i ≤ l, tồn tại j, 1 ≤ j ≤ n để Si = Rj và Cj ⊑ Di

Ta thấy rằng tính chất trên của bao hàm là đúng đắn và đầy đủ. Nếu ta mở rộng FLo

bằng các constructor có thể biểu diễn các khái niệm không thoả, thì một mặt ta phải thay

đổi định nghĩa dạng chuẩn, mặt khác, khi so sánh cấu trúc của các dạng chuẩn ta phải lưu

ý rằng một khái niệm không thoả mãn được bao hàm bởi tất cả các khái niệm. Ngôn ngữ

mở rộng đơn giản nhất của FL0 đó là mở rộng khái niệm đáy (⊥), ký hiệu là .

Một mô tả khái niệm bằng là một dạng chuẩn khi và chỉ khi là ⊥ hoặc có dạng:

A1 ⊓ ... ⊓ Am ⊓ ∀R1.C1 ⊓ ... ⊓ ∀Rn.Cn.

Trong đó A1,..., Am là các khái niệm khác với ⊥, R1,...,Rn là các vai trò, còn C1,...,Cn là

các mô tả khái niệm ở dạng chuẩn.

Về nguyên tắc, ta có thể tính dạng chuẩn FL0 của mô tả (⊥ được xử lý như một khái

niệm bình thường): B1 ⊓ ... ⊓ Bk ⊓ ∀R1.D1 ⊓ ... ⊓ ∀Rn.Dn. Nếu một trong số Bi là khái

niệm đáy ⊥, thì thay toàn bộ mô tả này bằng ⊥. Mặt khác, áp dụng cùng thủ tục đối với

Dj. Ví dụ dạng chuẩn của ∀R.∀R.B ⊓ A ⊓ ∀R.(A ⊓ ∀R. ⊥) là:

A ⊓ ∀R.(A ⊓ ∀R.(B ⊓ ⊥).

thu được dạng chuẩn FL0:

Page 59: Fuzzy Ontology and Fuzzy-OWL(9)

40 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

A ⊓ ∀R.(A ⊓ ∀R.⊥).

Thuật toán bao hàm cấu trúc đối với làm việc giống như đối với FL0, chỉ khác là

khái niệm đáy ⊥ bị bao hàm bởi mô tả bất kỳ. Ví dụ:

∀R.∀R.B ⊓ A ⊓ ∀R.(A ⊓ ∀R. ⊥) ⊑ ∀R.∀R.A ⊓ A ⊓ ∀R.A

khi so sánh đệ quy các dạng chuẩn : A ⊓ ∀R(A ⊓ ∀R. ⊥) và A ⊓ ∀R.(A ⊓ ∀R.A)

cuối cùng dẫn đến sự so sánh ⊥ và A.

Mở rộng FL0 bằng phủ định khái niệm có thể được xử lý tương tự. Trong khi tính

dạng chuẩn, các khái niệm bị phủ định được xử lý giống như các khái niệm thường. Tuy

nhiên, nếu một khái niệm và phủ định của nó xuất hiện ở cùng mức của dạng chuẩn, thì ta

thêm vào ⊥. Ví dụ:

∀R. A ⊓ A ⊓ ∀R.(A ⊓ ∀R.B)

Trước hết ta biến đổi thành

A ⊓ ∀R.(A ⊓ A ⊓ ∀R.B)

Sau đó ta có

A ⊓ ∀R.( ⊥ ⊓ A ⊓ A ⊓ ∀R.B)

Cuối cùng ta được

A ⊓ ∀R. ⊥

Đối với các mô tả phức tạp hơn, thuật toán bao hàm cấu trúc thường không đáp ứng

được. Đặc biệt, thuật toán này không xử lý phép hợp, phép phủ định hoàn toàn, và lượng

từ tồn tại. Để khắc phục những điểm yếu của thuật toán này, người ta đưa ra một thuật

toán khá hữu dụng đó là thuật toán tableau.

2.4.2. Thuật toán tableau.

Ngoài việc trực tiếp kiểm tra bao hàm mô tả khái niệm, thuật toán tableau còn dùng

phép phủ định để đưa bài toán bao hàm về bài toán thoả (không thoả). Như ta đã biết

trong Mệnh đề 1.4: C ⊑ D khi và chỉ khi C ⊓ D không thoả.

Trước khi mô tả chi tiết thuật toán tableau đối với ngôn ngữ ALCN, ta lược qua các ý

tưởng bằng hai ví dụ đơn giản.

Ví dụ thứ nhất: giả sử ta muốn biết ∃R.A ⊓ (∃R.B) có bị bao hàm bởi ∃R(A ⊓ B) hay

không, nghĩa là ta phải kiểm tra xem mô tả khái niệm

Page 60: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 41 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

C = (∃R.A) ⊓ (∃R.B) ⊓ (∃R.(A ⊓ B))

có thoả hay không.

Trước hết ta dùng luật de Morgan và luật lượng từ để biến đổi, ta được kết quả mô tả

như sau:

C0 = (∃R.A) ⊓ (∃R.B) ⊓ ∀R.( A ⊔ B),

Đây là dạng chuẩn phủ định, nghĩa là phủ định chỉ xuất hiện trước tên khái niệm. Sau

đó ta xây dựng một diễn dịch hữu hạn I để ≠ ∅. Nghĩa là, phải tồn tại một cá thể trong

I là phần tử của

.

Thuật toán tạo ra một cá thể gọi là b, và chịu sự ràng buộc b ∈ . Khi mà C0 là hội

của ba mô tả khái niệm, điều đó nghĩa là b phải thoả mãn ba ràng buộc:

b ∈ (∃R.A)I, b ∈ (∃R.B)

I và b ∈ (∀R.(A ⊔ B))

I.

Từ b ∈ (∃R.A)I, ta có thể kết luận rằng cần phải có mặt một cá thể c để (b, c) ∈ R

I và c

∈ AI. Tương tự b ∈ (∃R.B)

I phải tồn tại một cá thể d để (b, d) ∈ R

I và d B

I. Ta không

nên giả sử c = d vì có khả năng phải chịu quá nhiều ràng buộc lên các cá thể mới được

đưa vào để thoả mãn lượng từ tồn tại.

Như vậy, với mọi lượng từ tồn tại, thuật toán đưa vào một một cá thể mới làm filler

của vai trò, và cá thể này phải thoả mãn các ràng buộc biểu diễn bởi lượng từ tồn tại đó.

Khi đó b cũng phải thoả lượng từ với mọi ∀R.(A ⊔ B) và c, d đã được đưa vào làm

filler vai trò của R, ta thu được ràng buộc c ∈ (A ⊔ B)I và d ∈ ( A ⊔ B)

I. Như vậy,

thuật toán sử dụng các lượng từ trong tương tác với các quan hệ đã được định nghĩa để

chịu sự ràng buộc mới lên các cá thể.

c ∈ (A ⊔ B)I nghĩa là c ∈ (A)

I hoặc c ∈ (B)

I, và ta phải lựa chọn một trong các

khả năng có thể. Nếu ta cho rằng c ∈ (A)I, điều này mâu thuẫn với ràng buộc khác là c

∈ AI, nghĩa là dẫn đến một sự mâu thuẫn hiển nhiên. Vì vậy ta phải lựa chọn c ∈ (B)

I.

Tương tự, ta phải chọn d ∈ (A)I để thoả mãn ràng buộc d ∈ (A ⊔ B)

I mà không tạo ra

sự mâu thuẫn với d ∈ BI.

Ở ví dụ trên, ta đã thoả mãn tất cả các ràng buộc mà không bắt gặp một mâu thuẫn

nào. Điều đó chứng tỏ C0 là thoả mãn và như vậy (∃R.A) ⊓ (∃R.B) được bao hàm bởi

Page 61: Fuzzy Ontology and Fuzzy-OWL(9)

42 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

∃R.(A ⊓ B). Thuật toán đã tạo ra một diễn dịch minh chứng rằng: I = {a, b, c}; R

I =

{(b,c), (b,d)}; AI = {c} và B

I = {d}. Với mọi diễn dịch, b ∈

. Nghĩa là b ∈ ((∃R.A) ⊓

(∃R.B))I, nhưng b ∉ (∃R.(A ⊓ B))

I.

Ví dụ thứ hai: ta thêm giới hạn số lượng vào khái niệm thứ nhất của ví dụ trên, nghĩa

là, ta muốn biết (∃R.A) ⊓ (∃R.B) ⊓ ≤ 1R có được bao hàm bởi ∃R.(A ⊓ B) hay không.

Bằng trực giác, câu trả lời là "có" khi đó ≤ 1R trong khái niệm thứ nhất đảm bảo R-filler

trong A khớp với R-filler trong B, như vậy có một R-filler trong A ⊓ B. Thuật toán

tableau giải bài toán thoả có them ràng buộc b ∈ (≤ 1R)I. Để thoả mãn ràng buộc này thì

hai R-filler c, d của b đồng nhất với nhau. Như vậy, nếu "giới hạn số lượng lớn nhất" bị vi

phạm thì thuật toán phải đồng nhất hoá các filler vai trò khác nhau.

Trong ví dụ này, cá thể c = d phải thuộc về cả Ai và Bi, mà khi đi cùng với c = d ∈

(A ⊔ B)I luôn dẫn đến xung đột. Thuật toán quyết định cho ví dụ này là:

(∃R.A) ⊓ (∃R.B) ⊓ ≤ 1R ⊑ ∃R.(A ⊓ B)

Các luật biến đổi của thuật toán tableau giải bài toán thoả:

Luật → ⊓-

Điều kiện: A chứa (C1 ⊓ C2)(x), nhưng nó không chứa cả C1(x) và C2(x).

Biến đổi: A' = A ⋃ {C1(x), C2(x)}.

Luật → ⊔-

Điều kiện: A chứa (C1 ⊔ C2)(x), nhưng không chứa C1(x) hoặc C2(x).

Biến đổi: A' = A ⋃ {C1(x)}, A" = A ⋃ {C2(x)}.

Luật → -

Điều kiện: A chứa (∃R.C)(x), nhưng không có cá thể z mà làm cho C(z) và R(x,z)

trong A.

Biến đổi: A' = A ⋃ {C(y), R(x,y)} với y là một cá thể không nằm xuất hiện trong

A.

Luật → -

Điều kiện: A chứa (∀R.C)(x) và R(x,y), nhưng không chứa C(y).

Biến đổi: A' = A ⋃ {C(y)}.

Luật → ≥-

Điều kiện: A chứa (≥ nR)(x), và không có các cá thể z1,...,zn mà làm cho R(x,zi) (1

≤ i ≤ n) và zi ≠ zj (1 ≤ i < j ≤ n) nằm trong A.

Biến đổi: A' = A ⋃ {R(x,yi) | 1 ≤ i ≤ n} [ {yi ≠ yj | 1 ≤ i < j ≤ n} với y1,...,yn là

các cá thể tách biệt không xuất hiện trong A.

Page 62: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 43 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Luật → ≤-

Điều kiện: A chứa các cá thể tách biệt y1,..., yn+1 mà làm cho (≤ nR)(x) và

R(x,y1),..., R(x,yn+1) trong A, và yi ≠ yj không có trong A với vài i ≠ j.

Biến đổi: Với mỗi cặp yi, yj mà i > j và yi ≠ yj không trong có trong A, thu được

ABox Ai,j = [yi/yj]A từ A bằng việc thay thế từng sự kiện của yi bằng

yj.

Hình 2.6: Luật biến đổi của thuật toán tableau giải bài toán thỏa.

Luật trong Hình 2.6 được áp dụng cho một tập hữu hạn các ABox S như sau: Lấy một

phần tử A của S và thay thế nó bằng một ABox A', bằng hai ABox A', A" hoặc bằng nhiều

ABox Ai,j.

Từ các luật biến đổi ta có nhận xét:

Giả sử ta thu được S' từ tập hữu hạn các ABox S bằng cách áp dụng một luật biến đổi,

thì S là hợp lệ khi và chỉ khi S' hợp lệ.

Giả sử C0 là một mô tả khái niệm ALCN ở dạng chuẩn phủ định. Sẽ không tồn tại một

dãy vô hạn việc áp dụng luật {(C0(x0))} → S1 → S2 →...

Giả sử A là một ABox thuộc Si với i ≥ 1, thì:

Với mọi cá thể x ≠ x0 xuất hiện trong A, ta có một dãy duy nhất các vai trò

R1,..., Rℓ (ℓ ≥ 1) và một dãy duy nhất các cá thể x1,...,xℓ -1 mà {R1(x0, x1), R2(x1 ,

x2),..., Rℓ(xℓ-1,x) A. Trong trường hợp này ta nói rằng x xuất hiện ở mức ℓ

trong A.

Nếu C(x) ∈ A đối với cá thể x ở mức ℓ, thì độ sâu vai trò cực đại của C bị bao

bởi độ sâu vai trò cực đại của C0 trừ đi ℓ. Tương tự, mức của cá thể bất kỳ

trong A được bao bởi đội sâu vai trò cực đại của C0.

Nếu C(x) thuộc A, thì C là một mô tả con của C0. Tương tự, số lượng các

khẳng định khái niệm khác nhau trên x được bao bởi kích thước của C0.

Số các vai trò kế tiếp khác nhau của x trong A (nghĩa là các cá thể y mà R(x,y)

∈ A) được bao bởi tổng số lần xuất hiện các giới hạn nhỏ nhất trong C0 cộng

với số lượng các lượng từ tồn tại khác nhau trong C0.

Bắt đầu bằng {{Co(xo)}}, ta thu được tập ABox S' mà không còn áp dụng luật biến

đổi được nữa sau khi ta đã có một số lần hữu hạn áp dụng luật biến đổi. Một ABox A

được gọi là hoàn thiện khi và chỉ khi không còn luật biến đổi nào áp dụng được nữa. Tính

Page 63: Fuzzy Ontology and Fuzzy-OWL(9)

44 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

hợp lệ của tập ABox hoàn chỉnh có thể được quyết định bằng việc tìm các mâu thuẫn.

ABox A chứa mâu thuẫn khi và chỉ khi một trong ba tình huống sau xuất hiện:

1. {⊥(x)} A với một số cá thể x;

2. {A(x), A(x)} A với một số cá thể x và một số khái niệm A;

3. {(≤ n R)(x)} ⋃ {R(x,yi) | 1 ≤ i ≤ n+1} ⋃ {yi ≠ yj | 1≤ i < j ≤ n+1} A.

Hiển nhiên, một ABox mà chứa mâu thuẫn không thể hợp lệ. Do đó, nếu tất cả ABox

trong S' chứa mâu thuẫn, thì S' là không hợp lệ, và như vậy {C0(x0)} cũng không hợp lệ.

C0 không thoả. Tuy nhiên, nếu một trong các ABox hoàn chỉnh trong S' không có mâu

thuẫn thì S' là hợp lệ. Điều đó dẫn đến {C0(x0)} hợp lệ và như vậy thì C0 thoả mãn.

Một ABox A hoàn chỉnh và không xung đột là một mô hình. Các luật sẽ được áp dụng

lên trên A cho đến khi không còn luật nào có thể áp dụng nữa.Ta gọi đây là quá trình mở

rộng A. Việc thực hiện theo thuật toán này cho phép ta thu được một bộ khẳng định đầy

đủ của A là Ã. Khi ta phát hiện ra mâu thuẫn trong à có nghĩa là A không thoả mãn hay

nói cách khác ta đã đưa ra được câu trả lời cho câu hỏi rằng C ⊑ D là đúng hay sai.

Để kết thúc phần này, ta xét một ví dụ đơn giản, trong đó có sử dụng các khái niệm

được đưa ra trong ví dụ ở Hình 3.2.

Ví dụ: Chứng minh rằng

Mother ⊑ Parent

Hay Mother ⊑ (Mother ⊔ Father)

Lúc này ta chỉ xét một TBox đơn giản là

T = {Parent Father ⊔ Mother}

Áp dụng luật de Morgan và luật →⊓- ta có dãy biến đổi sau:

A h(Mother ⊓ (Father ⊔ Mother))(x)i

hMother(x)i, h(Father ⊔ Mother)(x)i

hMother(x)i, hFather ⊓ Mother)(x)i

à hMother(x)i, hFather(x)i, hMother(x)i

Hình 2.7: Ví dụ chứng minh Mother ⊑ Parent

Có thể nhận thấy rằng mâu thuẫn đã xuất hiện giữa hai khẳng định hMother(x)i và

hMother(x)i trong Ã. Điều đó chứng tỏ rằng Mother ⊑ Parent là đúng.

2.5. Mở rộng ngôn ngữ mô tả

Page 64: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 45 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Ở trên ta đã được biết đến ngôn ngữ ALCN là một ngôn ngữ logic mô tả mẫu. Đối với

nhiều ứng dụng, khả năng biểu diễn của ALCN là không đáp ứng được. Vì vậy, nhiều

constructor để mở rộng ngôn ngữ logic đã được đưa ra. Trong phần này ta xem xét các

mở rộng quan trọng của logic mô tả. Đó là các constructor mới được dùng để xây dựng

các vai trò phức tạp, đồng thời ta cũng thảo luận về khả năng biểu diễn của các giới hạn

số lượng.

2.5.1. Các constructor vai trò

Khi các vai trò được diễn dịch ngữ nghĩa là các quan hệ nhị phân, ta có thể dùng các

toán tử trên các quan hệ nhị phân (như toán tử bool, hợp thành, đảo vai trò) làm các

constructor để thiết lập các vai trò. Cú pháp và ngữ nghĩa của các constructor này có thể

được định nghĩa như sau:

Tất cả các tên vai trò là một mô tả vai trò (vai trò nguyên tố), và nếu R, S là các mô tả

vai trò, thì R ⊓ S (phép giao), R ⊔ S (phép hợp), R (phép phủ định), R o S (phép hợp

thành), (đảo vai trò) cũng là các mô tả vai trò. Một diễn dịch I cho trước được mở

rông cho các mô tả vai trò phức tạp như sau:

1. (R ⊓ S)I = R

I ⋂ S

I, (R ⊔ S)

I = R

I ⋃ S

I, (R)

I =

I ×

I \ R

I;

2. (R o S)I = {(a,c) ∈

I ×

I | ∃b.(a,b) ∈ R

I (b,c) ∈ S

I};

3. ( )I = {(b,a) ∈

I ×

I | (a,b) ∈ R

I}.

Chẳng hạn, phép hợp của các vai trò hasSon và hasDaughter có thể được dùng để

định nghĩa vai trò hasChild, đảo vai trò của hasChild đem đến vai trò hasParent

3.5.2. Biểu diễn các giới hạn số

Trước hết, ta có thể xem xét các giới hạn số lượng (qualified number restrictions) có

liên quan đến R-filler thuộc về một khái niệm cụ thể. Ví dụ, cho vai trò hasChild, ta có

thể biểu diễn rằng số lượng của toàn bộ các đứa trẻ bị giới hạn trong khoảng nhất định,

như trong khái niệm ≥ 2 hasChild ⊓ ≤ 5 hasChild. Giới hạn số lượng cũng được dùng để

biểu diễn rằng có ít nhất 2 con trai và nhiều nhất 5 con gái như sau:

≥ 2 hasChild.Male ⊓ ≤ 5 hasChild.Female.

Ngoài ra, ta có thể thay thế các chữ số tường minh trong giới hạn số bằng các biến đại

diện cho một số nguyên bất kỳ không âm. Chẳng hạn, để định nghĩa khái niệm tất cả

những người có ít nhất số con gái bằng số con trai, mà không nói tường minh người này

có bao nhiêu con trai và bao nhiêu con gái:

Person ⊓ ≥ α hasDaughter ⊓ ≤ α hasSon

Page 65: Fuzzy Ontology and Fuzzy-OWL(9)

46 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

2.6. Tổng kết chƣơng

Trong Chương 3 ta đã thảo luận về những khái niệm cơ bản của logic mô tả và ngôn

ngữ truy vấn cơ sở tri thức Datalog. Cu thể là:

Ngôn ngữ ALC là ngôn ngữ cho phép ta xây dựng những khái niệm

phức hợp từ những khái niệm và vai trò nguyên thuỷ. ALC là ngôn ngữ chuẩn, các

mở rộng của ALC cung cấp cho ngôn ngữ có khả năng biểu diễn linh hoạt hơn.

Các constructor được dùng để mở rộng ALC là lượng từ tồn tại (∃R), lượng

từ với mọi (∀R), toán tử phủđịnh (), toán tửđảo vai trò ( ) và các lượng từ giới

hạn ( giới hạn nhỏ nhất (≥ n), giới hạn lớn nhất (≤ m) ).

Cùng với biểu diễn cơ sở tri thức bằng ALC thông qua các TBox và ABox,

Chương này cũng đã thảo luận phép diễn dịch I được dùng để xây dựng ngữ

nghĩa cho logic mô tả.

Chương này cũng cung cấp các dịch vụ để giả quyết các bài toán cơ bản trên logic

mô tảđó là bài toán thoả, bài toán tương đương và bài toán giao

CHƢƠNG 3. FUZZY ONTOLOGY AND FUZZY OWL.

3.1. Logic mô tả mờ.

3.1.1. Giới thiệu.

Trong một thập kỷ qua đã có một số lượng lớn các công việc đã được thực hiện liên

quan tới thuộc tính của logic mô tả (Description Logics (DLs)) [18]. Logic mô tả là một

thiết lập lại logic của cái gọi là ngôn ngữ biểu diễn tri thức frame-based, với mục đích

cung cấp một thiết lập đơn giản các khai báo ngữ nghĩa kiểu Taski để nắm bắt ý nghĩa

của các tính năng phổ biến nhất của cấu trúc biểu diễn của tri thức.

Ngày nay, logic mô tả trở nên phổ biến do ứng dụng của nó trong Semantic web .

Semantic web gần đây đã thu hút nhiều sự chú ý của giới học viện và nghành công

nghiệp, và được coi là bước phát triển tiếp theo của World Wide Web. Nó nhằm tăng

cường nội dung trên World Wide Web với siêu dữ liệu, cho phép các tác nhân ( máy móc

hoặc người sử dụng ) xử lý, chia xẻ và giải thích nội dung Web.

Ontology đóng một vai trò quan trọng trong Semantic Web. Và chín vấn đề này cần

sự nỗ lực lớn của cộng đồng Semantic Web. Một ontology bao gồm một mô tả phân cấp

cảu các khái niệm quan trọng trong một miền cụ thể, cùng với các mô tả về thuộc tính

(trong các trường hợp) của từng khái niệm. Logic mô tả đóng một vai trò đặc biệt trong

trường hợp này vì chúng thuộc lý thuyết cơ bản của Web Ontology Language OWL DL,

Page 66: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 47 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

kỹ thuật ưu tiên ngôn ngữ để định rõ (xác định) ontologies. Sau đó nội dung web được

chú thích bằng cách dựa vào các khái niệm được định nghĩa trong một miền ontology cụ

thể.

Tuy nhiên, OWL DL trở nên ít phù hợp trong những trường hợp mà trong đó các khái

niệm được biểu diễn có định nghĩa không chính xác. Nếu chúng ta đưa vào phép tính mà

chúng ta phải giải quyết vói nội dung trang Web, sau đó ta dễ dàng xác định được rằng

kịch bản này là không có khả năng thực hiện. Ví dụ chỉ cần xét các trường hợp khi chúng

ta xây dựng một ontology về hoa. Khi đó chúng ta sẽ gặp phải các vấn đề về các miêu tả

khái niệm như “Candia is a creamy white rose with dark pink edges to the petals”,

Jacaranda is a hot pink rose”, “Calla is a very large, long white flower on thick stalks”.

Rõ rang các khái niệm như vậy khó có thể mã hóa thành OWL DL, vì các khái niệm mơ

hồ như “creamy”, “dark”, “hot”, “large” và “thick” không thể định nghĩa rõ rang và chính

xác.

Các bài toán để giải quyết các khái niệm không chính xác đã được đưa ra vài thập kỷ

trước đây bởi Zadeh, trong đó sinh ra cái gọi là tập mờ và lý thuyết tập mờ và một số

lượng lớn các ứng dụng thực tế tồn tại trong đời sống hàng ngày. Đáng tiếc, tuy lý thuyết

tập mờ ngày càng được phổ biến nhưng không có nhiều nghiên cứu mở rộng DLs đối với

các khái niệm không chính xác, mặc dù DLs được xem là một ngôn ngữ khá đễ dàng để

mở rộng.

Trong phần này chúng ta xem xét một phần mở rộng mờ của SHOIN(D), các DL

tương ứng của OWL DL (ontology description language), cú pháp và ngữ nghĩa của

OWL DL. Tính năng chính của fuzzy SHOIN(D) là nó cho phép biểu diễn và suy luận về

các khái niệm không rõ ràng.

3.1.2. Cú pháp và ngữ nghĩa của logic mô tả mờ.

3.1.2.1. Toán tử mờ.

⊗, ⊕, ⊖, và ⟹ tương ứng là một t-norm, t-conorm, hàm phủ định và hàm kéo theo;

với α, β [0, 1] ta có:

Lukasiewicz negation ⊖ α 1 - α

Godel t-norm α ⊗ β min{α, β}

Lukasiewicz t-norm α ⊗ β max {α + β -1, 0}

Godel t-conorm α ⊕ β max {α, β}

Lukasiewicz t-conorm α ⊕ β min {α + β, 1}

Page 67: Fuzzy Ontology and Fuzzy-OWL(9)

48 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

phép kéo theo Godel α ⟹ β {

phép kéo theo Lukasiewicz α ⟹ β min {1, 1- α + β}

phép kéo theo Kleene-Dienes α ⟹ β max {1 – α, β}

Bảng 3.1. Toán tử mờ

3.1.2.2. Concrete Fuzzy Concepts.

Concrete Fuzzy Concepts (CFCs) xác định tên cho một tập mờ với một hàm thuộc mờ

chi tiết (giả sử a ≤ b ≤ c ≤ d)

(a) (b) (c)

(d) (e) (f)

Hình 3.1. (a) Crisp value; (b) L-function; (c) R-function; (d) (b) Triangular function; (e)

Trapezoidal function; (f) Linear hedge.

(define-fuzzy-concept CFC crisp(k1,k2,a,b)) crisp interval (hình 3.1 (a))

(de_ne-fuzzy-concept CFC left-shoulder(k1,k2,a,b)) left-shoulder function (hình 3.1 (b))

(define-fuzzy-concept CFC right-shoulder(k1,k2,a,b)) right-shoulder function (hình 3.1(c))

(define-fuzzy-number CFC triangular(k1,k2,a,b,c)) triangular function (hình 3.1(d))

(define-fuzzy-concept CFC

trapezoidal(k1,k2,a,b,c,d))

trapezoidal function (hình 3.1(e))

3.1.2.3. Fuzzy Numbers.

Trước tiên, nếu fuzzy number được sử dụng, chúng ta phải xác định phạm vi [k1, k2]

ℝ như sau: (define-fuzzy-number-range k1 k2).

Cho fi là một fuzzy number (ai, bi, ci) (a ≤ b ≤ c) và n ℝ.

Page 68: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 49 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

name fuzzy number definition name

(a, b, c) fuzzy number (a, b, c)

n real number (n, n, n)

(f + f1 f2 … fn) addition (∑ , ∑

, ∑

)

(f – f1 f2) substraction (a1 – c2, b1 – b2, c1 – a2)

f* f1 f2 … fn addition (∏ , ∏

, ∏

)

f/ f1 f2 division (a1/c2, b1/b2, c1/a2)

fuzzy number có thể được gọi là:

(define-fuzzy-number name fuzzyNumberExpression)

3.1.2.4. Truth constants.

Truth constants có thể được xác định như sau (và sau này,nó có thể sử dụng làm giới

hạn dưới của một tiên đề mờ): (de_ne-truth-constant constant n), ở đây n là một giá trị

hợp lý trong [0, 1].

3.1.2.5. Concept modifiers (bổ ngữ khái niệm).

modifiers thay đổi hàm thuộc của một khái niệm mờ.

(define-modifier CM linear-modi_er(b)) linear hedge with b > 0 (hình… (f))

define-modifier CM triangular-modi_er(a,b,c)) triangular function (hình…(d))

3.1.2.6. Features (chức năng).

các chức năng có thuộc tính kiểu dữ liệu.

(define-concrete-feature F *integer* k1 k2) The range is an integer number in [k1, k2]

(define-concrete-feature F *real* k1 k2) The range is a rational number [k1, k2]

(define-concrete-feature F *string*) The range is a string

3.1.2.7. Datatype restrictions (giới hạn kiểu dữ liệu).

(>= var F) at least datatype

restriction

∈ [FI (x, b) ⊗ (b ≥ var)]

(>= F f (F1,…, Fn) at least datatype

restriction

∈ [FI (x, b) ⊗ (b ≥ f (F1,…, Fn)

I )]

(>= FN F) at least datatype

restriction

∈ [F

I (x, b) ⊗ (b ≥ ) ⊗ FN

I ( )

(<= var F) at most datatype ∈ [FI (x, b) ⊗ (b ≤ var)]

Page 69: Fuzzy Ontology and Fuzzy-OWL(9)

50 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

restriction

(<= F f (F1,…, Fn) at least datatype

restriction

∈ [FI (x, b) ⊗ (b ≤ f (F1,…, Fn)

I )]

(<= FN F) at least datatype

restriction

∈ [F

I (x, b) ⊗ (b ≤ ) ⊗ FN

I ( )

(= var F) at least datatype

restriction

∈ [FI (x, b) ⊗ (b = var)]

(= F f (F1,…, Fn) at least datatype

restriction

∈ [FI (x, b) ⊗ (b = f (F1,…, Fn)

I )]

(= FN F) at least datatype

restriction

∈ [F

I (x, b) ⊗ FN

I (b)

Bảng 3.2. Giới hạn kiểu dữ liệu.

Trong giới hạn kiểu giữ liệu, các biến var có thể được thay thế bằng một giá trị (một

số nguyên, một số thực hoặc một chuỗi, tùy thuộc vào phạm vi của các chức năng

(feature) F.

Hơn nữa, nó được định nghĩa như sau:

f (F1,…, Fn) → F

real

(nF) | (n * F)

(F1 – F2)

(F1 + F2 + … + Fn)

3.1.2.8. Diễn giải các khái niệm.

*Top* Khái niệm đỉnh 1

Bottom* Khái niệm đáy 0

A Khái niệm nguyên tố AI(x)

(and C1 C2) Phép giao khái niệm ( ) ⊗

( )

(g-and C1 C2) Phép giao Godel ( ) ⊗

( )

(l-and C1 C2) Phép giao lukasiewicz ( ) ⊗

( )

(or C1 C2) Phép hợp khái niệm ( ) ⊕

( )

(g-or C1 C2) Phép hợp Godel ( ) ⊕

( )

(l-or C1 C2) Phép hợp lukasiewicz ( ) ⊕

( )

(not C1) Phủ định khái niệm ⊖ ( )

(implies C1 C2) Kéo theo khái niệm ( ) ⟹

( )

Page 70: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 51 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

(g-implies C1 C2) Phép kéo theo Godel ( ) ⟹

( )

(l-implies C1 C2) Phép kéo theo lukasiewicz ( ) ⟹

( )

(kd-implies C1 C2) Phép kéo theo Kleene-Dienes ( ) ⟹

( )

(all R C1) Giới hạn vai trò với mọi(universal) nf RI(x, y) ⟹

( )

(some R C1) Giới hạn vai trò tồn tại(existential) p RI(x, y) ⊗

( )

(ua s C1) Tiệm cận trên p sI(x, y) ⊗

( )

(la s C1) Tiệm cận dưới nf sI(x, y) ⟹

( )

(self S) Vùng/quỹ tích đối xứng khái niệm SI(x)(x, x)

(CM C1) Bổ nghĩa cho các khái niệm fm( ( ))

(CFC) Cụ thể khái niệm mờ CFCI(x)

(FN) Số mờ (fuzzy number) FNI(x)

(w-sum (n1 C1) . . .

(nk Ck))

Phép cộng có trọng số n1 ( ) + … + nk

( ))

(n C1) Khái niệm có trọng số ( )

([>= var ] C1) Ngưỡng khái niệm (threshold

concept) {

( ) ế ( )

([<= var ] C1) Ngưỡng khái niệm (threshold

concept) {

( ) ế ( )

(DR) Giới hạn kiểu dữ liệu DRI(x)

Bảng 3.3. Diễn giải các khái niệm.

Trong đó n1,…, nk [0, 1] với ∑ , và w là một biến hoặc một số thực trong [0,

1]

Fuzzy numbers chỉ xuất hiện trong các giới hạn khái niệm tồn tại(universal), với

mọi(existential) và giới hạn kiểu dữ liệu.

Tương tự, trong ngưỡng khái niệm (threshold concept) var có thể được thay thế bằng

w.

Sự giống nhau của quan hệ s trước đó được định nghĩa vói cú pháp (define-fuzzy-

similarity s)

3.1.2.9. Tiên đề.

(instance a C1 [d]) concept assertion ( ) ≥ d

(related a b R [d]) role assertion RI(a

I, b

I) ≥ d

Page 71: Fuzzy Ontology and Fuzzy-OWL(9)

52 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

(implies C1 C2 [d]) GCI nf ( ) ⟹

( ) ≥ d

(g-implies C1 C2 [d]) Godel GCI nf ( ) ⟹

( ) ≥ d

(l-implies C1 C2 [d]) Lukasiewicz GCI nf ( ) ⟹

( ) ≥ d

(kd-implies C1 C2 [d]) Kleene-Dienes GCI nf ( ) ⟹

( ) ≥ d

(define-concept C1 C2 concept definition nf ( ) =

( )

(define-primitive-concept

C1 C2)

concept

subsumption

nf ( ) ≤

( )

(disjoint C1 . . . Ck) concept disjointness ∀ ∈* + (implies (and Ci Cj)

*bottom*)

(range R C1) range restriction (implies *top* (all RN C))

(domain R C1) domain restriction (implies (some RN *top*) C)

(functional R) functional role RI(a, b) = R

I(a, c) b = c

(reexive R) reflexive role a I, R

I(a, a) = 1

(symmetric R) symmetric role a, b I, R

I(a, b) = R

I(b, a)

(transitive R) transitive role RI(a, b) ≥ p ∈ R

I(a, c)

⊗ RI(c, b)

(implies-role R1 R2 [d]) RIA nf ( ) ⟹

( ) ≥ d

(inverse R1 R2) inverse role (

)

Bảng 3.4. Các tiên đề trong logic mô tả mờ.

3.1.3. Một số ngôn ngữ logic mô tả mờ.

3.1.3.1. Logic mô tả mờ F-SHIN :

3.1.3.1.1. Cú pháp

Cơ sở của Logic mô tả mờ F-SHIN Là các mô tả khái niệm và mô tả quan hệ, thường

gọi tắt Là khái niệm và quan hệ (phương thức). Một cách trực quan, một khái niệm biểu

diễn một Lớp các đối tượng có chung một số đặc trưng, một quan hệ biểu diễn một quan

hệ hai ngôi giữa các đối tượng hoặc giữa các đối tượng với các giá trị dữ Liệu

⊤ Khái niệm đỉnh

Khái niệm đáy

C Phủ định khái niệm

Page 72: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 53 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

C ⊓ D Giao hai khái niệm

C ⊔ D Hợp hai khái niệm

R.C Lượng từ tồn tại

R.C Lượng từ với mọi

≤nR at- most

≥nR at-Least

R- Nghịch đảo phương thức

Bảng 3.5: Cú pháp của các khái niệm và phương thức trong F-SHIN

Trong đó: C,D Là các khái niệm; R, P Là các phương thức; a, b Là các cá thể; n

[0,1].

3.1.3.1.2. Ngữ nghĩa

Một diễn giải , được ký hiệu Là I Là một cặp (ΔI,.

I) trong đó Δ

I Là một tập khác

rỗng, .I Là một hàm diễn giải nó ánh xạ:

1) Một cá thể a I thành một phần tử aI Δ

I

2) Một khái niệm A thành một hàm thuộc AI: Δ

I : → [0,1]

3) Một phương thức R R thành một hàm thuộc RI : Δ

I x Δ

I → [0,1]

Đối với những khái niệm phức tạp trong Logic mô tả mờ F-SHIN thì diễn giải mờ I

được định nghĩa như sau:

Cú pháp Ngữ nghĩa

T TI(a) =1

I = 0

C (C)I(a) = 1 – C

I(a)

C ⊓ D (C ⊓ D)I(a) = min (C

I(a), D

I(a))

C ⊔ D (C ⊔ D)I (a) = max(C

I(a), D

I(a))

Page 73: Fuzzy Ontology and Fuzzy-OWL(9)

54 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

R.C (R.C)I(a) = sup b Δ

I{min (R

I(a,b), C

I(b)}

R.C (R.C)I(a)= inf b Δ

I{max(1 - R

I(a,b), C

I(b))}

≤nR Inf b1…bp+1 ΔI max

p+1 i =1{1 –R

I(a, bi)}

≥nR subb1…bp+1 ΔI min

p i =1{R

I(a, bi)}

R- (R-)

I(b,a) = R

I(a,b)

Bảng 3.6: Ngữ nghĩa của các khái niệm và phương thức trong F-SHIN

Bảng 3.6 chỉ ra cách hàm diễn giải được mở rộng để đưa Lại ngữ nghĩa cho các khái

niệm trong Logic mô tả mờ F-SHIN.

3.1.3.2. Logic mô tả mờ SHOIN (D)

3.1.3.2.1. Nhắc lại logic mô tả SHOIN (D).

(i) Cú pháp.

SHOIN (D) cho phép suy luận với các loại dữ liệu cụ thể, chẳng hạn như chuỗi và số

nguyên bằng cách sử dụng concrete domains.

Concrete domains: Một concrete domains D là một cặp (D,D), trong đó D là một

miền diễn dịch và D là tập hợp các miền thuộc tính cụ thể d với một định nghĩa trước

arity n và một diễn dịch dD

. Ví dụ, Person ⊓ age. 20 sẽ biểu thị một người có

tuổi lớn hơn hoặc bằng 20.

RBox. Một RBox R bao gồm một tập hữu hạn các tiên đề và các tiên đề có tính bắc

cầu trans(R) và tiên đề bao hàm cụ thể có dạng R ⊑ S và T ⊑ U, ở đây R và S là các vai

trò (phương thức) mang tính trừu tượng, T và U là các vai trò (phương thức) cụ thể. Một

phản xạ bắc cầu (reflexive-transitive) kết thúc vai trò mối quan hệ bao hàm (một mối

quan hệ bao hàm ký hiệu là ⊑). Một vai trò không có vai trò phụ bắc cầu gọi là vai trò

đơn giản.

Khái niệm: Bộ các khái niệm SHOIN(D) được định nghĩa bởi các cú pháp sau đây,

trong đó A là một khái niệm, R và S là một vai trò (phương thức) trừu tượng, Ti là một

vai trò (phương thức) cụ thể, d là miền thuộc tính cụ thể, ai và ci tương ứng là các giá trị

cụ thể, n N:

C T | | A | C1 ⊓ C2 | C1 ⊔ C2 | C | R.C | R.C | ( n S) | ( n S) | {a1, …

, an} | (n T) | (n T) | T1, …, Tn.D | T1, …, Tn.D

Page 74: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 55 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

C D | {c1, … , cn}

Ví dụ, chúng ta có thể có khái niệm:

Flower ⊓ (hasPetalWidth.(20mm ⊓ 40mm)) ⊓ hasColour.Red)

Để biểu thị tập hợp các loại hoa có cánh hoa trong khoảng 20mm đến 40mm và cánh

hoa có màu đỏ. Ở đây 20mm (và 40mm) là một miền cụ thể. Chúng ta có thể sử dụng

(= 1 S) đẻ biểu diễn ( 1 S) ⊓ ( 1 S).

(ii) Ngữ nghĩa.

Một diễn dịch I đối với một miền cụ thể D là một cặp I = (I , .

I) trong đó Δ

I Là một

tập khác rỗng được phân chia từ D, một hàm dịch .I chỉ định cho mỗi C C là một tập

con của ΔI.Với mỗi R Ra là tập con của

I x

I , với mỗi a Ia là mội phần tử trong

I,

với mỗi c Ic là một phần tử trong D, với mỗi T RC là tập con của I x D.

Hàm dịch .I mở rộng cho các khái niệm và vai trò như sau:

⊤I =

I

I =

(C1 ⊓ C

2)

I = C1

I C2

I

(C1 ⊔ C

2)

I = C1

I C2

I

(C)I =

I \ C

I

( )I = {(y, x): (x, y) S

I}

(R.C)I = {x

I : R

I(x) C

I}

(R.C)I = {x

I : R

I(x) C

I # }

( n S)I = {x

I : |S

I(x) n }

( n S)I = {x

I : |S

I(x) n }

{a1, … , an}I = {a1

I, … , an

I}

Bảng3.7 mở rộng các khái niệm trong SHOIN(D)

Và tương tự cho các cấu trúc khác, khi RI (x) = {y: (x, y) R

I} và |X| biểu thị các yếu tố

của tập X. Đặc biệt,

(T1, …, Tn.d)I = { x

I : [Ti

I (x) … Tn

I (x)] d

D # }

Tính hợp lệ. Tính hợp lệ của một tiên đề E trong một diễn dịch I = (I , .

I), ký hiệu I

|= E, được định nghĩa như sau: I |= C ⊑ D nếu CI D

I, I |= R ⊑ S nếu R

I S

I, I |= T ⊑ U

Page 75: Fuzzy Ontology and Fuzzy-OWL(9)

56 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

nếu TI U

I, I |= trans(R) nếu R

I là chuyển tiếp, I |= a:C nếu a

I C

I, I |= (a, b):R nếu (a

I,

bI) R

I, I |= (a, c):T nếu (a

I, c

I) T

I, I |= a b nếu a

I = b

I, I |= a b nếu a

I b

I.

Với một tập tiên đề E, ta nói I thỏa mãn E nếu I thõa mãn mọi phần tử trong E. Nếu I

|= E ta có thể nói I là một mô hình của E. I thỏa mãn một cơ sở tri thức K = (T, R, A), ký

hiệu là I |= K, nếu I là một mô hình cấu thành T ứng với R và A.

Logical consequence (Hệ quả hợp lý). Một tiên đề E là một Logical consequence

của một cơ sở sở tri thức K, ký hiệu là K |= E, nếu mọi thành phần của K đều thỏa mãn

E. Theo [15], sự kế thừa và sắp xếp vấn đề có thể quy về cơ sở tri thức để thỏa mãn vấn

đề.

Ví Dụ 3.1. Chúng ta xem xét một ontology đơn giản sau (TBox T) về Car với RBox rỗng.

Car ⊑ ( maker) ⊓ ( pa enger) ⊓ ( peed)

(= 1 maker) ⊑ Car ⊤ ⊑ maker.Maker

(= 1 passenger) ⊑ Car ⊤ ⊑ passenger.N

(= 1 speed) ⊑ Car ⊤ ⊑ speed.km/h

Roadster ⊑ Cabr olet ⊓ passenger.{2}

Cabriolet ⊑ Car ⊓ topType.SoftTop

Sport Car Car ⊓ peed 245km/h

Trong T, giá trị cho tốc độ được tính bằng giá trị cụ thể kilomet trên giờ (Km/h), trong

khi đó giá trị cho passenger được tính bằng số tự nhiên, Vị ngữ 245km/h là biểu diễn giá trị

lớn hơn hoặc bằng 245km/h.

ABox A chứa các khẳng định sau đây:

Mgb:Roadster ⊓ (maker.{mg}) ⊓ (speed,≤170km/h)

Enzo:Car ⊓ (maker.{ferrari}) ⊓ (speed,≤350km/h)

tt:Car ⊓ (maker.{audi}) ⊓ (speed,≤243km/h)

Xem xét các cơ sở tri thức K = (T, R, A). Dễ dàng xác định được rằng:

K ⊨ Roadster ⊑ Car K ⊨ mg:Maker

K ⊨ enzo:SportsCar K ⊨ tt:SportsCar

Page 76: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 57 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Ví dụ trên minh họa một khó khăn trong việc xác định rõ rang các loại xe thể thao.

Thật vậy, có một nghi vấn đặt ra là tại sao một chiếc xe có tốc độ 243km/h không phải là

một chiếc xe thể thao. Về cơ bản, một chiếc xe có tốc đô càng cao càng có khả năng là

một chiếc xe thể thao, vì vậy chúng ta phải làm mờ khái niệm về xe thể thao thay vì làm

rõ chúng. Trong phần tiếp theo chúng ta sẽ thấy làm thế nào để làm cho các khái niệm

thích hợp hơn.

3.1.3.2.2. logic mô tả mờ SHOIN (D).

Tập mờ đã được giới thiệu bởi Zadeh [34] đây là một cách để giải quyết các khái

niệm mờ, không rõ rang ví dụ như áp suất thấp, tốc độ cao. Chính thức, một tập mờ A đối

với một tập X đặc trưng bởi hàm thuộc A : X [0, 1], quy cho một độ thuộc A, A(x),

vói mỗi phần tử x nằm trong X. A(x) cho chúng ta một ước lượng về độ thuộc của x vói

A. Cụ thể, nếu A(x) = 1 thì x chắc chắn thuộc A, nếu A(x) = 0,8 thì x “có khả năng là“

một phần tử của A.

(i) Cú pháp fuzzy SHOIN(D)

Chúng ta đã biết rằng SHOIN (D) cho phép suy luận với các loại dữ liệu cụ thể, chẳng

hạn như các chuỗi và số nguyên bằng cách sử dụng cái gọi là concrete domains. Trong

phương pháp mờ hóa của chúng ta, concrete domains có thể dựa trên các tập mờ là tốt

nhất.

Concrete fuzzy domain. Một Concrete fuzzy domain là một cặp (D,D), trong đó D

là một miền diễn dịch và D là tập hợp các miền thuộc tính cụ thể d với một định nghĩa

trước arity n và một diễn dịch dD :

[0, 1], đó là một quan hệ mờ n-ary trên D.

Ví dụ, đối với SHOIN(D), các vị từ 18 có thể là một thuộc tính rõ trên tập số tự

nhiên, biểu thị tập hợp các số nguyên nhỏ hơn hoặc bằng 18 tức là 18 : Natural [0, 1]

( ) { nế nế

Như vậy, Minor = Person ⊓ age.18 (1), định nghĩa một người có tuổi nhỏ hơn hoặc

bằng 18, tức là nó định nghĩa một trẻ vị thành niên.

Mặt khác, về việc không xác định rõ rõ nét phạm vi thuộc tính mờ, chúng ta nhớ lại rằng

trong lý thuyết tập mờ và thực tiễn có nhiều hàm thuộc của tập mờ định rõ thành phần.

Tuy nhiên, chúng ta có Trapezoidal function, Triangular function; L-function , R-function

Page 77: Fuzzy Ontology and Fuzzy-OWL(9)

58 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

rất đơn giản và thường xuyên được sử dụng để xác định đô thuộc. các function trên xác

định trên tập số thực không âm R+ {0}.

Hình 3.2. (a) Trapezoidal function; (b) Triangular function; (c) L-function; (d) R-

function

Trapezoidal function – trz (x, a, b, c, d) được định nghĩa như sau:

Cho a < b c < d là số hữu tỉ thì khi đó (xem hình 1)

( )

{

ế ( ) ( ) ế , -

ế , -

( ) ( ) ế ,c d-

ế

Triangular function – tri(x; a, b, c) được định nghĩa:

( )

{

ế ( ) ( ) ế , -

( ) ( ) ế ,b c-

ế

Lưu ý: tri(x; a, b, c) = trz(x; a, b, b, c).

L-function được định nghĩa là:

Page 78: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 59 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

( ) { ế ( ) ( ) ế , -

ế

Cuối cùng, R-function được định nghĩa là:

( ) { ế ( ) ( ) ế , -

ế

Sử dụng các function này chúng ta có thể xác định, ví dụ: Young:Natural [0, 1] là

một thuộc tính mờ trên tập số tự nhiên biểu thị mức độ “trẻ” của tuổi người. Cụ thể thuộc

tính mờ “Young” được định nghĩa là:

Young(x) = L(x; 10; 30).

Như vậy: YoungPerson = Person ⊓ age.Young (2), để biểu thị một người trẻ tuổi.

Modifiers(bổ nghĩa). Chúng ta có thể sử dụng fuzzy modifiers (bỗ nghĩa mờ) cho các

tập mờ để thay đổi hàm thuộc của chúng. Cụ thể, một modifier (bổ nghĩa) là một hàm fm:

[0, 1] [1, 0]. Ví dụ, chúng ta có thể định nghĩa very(x) = x3, trong khi định nghĩa

slightly(x) = √ . Ví dụ, chúng ta có thể định nghĩa khái niệm xe thể thao như sau.

SportsCar = Car ⊓ speed.very( High ), (3)

ở đây, very là một khái niệm modifier (bổ nghĩa), với hàm thuộc very(x) = x2

và High là

một thuộc tính mờ cụ thể được định nghĩa là

High(x) = R(x; 80, 250)

Tương tự chúng ta có thể phát biểu định nghĩa “Calla is a very large, long white

flower on thick stalks” như sau.

Calla = Flower ⊓ (haSize.very(lage)) ⊓ (hasPetalWith.Long)

⊓ (hasColour.White) ⊓ (hasStalks.Thick)

Ở đây, Large, Long và Thick là các thuộc tính mờ.

Tóm lại, cú pháp của fuzzy SHOIN(D) như sau:

C ⊤ | | A | C1 ⊓ C2 | C1 ⊔ C2 | C | R.C | R.C | ( n S) | ( n S) | {a1, … ,

an} | (n T) | (n T) | T1, …, Tn.D | T1, …, Tn.D

C D | {c1, … , cn}

Page 79: Fuzzy Ontology and Fuzzy-OWL(9)

60 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

RBox mờ (Fuzzy RBox). Một RBox mờ R là một tập hợp hữu hạn các tiên đề có

tính bắc cầu (transitivity) trans(R) của SHOIN(D) và các vai trò mờ tiên đề bao hàm

(fuzzy role inclusion axioms) dạng ( n), ( n), ( > n) và ( < n), ở đây đóng vai

trò là một tiên đề bao hàm (role inclusion axioms) SHOIN(D).

TBox mờ (Fuzzy TBox) một TBox mờ T bao gồm một tập hữu hạn các khái niệm mờ

tiên đề bao hàm (fuzzy concept inclusion Axioms) có dạng ( n), ( n), ( > n) và

( < n) ở đây là một khái niệm tiên đề bao hàm SHOIN(D).

ABox mờ (Fuzzy ABox) một ABox mờ A bao gồm một hữu hạn các khái niệm mờ và

các vai trò mờ tiên đề khẳng định (fuzzy role assertion axioms) có dạng ( n), ( n),

( > n) hoặc ( < n) ở đây là một khái niệm hoặc khẳng định (role assertion)

SHOIN(D). Đối với các trường hợp giòn/rõ (crisp). A cũng có thể chứa một tập hợp hữu

hạn các cá thể của một tiên đề bình đẳng a b và a b tương ứng.

Ví dụ, (a:C 0.1), ((a, b):R 0.3), (R ⊑ S 0.4), hoặc (C ⊑ D 0.6) là tiên đề mờ. từ

quan điểm ngữ nghĩa, một tiên đề mờ ( n) ép giá trị của nhỏ hơn hoặc bằng n

(tương tự cho , >, <). Hệ quả, ta có mô tả khái niệm:

(Jim:YoungPerson 0.2)

Tức là, (Jim:Person ⊓ age.Young 0.2), miêu tả Jim là một YoungPerson với mức

độ ít nhấp là 0.2.

Mặt khác, một khái niệm mờ có tiên đề dạng: (C ⊑ D n). Biểu thị rằng mức độ gộp

vào giữa C và D ít nhất là n.

Cơ sở tri thức mờ. một cơ sở tri thức mờ SHOIN(D) K = (T, R, A) gồm có một TBox

mờ T, RBox mờ R và ABox mờ A.

(ii) Ngữ nghĩa fuzzy SHOIN(D)

Diễn dịch mờ. Một diễn dịch mờ I đối với một miền cụ thể D là một cặp I = (I, .

I)

trong đó I là một tập khác rỗng được tách ta từ D, và .

I là một hàm diễn giải (diễn dịch)

mờ nó quy cho:

Mỗi khái niệm trừu tượng (abstract concept) C C là một hàm CI:

I [0, 1];

Mỗi vai trò trừu tượng R Ra là một hàm RI:

I

I [0, 1];

Page 80: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 61 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Mỗi vai trò chức năng trừu tượng (hàm thuộc) R Ra là một hàm cục bộ (một bộ

phận) RI:

I

I [0, 1],như vậy với mọi x

I có duy nhất y

I được định

nghĩa trong RI (x, y)

Mỗi trừu tượng riêng biệt (abstract individual) a Ia là một bộ phận trong I;

Mỗi giá trị cụ thể c Ic là một bộ phận trong I;

Mỗi vai trò cụ thể T Rc là một hàm RI: :

I D [0, 1];

Mỗi vai trò chức năng cụ thể T Rc là một phần chức năng tI:

I D [0, 1], như

vậy với mọi x I có duy nhất v D được định nghĩa trong T

I(x, v);

Mỗi bổ nghĩa (modifier) m M là một hàm fm: [0, 1] [0, 1];

Mỗi n-ary cố định (concrete) thuộc tính mờ d trong mối quan hệ mờ dD:

[0,

1].

Hàm diễn dịch .I mở rộng cho các khái niệm và vai trò như sau (ở đây x, y

I, v

D) :

⊤I (x) = 1

⊥I (x) = 0

(C1 ⊓ C2)I (x) =

(x) (x)

(C1 ⊔ C2)I (x) =

(x) (x)

(C)I (x) = C

I (x)

(m(C))I (x) = fm(C

I (x))

(R.C)I (x) = nf ∈ R

I (x, y) → C

I (y)

(R.C)I (x) p ∈ R

I (x, y) C

I (y)

(≥ n S)I (x) = p* +

| * +|

S

I (x, yi)

(≤ n S)I (x) = (≥ n + 1 S)

I (x)

{a1,…, an}I (x) =

aiI = x

d (v) = dD(v)

{c1,…, cn}I (x) =

ciI = v

(T1,…, Tn.D)I (x) = nf ∈

(

(x, yi)) → DI(y1,…, yn)

(T1,…, Tn.D)I (x) = p ∈

(

(x, yi)) → DI(y1,…, yn)

( )I (x) = S

I (y, x)

Một điểm đáng quan tâm của ngữ nghĩa giới hạn giá trị ( n), ngữ nghĩa của khái

niệm ( n S):

Page 81: Fuzzy Ontology and Fuzzy-OWL(9)

62 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

(≥ n S)I (x) = p* +

| * +|

S

I (x, yi)

Là kết quả của sự xem xét ( n S) có được từ công thức:

⋀ ( )

Nói cách khác, có ít nhất n phần tử riêng biệt đáp ứng mức độ (degree) S(x, yi) nào

đó. Điều này đảm bảo rằng S.T ( 1 S). Ngữ nghĩa của ( n S) được định nghĩa như

vậy để đảm bảo quan hệ cổ điển ( n S) ( n + 1 S).

Một định nghĩa thay thế cho (≥ n S) và (≤ n S) có thể dựa trên cấu trúc vô hướng của

các yếu tố của một tập mờ.

Sau cùng, diễn dịch .I mở rộng cho các tiên đề không mờ (non-fuzzy axioms) được

quy định trong bảng sau (ở đây a,b Ia):

(R ⊑ S)I = nf ∈ R

I (x, y) → S

I (x, y)

(T ⊑ U)I = nf ∈ T

I (x, y) → U

I (x, y)

(C ⊑ D)I = nf ∈ C

I (x) → D

I (x)

(a:C)I = C

I (a

I)

((a,b):R)I = R

I (a

I, b

I).

Lưu ý, ở đây khái niệm của tiên đề bao hàm C ⊑ D dựa vào khái niệm được suy luận

trực tiếp từ FOL (First Oder Logic), có dạng x.FC(x) → FD(x). Định nghĩa này mới lạ

và rõ rang là khác với phương pháp tiếp cận trong đó C ⊑ D được xem như là x.C(x) ≤

D(x). Cách tiếp cận này nhằm mục đích sắp xếp các quan hệ thành một quan hệ cổ điển

{0, 1}.

Tính thực hiện đƣợc (Satisfiability), khái niệm tính thực hiện được của tiên đề E qua

diễn dịch mờ I , ký hiệu I |= E, được định nghĩa như sau: I |= trans(R), nếu x,y I.R

I

(x, y) = RI (x, z) R

I (z, y). I |= ( ≥ n), ở đây là một (inclusion) bao hàm cụ

thể hoặc khái niệm tiên đề bao hàm, nếu I n. Tương tự, đối với các quan hệ khác ≤, <

và >. I |= ( ≥ n), ở đây là một khái niệm hoặc một khẳng định của tiên đề nếu I ≥ n.

Tương tự, đối với các quan hệ khác ≤, <. >. Cuối cùng, I |= a b nếu aI = b

I và I |= a

b nếu aI b

I.

Page 82: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 63 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Đối với một tập tiên đề E, ta nói I thỏa mãn E nếu I thõa mãn mọi phần tử trong E.

Nếu I |= E ta có thể nói I là một mô hình của E. I thỏa mãn một cơ sở tri thức K = (T, R,

A), ký hiệu là I |= K, nếu I là một mô hình cấu thành T ứng với R và A.

Logical consequence (Hệ quả hợp lý). Một tiên đề E là một Logical consequence

của một cơ sở sở tri thức K, ký hiệu là K |= E, nếu mọi thành phần của K đều thỏa mãn

E.

Điểm thú vị theo ngữ nghĩa này là, bằng cách tham khảo ví dụ 1, ở một mức độ nhất

định chúng ta sẽ có tt là một sport car. Vì vậy không giống trong ví dụ 1, tt có khả năng là

một chiếc xe thể thao . Hai ví dụ sau sẽ làm rõ những vấn đề này.

Ví dụ 3.2: Chúng ta thấy ở ví dụ 1, các tiên đề của ABox và TBox được khẳng định

với mức độ là 1, tức là có dạng ( ≥ 1). Chúng ta có thể thay đổi các định nghĩa của

SportsCar theo định nghĩa (3) . Chúng ta sẽ có:

K |= (SportsCar ⊑ Car ≥ 1)

K |= (enzo:SportsCar ≥ 1)

K |= (mgb:SportsCar ≤ 0.25)

K |= (tt:SportsCar ≥ 0,82).

Lưu ý là thế nào để quy tốc độ của xe mbp (≤170km/h) vào một giới hạn của độ thuộc,

trong ví dụ trên là 0.25.

Ví dụ 3.3. Xem xét các cơ sở tri thức K với định nghĩa (1) và (2). Sau đó, theo

Lukasiewicz logic chúng ta có:

K |= (Minor ⊑ YoungPerson ≥ 0.2)

Đó là một quan hệ không bị ràng buộc bởi SHOIN(D) cổ điễn.

3.1.3.2.3. Logic mô tả mờ SROIQ.

Trong phần này chúng ta nhớ lại định nghĩa của fuzzy SROIQ [6], với mở rộng

SROIQ đến trường hợp mờ bằng cách cho phép biểu thị những khái niệm tập mờ của cá

thể và vai trò mờ biểu thị mối quan hệ nhị phân. Tiên đề cũng được mở rộng cho các

trường hợp mờ …. Chúng tôi định nghĩa mức độ các giá trị là một số hữu tỉ dạng [0,

1], [0, 1] và [0, 1]. Hơn nữa, chúng tôi định nghĩa tập bất đẳng thức ⋈ {≥, <,

≤, >}, ⊳ {≥, <}, ⊲ {≤, >}. Đối với mỗi toán tử ⋈, chúng tôi định nghĩa toán tử đối

Page 83: Fuzzy Ontology and Fuzzy-OWL(9)

64 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

xứng ⋈ như sau = ≤, = <, = ≥, = >; toán tử phủ định ⋈ được định

nghĩa như sau ≥ = <, > = ≤, ≤ = >, < = ≥.

Cú pháp. Trong fuzzy SROIQ chúng tôi có 3 chữ cái ký hiệu đó là khái niệm (C), vai

trò (R), và cá thể (I). Tập các vai trò được xác định bởi RA ∪ U ∪ { |R RA}, trong đó

RA R, U là vai trò tổng quát và là nghịch đảo của R. Cho A C, R, S R (ở đây S

là một vai trò đơn giản [7]), oi I cho I ≤ i ≤ m, m ≥ 1, n ≥ 0. Khái niệm mờ được định

nghĩa tổng quát như sau: C,D → ⊤ | ⊥ | A | C ⊓ D | C ⊔ D | C | R.C | R.C | {α1/o1, …

, αm/om } | ( ≥ m S.C) | (≤ n S.C) | S.Setf. với a,b I. Các tiên đề trong một cơ sở tri thức

mờ K được nhóm lại trong một ABox mờ A, một TBox mờ T, và một RBox mờ R1

như

sau:

ABox

Khái niệm a:C ≥ α, a:C > β, a:C ≤ β, a:C < α

vai trò (a, b):R ≥ α, (a, b) : R > β, (a, b) : R ≤ β, (a, b) : R < α

Bất đẳng thức a = b

Đẳng thức a = b

TBox

Fuzzy GCI C ⊑ D ≥ α, C ⊑ D ≥ β

Khái niệm trương đuong C D, tương đương với {C ⊑ D ≥ 1, D ⊑ C ≥ 1}

RBox

Fuzzy RIA R1, R2,…, Rn ⊑ R ≥ α, R1, R2,…, Rn ⊑ R ≥ β

Vai trò có tính bắc cầu trans(R)

Vai trò phân chia (rời rạc) dis(S1,S2)

Vai trò có tính phản xạ ref(R)

Vai trò không có tính phản xạ irr(S)

Vai trò có tính đối xứng sym(R)

Vai trò không có tính đối xứng asy(S)

Bảng 3.8 ABox, TBox và RBox trong SROIQ.

Ngữ nghĩa: Một diễn dịch mờ I là một cặp (I, .

I) trong đó

I là một tập khác rỗng và

.I là một diễn dịch mờ nó ánh xạ:

Mỗi cá thể a thành một phần tử aI của

I;

Page 84: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 65 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Mỗi khái niệm C thành hàm CI :

I → [0, 1];

Mỗi vai trò R thành hàm RI :

I

I → [0, 1];

CI (hoặc R

I) biểu thị hàm thuộc của khái niệm mờ C

I (hoặc vai trò mờ R) đối với I.

CI(x) (hoặc R

I(x, y)) cho cúng ta mức độ của cá thể x - một phần tử của khái niệm mờ C

(hoặc (x, y) – một phần tử của vai trò mờ R) theo diễn dịch mờ I. Cho một t-norm , t-

conorm , phép nghịch đảo ⊖ và phép kéo theo ⟹[8], giải thích được mở rộng cho các

khái niệm phức tạp và vai trò như sau:

⊤I (x) = 1

⊥I (x) = 0

(C ⊓ D) I

(x) = CI (x) D

I (x)

(C ⊔ D) I

(x) = CI (x) D

I (x)

(C)I (x) = ⊖C

I (x)

(R.C)I = nf ∈ {R

I (x, y) ⟹ C

I(y)}

(R.C)I = p ∈ {R

I (x, y) ⟹ C

I(y)}

{α1/o1,…, αm/om }I (x) = p |

αi

(≥ m S.C)I (x) = p ∈ [(

{S

I (x, yi) C

I (yi)}) (j<k {yj yk})]

(≤ n S.C)I (x) = nf ∈ [(

{S

I (x, yi) C

I (yi)}) ⟹ (j<k {yj = yk})]

(S.Sel f )I (x) = S

I (x, x)

( )I (x, y) = R

I (y, x)

UI(x, y) = 1

Bảng 3.9 Mở rộng các khái niệm trong SROIQ.

Ví dụ, SROIQ Z áp dụng Zadeh logic Zadeh: giá trị nhỏ nhất t-norm (α β = min {α,

β}), giá trị lớn nhất t-conorm (α β = max {α, β}), phép nghịch đảo Lukasiewicz (⊖α =

1 - α) và phép kéo theo Kleene-Dienes (α ⟹ β = max {1- α, β}). SROIQ G áp dụng

Godel logic: giá trị nhỏ nhất t-norm (α β = min {α, β}), giá trị lớn nhất t-conorm (α

β = max {α, β}), phép nghịch đảo Godel (⊖α = 1 nếu α = 0, và bằng 0 nếu α 0), phép

kéo theo Godel (α ⟹ β = 1 nếu α ≤ β) [8].

Một diễn dịch mờ I thỏa mãn (là một mô hình của):

- a : C ⋈ γ khi và chỉ khi CI (a

I) ⋈ γ.

- (a, b) : R ⋈ γ khi và chỉ khi RI (a

I, b

I) ⋈ γ.

- a b khi và chỉ khi aI b

I ,

- a = b khi và chỉ khi aI = b

I ,

Page 85: Fuzzy Ontology and Fuzzy-OWL(9)

66 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

- C ⊑ D ⊳ γ khi và chỉ khi nf ∈ {CI (x) ⟹ D

I (x)} ⊳ γ

- R1 … Rn ⊑ R ⊳ γ khi và chỉ khi p ∈

[ (x1, y2),…,

(xn, yn+1)]

⟹ RI (x1 xn+1) ⊳ γ

- trans(R) khi và chỉ khi x, y I , R

I (x, y) ≥ p ∈ R

I (x, z) R

I (z, y),

- dis(S1, S2) khi và chỉ khi x, y I ,

(x, y) = 0 hoặc (x, y),

- ref (R) khi và chỉ khi x I, R

I(x, x) = 1,

- irr(S) khi và chỉ khi x I, S

I(x, x) = 0,

- sym(R) khi và chỉ khi x, y I, R

I(x, y) = R

I(y, x),

- asy(S) khi và chỉ khi x, y I, nếu S

I (x, y) > 0 thì S

I (y, x) = 0,

- một cở sở tri thức mờ K = A, T, R khi và chỉ khi nó thõa mãn mỗi yếu tố trong A,

T và R.

3.2 OntoLogy mờ

3.2.1. Nhắc lại định nghĩa ontology.

Đị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

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.

Page 86: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 67 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

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ềunhiề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.

3.2.2. Định nghĩa ontology mờ.

3.2.2.1. Định nghĩa 1.

(i) Miền ontology:

Một miền ontology được định nghĩa là một tập các khái niệm. Mối quan hệ giữa các

khái niệm mô tả nhiều mục tiêu. Có 4 lớp, bao gồm lớp miền, lớp phạm trù, lớp sự kiện,

lớp đối tượng, định nghĩa trong một miền ontology. Lớp miền miêu tả tên miền của một

ontology và bao gồm nhiều phạm trù khác nhau được định nghĩa bởi miền chuyên gia.

Mỗi phạm trù bao gồm tập các sự kiện được lấy từ miền chuyên gia. Mỗi sự kiện bao

gồm những khái niệm khác nhau của lớp đối tượng. Trong lớp đối tượng, mỗi khái niệm

bao hàm tên khái niệm, tập các thuộc tính, và tập hợp các thao tác cho một miền ứng

dụng. Có 3 loại quan hệ , bao gồm generalization , aggregation, và association, trong

một miền ontology. Mối quan hệ giữa một miền và phạm trù tương ứng với nó là

generalization đại diện “một loại của” quan hệ. Quan hệ giữa mỗi phạm trù và những sự

kiện tương ứng với nó là aggregation. Aggregation có nghĩa là “một phần của” quan hệ.

Association đại diện cho một quan hệ ngữ nghĩa giữa nhũng khái niệm trong lớp đối

tượng.

(ii) Ontology mờ :

Một Ontology mờ là một mở rộng của miền ontology với những khái niệm mờ và

quan hệ mờ. Hình 1 biểu diễn cấu trúc của một ontology mờ.

Page 87: Fuzzy Ontology and Fuzzy-OWL(9)

68 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Hình 3.3 Cấu trúc của một ontology mờ.

3.2.2.2. Định nghĩa 2.

(i) Miền ontology mờ:

Một miền ontology mờ là một bộ 4 OF(C , Pf , Rf , Af). Trong đó:

C là tập các khái niệm. Mỗi một khái niệm ở đây có một vài thuộc tính có ý nghĩa

là khái niệm mờ hoặc tập mờ.

Pf là tập các thuộc tính. Một tính chất được định nghĩa như một bộ 5 của PF(c,vF

,qf , f, U), trong đó c C là một khái niệm ontology, vf là giá trị của thuộc tính ,

qf mô hình ngôn ngữ kiểm tra (models linguistic qualifiers), nó có thể kiểm soát

hay thay đổi giá trị thuộc tính vf , f là những mặt giới hạn trên vf , và U là hệ thống

biện luận. Cả vf và qf là những khái niệm mờ về U, nhưng qf làm thay đổi mức độ

mờ của vf.

Rf là một tập hợp các “liên khái niệm”( inter-concept) quan hệ các những khái

niệm. Giống như khái niệm mờ, rf Rf được định nghĩa như một bộ 5 của rf (c1,

c2, t, sf, U) trong đó, c1, c2 ∈ C là những khái niêm ontology , t miêu tả loại quan

hệ, U là toàn bộ biện luận, và sf là mô hình mức độ quan hệ (models relation

strenths) và là khái niệm mờ theo U, nó có thể biểu diễn mức độ quan hệ giữa các

cặp khái niệm.

Af là một tập các luật mờ. Trong hệ mờ thì những tập luật mờ được sử dụng như

là những cơ sở tri thức. Miền ontology mờ dùng mô hình miền tri thức chuyên gia.

Nhưng, do thiếu những quan hệ giữa những khái niệm mờ nên khó khăn cho việc

tích hợp một hệ thống ontology đa dạng và thống nhất

Page 88: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 69 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

(ii) Biến ngôn ngữ mờ.

Biến ngôn ngữ mờ là một biến mà giá trị là một thuật ngữ hay là một khái niệm trong

ngôn ngữ tự nhiên. Một biến ngôn ngữ mờ là một bộ 4 (X,T,M,U) trong đó:

X là tên của biến ngôn ngữ, ví dụ “price” hoặc “speed”.

T là một tập các giá trị của biến ngôn ngữ, ví dụ T = {cheap, appropriate,

expensive, .... } hoặc T = {fast, middle, slow, ....}.

M là sự sắp xếp các quy luật nhằm sắp xếp mỗi số hạng của T để tập mờ theo U.

U là toàn bộ các biện luận. Giới thiệu các quan hệ ngữ nghĩa giữa những khái

niệm chúng ta nhận được từ mô hình ontology.

(iii) biến ngôn ngữ ontology mờ (Fuzzy linguistic variable ontology).

Một fuzzy linguistic variable ontology là một bộ 5 Of = (ca, Cf , R, F, U ) trong đó:

ca là một khái niệm về một mức độ trừu tượng , ví dụ “price”, “speed”,

Cf là một tập những khái niệm mờ mô tả tất cả giá trị của ca .

R = {r | r ⊆ CF × CF} là một tập hợp những quan hệ hai ngôi giữa những khái

niệm trong C F . Một loại qian hệ là tập hợp các quan hệ RS = {inclusion (hợp),

intersection (giao), disjointness (tách rời), complement (nghịch đảo)}, và những

quan hệ khác như là quan hệ thứ tự và quan hệ tương đương R0 = {≤, ≥, =}. Cf và

một quan hệ thứ tự r bao gồm cấu trúc có thứ tự <Cf, r>.

F là một tập của những hàm thuộc theo U , đẳng cấu với Cf .

U là tất cả các biện luận.

(iv) Mở rộng ontology mờ (Extended fuzzy ontology):

Một extended fuzzy ontology là một bộ 7 Of = (ca, CF, R, F, Q, O, U), trong đó:

ca ,CF , R , F, U được giải thích giống như định nghĩa (iii)

Q là một tập các ngôn ngữ kiểm tra (linguistic qualifiers), ví dụ Q = {very, little,

close to, ….}. Môt biến kiểm tra/từ hạn định (qualifier) q Q và một khái niệm

mờ F, CF C giải quyết sự hợp thành khái niệm mờ có thể là giá trị của ca, ví dụ

“very cheap”.

là một tập các toán tử mờ theo U, đẳng cấu với Q.

(v) Cơ sở ontology mờ (Basic fuzzy ontology).

Một basic fuzzy ontology là một bộ 4 OF = (ca, CF , F, U), trong đó: ca, CF , F, U được

giải thích giống như trong định nghĩa (iii), nó đáp ứng những điều kiện sau :

Cf = {c1, c2, …, cn} là một tập hợp giới hạn.

Page 89: Fuzzy Ontology and Fuzzy-OWL(9)

70 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Tập hợp chỉ có duy nhất một quan hệ disjointness (tính rời nhau – rời rạc), tồn tại

trong CF và CF hoàn toàn theo U, theo một ngữ nghĩa, CF là một phân vùng mờ của

U,

CF có một quan hệ thứ tự ≤, và CF, ≤ là một tập thứ tự đầy đủ , ví dụ tất cả những

khái niệm trong CF tạo thành một chuỗi n c1 ≤ c2 ≤…..≤ cn .

F là phần tử tùy chọn của ontology.

Một ví dụ về basic fuzzy ontology là OF = (ca = price of fruit , CF = {very cheap ,

cheap , appropriate , expensive , very expensive}, U = [0,100]).

Hình 3.4 Ba lớp cấu trúc ontology.

3.2.2.3. Định nghĩa 3.

Một miền ontology mờ là một bộ 5 OF = (C, PC, R, P

R, AF ), Trong đó:

C là một tập những khái niệm. Một khái niệm thường được xem như là một lớp

trong ontology. Mỗi khái nệm ở đây có một vài thuộc tính mà giá trị của nó là một

khái niệm mờ hay một tập mờ.

PC

là một tập hợp các thuộc tính/tính chất khái niệm.

R là tập hợp những liên–khái niệm (inter-concept) quan hệ giữa các khái niệm .

Loại quan hệ này không chỉ là quan hệ nhị phân thông thường r C × C, mà còn

Page 90: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 71 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

là một quan hệ mờ và intuitionistic fuzzy(chủ nghĩa trực giác mờ) mối quan hệ

(relation) từ C đến C.

PR là tập những thuộc tính của quan hệ .

AF là tập những luật mờ . Trong một hệ thống mờ thì tập những luật mờ được

dùng như là cơ sở tri thức .

3.2.2.4. Định nghĩa 4.

Một ontology mờ được định nghĩa như Là một bộ 5 OF = {I,C,R,F,A} trong đó:

I Là tập hợp các cá thể hay được được gọi Là các trường hợp của các khái niệm.

C Là tập hợp các khái niệm, với mỗi khái niệm CC Là một tập hợp trên miền

thông quan các trường hợp của C : I → [0,1]. Tập hợp các thực thể này sẽ được chỉ

rõ bởi E với E = C I.

R Là tập các quan hệ với mỗi RR là một quan hệ mờ n-ary trên miền của các

thực thể, R : En →[0,1]. Một phương thức đặc biệt dùng để phân Loại quan hệ T :

E2 → [0,1], nó được định nghĩa trên quan hệ gộp mờ giữa các thực thể.

F Là tập các quan hệ mờ trên tập các thực thể E và một miền đặc biệt chứa trong D

= {integer, string,….} cụ thể Là các hàm n-ary như Là một phần tử F F Là một

quan hệ F : E(n-1)

x P → [0,1] trong đó P D.

A Là một tập hợp của các tiên đề được diễn tả bởi một ngôn ngữ Logic nhằm đảm

bảo tính chính xác, có ý nghĩa của các khái niệm, cá thể, các quan hệ và các hàm

trong ontoLogy mờ.

3.2.2.5. Định nghĩa 5.

Một ontology mờ là một mở rộng ontology với những giá trị mờ liên hệ qua lại giữa 2

công thức g : (Concepts Instances) × (Properties Pro_val) → [0; 1] và h: Concepts

Instances → [0; 1].

3.2.2.6. Định nghia 6.

Một Ontology mờ OF là một bộ 4 OF = (C , PF , RF , M), trong đó:

C là một tập các khái niệm định nghĩa cho một miền.

PF là một tập các thuộc tính khái niệm mờ. Một thuộc tính p P được định nghĩa

như một bộ 4 pf (c, vf , qf , f ), trong đó c C là một khái niệm ontology, „vf‟ biểu

diễn giá trị thuộc tính mờ và có thể là fuzzy numbers (giá trị mờ) hoặc fuzzy

quantifiers (lượng từ mờ), „qf‟ là mô hình thuộc ngôn ngữ kiểm tra (models

linguistic qualifiers) và là hedges, nó có thể kiểm soát hoặc thay đổi cường độ của

một thuộc tính giá trị và f là mặt giới hạn trên vf.

Page 91: Fuzzy Ontology and Fuzzy-OWL(9)

72 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

RF là môt tập “liên khái niệm mờ” (fuzzy inter-concept) quan hệ giữa các khái

niệm. Giống như những khái niệm thuộc tính mờ, RF được định nghĩa như một bộ

4 RF (ci , cj , t , qf ) , trong đó ci, cj C là những khái niệm ontology, „t‟ biểu diễn

loại quan hệ, và „qf‟ mô hình quan hệ cường độ và là biến ngôn ngữ, nó có thể

biểu diễn cường độ/mức độ liên kết giữa cặp khái ci , cj.

Sự lựa chọn fuzzy numbers(giá trị mờ) hoặc fuzzy quantifiers(lượng từ mờ) cho các

giá trị được quyết định bởi tính chất của các thuộc tính cơ bản và đó cũng có thể là

những mặt hạn chế của nó.

3.2.2.7. Định nghĩa 7.

Các ontology mờ dựa trên các khái niệm mà mỗi mục, mỗi thành phần hoặc đối tượng

có quan hệ với mọi mục, thành phần (hoặc đối tượng) khác trong ontology, với một mức

độ mờ được xác định dựa trên Fuzzy Logic đã được giới thiệu bởi Zadeh (1965). Mức độ

mờ của hàm thành viên được ký hiệu là µ, tượng trưng cho độ mờ, độ mạnh yếu trong

các quan hệ hoặc giữa các khái niệm với nhau. Trong đó 0 < µ < 1, và µ tương ứng với

một hàm quan hệ mờ như “strongly” (mạnh mẽ), “partially” (một phần), “somewhat”

(hơi), “slightly” (nhẹ).

Trong đó n là số quan hệ cụ thể của 1 đối tượng, n = (N – 1), với N là tổng số các đối

tượng trong ontology. Theo đó, mỗi mục được dùng trong hệ thống có giá trị các quan hệ

thành phần bằng với tổng các giá trị của mỗi quan hệ thành viên. Quy luật này không

phải là giao hoán trong mối quan hệ giữa hai đối tượng, A, B:

µAB > µBA hoặc µAB < µBA hoặc µAB = µBA tất cả đều có thể xảy ra. Để đơn giản, nó

được giả định chỉ có một loại mối quan hệ giữa các đối tượng A và B. Để đơn giản hơn

nữa,với mỗi giá trị thành viên cho một quan hệ có nguồn gốc từ A, giá trị thành viên

được viết là μB đúng đắn hơn μAB. Giá trị tổng thể là 1 được sử dụng để ngăn chặn các

đối tượng có số lượng lớn các quan hệ có ảnh hưởng lớn hơn trong một quá trình tìm

kiếm hơn so với những đối tượng có số lượng mối quan hệ tương đối nhỏ.

Page 92: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 73 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Hãy xem xét một truy vấn với hai mục A và B. Nếu A chỉ có 2 mối quan hệ, với μ1 =

0,7 và μ2 = 0,6 thì Σ = 1,3. Tuy nhiên nếu B có 6 quan hệ, μ1 = 0,7 và μ2 = 0,5, μ3 = 0,7,

μ4 = 0,6, 5 = 0,7 và μ6 = 0,6 thì Σ = 3,8. Điều này không có vấn đề gì nếu A và B chỉ là

các yếu tố có trong truy vấn và cả hai đều cần thiết, nhưng nếu có một danh sách các mục

thì tất cả chúng dường như không rút trích được các tài liệu cần thiết do đó sẽ có một xu

hướng chọn B là một phần của câu truy vấn cuối cùng chứ không phải là A và vì thế có

một sự thiên vị xảy ra và sẽ có xu hướng mở rộng thông qua các mục liên quan đến B. Rõ

ràng lý lẽ này có thể được đảo ngược, vì vậy những mối quan hệ của A có thể được xem

như là có một giá trị thành viên quá cao, Nhưng trong một ontology được thiết kế tốt thì

những mối quan hệ của các mục liên kết rất chặt với nhau và sẽ có đầy đủ ý nghĩa riêng

biệt có liên quan nhưng chúng ta không cần tới. Thực tế, nếu một giá trị ngưỡng của μ

được sử dụng thì số lượng lớn các quan hệ sẽ không đủ điều kiện và những câu truy vấn

quá rộng sẽ không xảy ra.

Điều này có nghĩa là không có một ánh xạ nhất định nào giữa độ mạnh yếu của một

quan hệ trong từ ngữ và giá trị của thành viên, nhưng đối với từng đối tượng, mối quan

hệ mạnh nhất sẽ có giá trị thành viên cao nhất.

Một ví dụ, hình 3.5, cho thấy điều này rõ ràng hơn, μ của mỗi thành viên đại diện cho

giá trị của mối quan hệ từ “apple” đến “tree”, “fruit” và “computer company”. Mối quan

hệ khác không được hiển thị, như giữa iPod và Pippin, được giả định có một μ = 0, các

mối quan hệ trực tiếp tới "Apple" không có giá trị μ hiển thị rõ ràng.

Hình 3.5 sơ đồ một fuzzy ontology

Page 93: Fuzzy Ontology and Fuzzy-OWL(9)

74 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

“Apple” có thể là một sản phẩm của “tree” (để phân biệt một cây táo với loại cây

khác), nó có thể là một quả (nếu truy vấn liên quan đến phân biệt giữa trái cây, cho chiếc

bánh táo Ví dụ, chiếc bánh anh đào) hoặc một công ty máy tính. Các ontology mờ giá trị

hiệu lực cho từng khả năng của các thành viên; phụ thuộc vào một quan hệ cụ thể xác

định như thế nào. Những mối quan hệ khác nhau sẽ có những giá trị hàm thành viên khác

nhau phụ thuộc vào bối cảnh của câu truy vấn và đặc biệt là phụ thuộc vào quan điểm của

những người khác nhau. Vốn dĩ từ Apple/apple cũng có thể được sử dụng để cho thấy sự

khác biệt này, nhưng phần lớn công cụ tìm kiếm dựa trên web dường như bỏ qua những

thông tin này.

Trong ontology thông thường, những đối tượng cụ thể có thể có nhiều điểm khác

nhau, dẫn đến sự không rõ ràng khi sử dụng để xây dựng câu truy vấn. Ngoài ra mối quan

hệ theo chu trình không mong muốn có thể xảy ra. mối quan hệ không mong muốn có thể

được gán giá trị thành viên lả số không. Trong thực tế, những mục không dùng tới hoặc

các đối tượng cũng có thể bị bỏ qua trong ontology, không cần thiết giữ chúng lại và

dùng như một cầu nối với các mục hữu dụng khác.

3.2.3. Những lợi thế của fuzzy ontology.

Nhiều vấn đề phát sinh từ việc sử dụng ontology. Bao gồm cả những khó khăn liên

quan đến giao tiếp giữa các ontology và sự cần thiết phải duy trì số lượng lớn các

ontology. Các fuzzy ontology được đề nghị sử dụng để tạo ra một chuẩn chung, hoặc

ontology cơ bản đồng nhất, với các giá trị thành viên khác nhau liên kết với các nhóm và

người dùng khác nhau. Cần lưu ý rằng bởi vì các phương pháp học tập có liên quan hầu

hết là kiểu quan hệ “is-a” đang được sử dụng nhiều dựa trên hệ thống phân cấp MeSH

hiện có. Điều này là do không có sự khác biệt giữa việc học tập của các loại hình quan hệ

khác nhau.

Một ưu điểm khác của phương pháp này là tính hoàn thiện. Thay vì áp đặt một tiêu

chuẩn tùy ý về tầm quan trọng của một vùng đặc biệt nào đó trong ontology, đây thật sự

cần thiết trong một ontology rõ nét (crisp ontology) để tránh có quá nhiều ví dụ về một

mục xuất hiện trong ontology, mục hay đối tượng có thể được đặt tại tất cả các vùng có

liên quan.

Quan trọng nhất, để tìm kiếm các quy trình, việc sử dụng một fuzzy ontology cho việc

ánh xạ các mục tìm kiếm cho thấy trọng số tương đối của từng mục trong đầu ra phải

được tính toán. Bằng cách cho phép các trọng số đó được tính toán chính xác, nó đã loại

bỏ được sự thiên vị trong liên kết với nhiều mục khác nhau đang được sử dụng trong quá

trình tìm kiếm. Nếu một mục được đặt tại nhiều vùng khác nhau trong một ontology rõ

Page 94: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 75 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

nét và được sử dụng cho mục đích mở rộng truy vấn thì sự nguy hiểm là sẽ có số lượng

khá lớn các mục mở rộng có giá trị không liên quan nhiều hơn những giá trị có liên quan

cần thiết.

Đặc biệt, việc sử dụng một phương pháp tiếp cận fuzzy ontology cho phép biểu diễn

các mối liên hệ thuận tiện hơn và chính xác hơn theo một cái nhìn cụ thể mà không bị

mất tính tương đồng so với các quan điểm khác; ontology framework phát triển gần như

nhau, chỉ có các giá trị thành viên là khác nhau.

Cuối cùng, phương pháp tiếp cận này đưa ra khả năng các biểu diễn của một ontology

rất lớn có thể được nén lại. Nếu có những khu vực quan hệ không cần thiết, ta có thể

chỉnh thiết lập về 0. Những cấp trung gian không mong muốn cũng có thể được gỡ bỏ,

với các mục cấp thấp chỉ giao tiếp trực tiếp với các cấp cao hơn. Cách làm này loại bỏ

việc tạo ra các nhóm giả tạo để tránh những mục chỉ đứng một mình. Theo một giới hạn

fuzzy ontology, với các giá trị thành viên thiết lập để 0 hoặc 1, sẽ có từng mục hoặc đối

tượng chỉ có một mối quan hệ. Nếu mỗi mục chỉ có một mối quan hệ thì một cấu trúc B-

tree là hoàn toàn có thể biểu diễn được với mỗi mục chỉ liên quan đến các mục cha của

nó, tuy nhiên sự sắp xếp này gọi là một hệ thống cấp bậc thì đúng hơn. Bảng 11 tóm tắt

một số khác biệt giữa ontology rõ nét và ontology mờ.

Aspect Fuzzy Ontology Crisp Ontology

Multiple-Located

terms

Does not occur Issue for

disambiguation

Query expansion Depends on membership value Depends on location

only

Customisation Simple, based on modification

membership values

Requires new

ontology and/or

ontology sharing

Storage required Depends on the number of

term in the ontology and the

membership values of the

relations, can be smaller or

larger than crisp

Depends on number

of terms in the

ontology

Knowledge

representation

Related to use Related to structure.

Bảng 3.10 phân biệt sự khác nhau giữa fuzzy ontology và Crisp ontology.

3.2.4. Cơ sở tri thức trong ontology mờ.

Page 95: Fuzzy Ontology and Fuzzy-OWL(9)

76 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

OntoLogy mờ được xem như Là một cơ sở tri thức trên một miền nào đó, trong đó các

khái niệm, phương thức được định nghĩa như Là những tập mờ. Trong ontoLogy mờ các

khái niệm và phương thức được gán cho một độ thuộc μ [0,1].

Cơ sở tri thức của một ontoLogy mờ bao gồm hai thành phần TBox mờ và ABox mờ.

Một TBox mờ bao gồm định nghĩa về các khái niệm, tiên đề và các quan hệ gộp mờ giữa

các khái niệm và phương phức đó.

Cho C, D Là các khái niệm, R,S Là các phương thức. Một TBox mờ bao gồm các

khái niệm mờ và các phương thức mờ, khái niệm C (hoặc phương thức R) có thể có một

độ thuộc n [0,1]. Một tiên đề mờ có dạng C ⊑ D n, (R ⊑ S n), hoặc Là <C ≡ D n>,

(<R ≡ S n>). Một diễn giải I thỏa mãn quan hệ gộp C ⊑ D n, ( tương tự R ⊑ S n) khi

và chỉ khi (C ⊑ D)I ≥ n, (tương tự (R ⊑ S)

I ≥ n). Điều này cũng đúng cho các khái niệm

và quan hệ tương đương.

Trong TBox mờ chúng ta có thể có các khái niệm mờ hoặc các khái niệm chính xác. Cần

chú ý rằng các khái niệm chính xác Là một khái niệm đặc biệt của khái niệm mờ (khi độ

thuộc μ = 0 hoặc μ = 1) và khái niệm nguyên thủy Là một khái niệm chính xác. Một cách

cơ bản, khái niệm mờ được định nghĩa như Là một thuộc tính mờ hoặc Là số giới hạn

mờ.

Liên quan đến số Lượng giới hạn thì độ thuộc của một cá thể bắt nguồn từ số Lượng

giới hạn. Tham số n được sử dụng như Là số Lượng giới hạn (≥ n,R) trong đó n Là một

con số mờ (ví dụ ≥ 18). Số Lượng giới hạn mờ có thể được định nghĩa một cách chính

xác như sau:

≥ n R cho ra giá trị giới hạn nhỏ hơn n.

≤ n R cho ra giá trị giới hạn Lớn hơn n.

n có thể Là một số nguyên chính xác hoặc có thể Là một số mờ ví dụ như (khoảng

20) chúng ta có thể định nghĩa một cách tường minh quan hệ nhị phân của toán tử ≥ và

toán tử ≤ như sau:

(≥ n R)I (d) = μ ≥ (m,n)

(≥ n R)I (d) = μ ≤ (m,n)

Hàm μ ≥ (m,n) (tương tự µ (n,m)) cho ra kết quả Là một giá trị nằm trong đoạn [0,1] có ý

nghĩa rằng: Giá trị mờ của n Lớn hơn hoặc Là bằng giá mờ trị của m.

Một ABox mờ chứa các khẳng định có dạng a:A n và (a,b):R n. Các khẳng định này

có nghĩa: các thể a Là một trường hợp của khái niệm A đến mức độ n.(tương tự một quan

Page 96: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 77 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

hệ mờ R). Sự đúng đắn đó người ta gọi Là “độ thỏa mãn”của khẳng định a:A (tương tự

(a,b):R) trong cơ sở tri thức. Một diễn giải I thõa mãn một khẳng định mờ a:A n (tương

tự (a,b):R n) khi chỉ khi AI ≥ n (tương tự R

I(a,b)≥n).

3.3. Fuzzy OWL.

Trong tầm nhìn Web ngữ nghĩa, việc cung cấp thông tin và kiến thức sẽ được cấu trúc

để máy có thể hiểu và xử lý được. Để mở rộng Sematic Web có thể tự động (bán tự động)

thực hiện những công việc phức tạp đươc giao bởi con người theo ý nghĩa (ngữ nghĩa)

nào đó. Ví dụ, những việc chúng ta thường thực hiện hang ngày như “tổ chức một kỳ

nghỉ”, “mua sắm”, “hẹn gặp bác sĩ” và nhiều hơn nữa. Trong đó chứa đựng nhiều thông

tin mơ hồ không thể xác định chính xác. Ví dụ như, trong việc “tổ chức một kỳ nghỉ”

chúng ta có thể xét đến các vấn đề: địa điểm “nổi tiếng”, với “nhiều” sự hấp dẫn hay như

“hẹn gặp bác sĩ” có liên quan đến các khái niệm như “đủ gần”, “không quá sớm” và

nhiều khái niệm khác. Để có thể miêu tả chính xác những kiểu thông tin như vậy ngôn

ngữ ontology hiện tại cần phải mở rộng với các khuôn khổ toán học (mathematical

frameworks) thích hợp để có thể nắm bắt các thông tin như vậy.

Trong phần này chúng ta sẽ mở rộng OWL web ontology language với lý thuyết tập

mờ. Chúng ta sẽ mở rộng DL SHOIN (xem trong phần logic mô tả mờ) để cung cấp lý

luận cho fuzzy OWL (f-OWL).

Web OntoLogy Language (OWL) Là ngôn ngữ đánh dấu mở rộng được sử dụng để

xuất bản và chia sẻ dữ Liệu trong các ontoLogy. OWL biểu diễn ý nghĩa của các thuật

ngữ trong các bộ từ vựng và mối Liên hệ giữa các thuật ngữ này để đảm bảo phù hợp với

quá trình xử Lý bởi các phần mềm và máy tính.

Thực chất ontoLogy Là sự thể hiện hóa của Logic mô tả dưới góc độ Là một ngôn

ngữ. Nói một cách chính xác hơn từ Logic mô tả ta có thể sử dụng một ngôn ngữ của web

ngữ nghĩa như (OIL, DAM, RDF, OWL..) để có thể tạo nên ontoLogy tương ứng. (và

ngược Lại).

Số Lƣợng giới hạn Minh họa bằng OWL mờ

A,B <fowl:Class rdf:ID="AIB">

...

< /fowl:Class>

A ∩ B <fowl:Class>

<fowl:intersectionOf fowl:parseType="Collection">

<fowl:Class rdf:about=A/ >

Page 97: Fuzzy Ontology and Fuzzy-OWL(9)

78 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

<fowl:Class rdf:about=#B/ >

< /fowl:intersectionOf>

< /fowl:Class>

A ∪ B <fowl:Class>

<fowl:unionOf fowl:parseType="Collection">

<fowl:Class rdf:about=#A/ >

<fowl:Class rdf:about=#B/ >

< /fowl:unionOf>

< /fowl:Class>

A <fowl:Class>

<fowl: complementOf>

<fowl:Class rdf:about=#A/ >

< /fowl:complementOf>

< /fowl:Class>

R.A <fowl:Restriction>

<fowl:onProperty rdf:resource=#R/ >

<fowl:someValuesFrom rdf:resource=#A/ >

< /fowl:Restriction>

R.A <fowl:Restriction>

<fowl:onProperty rdf:resource=#R/ >

<fowl:allValuesFrom rdf:resource=#A/ >

< /fowl:Restriction>

(≤ | ≥)nR <fowl:Restriction>

<fowl:onProperty rdf:resource=R/ >

<fowl:cardType rdf:datatype=

"xsd:NonNegativelnteger">n< /fowl:cardType>

<fowl:moreThan fowl:degree=0/ >

< /fowl:Restriction>

<fowl:ObjectProperty rdf:ID=" ">

<fowl:inverseOf rdf:type rdf:resource="#R"/ >

< /fowl:ObjectProperty>

≥α R.{x} <fowL:Restriction>

<fowL:onPropertyrdf:resource=“#R”/ >

<fowL:hasVaLuerdf:resource=“#x”/ >

<fowL:moreOrEquivaLentfowL:degree=α/>

< /fowL:Restriction>

{x1,…, xn} <fowl:Class rdf:ID="A">

Page 98: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 79 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

<rdfs:subClassOf rdf:resource="#B"/ >

<fowl:oneOf rdf:parseType="Collection">

<A rdf:about="#x1"/ >

<A rdf:about="#xn"/ >

< /fowl:oneOf>

< /fowl:Class>

Bảng 3.11: Số Lượng giới hạn mờ.

Tiên đề mờ Minh họa bằng OWL mờ

A ⊑ B ineqType α <fowl:Class rdf:ID="A">

<fowl:subClassOf rdf:resource=#B/ >

<fowl:ineqType fowl:degree=α / >

< /fowl:Class>

A B <fowl:Class rdf:ID="A">

<fowl:equivalentClass rdf:resource= B/ >

< /fowl:Class>

Trans (R) <fowl:ObjectProperty rdf:ID="R">

<rdf:type rdf:resource="TransitiveProperty"/ >

<rdfs:domain rdf:resource=#A>

<rdfs:range rdf:resource=#B>

<fowl:ObjectProperty/ >

Function(S) <fowl:ObjectProperty rdf:ID="S">

<rdf:type rdf:resource="FunctionalProperty"/ >

<rdfs:domain rdf:resource="#A"/ >

<rdfs:range rdf resource="#B"/ >

<fowl:ObjectProperty/ >

A(a) ineqType α <fowl:Thing rdf:ID="a"/ >

<fowl:Thing rdf:about="#a"/ >

<rdf:type rdf:resource="#A"/ >

<fowl:ineqType fowl:degree=α/ >

< /fowl:Thing>

R(a, b) ineqType α <fowl:Thing rdf:ID="a">

<R rdf:resource="#b"/ >

<fowl:ineqType fowl:degree= α/ >

< /fowl:Thing>

Bảng 3.12: Tiên đề mờ

Page 99: Fuzzy Ontology and Fuzzy-OWL(9)

80 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

Ràng buộc mờ Minh họa bằng owL mờ

R(c,d)*α

<rdf:Descriptionrdf:about“c”>

<Rrdf:resource=“#d” fowL:ineqType

FowL:degree=a/>

<fowL:Thingrdf:ID=“α”/ >

< /rdf:Description>

Bảng 3.13: Ràng buộc mờ

Tiếp theo chúng tôi trình bày một phần mở rộng của OWL DL bằng cách thêm mức

độ sự kiện OWL, chúng tôi gọi là f-OWL.

Như đã đề cập trong phần 3.3.1, OWL là một ngôn ngữ ontology gần đây được giới

thiệu bởi W3C. Cũng như với f-DLs, f-OWL, mở rộng tập trung vào sự kiện OWL (OWL

facts). Dẫn đến một sự kiện mờ, và ngữ nghĩa của ngôn ngữ mở rộng. Việc mở rộng trực

tiếp ngữ nghĩa mô hình lý thuyết (model-theoretic semantics) của f-OWL được cung cấp

bởi một diễn dịch mờ, mà trong đó thiếu đi các kiểu dữ liệu và các miền cụ thể. Một diễn

dịch f-OWL có thể được mở rộng để cung cấp ngữ nghĩa cho khái niệm mờ (fuzzy

concept) và giá trị riêng (individual-valued) mô tả đặc tính. Từ tính tương đương của f-

OWL mô tả một lớp [13] với f-SHOIN là hiển nhiên, chúng tôi không phải nói them về

nó ở đây một lần nữa. Có thể xem ngữ nghĩa của chúng trong [22] và trong phần 2.

Bây giờ chúng tôi muốn tập trung vào ngữ nghĩa của tiên đề trong f-OWL. Chúng sẽ

được tóm tắt trong bảng 2. Chúng tôi muốn chỉ ra rằng nếu bỏ qua một mức độ thì một

tiên đề riêng tương đương với quy định cụ thể có giá trị 1. Từ ngữ nghĩa quan điểm trên,

một tiên đề f-OWL của cột đầu tiên của bảng 2 thỏa mản bởi một diễn dịch mờ I khi và

chỉ khi phương trình tương ứng của cột thứ ba là thỏa mãn. Một ontology mờ O là một

tập các tiên đề của f-OWL. Chúng tôi nói rằng một diễn dịch mờ I là một mô hình của O

khi và chỉ khi nó thỏa mãn tất cả các tiên đề trong O.

Page 100: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 81 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

Bảng 3.14: Tiên đề của fuzzy OWL.

Một số nhận xét về bảng 3.14. Ngữ nghĩa của một miền và miền giới hạn đã được

lựa chọn cẩn thận để cung cấp một giải thích trực quan trên miền mờ và phạm vi hạn chế

(miền giới hạn). Cuối cùng, ngữ nghĩa của phân chia lớp cho bởi tiên đề C ≡ D là tương

đương với quan hệ bao hàm, C ⊓ D ⊑ ⊥ Từ phương trình mờ này chúng tôi nhận ra rằng

a I .t(C

I (a), D

I (a)) ≤ ⊥I (a) = 0. Phương trình này phản ánh trực giác của chúng tôi

kém rời rạc, mà phải nói rằng hai khái niệm chỉ được phân chia khi và chỉ khi nó không

có bổ ngữ chung trong bất kỳ giải thích nào. Hãy nhớ rằng sự giải thích cho tiên đề bao

hàm C ⊑ D không phải luôn luôn giữ trong trường hợp mờ.

individual ∷= „Individual(‟ [ individualID] {annotation} {„type‟( type „)‟

[membership]} {value [membership] } „)‟

membership ∷= ineqType degree

ineqType ∷= „>=‟ | „>‟ | „<=‟ | „<‟

degree ∷= „degree(‟ real-number-between-0-and-1-inclusive „)‟

Bảng 4.11: Tóm tắt cú pháp của f-OWL

Chúng tôi kết thúc phần này bằng cách cung cấp những thay đổi cú pháp cần diễn ra

trong ngôn ngữ OWL để xác nhận dộ thuộc của cá thể đơi với một khái niệm mờ đến một

mức độ cụ thể trong khoảng 0 đến 1. Các cúa pháp trừu tượng của ngôn ngữ mở rộng

được mô tả trong bảng 3. Nhận thấy rằng sự thay đổi cú pháp chỉ liên quan đến việc bổ

sung một độ thuộc, giới hạn trong khoảng 0 đến 1, trong định nghĩa sự kiện của OWL.

Page 101: Fuzzy Ontology and Fuzzy-OWL(9)

82 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

CHƢƠNG 5. VÍ DỤ ÁP DỤNG.

Trong chương này chúng tôi trình bày một ontology mờ và cách xây dựng nó trên

protégé.

Page 102: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 83 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

TÀI LIỆU THAM KHẢO

Tiếng việt:

[1] Đặng Văn Huệ (2006), Luận Văn Thạc Sỹ, Logic mô tả và ứng dụng trong cơ sở dữ

liệu.

[2] Lê Anh Phương, Nguyễn Văn Ninh, Huỳnh Bảo Quốc Dũng, Trường ĐHSP Huế, Lập

luận với Ontology mờ sử dụng logic mô tả mờ F-SHIN, báo cáo hội thảo quốc gia 2008.

[3] Hoàng Hữu Hạnh, Web ngữ nghĩa – những phương thức và tiếp cận mới, Tạp chí

khoa học, Đại học Huế, Số 48, năm 2008.

[4] Trần Thị Ngân, Các bước xây dựng Ontology sử dụng công cụ Protege,

Link: http://vnlp.net/blog/wp-content/uploads/2008/08/xdontology.pdf

Tiếng anh.

[5] Silvia Calegari and Davide Ciucci (2009), Fuzzy Ontology and Fuzzy-OWL in the

KAON Project.

[6] Silvia Calegari and Davide Ciucci (2007), Fuzzy Ontology, Fuzzy Description Logics

and Fuzzy-OWL,

[7] Trương Hải Bằng(2010), Definition Fuzzy Ontology, university of information

technology.

[8] T.Berners-Lee, J.Hendler, O.Lassila: “The Semantic Web”. Scientific American, May

2001.

[9] Straccia, U. (1998). A fuzzy description Logic. In Proc. of the 15th Nat. Conf. on

ArtificiaL InteL Ligence (AAAI-98), pp. 594–599 Madison, USA

[10] G. StoiLos, G. Stamou, V. Tzouvaras, J.Z. Pan, I. Horrocks, "The Fuzzy Description

Logic f-SHIN", InternationaL Workshop on Uncertainty Reasoning For the Semantic

Web (2005).

[11] I. Horrocks and U. SattLer, ‘A description Logic with transitive and in- verse roLes

and roLe hierarchies’, JournaL of Logic and Computation, 9, 385–410, (1999).

[12] Dan Brickley, R.V.Guha (27 March 2000), Resource Description Framework (RDF)

Schema Specification 1.0, W3C.

Page 103: Fuzzy Ontology and Fuzzy-OWL(9)

84 | P a g e FUZZY ONTOLOGY AND FUZZY OWL

GVHDThS. Trương Hải Bằng

[13] Dan Connolly, Frank van Harmelen, Ian Horrocks, Deborah L.McGuinness, Peter F.

Patel-Schneider, Lynn Andrea Stein (18 December (18 December 2001), DAML+OIL

(March 2001) Reference Description, W3C.

[14] Ian Horrocks, Stefan Decker, Dieter Fensel, Frank van Harmelen (2002), OIL – the

Ontology Language for the Semantic Web, University of Manchester, UK.

[15] Sean Bechhofer, Frank van Harmelen, Jim Hendler, Ian Horrocks, Deborah

L.McGuinness, Peter F.Patel-Schneider, Lynn Andrea Stein (18 August 2003), OWL Web

Ontology Language Reference, W3C.

[16] Stuart Aitken (2002), DAM –Ontology, Sevices and Rules, University of Edinburgh.

[17] Enrico Franconi (03/2002), Description Logic Course, Faculty of Computer Science,

University of Bozen-Bolzano, Italy.

[18] Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi, Peter Patel-

Schneider (01/2003), The Description Logic HandbookTheory, Implemantation and

Applications, Cambridge University Press.

[19]BucceLLa, A. and ALejandra Cechich and Nieves R. Brisaboa (2003), “OntoLogy-

Based Data Integration Methods: A Framework for Comparison”, web page:

http://www.unab.edu.co/editoriaLunab/ revistas/rcc/pdfs/r61_art3_c.pdf

[20]I. Horrocks, U. SattLer, and S. Tobies. “Reasoning with IndividuaLs for the Description

Logic SHIQ”. In David MacALLester, editor, CADE-2000, number 1831 in LNAI, pages

482–496. Springer-VerLag, 2000.

[21] Natalya Fridman Noy, Ray W.Fergerson, Mark A.Musen (2002), The knowledge

model of protégé-2002 –combining interoperability and flexibility, Stanford Medical

Informatics, Stanford University, Stanford.

[22] A.Maedche, B.Motik, L.Stojanovic, R.Studer, R.Volz (2003), An Infrastructure for

Searching, Reusing and Evolving Distributed Ontologies, IEEE Transaction on

Computers.

[23] A.Maedche, B.Motik, L.Stojanovic (04/2003), Managing Multiple and Distributed

Ontologies in the SemanticWeb, In Proc. 1st Int‟l Conf. on Ontologies, Databases and

Application of Semantics (ODBASE-2002).

Page 104: Fuzzy Ontology and Fuzzy-OWL(9)

FUZZY ONTOLOGY AND FUZZY OWL 85 | P a g e

SVTH: Trần Thanh Toản – Phạm Đình Ân

[24] John F.Sowa (2000), Knowledge Representation – Logical, Philosophical, and

Computational Foundations, Inc.