Tải bản đầy đủ (.pdf) (104 trang)

Nghiên cứu mô hình COKB thu hẹp và giải quyết vấn đề trên thành phần tri thức hàm

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 (2.1 MB, 104 trang )


ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN






TRẦN PHONG NHÃ





NGHIÊN CỨU MỘT MÔ HÌNH COKB THU
HẸP VÀ GIẢI QUYẾT VẤN ĐỀ TRÊN
THÀNH PHẦN TRI THỨC HÀM







LUẬN VĂN THẠC SĨ
NGÀNH KHOA HỌC MÁY TÍNH
Mã số: 60.48.01.01








TP.HỒ CHÍ MINH – NĂM 2014

ĐẠI HỌC QUỐC GIA TP HCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN






TRẦN PHONG NHÃ



NGHIÊN CỨU MỘT MÔ HÌNH COKB THU
HẸP VÀ GIẢI QUYẾT VẤN ĐỀ TRÊN
THÀNH PHẦN TRI THỨC HÀM




LUẬN VĂN THẠC SĨ
NGÀNH KHOA HỌC MÁY TÍNH
Mã số: 60.48.01.01

NGƯỜI HƯỚNG DẪN KHOA HỌC:

PGS.TS ĐỖ VĂN NHƠN




TP.HỒ CHÍ MINH – NĂM 2014
LỜI CAM ĐOAN


Tôi xin cam đoan:
i. Luận văn này là sản phẩm nghiên cứu của riêng tôi.
ii. Các số liệu, kết quả được trình bày trong luận văn là trung thực và chưa từng
được ai công bố trong bất kỳ công trình nào khác.





Học viên

Trần Phong Nhã
1


MỤC LỤC
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT 4
DANH MỤC CÁC BẢNG 5
DANH MỤC CÁC HÌNH VẼ 5
MỞ ĐẦU 6
Chương 1. TỔNG QUAN 7

1.1 VẤN ĐỀ TRI THỨC 7
1.1.1 Tri thức là gì ? 7
1.1.2 Các cách tiếp cận khoa học về tri thức 7
1.2 BIỂU DIỄN TRI THỨC 8
1.2.1 Định nghĩa 8
1.2.2 Tầm quan trọng của việc nghiên cứu các mô hình biểu diễn tri thức 8
1.2.3 Các phương pháp biểu diễn tri thức trên máy tính 9
1.2.4 Các phương pháp suy diễn trên máy tính 16
1.3 MỤC TIÊU CỦA ĐỀ TÀI 17
Chương 2. CƠ SỞ LÝ THUYẾT 19
2.1 MÔ HÌNH COKB 19
2.1.1 Đối tượng tính toán 19
2.1.2 Các thành phần của mô hình COKB 21
2.1.3 Ngôn ngữ đặc tả cho mô hình COKB 23
2.2 MẠNG TÍNH TOÁN 25
2.2.1 Mạng tính toán với các biến có giá trị đơn giản 26
2.2.2 Mạng các đối tượng tính toán 27
2.2.3 Mạng tính toán mở rộng 29
2


2.3 HỆ GIẢI TOÁN THÔNG MINH 30
2.3.1 Yêu cầu đối với một hệ giải toán: 30
2.3.2 Cấu trúc của một hệ giải toán dựa trên tri thức 30
Chương 3. MÔ HÌNH VÀ THUẬT GIẢI 34
3.1 MÔ HÌNH TRI THỨC FUNCS-COKB 34
3.1.1 Các thành phần của mô hình Funcs-COKB 34
3.1.2 Các loại sự kiện trong mô hình Funcs-COKB 35
3.2 TỔ CHỨC CƠ SỞ TRI THỨC VỀ CÁC COM-OBJECT THEO MÔ HÌNH
FUNCS-COKB 37

3.2.1 Các thành phần trong cơ sở tri thức về các Com-Object. 37
3.2.2 Cấu trúc các tập tin lưu trữ các thành phần trong mô hình Funcs-COKB 38
3.3.3 Sơ đồ tổ chức cơ sở tri thức 47
3.3 MÔ HÌNH BÀI TOÁN 48
3.3.1 Định nghĩa 3.2 49
3.3.2 Ví dụ biểu diễn một số bài toán theo mô hình mạng các Com-Object 49
3.4 THUẬT TOÁN GIẢI TOÁN TỰ ĐỘNG THEO MÔ HÌNH FUNCS-
COKB 51
3.4.1 Thuật toán giải toán tự động 51
3.4.2 Định nghĩa các bước giải 52
3.4.3 Heuristic 55
3.5 CÁC VẤN ĐỀ KỸ THUẬT 57
3.5.1 Hợp nhất sự kiện 57
3.5.2 Thuật giải tìm kiếm và suy diễn trên hàm 60
3.5.3 Thuật giải tìm và giải hệ phương trình 61
3.6 CÁC VÍ DỤ MINH HỌA 63
3


Chương 4. THIẾT KẾ ỨNG DỤNG VÀ THỬ NGHIỆM 66
4.1 XÂY DỰNG MÔ HÌNH CƠ SỞ TRI THỨC 66
4.2 THIẾT KẾ BỘ SUY DIỄN 74
4.3 MINH HỌA ỨNG DỤNG 76
4.3.1 Đặc tả đề bài toán 77
4.3.2 Một số thủ tục chính được cài đặt bằng Maple 79
4.3.3 Các ví dụ minh họa ứng dụng giải toán 80
4.4 THỬ NGHIỆM – ĐÁNH GIÁ 88
Chương 5. KẾT LUẬN VÀ KHUYẾN NGHỊ 92
5.1 CÁC KẾT QUẢ ĐẠT ĐƯỢC 92
5.2 NHỮNG TỒN TẠI CỦA LUẬN VĂN 93

5.3 HƯỚNG PHÁT TRIỂN CỦA LUẬN VĂN 93
TÀI LIỆU THAM KHẢO 94
PHỤ LỤC 96

4


DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

TỪ VIẾT TẮT

