C tập hợp các đối tượng tính toán
R tập hợp các quan hệ trên các đối tượng
ENDFOR; 1.1.17.Phương pháp thiết kế
1.1.17.Phương pháp thiết kế
Trong phần này chúng ta sẽ trình bày quá trình khởi tạo một hệ cơ sở tri thức trong việc giải quyết một bài toán.
Cấu trúc của hệ thống
Một hệ cơ sở tri thức, hỗ trợ tìm kiếm truy vấn và giải quyết các vấn đề có cấu trúc của một hệ chuyên gia. Chúng ta có thể thiết kế hệ thống gồm có 6 thành phần:
Cơ sở tri thức
Công cụ suy diễn
Thành phần diễn giải
Bộ nhớ làm việc
Quản lý tri thức
Giao diện
Hình sau sẽ mô tả cấu trúc của hệ thống
Cơ sở tri thức (Knowledge Base) chứa các tri thức để giải quyết vài bài toán trong các lĩnh vực tri thức cụ thể. Động cơ suy diễn (Inference Engine) sẽ dùng tri thức lưu trong cơ sở tri thức để giải quyết các bài toán, để tìm kiếm hoặc để trả lời cho truy
vấn. Nó phải xác định ra vấn đề và dùng các chiến lược suy luận thích hợp để tìm ra đúng luật và sự kiện để giải quyết bài toán. Bộ nhớ làm việc (Working Memory) lưu trữ các sự kiện và luật trong quá trình tìm kiếm và suy luận. Thành phần diễn giải (Explantion component) hỗ trợ việc giải thích các giai đoạn, các khái niệm trong quá trình giải quyết bài toán. Quản lý tri thức nhằm hổ trợ việc cập nhật tri thức vào trong hệ cơ sở tri thức. Nó cũng hổ trợ việc tìm kiếm tri thức và kiểm tra tính nhất quán của tri thức. Thành phần giao diện của hệ thống yêu cầu có một ngôn ngữ đặc tả để giao tiếp giữa hệ thống và người học, giữa hệ thống và giáo viên.
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
B1: Tập hợp các tri thức thực tế dựa trên mô hình KBCO. B2: Phân loại tri thức trong B1, tiến tới phân tích yêu cầu.
B3: Xây dựng tổ chức cơ sở tri thức cho hệ thống dựa trên mô hình KBCO và ngôn ngữ kĩ thuật của nó. Tri thức có thể được tổ chức theo các tập tin văn bản có cấu trúc. Chúng gồm các tập tin sau:
- Tập tin OBJECT_KINDS.txt : Lưu trữ tên các khái niệm.
- Tập tin HIERARCHY.txt: Lưu lại các biểu đồ Hasse thể hiện thành phần H của mô hình KBCO.
- Tập tin RELATIONS.txt và RELATIONS_DEF.txt: Lưu trữ tất cả các quan hệ (thành phần R của mô hình KBCO).
- Tập tin OPERATORS.txt: lưu trữ các thông tin, cơ sở tri thức của thành phần toán tử trên các đối tượng C-Object.
- Tập tin OPERATORS_DEF.txt: Lưu trữ định nghĩa về các loại toán tử hay định nghĩa của các thủ tục tính toán phục vụ toán tử.
- Tập tin RULES.txt: Lưu trữ các hệ luật trên các loại đối tượng và các sự kiện trong cơ sở tri thức.
- Tập tin FUNCTIONS.txt: Lưu trữ cách khai báo hàm, thông tin về hàm trên các C-Object.
- Tập tin FUNCTIONS_DEF.txt: Lưu trữ định nghĩa về các hàm trên các đối tượng và các sự kiện.
- Tập tin FACT_KINDS.txt: Lưu trữ định nghĩa của các giả thiết. - Tập tin RULES.txt: Lưu trữ các luật.
- Tập tin SOMEOBJECTS.txt: Lưu trữ các đối tượng cụ thể.
B4: trong bước này chúng ta sẽ mô hình bài toán và thiết kế thuật toán. Các bài toán sẽ được biểu hiện dùng mạng các đối tượng tính toán. Nó gồm ba tập hợp sau.
O = {O1, O2, …., On} F = {f1, f2, …., fm}, Goal = {g1, g2, …, gm}
Trong mô hình ở trên tập hợp O chứa n đối tượng tính toán, F là tập các sự kiện cho trước của đối tượng, và Goal chứa các kết luận.
Các thiết kế cho thuật toán suy luận để giải quyết vấn đề và thiết kế giao diện của hệ thống có thể được phát triển theo ba bước
- Phân loại bài toán.
- Phân loại giả thiết và biểu diển chúng dựa trên loại các sự kiện của mô hình KBCO.
- Mô hình loai của các bài toán từ các phân loại ở 2 bước trên. Từ các mô hình của từng loại, chúng ta có thể khởi tạo một mô hình tổng quát cho các bài toán sẽ được đưa vào hệ thống để giải quyết.
Kỹ thuật cơ bản để thiết kế hệ thống suy luận là sự thống nhất của các sự kiện. Dựa trên loại sự kiện và cấu trúc của nó, tiêu chí thống nhất sẽ được đề xuất. Nó sau đó sẽ tạo ra các thuật toán để kiểm tra tính thống nhất của hai sự kiện.
Công việc quan trọng tiếp theo cần làm là phải nghiên cứu tìm ra chiến lược để giải bài toán trên máy tính. Công việc khó nhất là mô hình được các kinh nghiệm, hành động hợp lý và trực giác của con người để tìm ra các luật heuristics có thể bắc hước các suy luận của con người để giải quyết bài toán.
B5: Tạo ra một ngôn ngữ truy vấn cho mô hình. Ngôn ngữ giúp cho việc thiết kế thông tin liên lạc giữa hệ thống và người dùng bằng lời nói
B6: Thiết kế giao diện phần mềm và lập trình phần mềm. Ứng dụng có thể thực hiện bằng các công cụ lập trình và các ngôn ngữ như C#, SQL Server, …
B7: Kiểm tra, bảo trì và phát triển ứng dụng.
Ví dụ: Cho d là đường thẳng có phương trình 3x + 4y -12 = 0, P và Q là giao điểm của d với trục Ox, Oy. Tìm trung điểm của P và Q
Các đối tượng = {[d, line], [P, point], [Q, point]}.
Giả thuyết = {d.f = (3*x+4*y-12=0 ), Ox.f = (y=0), P = CATNHAU(Ox, d), Q = CATNHAU(Oy, d), Oy.f = (x=0)}
Mục tiêu = {TRUNGDIEM(P,Q)} Tìm lời giải bởi hệ thống:
B1: {d.f = (3*x+4*y-12=0 ), Ox.f = (y=0), P = CATNHAU(Ox, d), Q = CATNHAU(Oy, d), Oy.f = (x=0)} {Ox.f, Oy.f, d.f}
B2: {Ox.f, Oy.f, d.f}{Ox, Oy, d}
B3: {Ox, d, P = CATNHAU(Ox, d)} {P} B4: {Oy, d, Q = CATNHAU(Oy, d)} {Q} B5: {P, Q} {TRUNGDIEM(P,Q)}
1.1.18.Ưu điểm của mô hình KBCO:
Cấu trúc tường minh giúp dễ dàng thiết kế các môđun truy cập cơ sở tri thức. Thích hợp cho việc thiết kế một cơ sở tri thức với các khái niệm có thể được biểu diễn bởi các đối tượng tính toán.
Tiện lợi cho việc thiết kế các môđun giải bài toán tự động.
Thích hợp cho việc định dạng ra một ngôn ngữ khai báo bài toán và đặc tả bài toán một cách tự nhiên.
3. Kết luận
Trong bài tiểu luận này em đã trình bày một số cái nhìn tổng quát của các mô hình biễu diển tri thức từ mạng ngữ nghĩa đến mô hình KBCO. Các mô hình này đều có cấu trúc tường minh và đơn giản để có thể thực hiện nhiệm vụ mô hình hoá lại các tri thức lên máy tính. Các mô hình cung cấp các bước từ thu nhập thông tin, phân loại thông tin đến các cách biểu diễn thông tin. Mỗi mô hình có những ưu điểm cũng như khuyết điểm riêng. Mặc dù việc biểu diễn tri thức vẫn chưa phải là tốt nhất nhưng những mô hình trên đã cho ta thấy được phần nào những nỗ lực nghiên cứu để giúp cho khoa học máy tính ngày một phát triển rộng thêm.
Bài tiểu luận này chỉ đi vào một phần tương đối nhỏ, tổng quát nhất các mô hình biểu diễn thi thức cũng như cách làm sao để thực hiện các mô hình đó. Các nghiên cứu này đã giúp cho em có được những kiến thức rất hữu ích. Qua nó em có thể thấy được những hướng đi rất tốt mà sau này có thể áp dụng được sau này. Các tri thức hiện tại của con người hiện giờ là rất khổng lồ. Nếu có thể áp dụng được những gì vừa nghiên
cứu được và mở rộng sâu hơn sẽ có thể tạo ra những sản phẩm vô cùng hữu ích trong cuộc sống.
Mặc dù đã cố gắng hết sức nhưng do hạn chế về mặt thời gian cũng như kiến thức nên phần tiểu luận không khỏi tránh được những khuyết điểm, sai sót. Rất mong được nhận xét của thầy. Và cám ơn thầy đã theo dõi phần tiểu luận của em.