Tải bản đầy đủ (.doc) (29 trang)

TÌM HIỂU LÝ THUYẾT VỀ MÔ HÌNH TRI THỨC CÁC ĐỐI TƯỢNG TÍNH TOÁN

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (221.48 KB, 29 trang )

ĐẠ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
________oOo________
BÀI THU HOẠCH MÔN HỌC
BIỂU DIỄN TRI THỨC &
ỨNG DỤNG

TÌM HIỂU LÝ THUYẾT VỀ MÔ HÌNH
TRI THỨC CÁC ĐỐI TƯỢNG TÍNH TOÁN
PGS. TS.: ĐỖ VĂN NHƠN
HỌC VIÊN: NGUYỄN HOÀNG HUY
MSHV: CH1101090
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
< 2012 >
BÀI THU HOẠCH MÔN HỌC
Trang 2
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
MỤC LỤC
LỜI NÓI ĐẦU 4
TÓM TẮT NỘI DUNG 5
A. MÔ HÌNH TRI THỨC CÁC ĐỐI TƯỢNG TÍNH TOÁN 6
1. Giới thiệu 6
2. Mô hình tri thức các đối tượng tính toán 7
2.1. Các đối tượng tính toán 7
2.2. Các thành phần của mô hình tri thức các đối tượng tính toán 8
2.3 Các loại sự kiện trong mô hình tri thức đối tượng tính toán 10
2.4 Đặc điểm kỹ thuật ngôn ngữ 13
3. Mạng các đối tượng tính toán 16
Định nghĩa 3 16


Định nghĩa 4: 17
4. Thiết kế 20
4.1. Cấu trúc hệ thống 20
4.2. Kỹ thuật thiết kế 21
5. Ví dụ 23
Example 1: 23
Example 2: 24
Example 3: 25
B. ÁP DỤNG MÔ HÌNH COKB XÂY DỰNG ỨNG DỤNG (MỨC CƠ BẢN) 27
1. Giới thiệu 27
2. Phân tích lý thuyết 27
3. Cài đặt mô phỏng 27
TÀI LIỆU THAM KHẢO 28
BÀI THU HOẠCH MÔN HỌC
Trang 3
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
LỜI NÓI ĐẦU
Chúng ta có thể thấy tốc độ phát triển của khoa học máy tính ngày nay rất mạnh
mẽ. Máy tính ngày nay hầu như có mặt trên khắp mọi nơi, cuộc sống con người ngày
nay hầu như không thể tách rời với máy tính. Máy tính được ứng dụng rộng khắp từ
việc giải trí, học tập cho đến việc nghiên cứu.
Nhờ vào sự hỗ trợ của máy tính, con người ngày nay gần như ngày càng thông
minh - con người thông minh hơn thì con người cũng nghiên cứu ra các cổ máy tính
thông minh hơn. Sự hỗ trợ tương hỗ này giúp con người ngày càng phát triển.
Để có được những máy tính thông minh, con người đã không ngừng tìm hiểu và
nghiên cứu trong lĩnh vực khoa học máy tính, tìm tòi và xây dựng ra các hệ thống
máy tính thông minh. Và lĩnh vực nghiên cứu các hệ tri thức cơ sở thông minh – trí
tuệ nhân tạo là một trong những lĩnh vực quan trọng góp phần tạo nên sức mạnh của
khoa học máy tính.

Ngày nay đã có rất nhiều công trình nghiên cứu các phương thức biểu diễn tri thức
bằng máy tính hay và được ứng dụng trong các lĩnh vực thực tế. Mô hình tri thức các
đối tượng tính toán (COKB model) là một trong những công trình nghiên cứu điển
hình của PGS. TS. Đỗ Văn Nhơn. Mô hình này của thầy đã giúp ích rất nhiều trong
việc xây các ứng dụng thông minh trong các lĩnh vực thực tế như hệ thống giải toán
hình học, ứng dụng trong vật lý, y học, xây dựng…
Do thời gian có hạn, học viên thực hiện bài thu hoạch này chỉ đọc và dịch lại từ
tào tài liệu gốc của thầy [2010-05, Model for Knowledge Bases of Computational
Objects(7-3-8-11-20)]. Và trong quá trình dịch có thể sẽ khó tránh khỏi những sai sót
– mong thầy thông cảm và bỏ qua.
Xin cám ơn thầy đã tận tình chỉ dạy để cho các học viên có được những kiến thức
quý báo để làm nền tảng hỗ trợ cho việc nghiên cứu sau này.
BÀI THU HOẠCH MÔN HỌC
Trang 4
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
TÓM TẮT NỘI DUNG
Trong lĩnh vực trí tuệ nhân tạo, việc suy luận và biểu diễn kiến thức là những vấn đề quan
trọng đối với hệ thống thông minh, đặc biệt là hệ thống cơ sở tri thức và hệ thống chuyên
gia. Các mô hình biểu diễn tri thức có vai trò quan trọng trong việc thiết kế các hệ thống.
Đã có nhiều mô hình kiến thức như mạng ngữ nghĩa, đồ thị khái niệm và các mạng nơron.
Những mô hình này là những công cụ hữu ích để thiết kế các hệ thống thông minh. Tuy
nhiên, chúng không thích hợp để biểu diễn tri thức trong các lĩnh vực ứng dụng thực tế.
Trong bài báo này, tác giả sẽ trình bày các mô hình biểu diễn tri thức mới - được gọi là
mô hình tri thức cơ bản của các đối tượng tính toán. Đồng thời tác giả cũng sẽ trình bày
các vấn đề và thuật toán của mô hình, thiết kế các phương thức sử dụng các mô hình để
xây dựng các ứng dụng.
BÀI THU HOẠCH MÔN HỌC
Trang 5
BIỂU DIỄN THI THỨC & ỨNG DỤNG