TỪ VIẾT ĐẦY ĐỦ Ý NGHĨA
COKB
Computational Objects
Knowledge Base
Cơ sở tri thức các đối tượng tính toán

Com-Object Computational Object Đối tượng tính toán
Com-Net Computational Network Mạng tính toán
CO-Net
Computational Objects
Network
Mạng các đối tượng tính toán
Funcs-COKB
Cơ sở tri thức các đối tượng tính toán
khuyết H, tập trung giải quyết thành
phần hàm




5


DANH MỤC CÁC BẢNG

STT

Hình vẽ Trang

1 Bảng 4.1. Thống kê kết quả thử nghiệm ứng dụng giải toán tự động 88
2 Bảng 4.2. Bảng đánh giá – nhận xét về chương trình ứng dụng 91





DANH MỤC CÁC HÌNH VẼ

STT

Hình vẽ Trang

1 Hình 2.1. Một bài toán trong hình học phẳng 28
2 Hình 2.2. Cấu trúc của một hệ giải toán 30
3 Hình 3.1. Sơ đồ tổ chức cơ sở tri thức theo mô hình Funcs-COKB 47
4 Hình 4.1. Phần mềm ôn thi đại học- môn toán của công ty Adcom 90
5 Hình 4.2. Ứng dụng giải toán online Mathway 90

6



MỞ ĐẦU
Trong lĩnh vực khoa học máy tính nói chung, đặc biệt là lĩnh vực khoa học trí tuệ
nhân tạo nói riêng, luôn luôn có những bước phát triển nhảy vọt rất mạnh mẽ, nó đã,
đang và sẽ hỗ trợ vào mọi lĩnh vực trong đời sống xã hội, sản phẩm của công nghệ
thông tin luôn biến đổi từng ngày, từng giờ. Chính vì vậy, làm khó khăn cho việc học
tập và nghiên cứu.
Với đề tài đã chọn là: “Nghiên cứu một mô hình COKB thu hẹp và giải quyết vấn đề
trên thành phần hàm”, tôi đã sử dụng ngôn ngữ lập trình tính toán hình thức Maple
để thực hiện phần ứng dụng minh họa. Về góc độ học tập, nghiên cứu, tôi nhận thấy
rằng đề tài này giúp cho tôi hiểu rõ hơn về các mô hình biểu diễn tri thức nói chung
và mô hình tri thức các đối tượng tính toán (COKB) nói riêng. Qua đó, phân tích được
những ưu điểm cũng như các vấn đề còn tồn tại của mô hình COKB để nghiên cứu,
đề xuất một mô hình COKB thu hẹp phù hợp hơn với một số miền tri thức nhất định.
Từ việc nắm bắt được về mặt lý thuyết lẫn kỹ thuật, tôi đã viết một ứng dụng minh
họa là một ứng dụng giải toán hình học giải tích hai chiều, giúp cho việc giải toán
phổ thông được thuận tiện hơn.
Ngoài ra việc thực hiện đề tài này còn mang ý nghĩa đánh giá lại quá trình học tập,
nghiên cứu của tôi. Nên về mặt tinh thần, tôi đã cố gắng tìm hiểu, nghiên cứu và
chuẩn bị khá chu đáo cho việc thực hiện bài luận văn này.
Vì thời gian thực hiện cũng như trình độ tiếp thu của tác giả có giới hạn còn kiến thức
thì vô hạn. Vì vậy, bài báo cáo này chắc chắn sẽ không thể tránh khỏi những thiếu
sót. Rất mong nhận được sự đóng góp của quý thầy cô và độc giả về mặt nội dung
cũng như hình thức của tài liệu này. Tôi xin chân thành cám ơn!



Học viên

Trần Phong Nhã

Chương 1. Tổng quan
7


Chương 1. TỔNG QUAN

1.1 VẤN ĐỀ TRI THỨC
1.1.1 Tri thức là gì ?
Tri thức thường được xem là những hiểu biết có mức độ khái quát của con người
trong một phạm vi, một lĩnh vực, một khía cạnh hay một vấn đề nào đó, là kết quả
của quá trình nhận thức, học tập và lập luận, là kiến thức mà con người tích lũy được
thông qua quá trình hoạt động lao động sản xuất vật chất. Các tri thức thường gặp bao
gồm: các khái niệm, các sự kiện, nguyên lý, định lý, định luật, quan hệ giữa các khái
niệm và kinh nghiệm.
Hoạt động nhận thức của con người bao gồm việc tìm kiếm tri thức để tăng cường
hiểu biết về tự nhiên, xã hội và cuộc sống, đồng thời sử dụng các tri thức có được để
tạo nên các kỹ thuật, công nghệ và giải pháp nhằm không ngừng cải thiện cuộc sống
của mình.
Tập hợp các tri thức liên quan đến vấn đề mà chương trình quan tâm giải quyết tạo
thành một cơ sở tri thức [3].
1.1.2 Các cách tiếp cận khoa học về tri thức
Cho đến gần đây, mọi hoạt động liên quan đến việc hình thành tri thức và các quá
trình suy luận trên tri thức đều thuộc chức năng đặc biệt của bộ não con người. Sự ra
đời của máy tính điện tử đã mở ra triển vọng là một số chức năng trí óc có thể dần
dần được thực hiện bởi máy tính.
Những thành tựu bước đầu của việc dùng máy tính để tự động hoá chứng minh các
định lý của Logic toán, để chơi cờ, để phiên dịch, ngay từ thập niên 50, tuy còn khá
thô sơ nhưng cũng đủ để kích thích sự phát triển của nhiều ngành khoa học và công
nghệ tri thức trong những thập niên tiếp theo. Trong quá trình phát triển đó, một mặt
con người có dịp tìm hiểu sâu hơn bản thân hoạt động nhận thức của mình, hệ thống

tri thức mà mình đã tích luỹ được, những thuộc tính của tri thức và những đòi hỏi đối
với tri thức trong hoạt động thực tiễn của con người, mặt khác thúc đẩy việc nghiên
cứu đề xuất nhiều phương pháp khoa học và giải pháp công nghệ để biểu diễn tri
Chương 1. Tổng quan
8


