fuzzy ontology and fuzzy-owl(9)
TRANSCRIPT
ĐẠ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
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ờ.
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.
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
NHẬN XÉT
(Của giảng viên hƣớng dẫn)
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
NHẬN XÉT
(Của giảng viên phản biện)
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
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
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
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
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
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
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
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.
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
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:
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.
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).
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ế).
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.
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.
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ữ
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.
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
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.
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á
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
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
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.
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.
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.
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…
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
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ừ
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;
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
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:
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}
26 | P a g e FUZZY ONTOLOGY AND FUZZY OWL
GVHDThS. Trương Hải Bằng
Và
(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)
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)
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
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:
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.
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á:
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)
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à:
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:
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’.
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ệ.
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)
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.
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:
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
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
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.
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
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ả
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
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,
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}
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 ℝ.
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)]
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 ( ) ⟹
( )
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
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
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))
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
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
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
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]
và
( ) { 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
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à:
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}
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];
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):
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.
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
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;
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 ,
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.
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ờ.
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
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.
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
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.
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ỏ.
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
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õ
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ờ.
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
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/ >
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">
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ờ
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.
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.
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é.
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.
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).
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.