PGS. TS. ĐỖ VĂN NHƠN
A. MÔ HÌNH TRI THỨC CÁC ĐỐI TƯỢNG TÍNH TOÁN
1. Giới thiệu
Trong khoa học trí tuệ nhân tạo, các mô hình và phương pháp biểu diễn tri
thức đóng một vai trò quan trọng trong việc thiết kế các hệ thống cơ sở tri thức và
các hệ thống chuyên gia. Ngày nay có rất nhiều mô hình kiến thức khác nhau đã
được đề xuất và áp dụng. Trong các sách ham khảo [1], [2], [6] và [10] tác giả đã
tìm thấy phương pháp phổ biến cho biểu diễn tri thức trong việc thiết kế hệ thống
cơ sở tri thức (knowledge base systems - KBS) và hệ thống thông minh. Chúng
bao gồm logic vị từ, mạng ngữ nghĩa, khung (frames), các quy tắc suy luận. Nhiều
phương pháp và kỹ thuật mới đã được trình bày trong các tài liệu [12], [13], [14]
và [15]. Trong số những phương pháp này, các mạng nơron và logic mờ có thể
được sử dụng để tính toán thông minh. Một số phương pháp phù hợp để đại diện
và xử lý ngữ nghĩa như biểu đồ khái niệm trong các tài liệu [6], [10] và [11]. Các
phương pháp trên là rất hữu ích cho việc thiết kế các hệ thống thông minh và giải
quyết các vấn đề phức tạp. Tuy nhiên, trong nhiều trường hợp chúng không thích
hợp để biểu diễn tri thức trong các lĩnh vực ứng dụng thực tế, đặc biệt là các hệ
thống có thể giải quyết các vấn đề cơ bản trong thực tế dựa trên cơ sở tri thức.
Vì vậy, việc phát triển các mô hình mới để biểu diễn tri thức trong các ứng
dụng thực tế là thật sự cần thiết. Trong bài báo này, tác giả sẽ trình bày các mô
hình biểu diễn tri thức và chúng có thể được sử dụng để thiết kế các hệ thống cơ
sở tri thức và hệ thống thông minh trong thực tế. Mô hình chính được trình bày ở
đây là mô hình tri thức của các đối tượng tính toán. Mô hình này có thể được sử
dụng để đại diện cho toàn bộ những kiến thức và thiết kế các thành phần kiến thức
cơ bản của các hệ thống. Tiếp theo, mạng lưới của các đối tượng tính toán có thể
được sử dụng cho các vấn đề mô hình hóa trong các lĩnh vực tri thức. Các mô hình
này là các công cụ để thiết kế động cơ suy luận của hệ thống. Chúng cũng đã được
sử dụng trong việc thiết kế một số hệ thống cơ sở kiến thức trong giáo dục để giải
quyết các vấn đề như hệ thống hỗ trợ học tập kiến thức và giải quyết các vấn đề
hình học giải tích, xây dựng các chương trình nghiên cứu và giải quyết các vấn đề

trong hình học phẳng, chương trình để giải quyết các vấn đề về dòng điện xoay
chiều trong vật lý. Các ứng dụng này đã được thực hiện bằng cách sử dụng các
công cụ lập trình và hệ thống đại số máy tính như C + +, JAVA, và MAPLE.
Chúng rất dễ dàng để sử dụng cho học sinh nghiên cứu kiến thức, tự động giải
quyết vấn đề và đưa ra các giải pháp đúng đắn mà con người có thể đọc được.
BÀI THU HOẠCH MÔN HỌC
Trang 6
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
2. Mô hình tri thức các đối tượng tính toán
Các phương pháp biểu diễn tri thức truyền thống được trình bày trong các tài
liệu [2], [4], và [20] đã được quan tâm và rất hữu ích cho nhiều ứng dụng. Tuy
nhiên, những phương pháp này không đủ mạnh và không dễ dàng sử dụng để xây
dựng các chương trình thông minh hoặc các hệ thống cơ sở tri thức trong các lĩnh
vực kiến thức khác nhau, đặc biệt là các chương trình cho kết quả mà con người
có thể đọc được. Mô hình tri thức của các đối tượng tính toán (mô hình KBCO) đã
được thiết lập từ cách tiếp cận hướng đối tượng để biểu diễn tri thức kết hợp với
các kỹ thuật lập trình tính toán tượng trưng (symbolic computation). Cũng đã có
nhiều kết quả và các công cụ từ các phương pháp hướng đối tượng, và một số
nguyên tắc cũng như một số kỹ thuật đã được trình bày trong tài liệu [16]. Bằng
cách này cũng cho chúng ta một phương pháp mô hình hóa các vấn đề và thiết kế
thuật toán. Các mô hình này rất hữu ích cho việc xây dựng các thành phần và xâ
dựng toàn bộ các tri thức của hệ thống thông minh trong các lĩnh vực tri thức thực
tế.
2.1. Các đối tượng tính toán
Trong nhiều vấn đề giải toán dựa trên tri thức ta thường gặp nhiều loại đối
tượng khác nhau. Mỗi đối tượng có các thuộc tính và các quan hệ nội tại của
chúng. Chúng cũng có các hành vi cơ bản để giải quyết các vấn đề trên chính
các thuộc tính của chúng.
Định nghĩa 1: Một đối tượng tính toán (C-object) có các đặc tính như sau:

