F là tập các quan hệ tính toán có thể được mô hình bởi bộ Mf, Expf o Expf là biểu thức tính toán o Mf là tập các thuộc tính được biểu diễn trong Expf Facts là tập các sự kiện hay các t
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
BÀI THU HOẠCH MÔN HỌC
BIỂU DIỄN TRI THỨC VÀ ỨNG
DỤNG
Đề tài:
ONTOLOGY CHO CƠ SỞ TRI THỨC CÁC
ĐỐI TƯỢNG TÍNH TOÁN
GVHD: PGS TS Đỗ Văn Nhơn Học viên thực hiện: Trịnh Thị Thanh Nhàn
MSHV: CH1101113
TP HCM, năm 2012
Mục lục
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG 1
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG 1
1.1 GIỚI THIỆU 3
1.2 ONTOLOGY COKB-ONT 3
Trang 21.3 Một tập hợp C các khái niệm: 3
1.4 Một tập hợp H các quan hệ phân cấp trên các loại khái niệm 6
1.5 Một tập hợp R các quan hệ trên các loại khái niệm 7
1.6 Một tập hợp Funcs gồm các hàm 8
1.7 Một tập hợp Ops các toán tử 9
1.8 Một tập các Rules gồm các luật suy diễn 9
1.8.1 Số hạng 10
1.8.2 Biểu thức tính toán (computation expression) 10
1.8.3 Biểu thức logic (logic expression) 11
1.8.4 Sự kiện 11
1.9 MỘT VÍ DỤ VỀ ỨNG DỤNG ONTOLOGY COKB-ONT TRONG VIỆC THIẾT KẾ ONTOLOGY CHO MỘT ỨNG DỤNG 12
1.10 Tập C các khái niệm 12
1.11 Tập H thể hiện quan hệ phân cấp trên các khái niệm 13
1.12 Tập R thể hiện các loại quan hệ giữa các khái niệm 13
1.13 Tập Funcs các hàm trên các khái niệm 13
1.14 Tập Ops các toán tử trên các khái niệm 14
1.15 Tập Rules các luật dẫn 14
Tài liệu tham khảo 15
Trang 31.1GIỚI THIỆU
Hiện nay có rất nhiều Ontology nhưng phần lớn tập trung vào biểu diễn các ứng dụng web như KAON, Protégé…Có rất ít ontology biểu diễn các tri thức phức tạp Và hiện nay hầu như không có các ontology biểu diễn các tri thức của ứng dụng giải toán dựa trên tri thức trừ mô hình COKB Trên cơ sở đó đề tài này kế thừa mô hình COKB và phát triển thành một ontology để góp phần biểu diễn tri thức tốt hơn cho hệ giải toán dựa trên tri thức
1.2ONTOLOGY COKB-ONT
Một ontology cho cơ sở tri thức các đối tượng tính toán (viết tắt là ontology COKB-ONT ) là một hệ thống gồm 6 thành phần:
(C, H, R, Funcs, Ops, Rules)
Trong đó các thành phần được mô tả như sau:
1.3 Một tập hợp C các khái niệm:
Mỗi khái niệm được xác định bằng <tên khái niệm> và danh sách các loại khái niệm được sử dụng (nếu có) Được phân làm 3 loại:
• Khái niệm nền: là khái niệm được mặc nhiên thừa nhận Trong mô hình này ta chỉ thừa nhận một số khái niệm: số tự nhiên, số nguyên, số hữu tỉ, số thực, số phức
• Khái niệm cơ bản (cấp 0): có cấu trúc rỗng hoặc một số thuộc tính có kiểu khái niệm nền, các khái niệm này làm nền cho các khái niệm cấp cao hơn
• Khái niệm cấp n(n>0): có thể được thiết lập từ một danh sách các khái niệm nền hoặc cơ bản Trong cấu trúc mô tả chỉ được phép xuất hiện khái niệm, quan hệ, hàm, toán tử cấp nền hoặc {0,….n-1} Trong cấu trúc phải xuất hiện ít nhất một khái niệm, quan hệ, hàm, toán tử có cấp là n-1
Ví dụ: các khái niệm ontology trong hình học phẳng:
Trang 4 Khái niệm nền: số tự nhiên, số thực.
Khái niệm cơ bản: điểm, đường thẳng
Khái niệm cấp 1: đoạn, góc
Khái niệm cấp 2: tam giác, tứ giác
Một khái niệm cấp n có thể được mô hình bởi bộ:
(Df, Attrs, F, Facts, Rules)
Df là tập các sự kiện định nghĩa khái niệm
Attrs là tập các thuộc tính của khái niệm
F là tập các quan hệ tính toán có thể được mô hình bởi bộ
(Mf, Expf)
o Expf là biểu thức tính toán
o Mf là tập các thuộc tính được biểu diễn trong Expf
Facts là tập các sự kiện hay các tính chất vốn có của khái niệm
Rules là tập là các luật suy diễn trên các sự kiện lien quan đến các thuộc tính cũng như liên quan đến bản thân khái niệm
Cấu trúc bên trong của mỗi khái niệm cấp n gồm:
Kiểu khái niệm
Danh sách các sự kiện mô tả khái niệm
Danh sách các thuộc tính
Quan hệ trên cấu trúc thiết lập
Tập hợp các điều kiện ràng buộc trên các thuộc tính
Trang 5 Tập hợp các tính chất nội tạiliên quan đến các thuộc tính của khái niệm.
Tập hợp các quan hệ suy diễn , tính toán, Các quan hệ này thể hiện các luật suy diễn và cho phép ta có thể tính toán một hay một số thuộc tính từ các thuộc tính khác của khái niệm
Tập hợp các luật suy diễn trên các loại sự kiện khác nhau liên quan đến các thuộc tính của các khái niệm hay đến bản thân các khái niệm Mỗi luật suy diễn có dạng {các sự kiện giả thiết }=>{các sự kiện kết luân}
Cùng với cấu trúc trên, khái niệm còn được trang bị các hành vi cơ bản cho việc giải quyết các vấn đề suy diễn và tính toán trên các thuộc tính của khái niệm, bản thân khái niệm hay các khái niệm liên quan được thiết lập trên nền của khái niệm
Ví dụ: một khái niệm “tam giác” được biểu diễn theo mô hình trên sẽ gồm các thành phần như sau:
TAM_GIAC[A:DIEM, B:DIEM, C:DIEM]
Df = {¬THANGHANG[A,B,C]}
Attrs = {a, b, c, GocA, GocB, GocC, S, p, R, ha, hb, hc, …}
F = {GocA + GocB + GocC=Pi, a/sin(GocA)=b/sin(GocB)=c/sin(GocC), a/sin(GocA)=2*R, a^2=b^2+c^2-2*b*c*cos(GocA),…}
Facts ={}
Rules = {{a=b}=>{GocA=GocB}, {GocA=GocB}=>{a=b},
{a^2+b^2+c^2}=>{GocA=Pi/2,…}
Trang 61.4 Một tập hợp H các quan hệ phân cấp trên các loại khái niệm
H ⊆ C × C là hệ thống phân cấp các khái niệm, nếu (c1, c2) ∈ H thì c1 là khái niệm con của c2 và c2 là khái niệm cha của c1
Cấp của khái niệm con được quy ước trùng với cấp khái niệm cha
Ví dụ: các quan hệ phân cấp trong ontology hình học phẳng
[TAM_GIAC_VUONG_CAN, TAM_GIAC_VUONG]
[TAM_GIAC_VUONG_CAN, TAM_GIAC_CAN]
[TAM_GIAC_DEU, TAM_GIAC_CAN]
[TAM_GIAC_VUONG, TAM_GIAC]
[TAM_GIAC_CAN, TAM_GIAC]
Trang 71.5 Một tập hợp R các quan hệ trên các loại khái niệm
Mỗi quan hệ được xác định bởi <tên quan hệ> và danh sách các loại khái niệm của quan hệ Đối với quan hệ 2 ngôi thì quan hệ có thể có các tính chất như: tính phản xạ, tính đối xứng, tính phản xứng, tính bắc cầu Được phân ra làm 2 loại:
Quan hệ nền: là quan hệ được mặc nhiên thừa nhân Trong mô hình này ta chỉ thừa nhận một số quan hệ trên số tự nhiên, số nguyên, số hữu tỉ, số thực, số phức
Quan hệ cấp n (n≥0): mô tả mối quan hệ các khái niệm cấp {0, …,n}
Gồm 2 loại:
o Loại không mô tả: có cấu trúc rỗng, các quan hệ này làm nền cho quan hệ cùng cấp hoặc cấp cao hơn
o Loại mô tả:được mô tả bằng tập sự kiện và trong cấu trúc mô tả chỉ được phép xuất hiện khái niệm, quan hệ, hàm, toán tử cấp nền hoặc {0, ,n} Trong mô tả quan hệ phải xuất hiện ít nhất là một khái niệm, quan hệ, hàm, toán tử cấp n
Ví dụ: các quan hệ trong ontology hình học phẳng
Quan hệ nền: các quan hệ trên số tự nhiên, số thực
Quan hệ cơ bản: quan hệ 3 điểm thẳng hang, quan hệ điểm thuộc đường thẳng
Quan hệ cấp 1: quan hệ song song giữa 2 tia, quan hệ giữa điểm thuộc tia
Quan hệ cấp 2: quan hệ đồng dạng của 2 tam giác, quan hệ bằng nhau của 2 tam giác
Một quan hệ cấp n loại mô tả có thể được mô hình bởi bộ:
(C, Df, Facts)
C là tập các khái niệm
Trang 8 Df là tập các sự kiện định nghĩa quan hệ
Facts là tập các sự kiện hay các tính chất vốn có của quan hệ
Ví dụ: Trong ontology hình học phẳng, quan hệ vuông góc của 2 đường thẳng
VUONG[a:DUONG_THANG, b:DUONG_THANG]
C = {DUONG_THANG(a), DUONG_THANG(b)}
Df = {DIEM(A), DIEM(B), THUOC[A,a], ¬THUOC[A,b], THUOC[B,b],
¬THUOC[B,a], GOC[A, GIAODIEM[a,b], B]=Pi/2}
Facts = {VUONG[b,a]}
1.6 Một tập hợp Funcs gồm các hàm
Tập hợp Funcs trong ontology COKB-ONT thể hiện tri thức về các hàm hay các quy tắc tính toán trên các loại khái niệm Mỗi hàm được xác định bởi <tên hàm>, tập biến, kiểu trả về và các quy tắc định nghĩa hàm về phương diện toán học Được phân làm 2 loại:
Hàm nền: là hàm được mặc nhiên thừa nhận Trong mô hình ta chỉ thừa nhận các hàm trên số tự nhiên, số nguyên, số hữu tỉ, số thực, số phức
Hàm cấp n: mô tả mối quan hệ các khái niệm cấp {0,…,n} Được mô tả bằng tập các sự kiện và trong cấu trúc mô tả chỉ được phép xuất hiện khái niệm, quan hệ, hàm, toán tử cấp nền hoặc {0, …,n} Trong cấu trúc mô tả phải xuất hiện ít nhất các khái niệm hàm, quan hệ, hàm, toán tử có cấp n
Ví dụ: các hàm trong ontology hình học phẳng
Hàm nền: các hàm trên số tự nhiên, số thực
Hàm cơ bản: hàm xác định giao điểm của 2 đường thẳng
Hàm cấp 1: hàm xác định giao điểm của 2 đường thẳng, hàm xác định giao điểm của
2 tia
Trang 9Hàm cấp 2: hàm xác định trọng tâm của tam giác, hàm xác định tâm của đường tròn nội tiếp tam giác
Một hàm cấp n có thể được mô hình bởi bộ:
(C, Df, Facts)
C là tập các khái niệm ( quan hệ, trả về )
Df là tập các sự kiện định nghĩa hàm
Facts là tập các sự kiện hay các tính chất vốn có của hàm
Ví dụ: Trong ontology hình học phẳng, hàm xác định giao điểm của 2 đường thẳng GIAODIEM[a:DUONG_THANG, b:DUONG_THANG]:DIEM(X)
C = {DUONG_THANG(a), DUONG_THANG(b), DIEM(x)}
Df = {THUOC[X,a], THUOC[X,b]}
Facts = {}
1.7 Một tập hợp Ops các toán tử
Các toán tử thể hiện các quy tắc tính toán nhất định trên các biến thuộc các loại khái niệm Chẳng hạn như các phép toán tính toán vector, các phép toán tính toán ma trận, và trong trường hợp các phép toán 2 ngôi thì phép toán có tính chất như giao hoán, kết hợp,…
1.8 Một tập các Rules gồm các luật suy diễn
Các luật suy diễn được phân lớp, chúng thể hiện các tri thức mang tính phổ quát trên các khái niệm và các loại sự kiện khác nhau Mỗi luật cho ta một quy tắc suy luận để
đi đến một sự kiện mới từ những sự kiện nào đó Một luật suy diễn r có thể được mô hình hóa dưới dạng:
r: {sk 1 , sk 2 , …, sk n } => {sk 1 , sk 2 , , sk m }
Trang 101.8.1 Số hạng
t → x biến có kiêu khái niệm
Funcs[t1, t2, …, tn] hàm
Ví dụ:
x, 5, cos(x), cos(ln2);
DOAN[A,B], TAM_GIAC[A,B,C];
1.8.2 Biểu thức tính toán (computation expression)
compexp → Ops[t1, t2, …, tn]
t1 Ops t2
Ops[compexp1, compexp2, …, compexpn]
compexp1 Ops compexp2
Ví dụ:
x+3, y+KHOANGCACH[A,d];
x=3, x=sin(Pi/2);
a^2=b^2+c^2, a/sin(GocA)=c/sin(GocC)
Trang 111.8.3 Biểu thức logic (logic expression)
logicexp → R[t1, t2, …, tn]
C(t)
Funcs[t1, t2, …, tn](t)
false
true
¬logicexp
logicexp1˄ logicexp2
logicexp1˅ logicexp2
logicexp1→ logicexp2
logicexp1 ↔ logicexp2
∃x logicexp
∀x logicexp
Ví dụ:
THANGHANG[A,B,C], TU_GIAC(tg), GIAODIEM[a,b](X);
((a<5)˅(a=10))→(x=9);
∃x.(TAM_GIAC_CAN(x)˄TAM_GIAC_VUONG(x));
∀x.(TAM_GIAC_VUONG(x)↔(TAM_GIAC(x)˄(x.GocA=Pi/2)));
1.8.4 Sự kiện
Số hạng sau khi loại bỏ số hạng hằng
Trang 12 Biểu thức tính toán sau khi loại bỏ biểu thức hằng và giá trị của biểu thức tính toán phải là kiểu Boolean
Biểu thức logic
1.9MỘT VÍ DỤ VỀ ỨNG DỤNG ONTOLOGY COKB-ONT TRONG VIỆC THIẾT KẾ ONTOLOGY CHO MỘT ỨNG DỤNG
Trong phần này trình bày việc biểu diễn tri thức trong thiết kế ontology cho hệ giải bài toán hình học giải tích 3 chiều dựa trên ontology COKB-ONT Phương pháp biểu diễn tri thức ở đây so với các phương pháp truyền thống có những ưu điểm đáng kể như: thể hiên đực tri thức đầy đủ, xác thực và hợp lý hơn; đặc biệt là tri thức của hệ thống được thiết kế dựa trên một mô hình biểu diễn thể hiện tri thức một cách toàn diện và tường minh hơn Tri thức về hình học giải tích 3 chiều có thể biểu diễn theo ontology COKB-ONT với các thành phần như dưới đây:
1.10 Tập C các khái niệm
• Tập C các khái niệm gồm “điểm”, “vector”, “mặt phẳng”, “đường thẳng”,
“đường elip”, “đường tròn”,…
• Khái niệm vector chỉ một loại khái niệm cấp 1 Khái niệm kiểu vector có các nthuoocj tính như x, y, z (các tọa độ của vector), khái niệm vector có thể được thiết lập từ một danh sách gồm 2 khái niệm cơ bản kiểu “điểm” và nếu vector v được thiết lập từ cặp điểm (A, B) thì ta có quan hệ trên cấu trúc thiết lập như sau: v.x=B.x-A.x, v.y=B.y-A.y, v.z=B.z-A.z
• Khái niệm “mặt phẳng” và khái niệm “đường thẳng” là các khái niệm cấp 2 Mặt phẳng có thể được thiết lập từ một danh sách các khái niệm gồm 3 điểm không thẳng hang, và đường thẳng có thể được thiết lập từ một danh sách các khái niệm gồm 2 điểm không trùng nhau
• “đường elip” và “đường tròn” cũng là các khái niệm tính toán cấp 2
Trang 131.11 Tập H thể hiện quan hệ phân cấp trên các khái niệm
Trên các khái niệm về các loại khái niệm ở trên của hình học giải tích 3 chiều ta cũng có một số quan hệ phân cấp như “đường tròn” là một “đường elip” đặc biệt
1.12 Tập R thể hiện các loại quan hệ giữa các khái niệm
Giữa các khái niệm ở trên của hình học giải tích 3 chiều ta có nhiều loại quan hệ khác nhau Chẳng hạn như:
• Quan hệ “thẳng hàng: của 3 điểm, 4 điểm…
• Quan hệ “song song” giữa 2 vector
• Quan hệ “vuông góc” giữa 2 vector
• Quan hệ “thuộc” giữa điểm và mặt phẳng
• Quan hệ “thuộc” giữa điểm và đường thẳng
• Quan hệ “song song” giữa vector và mặt phẳng
• Quan hệ “vuông góc” giữa vector và mặt phẳng
1.13 Tập Funcs các hàm trên các khái niệm
Nhiều khái niệm của hình học giải tích 3 chiều chí các quy tắc tính toán nhất định từ các khái niệm Các khái niệm như thế có thể được biểu diễn bởi các hàm và các thành phần Funcs của ontology COKB-ONT thể hiện được phần tri thức này Có thể kể ra đây một số hàm như sau:
• Hàm tính khoảng cách giữa 2 điểm
• Hàm tính khoảng cách giữa điểm và mặt phẳng
• Hàm tính giao điểm của 2 mặt phẳng (trường hợp 2 mặt phẳng cắt nhau)
Trang 14• Hàm tính giao điểm của 2 đường thẳng (trường hợp 2 đường thẳng cắt nhau)
• Hàm tính điểm đối xứng của một điểm qua một mặt phẳng
1.14 Tập Ops các toán tử trên các khái niệm
Trong kiến thức về hình học giải tích 3 chiều ta có nhiều phép toán khác nhau có thể được biểu diễn trong thành phần Ops, tập các toán tử trên các loại khái niệm Chẳng hạn như các phép toán vector sau đây:
• Phép toán công trừ 2 vector
• Phép toán nhân một số với vector
• Phép tính tích vô hướng của 2 vector
• Phép tính tích hữu hướng của 2 vector
• Phép tính tích hỗn hợp của 3 vector Phép tính này nếu thể hiện dưới dạng toán
tử thì đây là toán tử 3 ngôi Ta cũng có thể biểu biễn toán tử này dưới dạng hàm và đặt trong thành phần Funcs của mô hình COKB mở rông
1.15 Tập Rules các luật dẫn
Hầu hết các tính chất, mệnh đề, định lý trong hình học giải tích 3 chiều có thể được biểu diễn dưới dạng các luật dẫn trên các sự kiện liên quan đến các loại khái niệm được biểu diễn bởi tập C Dưới đây là một số luật dẫn cụ thể:
• {u:”vector”, v:”vector”, w:”vector”, u “vuông góc” v, u “song song” w} => {v”vuông góc” w}
• {M:”điểm”, v:”vector”, P:”mặt phẳng”, M xác định, v xác định, M “thuộc” P,
v “vuông góc” P} => {P xác định}
• {u:”vector”, v:”vector”, u*v=0} => {u vuông góc v}
• {u:”vector”, v:”vector”, u vuông góc v } => { u*v=0 }
Trang 15• {A:”điểm”, B:”điểm”, P:”mặt phẳng”, B=diem_dx(A, P)} => {distance(A,P)=distance(B,P)}
Trong đó diem_dx(A,P) là hàm tính điểm đối xứng của A qua mặt phẳng P
Tài liệu tham khảo
Giáo trình môn “Biểu diễn tri thức và ứng dụng” của PGS TS Đỗ Văn Nhơn
Luận văn thạc sĩ của Ths Đỗ Tấn Nhàn: “Một mô hình Ontology và ứng dung”