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
Trang 1CHƯƠ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
Trang 2< 2012 >
Trang 3MỤ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
Trang 4LỜ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
Trang 5TÓ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
Trang 6A 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
Trang 72 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
Trang 8Ví 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 )
B
b
2 )
C
c
2 )
) sin( ) sin( B
b A
) sin(
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
Trang 9- R là tập hợp các quan hệ trên các khái niệm.
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
Trang 10cá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
Trang 11- 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
Trang 12Ở 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
Trang 13nghiê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:
element ^ factor |
elementelement ::= ( expr ) |
name | number | function-callrel-expr ::= expr rel-operator exprlogic-expr ::= logic-expr OR logic-term |
logic-expr IMPLIES logic-term | NOT logic-term |
logic-term
Trang 14logic-primarylogic-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;
equation ::= expr = expr
Definitions of special relations:
isa ::= ISA: name <, name>*;
hasa ::= HASA:
[fact-def]