thức, thu thập và tìm kiếm tri thức, xử lý tri thức, quản trị tri thức nhằm ứng dụng có
hiệu quả công nghệ thông tin trong mọi hoạt động của con người.
1.2 BIỂU DIỄN TRI THỨC
Trong quá trình phân tích và thiết kế các hệ thống Trí tuệ nhân tạo, người ta quan tâm
đến 2 vấn đề cơ bản nhất là Biểu diễn tri thức và cơ chế suy luận. Vậy biểu diễn tri
thức được hiểu như thế nào?
1.2.1 Định nghĩa
Có nhiều cách định nghĩa cho khái niệm biểu diễn tri thức:
Thứ nhất, theo [2], [8] biểu diễn tri thức là thể hiện các mô tả về thế giới bên ngoài
dưới dạng sao cho các máy thông minh có thể dựa vào đó để đưa ra những kết luận
về môi trường quanh nó trên cơ sở một cách hình thức các mô tả này.
Thứ hai, theo [12] tác giả nhận định rằng biểu diễn tri thức là phương pháp dùng để
mã hoá tri thức trong cơ sở tri thức của hệ thống, biễu diễn các loại tri thức của con
người bằng các cấu trúc dữ liệu mà máy tính có thể xử lý được, tìm ra các kỹ thuật,
các phương pháp để diễn đạt tri thức nhằm tổ chức được cơ sở tri thức trên máy tính
và thực hiện các xử lý tri thức, vận dụng tri thức giải quyết vấn đề.
1.2.2 Tầm quan trọng của việc nghiên cứu các mô hình biểu diễn tri thức
Nghiên cứu, xây dựng, phát triển các mô hình biểu diễn tri thức và các thuật giải toán
tự động (hay các phương pháp suy diễn) là 2 vấn đề có ý nghĩa, giữ vị trí đặc biệt
quan trọng trong Trí tuệ nhân tạo, nhất là trong các hệ chuyên gia, các hệ giải toán
dựa trên tri thức. Trong khoa học Trí tuệ nhân tạo, để xây dựng các hệ chuyên gia, hệ
giải toán nói trên, người ta phải thiết kế một cơ sở tri thức cho hệ thống và một động
cơ suy diễn để giải quyết các vấn đề dựa trên tri thức. Chất lượng hoạt động của các

hệ này phụ thuộc rất lớn vào tri thức đã có cũng như cách tổ chức và biểu diễn chúng.
Theo [3], [4] biểu diễn tri thức và chiến lược suy diễn tìm kiếm đóng vai trò quyết
định trong quá trình phân tích, thiết kế, xây dựng và cài đặt hệ thống. Do đó, việc
nghiên cứu phát triển các phương pháp biểu diễn tri thức và cơ chế suy luận giải bài
toán dựa trên tri thức có ý nghĩa lớn về mặt lý thuyết cũng như ứng dụng của Trí tuệ
Chương 1. Tổng quan
9


nhân tạo. Các kết quả nghiên cứu sẽ là cơ sở và là công cụ cho việc xây dựng các hệ
cơ sở tri thức, các hệ chuyên gia và các hệ giải toán thông minh sau này.
1.2.3 Các phương pháp biểu diễn tri thức trên máy tính
Hiện nay, có nhiều phương pháp biểu diễn tri thức khác nhau dựa trên nền tảng toán
học về lý thuyết logic, toán rời rạc, lý thuyết đồ thị, lý thuyết về ngôn ngữ hay các
cấu trúc dữ liệu trừu tượng, …. Và ta có thể phân loại thành 4 dạng phương pháp
chính sau:
[1] Phương pháp biểu diễn tri thức dựa trên logic hình thức.
Đây là dạng biểu diễn tri thức cổ điển nhất trong máy tính, với hai dạng phổ biến là
logic mệnh đề và logic vị từ. Các phương pháp này sử dụng các biểu thức logic hình
thức, các kí hiệu, toán tử để thể hiện tri thức, diễn đạt các sự kiện và các luật trong cơ
sở tri thức. Các thủ tục chứng minh sẽ áp dụng kiến thức vào các bài toán cụ thể.
a. Logic mệnh đề:
Đây có lẽ là kiểu biểu diễn tri thức đơn giản nhất và gần gũi đối với chúng ta.
Mô hình tri thức theo logic mệnh đề: (P, R)
Trong đó:
P: tập các mệnh đề, với mệnh đề là một khẳng định, một phát biểu mà giá trị
của nó có thể hoặc là đúng hoặc là sai.
R: tập các luật, sự kiện biểu diễn bởi các biểu thức logic và các qui tắc suy
diễn thể hiện sự liên hệ trên các mệnh đề và các biểu thức.
Biểu diễn tri thức theo logic mệnh đề gặp phải một trở ngại cơ bản là không thể can

thiệp vào cấu trúc của mệnh đề. Hay nói cách khác là mệnh đề không có cấu trúc.
Điều này làm hạn chế rất nhiều thao tác suy luận. Do đó, người ta đưa ra khái niệm
vị từ và lượng từ để tăng cường tính cấu trúc của một mệnh đề.
b. Logic vị từ:
Vị từ là một hàm lấy giá trị logic, hay là một phát biểu đề cập đến các phần tử thuộc
những phạm vi nhất định và chân trị phụ thuộc vào các phần tử này. Khi gán cho biến
một giá trị cụ thể thì phát biểu có giá trị xác định và trở thành mệnh đề.
Chương 1. Tổng quan
10