(1) Có các thuộc tính có giá trị. Một tập hợp của tất cả các thuộc tính đối
tượng O (object) sẽ được biểu diễn bởi M(O).
(2) Có các mối quan hệ tính toán nội tại giữa các thuộc tính. Chúng được
thể hiện qua các đặc điểm của đối tượng như sau:
- Cho A là một tập con của M(O). Đối tượng O có thể cho ta biết các thuộc
tính được xác định từ A.
- Đối tượng O sẽ cho giá trị của một thuộc tính.
- Nó cũng cho biết các phương pháp nội bộ để xác định các thuộc tính.
Cấu trúc của các đối tượng tính toán có thể mô hình bởi (Attrs, F, Facts,
Rules). Trong đó Attrs là tập hợp các thuộc tính, F là tập hợp các phương trình
được gọi là các quan hệ tính toán, Facts là tập hợp các tính chất hay sự kiện
của đối tượng và Rules là tập hợp các luật suy diễn trên Facts.
BÀI THU HOẠCH MÔN HỌC
Trang 7
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Ví dụ: cho tri thức về một tam giác bao gồm các thành phần (góc, cạnh,
điểm, …) cùng với các công thức và một số các thuộc tính trên tam giác có thể
mô hình như một lớp của đối tượng. Ta có các tập hợp như sau:
Attrs = {A, B, C, a, b, c, R, S, p, } là tập hợp tất cả các thuộc tính của
tam giác,
F = {A+B+C = π;
R
A
a
2
)sin(
=
;
R

B
b
2
)sin(
=
;
R
C
c
2
)sin(
=
;
)sin()sin( B
b
A
a
=
;
)sin(
2
1
AbcS
=
; },
Facts = {a+b>c; a+c>b; b+c>a ; …},
Rules = { {a>b} ⇔ {A>B}; {b>c} ⇔ {B>C}; {c>a} ⇔ {C>A}; {a=b} ⇔
{A=B}; {a^2= b^2+c^2} ⇒ {A=pi/2}, {A=pi/2} ⇒ {a^2 = b^2+c^2, b ⊥
c}, }.
Một đối tượng có các hành vi cơ bản để giải quyết các vấn đề trên các

thuộc tính của nó. Đối tượng được trang bị khả năng giải quyết vấn đề như
sau:
1. Xác định bao đóng của tập các thuộc tính.
2. Thực hiện việc suy luận và trả lời các câu hỏi của vấn đề theo
dạng: xác định các thuộc tính từ các thuộc tính khác.
3. Thực hiện các tính toán.
4. Đề xuất giả thuyết hoàn chỉnh nếu cần thiết.
Ví dụ, khi một đối tượng tam giác được yêu cầu giải quyết một vấn đề {a,
B, C} ⇒ S, nó sẽ đưa ra giải pháp bao gồm các bước như sau:
Bước 1: xác dịnh A theo phương trình A = π-B-C;
Bước 2: xác định b theo phương trình b = a.sin(B)/sin(A);
Bước 3: xác định S theo phương trình S = a.b.sin(C)/2;
2.2. Các thành phần của mô hình tri thức các đối tượng tính toán
Định nghĩa 2: Mô hình tri thức các đối tượng tính toán bao gồm 6 thành
phần:
(C, H, R, Ops, Funcs, Rules).
Ý nghĩa của các thành phần như sau:
- C là tập hợp các khái niệm của các đối tượng tính toán. Mỗi khái
niệm trong C là 1 một lớp của đối tượng tính toán.
- H là tập hợp các quan hệ phân cấp trên các khái niệm.
BÀI THU HOẠCH MÔN HỌC
Trang 8
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
- R là tập hợp các quan hệ trên các khái niệm.
- Ops là tập hợp các toán tử.
- Funcs là tập hợp các hàm.
- Rules là tập luật.
Có các quan hệ thể hiện sự chuyên biệt giữa các khái niệm trên tập C; H là
tập tiêu biểu cho các quan hệ đặc biệt trên C. Quan hệ này là quan hệ có thứ tự

trên tập C và H có thể xem như là một biểu đồ Hasse cho mối quan hệ này.
Hình 1 bên dưới thể hiện các mối quan hệ đặc biệt giữa các lớp của tam giác.
Hình 1: Quan hệ phân cấp giữa các lớp của tam giác.
R là một tập hợp các mối quan khác trên C, và trong trường hợp r là một
quan hệ nhị phân – nó có thể có các thuộc tính như phản xạ, đối xứng, v.v
Trong hình học phẳng và hình học giải tích có rất nhiều mối quan hệ: quan hệ
“thuộc về” của một điểm đối với 1 đường thẳng, quan hệ “trung điểm” của
một điểm trên một đoạn thẳng, quan hệ “song song” giữa 2 đoạn thẳng, quan
hệ “vuông góc” giữa 2 đoạn thẳng, quan hệ đồng dạng giữa các tam giác, v.v
Ops là một tập hợp các phép toán trên C. Thành phần này thể hiện một
phần kiến thức về các toán tử trên các đối tượng. Hầu hết các lĩnh vực tri thức
đều có một thành phần chứa đựng các toán tử. Trong hình học giải tích có các
phép toán trên vector như: cộng, tích vô hướng, tích có hướng…; trong đại số
tuyến tính có các phép toán trên ma trận. The KBCO model helps to organize
this kind of knowledge in knowledge domains as a component in the
knowledge base of intelligent systems.
Tập hợp Funcs chứa các hàm tính toán trên các đối tượng tính toán. Tri
thức về các hàm cũng là một loại tri thức phổ biến trong các lĩnh vực thực tiễn,
đặc biệt là các lĩnh vực trong khoa học tự nhiên như lĩnh vực toán học, lĩnh
vực vật lý. Trong hình học giải tích, chúng ta có các hàm như: tính khoảng
BÀI THU HOẠCH MÔN HỌC
Trang 9
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
cách giữa 2 điểm, tính khoảng cách từ 1 điểm tới 1 đường thẳng hoặc tới 1 mặt
phẳng, chiếu 1 điểm hoặc 1 đường thẳng lên 1 mặt phẳng, v.v Định thức của
một ma trận vuông cũng là một hàm trên ma trận vuông trong đại số tuyến
tính.
Tập Rules thể hiện cho các luận suy diễn. Tập luật là một phần của cơ sở
tri thức. Các luật đại diện cho các phát biểu, định lý, nguyên lý, công thức, và

