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

MÔN BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG TÌM HIỂU MÔ HÌNH COKB-ONT

29 513 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 29
Dung lượng 1,05 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mô hình tri thức các đối tượng tính toán – ontology COKB Mô hình trí thức các đối tượng tính toán, viết tắt là COKB Computational Objects Knowledge Base đề xuất trong [3] được xây dựng

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆ THÔNG TIN

CHUYÊN ĐỀ

BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG

BÀI THU HOẠCH

TÌM HIỂU MÔ HÌNH COKB-ONT

Trang 2

i

LỜI MỞ ĐẦU

Trong lĩnh vực Trí tuệ Nhân tạo, vấn đề về biểu diễn tri thức đóng vai trò rất quan trọng trong việc thiết kế các hệ cơ sở tri thức và các hệ chuyên gia Hiện nay đã có nhiều phương pháp biểu diễn tri thức cho các hệ thống khác nhau ứng dụng trong nhiều lĩnh vực Ontology là một phương pháp mới để biểu diễn tri thức đặc biệt là trong các

hệ trí tuệ nhân tạo phân tán Computational Object Knowledge Base Ontology ONT) [3] đã được đề xuất và ứng dụng vào các hệ giải toán COKB-ONT bao gồm mô hình, ngôn ngữ đặc tả, ngôn ngữ truy vấn và kỹ thuật xử lý hay suy diễn Do thời gian