Mô hình tri thức theo logic vị từ: (P, R)
Trong đó:
P: tập các vị từ; mỗi vị từ biểu diễn bởi một hàm gồm tên vị từ, các tham biến.
R: tập các luật, sự kiện biểu diễn bởi các biểu thức logic vị từ.
Trong các phương pháp biểu diễn tri thức dựa trên logic hình thức thì logic vị từ cấp
1 là được sử dụng phổ biến nhất và có cả một ngôn ngữ lập trình hỗ trợ cho phương
pháp này, đó là ngôn ngữ PROLOG và LISP có thể tìm thấy trong [18].
Ưu, nhược điểm của phương pháp biểu diễn tri thức bằng logic hình thức.
Ưu điểm:
- Cơ chế suy luận chính xác (được chứng minh bởi toán học).
Nhược điểm:
- Tách rời việc biểu diễn và xử lý.
- Không hiệu quả với lượng dữ liệu lớn, quá chậm khi cơ sở dữ liệu lớn.
[2] Phương pháp biểu diễn tri thức dạng mạng.
Phổ biến nhất trong các phương pháp loại này là các mạng ngữ nghĩa và các đồ thị
khái niệm, xem tại [16].
Mạng ngữ nghĩa là phương pháp biểu diễn tri thức dạng đồ thị. Trong đó, mỗi đỉnh
thể hiện một yếu tố tri thức, và mỗi cung thể hiện một quan hệ giữa các yếu tố đó.
Mô hình mạng ngữ nghĩa có những ứng dụng vô cùng độc đáo. Hai loại ứng dụng

tiêu biểu là ứng dụng xử lý ngôn ngữ tự nhiên và ứng dụng giải bài toán tự động.
Mô hình mạng ngữ nghĩa: (X, R)
Trong đó:
X: tập các yếu tố tri thức.
R: Tập các quan hệ trên yếu tố tri thức.
Cấu trúc dữ liệu biểu diễn mạng ngữ nghĩa là dạng danh sách hay dạng ma trận.
Ưu, nhược điểm của phương pháp biểu diễn tri thức dạng mạng (mạng ngữ nghĩa).
Ưu điểm:
- Dễ theo dõi sự phân cấp (sẽ dò theo các mối liên hệ).
Chương 1. Tổng quan
11


- Linh động (dễ chỉnh sửa, thêm vào mạng các đỉnh hoặc cung mới để bổ
sung các tri thức cần thiết).
- Có tính trực quan cao nên rất dễ hiểu, hoạt động khá tự nhiên theo cách
thức con người ghi nhận thông tin.
- Các đỉnh có tính kế thừa các tính chất từ các đỉnh khác thông qua cung loại
“là”, từ đó có thể tạo ra các liên kết ngầm giữa những đỉnh không có liên kết
trực tiếp nhau.
- Do mạng ngữ nghĩa là một loại đồ thị nên nó thừa hưởng tất cả những mặt
mạnh của công cụ này.
Nhược điểm:
- Ngữ nghĩa gắn liền với mỗi đỉnh có thể nhập nhằng.
- Chưa có một chuẩn nào qui định giới hạn cho các đỉnh và cung của mạng,
nghĩa là có thể gán ghép bất kỳ khái niệm nào cho đỉnh hoặc cung.
- Tính kế thừa trên mạng sẽ có thể dẫn đến nguy cơ mâu thuẫn trong tri thức.
- Khó xử lý các ngoại lệ, khó lập trình.
- Không thể biểu diễn các tri thức dạng thủ tục bằng mạng ngữ nghĩa vì các
khái niệm về thời gian và trình tự không được thể hiện tường minh trên mạng

ngữ nghĩa.
- Tuy mạng ngữ nghĩa là kiểu biểu diễn trực quan đối với con người nhưng
khi đưa vào máy tính, các đối tượng và mối liên hệ giữa chúng thường được
biểu diễn dưới dạng những phát biểu động từ. Các thao tác tìm kiếm trên mạng
thường rất khó khăn. Do đó, mô hình này thường dùng chủ yếu để phân tích
vấn đề. Sau đó nó sẽ được chuyển sang dạng khác hoặc dùng kết hợp với một
số phương pháp biểu diễn khác.
[3] Phương pháp biểu diễn tri thức thủ tục nổi bật là hệ luật dẫn.
Loại phương pháp này biểu diễn tri thức như một tập hợp các chỉ thị dùng cho việc
giải quyết các bài toán.
Đối với hệ luật dẫn, phương pháp này biểu diễn tri thức bằng luật sinh được phát
minh bởi Newell và Simon trong lúc hai ông đang cố gắng xây dựng một hệ giải toán
Chương 1. Tổng quan
12


tổng quát. Đây là một kiểu biểu diễn tri thức có cấu trúc bằng một cặp điều kiện –
hành động (if … then): “NẾU điều kiện xảy ra THÌ hành động sẽ được thi hành”, nói
theo một cách khác thì hệ luật dẫn là tri thức có dạng một tập các luật dẫn trên các sự
kiện hay các tác vụ.
Mô hình hệ luật dẫn: (F, R)
Trong đó:
F: tập các sự kiện hay tác vụ.
R: tập các luật, mỗi luật dẫn có dạng A  B.
Ưu, nhược điểm của phương pháp biểu diễn tri thức thủ tục (hệ luật dẫn).
Ưu điểm: Biểu diễn tri thức bằng luật đặc biệt hữu hiệu trong những tình huống
hệ thống cần đưa ra những hành động dựa vào những sự kiện có thể quan sát được.
Các ưu điểm chính:
 Cú pháp đơn giản, dễ hiểu nên có thể dùng để trao đổi với người dùng (nó
là một trong những dạng tự nhiên của ngôn ngữ).

 Diễn dịch đơn giản, có thể dễ dàng xây dựng được cơ chế suy luận và giải
thích từ các luật.
 Tính đơn giản cao, linh động (dễ hiệu chỉnh và bảo trì hệ thống), có thể cải
tiến dễ dàng để có thể tích hợp các luật mờ, các luật thường ít phụ thuộc
vào nhau.
Nhược điểm:
- Rất khó theo dõi sự phân cấp, làm giới hạn khả năng tìm kiếm của chương
trình điều khiển.
- Không hiệu quả trong những hệ thống lớn: các tri thức phức tạp đòi hỏi rất
nhiều luật sinh, do đó làm nảy sinh nhiều vấn đề liên quan đến tốc độ lẫn quản
trị hệ thống.
- Không thể biểu diễn được mọi loại tri thức, rất yếu trong việc biểu diễn các
tri thức dạng mô tả.
Chương 1. Tổng quan
13