nhiều hơn nữa Hầu hết các luật đều có thể viết dưới dạng “if <facts> then
<facts>”. Trong cấu trúc của một luật suy diễn, <facts> là tập hợp các sự kiện
với sự phân loại nhất định. Vì thế, chúng ta dùng luật suy diễn trong mô hình
tri thức các đối tượng tính toán. Các sự kiện phải được phân loại để thành
phần Rules có thể xác định và xử lý trong bộ máy suy luận của hệ thống cơ sở
tri thức hoặc hệ thống thông minh.
Dựa trên mô hình tri thức đối tượng tính toán, cơ sở tri thức có thể được tổ
chức bởi các thành phần sau:
1. Từ điển khái niệm về các loại của đối tượng, các thuộc tính, các toán
tử, các hàm, các mối quan hệ và các khái niệm liên quan.
2. Bảng miêu tả cho các cấu trúc và đặc điểm của đối tượng. Ví dụ như
chúng ta có thể yêu cầu một tam giác tính toán và cho chúng ta kết quả
về các thuộc tính của nó.
3. Các bảng thể hiện các mối quan hệ phân cấp của các khái niệm.
4. Các bảng thể hiện các mối quan hệ khác của các khái niệm.
5. Các bảng biểu diển tri thức về các toán tử.
6. Các bảng biểu diển tri thức về các hàm.
7. Các bảng miêu tả các loại của các sự kiện. Ví dụ một sự kiện quan hệ
bao gồm loại của quan hệ và danh sách các đối tượng trong mối quan
hệ.
8. Các bảng miêu tả cho các luật. Ví dụ luật suy diễn bao gồm phần giả
thuyết và phần kết luận. Cả 2 đều là danh sách các sự kiện.
9. Các danh sách hoặc tập hợp các luật.
10. Các danh sách các mẫu vấn đề.
2.3 Các loại sự kiện trong mô hình tri thức đối tượng tính toán
Có 11 loại sự kiện được chấp nhận trong mô hình tri thức các đối tượng
tính toán. Các loại sự kiện này đã được đề xuất từ việc nghiên cứu trên các
nhu cầu và vấn đề thật tế trong nhiều lĩnh vực tri thức khác nhau.
BÀI THU HOẠCH MÔN HỌC
Trang 10

BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
- Loại 1: thông tin về loại của đối tượng. Ví dụ:
ABC là một tam giác vuông.
ABCD là một hình bình hành.
Ma trận A là một ma trận vuông.
- Loại 2: việc xác định một đối tượng hoặc một thuộc tính của một đối
tượng. Ta xét vấn đề sau đây trong hình học giải tích để hiểu rỏ thêm
sự kiện của loại 2.
Vấn đề: Cho 2 điểm E, F và đường thẳng (d). Giả sử E, F và (d) đã
được xác định. (P) là một mặt phẳng thỏa mối quan hệ sau: E ∈
(P), F ∈ (P), (d) // (P). Tìm phương trình tổng quát của (P).
Trong vấn đề này chúng ta có 3 sự kiện loại 2:
(1) điểm E được xác định hay chúng đã biết được tọa độ của E.
(2) điểm F được xác định hay chúng đã biết được tọa độ của F.
(3) đường thẳng (d) được xác định hay chúng ta đã biết phương
trình của (d).
- Loại 3: việc xác định một đối tượng hoặc một thuộc tính của một đối
tượng bằng một giá trị hoặc từ một biểu thức. Ta xét vài ví dụ trong
hình học phẳng và hình học giải tích như sau:
• Cho tam giác ABC và biết chiều dài cạnh BC = 5.
• Mặt phẳng (P) có phương trình 2x + 3y – z + 6 = 0 và điểm M
có tọa độ là (1, 2, 3).
- Loại 4: tính đồng dạng, bằng nhau của các đối tượng hoặc thuộc tính
của các đối tượng. Loại sự kiện này cũng rất phổ biến và có rất nhiều
vần đề liên quan tới nó trong cơ sở tri thức. Ta xét vấn đề sau trong
hình học phẳng:
Vấn đề: Cho hình bình hành ABCD. Giả sử M và N là 2 điểm
thuộc cạnh AC và thỏa AM = CN. Điều đó cho ta 2 tam giác ABM
và CDN bằng nhau (Hình 2).

Hình 2: Δ ABM = Δ CDN
BÀI THU HOẠCH MÔN HỌC
Trang 11
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Ở vấn đề trên chúng ta xác định sự bằng nhau giữa 2 đối tượng
– đó là một sự kiện loại 4.
- Loại 5: sự phụ thuộc của một đối tượng trên các đối tượng khác bởi
một đẳng thức. Một ví dụ trong hình học cho sự kiện loại này như sau:
w = 2*u + 3*v; với u, v và w là các vector.
- Loại 6: mối quan hệ trên các đối tượng hoặc trên các thuộc tính của đối
tượng. Trong hầu hết các vấn đề trong hình học, các sự kiện loại 6 có
dạng như sau: 2 đường thẳng song song, 1 đường thẳng vuông gốc với
một 1 phẳng, 1 điểm thuộc 1 đoạn thẳng.
- Loại 7: sự xác định của 1 hàm.
- Loại 8: sự xác định 1 hàm bằng 1 giá trị hoặc một biểu thức hằng.
- Loại 9: sự bằng nhau giữa một đối tượng và một hàm.
- Loại 10: sự bằng nhau giữa 2 hàm.
- Loại 11: sự phụ thuộc của 1 hàm vào các hàm khác hoặc các đối tượng
khác bởi một đẳng thức.
Năm loại sự kiện sau cùng có liên hệ tới tri thức về các hàm – là thành
phần Funcs trong mô hình tri thức các đối tượng tính toán. Vấn đề dưới đây sẽ
cho ta ví dụ về các sự kiện có liên quan tới các hàm:
Vấn đề: Cho (d) là một đường thẳng có phương trình 3x + 4y - 12 = 0. P
và Q là 2 điểm thuộc (d), và các trục Ox, Oy.
(a) Tìm trung điểm của PQ.
(b) Tìm hình chiếu của O trên đường thằng (d).
Với mỗi đoạn thằng, tồn tại 1 và chỉ 1 điểm là trung điểm của đoạn thẳng
đó. Vì thế, có 1 hàm MIDPOINT(A, B) cho ta trung điểm M của đoạn thằng
AB. Câu (a) của vấn đề trên có thể biểu diễn để tìm 1 điểm I như sau: I =

