Chương 1 Tổng quan về các hệ chuyên gia và hệ thống thông tin giáo dục 1.1 Tổng quan về các hệ chuyên gia Hệ chuyên gia là một hệ thống phần mềm kết hợp chặt chẽ với các khái niệm của các chuyên gia trong một lĩnh vực và sử dụng tri thức của họ để phân tích các vấn đề của người sử dụng. Dạng thông thường của hệ chuyên gia là một chương trình máy tính với một tập các luật phân tích thông tin về một lớp các vấn đề cụ thể, để tư vấn một hoặc nhiều tiến trình hoạt động cho người dùng. Hệ chuyên gia có thể phân tích chính xác vấn đề và các công cụ của hệ chuyên gia có thể lập luận để đưa ra kết luận hoặc lời khuyên cho người sử dụng. Thông thường, các nhà thiết kế hệ chuyên gia thu thập tri thức này, bao gồm lý thuyết đến cả các kinh nghiệm, kỹ xảo, phương pháp làm tắt, chiến lược heuristic đã tích lũy được của các chuyên gia con người qua quá trình làm việc của họ trong một lĩnh vực chuyên môn.
Từ tri thức này, người ta cố gắng cài đặt chúng vào hệ thống để hệ thống có thể mô phỏng theo cách thức các chuyên gia làm việc. Tuy nhiên, không giống với con người, các chương trình hiện tại không tự học lấy kinh nghiệm: mà tri thức phải được lấy từ con người và mã hóa thành ngôn ngữ hình thức. Đây là nhiệm vụ chính mà các nhà thiết kế hệ chuyên gia phải đương đầu. Do bản chất heuristic và tri thức chuyên sâu của việc giải quyết vấn đề cấp độ chuyên gia, các hệ chuyên gia nói chung: • Cung cấp sự kiểm tra đối với các quá trình suy luận của chúng, bằng cách hiển thị các bước trung gian và bằng cách trả lời câu hỏi về quá trình giải.
• Cho phép sửa đổi dễ dàng, cả khi thêm và xóa các kỹ năng giải quyết vấn đề vào cơ sở tri thức (knowledge based). • Suy luận một cách heuristic, sử dụng tri thức (thường là không hoàn hảo) để tìm lời giải hữu ích cho vấn đề. Người ta đã xây dựng các hệ chuyên gia để giải quyết hàng loạt những vấn đề trong các lĩnh vực như y học, toán học, công nghệ, hóa học, địa chất, khoa học máy tính, 9 kinh doanh, luật pháp, quốc phòng và giáo dục. Các chương trình này đã giải quyết một lớp rộng các loại vấn đề như: • Diễn giải (interpretation) – hình thành những kết luận hay mô tả cấp cao từ những tập hợp dữ liệu thô.
• Dự đoán (prediction) – tiên đoán những hậu quả có thể xảy ra khi cho trước một tình huống. • Chẩn đoán (diagnosis) – xác định nguyên nhân của những sự cố trong các tình huống phức tạp dựa trên các triệu chứng có thể quan sát được. • Thiết kế (design) – tìm ra cấu hình cho các thành phần hệ thống, đáp ứng được các mục tiêu trong khi vẫn thỏa mãn một tập hợp các ràng buộc về thiết kế. • Lập kế hoạch (planning) – tìm ra một chuỗi các hành động để đạt được một tập hợp các mục tiêu, khi được cho trước các điều kiện khởi đầu và những ràng buộc trong thời gian chạy (run-time).
• Theo dõi (monitoring) – so sánh hành vi quan sát được của hệ thống với hành vi mong đợi. • Bắt lỗi và sửa chữa (debuging and repair) – chỉ định và cài đặt những phương pháp chữa trị cho các trục trặc. • Hướng dẫn (instruction) – phát hiện và sửa chữa những thiếu sót trong quan niệm của học viên về một chủ đề lĩnh vực nào đó. • Điều khiển (control) – chỉ đạo hành vi của một môi trường phức tạp.1 Hệ chuyên gia dựa trên luật Các hệ chuyên gia dựa trên luật biểu diễn tri thức dưới dạng các luật if… then.
Cách tiếp cận này là một trong những kỹ thuật cổ điển và được sử dụng rộng rãi nhất dùng cho biểu diễn tri thức về một lĩnh vực trong hệ chuyên gia. Cơ sở tri thức của hệ chuyên gia là tập hợp các luật sinh (if… then). Dữ liệu cho trường hợp cụ thể được giữ trong bộ nhớ làm việc. Động cơ suy diễn thực hiện chu trình nhận dạng – hành động (recognize-act) của hệ sinh; cơ chế điều khiển này có thể là hường từ dữ liệu hay hướng từ mục tiêu.
Đối với một hệ chuyên gia, thì tiếp cận hướng từ mục tiêu sẽ tạo điều kiện cho quá trình giải thích hơn. Vì trong một hệ hướng từ mục tiêu, việc suy luận theo đuổi một mục 10 tiêu cụ thể nào đó, mục tiêu đó bị chia thành nhiều mục tiêu con và cứ như thế; kết quả là việc tìm kiếm luôn luôn được hướng dẫn thông qua sự phân cấp mục tiêu và mục tiêu con này. Trong khi ở tìm kiếm hướng từ dữ liệu không tồn tại điều này, kết quả là quá trình tìm kiếm thường có vẻ dài dòng và không tập trung. Ví dụ cụ thể hơn về giải quyết vấn đề theo hướng từ mục tiêu, ta xét một hệ chuyên gia nhỏ dùng để chẩn đoán những trục trặc trong xe hơi, gọi tắt là hệ chuyên gia “Chẩn đoán xe hơi”: Luật 1 IF động cơ nhận được xăng AND động cơ khởi động được THEN trục trặc là do bugi.
Luật 2 IF động cơ không khởi động được AND đèn không sáng THEN trục trặc là do ắc quy hoặc dây cáp Luật 3 IF động cơ không khởi động được AND đèn sáng THEN trục trặc là do môtơ khởi động Luật 4 IF còn xăng trong bình chứa nhiên liệu AND còn xăng trong bộ chế hòa khí THEN động cơ nhận được xăng Trong chế độ điều khiển hướng từ mục tiêu, đầu tiên mục tiêu cao nhất là “trục trặc là do X” sẽ được đưa vào bộ nhớ làm việc như hình 1.1: Hệ sinh tại thời điểm ban đầu của một lần chẩn đoán. Có 3 luật đối sánh (match) với biểu thức này trong bộ nhớ làm việc: luật 1, 2 và 3. Nếu ta chọn luật ưu tiên theo số thứ tự của nó, thì luật 1 sẽ được đốt cháy, khi đó X sẽ được gắn kết (bound) với giá trị bugi và những tiền đề (vế trái) của luật 1 được đặt vào bộ nhớ làm việc như hình 1.2 : Hệ sinh sau khi luật 1 được đốt cháy Để chứng minh mục tiêu con là động cơ nhận được xăng thì luật 4 được đốt cháy, và những tiền đề của luật này được đặt vào bộ nhớ làm việc như hình 1.3 : Hệ sinh sau khi đốt cháy luật 4 Tại thời điểm này, có ba mục trong bộ nhớ làm việc (các mục in nghiêng trong hình 1.3) là không đối sách với bất kỳ kết luận của luật nào. Trong tình huống này, HCG sẽ truy vấn trực tiếp người dùng về những mục tiêu mới này.
Nếu người dùng xác nhận cả ba mục tiêu này đều đúng, thì HCG sẽ xác định một cách thành công rằng trục trặc xe là do bugi. Trong quá trình tìm ra lời giải này, hệ thống đã kiểm tra nhánh trái nhất của đồ thị Và/Hoặc trong hình 1.4 : Đồ thị tìm kiếm trong chẩn đoán xe ô tô Hình 1.4 Khả năng giải thích và tính trong suốt của suy luận hướng từ mục tiêu Để thấy được khả năng giải thích và tính trong suốt của suy luận hướng từ mục tiêu, ta giả định phiên chẩn đoán đang ở giai đoạn của hình 1. Đoạn hội thoại sau đây được bắt đầu bằng việc máy tính yêu cầu người dùng cho biết về các mục tiêu con hiện có trong bộ nhớ làm việc (trả lời của người dùng được gạch dưới): • Còn xăng trong bình chứa nhiên liệu? yes • Còn xăng trong bộ chế hòa khí? yes • Động cơ khởi động được không? why Đến đây, người dùng đánh vào câu hỏi why, nghĩa là muốn hỏi, tại sao anh cần biết động cơ có khởi động được hay không? Khi đó hệ thống trả lời Đã xác định được rằng: 1. động cơ nhận được xăng, Vì vậy nếu 2.
động cơ khởi động được, Thì có thể kết luận: trục trặc là do bugi Giả sử người dùng tiếp tục hỏi: động cơ nhận được xăng như thế nào? Khi đó, hệ thống sẽ trả lời: Điều này có từ luật 4 13 IF còn xăng trong bình chứa nhiên liệu AND còn xăng trong bộ chế hòa khí THEN động cơ nhận được xăng Người dùng đã cho biết: còn xăng trong bình chứa nhiên liệu Người dùng đã cho biết: còn xăng trong bộ chế hòa khí Một lần nữa, kiến trúc hệ sinh cho chúng ta một cở sở thiết yếu để có những giải thích này. Mỗi chu trình của vòng lặp điều khiển sẽ chọn và đốt cháy một luật khác. Chương trình có thể dứng lại sau mỗi chu trình và cho phép người dùng kiểm tra. Vì mỗi luật biểu diễn một bó tri thức đầy đủ, nên luật hiện tại cho ta một ngữ cảnh để giải thích.
Ngoài ra, tính module của mỗi luật cũng tạo điều kiện cho việc thêm hay sửa đổi một luật được thực hiện một cách dễ dàng mà không hề ảnh hưởng đến các luật khác. Hệ chuyên gia R1/XCON Hệ chuyên gia R1 hay XCON được đưa ra vào năm 1982 là một trong những hệ chuyên gia thương mại thành công đầu tiên. Như đã giới thiệu trong các phần trên, ban đầu chương trình được thiết kế chỉ để định cấu hình cho các máy tính VAX 780; sau đó nó được mở rộng để xử lý luôn cho các hệ máy VAX và hệ máy PDP-11. Đầu vào của hệ thống là đơn đặt hàng của khách hàng và sau đó áp dụng các luật để sinh ra một cấu hình hoàn chỉnh, thống nhất cùng với các sơ đồ biểu diễn mối quan hệ về không gian và logic của các bộ phận trong máy (McDermott 1981).
Kiến trúc của hệ chuyên gia XCON được mô tả như hình 1.5: Kiến trúc hệ chuyên gia XCON XCON là một hệ chuyên gia dựa trên luật, nó chứa một cơ sở các luật bao gồm khoảng 10000 luật được viết với ngôn ngữ OPS5 (OPS – Official Production System).