(COKB-có hạn, bài thu hoạch này chỉ dừng lại ở mức tìm hiểu mô hình, ngôn ngữ đặc tả, mạng các đối tượng tính toán và thuật giải suy luận trên mạng các đối tượng tính toán của PGS TS Đỗ Văn Nhơn đã đưa ra trong [3]

Trang 3

ii

Mục lục

LỜI MỞ ĐẦU i

Mục lục ii

Chương 1 TỔNG QUAN 1

1.1 Mô hình tri thức các đối tượng tính toán – ontology COKB 1

1.1.1 Tập các khai niệm về các đối tượng tính toán 1

1.1.2 Tập các quan hệ phân cấp 3

1.1.3 Tập các quan hệ giữa các khái niệm 4

1.1.4 Tập các hàm 5

1.1.5 Tập các toán tử 5

1.1.6 Tập các luật 6

Chương 2 NGÔN NGỮ ĐẶC TẢ ONTOLOGY COKB 8

2.1 Ký pháp EBNF 8

2.2 Định nghĩa C-Object 9

2.2.1 Cây phân cấp 12

2.2.2 Sự kiện 12

2.2.3 Quan hệ 13

2.2.4 Luật 13

2.2.5 Hàm 14

2.2.6 Phép toán 16

2.2.7 Cú pháp khai báo 17

Chương 3 MẠNG CÁC ĐỐI TƯỢNG TÍNH TOÁN 20

3.1 Định nghĩa mạng các đối tượng tính toán 20

3.2 Thuật giải suy diễn trong mạng các đối tượng tính toán 21

TÀI LIỆU THAM KHẢO 26

Trang 4

1

Chương 1 TỔNG QUAN

1.1 Mô hình tri thức các đối tượng tính toán – ontology COKB

Mô hình trí thức các đối tượng tính toán, viết tắt là COKB (Computational Objects Knowledge Base) đề xuất trong [3] được xây dựng theo cách tiếp cận hướng đối tượng kết hợp với các kỹ thuật lập trình tính toán hình thức, là một cấu trúc gồm 6 thành phần:

(C, H, R, Ops, Funcs, Rules) Trong đó:

- C: tập các khái niệm về đối tượng tính toán

1.1.1 Tập các khai niệm về các đối tượng tính toán

Khái niệm được định nghĩa bằng một tên duy nhất Các khái niệm được phân loại,

áp dụng cơ chế kế thừa Có các loại khái niệm sau:

- Khái niệm nền: kiểu boolean, số tự nhiên, số nguyên, số hữu tỉ, số thực, tập hợp và

danh sách

- Khái niệm cơ bản: có cấu trúc rỗng hoặc có một số thuộc tính có khái niệm nền

Ví dụ khái niệm NGAY bao gồm các thuộc tính Ngay, Thang và Nam là các số tự

nhiê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

Trang 5

2

- Khái niệm cấp 1: có một số thuộc tính là khái niệm nền và có thể thiết lập từ danh

sách các khái niệm cơ bản

- Khái niệm cấp 2: có các thuộc tính là khái niệm nền và khái niệm cấp 1, có thể

thiết lập từ danh sách các khái niệm nền hoặc cơ bản Mỗi khái niệm cấp 2 là một đối tượng tính toán gồm các thành phần:

(Name, Constructs, Isa, Attrs, Constraints, F, Facts, Rules) Trong đó:

- Name: tên của khái niệm

- Constructs: các thuộc tính xác định khái niệm

- Isa: phân cấp khái niệm

- Attrs: tập hợp các thuộc tính của khái niệm

- Constraints: tập hợp các điều kiện ràng buộc trên các thuộc tính

- F: tập hợp các quan hệ suy diễn tính toán

- Facts: tập hợp các tính chất hay các sự kiện vốn có của khái niệm

- Rules: tập hợp các luật suy diễn trên các sự kiện liên quan đến các thuộc tính cũng như liên quan đến bản thân khái niệm

Ví dụ 1: Tri thức về tam giác gồm các yếu tố như: 3 cạnh a, b, c; 3 góc tương ứng

A, B, C; 3 đường cao tương ứng ha, hb, hc; diện tính S; chu vi P; Các công thức liên hệ giữa chúng: định lý góc trong tam giác, định lý sin, định lý cosin, công thức tính diện

tích Ta có một đối tượng tam giác biễu diễn theo mô hình COKB như sau:

Name: TAMGIAC

Constructs: A, B, C

Isa: {}

Attrs: {GocA, GocB, GocC, a, b, c, ha, hb, hc, S, P}

Constraints: {a>0, b>0, c>0, ha>0, hb>0, hc>0, S>0, P>0}

Trang 6

- Sự kiện thông tin về loại đối tượng Ví dụ: A là một tam giác vuông

- Sự kiện về tính xác định của đối tượng hay thuộc tính, được biểu diễn bởi tên của

đối tượng hay tên thuộc tính Ví dụ: Phần tử thứ i của mảng A

- Sự kiện về sự xác định của đối tượng hay thuộc tính thông qua một biểu thức

hằng Ví dụ: phần tử thứ i của mảng A là 0

- Sự kiện về sự bằng nhau của hai đối tượng hay hai thuộc tính Ví dụ: Mảng A = Mảng B

- Sự kiện về sự phụ thuộc của đối tượng vào đối tượng khác thông qua biểu thức

tính toán Ví dụ: Phần tử thứ i của mảng B bằng phần tử thứ i của mảng A cộng 1

- Sự kiện về quan hệ giữa các đối tượng hay thuộc tính các đối tượng

- Sự kiện về biểu thức hàm cơ bản

- Sự kiện về sự bằng nhau của một biểu thức hàm cơ bản với một giá trị hoặc biểu thức hằng

- Sự kiện về sự bằng nhau giữa một đối tượng với một biểu thức hàm cơ bản

- Sự kiện về sự bằng nhau giữa một biểu thức hàm với một biểu thức hàm khác

- Sự kiện về sự phụ thuộc của một biểu thức hàm cơ bản vào một biểu thức hàm cơ bản hoặc đối tượng khác thông qua phương trình

1.1.2 Tập các quan hệ phân cấp

Trang 7

4

Trên tập C ta có một quan hệ phân cấp, một số khái niệm sẽ là trường hợp đặc biệt của một số khái niệm khác Ví dụ: tam giác vuông cân cũng là một tam giác Nếu xem quan hệ phân cấp này là quan hệ có thứ tự trên C thì H chính là một biểu đồ Hasse

Hình 1 Biểu đồ Hasse thể hiện phân cấp của các khái niệm tam giác

1.1.3 Tập các quan hệ giữa các khái niệm

Mỗi quan hệ được xác định bởi:

(Name, Args, Facts) Trong đó:

- Name: tên của quan hệ

- Args: các đối tượng (thuộc kiểu khái niệm) của quan hệ

- Facts: các sự kiện định nghĩa quan hệ

Quan hệ có tính chất: phản xạ, đối xứng, phản xứng và bắc cầu

Ví dụ 2: Quan hệ vuông góc giữa hai đường thằng được mô tả như sau:

Name: VUONG

Args: a,b: DUONGTHANG

Facts: A, B là hai điểm; A thuộc a và A không thuộc b; B thuộc

b và B không thuộc a; Góc tạo bởi A, B và giao điểm của

a, b là góc vuông

Trang 8

5

1.1.4 Tập các hàm

Hàm thể hiện các quy tắc tính toán trên các loại khái niệm Có hai loại:

- Hàm cơ bản: các hàm trên số tự nhiên, số nguyên, số hữu tỉ, số thực và số phức

- Hàm cấp n (n>0): được mô tả bằng tập các sự kiện và trong cấu trúc mô tả bao

gồm các khái niệm, quan hệ, hàm và toán tử Trong cấu trúc mô tả phải xuất hiện ít nhất các khái niệm, quan hệ, hàm và toán tử có cấp n

Mỗi hàm gồm các thành phần:

(Name, Args, Return, Facts) Trong đó:

- Name: tên của hàm

- Args: đối số của hàm là các đối tượng thuộc kiểu khái niệm

- Return: khái niệm trả về của hàm

- Facts: các sự kiện định nghĩa hàm

Ví dụ 3: Hàm xác định giao điểm của hai đường thẳng

Gồm các phép toán trên các biến thuộc các loại khái niệm Có hai loại:

- Toán tử nền: các phép toán trên các kiểu boolean, số tự nhiên, số nguyên, số hữu

tỉ, số thực, tập hợp và danh sách

Trang 9

6

- Toán tử cấp n: các phép toán số học và tính toán trên các đối tượng, các thuộc tính

của đối tượng tương tự như đối với các biến thực

Một toán tử gồm các thành phần:

(Name, Args, Return, Facts) Trong đó:

- Name: tên toán tử

- Args: danh sách các toán hạng

- Return: kiểu trả về của toán tử

- Facts: các sự kiện định nghĩa toán tử

Ví dụ 4: phép toán trừ hai góc được mô tả như sau:

- Name: tên của luật

- Kind: chuỗi mô tả loại luật

- Vars: Các đối tượng thuộc kiểu khái niệm

- Hypothesis: tập các sự kiện giả thuyết của luật

- Goal: tập các sự kiện kết luận của luật

Trang 11

<…>: Tên của cấu trúc cú pháp được gọi là ký hiệu không kết thúc

Mỗi ký hiệu không kết thúc được định nghĩa bằng một hoặc nhiều luật Mỗi luật có dạng:

X := s Trong đó:

Trang 12

9

2.2 Định nghĩa C-Object

Khái niệm C-Object được định nghĩa trong cặp từ khóa COBJECT, ENDCOBJECT Mỗi khái niệm có một tên duy nhất Khi định nghĩa một khái niệm C-Object mới, có thể định nghĩa phân cấp khái niệm đó qua từ khóa ISA

cobject-type ::= COBJECT name

 Mô tả khái niệm

description ::= DESCRIPTION: string;

 Thuộc tính

Hầu hết các khái niệm đều có thuộc tính Các giá trị thuộc tính có kiểu cơ bản (số nguyên, số thực…) hoặc có kiểu đối tượng C-Object Khai báo thuộc tính của khái niệm bắt đầu bằng từ khóa ATTRIBUTE và nằm trong phần định nghĩa khái niệm

attributes ::= ATTRIBUTE: attribute-def+

attribute-def ::= name <, name >*: type;

 Thuộc tính thiết lập

Trang 13

10

Thuộc tính thiết lập là tính chất đặc trưng tạo nên một khái niệm mới trên cơ sở kế

thừa từ một khái niệm nào đó, được khai báo sau từ khóa CONSTRUCT

constructs ::= CONSTRUCT: construct-def+

construct-def ::= name <, name >*: type

 Ràng buộc

Các điều kiện ràng buộc liên quan đến thuộc tính được thể hiện qua các biểu thức logic, có cú pháp như sau:

constraints ::= CONSTRAINT: condition+

condition ::= logic-expr | rel-expr;

Ví dụ: định nghĩa khái niệm ma trận

Trang 14

equation ::= expr = expr

Ví dụ: khai báo các mối quan hệ suy diễn tính toán trong khái niệm tam giác của

hình học phẳng

CRELATION:

CR r1;

MF: GocA, GocB, GocC;

MFEXP: GocA + GocB + GocC = Pi;

Trang 15

12

ENDCRELATION;

2.2.1 Cây phân cấp

Quan hệ phân cấp giữa các C-Object được thể hiện qua từ khóa ISA

isa ::= ISA: name <, name>*;

Các quan hệ phân cấp trong tập hợp H cũng có thể được mô tả trong cặp từ khóa

HIERARCHY, ENDHIERARCHY theo cú pháp sau:

hierarchy-def ::= HIEARARCHY

name ISA name;

ENDHIERARCHY

Ví dụ: phân cấp các khái niệm MA_TRAN trong đại số tuyến tính

MA_TRAN_VUONG ISA MA_TRAN;

MA_TRAN_TAM_GIAC_TREN ISA MA_TRAN_VUONG;

2.2.2 Sự kiện

Nếu tập các sự kiện được khai báo bên trong phần định nghĩa khái niệm thì đặt sau

từ khóa FACT như sau:

facts ::= FACT: fact-def+

fact-def ::= object-type |

attribute | name |

equation | relation | function object-type ::= cobject-type (name <, name>* )

Trang 16

13

relation ::= name relation name

function ::= function ( name <, name>* )

2.2.3 Quan hệ

Quan hệ giữa các đối tượng và thuộc tính được mô tả bằng các sự kiện

relation-def ::= RELATION name;

ENDRULES

Trang 17

14

rules ::= RULE: rule-def+

rule-def ::= RULE name;

KINDRULE: name;

[VARIABLE: variables-def;]

HYPOTHESIS: fact-def+

ENDHYPOTHESIS GOAL: fact-def+

ENDGOAL ENDRULE

variable-def ::= name <, name >*: type;

Ví dụ: khai báo các luật trong khái niệm tam giác của hình học phẳng

function ::= basic-funcion | def-function

Có 2 loại hàm: hàm cơ bản và hàm được định nghĩa:

Trang 18

15

 Hàm cơ bản

basic-func ::= SIN | COS | TAN | COTG | LN | EXP | SUM

 Hàm được định nghĩa: mô tả dưới dạng các sự kiện và mô tả dưới dạng một thủ

argument-def ::= name <,name>: type;

return-def ::= name: type;

statement-def ::= assign-stmt | if-stmt | for-stmt

asign-stmt ::= name := expr;

if-stmt ::= IF logic-expr THEN statements+ |expr

Trang 20

17

Phép toán được định nghĩa trong cặp từ khóa OPERATOR, ENDOPERATOR Có

2 loại phép toán: phép toán một ngôi và phép toán hai ngôi

operator-def ::= OPERATOR name

Trang 21

 Khai báo kiểu dữ liệu là một đối tƣợng tính toán C-Object

object-def ::= name <, name>* : cobject-type[sequence]|name <, name>*: cobject-type;

Ví dụ:

A: MA_TRAN[m,n,a];

B: MA_TRAN ;

 Gọi một quan hệ

rel-call ::= name rel-name name;

Ví dụ: quan hệ bằng nhau của hai ma trận A, B

Trang 22

19

A^T

Ví dụ: Phép cộng hai ma trận

A + B

 Truy xuất đến một thuộc tính của đối tƣợng: để truy xuất đến một thuộc tính

của đối tượng thuộc một kiểu khái niệm, ta sử dụng ký pháp dấu chấm như sau:

Trang 23

20

Chương 3 MẠNG CÁC ĐỐI TƯỢNG TÍNH TOÁN

3.1 Định nghĩa mạng các đối tượng tính toán

Một mối quan hệ 𝑓 giữa những thuộc tính của các đối tượng hoặc giữa các đối tượng với nhau được gọi là mối quan hệ giữa các đối tượng

Một mạng các đối tượng tính toán bao gồm một tập hợp các đối tượng tính toán

𝑂 = {𝑂1, 𝑂2, … , 𝑂𝑛} và một tập hợp các quan hệ giữa các đối tượng tính toán 𝐹 ={𝑓1, 𝑓2… , 𝑓𝑚} Mạng các đối tượng tính toán thì được ký hiệu bằng: (𝑂, 𝐹) Sau đây là một số ký hiệu:

M(𝑓𝑖) = the set of attributes of C-objects in the relation 𝑓𝑖

Ví dụ: Trong hình bên dưới, giả sử rằng AB = AC, cho trước góc A và độ dài cạnh

BC ABDE và ACFG là hình vuông Xác định EG

Trang 24

21

Vấn đề này có thể được xem xét trên mạng các đối tượng tính toán (O, F) như sau:

O = {O1: tam giác ABC với AB = AC, O2: tam giá AEG, O3: hình vuông ABDE, O4: hình vuông ACFG }, và F = {f1, f2, f3, f4, f5} bao gồm những quan hệ sau:

f1 : O1.c = O3.a cạnh c của tam giá ABC = cạnh của hình vuông ABDE f2 : O1.b = O4.a cạnh b của tam giá ABC = cạnh của hình vuông ACFG f3 : O2.b = O4.a cạnh b của tam giác AEG = cạnh hình vuông ACFG

f4 : O2.c = O3.a cạnh c của AEG = cạnh hình vuông ABDE

f5 : O1.A + O2.A = 

3.2 Thuật giải suy diễn trong mạng các đối tƣợng tính toán

Cho một mạng các đối tượng tính toán (O, F) và M là một tập hợp các thuộc tính liên quan Giả sử A là một tập hợp con của M

(1) với mỗi 𝑓 ∈ 𝐹, ký hiệu 𝑓(𝐴) là hội của tập A với tập hợp bao gồm toàn bộ thuộc tính của M suy luận ra được từ A bởi 𝑓 Tương tự, với mỗi đối tượng tính toán 𝑂𝑖 ∈ 𝑂,

𝑂𝑖(𝐴) là hội của tập A với tập hợp bao gồm toàn bộ thuộc tính (trong M) mà đối tượng

𝑂𝑖 có thể xác định được từ những thuộc tính trong A

Trang 25

22

(2) Giả sử D = [t1, t2, , tm] là một danh sách các phần tử trong F  O Ký hiệu A0

= A, A1 = t1(A0), , Am = tm(Am-1), và D(A) = Am Ta có A0  A1   Am = D(A)  M

Một vấn đề HG được gọi là khó thể giải được nếu tồn tại một danh sách D  F 

O như là D(A)  B Trong trường hợp này, ta nói D chính là giải pháp để giải quyết vấn đề trên

Thuật toán sau dùng để tìm bài giải cho một HG trên mạng các đối tượng tính toán Các đối tượng có thể tham gia vào trong bài giải như là những mối quan hệ của đối tượng tính toán

Algorithm 1: Tìm bài giải cho vấn đề HG trên mạng các đối tượng tính toán

Step 1: Solution  empty;

Trang 26

end;  while  Until Solution_found or (H = Hold); Step 4: if not Solution_found then

begin

Select Oi  O such that Oi(H)  H;

if (the selection is successful) then

begin

H  Oi(H);

Add Oi to Solution;

if (G  H) then begin

Solution_found  true;

goto step 5;

end;

else goto step 3;

Trang 27

24

end;

end;

Step 5: if not Solution_found then

There is no solution found;

else

Solution is a solution of the problem;

Ví dụ: xem xét mạng các đối tượng tính toán (O, F) trong ví dụ ở phần trước, và vấn

đề HG, trong đó H = O1.a, O1.A, và G = O2.a

M =  O1.a, O1.b, O1.c, O1.A, O2.b, O2.c, O2.A , O2.a, O3.a, O4.a 

Thuật toán trên sẽ sinh ra được bài giải:

Trang 28

25

A2 =  O1.a , O1.A, O2.A, O1.b, O1.c ,

A3 = O1.a , O1.A, O2.A, O1.b, O1.c, O3.a,

A4 = O1.a , O1.A, O2.A, O1.b, O1.c, O3.a, O4.a,

A5 = O1.a , O1.A, O2.A, O1.b, O1.c, O3.a, O4.a, O2.b,

A6 = O1.a , O1.A, O2.A, O1.b, O1.c, O3.a, O4.a, O2.b, O2.c,

A7 = O1.a , O1.A, O2.A, O1.b, O1.c, O3.a, O4.a, O2.b, O2.c, O2.a

Ngày đăng: 10/04/2015, 09:58

HÌNH ẢNH LIÊN QUAN

Hình 1. Biểu đồ Hasse thể hiện phân cấp của các khái niệm tam giác. - MÔN BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG TÌM HIỂU MÔ HÌNH COKB-ONT
Hình 1. Biểu đồ Hasse thể hiện phân cấp của các khái niệm tam giác (Trang 7)
Hình học phẳng. - MÔN BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG TÌM HIỂU MÔ HÌNH COKB-ONT
Hình h ọc phẳng (Trang 14)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w