MIDPOINT(P,Q) – đây là một sự kiện loại 9.
Hình chiếu của điểm cũng có thể biểu diển bằng hàm PROJECTION(M, d)
– hàm cho ta điểm N là hình chiếu của M trên đường thẳng (d). Câu (b) của
vấn đề trên có thể biểu diễn để tìm điểm A như sau: A = PROJECTION(O,d)
– đây cũng là một sự kiện loại 9.
Các mô hình và các loại sự kiện trên có thể dùng để biểu diễn tri thức
trong các ứng dụng thực tế. Một thuật toán thống nhất của các sự kiện được
thiết kế và sử dụng cho nhiều ứng dụng khác nhau chẳng hạng như: hệ thống
hỗ trợ học tập và giải quyết các vấn đề trong hình học giải tích; ứng dụng
BÀI THU HOẠCH MÔN HỌC
Trang 12
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
nghiên cứu và giải quyết vấn đề trong hình học phẳng; hệ thống tri thức trong
đại số tuyến tính.
2.4 Đặc điểm kỹ thuật ngôn ngữ
Ngôn ngữ cho mô hình tri thức các đối tượng tính toán được xây dựng xác
định cơ sở tri thức trong các hệ thống thông minh với tri thức theo dạng mô
hình tri thức các đối tượng tính toán. Ngôn ngữ này bao gồm các thành phần
sau:
- Một tập hợp các ký tự: chữ cái, số, ký tự đặc biệt.
- Từ vựng: từ khóa, định danh.
- Các kiểu dữ liệu: các loại cơ bản và các loại có cấu trúc.
- Các biểu thức và mệnh đề.
- Phát biểu.
- Cú pháp để xác định các thành phần của mô hình tri thức đối tượng
tính toán.
Sau đây là một vài cấu trúc của các định nghĩa cho các biểu thức, đối
tượng tính toán, các quan hệ, các sự kiện và các hàm.
Definitions of expressions:

expr ::= expr | rel-expr | logic-expr
expr ::= expr add-operator term |
term
term ::= term mul-operator factor | factor
factor ::= – factor |
element ^ factor |
element
element ::= ( expr ) |
name |
number |
function-call
rel-expr ::= expr rel-operator expr
logic-expr ::= logic-expr OR logic-term |
logic-expr IMPLIES logic-term |
NOT logic-term |
logic-term
logic-term ::= logic-term AND logic-primary |
BÀI THU HOẠCH MÔN HỌC
Trang 13
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
logic-primary
logic-primary ::= expr |
rel-expr |
function-call |
quantify-expr
TRUE | FALSE
quantify-expr ::= FORALL(name <, name>*),
logic-expr | EXISTS(name), logic-expr
Definitions of Com-object type:

cobject-type ::= COBJECT name;
[isa]
[hasa]
[constructs]
[attributes]
[constraints]
[crelations]
[facts]
[rules]
ENDCOBJECT;
Definitions of computational relations:
crelations ::= CRELATION:
crelation-def+
ENDCRELATION;
crelation-def ::= CR name;
MF: name <, name>*;
MFEXP: equation;
ENDCR;
equation ::= expr = expr
Definitions of special relations:
isa ::= ISA: name <, name>*;
hasa ::= HASA:
[fact-def]
BÀI THU HOẠCH MÔN HỌC
Trang 14
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Definitions of facts:
facts ::= FACT: fact-def+
fact-def ::= object-type | attribute | name |

equation | relation | expression
object-type ::= cobject-type (name) |
cobject-type (name <, name>* )
relation ::= relation ( name <, name>+ )
Definitions of relations based on facts:
relation-def ::= RELATION name;
ARGUMENT: argument-def+
[facts]
ENDRELATION;
argument-def ::= name <, name>*: type;
Definitions of functions – form 1:
function-def ::= FUNCTION name;
ARGUMENT: argument-def+
RETURN: return-def;
[constraint]
[facts]
ENDFUNCTION;
return-def ::= name: type;
Definitions of functions – form 2:
function-def ::= FUNCTION name;
ARGUMENT: argument-def+
RETURN: return-def;
[constraint]
[variables]
[statements]
ENDFUNCTION;
statements ::= statement-def+
BÀI THU HOẠCH MÔN HỌC
Trang 15
BIỂU DIỄN THI THỨC & ỨNG DỤNG

PGS. TS. ĐỖ VĂN NHƠN
statement-def ::= assign-stmt | if-stmt | for-stmt
asign-stmt ::= name := expr;
if-stmt ::= IF logic-expr THEN statements+
ENDIF; |
IF logic-expr THEN statements+
ELSE statements+
ENDIF;
for-stmt ::= FOR name IN [range] DO
statements+
ENDFOR;
3. Mạng các đối tượng tính toán
Định nghĩa 3
Một quan hệ tính toán f giữa các thuộc tính của đối tượng hoặc giữa các
đối tượng được gọi là một 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 1 tập hợp các đối tượng tính toán O = {O
1
, O
2
, ,
O
n
} và một tập hợp các mối quan hệ tính toán F = {f
1
, f
2
, , f
m
}. Mạng các
đối tượng tính toán được biểu diển bởi (O, F).

Ta có 1 số ký hiệu sau:
M(f
i
) = tập hợp các thuộc tính của các đối tượng tính toán trên quan hệ f
i.
M(F) =