[4] Phương pháp biểu diễn tri thức theo cấu trúc như Frame, Script, Class
hay các Object.
Các ngôn ngữ biểu diễn cấu trúc cho phép sử dụng các cấu trúc dữ liệu phức tạp và
các cấu trúc dữ liệu trừu tượng trong biểu diễn, thể hiện tri thức đa dạng về khái niệm
hay đối tượng nào đó, sử dụng các ngôn ngữ đặc tả, tham khảo thêm ở [12], [16].
Frame là một cấu trúc dữ liệu chứa đựng tất cả những tri thức liên quan đến một đối
tượng cụ thể nào đó, nó có liên hệ chặt chẽ đến khái niệm hướng đối tượng. Ngược
lại với những phương pháp biểu diễn đã được đề cập đến, frame đóng gói toàn bộ một
đối tượng, tình huống hoặc cả một vấn đề phức tạp thành một thực thể duy nhất có
cấu trúc. Một frame bao hàm trong nó một khối lượng tương đối lớn tri thức về một
đối tượng, sự kiện, vị trí, tình huống hoặc những yếu tố khác. Do đó, frame giúp ta
mô tả chi tiết một đối tượng, thường dùng để biểu diễn những tri thức chuẩn hoặc
những tri thức được xây dựng trên những kinh nghiệm hoặc các đặc điểm đã được

hiểu biết cặn kẽ.
Script và Class cũng là những cách biểu diễn tri thức như frame trong đó có các
thuộc tính và các hành vi. Ở Script, thay vì đặc tả một đối tượng, nó mô tả một chuỗi
các sự kiện.
Các biểu diễn cấu trúc có thể sử dụng các ngôn ngữ C, C++, Java… cho việc cài đặt.
Ưu, nhược điểm của biểu diễn tri thức theo cấu trúc:
Ưu điểm: Có sức mạnh diễn đạt tốt, dễ cài đặt các thuộc tính cũng như các mối
liên hệ, dễ dàng tạo ra các thủ tục chuyên biệt hoá, dễ đưa vào các thông tin mặc định,
dễ thực hiện các thao tác phát hiện các giá trị bị thiếu sót.
Nhược điểm: Khó lập trình, khó suy diễn, thiếu phần mềm hỗ trợ.
[5] Phương pháp biểu diễn tri thức theo mô hình mạng tính toán [4], [14]
Mô hình này đề cập đến một số các đối tượng tính toán mà thành phần thuộc tính của
nó là một hàm số phụ thuộc vào các biến số như các đối tượng trong vật lý thường
phụ thuộc vào thời gian.
Chương 1. Tổng quan
14


Một cách tiếp cận nữa khá hiện đại cho cho việc biểu diễn tri thức và thiết kế cơ sở
tri thức là sử dụng các « Ontology ». Trong các hội nghị về Trí tuệ nhân tạo và Biểu
diễn tri thức như : AAAI (Conference on Artificial Intelligent), IJCAI (International
Joint Conference on Artificial Intelligent), KR (The Principle of Knowledge
Representation and Reasoning), AIED (Artificial Intelligent in Education),… các
phương pháp biểu diễn tri thức chủ yếu tập trung vào việc xây dựng và đặc tả các
Ontology.
[6] Phương pháp biểu diễn tri thức theo Ontology
Là phương thức biểu diễn tri thức bằng nguồn từ Triết học nhằm biểu diễn tất cả các
thực thể, tuy nhiên phương pháp này khá tổng quát, khi áp dụng vào các miền tri thức
cụ thể ta sẽ phải xây dựng một dạng Ontology riêng cho miền tri thức đó, tham khảo
thêm tại tài liệu [4], [19].

Tuy nhiên, nhìn chung các phương pháp này đều có những nhược điểm như sau:
 Chỉ biểu diễn được một khía cạnh nào đó của kiến thức thực tế. Tri thức thực
tế cần được biểu diễn thường rất đa dạng, bao gồm các khái niệm từ đơn giản
đến có cấu trúc phức tạp, các hệ thức tính toán với những quy luật nhất định,
các liên hệ đa dạng bao gồm cả định tính lẫn định lượng, các luật dẫn và các
heuristics…
 Các mô hình này chưa đáp ứng được việc biểu diễn tri thức bao hàm nhiều
dạng thông tin và sự kiện khác nhau trong thực tế.
 Cơ sở tri thức và hệ thống suy diễn chưa thể hiện sự độc lập rõ ràng, chưa chú
trọng đến thiết kế và xây dựng hệ thống suy diễn chuyên biệt hoạt động dựa
trên nền cơ sở tri thức.
 Chưa có một ngôn ngữ đặc tả qui ước tổng quát.
Để giải quyết những vấn đề tồn tại nêu trên mà một mô hình Ontology mới được gọi
là mô hình tri thức các đối tượng tính toán được gọi là Ontogoly-COKB
(Computational Objects Knowledge Base) và mạng các đối tượng tính toán gọi là
CO-Net (Computational Objects Network) đã ra đời, xem ở tài liệu [4], [14] và [15].
Chương 1. Tổng quan
15


Mô hình COKB được xây dựng theo cách tiếp cận hướng đối tượng, trong đó kết hợp
các kỹ thuật biểu diễn cấu trúc, biểu diễn thủ tục, biểu diễn mạng, biểu diễn theo đối
tượng và các kỹ thuật tính toán symbolic trên máy tính. Mô hình COKB được ký hiệu
bởi bộ sáu (C, H, R, Ops, Funcs, Rules) thể hiện sáu dạng tri thức trong thực tế gồm:
(1) Tập khái niệm về các đối tượng tính toán, (2) Biểu đồ H thể hiện quan hệ phân
cấp trên các loại đối tượng, (3) Tập hợp R các quan hệ trên các loại đối tượng, (4)
Tập hợp Ops thể hiện tri thức về các toán tử, (5) Tập hợp Funcs gồm các hàm và (6)
Tập hợp Rules gồm các luật.
Những ưu điểm của COKB so với các phương pháp biểu diễn truyền thống:
 Có cấu trúc tường minh và bộ sự kiện rất gần với tri thức thực tế.

 Có khả năng mô hình hóa được phần lớn các cơ sở tri thức thực tế, trên cơ sở