m
1i
i
)M(f
=
.
M(O) =

n
1i
i
)M(O
=
.
M = tập hợp các thuộc tính của các đối tượng tính toán được xem xét
trong 1 vấn đề nào đó.
M
i
= M ∩ M(O
i
), i = 1,2, , m.
Với các ký hiệu trên, M
i

là tập hợp các thuộc tính được xem xét của đối
tượng O
i
.
Trên mạng các đối tượng tính toán (O, F), chúng ta quan tâm vấn đề xác
định (hoặc tính toán) các thuộc tính trong tập G từ các thuộc tính có được
trong tập H. Vấn đề được biểu diễn bởi H→G.
BÀI THU HOẠCH MÔN HỌC
Trang 16
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Ví dụ 1: Cho hình như bên dưới, biết rằng AB = AC, góc A và cạnh BC đã
được xác định. ABDE và ACFG là hình vuông. Tính cạnh EG.
Hình 3: Một vấn đề trong hình học.
Vấn đề trên có thể biểu diễn trên mạng các đối tượng tính toán (O, F) như
sau:
O = {O
1
: tam giác ABC with AB = AC, O
2
: tam giác AEG, O
3
: hình vuông
ABDE, O
4
: hình vuông ACFG}
F = {f
1
, f
2

, f
3
, f
4
, f
5
} bao gồm các quan hệ sau:
f
1
: O
1
.c = O
3
.a (cạnh c của tam giác ABC = cạnh của hình vuông ABDE)
f
2
: O
1
.b = O
4
.a (cạnh b của tam giác ABC = cạnh của hình vuông ACFG)
f
3
: O
2
.b = O
4
.a (cạnh b của tam giác AEG = cạnh của hình vuông ACFG)
f
4

: O
2
.c = O
3
.a (cạnh c của tam giác AEG = cạnh của hình vuông ABDE)
f
5
: O
1
.A + O
2
.A = π.
Định nghĩa 4:
Cho (O, F) là mạng các đối tượng tính toán, và M là tập hợp các thuộc tính
có liên quan. Gọi A là một tập con của M.
(a) Với mỗi quan hệ f ∈ F, thì f(A) là hợp của tập A và tập chứa tất cả các
thuộc tính trong M được suy ra từ A bởi f. Tương tự, với mỗi đối
tượng tính toán O
i
∈ O, O
i
(A) là hợp của tập A và tập chứa tất cả các
thuộc tính (trong M) mà đối tượng O
i
có thể xác định từ các thuộc tính
trong A.
(b) Gọi D = [t
1
, t
2

, , t
m
] là một danh sách có được từ F ∪ O. Ta ký hiệu:
A
0
= A, A
1
= t
1
(A
0
), . . ., A
m
= t
m
(A
m-1
), và D(A) = A
m
Ta có A
0
⊆ A
1
⊆ . . . ⊆ A
m
= D(A) ⊆ M.
Một vấn đề H → G được coi là có thể giải quyết được nếu có một danh
sách D ⊆ F ∪ O sao cho D(A) ⊇ B. Trong trường hợp này, chúng ta nói rằng
D là một giải pháp cho vấn đề.
BÀI THU HOẠCH MÔN HỌC

Trang 17
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Thuật giải bên dưới cho ta cách tìm một giải pháp cho vấn đề H→G trên
mạng các đối tượng tính toán. Các đối tượng có thể tham gia trong các giải
pháp như các quan hệ tính toán.
Thuật giải 1:
Tìm giải pháp cho vấn đề H→G trên mạng các đối tượng tính toán.
Bước 1:
Solution ← empty;
Bước 2:
if G ⊆ H then
begin
Solution_found ← true;
goto step 5;
end
else
Solution_found ← false;
Bước 3:
Repeat
Hold ← H;
Select f ∈ F;
while not Solution_found and (f found) do
begin
if (applying f from H produces new facts) then
begin
H ← H ∪ M(f);
Add f to Solution;
end;
if G ⊆ H then

Solution_found ← true;
Select new f ∈ F;
end;
end; { while }
Until Solution_found or (H = Hold);
Bước 4:
BÀI THU HOẠCH MÔN HỌC
Trang 18
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
if not Solution_found then
begin
Select O
i
∈ O such that O
i
(H) ≠ H;
if (the selection is successful) then
begin
H ← O
i
(H);
Add O
i
to Solution;
if (G ⊆ H) then
begin
Solution_found ← true;
goto step 5;
end;

else
goto step 3;
end;
end;
Bước 5:
if not Solution_found then
There is no solution found;
else
Solution is a solution of the problem;
Ví dụ 2: Xét (O, F) trong ví dụ 1, và vấn đề H→G, với H = {O
1
.a, O
1
.A}
và G = {O
2
.a}.
Chúng ta có:
M(f
1
) = { O
1
.c , O
3
.a },
M(f
2
) = { O
1
.b , O

4
.a },
M(f
3
) = { O
2
.b , O
4
.a },
M(f
4
) = { O
2
.c , O
3
.a },
M(f
5
) = { O
1
.α , O
2
.α },
M = { O
1
.a, O
1
.b, O
1
.c, O

1
.A, O
2
.b, O
2
.c, O
2
.A , O
2
.a, O
3
.a, O
4
.a }.
Thuật toán trên sẽ cho ta kết quả
D = [ f
5
, O
1
, f
1
, f
2
, f
3
, f
4
, O
2
],

BÀI THU HOẠCH MÔN HỌC
Trang 19
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Và tiến trình khai triển các tập thuộc tính như sau:
A
0

5
f
 →
A
1

1
O
 →
A
2

1
f
 →

A
3

2
f
 →

A
4

3
f
 →
A
5

4
f
 →

A
6

→
O
2
A
7
Với
A
0
= A = {O
1
.a , O
1
.A},
A

1
= {O
1
.a , O
1
.A, O
2
.A},
A
2
= { O
1
.a , O
1
.A, O
2
.A, O
1
.b, O
1
.c },
A
3
= {O
1
.a , O
1
.A, O
2
.A, O

1
.b, O
1
.c, O
3
.a},
A
4
= {O
1
.a , O
1
.A, O
2
.A, O
1
.b, O
1
.c, O
3
.a, O
4
.a},
A
5
= {O
1
.a , O
1
.A, O

2
.A, O
1
.b, O
1
.c, O
3
.a, O
4
.a, O
2
.b},
A
6
= {O
1
.a , O
1
.A, O
2
.A, O
1
.b, O
1
.c, O
3
.a, O
4
.a, O
2

.b, O
2
.c},
A
7
= {O
1
.a , O
1
.A, O
2
.A, O
1
.b, O
1
.c, O
3
.a, O
4
.a, O
2
.b, O
2
.c, O
2
.a}.
4. Thiết kế
Trong phần này chúng ta sẽ trình bày tiến trình xây dụng một hệ thống cơ sở
tri thức để giải quyết vấn đề dựa trên cơ sở tri thức. Đồng thời kỹ thuật cho từng
phần cũng sẽ được trình bày.

4.1. Cấu trúc hệ thống
Một hệ thống cơ sở tri thức - với sự hỗ trợ cho các việc tìm kiếm, truy vấn
và giải quyết vấn đề - có cấu trúc như một hệ chuyên gia. Chúng ta có thể thiết
kế hệ thống bao gồm 6 thành phần như sau:
- Hệ cơ sở tri thức.
- Bộ máy suy luận.
- Thành phần diễn giải.
- Bộ nhớ hoạt động.
- Bộ phận quản lý tri thức.
- Thành phần giao diện.
Hình bên dưới cho ta khái quát về cấu trúc hệ thống:
BÀI THU HOẠCH MÔN HỌC
Trang 20
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Hình 4: Cấu trúc hệ thống
Hệ cơ sở tri thức bao gồm tri thức cho việc giải quyết một vài vấn đề trong
lĩnh vực tri thức riêng biệt. Bộ máy suy luận sẽ dùng tri thức được lưu trữ
trong hệ cơ sở tri thức để giải quyết các vấn đề, để tìm kiếm hoặc trả lời cho 1
truy vấn. Nó phải nhận dạng vấn đề và sử dụng các chiến lược suy diễn phù
hợp để tìm ra các luật và các sự kiện để giải quyết vấn đề. Bộ nhớ hoạt động
lưu trữ các sự kiện và các luật trong quá trình tìm kiếm và suy luận. Thành
phần diễn giải hỗ trợ để giải nghĩa các mệnh đề, các khái niệm trong quá trình
giải quyết vấn đề. Bộ phận quản lý tri thức tập trung vào việc cập nhật tri thức
vào hệ cơ sở tri thức. Nó cũng hỗ trợ để tìm kiếm tri thức và kiểm tra sự phù
hợp của tri thức. Thành phần giao diện của hệ thống yêu cầu phải có ngôn ngữ
cụ thể để có thể giao tiếp giữa hệ thống và người học, cũng như giữa hệ thống
và giáo viên.
4.2. Kỹ thuật thiết kế
Quá trình phân tích và thiết kế các thành phần của hệ thống bao gồm các

bước sau:
Bước 1: Thu thập tri thực từ thật tế dựa trên mô hình tri thức các đối tượng
tính toán.
Bước 2: Phân loại tri thức ở bước 1 để phân tích yêu cầu.
Bước 3: Thiết lập cơ cấu cơ sở tri thức cho hệ thống dựa trên mô hình tri
thức các đối tượng tính toán. Cơ sở tri thức có thể tổ chức bằng tập tin văn
bản.
Gồm các tập tim sau:
- OBJECT_KINDS.txt lưu trữ tên của các khái niệm.
- HIERARCHY.txt lưu trữ thông tin của biểu đồ Hasse biểu diễn cho
các thành phần H của mô hình tri thức các đối tượng tính toán.
BÀI THU HOẠCH MÔN HỌC
Trang 21
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
- RELATIONS.txt và RELATIONS_DEF.txt lưu trữ đặc tả của các quan
hệ (thành phần R của mô hình tri thức các đối tượng tính toán).
- OPERATORS.txt và OPERATORS_DEF.txt lưu trữ đặc tả của các
toán tử (thành phần Ops của mô hình tri thức các đối tượng tính toán).
- FUNCTIONS.txt và FUNCTIONS_DEF.txt lưu trữ đặc tả của các hàm
(thành phần Funcs của mô hình tri thức các đối tượng tính toán).
- FACT_KINDS.txt lưu trữ định nghĩa các loại của các sự kiện.
- RULES.txt lưu trữ các luật suy diễn.
- SOMEOBJECTS.txt lưu trữ các đối tượng liên quan khác.
Bước 4: Ở bước này chúng ta mô hình hóa các vấn đề và thiết kế thuật
giải. Các vấn đề được biểu diễn bằng cách dùng mạng các đối tượng tính toán.
Nó bao gồm 3 tập hợp như bên dưới:
O = {O
1
, O

2
, . . ., O
n
},
F = {f
1
, f
2
, . . ., f
m
},
Goal = { g
1
, g
2
, . . ., g
m
}.
Theo mô hình trên, tập O chứa n đối tượng tính toán, tập F là tập các sự
kiện có được từ các đối tượng và Goal chứa các mục tiêu.
Thiết kế thuật toán suy diễn để giải quyết các vấn đề và thiết kế giao diện
của hệ thống có thể phát triển trong 3 bước mô hình hóa như sau:
Bước 4.1: Phân loại các vấn đề như các vấn đề khung, các vấn đề xác
định hoặc chứng minh các sự kiện, các vấn đề tìm kiếm các đối tượng hoặc
các sự kiện, v.v…
Bước 4.2: Phân loại các sự kiện và biểu diễn chúng dựa trên các loại
của sự kiện của mô hình tri thức các đối tượng tính toán.
Bước 4.3: Mô hình hóa các loại của vấn đề việc phân loại ở bước 4.1
và 4.2. Từ mỗi mô hình của mỗi loại, chúng ta có thể cấu trúc một mô hình
chung cho các vấn đề rồi gởi cho hệ thống giải quyết chúng.

Kỹ thuật cơ bản cho việc thiết kế các thuật toán suy diễn là việc thống nhất
các sự kiện. Dựa trên các loại và cấu trúc của các sự kiện, sẽ có một tiêu chuẩn
để đưa ra sự thống nhất. Sau đó đưa ra các thuật toán để kiểm tra sự thống
nhất của 2 sự kiện.
Công việc quan trọng tiếp theo là nghiên cứu các chiến lược suy luận để
giải quyết các vấn đề trên máy tính. Việc khó nhất là mô hình các kinh
BÀI THU HOẠCH MÔN HỌC
Trang 22
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
nghiệm, phản ứng có ý thức và trực giác của con người để tìm ra các luật, để
từ đó có thể bắt chước theo suy nghĩ của con người để giải quyết các vấn đề.
Bước 5: Tạo 1 ngôn ngữ truy vấn cho mô hình. Ngôn ngữ giúp tạo sự giao
tiếp giữa hệ thống và người dùng bằng từ ngữ.
Bước 6: Thiết kế giao diện và lập trình phần mềm. Ứng dụng có thể được
thực hiện bằng các ngôn ngữ lập trình và hệ thống đại số máy tính như Visual
Basic.NET, C#, SQL Server. Chúng rất dễ dàng cho sinh viên sử dụng để tìm
kiếm, truy vấn và giải quyết các vấn đề một cách tự động.
Bước 7: Ở bước này chúng ta kiểm thử, bảo trì và phát triển ứng dụng.
Công việc này giống như trong các hệ thống máy tính khác.
5. Ví dụ
Example 1:
Let d be the line with the equation 3x + 4y - 12 = 0. P and Q are
intersection points of d and the axes Ox, Oy.
(a) Find the midpoint of PQ
(b) Find the projection of O on the line d.
Specification of the problem:
Objects = {[d,line], [P,point], [Q,point]}.
Hypothesis = { d.f = (3*x+4*y-12 = 0), Ox.f = (y = 0),
O = [0, 0], P = INTERSECT(Ox, d),

Q = INTERSECT (Oy, d),
H = PROJECTION(O, d), Oy . f = (x = 0) }.
Goal = { MIDPOINT(P, Q), H }.
Solution found by the system:
Step 1: {d.f = (3*x+4*y-12 = 0), Ox.f = (y = 0),
Oy.f = (x = 0)}  {d.f, Ox.f , Oy.f }.
Step 2: {Ox.f, Oy.f, d.f}
 {Ox, Oy, d}.
Step 3: {P = INTERSECT(Ox,d), d, Ox}
{P = [4, 0]}.
Step 4: {d, Oy, Q = INTERSECT(Oy,d)}
 {Q = [0, 3]}.
Step 5: {P = [4, 0], Q = [0, 3]}
 {P, Q}.
BÀI THU HOẠCH MÔN HỌC
Trang 23
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Step 6: {P, Q}
 {MIDPOINT(P,Q) = [2, 3/2]}.
Step 7: {d, H = PROJECTION(O,d), O}
{ H = [36/25, 48/25]}.
Step 8: {H = [36/25, 48/25]}
 {H}.
Example 2:
Given two points P(2, 5) and Q(5,1). Suppose d is a line that contains the
point P, and the distance between Q and d is 3. Find the equation of line d.
Specification of the problem:
Objects = {[P, point], [Q, point], [d, line]}.
Hypothesis = {DISTANCE(Q, d) = 3, P = [2, 5],

Q = [5, 1], ["BELONG", P, d]}.
Goal = [d.f ].
Solution found by the system:
Step 1: {P = [2, 5]}
 {P}.
Step 2: {DISTANCE(Q, d) = 3}
 {DISTANCE(Q, d)}.
Step 3: {d, P}
 {2d[1]+5d[2]+d[3] = 0}.
Step 4: {DISTANCE(Q, d) = 3}

3
]2[]1[
]3[]2[]1[5
22
=
+
++
dd
ddd
.
Step 5: {d[1] = 1, 2d[1] + 5d[2] + d[3] = 0,

3
]2[]1[
]3[]2[]1[5
22
=
+
++

dd
ddd
}
 {d.f = (
0
7
134
7
24
=−+
yx
),
d.f = (x – 2 = 0)}.
Step 6: {d.f =
0
7
134
7
24
=−+
yx
, d.f = x - 2= 0}
 {d.f}
BÀI THU HOẠCH MÔN HỌC
Trang 24
BIỂU DIỄN THI THỨC & ỨNG DỤNG
PGS. TS. ĐỖ VĂN NHƠN
Example 3:
Given the parallelogram ABCD. Suppose M and N are two points of
segment AC such that AM = CN. Prove that two triangles ABM and CDN are

equal (see figure 2 in section II-B above).
Specification of the problem:
Objects = {[A, POINT], [B, POINT], [C, POINT],
[D, POINT], [M, POINT], [N, POINT],
[O1, PARALLELOGRAM[A, B, C, D],
[O2, TRIANGLE[A, B, M]],
[O3, TRIANGLE [C, D, N]]}.
Hypothesis = { [« BELONG », M, SEGMENT[A, C]],
[« BELONG », N, SEGMENT[A, C]],
SEGMENT[A, M] = SEGMENT[C, N] }.
Goal = { O2 = O3}.
Solution found by the system:
Step 1: Hypothesis
 {O2.SEGMENT[A, M] = O3. SEGMENT[C, N],
O2.SEGMENT[A, B] = O1. SEGMENT[A, B],
O3.SEGMENT[C, D] = O1.SEGMENT[C, D]}.
Step 2: Produce new objects related to O2, O3, and O1
 {[O4, TRIANGLE[A, B, C]],
[O5, TRIANGLE[C, D, A]]}.
Step 3: {[O1, PARALLELOGRAM[A, B, C, D]}
{O4 = O5, SEGMENT[A, B] = SEGMENT[C, D]}.
Step 4: { O2.SEGMENT[A, B] = O1.SEGMENT[A, B],
O3.SEGMENT[C, D] = O1.SEGMENT[C, D],
SEGMENT[A, B] = SEGMENT[C, D]}
{O2.SEGMENT[A, B] = O3.SEGMENT[C, D]}.
Step 5: {[« BELONG », M, SEGMENT[A, C]]}
 {O4.angle_A = O2.angle_A}.
Step 6: {[« BELONG », N, SEGMENT[A, C]]}
 { O5.angle_A = O3.angle_A }.
Step 7: {O4 = O5 }

 {O4.angle_A = O5.angle_A}.
BÀI THU HOẠCH MÔN HỌC
Trang 25

×