đó thiết kế được các thuật giải tổng quát mô phỏng hành vi, suy luận giải quyết
vấn đề dựa trên tri thức của con người.
 Có đầy đủ ngôn ngữ khai báo và ngôn ngữ đặc tả một cách tự nhiên.
Mô hình COKB đã mô hình hóa được rất nhiều cơ sở tri thức thực tế, biểu diễn được
khá đầy đủ cho một miền tri thức thực của con người như Đại số tuyến tính [4], Hình
học phẳng [14], Vật lý điện một chiều [6], điện xoay chiều [5] … Từ khi ra đời đến
nay, mô hình COKB ngày càng được hoàn thiện và phát triển gắn với nhiều cơ sở tri
thức khác nhau, đây là minh chứng thể hiện giá trị của mô hình COKB về cả mặt
khoa học lẫn ứng dụng trong thực tế.
Gần đây, trong [14] đã ứng dụng COKB để giải toán tự động những bài toán về hình
học phẳng ở bậc trung học cơ sở dựa trên tập các bài toán mẫu, ứng dụng này thể hiện
được cách giải quyết vấn đề rất gần với con người, đó là giải quyết các vấn đề mới
dựa vào những vấn đề đã giải quyết trước đó. Trong [5], [6] đã ứng dụng COKB để
xây dựng hệ hỗ trợ giải các bài toán điện một chiều, điện xoay chiều trong chương
trình trung học phổ thông.
Mặc dù vây, mô hình COKB vẫn có một số hạn chế như:
 Thành phần đối tượng tính toán Com-Object có phạm trù quá rộng
Chương 1. Tổng quan
16


 Các thành phần có thể dư thừa đối với một số lớp bài toán.
 Thành phần tri thức hàm vẫn chưa hoàn thiện về cấu trúc lẫn động cơ suy diễn.
Các nghiên cứu về COKB hiện nay hầu hết đều chưa đi sâu vào giải quyết các vấn đề
trên hành phần tri thức hàm, hay thu hẹp lại phạm vi của mô hình COKB đối với
những miền tri thức cụ thể.
Dẫn đến, vấn đề đặt ra là thu hẹp bớt phạm vi của các thành phần cũng như giảm bớt
thành phần trong mô hình COKB mà vẫn biểu diễn được tri thức với đầy đủ cơ sở tri
thức và động cơ suy diễn. Nếu làm được điều này thì việc mô hình hóa tri thức, xây

dựng cơ sở tri thức cho nhiều lớp bài toán sẽ trở nên đơn giản hơn, hiệu quả hơn trong
một số miền tri thức cụ thể.
Từ những lý do đó, tôi đã chọn đề tài “Nghiên cứu một mô hình COKB thu hẹp và
giải quyết vấn đề trên thành phần tri thức hàm” để làm luận văn tốt nghiệp Thạc sĩ
của mình.
1.2.4 Các phương pháp suy diễn trên máy tính
Cùng với các vấn đề biểu diễn tri thức, các phương pháp suy luận và kỹ thuật suy
diễn tự động để giải quyết các bài toán dựa trên tri thức cũng là một vấn đề quan
trọng. Các phương pháp suy diễn này nhằm vận dụng các kiến thức đã biết trong quá
trình suy luận, giải quyết vấn đề, trong đó quan trọng nhất là các chiến lược điều
khiển phát sinh sự kiện mới từ các sự kiện đã có. Bên cạnh các phương pháp biểu
diễn tri thức, các nhà nghiên cứu [13], [16], [19] cũng đề xuất một số phương pháp
suy luận để xây dựng động cơ suy diễn trong hệ thống như:
[1] Phương pháp hợp giải trong biểu diễn tri thức dưới dạng logic vị từ
Trong phương pháp biểu diễn logic hình thức ta đã sử dụng các luật suy diễn như:
luật “Modus Ponens”, luật “Modus Tollens” và luật tam đoạn luận.
[2] Phương pháp suy diễn tiến (Forward chaining)
Đây là phương pháp suy diễn được bắt đầu bằng tập các sự kiện đã biết, rút ra các sự
kiện mới nhờ áp dụng các luật mà giả thiết cho khớp với các sự kiện đã biết, và cứ
tiếp tục quá trình này cho đến khi tìm thấy trạng thái đích hoặc cho đến khi không
còn luật nào khớp được với các sự kiện đã biết hay các sự kiện được suy luận ra.
Chương 1. Tổng quan
17


[3] Phương pháp suy diễn lùi (Backward chaining)
Phương pháp này được tiến hành bằng cách truy ngược từ mục tiêu cần đạt được trở
về phần giả thiết của bài toán bằng cách áp dụng các luật trong cơ sở tri thức. Quá
trình suy diễn lùi này sẽ làm phát sinh một sơ đồ cây mục tiêu kèm theo một cơ chế
quay lui và lời giải sẽ được tìm thấy khi tất cả các mục tiêu ở các nút lá của cây mục

tiêu đều thuộc về những sự kiện đã biết.
[4] Phương pháp kết hợp suy diễn tiến – lùi và sử dụng các heuristic
Ta thấy rằng mỗi phương pháp suy diễn tiến hoặc lùi đều có ưu nhược điểm riêng.
Do đó, việc kết hợp hai phương pháp này một cách thích hợp cùng với việc sử dụng
các quy tắc heuristic sẽ cho ta một phương suy diễn hiệu quả trong các ứng dụng cụ
thể.
[5] Phương pháp suy diễn từ bài toán mẫu
Đây là phương pháp suy diễn dựa vào một số bài toán mẫu cho trước. Từ đó, trong
quá trình suy diễn nếu gặp được dạng giống như bài toán mẫu thì áp dụng các suy
diễn như trong bài toán mẫu đó. Điều này làm cho quá trình suy diễn nhanh hơn, tự
nhiên hơn, tuy nhiên, trong thực tế để mô phỏng được hầu hết các bài toán mẫu trong
nhiều miền tri thức khác nhau là một vấn đề vô cùng khó khăn.
1.3 MỤC TIÊU CỦA ĐỀ TÀI
Từ những nội dung nêu ở trên, mục tiêu của đề tài sẽ tập trung vào nghiên cứu các
vấn đề sau:
 Nghiên cứu và phân tích mô hình COKB, từ đó đề xuất một dạng mô hình
Funcs-COKB từ mô hình COKB bằng cách giảm bớt thành phần tri thức về
quan hệ phân cấp H trên các đối tượng tính toán, cũng như giới hạn phạm vi
của từng thành phần tri thức, đáp ứng được yêu cầu mô hình hóa và biểu diễn
tri thức thực tế đơn giản hơn, linh hoạt hơn trong một số miền tri thức cụ thể.
 Nghiên cứu và giải quyết các vấn đề trên thành phần tri thức hàm: đặc tả cụ
thể thành phần tri thức hàm về cấu trúc, xây dựng các sự kiện, các luật suy
diễn liên quan đến thành phần tri thức hàm.
Chương 1. Tổng quan
18


 Xác lập một số vấn đề trên thành phần tri thức hàm, từ đó xây dựng một số
thuật giải giải quyết các vấn đề đó trong một số miền tri thức cụ thể dựa trên
mô hình Funcs-COKB và các nghiên cứu về thành phần tri thức hàm đưa ra ở

trên.
 Xây dựng ứng dụng giải một số bài toán tổng quát trong chương trình hình
học giải tích 2 chiều để minh họa cho kết quả nghiên cứu của đề tài.
Nhận xét
Từ những phần trình bày ở trên về mô hình biểu diễn tri thức các đối tượng tính toán
và việc ứng dụng để giải tự động các bài toán trong một miền tri thức nhất định nào
đó sẽ cho chúng ta những lời giải gần với cách giải của con người. Trong phần luận
văn này sẽ đề xuất một mô hình biểu diễn tri thức được gọi là mô hình tri thức các
đối tượng tính toán thu hẹp (Funcs-COKB) cùng với một số thuật giải được xây dựng
và được ứng dụng để giải những bài toán “Hình học giải tích 2 chiều” trong chương
trình phổ thông và đại học.

Chương 2. Cơ sở lý thuyết
19


Chương 2. CƠ SỞ LÝ THUYẾT
2.1 MÔ HÌNH COKB
Mô hình cơ sở tri thức các đối tượng tính toán (COKB) được xây dựng trên cách tiếp
cận hướng đối tượng, trong đó kết hợp các kỹ thuật biểu diễn cấu trúc, biểu diễn thủ
tục, biểu diễn mạng, biểu diễn theo đối tượng và các kỹ thuật tính toán symbolic trên
máy tính. Một số nguyên lý kỹ thuật cũng như là các kết quả, các công cụ hỗ trợ cho
phương pháp tiếp cận hướng đối tượng được thể hiện ở [4], [14], [15]. Mô hình này
cung cấp cho ta một phương pháp để mô hình hóa các bài toán và thiết kế các thuật
giải. Những mô hình này cũng rất hữu ích trong việc xây dựng các thành phần nói
riêng hay cho toàn bộ cở sở tri thức nói chung của hệ thống thông minh trong thực tế
trên những miền tri thức nào đó.
2.1.1 Đố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 đề cập đến các đối tượng
khác nhau và mỗi đối tượng có cấu trúc bao gồm một số thuộc tính và những quan hệ

nhất định. Những quan hệ này giúp ta thực hiện suy diễn, tính toán và giải một số bài
toán suy diễn, tính toán trên các thuộc tính của đối tượng.
Định nghĩa 2.1: Một đối tượng tính toán (Com-Object) là một đối tượng O có cấu
trúc bao gồm:
(1) Một tập các thuộc tính có giá trị của đối tượng O, ký hiệu là M(O).
(2) Một tập các quan hệ tính toán trên các thuộc tính của đối tượng O. Các tập quan
hệ tính toán này thể hiện cho khả năng suy diễn bên trong của đối tượng O
như:
 Cho A là một tập con của M(O). Đối tượng O có khả năng cho ta biết tập
thuộc tính có thể được suy ra từ A trong đối tượng O.
 Đối tượng O sẽ cho ta biết giá trị của từng thuộc tính của nó.
 Đối tượng O cũng cho ta biết quá trình xác định các thuộc tính của nó.
Cấu trúc của đối tượng tính toán được mô hình hóa bởi bộ (Attrs, F, Facts, Rules).
Trong đó: Attrs là tập các thuộc tính của đối tượng, F là tập các phương trình hay còn
Chương 2. Cơ sở lý thuyết
20


gọi là tập các quan hệ tính toán, Facts là tập các sự kiện hay các tính chất vốn có của
đối tượng, và Rules là tậ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 của đối tượng.
Ví dụ 2.1: Một đối tượng “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:
Attrs=
{A, B, C, a, b, c, S, p, R, ha, hb, hc…}
là tập các thuộc tính của một tam giác,
F=
{A+B+C=pi; a/sin(A)= b/sin(B); a/sin(A)= c/sin(C); a
2
= b

2
+ c
2
- 2*b*c*cos(A);… }

tập các phương trình hay tập các quan hệ tính toán của một tam giác,
Facts= {A>0; A<pi; B>0; B<pi; C>0; C<pi; a+b>c; a+c>b; b+c>a;…} là tập các sự
kiện hay các tính chất vốn có của một tam giác,
Rules=
{{a
2
=b
2
+c
2
}=>{A=pi/2,
cb

}; {b
2
=a
2
+c
2
}=>{B=pi/2,
ca

}; {a=b}<=>{A=B};
{c
2

=a
2
+c
2
}=>{C=pi/2,
ba

}; {a=c}<=>{A=C}; {b=c}<=>{B+C};… }.
Một đối tượng tính toán cũng có các hành vi cơ bản liên quan đến việc tính toán, suy
diễn trên các thuộc tính. Những vấn đề có thể giải quyết trên các đối tượng như:
(1) Xác định bao đóng của một tập các thuộc tính.
(2) Thực hiện suy diễn và trả lời cho những câu hỏi về các dạng bài toán: xác định
những thuộc tính từ các thuộc tính khác đã biết.
(3) Thực hiện các tính toán.
(4) Đưa ra gợi ý bổ sung để hoàn thiện các giả thiết của bài toán nếu thấy cần
thiết.
Ví dụ 2.2: Khi được yêu cầu đưa ra lời giải cho bài toán {a, B, C}=>S trên một đối
tượng tam giác, bản thân đối tượng sẽ đưa ra lời giải bao gồm 3 bước như sau:
Bước 1: Xác định A, từ công thức A= pi-B-C;
Bước 2: Xác định b, từ công thức b= a*sin(B)/sin(A);
Bước 3: Xác định S, từ công thức S= a*b*sin(C)/2;
Chương 2. Cơ sở lý thuyết
21


2.1.2 Các thành phần của mô hình COKB
Định nghĩa 2.2: Mô hình cơ sở tri thức các đối tượng tính toán (COKB model) là hệ
thống cơ sở tri thức bao gồm 6 thành phần:
(C, H, R, Ops, Funcs, Rules)
Trong đó:

[1] C là một tập hợp các khái niệm về các đối tượng tính toán.
Mỗi khái niệm trong C là một lớp các đối tượng tính toán có cấu trúc nhất định và
được phân cấp theo sự thiết lập của cấu trúc các đối tượng: các biến thực, các đối
tượng cơ bản có cấu trúc rỗng hoặc có cấu trúc gồm một số thuộc tính kiểu thực, các
đối tượng tính toán cấp 1 có các thuộc tính thực và có thể được thiết lập từ một danh
sách nền các đối tượng cơ bản, các đối tượng tính toán cấp 2 có các thuộc tính thực
hay thuộc loại đối tượng cấp 1 và có thể được thiết lập từ một danh sách nền các đối
tượng cơ bản hay đối tượng cấp 1.
Cấu trúc bên trong của mỗi lớp đối tượng gồm:
 Kiểu đối tượng
 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 loại thuộc tính
 Tập hợp các tính chất nội tại liên quan đến các thuộc tính của đối tượng
 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 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 đối tượng.
 Tập hợp các luật suy diễn trên những loại sự kiện khác nhau liên quan đến các
thuộc tính của đối tượng hay đến bản thân của các đối tượng. Mỗi luật suy
diễn có dạng: {các sự kiện giải thiết}=>{các sự kiện kết luận}.
Cùng với cấu trúc trên, đối tượng 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 đối tượng, bản thân đối
tượng hay các đối tượng liên quan được thiết lập trên nền của đối tượng trong trường
hợp đối tượng được thiết lập trên một danh sách các đối tượng nền nào đó.
Chương 2. Cơ sở lý thuyết
22


[2] H là một tập hợp các quan hệ phân cấp trên các khái niệm.
Trên tập hợp C, ta có các quan hệ mà theo đó có thể có những khái niệm lá sự đặc

biệt hóa của những khái niệm khác, chẳng hạn như một tam giác cân cũng là một tam
giác, một tam giác vuông cũng là một tam giác, một tam giác đều cũng là một tam
giác… Có thể nói rằng H là một biểu đồ Hasse trên C khi xem quan hệ phân cấp ở
trên là một quan hệ thứ tự trên C. Cấu trúc của một quan hệ phân cấp: [<tên lớp đối
tượng cấp cao>, <tên lớp đối tượng cấp thấp>].
[3] R là một tập hợp của các quan hệ trên các khái niệm.
Mỗi quan hệ được xác định bởi <tên_quan_hệ> và các loại đối tượng của quan hệ.
Trong trường hợp một quan hệ r là một quan hệ 2 ngôi thì nó có thể có một số tính
chất trong các tính chất sau đây: tính chất phản xạ, tính chất đối xứng, tính chất phản
xứng và tính chất bắc cầu. Ví dụ: Trong hình học giải tích và hình học phẳng thì quan
hệ cùng phương trên 2 đoạn thẳng có các tính chất phản xạ, đối xứng và bắc cầu. Cấu
trúc của một quan hệ: [<tên quan hệ>, <loại đối tượng>, <loại đối tượng>…], {<tính
chất>, <tính chất>};
[4] Ops là một tập hợp 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 thực hay các loại
Com-oject. Hầu hết các miền tri thức đều có một thành phần chứa các toán tử. Ví dụ:
các phép toán trên vector trong hình học giải tích như: cộng 2 vector, nhân 2 vector,
nhân một vector với một hệ số, còn trong đại số tuyến tính thì có các phép toán trên
ma trận như: cộng 2 ma trân, nhân 2 ma trận, nhân một ma trận với một hệ số… Trong
trường hợp một phép toán o là một phép toán hai ngôi thì nó có thể có các tính chất
giao hoán, kết hợp…
[5] Funcs là một tập hợp chứa các hàm trên các khái niệm Com-Object.
Tri thức về hàm cũng là một loại tri thức phổ biến ở hầu hết các miền tri thức trong
thực tế, đặc biệt là trong các lĩnh vực khoa học tự nhiên như: các lĩnh vực của toán
học, vật lý. Đây là thành phần thể hiện tri thức về các hàm hay các tính toán trên các
biến thực cũng như trên các loại Com-oject. Chẳng hạn như: trong hình học giải tích
ta có các hàm về: khoảng cách giữa hai điểm, khoảng cách từ một điểm đến một

×